├── .editorconfig ├── .gitignore ├── .io-config.json ├── .snyk ├── .sourcemaps └── main.js.map ├── LICENSE ├── README.md ├── captures └── preview.gif ├── config.xml ├── ionic.config.json ├── package.json ├── res ├── drawable-mdpi │ └── screen.png └── mipmap-mdpi │ └── icon.png ├── resources ├── android │ ├── icon │ │ ├── drawable-hdpi-icon.png │ │ ├── drawable-ldpi-icon.png │ │ ├── drawable-mdpi-icon.png │ │ ├── drawable-xhdpi-icon.png │ │ ├── drawable-xxhdpi-icon.png │ │ └── drawable-xxxhdpi-icon.png │ └── splash │ │ ├── drawable-land-hdpi-screen.png │ │ ├── drawable-land-ldpi-screen.png │ │ ├── drawable-land-mdpi-screen.png │ │ ├── drawable-land-xhdpi-screen.png │ │ ├── drawable-land-xxhdpi-screen.png │ │ ├── drawable-land-xxxhdpi-screen.png │ │ ├── drawable-port-hdpi-screen.png │ │ ├── drawable-port-ldpi-screen.png │ │ ├── drawable-port-mdpi-screen.png │ │ ├── drawable-port-xhdpi-screen.png │ │ ├── drawable-port-xxhdpi-screen.png │ │ └── drawable-port-xxxhdpi-screen.png ├── icon.png ├── ios │ ├── icon │ │ ├── icon-40.png │ │ ├── icon-40@2x.png │ │ ├── icon-40@3x.png │ │ ├── icon-50.png │ │ ├── icon-50@2x.png │ │ ├── icon-60.png │ │ ├── icon-60@2x.png │ │ ├── icon-60@3x.png │ │ ├── icon-72.png │ │ ├── icon-72@2x.png │ │ ├── icon-76.png │ │ ├── icon-76@2x.png │ │ ├── icon-83.5@2x.png │ │ ├── icon-small.png │ │ ├── icon-small@2x.png │ │ ├── icon-small@3x.png │ │ ├── icon.png │ │ └── icon@2x.png │ └── splash │ │ ├── Default-568h@2x~iphone.png │ │ ├── Default-667h.png │ │ ├── Default-736h.png │ │ ├── Default-Landscape-736h.png │ │ ├── Default-Landscape@2x~ipad.png │ │ ├── Default-Landscape~ipad.png │ │ ├── Default-Portrait@2x~ipad.png │ │ ├── Default-Portrait~ipad.png │ │ ├── Default@2x~iphone.png │ │ └── Default~iphone.png └── splash.png ├── src ├── app │ ├── app.component.ts │ ├── app.html │ ├── app.module.ts │ ├── app.scss │ └── main.ts ├── assets │ └── icon │ │ └── favicon.ico ├── declarations.d.ts ├── index.html ├── manifest.json ├── pages │ ├── dynamic-steps │ │ ├── dynamic.page.html │ │ └── dynamic.page.ts │ ├── home │ │ ├── home.html │ │ ├── home.scss │ │ └── home.ts │ └── ion-simple-wizard │ │ ├── ion-simple-wizard-animations.ts │ │ ├── ion-simple-wizard.component.html │ │ ├── ion-simple-wizard.component.scss │ │ ├── ion-simple-wizard.component.ts │ │ └── ion-simple-wizard.step.component.ts ├── service-worker.js └── theme │ └── variables.scss ├── tsconfig.json └── tslint.json /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig helps developers define and maintain consistent coding styles between different editors and IDEs 2 | # editorconfig.org 3 | 4 | root = true 5 | 6 | [*] 7 | indent_style = space 8 | indent_size = 2 9 | 10 | # We recommend you to keep these unchanged 11 | end_of_line = lf 12 | charset = utf-8 13 | trim_trailing_whitespace = true 14 | insert_final_newline = true 15 | 16 | [*.md] 17 | trim_trailing_whitespace = false -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Specifies intentionally untracked files to ignore when using Git 2 | # http://git-scm.com/docs/gitignore 3 | 4 | *~ 5 | *.sw[mnpcod] 6 | *.log 7 | *.tmp 8 | *.tmp.* 9 | log.txt 10 | *.sublime-project 11 | *.sublime-workspace 12 | .vscode/ 13 | npm-debug.log* 14 | 15 | .idea/ 16 | .sass-cache/ 17 | .tmp/ 18 | .versions/ 19 | coverage/ 20 | dist/ 21 | node_modules/ 22 | tmp/ 23 | temp/ 24 | hooks/ 25 | platforms/ 26 | plugins/ 27 | plugins/android.json 28 | plugins/ios.json 29 | www/ 30 | $RECYCLE.BIN/ 31 | 32 | .DS_Store 33 | Thumbs.db 34 | UserInterfaceState.xcuserstate 35 | -------------------------------------------------------------------------------- /.io-config.json: -------------------------------------------------------------------------------- 1 | {"app_id":"32473d13"} -------------------------------------------------------------------------------- /.snyk: -------------------------------------------------------------------------------- 1 | # Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities. 2 | version: v1.12.0 3 | ignore: {} 4 | # patches apply the minimum changes required to fix a vulnerability 5 | patch: 6 | 'npm:lodash:20180130': 7 | - cordova-android > cordova-common > plist > xmlbuilder > lodash: 8 | patched: '2018-07-03T07:48:30.968Z' 9 | -------------------------------------------------------------------------------- /.sourcemaps/main.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["../../node_modules/@angular/core/esm5 lazy","../../src lazy","../../src/app/app.component.ngfactory.js.pre-build-optimizer.js","../../src/pages/ion-simple-wizard/ion-simple-wizard.component.ngfactory.js.pre-build-optimizer.js","../../src/pages/ion-simple-wizard/ion-simple-wizard.step.component.ngfactory.js.pre-build-optimizer.js","../../src/pages/home/home.ngfactory.js.pre-build-optimizer.js","../../src/pages/dynamic-steps/dynamic.page.ngfactory.js.pre-build-optimizer.js","../../src/pages/dynamic-steps/dynamic.page.ts","../../src/pages/home/home.ts","../../src/app/app.component.ts","../../src/pages/ion-simple-wizard/ion-simple-wizard.component.ts","../../src/pages/ion-simple-wizard/ion-simple-wizard.step.component.ts","../../src/app/app.module.ts","../../src/app/app.module.ngfactory.js.pre-build-optimizer.js"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","Error","keys","module","exports","id","View_MyApp_0","_l","core","nav_ngfactory","split_pane","nav","view_controller","nav_controller","app","config","platform_platform","gesture_controller","transition_controller","deep_linker","dom_controller","root","_ck","_v","component","rootPage","View_IonSimpleWizard_1","fab_container_ngfactory","fab_container","_mainButton","_fabLists","en","$event","ad","back","fab_ngfactory","fab","icon","name","undefined","_hidden","View_IonSimpleWizard_2","badge","_co","step","steps","View_IonSimpleWizard_3","next","View_IonSimpleWizard_4","finish","emit","finishIcon","View_IonSimpleWizard_0","toolbar_footer","common","ngIf","isOnFirstStep","showSteps","isOnFinalStep","getCondition","hideWizard","View_IonSimpleWizardStep_0","View_HomePage_0","toolbar_header","navbar_ngfactory","navbar","color","toolbar_title_ngfactory","toolbar_title","toolbar","content_ngfactory","content","keyboard","onFinish","stepCondition","RenderType_IonSimpleWizard","ion_simple_wizard_component_IonSimpleWizard","events","stepChange","RenderType_IonSimpleWizardStep","IonSimpleWizardStep","card","card_content","card_title","goToExample2","button_ngfactory","button_button","outline","toggle","list","item_ngfactory","item","util_form","item_reorder","contentLabel","_buttons","_icons","item_content","textChange","input_ngfactory","input","esm5_forms","type","placeholder","getIconStep2","getIconStep3","getLikeIcon","_sbPadding","statusbarPadding","_hasRefresher","isCurrent","View_DynamicPage_1","card_header","label","_keyup","toggleCondition","toggle_ngfactory","haptic","ionChange","p0_0","model","update","context","$implicit","title","_disabled","_value","_activated","ngClassUntouched","ngClassTouched","ngClassPristine","ngClassDirty","ngClassValid","ngClassInvalid","ngClassPending","View_DynamicPage_0","ngForOf","stepsArray","DynamicPage","navCtrl","alertCtrl","evts","_this","this","stepDefaultCondition","subscribe","currentStep","console","log","prototype","create","message","buttons","text","present","_condition","checked","home_HomePage","HomePage","push","e","target","value","trim","app_component_MyApp","platform","statusBar","splashScreen","ready","styleDefault","backgroundColorByHexString","hide","IonSimpleWizard","ngOnInit","addStep","newSteps","publish","parent","AppModule","RenderType_MyApp","encapsulation","styles","data","MyAppNgFactory","status_bar","splash_screen","animation","definitions","expr","transform","opacity","transformOrigin","offset","timings","options","position","top","width","visibility","RenderType_HomePage","HomePageNgFactory","alert_controller","RenderType_DynamicPage","DynamicPageNgFactory","AppModuleNgFactory","app_root","action_sheet_component_ngfactory","alert_component_ngfactory","app_root_ngfactory","loading_component_ngfactory","modal_component_ngfactory","picker_component_ngfactory","popover_component_ngfactory","select_popover_component_ngfactory","toast_component_ngfactory","platform_browser","gesture_config","p0_1","p1_0","p2_0","p2_1","browser","animations","http","esm5_animations","action_sheet_controller","loading_controller","ionic_angular_module","url_serializer","module_loader","modal_controller","picker_controller","popover_controller","tap_click","toast_controller","ionic_error_handler","platform_registry","menu_controller","links","ng_module_loader","p3_0","p3_1","p3_2","p3_3","p3_4","p4_0","p4_1","p4_2","p4_3","mode_registry"],"mappings":"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","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncatched exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 132;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/@angular/core/esm5 lazy\n// module id = 132\n// module chunks = 0","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncatched exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 159;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src lazy\n// module id = 159\n// module chunks = 0","/**\n * @fileoverview This file was generated by the Angular template compiler. Do not edit.\n *\n * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes}\n * tslint:disable\n */ \nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../node_modules/ionic-angular/components/nav/nav.ngfactory\";\nimport * as i2 from \"ionic-angular/components/split-pane/split-pane\";\nimport * as i3 from \"ionic-angular/components/nav/nav\";\nimport * as i4 from \"ionic-angular/navigation/view-controller\";\nimport * as i5 from \"ionic-angular/navigation/nav-controller\";\nimport * as i6 from \"ionic-angular/components/app/app\";\nimport * as i7 from \"ionic-angular/config/config\";\nimport * as i8 from \"ionic-angular/platform/platform\";\nimport * as i9 from \"ionic-angular/gestures/gesture-controller\";\nimport * as i10 from \"ionic-angular/transitions/transition-controller\";\nimport * as i11 from \"ionic-angular/navigation/deep-linker\";\nimport * as i12 from \"ionic-angular/platform/dom-controller\";\nimport * as i13 from \"./app.component\";\nimport * as i14 from \"@ionic-native/status-bar/index\";\nimport * as i15 from \"@ionic-native/splash-screen/index\";\nvar styles_MyApp = [];\nvar RenderType_MyApp = i0.ɵcrt({ encapsulation: 2, styles: styles_MyApp, data: {} });\nexport { RenderType_MyApp as RenderType_MyApp };\nexport function View_MyApp_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 2, \"ion-nav\", [], null, null, null, i1.View_Nav_0, i1.RenderType_Nav)), i0.ɵprd(6144, null, i2.RootNode, null, [i3.Nav]), i0.ɵdid(2, 4374528, null, 0, i3.Nav, [[2, i4.ViewController], [2, i5.NavController], i6.App, i7.Config, i8.Platform, i0.ElementRef, i0.NgZone, i0.Renderer, i0.ComponentFactoryResolver, i9.GestureController, i10.TransitionController, [2, i11.DeepLinker], i12.DomController, i0.ErrorHandler], { root: [0, \"root\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n\"]))], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.rootPage; _ck(_v, 2, 0, currVal_0); }, null); }\nexport function View_MyApp_Host_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 1, \"ng-component\", [], null, null, null, View_MyApp_0, RenderType_MyApp)), i0.ɵdid(1, 49152, null, 0, i13.MyApp, [i8.Platform, i14.StatusBar, i15.SplashScreen], null, null)], null, null); }\nvar MyAppNgFactory = i0.ɵccf(\"ng-component\", i13.MyApp, View_MyApp_Host_0, {}, {}, []);\nexport { MyAppNgFactory as MyAppNgFactory };\n//# sourceMappingURL=app.component.ngfactory.js.map\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.component.ngfactory.js.pre-build-optimizer.js","/**\n * @fileoverview This file was generated by the Angular template compiler. Do not edit.\n *\n * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes}\n * tslint:disable\n */ \nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../../node_modules/ionic-angular/components/fab/fab-container.ngfactory\";\nimport * as i2 from \"ionic-angular/components/fab/fab-container\";\nimport * as i3 from \"ionic-angular/platform/platform\";\nimport * as i4 from \"../../../node_modules/ionic-angular/components/fab/fab.ngfactory\";\nimport * as i5 from \"ionic-angular/components/fab/fab\";\nimport * as i6 from \"ionic-angular/config/config\";\nimport * as i7 from \"ionic-angular/components/icon/icon\";\nimport * as i8 from \"ionic-angular/components/badge/badge\";\nimport * as i9 from \"ionic-angular/components/toolbar/toolbar-footer\";\nimport * as i10 from \"ionic-angular/navigation/view-controller\";\nimport * as i11 from \"@angular/common\";\nimport * as i12 from \"./ion-simple-wizard.component\";\nimport * as i13 from \"ionic-angular/util/events\";\nvar styles_IonSimpleWizard = [];\nvar RenderType_IonSimpleWizard = i0.ɵcrt({ encapsulation: 2, styles: styles_IonSimpleWizard, data: { \"animation\": [{ type: 7, name: \"btnState\", definitions: [{ type: 1, expr: \":enter\", animation: [{ type: 4, styles: { type: 5, steps: [{ type: 6, styles: { transform: \"rotate3d(0, 0, 1, -200deg)\", opacity: \"0\", transformOrigin: \"center\", offset: 0 }, offset: null }, { type: 6, styles: { transform: \"none\", opacity: \"1\", transformOrigin: \"center\", offset: 1 }, offset: null }] }, timings: \"400ms 200ms ease-in\" }], options: null }, { type: 1, expr: \":leave\", animation: [{ type: 4, styles: { type: 5, steps: [{ type: 6, styles: { transform: \"none\", opacity: \"1\", transformOrigin: \"center\", offset: 0 }, offset: null }, { type: 6, styles: { transform: \"rotate3d(0, 0, 1, 200deg)\", opacity: \"0\", transformOrigin: \"center\", offset: 1 }, offset: null }] }, timings: 400 }], options: null }], options: {} }] } });\nexport { RenderType_IonSimpleWizard as RenderType_IonSimpleWizard };\nfunction View_IonSimpleWizard_1(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 11, \"ion-fab\", [[\"bottom\", \"\"], [\"left\", \"\"]], [[24, \"@btnState\", 0]], null, null, i1.View_FabContainer_0, i1.RenderType_FabContainer)), i0.ɵdid(1, 1228800, null, 2, i2.FabContainer, [i3.Platform], null, null), i0.ɵqud(335544320, 1, { _mainButton: 0 }), i0.ɵqud(603979776, 2, { _fabLists: 1 }), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(5, 0, null, 0, 5, \"button\", [[\"ion-fab\", \"\"]], null, [[null, \"click\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"click\" === en)) {\n var pd_0 = (_co.back() !== false);\n ad = (pd_0 && ad);\n } return ad; }, i4.View_FabButton_0, i4.RenderType_FabButton)), i0.ɵdid(6, 49152, [[1, 4]], 0, i5.FabButton, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(8, 0, null, 0, 1, \"ion-icon\", [[\"name\", \"arrow-round-back\"], [\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(9, 147456, null, 0, i7.Icon, [i6.Config, i0.ElementRef, i0.Renderer], { name: [0, \"name\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"]))], function (_ck, _v) { var currVal_2 = \"arrow-round-back\"; _ck(_v, 9, 0, currVal_2); }, function (_ck, _v) { var currVal_0 = undefined; _ck(_v, 0, 0, currVal_0); var currVal_1 = i0.ɵnov(_v, 9)._hidden; _ck(_v, 8, 0, currVal_1); }); }\nfunction View_IonSimpleWizard_2(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 2, \"ion-badge\", [], null, null, null, null, null)), i0.ɵdid(1, 16384, null, 0, i8.Badge, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(2, null, [\"\", \" / \", \"\"]))], null, function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.step; var currVal_1 = _co.steps; _ck(_v, 2, 0, currVal_0, currVal_1); }); }\nfunction View_IonSimpleWizard_3(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 11, \"ion-fab\", [[\"bottom\", \"\"], [\"right\", \"\"]], [[24, \"@btnState\", 0]], null, null, i1.View_FabContainer_0, i1.RenderType_FabContainer)), i0.ɵdid(1, 1228800, null, 2, i2.FabContainer, [i3.Platform], null, null), i0.ɵqud(335544320, 3, { _mainButton: 0 }), i0.ɵqud(603979776, 4, { _fabLists: 1 }), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(5, 0, null, 0, 5, \"button\", [[\"ion-fab\", \"\"]], null, [[null, \"click\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"click\" === en)) {\n var pd_0 = (_co.next() !== false);\n ad = (pd_0 && ad);\n } return ad; }, i4.View_FabButton_0, i4.RenderType_FabButton)), i0.ɵdid(6, 49152, [[3, 4]], 0, i5.FabButton, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(8, 0, null, 0, 1, \"ion-icon\", [[\"name\", \"arrow-round-forward\"], [\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(9, 147456, null, 0, i7.Icon, [i6.Config, i0.ElementRef, i0.Renderer], { name: [0, \"name\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"]))], function (_ck, _v) { var currVal_2 = \"arrow-round-forward\"; _ck(_v, 9, 0, currVal_2); }, function (_ck, _v) { var currVal_0 = undefined; _ck(_v, 0, 0, currVal_0); var currVal_1 = i0.ɵnov(_v, 9)._hidden; _ck(_v, 8, 0, currVal_1); }); }\nfunction View_IonSimpleWizard_4(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 11, \"ion-fab\", [[\"bottom\", \"\"], [\"right\", \"\"]], [[24, \"@btnState\", 0]], null, null, i1.View_FabContainer_0, i1.RenderType_FabContainer)), i0.ɵdid(1, 1228800, null, 2, i2.FabContainer, [i3.Platform], null, null), i0.ɵqud(335544320, 5, { _mainButton: 0 }), i0.ɵqud(603979776, 6, { _fabLists: 1 }), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(5, 0, null, 0, 5, \"button\", [[\"ion-fab\", \"\"]], null, [[null, \"click\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"click\" === en)) {\n var pd_0 = (_co.finish.emit((_co.step + 1)) !== false);\n ad = (pd_0 && ad);\n } return ad; }, i4.View_FabButton_0, i4.RenderType_FabButton)), i0.ɵdid(6, 49152, [[5, 4]], 0, i5.FabButton, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(8, 0, null, 0, 1, \"ion-icon\", [[\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(9, 147456, null, 0, i7.Icon, [i6.Config, i0.ElementRef, i0.Renderer], { name: [0, \"name\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"]))], function (_ck, _v) { var _co = _v.component; var currVal_2 = _co.finishIcon; _ck(_v, 9, 0, currVal_2); }, function (_ck, _v) { var currVal_0 = undefined; _ck(_v, 0, 0, currVal_0); var currVal_1 = i0.ɵnov(_v, 9)._hidden; _ck(_v, 8, 0, currVal_1); }); }\nexport function View_IonSimpleWizard_0(_l) { return i0.ɵvid(0, [i0.ɵncd(null, 0), (_l()(), i0.ɵted(-1, null, [\"\\n\"])), (_l()(), i0.ɵeld(2, 0, null, null, 21, \"ion-footer\", [], [[8, \"hidden\", 0]], null, null, null, null)), i0.ɵdid(3, 16384, null, 0, i9.Footer, [i6.Config, i0.ElementRef, i0.Renderer, [2, i10.ViewController]], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(5, 0, null, null, 17, \"div\", [[\"class\", \"ion-wizard-footer\"]], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵand(16777216, null, null, 1, null, View_IonSimpleWizard_1)), i0.ɵdid(9, 16384, null, 0, i11.NgIf, [i0.ViewContainerRef, i0.TemplateRef], { ngIf: [0, \"ngIf\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\" \\n \"])), (_l()(), i0.ɵand(16777216, null, null, 1, null, View_IonSimpleWizard_2)), i0.ɵdid(13, 16384, null, 0, i11.NgIf, [i0.ViewContainerRef, i0.TemplateRef], { ngIf: [0, \"ngIf\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵand(16777216, null, null, 1, null, View_IonSimpleWizard_3)), i0.ɵdid(17, 16384, null, 0, i11.NgIf, [i0.ViewContainerRef, i0.TemplateRef], { ngIf: [0, \"ngIf\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵand(16777216, null, null, 1, null, View_IonSimpleWizard_4)), i0.ɵdid(21, 16384, null, 0, i11.NgIf, [i0.ViewContainerRef, i0.TemplateRef], { ngIf: [0, \"ngIf\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n\"]))], function (_ck, _v) { var _co = _v.component; var currVal_1 = !_co.isOnFirstStep(); _ck(_v, 9, 0, currVal_1); var currVal_2 = _co.showSteps; _ck(_v, 13, 0, currVal_2); var currVal_3 = (!_co.isOnFinalStep() && _co.getCondition()); _ck(_v, 17, 0, currVal_3); var currVal_4 = (_co.isOnFinalStep() && _co.getCondition()); _ck(_v, 21, 0, currVal_4); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.hideWizard; _ck(_v, 2, 0, currVal_0); }); }\nexport function View_IonSimpleWizard_Host_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 1, \"ion-simple-wizard\", [], null, null, null, View_IonSimpleWizard_0, RenderType_IonSimpleWizard)), i0.ɵdid(1, 114688, null, 0, i12.IonSimpleWizard, [i13.Events], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); }\nvar IonSimpleWizardNgFactory = i0.ɵccf(\"ion-simple-wizard\", i12.IonSimpleWizard, View_IonSimpleWizard_Host_0, { finishIcon: \"finishIcon\", showSteps: \"showSteps\", step: \"step\", stepCondition: \"stepCondition\" }, { finish: \"finish\", stepChange: \"stepChange\" }, [\"*\"]);\nexport { IonSimpleWizardNgFactory as IonSimpleWizardNgFactory };\n//# sourceMappingURL=ion-simple-wizard.component.ngfactory.js.map\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ion-simple-wizard/ion-simple-wizard.component.ngfactory.js.pre-build-optimizer.js","/**\n * @fileoverview This file was generated by the Angular template compiler. Do not edit.\n *\n * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes}\n * tslint:disable\n */ \nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"./ion-simple-wizard.step.component\";\nimport * as i2 from \"./ion-simple-wizard.component\";\nimport * as i3 from \"ionic-angular/util/events\";\nvar styles_IonSimpleWizardStep = [];\nvar RenderType_IonSimpleWizardStep = i0.ɵcrt({ encapsulation: 2, styles: styles_IonSimpleWizardStep, data: { \"animation\": [{ type: 7, name: \"WizardAnimations\", definitions: [{ type: 0, name: \"enter\", styles: { type: 6, styles: { position: \"absolute\", top: 0, width: \"100%\" }, offset: null }, options: undefined }, { type: 0, name: \"leave\", styles: { type: 6, styles: { visibility: \"hidden\", position: \"absolute\", top: 0 }, offset: null }, options: undefined }, { type: 1, expr: \"*=>enter\", animation: [{ type: 6, styles: { visibility: \"visible\", opacity: 0, transform: \"scale(0)\" }, offset: null }, { type: 4, styles: { type: 6, styles: { opacity: 1, transform: \"scale(1)\", top: 0 }, offset: null }, timings: \"300ms ease-in\" }], options: null }, { type: 1, expr: \"*=>leave\", animation: [{ type: 4, styles: { type: 6, styles: { opacity: 0, transform: \"scale(0)\", top: 0 }, offset: null }, timings: \"300ms ease-out\" }], options: null }], options: {} }] } });\nexport { RenderType_IonSimpleWizardStep as RenderType_IonSimpleWizardStep };\nexport function View_IonSimpleWizardStep_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵted(-1, null, [\"\\n \"])), i0.ɵncd(null, 0), (_l()(), i0.ɵted(-1, null, [\"\\n \"]))], null, null); }\nexport function View_IonSimpleWizardStep_Host_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 1, \"ion-wizard-step\", [], [[40, \"@WizardAnimations\", 0]], null, null, View_IonSimpleWizardStep_0, RenderType_IonSimpleWizardStep)), i0.ɵdid(1, 49152, null, 0, i1.IonSimpleWizardStep, [i2.IonSimpleWizard, i3.Events], null, null)], null, function (_ck, _v) { var currVal_0 = (i0.ɵnov(_v, 1).isCurrent ? \"enter\" : \"leave\"); _ck(_v, 0, 0, currVal_0); }); }\nvar IonSimpleWizardStepNgFactory = i0.ɵccf(\"ion-wizard-step\", i1.IonSimpleWizardStep, View_IonSimpleWizardStep_Host_0, {}, {}, [\"*\"]);\nexport { IonSimpleWizardStepNgFactory as IonSimpleWizardStepNgFactory };\n//# sourceMappingURL=ion-simple-wizard.step.component.ngfactory.js.map\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ion-simple-wizard/ion-simple-wizard.step.component.ngfactory.js.pre-build-optimizer.js","/**\n * @fileoverview This file was generated by the Angular template compiler. Do not edit.\n *\n * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes}\n * tslint:disable\n */ \nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"ionic-angular/components/toolbar/toolbar-header\";\nimport * as i2 from \"ionic-angular/config/config\";\nimport * as i3 from \"ionic-angular/navigation/view-controller\";\nimport * as i4 from \"../../../node_modules/ionic-angular/components/toolbar/navbar.ngfactory\";\nimport * as i5 from \"ionic-angular/components/toolbar/navbar\";\nimport * as i6 from \"ionic-angular/components/app/app\";\nimport * as i7 from \"ionic-angular/navigation/nav-controller\";\nimport * as i8 from \"../../../node_modules/ionic-angular/components/toolbar/toolbar-title.ngfactory\";\nimport * as i9 from \"ionic-angular/components/toolbar/toolbar-title\";\nimport * as i10 from \"ionic-angular/components/toolbar/toolbar\";\nimport * as i11 from \"../../../node_modules/ionic-angular/components/content/content.ngfactory\";\nimport * as i12 from \"ionic-angular/components/content/content\";\nimport * as i13 from \"ionic-angular/platform/platform\";\nimport * as i14 from \"ionic-angular/platform/dom-controller\";\nimport * as i15 from \"ionic-angular/platform/keyboard\";\nimport * as i16 from \"../ion-simple-wizard/ion-simple-wizard.component.ngfactory\";\nimport * as i17 from \"../ion-simple-wizard/ion-simple-wizard.component\";\nimport * as i18 from \"ionic-angular/util/events\";\nimport * as i19 from \"../ion-simple-wizard/ion-simple-wizard.step.component.ngfactory\";\nimport * as i20 from \"../ion-simple-wizard/ion-simple-wizard.step.component\";\nimport * as i21 from \"ionic-angular/components/card/card\";\nimport * as i22 from \"ionic-angular/components/icon/icon\";\nimport * as i23 from \"ionic-angular/components/card/card-content\";\nimport * as i24 from \"ionic-angular/components/card/card-title\";\nimport * as i25 from \"../../../node_modules/ionic-angular/components/button/button.ngfactory\";\nimport * as i26 from \"ionic-angular/components/button/button\";\nimport * as i27 from \"ionic-angular/components/list/list\";\nimport * as i28 from \"ionic-angular/gestures/gesture-controller\";\nimport * as i29 from \"../../../node_modules/ionic-angular/components/item/item.ngfactory\";\nimport * as i30 from \"ionic-angular/components/item/item\";\nimport * as i31 from \"ionic-angular/util/form\";\nimport * as i32 from \"ionic-angular/components/item/item-reorder\";\nimport * as i33 from \"ionic-angular/components/item/item-content\";\nimport * as i34 from \"../../../node_modules/ionic-angular/components/input/input.ngfactory\";\nimport * as i35 from \"ionic-angular/components/input/input\";\nimport * as i36 from \"@angular/forms\";\nimport * as i37 from \"./home\";\nimport * as i38 from \"ionic-angular/components/alert/alert-controller\";\nvar styles_HomePage = [];\nvar RenderType_HomePage = i0.ɵcrt({ encapsulation: 2, styles: styles_HomePage, data: {} });\nexport { RenderType_HomePage as RenderType_HomePage };\nexport function View_HomePage_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 10, \"ion-header\", [], null, null, null, null, null)), i0.ɵdid(1, 16384, null, 0, i1.Header, [i2.Config, i0.ElementRef, i0.Renderer, [2, i3.ViewController]], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(3, 0, null, null, 6, \"ion-navbar\", [[\"class\", \"toolbar\"], [\"color\", \"primary\"]], [[8, \"hidden\", 0], [2, \"statusbar-padding\", null]], null, null, i4.View_Navbar_0, i4.RenderType_Navbar)), i0.ɵdid(4, 49152, null, 0, i5.Navbar, [i6.App, [2, i3.ViewController], [2, i7.NavController], i2.Config, i0.ElementRef, i0.Renderer], { color: [0, \"color\"] }, null), (_l()(), i0.ɵted(-1, 3, [\"\\n \"])), (_l()(), i0.ɵeld(6, 0, null, 3, 2, \"ion-title\", [], null, null, null, i8.View_ToolbarTitle_0, i8.RenderType_ToolbarTitle)), i0.ɵdid(7, 49152, null, 0, i9.ToolbarTitle, [i2.Config, i0.ElementRef, i0.Renderer, [2, i10.Toolbar], [2, i5.Navbar]], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n Ion Simple Wizard\\n \"])), (_l()(), i0.ɵted(-1, 3, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n\"])), (_l()(), i0.ɵted(-1, null, [\"\\n\\n\"])), (_l()(), i0.ɵeld(12, 0, null, null, 109, \"ion-content\", [], [[2, \"statusbar-padding\", null], [2, \"has-refresher\", null]], null, null, i11.View_Content_0, i11.RenderType_Content)), i0.ɵdid(13, 4374528, null, 0, i12.Content, [i2.Config, i13.Platform, i14.DomController, i0.ElementRef, i0.Renderer, i6.App, i15.Keyboard, i0.NgZone, [2, i3.ViewController], [2, i7.NavController]], null, null), (_l()(), i0.ɵted(-1, 1, [\"\\n \"])), (_l()(), i0.ɵeld(15, 0, null, 1, 105, \"ion-simple-wizard\", [], null, [[null, \"stepChange\"], [null, \"finish\"], [null, \"stepConditionChange\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"stepChange\" === en)) {\n var pd_0 = ((_co.step = $event) !== false);\n ad = (pd_0 && ad);\n } if ((\"finish\" === en)) {\n var pd_1 = (_co.onFinish() !== false);\n ad = (pd_1 && ad);\n } if ((\"stepConditionChange\" === en)) {\n var pd_2 = ((_co.stepCondition = $event) !== false);\n ad = (pd_2 && ad);\n } return ad; }, i16.View_IonSimpleWizard_0, i16.RenderType_IonSimpleWizard)), i0.ɵdid(16, 114688, null, 0, i17.IonSimpleWizard, [i18.Events], { finishIcon: [0, \"finishIcon\"], showSteps: [1, \"showSteps\"], step: [2, \"step\"], stepCondition: [3, \"stepCondition\"] }, { finish: \"finish\", stepChange: \"stepChange\" }), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(18, 0, null, 0, 28, \"ion-wizard-step\", [], [[40, \"@WizardAnimations\", 0]], null, null, i19.View_IonSimpleWizardStep_0, i19.RenderType_IonSimpleWizardStep)), i0.ɵdid(19, 49152, null, 0, i20.IonSimpleWizardStep, [i17.IonSimpleWizard, i18.Events], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(21, 0, null, 0, 24, \"ion-card\", [[\"class\", \"card-wizard\"]], null, null, null, null, null)), i0.ɵdid(22, 16384, null, 0, i21.Card, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(24, 0, null, null, 1, \"ion-icon\", [[\"class\", \"card-wizard-icon\"], [\"color\", \"primary\"], [\"name\", \"ionic\"], [\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(25, 147456, null, 0, i22.Icon, [i2.Config, i0.ElementRef, i0.Renderer], { color: [0, \"color\"], name: [1, \"name\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(27, 0, null, null, 17, \"ion-card-content\", [], null, null, null, null, null)), i0.ɵdid(28, 16384, null, 0, i23.CardContent, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(30, 0, null, null, 2, \"ion-card-title\", [], null, null, null, null, null)), i0.ɵdid(31, 16384, null, 0, i24.CardTitle, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n Ionic 2 Simple Conditional Wizard\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(34, 0, null, null, 2, \"button\", [[\"ion-button\", \"\"], [\"outline\", \"\"]], null, [[null, \"click\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"click\" === en)) {\n var pd_0 = (_co.goToExample2() !== false);\n ad = (pd_0 && ad);\n } return ad; }, i25.View_Button_0, i25.RenderType_Button)), i0.ɵdid(35, 1097728, null, 0, i26.Button, [[8, \"\"], i2.Config, i0.ElementRef, i0.Renderer], { outline: [0, \"outline\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"Dynamics Steps Example\"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(38, 0, null, null, 1, \"p\", [], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"\\n Simple component to handle conditionals steps wizard in ionic 2. This is the first step.\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(41, 0, null, null, 2, \"button\", [[\"ion-button\", \"\"], [\"outline\", \"\"]], null, [[null, \"click\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"click\" === en)) {\n var pd_0 = (_co.toggle() !== false);\n ad = (pd_0 && ad);\n } return ad; }, i25.View_Button_0, i25.RenderType_Button)), i0.ɵdid(42, 1097728, null, 0, i26.Button, [[8, \"\"], i2.Config, i0.ElementRef, i0.Renderer], { outline: [0, \"outline\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"Press to Continue\"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(48, 0, null, 0, 35, \"ion-wizard-step\", [], [[40, \"@WizardAnimations\", 0]], null, null, i19.View_IonSimpleWizardStep_0, i19.RenderType_IonSimpleWizardStep)), i0.ɵdid(49, 49152, null, 0, i20.IonSimpleWizardStep, [i17.IonSimpleWizard, i18.Events], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(51, 0, null, 0, 31, \"ion-card\", [[\"class\", \"card-wizard\"]], null, null, null, null, null)), i0.ɵdid(52, 16384, null, 0, i21.Card, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(54, 0, null, null, 1, \"ion-icon\", [[\"class\", \"card-wizard-icon\"], [\"color\", \"primary\"], [\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(55, 147456, null, 0, i22.Icon, [i2.Config, i0.ElementRef, i0.Renderer], { color: [0, \"color\"], name: [1, \"name\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(57, 0, null, null, 24, \"ion-card-content\", [], null, null, null, null, null)), i0.ɵdid(58, 16384, null, 0, i23.CardContent, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(60, 0, null, null, 2, \"ion-card-title\", [], null, null, null, null, null)), i0.ɵdid(61, 16384, null, 0, i24.CardTitle, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n Conditions\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(64, 0, null, null, 16, \"p\", [], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"\\n Manage the next step condition of the wizard however you want\\n \"])), (_l()(), i0.ɵeld(66, 0, null, null, 13, \"ion-list\", [], null, null, null, null, null)), i0.ɵdid(67, 16384, null, 0, i27.List, [i2.Config, i0.ElementRef, i0.Renderer, i13.Platform, i28.GestureController, i14.DomController], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(69, 0, null, null, 9, \"ion-item\", [[\"class\", \"item item-block\"]], null, null, null, i29.View_Item_0, i29.RenderType_Item)), i0.ɵdid(70, 1097728, null, 3, i30.Item, [i31.Form, i2.Config, i0.ElementRef, i0.Renderer, [2, i32.ItemReorder]], null, null), i0.ɵqud(335544320, 1, { contentLabel: 0 }), i0.ɵqud(603979776, 2, { _buttons: 1 }), i0.ɵqud(603979776, 3, { _icons: 1 }), i0.ɵdid(74, 16384, null, 0, i33.ItemContent, [], null, null), (_l()(), i0.ɵted(-1, 2, [\"\\n \"])), (_l()(), i0.ɵeld(76, 0, null, 3, 1, \"ion-input\", [[\"placeholder\", \"Edit to continue\"], [\"type\", \"text\"]], null, [[null, \"input\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"input\" === en)) {\n var pd_0 = (_co.textChange($event) !== false);\n ad = (pd_0 && ad);\n } return ad; }, i34.View_TextInput_0, i34.RenderType_TextInput)), i0.ɵdid(77, 5423104, null, 0, i35.TextInput, [i2.Config, i13.Platform, i31.Form, i6.App, i0.ElementRef, i0.Renderer, [2, i12.Content], [2, i30.Item], [2, i36.NgControl], i14.DomController], { type: [0, \"type\"], placeholder: [1, \"placeholder\"] }, { input: \"input\" }), (_l()(), i0.ɵted(-1, 2, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(85, 0, null, 0, 34, \"ion-wizard-step\", [], [[40, \"@WizardAnimations\", 0]], null, null, i19.View_IonSimpleWizardStep_0, i19.RenderType_IonSimpleWizardStep)), i0.ɵdid(86, 49152, null, 0, i20.IonSimpleWizardStep, [i17.IonSimpleWizard, i18.Events], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(88, 0, null, 0, 30, \"ion-card\", [[\"class\", \"card-wizard\"]], null, null, null, null, null)), i0.ɵdid(89, 16384, null, 0, i21.Card, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(91, 0, null, null, 1, \"ion-icon\", [[\"class\", \"card-wizard-icon\"], [\"color\", \"primary\"], [\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(92, 147456, null, 0, i22.Icon, [i2.Config, i0.ElementRef, i0.Renderer], { color: [0, \"color\"], name: [1, \"name\"] }, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(94, 0, null, null, 23, \"ion-card-content\", [], null, null, null, null, null)), i0.ɵdid(95, 16384, null, 0, i23.CardContent, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(97, 0, null, null, 2, \"ion-card-title\", [], null, null, null, null, null)), i0.ɵdid(98, 16384, null, 0, i24.CardTitle, [i2.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n Final Step\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(101, 0, null, null, 8, \"p\", [], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"\\n You can change the step animation , the button animation, show or hide the step counter and more.\"])), (_l()(), i0.ɵeld(103, 0, null, null, 0, \"br\", [], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"Please go to the\\n \"])), (_l()(), i0.ɵeld(105, 0, null, null, 1, \"a\", [[\"href\", \"https://github.com/JoxieMedina/ionic2-simple-conditional-wizard\"], [\"target\", \"_blank\"]], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"documentation\"])), (_l()(), i0.ɵted(-1, null, [\" for more details and options. \"])), (_l()(), i0.ɵeld(108, 0, null, null, 0, \"br\", [], null, null, null, null, null)), (_l()(), i0.ɵted(-1, null, [\"Like it to finish the wizard.\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(111, 0, null, null, 5, \"button\", [[\"icon-right\", \"\"], [\"ion-button\", \"\"], [\"outline\", \"\"]], null, [[null, \"click\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"click\" === en)) {\n var pd_0 = (_co.toggle() !== false);\n ad = (pd_0 && ad);\n } return ad; }, i25.View_Button_0, i25.RenderType_Button)), i0.ɵdid(112, 1097728, null, 0, i26.Button, [[8, \"\"], i2.Config, i0.ElementRef, i0.Renderer], { outline: [0, \"outline\"] }, null), (_l()(), i0.ɵted(113, 0, [\"\\n \", \"\\n \"])), (_l()(), i0.ɵeld(114, 0, null, 0, 1, \"ion-icon\", [[\"role\", \"img\"]], [[2, \"hide\", null]], null, null, null, null)), i0.ɵdid(115, 147456, null, 0, i22.Icon, [i2.Config, i0.ElementRef, i0.Renderer], { name: [0, \"name\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵted(-1, 1, [\"\\n\\n\"]))], function (_ck, _v) { var _co = _v.component; var currVal_2 = \"primary\"; _ck(_v, 4, 0, currVal_2); var currVal_5 = \"done-all\"; var currVal_6 = false; var currVal_7 = _co.step; var currVal_8 = _co.stepCondition; _ck(_v, 16, 0, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_11 = \"primary\"; var currVal_12 = \"ionic\"; _ck(_v, 25, 0, currVal_11, currVal_12); var currVal_13 = \"\"; _ck(_v, 35, 0, currVal_13); var currVal_14 = \"\"; _ck(_v, 42, 0, currVal_14); var currVal_17 = \"primary\"; var currVal_18 = _co.getIconStep2(); _ck(_v, 55, 0, currVal_17, currVal_18); var currVal_19 = \"text\"; var currVal_20 = \"Edit to continue\"; _ck(_v, 77, 0, currVal_19, currVal_20); var currVal_23 = \"primary\"; var currVal_24 = _co.getIconStep3(); _ck(_v, 92, 0, currVal_23, currVal_24); var currVal_25 = \"\"; _ck(_v, 112, 0, currVal_25); var currVal_28 = _co.getLikeIcon(); _ck(_v, 115, 0, currVal_28); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = i0.ɵnov(_v, 4)._hidden; var currVal_1 = i0.ɵnov(_v, 4)._sbPadding; _ck(_v, 3, 0, currVal_0, currVal_1); var currVal_3 = i0.ɵnov(_v, 13).statusbarPadding; var currVal_4 = i0.ɵnov(_v, 13)._hasRefresher; _ck(_v, 12, 0, currVal_3, currVal_4); var currVal_9 = (i0.ɵnov(_v, 19).isCurrent ? \"enter\" : \"leave\"); _ck(_v, 18, 0, currVal_9); var currVal_10 = i0.ɵnov(_v, 25)._hidden; _ck(_v, 24, 0, currVal_10); var currVal_15 = (i0.ɵnov(_v, 49).isCurrent ? \"enter\" : \"leave\"); _ck(_v, 48, 0, currVal_15); var currVal_16 = i0.ɵnov(_v, 55)._hidden; _ck(_v, 54, 0, currVal_16); var currVal_21 = (i0.ɵnov(_v, 86).isCurrent ? \"enter\" : \"leave\"); _ck(_v, 85, 0, currVal_21); var currVal_22 = i0.ɵnov(_v, 92)._hidden; _ck(_v, 91, 0, currVal_22); var currVal_26 = (_co.stepCondition ? \"Dislike\" : \"Like\"); _ck(_v, 113, 0, currVal_26); var currVal_27 = i0.ɵnov(_v, 115)._hidden; _ck(_v, 114, 0, currVal_27); }); }\nexport function View_HomePage_Host_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 1, \"page-home\", [], null, null, null, View_HomePage_0, RenderType_HomePage)), i0.ɵdid(1, 49152, null, 0, i37.HomePage, [i7.NavController, i38.AlertController, i18.Events], null, null)], null, null); }\nvar HomePageNgFactory = i0.ɵccf(\"page-home\", i37.HomePage, View_HomePage_Host_0, {}, {}, []);\nexport { HomePageNgFactory as HomePageNgFactory };\n//# sourceMappingURL=home.ngfactory.js.map\n\n\n// WEBPACK FOOTER //\n// ./src/pages/home/home.ngfactory.js.pre-build-optimizer.js","/**\n * @fileoverview This file was generated by the Angular template compiler. Do not edit.\n *\n * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes}\n * tslint:disable\n */ \nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../ion-simple-wizard/ion-simple-wizard.step.component.ngfactory\";\nimport * as i2 from \"../ion-simple-wizard/ion-simple-wizard.step.component\";\nimport * as i3 from \"../ion-simple-wizard/ion-simple-wizard.component\";\nimport * as i4 from \"ionic-angular/util/events\";\nimport * as i5 from \"ionic-angular/components/card/card\";\nimport * as i6 from \"ionic-angular/config/config\";\nimport * as i7 from \"ionic-angular/components/card/card-header\";\nimport * as i8 from \"ionic-angular/components/card/card-content\";\nimport * as i9 from \"../../../node_modules/ionic-angular/components/item/item.ngfactory\";\nimport * as i10 from \"ionic-angular/components/item/item\";\nimport * as i11 from \"ionic-angular/util/form\";\nimport * as i12 from \"ionic-angular/components/item/item-reorder\";\nimport * as i13 from \"ionic-angular/components/item/item-content\";\nimport * as i14 from \"ionic-angular/components/label/label\";\nimport * as i15 from \"../../../node_modules/ionic-angular/components/toggle/toggle.ngfactory\";\nimport * as i16 from \"ionic-angular/components/toggle/toggle\";\nimport * as i17 from \"ionic-angular/platform/platform\";\nimport * as i18 from \"ionic-angular/tap-click/haptic\";\nimport * as i19 from \"ionic-angular/gestures/gesture-controller\";\nimport * as i20 from \"ionic-angular/platform/dom-controller\";\nimport * as i21 from \"@angular/forms\";\nimport * as i22 from \"ionic-angular/components/toolbar/toolbar-header\";\nimport * as i23 from \"ionic-angular/navigation/view-controller\";\nimport * as i24 from \"../../../node_modules/ionic-angular/components/toolbar/navbar.ngfactory\";\nimport * as i25 from \"ionic-angular/components/toolbar/navbar\";\nimport * as i26 from \"ionic-angular/components/app/app\";\nimport * as i27 from \"ionic-angular/navigation/nav-controller\";\nimport * as i28 from \"../../../node_modules/ionic-angular/components/toolbar/toolbar-title.ngfactory\";\nimport * as i29 from \"ionic-angular/components/toolbar/toolbar-title\";\nimport * as i30 from \"ionic-angular/components/toolbar/toolbar\";\nimport * as i31 from \"../../../node_modules/ionic-angular/components/content/content.ngfactory\";\nimport * as i32 from \"ionic-angular/components/content/content\";\nimport * as i33 from \"ionic-angular/platform/keyboard\";\nimport * as i34 from \"../ion-simple-wizard/ion-simple-wizard.component.ngfactory\";\nimport * as i35 from \"@angular/common\";\nimport * as i36 from \"./dynamic.page\";\nimport * as i37 from \"ionic-angular/components/alert/alert-controller\";\nvar styles_DynamicPage = [];\nvar RenderType_DynamicPage = i0.ɵcrt({ encapsulation: 2, styles: styles_DynamicPage, data: {} });\nexport { RenderType_DynamicPage as RenderType_DynamicPage };\nfunction View_DynamicPage_1(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 33, \"ion-wizard-step\", [], [[40, \"@WizardAnimations\", 0]], null, null, i1.View_IonSimpleWizardStep_0, i1.RenderType_IonSimpleWizardStep)), i0.ɵdid(1, 49152, null, 0, i2.IonSimpleWizardStep, [i3.IonSimpleWizard, i4.Events], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵeld(3, 0, null, 0, 29, \"ion-card\", [], null, null, null, null, null)), i0.ɵdid(4, 16384, null, 0, i5.Card, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(6, 0, null, null, 2, \"ion-card-header\", [], null, null, null, null, null)), i0.ɵdid(7, 16384, null, 0, i7.CardHeader, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(8, null, [\"\\n \", \"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(10, 0, null, null, 21, \"ion-card-content\", [], null, null, null, null, null)), i0.ɵdid(11, 16384, null, 0, i8.CardContent, [i6.Config, i0.ElementRef, i0.Renderer], null, null), (_l()(), i0.ɵted(12, null, [\"\\n \", \"\\n \"])), (_l()(), i0.ɵeld(13, 0, null, null, 17, \"ion-item\", [[\"class\", \"item item-block\"]], null, null, null, i9.View_Item_0, i9.RenderType_Item)), i0.ɵdid(14, 1097728, null, 3, i10.Item, [i11.Form, i6.Config, i0.ElementRef, i0.Renderer, [2, i12.ItemReorder]], null, null), i0.ɵqud(335544320, 1, { contentLabel: 0 }), i0.ɵqud(603979776, 2, { _buttons: 1 }), i0.ɵqud(603979776, 3, { _icons: 1 }), i0.ɵdid(18, 16384, null, 0, i13.ItemContent, [], null, null), (_l()(), i0.ɵted(-1, 2, [\"\\n \"])), (_l()(), i0.ɵeld(20, 0, null, 1, 2, \"ion-label\", [], null, null, null, null, null)), i0.ɵdid(21, 16384, [[1, 4]], 0, i14.Label, [i6.Config, i0.ElementRef, i0.Renderer, [8, null], [8, null], [8, null], [8, null]], null, null), (_l()(), i0.ɵted(-1, null, [\"Next Condition\"])), (_l()(), i0.ɵted(-1, 2, [\"\\n \"])), (_l()(), i0.ɵeld(24, 0, null, 4, 5, \"ion-toggle\", [], [[2, \"toggle-disabled\", null], [2, \"toggle-checked\", null], [2, \"toggle-activated\", null], [2, \"ng-untouched\", null], [2, \"ng-touched\", null], [2, \"ng-pristine\", null], [2, \"ng-dirty\", null], [2, \"ng-valid\", null], [2, \"ng-invalid\", null], [2, \"ng-pending\", null]], [[null, \"ionChange\"], [null, \"ngModelChange\"], [null, \"keyup\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"keyup\" === en)) {\n var pd_0 = (i0.ɵnov(_v, 25)._keyup($event) !== false);\n ad = (pd_0 && ad);\n } if ((\"ionChange\" === en)) {\n var pd_1 = (_co.toggleCondition($event) !== false);\n ad = (pd_1 && ad);\n } if ((\"ngModelChange\" === en)) {\n var pd_2 = ((_co.stepCondition = $event) !== false);\n ad = (pd_2 && ad);\n } return ad; }, i15.View_Toggle_0, i15.RenderType_Toggle)), i0.ɵdid(25, 1228800, null, 0, i16.Toggle, [i11.Form, i6.Config, i17.Platform, i0.ElementRef, i0.Renderer, i18.Haptic, [2, i10.Item], i19.GestureController, i20.DomController, i0.NgZone], null, { ionChange: \"ionChange\" }), i0.ɵprd(1024, null, i21.NG_VALUE_ACCESSOR, function (p0_0) { return [p0_0]; }, [i16.Toggle]), i0.ɵdid(27, 671744, null, 0, i21.NgModel, [[8, null], [8, null], [8, null], [2, i21.NG_VALUE_ACCESSOR]], { model: [0, \"model\"] }, { update: \"ngModelChange\" }), i0.ɵprd(2048, null, i21.NgControl, null, [i21.NgModel]), i0.ɵdid(29, 16384, null, 0, i21.NgControlStatus, [i21.NgControl], null, null), (_l()(), i0.ɵted(-1, 2, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵted(-1, 0, [\"\\n \"]))], function (_ck, _v) { var _co = _v.component; var currVal_13 = _co.stepCondition; _ck(_v, 27, 0, currVal_13); }, function (_ck, _v) { var currVal_0 = (i0.ɵnov(_v, 1).isCurrent ? \"enter\" : \"leave\"); _ck(_v, 0, 0, currVal_0); var currVal_1 = _v.context.$implicit.title; _ck(_v, 8, 0, currVal_1); var currVal_2 = _v.context.$implicit.content; _ck(_v, 12, 0, currVal_2); var currVal_3 = i0.ɵnov(_v, 25)._disabled; var currVal_4 = i0.ɵnov(_v, 25)._value; var currVal_5 = i0.ɵnov(_v, 25)._activated; var currVal_6 = i0.ɵnov(_v, 29).ngClassUntouched; var currVal_7 = i0.ɵnov(_v, 29).ngClassTouched; var currVal_8 = i0.ɵnov(_v, 29).ngClassPristine; var currVal_9 = i0.ɵnov(_v, 29).ngClassDirty; var currVal_10 = i0.ɵnov(_v, 29).ngClassValid; var currVal_11 = i0.ɵnov(_v, 29).ngClassInvalid; var currVal_12 = i0.ɵnov(_v, 29).ngClassPending; _ck(_v, 24, 0, currVal_3, currVal_4, currVal_5, currVal_6, currVal_7, currVal_8, currVal_9, currVal_10, currVal_11, currVal_12); }); }\nexport function View_DynamicPage_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 10, \"ion-header\", [], null, null, null, null, null)), i0.ɵdid(1, 16384, null, 0, i22.Header, [i6.Config, i0.ElementRef, i0.Renderer, [2, i23.ViewController]], null, null), (_l()(), i0.ɵted(-1, null, [\"\\n \"])), (_l()(), i0.ɵeld(3, 0, null, null, 6, \"ion-navbar\", [[\"class\", \"toolbar\"], [\"color\", \"primary\"]], [[8, \"hidden\", 0], [2, \"statusbar-padding\", null]], null, null, i24.View_Navbar_0, i24.RenderType_Navbar)), i0.ɵdid(4, 49152, null, 0, i25.Navbar, [i26.App, [2, i23.ViewController], [2, i27.NavController], i6.Config, i0.ElementRef, i0.Renderer], { color: [0, \"color\"] }, null), (_l()(), i0.ɵted(-1, 3, [\"\\n \"])), (_l()(), i0.ɵeld(6, 0, null, 3, 2, \"ion-title\", [], null, null, null, i28.View_ToolbarTitle_0, i28.RenderType_ToolbarTitle)), i0.ɵdid(7, 49152, null, 0, i29.ToolbarTitle, [i6.Config, i0.ElementRef, i0.Renderer, [2, i30.Toolbar], [2, i25.Navbar]], null, null), (_l()(), i0.ɵted(-1, 0, [\"\\n Dynamic Example\\n \"])), (_l()(), i0.ɵted(-1, 3, [\"\\n \"])), (_l()(), i0.ɵted(-1, null, [\"\\n\"])), (_l()(), i0.ɵted(-1, null, [\"\\n\\n\"])), (_l()(), i0.ɵeld(12, 0, null, null, 9, \"ion-content\", [], [[2, \"statusbar-padding\", null], [2, \"has-refresher\", null]], null, null, i31.View_Content_0, i31.RenderType_Content)), i0.ɵdid(13, 4374528, null, 0, i32.Content, [i6.Config, i17.Platform, i20.DomController, i0.ElementRef, i0.Renderer, i26.App, i33.Keyboard, i0.NgZone, [2, i23.ViewController], [2, i27.NavController]], null, null), (_l()(), i0.ɵted(-1, 1, [\"\\n \"])), (_l()(), i0.ɵeld(15, 0, null, 1, 5, \"ion-simple-wizard\", [], null, [[null, \"stepChange\"], [null, \"finish\"], [null, \"stepConditionChange\"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if ((\"stepChange\" === en)) {\n var pd_0 = ((_co.step = $event) !== false);\n ad = (pd_0 && ad);\n } if ((\"finish\" === en)) {\n var pd_1 = (_co.onFinish() !== false);\n ad = (pd_1 && ad);\n } if ((\"stepConditionChange\" === en)) {\n var pd_2 = ((_co.stepCondition = $event) !== false);\n ad = (pd_2 && ad);\n } return ad; }, i34.View_IonSimpleWizard_0, i34.RenderType_IonSimpleWizard)), i0.ɵdid(16, 114688, null, 0, i3.IonSimpleWizard, [i4.Events], { finishIcon: [0, \"finishIcon\"], showSteps: [1, \"showSteps\"], step: [2, \"step\"], stepCondition: [3, \"stepCondition\"] }, { finish: \"finish\", stepChange: \"stepChange\" }), (_l()(), i0.ɵted(-1, 0, [\"\\n \"])), (_l()(), i0.ɵand(16777216, null, 0, 1, null, View_DynamicPage_1)), i0.ɵdid(19, 802816, null, 0, i35.NgForOf, [i0.ViewContainerRef, i0.TemplateRef, i0.IterableDiffers], { ngForOf: [0, \"ngForOf\"] }, null), (_l()(), i0.ɵted(-1, 0, [\"\\n\\n \"])), (_l()(), i0.ɵted(-1, 1, [\"\\n\\n\\n\"]))], function (_ck, _v) { var _co = _v.component; var currVal_2 = \"primary\"; _ck(_v, 4, 0, currVal_2); var currVal_5 = \"done-all\"; var currVal_6 = true; var currVal_7 = _co.step; var currVal_8 = _co.stepCondition; _ck(_v, 16, 0, currVal_5, currVal_6, currVal_7, currVal_8); var currVal_9 = _co.stepsArray; _ck(_v, 19, 0, currVal_9); }, function (_ck, _v) { var currVal_0 = i0.ɵnov(_v, 4)._hidden; var currVal_1 = i0.ɵnov(_v, 4)._sbPadding; _ck(_v, 3, 0, currVal_0, currVal_1); var currVal_3 = i0.ɵnov(_v, 13).statusbarPadding; var currVal_4 = i0.ɵnov(_v, 13)._hasRefresher; _ck(_v, 12, 0, currVal_3, currVal_4); }); }\nexport function View_DynamicPage_Host_0(_l) { return i0.ɵvid(0, [(_l()(), i0.ɵeld(0, 0, null, null, 1, \"dynamic-home\", [], null, null, null, View_DynamicPage_0, RenderType_DynamicPage)), i0.ɵdid(1, 49152, null, 0, i36.DynamicPage, [i27.NavController, i37.AlertController, i4.Events], null, null)], null, null); }\nvar DynamicPageNgFactory = i0.ɵccf(\"dynamic-home\", i36.DynamicPage, View_DynamicPage_Host_0, {}, {}, []);\nexport { DynamicPageNgFactory as DynamicPageNgFactory };\n//# sourceMappingURL=dynamic.page.ngfactory.js.map\n\n\n// WEBPACK FOOTER //\n// ./src/pages/dynamic-steps/dynamic.page.ngfactory.js.pre-build-optimizer.js","import { Component } from '@angular/core';\nimport { NavController, AlertController, Events } from 'ionic-angular';\n\n@Component({\n selector: 'dynamic-home',\n templateUrl: 'dynamic.page.html',\n\n})\nexport class DynamicPage {\n step: any;\n stepCondition: any;\n stepDefaultCondition: any;\n currentStep: any;\n stepsArray: Array = [];\n constructor(public navCtrl: NavController, public alertCtrl: AlertController, public evts: Events) {\n /**\n * Step Wizard Settings\n */\n this.step = 1;//The value of the first step, always 1\n this.stepCondition = false;//For each step the condition is set to this value, Set to true if you don't need condition in every step\n this.stepDefaultCondition = this.stepCondition;//Save the default condition for each step\n //Let's create some dummy data for this case\n this.stepsArray =\n [\n {\n title: 'Step 1',\n content: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit.'\n },\n {\n title: 'Step 2',\n content: 'At dolorem sed, porro amet corrupti consequatur dolore ea sequi similique maxime!'\n },\n {\n title: 'Step 3',\n content: 'Tempora eveniet nostrum asperiores vero facere voluptatum adipisci minus magnam.'\n }\n ];\n //You can subscribe to the Event 'step:changed' to handle the current step\n this.evts.subscribe('step:changed', step => {\n //Handle the current step if you need\n this.currentStep = step;\n //Set the step condition to the default value\n this.stepCondition = this.stepDefaultCondition;\n });\n this.evts.subscribe('step:next', () => {\n //Do something if next\n console.log('Next pressed: ', this.currentStep);\n });\n this.evts.subscribe('step:back', () => {\n //Do something if back\n console.log('Back pressed: ', this.currentStep);\n });\n }\n /**\n * Demo functions\n */\n onFinish() {\n this.alertCtrl.create({\n message: 'Wizard Finished!!',\n title: 'Congrats!!',\n buttons: [{\n text: 'Ok'\n }]\n }).present();\n }\n\n toggleCondition(_condition) {\n this.stepCondition = _condition.checked;\n }\n\n\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/dynamic-steps/dynamic.page.ts","import { Component } from '@angular/core';\nimport { NavController, AlertController, Events } from 'ionic-angular';\nimport { DynamicPage } from '../dynamic-steps/dynamic.page';\n\n@Component({\n selector: 'page-home',\n templateUrl: 'home.html',\n\n})\nexport class HomePage {\n step: any;\n stepCondition: any;\n stepDefaultCondition: any;\n currentStep: any;\n\n constructor(public navCtrl: NavController, public alertCtrl: AlertController, public evts: Events) {\n /**\n * Step Wizard Settings\n */\n this.step = 1;//The value of the first step, always 1\n this.stepCondition = false;//Set to true if you don't need condition in every step\n this.stepDefaultCondition = this.stepCondition;//Save the default condition for every step\n //You can subscribe to the Event 'step:changed' to handle the current step\n this.evts.subscribe('step:changed', step => {\n //Handle the current step if you need\n this.currentStep = step;\n //Set the step condition to the default value\n this.stepCondition = this.stepDefaultCondition;\n });\n this.evts.subscribe('step:next', () => {\n //Do something if next\n console.log('Next pressed: ', this.currentStep);\n });\n this.evts.subscribe('step:back', () => {\n //Do something if back\n console.log('Back pressed: ', this.currentStep);\n });\n }\n /**\n * Demo functions\n */\n onFinish() {\n this.alertCtrl.create({\n message: 'Wizard Finished!!',\n title: 'Congrats!!',\n buttons: [{\n text: 'Ok'\n }]\n }).present();\n }\n\n toggle() {\n this.stepCondition = !this.stepCondition;\n }\n getIconStep2() {\n return this.stepCondition ? 'unlock' : 'lock';\n }\n\n getIconStep3() {\n return this.stepCondition ? 'happy' : 'sad';\n }\n getLikeIcon() {\n return this.stepCondition ? 'thumbs-down' : 'thumbs-up';\n }\n goToExample2() {\n this.navCtrl.push(DynamicPage);\n }\n\n textChange(e) {\n if (e.target.value && e.target.value.trim() !== '') {\n this.stepCondition = true;\n } else {\n this.stepCondition = false;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/home/home.ts","import { Component } from '@angular/core';\nimport { Platform } from 'ionic-angular';\nimport { StatusBar } from '@ionic-native/status-bar';\nimport { SplashScreen } from '@ionic-native/splash-screen';\n\nimport { HomePage } from '../pages/home/home';\n\n\n@Component({\n templateUrl: 'app.html'\n})\nexport class MyApp {\n rootPage = HomePage;\n\n constructor(platform: Platform,\n public statusBar: StatusBar, \n public splashScreen: SplashScreen) {\n platform.ready().then(() => {\n // Okay, so the platform is ready and our plugins are available.\n // Here you can do any higher level native things you might need.\n\n this.statusBar.styleDefault();\n this.statusBar.backgroundColorByHexString('#0095d8');\n this.splashScreen.hide();\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.component.ts","import { Component, Input, Output, EventEmitter } from '@angular/core';\n/*import { Keyboard } from '@ionic-native/keyboard';*/\nimport { Events } from 'ionic-angular';\nimport { WizardAnimations } from './ion-simple-wizard-animations';\n\n@Component({\n selector: 'ion-simple-wizard',\n templateUrl: 'ion-simple-wizard.component.html',\n animations: WizardAnimations.btnRotate\n})\nexport class IonSimpleWizard {\n @Input() finishIcon = 'send';//Default\n @Input() showSteps: boolean=true;//Default\n @Input() step = 1;//Default\n @Output() finish = new EventEmitter();\n @Output() stepChange = new EventEmitter();\n public steps = 0;//Innitial\n public hideWizard = false;//Default\n @Input() stepCondition = true;//Default\n\n constructor(public evts: Events) {\n }\n\n ngOnInit() {\n /**\n * Hide the wizard buttons when the keyboard is open\n */\n /*this.keyboard.onKeyboardShow().subscribe(() => {\n this.hideWizard = true;\n });\n this.keyboard.onKeyboardHide().subscribe(() => {\n this.hideWizard = false;\n })*/\n }\n /**\n * @return {number} New Steps\n */\n public addStep() {\n const newSteps = this.steps + 1;\n this.steps = newSteps;\n return newSteps;\n }\n /**\n * @return {boolean} true if is the final step\n */\n isOnFinalStep() {\n return this.step === this.steps;\n }\n /**\n * @return {boolean} the current step condition\n */\n getCondition() {\n return this.stepCondition;\n }\n /**\n * @return {boolean} true if the the step is the first \n */\n isOnFirstStep() {\n return this.step === 1;\n }\n /**\n * @method back button event and emit Event Called 'step:back'\n */\n back() {\n this.stepChange.emit(this.step - 1);\n this.evts.publish('step:back');\n\n }\n /**\n * @method next button event and emit Event Called 'step:next'\n */\n next() {\n this.stepChange.emit(this.step + 1);\n this.evts.publish('step:next');\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ion-simple-wizard/ion-simple-wizard.component.ts","import { Component } from '@angular/core';\nimport { IonSimpleWizard } from './ion-simple-wizard.component';\nimport { Events } from 'ionic-angular';\nimport { WizardAnimations } from './ion-simple-wizard-animations';\n\n@Component({\n selector: 'ion-wizard-step',\n host: {\n '[@WizardAnimations]': 'isCurrent ?\"enter\":\"leave\"'\n },\n template: `\n \n `,\n animations: WizardAnimations.zoom //TO DO: Change the animation by @Input for example\n})\nexport class IonSimpleWizardStep {\n public isCurrent;\n public step;\n constructor(public parent: IonSimpleWizard, public evts: Events) {\n this.step = this.parent.addStep();\n this.isCurrent = this.step === this.parent.step;\n this.parent.stepChange.subscribe(step => {\n this.isCurrent = this.step === step;\n if (this.isCurrent) {\n this.evts.publish('step:changed', this.step);\n }\n\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ion-simple-wizard/ion-simple-wizard.step.component.ts","import { NgModule, ErrorHandler } from '@angular/core';\nimport { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';\nimport { MyApp } from './app.component';\nimport { BrowserModule } from '@angular//platform-browser';\nimport { HttpModule } from '@angular/http';\nimport { StatusBar } from '@ionic-native/status-bar';\nimport { SplashScreen } from '@ionic-native/splash-screen';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { HomePage } from '../pages/home/home';\nimport { DynamicPage } from '../pages/dynamic-steps/dynamic.page';\nimport { IonSimpleWizard } from '../pages/ion-simple-wizard/ion-simple-wizard.component';\nimport { IonSimpleWizardStep } from '../pages/ion-simple-wizard/ion-simple-wizard.step.component';\n\n@NgModule({\n declarations: [\n MyApp,\n HomePage,\n DynamicPage,\n IonSimpleWizard,\n IonSimpleWizardStep\n ],\n imports: [\n BrowserModule,\n HttpModule,\n BrowserAnimationsModule,\n IonicModule.forRoot(MyApp, {}, \n{\n links: [\n \n ]\n})\n ],\n bootstrap: [IonicApp],\n entryComponents: [\n MyApp,\n HomePage, DynamicPage\n\n ],\n providers: [StatusBar,\n SplashScreen,{ provide: ErrorHandler, useClass: IonicErrorHandler }]\n})\nexport class AppModule { }\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.module.ts","/**\n * @fileoverview This file was generated by the Angular template compiler. Do not edit.\n *\n * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes}\n * tslint:disable\n */ \nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"./app.module\";\nimport * as i2 from \"ionic-angular/components/app/app-root\";\nimport * as i3 from \"../../node_modules/ionic-angular/components/action-sheet/action-sheet-component.ngfactory\";\nimport * as i4 from \"../../node_modules/ionic-angular/components/alert/alert-component.ngfactory\";\nimport * as i5 from \"../../node_modules/ionic-angular/components/app/app-root.ngfactory\";\nimport * as i6 from \"../../node_modules/ionic-angular/components/loading/loading-component.ngfactory\";\nimport * as i7 from \"../../node_modules/ionic-angular/components/modal/modal-component.ngfactory\";\nimport * as i8 from \"../../node_modules/ionic-angular/components/picker/picker-component.ngfactory\";\nimport * as i9 from \"../../node_modules/ionic-angular/components/popover/popover-component.ngfactory\";\nimport * as i10 from \"../../node_modules/ionic-angular/components/select/select-popover-component.ngfactory\";\nimport * as i11 from \"../../node_modules/ionic-angular/components/toast/toast-component.ngfactory\";\nimport * as i12 from \"./app.component.ngfactory\";\nimport * as i13 from \"../pages/home/home.ngfactory\";\nimport * as i14 from \"../pages/dynamic-steps/dynamic.page.ngfactory\";\nimport * as i15 from \"@angular/common\";\nimport * as i16 from \"@angular/platform-browser\";\nimport * as i17 from \"ionic-angular/gestures/gesture-config\";\nimport * as i18 from \"@angular/animations/browser\";\nimport * as i19 from \"@angular/platform-browser/animations\";\nimport * as i20 from \"@angular/http\";\nimport * as i21 from \"@angular/animations\";\nimport * as i22 from \"@angular/forms\";\nimport * as i23 from \"ionic-angular/components/action-sheet/action-sheet-controller\";\nimport * as i24 from \"ionic-angular/components/app/app\";\nimport * as i25 from \"ionic-angular/config/config\";\nimport * as i26 from \"ionic-angular/components/alert/alert-controller\";\nimport * as i27 from \"ionic-angular/util/events\";\nimport * as i28 from \"ionic-angular/util/form\";\nimport * as i29 from \"ionic-angular/tap-click/haptic\";\nimport * as i30 from \"ionic-angular/platform/platform\";\nimport * as i31 from \"ionic-angular/platform/keyboard\";\nimport * as i32 from \"ionic-angular/platform/dom-controller\";\nimport * as i33 from \"ionic-angular/components/loading/loading-controller\";\nimport * as i34 from \"ionic-angular/module\";\nimport * as i35 from \"ionic-angular/navigation/url-serializer\";\nimport * as i36 from \"ionic-angular/navigation/deep-linker\";\nimport * as i37 from \"ionic-angular/util/module-loader\";\nimport * as i38 from \"ionic-angular/components/modal/modal-controller\";\nimport * as i39 from \"ionic-angular/components/picker/picker-controller\";\nimport * as i40 from \"ionic-angular/components/popover/popover-controller\";\nimport * as i41 from \"ionic-angular/tap-click/tap-click\";\nimport * as i42 from \"ionic-angular/gestures/gesture-controller\";\nimport * as i43 from \"ionic-angular/components/toast/toast-controller\";\nimport * as i44 from \"ionic-angular/transitions/transition-controller\";\nimport * as i45 from \"@ionic-native/status-bar/index\";\nimport * as i46 from \"@ionic-native/splash-screen/index\";\nimport * as i47 from \"ionic-angular/util/ionic-error-handler\";\nimport * as i48 from \"ionic-angular/platform/platform-registry\";\nimport * as i49 from \"ionic-angular/components/app/menu-controller\";\nimport * as i50 from \"ionic-angular/util/ng-module-loader\";\nimport * as i51 from \"ionic-angular/config/mode-registry\";\nimport * as i52 from \"./app.component\";\nvar AppModuleNgFactory = i0.ɵcmf(i1.AppModule, [i2.IonicApp], function (_l) { return i0.ɵmod([i0.ɵmpd(512, i0.ComponentFactoryResolver, i0.ɵCodegenComponentFactoryResolver, [[8, [i3.ActionSheetCmpNgFactory, i4.AlertCmpNgFactory, i5.IonicAppNgFactory, i6.LoadingCmpNgFactory, i7.ModalCmpNgFactory, i8.PickerCmpNgFactory, i9.PopoverCmpNgFactory, i10.SelectPopoverNgFactory, i11.ToastCmpNgFactory, i12.MyAppNgFactory, i13.HomePageNgFactory, i14.DynamicPageNgFactory]], [3, i0.ComponentFactoryResolver], i0.NgModuleRef]), i0.ɵmpd(5120, i0.LOCALE_ID, i0.ɵq, [[3, i0.LOCALE_ID]]), i0.ɵmpd(4608, i15.NgLocalization, i15.NgLocaleLocalization, [i0.LOCALE_ID, [2, i15.ɵa]]), i0.ɵmpd(5120, i0.APP_ID, i0.ɵi, []), i0.ɵmpd(5120, i0.IterableDiffers, i0.ɵn, []), i0.ɵmpd(5120, i0.KeyValueDiffers, i0.ɵo, []), i0.ɵmpd(4608, i16.DomSanitizer, i16.ɵe, [i15.DOCUMENT]), i0.ɵmpd(6144, i0.Sanitizer, null, [i16.DomSanitizer]), i0.ɵmpd(4608, i16.HAMMER_GESTURE_CONFIG, i17.IonicGestureConfig, []), i0.ɵmpd(5120, i16.EVENT_MANAGER_PLUGINS, function (p0_0, p0_1, p1_0, p2_0, p2_1) { return [new i16.ɵDomEventsPlugin(p0_0, p0_1), new i16.ɵKeyEventsPlugin(p1_0), new i16.ɵHammerGesturesPlugin(p2_0, p2_1)]; }, [i15.DOCUMENT, i0.NgZone, i15.DOCUMENT, i15.DOCUMENT, i16.HAMMER_GESTURE_CONFIG]), i0.ɵmpd(4608, i16.EventManager, i16.EventManager, [i16.EVENT_MANAGER_PLUGINS, i0.NgZone]), i0.ɵmpd(135680, i16.ɵDomSharedStylesHost, i16.ɵDomSharedStylesHost, [i15.DOCUMENT]), i0.ɵmpd(4608, i16.ɵDomRendererFactory2, i16.ɵDomRendererFactory2, [i16.EventManager, i16.ɵDomSharedStylesHost]), i0.ɵmpd(5120, i18.AnimationDriver, i19.ɵc, []), i0.ɵmpd(5120, i18.ɵAnimationStyleNormalizer, i19.ɵd, []), i0.ɵmpd(4608, i18.ɵAnimationEngine, i19.ɵb, [i18.AnimationDriver, i18.ɵAnimationStyleNormalizer]), i0.ɵmpd(5120, i0.RendererFactory2, i19.ɵe, [i16.ɵDomRendererFactory2, i18.ɵAnimationEngine, i0.NgZone]), i0.ɵmpd(6144, i16.ɵSharedStylesHost, null, [i16.ɵDomSharedStylesHost]), i0.ɵmpd(4608, i0.Testability, i0.Testability, [i0.NgZone]), i0.ɵmpd(4608, i16.Meta, i16.Meta, [i15.DOCUMENT]), i0.ɵmpd(4608, i16.Title, i16.Title, [i15.DOCUMENT]), i0.ɵmpd(4608, i20.BrowserXhr, i20.BrowserXhr, []), i0.ɵmpd(4608, i20.ResponseOptions, i20.BaseResponseOptions, []), i0.ɵmpd(5120, i20.XSRFStrategy, i20.ɵa, []), i0.ɵmpd(4608, i20.XHRBackend, i20.XHRBackend, [i20.BrowserXhr, i20.ResponseOptions, i20.XSRFStrategy]), i0.ɵmpd(4608, i20.RequestOptions, i20.BaseRequestOptions, []), i0.ɵmpd(5120, i20.Http, i20.ɵb, [i20.XHRBackend, i20.RequestOptions]), i0.ɵmpd(4608, i21.AnimationBuilder, i19.ɵBrowserAnimationBuilder, [i0.RendererFactory2, i16.DOCUMENT]), i0.ɵmpd(4608, i22.ɵi, i22.ɵi, []), i0.ɵmpd(4608, i22.FormBuilder, i22.FormBuilder, []), i0.ɵmpd(4608, i23.ActionSheetController, i23.ActionSheetController, [i24.App, i25.Config]), i0.ɵmpd(4608, i26.AlertController, i26.AlertController, [i24.App, i25.Config]), i0.ɵmpd(4608, i27.Events, i27.Events, []), i0.ɵmpd(4608, i28.Form, i28.Form, []), i0.ɵmpd(4608, i29.Haptic, i29.Haptic, [i30.Platform]), i0.ɵmpd(4608, i31.Keyboard, i31.Keyboard, [i25.Config, i30.Platform, i0.NgZone, i32.DomController]), i0.ɵmpd(4608, i33.LoadingController, i33.LoadingController, [i24.App, i25.Config]), i0.ɵmpd(5120, i15.LocationStrategy, i34.provideLocationStrategy, [i15.PlatformLocation, [2, i15.APP_BASE_HREF], i25.Config]), i0.ɵmpd(4608, i15.Location, i15.Location, [i15.LocationStrategy]), i0.ɵmpd(5120, i35.UrlSerializer, i35.setupUrlSerializer, [i24.App, i35.DeepLinkConfigToken]), i0.ɵmpd(5120, i36.DeepLinker, i36.setupDeepLinker, [i24.App, i35.UrlSerializer, i15.Location, i37.ModuleLoader, i0.ComponentFactoryResolver]), i0.ɵmpd(4608, i38.ModalController, i38.ModalController, [i24.App, i25.Config, i36.DeepLinker]), i0.ɵmpd(4608, i39.PickerController, i39.PickerController, [i24.App, i25.Config]), i0.ɵmpd(4608, i40.PopoverController, i40.PopoverController, [i24.App, i25.Config, i36.DeepLinker]), i0.ɵmpd(4608, i41.TapClick, i41.TapClick, [i25.Config, i30.Platform, i32.DomController, i24.App, i42.GestureController]), i0.ɵmpd(4608, i43.ToastController, i43.ToastController, [i24.App, i25.Config]), i0.ɵmpd(4608, i44.TransitionController, i44.TransitionController, [i30.Platform, i25.Config]), i0.ɵmpd(4608, i45.StatusBar, i45.StatusBar, []), i0.ɵmpd(4608, i46.SplashScreen, i46.SplashScreen, []), i0.ɵmpd(512, i15.CommonModule, i15.CommonModule, []), i0.ɵmpd(512, i0.ErrorHandler, i47.IonicErrorHandler, []), i0.ɵmpd(256, i25.ConfigToken, {}, []), i0.ɵmpd(1024, i48.PlatformConfigToken, i48.providePlatformConfigs, []), i0.ɵmpd(1024, i30.Platform, i30.setupPlatform, [i16.DOCUMENT, i48.PlatformConfigToken, i0.NgZone]), i0.ɵmpd(1024, i25.Config, i25.setupConfig, [i25.ConfigToken, i30.Platform]), i0.ɵmpd(512, i32.DomController, i32.DomController, [i30.Platform]), i0.ɵmpd(512, i49.MenuController, i49.MenuController, []), i0.ɵmpd(512, i24.App, i24.App, [i25.Config, i30.Platform, [2, i49.MenuController]]), i0.ɵmpd(512, i42.GestureController, i42.GestureController, [i24.App]), i0.ɵmpd(256, i35.DeepLinkConfigToken, { links: [] }, []), i0.ɵmpd(512, i0.Compiler, i0.Compiler, []), i0.ɵmpd(512, i50.NgModuleLoader, i50.NgModuleLoader, [i0.Compiler]), i0.ɵmpd(1024, i37.ModuleLoader, i37.provideModuleLoader, [i50.NgModuleLoader, i0.Injector]), i0.ɵmpd(1024, i0.APP_INITIALIZER, function (p0_0, p1_0, p2_0, p2_1, p3_0, p3_1, p3_2, p3_3, p3_4, p4_0, p4_1, p4_2, p4_3) { return [i16.ɵh(p0_0), i51.registerModeConfigs(p1_0), i27.setupProvideEvents(p2_0, p2_1), i41.setupTapClick(p3_0, p3_1, p3_2, p3_3, p3_4), i37.setupPreloading(p4_0, p4_1, p4_2, p4_3)]; }, [[2, i0.NgProbeToken], i25.Config, i30.Platform, i32.DomController, i25.Config, i30.Platform, i32.DomController, i24.App, i42.GestureController, i25.Config, i35.DeepLinkConfigToken, i37.ModuleLoader, i0.NgZone]), i0.ɵmpd(512, i0.ApplicationInitStatus, i0.ApplicationInitStatus, [[2, i0.APP_INITIALIZER]]), i0.ɵmpd(131584, i0.ApplicationRef, i0.ApplicationRef, [i0.NgZone, i0.ɵConsole, i0.Injector, i0.ErrorHandler, i0.ComponentFactoryResolver, i0.ApplicationInitStatus]), i0.ɵmpd(512, i0.ApplicationModule, i0.ApplicationModule, [i0.ApplicationRef]), i0.ɵmpd(512, i16.BrowserModule, i16.BrowserModule, [[3, i16.BrowserModule]]), i0.ɵmpd(512, i20.HttpModule, i20.HttpModule, []), i0.ɵmpd(512, i19.BrowserAnimationsModule, i19.BrowserAnimationsModule, []), i0.ɵmpd(512, i22.ɵba, i22.ɵba, []), i0.ɵmpd(512, i22.FormsModule, i22.FormsModule, []), i0.ɵmpd(512, i22.ReactiveFormsModule, i22.ReactiveFormsModule, []), i0.ɵmpd(512, i34.IonicModule, i34.IonicModule, []), i0.ɵmpd(512, i1.AppModule, i1.AppModule, []), i0.ɵmpd(256, i2.AppRootToken, i52.MyApp, []), i0.ɵmpd(256, i15.APP_BASE_HREF, \"/\", [])]); });\nexport { AppModuleNgFactory as AppModuleNgFactory };\n//# sourceMappingURL=app.module.ngfactory.js.map\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.module.ngfactory.js.pre-build-optimizer.js"]} -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Darwin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Ionic (3.9.2) Simple Conditional Wizard 2 | 3 | Simple component to handle conditionals steps wizard in ionic 3. 4 | 5 | ## Getting Started 6 | 7 | * Clone this repository. 8 | * Run npm install from the project root. 9 | * Install the ionic CLI (npm install -g ionic) 10 | * Run ionic serve in a terminal from the project root. 11 | 12 | 13 | ## Using this component in your projects 14 | 15 | * Copy and paste ion-simple-wizard component files from pages folder. 16 | * Import it and declare the 'IonSimpleWizard' and 'IonSimpleWizardStep' component and 'BrowserAnimationsModule' module in the app.module.ts file: 17 | ``` 18 | ... 19 | import {IonSimpleWizard} from '../pages/ion-simple-wizard/ion-simple-wizard.component'; 20 | import {IonSimpleWizardStep} from '../pages/ion-simple-wizard/ion-simple-wizard.step.component'; 21 | import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; 22 | 23 | @NgModule({ 24 | declarations: [ 25 | MyApp, 26 | HomePage, 27 | IonSimpleWizard, 28 | IonSimpleWizardStep 29 | ], 30 | imports: [ 31 | BrowserAnimationsModule 32 | ] 33 | ... 34 | ``` 35 | * Now you can use the wizard like this: 36 | ``` 37 | 38 | 39 | Step 1 content 40 | 41 | 42 | Step 2 content 43 | 44 | ... 45 | 46 | Step N content 47 | 48 | 49 | 50 | 51 | ``` 52 | ## Wizard Options 53 | * [(step)] : step counter of the wizard, set it to 1 by default 54 | * [showSteps] : true if you want to show the steps counter in the wizard 55 | * (finish): The event will be fire when the wizard is finish 56 | * [finishIcon]: ion-icon name for the last step, see the names here: Ionicons 57 | * [(stepCondition)]: Condition of the next step of the wizard, you can change it in every step. 58 | * Example of initial settings: 59 | ``` 60 | this.step = 1;//The value of the first step, always 1 61 | this.stepCondition = false;//Set to true if you don't need condition in every step 62 | this.stepDefaultCondition = this.stepCondition;//Save the default condition for every step 63 | 64 | ``` 65 | ## Animations 66 | * Checkout the ion-simple-wizard-animations.ts file to see the availables step and buttons animations. 67 | * To change the wizard navigation buttons animations go to the file 'ion-simple-wizard.component.ts' and modify the value in the @Component: 68 | ``` 69 | @Component({ 70 | selector: 'ion-simple-wizard', 71 | templateUrl: 'ion-simple-wizard.component.html', 72 | animations: WizardAnimations.btnRotate//Change 'btnRotate' for any other animation with the prefix btn 73 | }) 74 | 75 | ``` 76 | * To change the step animation go to the file 'ion-simple-wizard.step.component.ts' and modify the value in the @Component: 77 | ``` 78 | @Component({ 79 | selector: 'ion-wizard-step', 80 | host: { 81 | '[@WizardAnimations]': 'isCurrent ?"enter":"leave"' 82 | }, 83 | template: ` 84 | 85 | `, 86 | animations: WizardAnimations.zoom//Change 'zoom' for any other animation 87 | }) 88 | 89 | ``` 90 | ## Events 91 | You can subcribe to the following ionic 2 Events: 92 | * 'step:changed' 93 | ``` 94 | //You can subscribe to the Event 'step:changed' to handle the current step 95 | this.events.subscribe('step:changed', step => { 96 | //Handle the current step if you need 97 | this.currentStep = step[0]; 98 | }); 99 | ``` 100 | * 'step:next' 101 | ``` 102 | this.events.subscribe('step:next', () => { 103 | //Do something if next 104 | console.log('Next pressed: ',this.currentStep); 105 | }); 106 | ``` 107 | * 'step:back' 108 | ``` 109 | this.events.subscribe('step:back', () => { 110 | //Do something if back 111 | console.log('Back pressed: ',this.currentStep); 112 | }); 113 | ``` 114 | ## Ionic Info 115 | ``` 116 | 117 | cli packages: 118 | 119 | @ionic/cli-utils : 1.19.2 120 | ionic (Ionic CLI) : 3.20.0 121 | 122 | global packages: 123 | 124 | cordova (Cordova CLI) : 7.0.1 125 | 126 | local packages: 127 | 128 | @ionic/app-scripts : 3.1.8 129 | Cordova Platforms : android 6.1.0 ios 4.1.1 130 | Ionic Framework : ionic-angular 3.9.2 131 | 132 | System: 133 | 134 | ios-deploy : 1.9.2 135 | ios-sim : 5.0.3 136 | Node : v7.6.0 137 | npm : 4.1.2 138 | OS : macOS High Sierra 139 | Xcode : Xcode 9.2 Build version 9C40b 140 | 141 | Environment Variables: 142 | 143 | ANDROID_HOME : /usr/local/opt/android-sdk 144 | 145 | Misc: 146 | 147 | backend : legacy 148 | 149 | ``` 150 | 151 | ## Platforms 152 | * Android (Tested in 6.0) 153 | * iOS (Tested in 10.2) 154 | 155 | ## Preview 156 | ![](./captures/preview.gif) 157 | 158 | ## TO DO 159 | - [ ] Test in other platforms. 160 | - [ ] Improve the animations or steps transitions. 161 | - [ ] Improve the wizard hide when the keyboard is open. 162 | - [ ] Others improvements or new features are welcome :) 163 | 164 | ## Credits 165 | * Thanks to @nickjohnson-dev for this awesome gist: 166 | Angular 2 simple wizard 167 | -------------------------------------------------------------------------------- /captures/preview.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/captures/preview.gif -------------------------------------------------------------------------------- /config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ionic 2 Simple Wizard 4 | Simple demo with the component Ionic 2 Simple Conditional Wizard 5 | Darwin Medina 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | -------------------------------------------------------------------------------- /ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ionic-2-simple-wizard", 3 | "app_id": "32473d13", 4 | "type": "ionic-angular", 5 | "integrations": { 6 | "cordova": {} 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ionic-hello-world", 3 | "author": "Ionic Framework", 4 | "homepage": "http://ionicframework.com/", 5 | "private": true, 6 | "scripts": { 7 | "clean": "ionic-app-scripts clean", 8 | "build": "ionic-app-scripts build", 9 | "lint": "ionic-app-scripts lint", 10 | "ionic:build": "ionic-app-scripts build", 11 | "ionic:serve": "ionic-app-scripts serve", 12 | "snyk-protect": "snyk protect", 13 | "prepare": "npm run snyk-protect" 14 | }, 15 | "dependencies": { 16 | "@angular/animations": "5.2.9", 17 | "@angular/common": "5.2.9", 18 | "@angular/compiler": "5.2.9", 19 | "@angular/compiler-cli": "5.2.9", 20 | "@angular/core": "5.2.9", 21 | "@angular/forms": "5.2.9", 22 | "@angular/http": "5.2.9", 23 | "@angular/platform-browser": "5.2.9", 24 | "@angular/platform-browser-dynamic": "5.2.9", 25 | "@ionic-native/core": "4.6.0", 26 | "@ionic-native/keyboard": "4.6.0", 27 | "@ionic-native/splash-screen": "4.6.0", 28 | "@ionic-native/status-bar": "4.6.0", 29 | "@ionic/storage": "2.1.3", 30 | "ionic-angular": "3.9.2", 31 | "ionicons": "3.0.0", 32 | "rxjs": "5.5.8", 33 | "sw-toolbox": "3.6.0", 34 | "zone.js": "0.8.20", 35 | "cordova-android": "~6.1.2", 36 | "ionic-plugin-keyboard": "~2.2.1", 37 | "snyk": "^1.88.0" 38 | }, 39 | "devDependencies": { 40 | "@ionic/app-scripts": "3.1.8", 41 | "ionic": "3.20.0", 42 | "typescript": "~2.6.2" 43 | }, 44 | "cordovaPlugins": [ 45 | "cordova-plugin-whitelist", 46 | "cordova-plugin-console", 47 | "cordova-plugin-statusbar", 48 | "cordova-plugin-device", 49 | "cordova-plugin-splashscreen", 50 | "ionic-plugin-keyboard" 51 | ], 52 | "cordovaPlatforms": [ 53 | "ios", 54 | { 55 | "platform": "ios", 56 | "version": "", 57 | "locator": "ios" 58 | } 59 | ], 60 | "description": "ionic-2-simple-wizard: An Ionic project", 61 | "cordova": { 62 | "platforms": [ 63 | "android" 64 | ], 65 | "plugins": { 66 | "ionic-plugin-keyboard": {} 67 | } 68 | }, 69 | "snyk": true 70 | } -------------------------------------------------------------------------------- /res/drawable-mdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/res/drawable-mdpi/screen.png -------------------------------------------------------------------------------- /res/mipmap-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/res/mipmap-mdpi/icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/icon.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-40@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-83.5@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-small.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-small@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon-small@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/resources/splash.png -------------------------------------------------------------------------------- /src/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { Platform } from 'ionic-angular'; 3 | import { StatusBar } from '@ionic-native/status-bar'; 4 | import { SplashScreen } from '@ionic-native/splash-screen'; 5 | 6 | import { HomePage } from '../pages/home/home'; 7 | 8 | 9 | @Component({ 10 | templateUrl: 'app.html' 11 | }) 12 | export class MyApp { 13 | rootPage = HomePage; 14 | 15 | constructor(platform: Platform, 16 | public statusBar: StatusBar, 17 | public splashScreen: SplashScreen) { 18 | platform.ready().then(() => { 19 | // Okay, so the platform is ready and our plugins are available. 20 | // Here you can do any higher level native things you might need. 21 | 22 | this.statusBar.styleDefault(); 23 | this.statusBar.backgroundColorByHexString('#0095d8'); 24 | this.splashScreen.hide(); 25 | }); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/app/app.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/app/app.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule, ErrorHandler } from '@angular/core'; 2 | import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular'; 3 | import { MyApp } from './app.component'; 4 | import { BrowserModule } from '@angular//platform-browser'; 5 | import { HttpModule } from '@angular/http'; 6 | import { StatusBar } from '@ionic-native/status-bar'; 7 | import { SplashScreen } from '@ionic-native/splash-screen'; 8 | import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; 9 | 10 | import { HomePage } from '../pages/home/home'; 11 | import { DynamicPage } from '../pages/dynamic-steps/dynamic.page'; 12 | import { IonSimpleWizard } from '../pages/ion-simple-wizard/ion-simple-wizard.component'; 13 | import { IonSimpleWizardStep } from '../pages/ion-simple-wizard/ion-simple-wizard.step.component'; 14 | 15 | @NgModule({ 16 | declarations: [ 17 | MyApp, 18 | HomePage, 19 | DynamicPage, 20 | IonSimpleWizard, 21 | IonSimpleWizardStep 22 | ], 23 | imports: [ 24 | BrowserModule, 25 | HttpModule, 26 | BrowserAnimationsModule, 27 | IonicModule.forRoot(MyApp) 28 | ], 29 | bootstrap: [IonicApp], 30 | entryComponents: [ 31 | MyApp, 32 | HomePage, DynamicPage 33 | 34 | ], 35 | providers: [StatusBar, 36 | SplashScreen,{ provide: ErrorHandler, useClass: IonicErrorHandler }] 37 | }) 38 | export class AppModule { } 39 | -------------------------------------------------------------------------------- /src/app/app.scss: -------------------------------------------------------------------------------- 1 | // http://ionicframework.com/docs/v2/theming/ 2 | 3 | 4 | // App Global Sass 5 | // -------------------------------------------------- 6 | // Put style rules here that you want to apply globally. These 7 | // styles are for the entire app and not just one component. 8 | // Additionally, this file can be also used as an entry point 9 | // to import other Sass files to be included in the output CSS. 10 | // 11 | // Shared Sass variables, which can be used to adjust Ionic's 12 | // default Sass variables, belong in "theme/variables.scss". 13 | // 14 | // To declare rules for a specific mode, create a child rule 15 | // for the .md, .ios, or .wp mode classes. The mode class is 16 | // automatically applied to the element in the app. 17 | -------------------------------------------------------------------------------- /src/app/main.ts: -------------------------------------------------------------------------------- 1 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 2 | 3 | import { AppModule } from './app.module'; 4 | 5 | platformBrowserDynamic().bootstrapModule(AppModule); 6 | -------------------------------------------------------------------------------- /src/assets/icon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JoxieMedina/ionic2-simple-conditional-wizard/828fcd354a957396e44ea1158571bea92c90cb5a/src/assets/icon/favicon.ico -------------------------------------------------------------------------------- /src/declarations.d.ts: -------------------------------------------------------------------------------- 1 | /* 2 | Declaration files are how the Typescript compiler knows about the type information(or shape) of an object. 3 | They're what make intellisense work and make Typescript know all about your code. 4 | 5 | A wildcard module is declared below to allow third party libraries to be used in an app even if they don't 6 | provide their own type declarations. 7 | 8 | To learn more about using third party libraries in an Ionic app, check out the docs here: 9 | http://ionicframework.com/docs/v2/resources/third-party-libs/ 10 | 11 | For more info on type definition files, check out the Typescript docs here: 12 | https://www.typescriptlang.org/docs/handbook/declaration-files/introduction.html 13 | */ 14 | declare module '*'; -------------------------------------------------------------------------------- /src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Ionic App 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /src/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ionic", 3 | "short_name": "Ionic", 4 | "start_url": "index.html", 5 | "display": "standalone", 6 | "icons": [{ 7 | "src": "assets/imgs/logo.png", 8 | "sizes": "512x512", 9 | "type": "image/png" 10 | }], 11 | "background_color": "#4e8ef7", 12 | "theme_color": "#4e8ef7" 13 | } -------------------------------------------------------------------------------- /src/pages/dynamic-steps/dynamic.page.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Dynamic Example 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | {{step.title}} 15 | 16 | 17 | {{step.content}} 18 | 19 | Next Condition 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/pages/dynamic-steps/dynamic.page.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { NavController, AlertController, Events } from 'ionic-angular'; 3 | 4 | @Component({ 5 | selector: 'dynamic-home', 6 | templateUrl: 'dynamic.page.html', 7 | 8 | }) 9 | export class DynamicPage { 10 | step: any; 11 | stepCondition: any; 12 | stepDefaultCondition: any; 13 | currentStep: any; 14 | stepsArray: Array = []; 15 | constructor(public navCtrl: NavController, public alertCtrl: AlertController, public evts: Events) { 16 | /** 17 | * Step Wizard Settings 18 | */ 19 | this.step = 1;//The value of the first step, always 1 20 | this.stepCondition = false;//For each step the condition is set to this value, Set to true if you don't need condition in every step 21 | this.stepDefaultCondition = this.stepCondition;//Save the default condition for each step 22 | //Let's create some dummy data for this case 23 | this.stepsArray = 24 | [ 25 | { 26 | title: 'Step 1', 27 | content: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit.' 28 | }, 29 | { 30 | title: 'Step 2', 31 | content: 'At dolorem sed, porro amet corrupti consequatur dolore ea sequi similique maxime!' 32 | }, 33 | { 34 | title: 'Step 3', 35 | content: 'Tempora eveniet nostrum asperiores vero facere voluptatum adipisci minus magnam.' 36 | } 37 | ]; 38 | //You can subscribe to the Event 'step:changed' to handle the current step 39 | this.evts.subscribe('step:changed', step => { 40 | //Handle the current step if you need 41 | this.currentStep = step; 42 | //Set the step condition to the default value 43 | this.stepCondition = this.stepDefaultCondition; 44 | }); 45 | this.evts.subscribe('step:next', () => { 46 | //Do something if next 47 | console.log('Next pressed: ', this.currentStep); 48 | }); 49 | this.evts.subscribe('step:back', () => { 50 | //Do something if back 51 | console.log('Back pressed: ', this.currentStep); 52 | }); 53 | } 54 | /** 55 | * Demo functions 56 | */ 57 | onFinish() { 58 | this.alertCtrl.create({ 59 | message: 'Wizard Finished!!', 60 | title: 'Congrats!!', 61 | buttons: [{ 62 | text: 'Ok' 63 | }] 64 | }).present(); 65 | } 66 | 67 | toggleCondition(_condition) { 68 | this.stepCondition = _condition.checked; 69 | } 70 | 71 | 72 | 73 | } 74 | -------------------------------------------------------------------------------- /src/pages/home/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Ion Simple Wizard 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | Ionic 2 Simple Conditional Wizard 17 | 18 | 19 |

20 | Simple component to handle conditionals steps wizard in ionic 2. This is the first step. 21 |

22 | 23 |
24 |
25 |
26 | 27 | 28 | 29 | 30 | 31 | Conditions 32 | 33 |

34 | Manage the next step condition of the wizard however you want 35 | 36 | 37 | 38 | 39 | 40 |

41 |
42 |
43 |
44 | 45 | 46 | 47 | 48 | 49 | Final Step 50 | 51 |

52 | You can change the step animation , the button animation, show or hide the step counter and more.
Please go to the 53 | documentation for more details and options.
Like it to finish the wizard. 55 |

56 | 60 |
61 |
62 |
63 |
64 | 65 |
-------------------------------------------------------------------------------- /src/pages/home/home.scss: -------------------------------------------------------------------------------- 1 | page-home { 2 | ion-card { 3 | position: relative; 4 | text-align: center; 5 | } 6 | 7 | ion-wizard-step { 8 | width: 100%; 9 | } 10 | 11 | .card-wizard-icon { 12 | font-size: 10em; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/pages/home/home.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { NavController, AlertController, Events } from 'ionic-angular'; 3 | import { DynamicPage } from '../dynamic-steps/dynamic.page'; 4 | 5 | @Component({ 6 | selector: 'page-home', 7 | templateUrl: 'home.html', 8 | 9 | }) 10 | export class HomePage { 11 | step: any; 12 | stepCondition: any; 13 | stepDefaultCondition: any; 14 | currentStep: any; 15 | 16 | constructor(public navCtrl: NavController, public alertCtrl: AlertController, public evts: Events) { 17 | /** 18 | * Step Wizard Settings 19 | */ 20 | this.step = 1;//The value of the first step, always 1 21 | this.stepCondition = false;//Set to true if you don't need condition in every step 22 | this.stepDefaultCondition = this.stepCondition;//Save the default condition for every step 23 | //You can subscribe to the Event 'step:changed' to handle the current step 24 | this.evts.subscribe('step:changed', step => { 25 | //Handle the current step if you need 26 | this.currentStep = step; 27 | //Set the step condition to the default value 28 | this.stepCondition = this.stepDefaultCondition; 29 | }); 30 | this.evts.subscribe('step:next', () => { 31 | //Do something if next 32 | console.log('Next pressed: ', this.currentStep); 33 | }); 34 | this.evts.subscribe('step:back', () => { 35 | //Do something if back 36 | console.log('Back pressed: ', this.currentStep); 37 | }); 38 | } 39 | /** 40 | * Demo functions 41 | */ 42 | onFinish() { 43 | this.alertCtrl.create({ 44 | message: 'Wizard Finished!!', 45 | title: 'Congrats!!', 46 | buttons: [{ 47 | text: 'Ok' 48 | }] 49 | }).present(); 50 | } 51 | 52 | toggle() { 53 | this.stepCondition = !this.stepCondition; 54 | } 55 | getIconStep2() { 56 | return this.stepCondition ? 'unlock' : 'lock'; 57 | } 58 | 59 | getIconStep3() { 60 | return this.stepCondition ? 'happy' : 'sad'; 61 | } 62 | getLikeIcon() { 63 | return this.stepCondition ? 'thumbs-down' : 'thumbs-up'; 64 | } 65 | goToExample2() { 66 | this.navCtrl.push(DynamicPage); 67 | } 68 | 69 | textChange(e) { 70 | if (e.target.value && e.target.value.trim() !== '') { 71 | this.stepCondition = true; 72 | } else { 73 | this.stepCondition = false; 74 | } 75 | } 76 | 77 | } 78 | -------------------------------------------------------------------------------- /src/pages/ion-simple-wizard/ion-simple-wizard-animations.ts: -------------------------------------------------------------------------------- 1 | import { trigger, state, animate, style, transition, keyframes } from '@angular/core'; 2 | 3 | export class WizardAnimations { 4 | 5 | //Buttons Animations 6 | static btnZoom = [ 7 | trigger('btnState', [ 8 | transition(':enter', [ 9 | style({ opacity: 0, transform: 'scale(0)' }), 10 | animate('400ms ease-in', style({ opacity: 1, transform: 'scale(1)' })) 11 | ]), 12 | transition(':leave', [ 13 | animate('400ms ease-out', style({ opacity: 0, transform: 'scale(0)' })) 14 | ]) 15 | ]) 16 | ]; 17 | static btn_none = [ 18 | trigger('btnState', [ 19 | state('enter', style({ position: 'relative', top: 0 ,width:'100%'})), 20 | state('leave', style({ display: 'none', position: 'relative', top: 0 })) 21 | 22 | ]) 23 | ]; 24 | static btnflipY = [ 25 | trigger('btnState', [ 26 | transition(':enter', [ 27 | animate('400ms 200ms ease-in', 28 | keyframes([ 29 | style({ transform: 'perspective(100px) rotate3d(0, 1, 0, 90deg)', opacity: '0', offset: 0 }), 30 | style({ transform: 'perspective(100px) rotate3d(0, 1, 0, -20deg)', offset: 0.4 }), 31 | style({ transform: 'perspective(100px) rotate3d(0, 1, 0, 10deg)', opacity: '1', offset: 0.6 }), 32 | style({ transform: 'perspective(100px) rotate3d(0, 1, 0, -5deg)', opacity: '1', offset: 0.8 }), 33 | style({ transform: 'perspective(100px)', opacity: '1', offset: 1 }) 34 | ])) 35 | ]), transition(':leave', [ 36 | animate('100ms 400ms ease-in', 37 | keyframes([ 38 | style({ transform: 'perspective(100px)', opacity: '1', offset: 0 }), 39 | style({ transform: 'perspective(100px) rotate3d(0, 1, 0, -20deg)', opacity: '1', offset: 0.3 }), 40 | style({ transform: 'perspective(100px) rotate3d(0, 1, 0, 90deg)', opacity: '0', offset: 1 }) 41 | ])) 42 | ]) 43 | ]) 44 | ]; 45 | 46 | static btnRotate = [ 47 | trigger('btnState', [ 48 | transition(':enter', [ 49 | animate('400ms 200ms ease-in', 50 | keyframes([ 51 | style({ transform: 'rotate3d(0, 0, 1, -200deg)', opacity: '0', transformOrigin: 'center', offset: 0 }), 52 | style({ transform: 'none', opacity: '1', transformOrigin: 'center', offset: 1 }) 53 | ])) 54 | ]), transition(':leave', [ 55 | animate(400, 56 | keyframes([ 57 | style({ transform: 'none', opacity: '1', transformOrigin: 'center', offset: 0 }), 58 | style({ transform: 'rotate3d(0, 0, 1, 200deg)', opacity: '0', transformOrigin: 'center', offset: 1 }) 59 | ])) 60 | ]) 61 | ]) 62 | ]; 63 | 64 | 65 | //Steps Animations 66 | static carruselRight = [ 67 | trigger('WizardAnimations', [ 68 | state('enter', style({ position: 'absolute', top: 0,width:'100%' })), 69 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 70 | transition('*=>enter', [ 71 | style({ visibility: 'visible', opacity: 0, transform: 'translateX(-100%)' }), 72 | animate('500ms ease-in-out', style({ opacity: 1, transform: 'translateX(0%)' })) 73 | ]), 74 | transition('*=>leave', [ 75 | style({ transform: 'translateX(0%)' }), 76 | animate('500ms ease-in-out', style({ opacity: 0, transform: 'translateX(100%)' })) 77 | ]) 78 | ]) 79 | ]; 80 | static zoom = [ 81 | trigger('WizardAnimations', [ 82 | state('enter', style({ position: 'absolute', top: 0 ,width:'100%'})), 83 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 84 | transition('*=>enter', [ 85 | style({visibility: 'visible', opacity: 0, transform: 'scale(0)' }), 86 | animate('300ms ease-in', style({ opacity: 1, transform: 'scale(1)' ,top: 0 })) 87 | ]), 88 | transition('*=>leave', [ 89 | animate('300ms ease-out', style({ opacity: 0, transform: 'scale(0)',top: 0 })) 90 | ]) 91 | ]) 92 | ]; 93 | static none = [ 94 | trigger('WizardAnimations', [ 95 | state('enter', style({ position: 'relative', top: 0 ,width:'100%'})), 96 | state('leave', style({ display: 'none', position: 'relative', top: 0 })) 97 | 98 | ]) 99 | ]; 100 | static carruselLeft = [ 101 | trigger('WizardAnimations', [ 102 | state('enter', style({ position: 'absolute', top: 0,width:'100%' })), 103 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 104 | transition('*=>enter', [ 105 | style({ visibility: 'visible', opacity: 0, transform: 'translateX(100%)' }), 106 | animate('500ms ease-in-out', style({ opacity: 1, transform: 'translateX(0%)' })) 107 | ]), 108 | transition('*=>leave', [ 109 | style({ transform: 'translateX(0%)' }), 110 | animate('500ms ease-in-out', style({ opacity: 0, transform: 'translateX(-100%)' })) 111 | ]) 112 | ]) 113 | ]; 114 | static carruselBottom = [ 115 | trigger('WizardAnimations', [ 116 | state('enter', style({ position: 'absolute', top: 0 ,width:'100%'})), 117 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 118 | transition('*=>enter', [ 119 | style({ visibility: 'visible', opacity: 0, transform: 'translateY(-100%)' }), 120 | animate('500ms ease-in-out', style({ opacity: 1, transform: 'translateY(0%)' })) 121 | ]), 122 | transition('*=>leave', [ 123 | style({ transform: 'translateY(0%)' }), 124 | animate('500ms ease-in-out', style({ opacity: 0, transform: 'translateY(100%)' })) 125 | ]) 126 | ]) 127 | ]; 128 | static carruselTop = [ 129 | trigger('WizardAnimations', [ 130 | state('enter', style({ position: 'absolute', top: 0 ,width:'100%'})), 131 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 132 | transition('*=>enter', [ 133 | style({ visibility: 'visible', opacity: 0, transform: 'translateY(100%)' }), 134 | animate('500ms ease-in-out', style({ opacity: 1, transform: 'translateY(0%)' })) 135 | ]), 136 | transition('*=>leave', [ 137 | style({ transform: 'translateY(0%)' }), 138 | animate('500ms ease-in-out', style({ opacity: 0, transform: 'translateY(-100%)' })) 139 | ]) 140 | ]) 141 | ]; 142 | static flipY = [ 143 | trigger('WizardAnimations', [ 144 | state('enter', style({ position: 'absolute', top: 0 ,width:'100%'})), 145 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 146 | transition('*=>enter', [ 147 | style({ visibility: 'visible' }), 148 | animate('400ms ease-in', 149 | keyframes([ 150 | style({ transform: 'perspective(400px) rotate3d(0, 1, 0, 90deg)', opacity: '0', offset: 0 }), 151 | style({ transform: 'perspective(400px) rotate3d(0, 1, 0, -20deg)', offset: 0.4 }), 152 | style({ transform: 'perspective(400px) rotate3d(0, 1, 0, 10deg)', opacity: '0.5', offset: 0.6 }), 153 | style({ transform: 'perspective(400px) rotate3d(0, 1, 0, -5deg)', opacity: '1', offset: 0.8 }), 154 | style({ transform: 'perspective(400px)', opacity: '1', offset: 1 }) 155 | ])) 156 | ]), transition('*=>leave', [ 157 | style({ visibility: 'visible' }), 158 | animate('400ms ease-in-out', 159 | keyframes([ 160 | style({ transform: 'perspective(400px)', opacity: '1', offset: 0 }), 161 | style({ transform: 'perspective(400px) rotate3d(0, 1, 0, -20deg)', opacity: '0.5', offset: 0.3 }), 162 | style({ transform: 'perspective(400px) rotate3d(0, 1, 0, 90deg)', opacity: '0', offset: 1 }) 163 | ])) 164 | ]) 165 | ]) 166 | ]; 167 | static flipX = [ 168 | trigger('WizardAnimations', [ 169 | state('enter', style({ position: 'absolute', top: 0 ,width:'100%'})), 170 | state('leave', style({ visibility: 'hidden', position: 'absolute', top: 0 })), 171 | transition('*=>enter', [ 172 | style({ visibility: 'visible' }), 173 | animate('400ms 200ms ease-in', 174 | keyframes([ 175 | style({ transform: 'perspective(400px) rotate3d(1, 0, 0, 90deg)', opacity: '0', offset: 0 }), 176 | style({ transform: 'perspective(400px) rotate3d(1, 0, 0, -20deg)', offset: 0.4 }), 177 | style({ transform: 'perspective(400px) rotate3d(1, 0, 0, 10deg)', opacity: '0.5', offset: 0.6 }), 178 | style({ transform: 'perspective(400px) rotate3d(1, 0, 0, -5deg)', opacity: '1', offset: 0.8 }), 179 | style({ transform: 'perspective(400px)', opacity: '1', offset: 1 }) 180 | ])) 181 | ]), 182 | transition('*=>leave', [ 183 | style({ visibility: 'visible' }), 184 | animate('400ms 200ms ease-in', 185 | keyframes([ 186 | style({ transform: 'perspective(400px)', opacity: '1', offset: 0 }), 187 | style({ transform: 'perspective(400px) rotate3d(1, 0, 0, -20deg)', opacity: '0.5', offset: 0.3 }), 188 | style({ transform: 'perspective(400px) rotate3d(1, 0, 0, 90deg)', opacity: '0', offset: 1 }) 189 | ])) 190 | ]) 191 | ]) 192 | ]; 193 | 194 | } 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | -------------------------------------------------------------------------------- /src/pages/ion-simple-wizard/ion-simple-wizard.component.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 25 | -------------------------------------------------------------------------------- /src/pages/ion-simple-wizard/ion-simple-wizard.component.scss: -------------------------------------------------------------------------------- 1 | ion-simple-wizard { 2 | :host { 3 | display: flex; 4 | flex-direction: column; 5 | 6 | } 7 | .ion-wizard-footer { 8 | position: fixed; 9 | transform: translate3d(0, 0, 0); 10 | -webkit-transform: translate3d(0, 0, 0); 11 | bottom: 0; 12 | left: 0; 13 | z-index: 100; 14 | display: block; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/pages/ion-simple-wizard/ion-simple-wizard.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, Input, Output, EventEmitter } from '@angular/core'; 2 | /*import { Keyboard } from '@ionic-native/keyboard';*/ 3 | import { Events } from 'ionic-angular'; 4 | import { WizardAnimations } from './ion-simple-wizard-animations'; 5 | 6 | @Component({ 7 | selector: 'ion-simple-wizard', 8 | templateUrl: 'ion-simple-wizard.component.html', 9 | animations: WizardAnimations.btnRotate 10 | }) 11 | export class IonSimpleWizard { 12 | @Input() finishIcon = 'send';//Default 13 | @Input() showSteps: boolean=true;//Default 14 | @Input() step = 1;//Default 15 | @Output() finish = new EventEmitter(); 16 | @Output() stepChange = new EventEmitter(); 17 | public steps = 0;//Innitial 18 | public hideWizard = false;//Default 19 | @Input() stepCondition = true;//Default 20 | 21 | constructor(public evts: Events) { 22 | } 23 | 24 | ngOnInit() { 25 | /** 26 | * Hide the wizard buttons when the keyboard is open 27 | */ 28 | /*this.keyboard.onKeyboardShow().subscribe(() => { 29 | this.hideWizard = true; 30 | }); 31 | this.keyboard.onKeyboardHide().subscribe(() => { 32 | this.hideWizard = false; 33 | })*/ 34 | } 35 | /** 36 | * @return {number} New Steps 37 | */ 38 | public addStep() { 39 | const newSteps = this.steps + 1; 40 | this.steps = newSteps; 41 | return newSteps; 42 | } 43 | /** 44 | * @return {boolean} true if is the final step 45 | */ 46 | isOnFinalStep() { 47 | return this.step === this.steps; 48 | } 49 | /** 50 | * @return {boolean} the current step condition 51 | */ 52 | getCondition() { 53 | return this.stepCondition; 54 | } 55 | /** 56 | * @return {boolean} true if the the step is the first 57 | */ 58 | isOnFirstStep() { 59 | return this.step === 1; 60 | } 61 | /** 62 | * @method back button event and emit Event Called 'step:back' 63 | */ 64 | back() { 65 | this.stepChange.emit(this.step - 1); 66 | this.evts.publish('step:back'); 67 | 68 | } 69 | /** 70 | * @method next button event and emit Event Called 'step:next' 71 | */ 72 | next() { 73 | this.stepChange.emit(this.step + 1); 74 | this.evts.publish('step:next'); 75 | } 76 | 77 | } 78 | -------------------------------------------------------------------------------- /src/pages/ion-simple-wizard/ion-simple-wizard.step.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonSimpleWizard } from './ion-simple-wizard.component'; 3 | import { Events } from 'ionic-angular'; 4 | import { WizardAnimations } from './ion-simple-wizard-animations'; 5 | 6 | @Component({ 7 | selector: 'ion-wizard-step', 8 | host: { 9 | '[@WizardAnimations]': 'isCurrent ?"enter":"leave"' 10 | }, 11 | template: ` 12 | 13 | `, 14 | animations: WizardAnimations.zoom //TO DO: Change the animation by @Input for example 15 | }) 16 | export class IonSimpleWizardStep { 17 | public isCurrent; 18 | public step; 19 | constructor(public parent: IonSimpleWizard, public evts: Events) { 20 | this.step = this.parent.addStep(); 21 | this.isCurrent = this.step === this.parent.step; 22 | this.parent.stepChange.subscribe(step => { 23 | this.isCurrent = this.step === step; 24 | if (this.isCurrent) { 25 | this.evts.publish('step:changed', this.step); 26 | } 27 | 28 | }); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/service-worker.js: -------------------------------------------------------------------------------- 1 | // tick this to make the cache invalidate and update 2 | const CACHE_VERSION = 1; 3 | const CURRENT_CACHES = { 4 | 'read-through': 'read-through-cache-v' + CACHE_VERSION 5 | }; 6 | 7 | self.addEventListener('activate', (event) => { 8 | // Delete all caches that aren't named in CURRENT_CACHES. 9 | // While there is only one cache in this example, the same logic will handle the case where 10 | // there are multiple versioned caches. 11 | const expectedCacheNames = Object.keys(CURRENT_CACHES).map((key) => { 12 | return CURRENT_CACHES[key]; 13 | }); 14 | 15 | event.waitUntil( 16 | caches.keys().then((cacheNames) => { 17 | return Promise.all( 18 | cacheNames.map((cacheName) => { 19 | if (expectedCacheNames.indexOf(cacheName) === -1) { 20 | // If this cache name isn't present in the array of "expected" cache names, then delete it. 21 | console.log('Deleting out of date cache:', cacheName); 22 | return caches.delete(cacheName); 23 | } 24 | }) 25 | ); 26 | }) 27 | ); 28 | }); 29 | 30 | // This sample illustrates an aggressive approach to caching, in which every valid response is 31 | // cached and every request is first checked against the cache. 32 | // This may not be an appropriate approach if your web application makes requests for 33 | // arbitrary URLs as part of its normal operation (e.g. a RSS client or a news aggregator), 34 | // as the cache could end up containing large responses that might not end up ever being accessed. 35 | // Other approaches, like selectively caching based on response headers or only caching 36 | // responses served from a specific domain, might be more appropriate for those use cases. 37 | self.addEventListener('fetch', (event) => { 38 | 39 | event.respondWith( 40 | caches.open(CURRENT_CACHES['read-through']).then((cache) => { 41 | return cache.match(event.request).then((response) => { 42 | if (response) { 43 | // If there is an entry in the cache for event.request, then response will be defined 44 | // and we can just return it. 45 | 46 | return response; 47 | } 48 | 49 | // Otherwise, if there is no entry in the cache for event.request, response will be 50 | // undefined, and we need to fetch() the resource. 51 | console.log(' No response for %s found in cache. ' + 52 | 'About to fetch from network...', event.request.url); 53 | 54 | // We call .clone() on the request since we might use it in the call to cache.put() later on. 55 | // Both fetch() and cache.put() "consume" the request, so we need to make a copy. 56 | // (see https://fetch.spec.whatwg.org/#dom-request-clone) 57 | return fetch(event.request.clone()).then((response) => { 58 | 59 | // Optional: add in extra conditions here, e.g. response.type == 'basic' to only cache 60 | // responses from the same domain. See https://fetch.spec.whatwg.org/#concept-response-type 61 | if (response.status < 400 && response.type === 'basic') { 62 | // We need to call .clone() on the response object to save a copy of it to the cache. 63 | // (https://fetch.spec.whatwg.org/#dom-request-clone) 64 | cache.put(event.request, response.clone()); 65 | } 66 | 67 | // Return the original response object, which will be used to fulfill the resource request. 68 | return response; 69 | }); 70 | }).catch((error) => { 71 | // This catch() will handle exceptions that arise from the match() or fetch() operations. 72 | // Note that a HTTP error response (e.g. 404) will NOT trigger an exception. 73 | // It will return a normal response object that has the appropriate error code set. 74 | console.error(' Read-through caching failed:', error); 75 | 76 | throw error; 77 | }); 78 | }) 79 | ); 80 | }); -------------------------------------------------------------------------------- /src/theme/variables.scss: -------------------------------------------------------------------------------- 1 | // Ionic Variables and Theming. For more info, please see: 2 | // http://ionicframework.com/docs/v2/theming/ 3 | @import "ionic.globals"; 4 | 5 | 6 | // Shared Variables 7 | // -------------------------------------------------- 8 | // To customize the look and feel of this app, you can override 9 | // the Sass variables found in Ionic's source scss files. 10 | // To view all the possible Ionic variables, see: 11 | // http://ionicframework.com/docs/v2/theming/overriding-ionic-variables/ 12 | 13 | 14 | 15 | 16 | // Named Color Variables 17 | // -------------------------------------------------- 18 | // Named colors makes it easy to reuse colors on various components. 19 | // It's highly recommended to change the default colors 20 | // to match your app's branding. Ionic uses a Sass map of 21 | // colors so you can add, rename and remove colors as needed. 22 | // The "primary" color is the only required color in the map. 23 | 24 | $colors: ( 25 | primary: #03A9F4, 26 | secondary: #00BCD4, 27 | danger: #f53d3d, 28 | light: #f4f4f4, 29 | dark: #222 30 | ); 31 | 32 | 33 | // App iOS Variables 34 | // -------------------------------------------------- 35 | // iOS only Sass variables can go here 36 | 37 | 38 | 39 | 40 | // App Material Design Variables 41 | // -------------------------------------------------- 42 | // Material Design only Sass variables can go here 43 | 44 | 45 | 46 | 47 | // App Windows Variables 48 | // -------------------------------------------------- 49 | // Windows only Sass variables can go here 50 | 51 | 52 | 53 | 54 | // App Theme 55 | // -------------------------------------------------- 56 | // Ionic apps can have different themes applied, which can 57 | // then be future customized. This import comes last 58 | // so that the above variables are used and Ionic's 59 | // default are overridden. 60 | 61 | @import "ionic.theme.default"; 62 | 63 | 64 | // Ionicons 65 | // -------------------------------------------------- 66 | // The premium icon font for Ionic. For more info, please see: 67 | // http://ionicframework.com/docs/v2/ionicons/ 68 | 69 | $ionicons-font-path: "../assets/fonts"; 70 | @import "ionicons"; 71 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowSyntheticDefaultImports": true, 4 | "declaration": false, 5 | "emitDecoratorMetadata": true, 6 | "experimentalDecorators": true, 7 | "lib": [ 8 | "dom", 9 | "es2015" 10 | ], 11 | "module": "es2015", 12 | "moduleResolution": "node", 13 | "sourceMap": true, 14 | "target": "es5" 15 | }, 16 | "include": [ 17 | "src/**/*.ts" 18 | ], 19 | "exclude": [ 20 | "node_modules" 21 | ], 22 | "compileOnSave": false, 23 | "atom": { 24 | "rewriteTsconfig": false 25 | } 26 | } -------------------------------------------------------------------------------- /tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-duplicate-variable": true, 4 | "no-unused-variable": [ 5 | true 6 | ] 7 | }, 8 | "rulesDirectory": [ 9 | "node_modules/tslint-eslint-rules/dist/rules" 10 | ] 11 | } 12 | --------------------------------------------------------------------------------