├── IonicExample ├── .bowerrc ├── ionic.project ├── resources │ ├── icon.png │ ├── splash.png │ ├── ios │ │ ├── icon │ │ │ ├── icon.png │ │ │ ├── icon-40.png │ │ │ ├── icon-50.png │ │ │ ├── icon-60.png │ │ │ ├── icon-72.png │ │ │ ├── icon-76.png │ │ │ ├── icon@2x.png │ │ │ ├── icon-40@2x.png │ │ │ ├── icon-50@2x.png │ │ │ ├── icon-60@2x.png │ │ │ ├── icon-60@3x.png │ │ │ ├── icon-72@2x.png │ │ │ ├── icon-76@2x.png │ │ │ ├── icon-small.png │ │ │ ├── icon-small@2x.png │ │ │ └── icon-small@3x.png │ │ └── splash │ │ │ ├── Default-667h.png │ │ │ ├── Default-736h.png │ │ │ ├── Default~iphone.png │ │ │ ├── Default@2x~iphone.png │ │ │ ├── Default-568h@2x~iphone.png │ │ │ ├── Default-Landscape-736h.png │ │ │ ├── Default-Landscape~ipad.png │ │ │ ├── Default-Portrait~ipad.png │ │ │ ├── Default-Landscape@2x~ipad.png │ │ │ └── Default-Portrait@2x~ipad.png │ └── 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-port-hdpi-screen.png │ │ ├── drawable-port-ldpi-screen.png │ │ ├── drawable-port-mdpi-screen.png │ │ ├── drawable-port-xhdpi-screen.png │ │ ├── drawable-land-xxhdpi-screen.png │ │ ├── drawable-land-xxxhdpi-screen.png │ │ ├── drawable-port-xxhdpi-screen.png │ │ └── drawable-port-xxxhdpi-screen.png ├── www │ ├── img │ │ └── ionic.png │ ├── lib │ │ └── ionic │ │ │ └── version.json │ ├── css │ │ └── style.css │ ├── index.html │ └── js │ │ └── app.js ├── bower.json ├── .gitignore ├── .editorconfig ├── package.json ├── gulpfile.js ├── hooks │ ├── after_prepare │ │ └── 010_add_platform_class.js │ └── README.md ├── config.xml └── merges │ └── windows │ └── winstore-jscompat.js ├── Ionic2Example ├── src │ ├── pages │ │ └── home │ │ │ ├── home.scss │ │ │ ├── home.ts │ │ │ └── home.html │ ├── assets │ │ └── icon │ │ │ └── favicon.ico │ ├── app │ │ ├── main.ts │ │ ├── app.module.ts │ │ ├── app.component.ts │ │ └── app.scss │ ├── manifest.json │ ├── declarations.d.ts │ ├── service-worker.js │ ├── index.html │ └── theme │ │ └── variables.scss ├── resources │ ├── icon.png │ ├── splash.png │ ├── ios │ │ ├── icon │ │ │ ├── icon.png │ │ │ ├── icon-40.png │ │ │ ├── icon-50.png │ │ │ ├── icon-60.png │ │ │ ├── icon-72.png │ │ │ ├── icon-76.png │ │ │ ├── icon@2x.png │ │ │ ├── icon-40@2x.png │ │ │ ├── icon-40@3x.png │ │ │ ├── icon-50@2x.png │ │ │ ├── icon-60@2x.png │ │ │ ├── icon-60@3x.png │ │ │ ├── icon-72@2x.png │ │ │ ├── icon-76@2x.png │ │ │ ├── icon-small.png │ │ │ ├── icon-83.5@2x.png │ │ │ ├── icon-small@2x.png │ │ │ └── icon-small@3x.png │ │ └── splash │ │ │ ├── Default-667h.png │ │ │ ├── Default-736h.png │ │ │ ├── Default~iphone.png │ │ │ ├── Default@2x~iphone.png │ │ │ ├── Default-568h@2x~iphone.png │ │ │ ├── Default-Landscape-736h.png │ │ │ ├── Default-Landscape~ipad.png │ │ │ ├── Default-Portrait~ipad.png │ │ │ ├── Default-Portrait@2x~ipad.png │ │ │ └── Default-Landscape@2x~ipad.png │ └── 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-port-hdpi-screen.png │ │ ├── drawable-port-ldpi-screen.png │ │ ├── drawable-port-mdpi-screen.png │ │ ├── drawable-land-xhdpi-screen.png │ │ ├── drawable-land-xxhdpi-screen.png │ │ ├── drawable-land-xxxhdpi-screen.png │ │ ├── drawable-port-xhdpi-screen.png │ │ ├── drawable-port-xxhdpi-screen.png │ │ └── drawable-port-xxxhdpi-screen.png ├── ionic.config.json ├── tslint.json ├── .editorconfig ├── tsconfig.json ├── .gitignore ├── www │ └── index.html ├── package.json └── config.xml ├── Ionic3Example ├── src │ ├── pages │ │ └── home │ │ │ ├── home.scss │ │ │ ├── home.ts │ │ │ └── home.html │ ├── app │ │ ├── app.html │ │ ├── main.ts │ │ ├── app.scss │ │ ├── app.component.ts │ │ └── app.module.ts │ ├── assets │ │ └── icon │ │ │ └── favicon.ico │ ├── manifest.json │ ├── service-worker.js │ ├── index.html │ └── theme │ │ └── variables.scss ├── ionic.config.json ├── resources │ ├── icon.png │ ├── splash.png │ ├── ios │ │ ├── icon │ │ │ ├── icon.png │ │ │ ├── icon-40.png │ │ │ ├── icon-50.png │ │ │ ├── icon-60.png │ │ │ ├── icon-72.png │ │ │ ├── icon-76.png │ │ │ ├── icon@2x.png │ │ │ ├── icon-40@2x.png │ │ │ ├── icon-40@3x.png │ │ │ ├── icon-50@2x.png │ │ │ ├── icon-60@2x.png │ │ │ ├── icon-60@3x.png │ │ │ ├── icon-72@2x.png │ │ │ ├── icon-76@2x.png │ │ │ ├── icon-small.png │ │ │ ├── icon-83.5@2x.png │ │ │ ├── icon-small@2x.png │ │ │ └── icon-small@3x.png │ │ └── splash │ │ │ ├── Default-667h.png │ │ │ ├── Default-736h.png │ │ │ ├── Default~iphone.png │ │ │ ├── Default@2x~iphone.png │ │ │ ├── Default-568h@2x~iphone.png │ │ │ ├── Default-Landscape-736h.png │ │ │ ├── Default-Landscape~ipad.png │ │ │ ├── Default-Portrait~ipad.png │ │ │ ├── Default-Portrait@2x~ipad.png │ │ │ ├── Default-Landscape@2x~ipad.png │ │ │ ├── Default-Landscape@~ipadpro.png │ │ │ └── Default-Portrait@~ipadpro.png │ └── 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-port-hdpi-screen.png │ │ ├── drawable-port-ldpi-screen.png │ │ ├── drawable-port-mdpi-screen.png │ │ ├── drawable-land-xhdpi-screen.png │ │ ├── drawable-land-xxhdpi-screen.png │ │ ├── drawable-land-xxxhdpi-screen.png │ │ ├── drawable-port-xhdpi-screen.png │ │ ├── drawable-port-xxhdpi-screen.png │ │ └── drawable-port-xxxhdpi-screen.png ├── tslint.json ├── .editorconfig ├── tsconfig.json ├── .gitignore ├── package.json └── config.xml ├── Ionic4Example ├── src │ ├── environments │ │ ├── environment.prod.ts │ │ └── environment.ts │ ├── app │ │ ├── app.component.html │ │ ├── home │ │ │ ├── home.page.scss │ │ │ ├── home.module.ts │ │ │ ├── home.page.ts │ │ │ └── home.page.html │ │ ├── app-routing.module.ts │ │ ├── app.component.ts │ │ └── app.module.ts │ ├── assets │ │ ├── icon │ │ │ └── favicon.png │ │ └── shapes.svg │ ├── tsconfig.app.json │ ├── tsconfig.spec.json │ ├── main.ts │ ├── global.scss │ ├── test.ts │ ├── index.html │ ├── karma.conf.js │ ├── theme │ │ └── variables.scss │ └── polyfills.ts ├── resources │ ├── icon.png │ ├── splash.png │ ├── ios │ │ ├── icon │ │ │ ├── icon.png │ │ │ ├── icon-1024.png │ │ │ ├── icon-40.png │ │ │ ├── icon-50.png │ │ │ ├── icon-60.png │ │ │ ├── icon-72.png │ │ │ ├── icon-76.png │ │ │ ├── icon@2x.png │ │ │ ├── icon-40@2x.png │ │ │ ├── icon-40@3x.png │ │ │ ├── icon-50@2x.png │ │ │ ├── icon-60@2x.png │ │ │ ├── icon-60@3x.png │ │ │ ├── icon-72@2x.png │ │ │ ├── icon-76@2x.png │ │ │ ├── icon-small.png │ │ │ ├── icon-83.5@2x.png │ │ │ ├── icon-small@2x.png │ │ │ └── icon-small@3x.png │ │ └── splash │ │ │ ├── Default-667h.png │ │ │ ├── Default-736h.png │ │ │ ├── Default~iphone.png │ │ │ ├── Default@2x~iphone.png │ │ │ ├── Default-568h@2x~iphone.png │ │ │ ├── Default-Landscape-736h.png │ │ │ ├── Default-Landscape~ipad.png │ │ │ ├── Default-Portrait~ipad.png │ │ │ ├── Default-Portrait@2x~ipad.png │ │ │ ├── Default-Landscape@2x~ipad.png │ │ │ ├── Default-Landscape@~ipadpro.png │ │ │ ├── Default-Portrait@~ipadpro.png │ │ │ └── Default@2x~universal~anyany.png │ ├── 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-port-hdpi-screen.png │ │ │ ├── drawable-port-ldpi-screen.png │ │ │ ├── drawable-port-mdpi-screen.png │ │ │ ├── drawable-land-xhdpi-screen.png │ │ │ ├── drawable-land-xxhdpi-screen.png │ │ │ ├── drawable-land-xxxhdpi-screen.png │ │ │ ├── drawable-port-xhdpi-screen.png │ │ │ ├── drawable-port-xxhdpi-screen.png │ │ │ └── drawable-port-xxxhdpi-screen.png │ └── README.md ├── ionic.config.json ├── tsconfig.json ├── .gitignore ├── package.json ├── tslint.json ├── angular.json └── config.xml ├── .gitignore ├── SimpleExample ├── www │ ├── index.css │ ├── index.js │ └── index.html ├── package.json └── config.xml ├── AdvancedExample ├── www │ ├── index.css │ ├── index.html │ └── index.js ├── config.xml └── package.json └── README.md /IonicExample/.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "directory": "www/lib" 3 | } 4 | -------------------------------------------------------------------------------- /Ionic2Example/src/pages/home/home.scss: -------------------------------------------------------------------------------- 1 | page-home { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /Ionic3Example/src/pages/home/home.scss: -------------------------------------------------------------------------------- 1 | page-home { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /Ionic3Example/src/app/app.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /IonicExample/ionic.project: -------------------------------------------------------------------------------- 1 | { 2 | "name": "IonicExample", 3 | "app_id": "" 4 | } 5 | -------------------------------------------------------------------------------- /Ionic4Example/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true 3 | }; 4 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/app.component.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/home/home.page.scss: -------------------------------------------------------------------------------- 1 | button{ 2 | padding: 8px; 3 | } 4 | ion-select{ 5 | max-width: 75%; 6 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.idea 2 | /**/platforms 3 | /**/plugins 4 | /**/.cordova 5 | /www 6 | build.json 7 | node_modules 8 | package-lock.json -------------------------------------------------------------------------------- /IonicExample/resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/icon.png -------------------------------------------------------------------------------- /IonicExample/www/img/ionic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/www/img/ionic.png -------------------------------------------------------------------------------- /Ionic2Example/resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/icon.png -------------------------------------------------------------------------------- /Ionic3Example/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "launchnavigator.ionic3example", 3 | "app_id": "", 4 | "type": "ionic-angular" 5 | } 6 | -------------------------------------------------------------------------------- /Ionic3Example/resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/icon.png -------------------------------------------------------------------------------- /IonicExample/resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/splash.png -------------------------------------------------------------------------------- /Ionic2Example/resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/splash.png -------------------------------------------------------------------------------- /Ionic3Example/resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/splash.png -------------------------------------------------------------------------------- /Ionic4Example/resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/splash.png -------------------------------------------------------------------------------- /Ionic2Example/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "launchnavigator.ionic2example", 3 | "app_id": "", 4 | "v2": true, 5 | "typescript": true 6 | } 7 | -------------------------------------------------------------------------------- /Ionic4Example/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ionic4Example", 3 | "integrations": { 4 | "cordova": {} 5 | }, 6 | "type": "angular" 7 | } 8 | -------------------------------------------------------------------------------- /IonicExample/www/lib/ionic/version.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1.2.4", 3 | "codename": "", 4 | "date": "2016-01-03", 5 | "time": "19:55:51" 6 | } 7 | -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /Ionic2Example/src/assets/icon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/src/assets/icon/favicon.ico -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /Ionic3Example/src/assets/icon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/src/assets/icon/favicon.ico -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /Ionic4Example/src/assets/icon/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/src/assets/icon/favicon.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-1024.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-small.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-40@3x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-small.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-40@3x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-small.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-40@3x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-small.png -------------------------------------------------------------------------------- /IonicExample/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "HelloIonic", 3 | "private": "true", 4 | "devDependencies": { 5 | "ionic": "driftyco/ionic-bower#1.2.4" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-83.5@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-small@2x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/icon/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/icon/icon-small@3x.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-83.5@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-small@2x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/icon/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/icon/icon-small@3x.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-83.5@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-small@2x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/icon/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/icon/icon-small@3x.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-small@2x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/icon/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/icon/icon-small@3x.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /SimpleExample/www/index.css: -------------------------------------------------------------------------------- 1 | .field{ 2 | border: #000 solid 1px; 3 | padding: 10px; 4 | margin-top: 20px; 5 | } 6 | 7 | .field button{ 8 | padding: 10px; 9 | } -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /IonicExample/.gitignore: -------------------------------------------------------------------------------- 1 | # Specifies intentionally untracked files to ignore when using Git 2 | # http://git-scm.com/docs/gitignore 3 | 4 | node_modules/ 5 | platforms/ 6 | plugins/ 7 | -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /IonicExample/resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /IonicExample/resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /IonicExample/resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /IonicExample/resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /IonicExample/resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /IonicExample/resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /IonicExample/resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /Ionic2Example/resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Landscape@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Landscape@~ipadpro.png -------------------------------------------------------------------------------- /Ionic3Example/resources/ios/splash/Default-Portrait@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/ios/splash/Default-Portrait@~ipadpro.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Landscape@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Landscape@~ipadpro.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default-Portrait@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default-Portrait@~ipadpro.png -------------------------------------------------------------------------------- /Ionic4Example/resources/ios/splash/Default@2x~universal~anyany.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/ios/splash/Default@2x~universal~anyany.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic2Example/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic3Example/resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic3Example/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic4Example/resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/Ionic4Example/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /IonicExample/resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dpa99c/phonegap-launch-navigator-example/HEAD/IonicExample/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /Ionic2Example/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 | -------------------------------------------------------------------------------- /Ionic3Example/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 | -------------------------------------------------------------------------------- /Ionic4Example/src/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/app", 5 | "types": [] 6 | }, 7 | "exclude": [ 8 | "test.ts", 9 | "**/*.spec.ts" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /Ionic2Example/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 | -------------------------------------------------------------------------------- /Ionic3Example/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 | -------------------------------------------------------------------------------- /IonicExample/.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | indent_style = space 7 | indent_size = 2 8 | end_of_line = lf 9 | insert_final_newline = true 10 | trim_trailing_whitespace = true 11 | 12 | [*.md] 13 | insert_final_newline = false 14 | trim_trailing_whitespace = false -------------------------------------------------------------------------------- /Ionic2Example/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 | } -------------------------------------------------------------------------------- /Ionic3Example/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 | } -------------------------------------------------------------------------------- /Ionic4Example/src/tsconfig.spec.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/spec", 5 | "types": [ 6 | "jasmine", 7 | "node" 8 | ] 9 | }, 10 | "files": [ 11 | "test.ts", 12 | "polyfills.ts" 13 | ], 14 | "include": [ 15 | "**/*.spec.ts", 16 | "**/*.d.ts" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /Ionic4Example/src/main.ts: -------------------------------------------------------------------------------- 1 | import { enableProdMode } from '@angular/core'; 2 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 3 | 4 | import { AppModule } from './app/app.module'; 5 | import { environment } from './environments/environment'; 6 | 7 | if (environment.production) { 8 | enableProdMode(); 9 | } 10 | 11 | platformBrowserDynamic().bootstrapModule(AppModule) 12 | .catch(err => console.log(err)); 13 | -------------------------------------------------------------------------------- /Ionic2Example/.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 -------------------------------------------------------------------------------- /Ionic3Example/.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 -------------------------------------------------------------------------------- /Ionic4Example/src/app/app-routing.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { Routes, RouterModule } from '@angular/router'; 3 | 4 | const routes: Routes = [ 5 | { path: '', redirectTo: 'home', pathMatch: 'full' }, 6 | { path: 'home', loadChildren: './home/home.module#HomePageModule' }, 7 | ]; 8 | 9 | @NgModule({ 10 | imports: [RouterModule.forRoot(routes)], 11 | exports: [RouterModule] 12 | }) 13 | export class AppRoutingModule { } 14 | -------------------------------------------------------------------------------- /Ionic4Example/resources/README.md: -------------------------------------------------------------------------------- 1 | These are Cordova resources. You can replace icon.png and splash.png and run 2 | `ionic cordova resources` to generate custom icons and splash screens for your 3 | app. See `ionic cordova resources --help` for details. 4 | 5 | Cordova reference documentation: 6 | 7 | - Icons: https://cordova.apache.org/docs/en/latest/config_ref/images.html 8 | - Splash Screens: https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-splashscreen/ 9 | -------------------------------------------------------------------------------- /Ionic4Example/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compileOnSave": false, 3 | "compilerOptions": { 4 | "baseUrl": "./", 5 | "outDir": "./dist/out-tsc", 6 | "sourceMap": true, 7 | "declaration": false, 8 | "module": "es2015", 9 | "moduleResolution": "node", 10 | "emitDecoratorMetadata": true, 11 | "experimentalDecorators": true, 12 | "target": "es5", 13 | "typeRoots": [ 14 | "node_modules/@types" 15 | ], 16 | "lib": [ 17 | "es2018", 18 | "dom" 19 | ] 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Ionic4Example/src/global.scss: -------------------------------------------------------------------------------- 1 | // http://ionicframework.com/docs/theming/ 2 | @import '~@ionic/angular/css/core.css'; 3 | @import '~@ionic/angular/css/normalize.css'; 4 | @import '~@ionic/angular/css/structure.css'; 5 | @import '~@ionic/angular/css/typography.css'; 6 | 7 | @import '~@ionic/angular/css/padding.css'; 8 | @import '~@ionic/angular/css/float-elements.css'; 9 | @import '~@ionic/angular/css/text-alignment.css'; 10 | @import '~@ionic/angular/css/text-transformation.css'; 11 | @import '~@ionic/angular/css/flex-utils.css'; 12 | -------------------------------------------------------------------------------- /IonicExample/www/css/style.css: -------------------------------------------------------------------------------- 1 | /* Empty. Add your own CSS if you like */ 2 | 3 | .field{ 4 | padding: 10px; 5 | margin-top: 20px; 6 | } 7 | 8 | .field button{ 9 | padding: 10px; 10 | } 11 | 12 | button.navigate{ 13 | margin: 20px; 14 | } 15 | 16 | input{ 17 | border: #cccccc 1px solid !important; 18 | } 19 | 20 | input.error{ 21 | border-color: red !important; 22 | } 23 | 24 | .custom{ 25 | margin-top: 16px; 26 | } 27 | 28 | .custom input{ 29 | width: 100%; 30 | max-width: 400px; 31 | padding: 0 10px; 32 | } 33 | -------------------------------------------------------------------------------- /AdvancedExample/www/index.css: -------------------------------------------------------------------------------- 1 | .field{ 2 | border: #000 solid 1px; 3 | padding: 10px; 4 | margin-top: 20px; 5 | } 6 | 7 | button{ 8 | padding: 10px; 9 | margin: 16px 0; 10 | } 11 | 12 | .windows-only, 13 | .ios-only, 14 | .android-only{ 15 | display: none; 16 | } 17 | 18 | body.windows .windows-only, 19 | body.ios .ios-only, 20 | body.android .android-only{ 21 | display: block !important; 22 | } 23 | 24 | .hidden{ 25 | display: none; 26 | } 27 | 28 | .disabled, 29 | .disabled *{ 30 | color: #cccccc; 31 | border-color: #cccccc; 32 | } -------------------------------------------------------------------------------- /Ionic2Example/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 | } -------------------------------------------------------------------------------- /Ionic3Example/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 | } -------------------------------------------------------------------------------- /Ionic2Example/.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 | -------------------------------------------------------------------------------- /Ionic3Example/.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 | -------------------------------------------------------------------------------- /Ionic2Example/src/app/app.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { IonicApp, IonicModule } from 'ionic-angular'; 3 | import { FormsModule } from '@angular/forms'; 4 | import { MyApp } from './app.component'; 5 | import { HomePage } from '../pages/home/home'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | MyApp, 10 | HomePage 11 | ], 12 | imports: [ 13 | IonicModule.forRoot(MyApp), 14 | FormsModule 15 | ], 16 | bootstrap: [IonicApp], 17 | entryComponents: [ 18 | MyApp, 19 | HomePage 20 | ], 21 | providers: [] 22 | }) 23 | export class AppModule {} 24 | -------------------------------------------------------------------------------- /Ionic4Example/.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 | .ionic/ 17 | .sourcemaps/ 18 | .sass-cache/ 19 | .tmp/ 20 | .versions/ 21 | coverage/ 22 | www/ 23 | node_modules/ 24 | tmp/ 25 | temp/ 26 | platforms/ 27 | plugins/ 28 | plugins/android.json 29 | plugins/ios.json 30 | $RECYCLE.BIN/ 31 | 32 | .DS_Store 33 | Thumbs.db 34 | UserInterfaceState.xcuserstate 35 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/home/home.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { CommonModule } from '@angular/common'; 3 | import { IonicModule } from '@ionic/angular'; 4 | import { FormsModule } from '@angular/forms'; 5 | import { RouterModule } from '@angular/router'; 6 | 7 | import { HomePage } from './home.page'; 8 | 9 | @NgModule({ 10 | imports: [ 11 | CommonModule, 12 | FormsModule, 13 | IonicModule, 14 | RouterModule.forChild([ 15 | { 16 | path: '', 17 | component: HomePage 18 | } 19 | ]) 20 | ], 21 | declarations: [HomePage] 22 | }) 23 | export class HomePageModule {} 24 | -------------------------------------------------------------------------------- /Ionic2Example/src/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { Platform } from 'ionic-angular'; 3 | import { StatusBar } from 'ionic-native'; 4 | 5 | import { HomePage } from '../pages/home/home'; 6 | 7 | 8 | @Component({ 9 | template: `` 10 | }) 11 | export class MyApp { 12 | rootPage = HomePage; 13 | 14 | constructor(platform: Platform) { 15 | platform.ready().then(() => { 16 | // Okay, so the platform is ready and our plugins are available. 17 | // Here you can do any higher level native things you might need. 18 | StatusBar.styleDefault(); 19 | }); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Ionic4Example/src/test.ts: -------------------------------------------------------------------------------- 1 | // This file is required by karma.conf.js and loads recursively all the .spec and framework files 2 | 3 | import 'zone.js/dist/zone-testing'; 4 | import { getTestBed } from '@angular/core/testing'; 5 | import { 6 | BrowserDynamicTestingModule, 7 | platformBrowserDynamicTesting 8 | } from '@angular/platform-browser-dynamic/testing'; 9 | 10 | declare const require: any; 11 | 12 | // First, initialize the Angular testing environment. 13 | getTestBed().initTestEnvironment( 14 | BrowserDynamicTestingModule, 15 | platformBrowserDynamicTesting() 16 | ); 17 | // Then we find all the tests. 18 | const context = require.context('./', true, /\.spec\.ts$/); 19 | // And load the modules. 20 | context.keys().map(context); 21 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { Platform } from '@ionic/angular'; 3 | import { SplashScreen } from '@ionic-native/splash-screen/ngx'; 4 | import { StatusBar } from '@ionic-native/status-bar/ngx'; 5 | 6 | @Component({ 7 | selector: 'app-root', 8 | templateUrl: 'app.component.html' 9 | }) 10 | export class AppComponent { 11 | constructor( 12 | private platform: Platform, 13 | private splashScreen: SplashScreen, 14 | private statusBar: StatusBar 15 | ) { 16 | this.initializeApp(); 17 | } 18 | 19 | initializeApp() { 20 | this.platform.ready().then(() => { 21 | this.statusBar.styleDefault(); 22 | this.splashScreen.hide(); 23 | }); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Ionic2Example/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 '*'; -------------------------------------------------------------------------------- /Ionic4Example/src/environments/environment.ts: -------------------------------------------------------------------------------- 1 | // This file can be replaced during build by using the `fileReplacements` array. 2 | // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. 3 | // The list of file replacements can be found in `angular.json`. 4 | 5 | export const environment = { 6 | production: false 7 | }; 8 | 9 | /* 10 | * For easier debugging in development mode, you can import the following file 11 | * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. 12 | * 13 | * This import should be commented out in production mode because it will have a negative impact 14 | * on performance if an error is thrown. 15 | */ 16 | // import 'zone.js/dist/zone-error'; // Included with Angular CLI. 17 | -------------------------------------------------------------------------------- /Ionic2Example/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 | -------------------------------------------------------------------------------- /Ionic3Example/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 | -------------------------------------------------------------------------------- /Ionic3Example/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 | @Component({ 8 | templateUrl: 'app.html' 9 | }) 10 | export class MyApp { 11 | rootPage:any = HomePage; 12 | 13 | constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen) { 14 | platform.ready().then(() => { 15 | // Okay, so the platform is ready and our plugins are available. 16 | // Here you can do any higher level native things you might need. 17 | statusBar.styleDefault(); 18 | splashScreen.hide(); 19 | }); 20 | } 21 | } 22 | 23 | -------------------------------------------------------------------------------- /Ionic4Example/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Ionic App 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Ionic2Example/src/pages/home/home.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { NavController } from 'ionic-angular'; 3 | import { LaunchNavigator, LaunchNavigatorOptions } from 'ionic-native'; 4 | 5 | @Component({ 6 | selector: 'page-home', 7 | templateUrl: 'home.html' 8 | }) 9 | export class HomePage { 10 | destination:string; 11 | start:string; 12 | 13 | constructor(public navCtrl: NavController) { 14 | this.start = ""; 15 | this.destination = "Westminster, London, UK"; 16 | } 17 | 18 | navigate(){ 19 | let options: LaunchNavigatorOptions = { 20 | start: this.start 21 | }; 22 | 23 | LaunchNavigator.navigate(this.destination, options) 24 | .then( 25 | success => alert('Launched navigator'), 26 | error => alert('Error launching navigator: ' + error) 27 | ); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /SimpleExample/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "workingedge.example.launchnavigator.simple", 3 | "version": "5.0.0", 4 | "displayName": "Launch Navigator Simple Example", 5 | "cordova": { 6 | "platforms": [ 7 | "android", 8 | "ios", 9 | "windows" 10 | ], 11 | "plugins": { 12 | "uk.co.workingedge.phonegap.plugin.launchnavigator": { 13 | "GOOGLE_API_KEY_FOR_ANDROID": "your_api_key", 14 | "LOCATION_USAGE_DESCRIPTION": "This app requires access to your location for navigation purposes" 15 | }, 16 | "cordova-plugin-dialogs": {} 17 | } 18 | }, 19 | "dependencies": { 20 | "cordova-ios": "6.1.1", 21 | "uk.co.workingedge.phonegap.plugin.launchnavigator": "^5.0.4" 22 | }, 23 | "devDependencies": { 24 | "cordova-android": "^11.0.0", 25 | "cordova-plugin-dialogs": "1" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /SimpleExample/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Launch Navigator Simple Example 4 | 5 | Sample application that illustrates basic usage of the LaunchNavigator plugin 6 | 7 | 8 | Dave Alden 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /Ionic3Example/src/service-worker.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Check out https://googlechrome.github.io/sw-toolbox/ for 3 | * more info on how to use sw-toolbox to custom configure your service worker. 4 | */ 5 | 6 | 7 | 'use strict'; 8 | importScripts('./build/sw-toolbox.js'); 9 | 10 | self.toolbox.options.cache = { 11 | name: 'ionic-cache' 12 | }; 13 | 14 | // pre-cache our key assets 15 | self.toolbox.precache( 16 | [ 17 | './build/main.js', 18 | './build/main.css', 19 | './build/polyfills.js', 20 | 'index.html', 21 | 'manifest.json' 22 | ] 23 | ); 24 | 25 | // dynamically cache any other local assets 26 | self.toolbox.router.any('/*', self.toolbox.cacheFirst); 27 | 28 | // for any other requests go to the network, cache, 29 | // and then only use that cached resource if your user goes offline 30 | self.toolbox.router.default = self.toolbox.networkFirst; 31 | -------------------------------------------------------------------------------- /AdvancedExample/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Launch Navigator Advanced Example 4 | 5 | Sample application that illustrates advanced usage of the LaunchNavigator plugin 6 | 7 | 8 | Dave Alden 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /IonicExample/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "launchnavigator.ionicexample", 3 | "version": "5.0.0", 4 | "description": " Sample application that illustrates usage of the LaunchNavigator plugin with Ionic framework", 5 | "dependencies": { 6 | "gulp": "^3.5.6", 7 | "gulp-sass": "^2.0.4", 8 | "gulp-concat": "^2.2.0", 9 | "gulp-minify-css": "^0.3.0", 10 | "gulp-rename": "^1.2.0" 11 | }, 12 | "devDependencies": { 13 | "bower": "^1.3.3", 14 | "gulp-util": "^2.2.14", 15 | "shelljs": "^0.3.0" 16 | }, 17 | "cordovaPlugins": [ 18 | "cordova-plugin-device", 19 | "cordova-plugin-console", 20 | "cordova-plugin-whitelist", 21 | "cordova-plugin-splashscreen", 22 | "cordova-plugin-statusbar", 23 | "ionic-plugin-keyboard", 24 | "uk.co.workingedge.phonegap.plugin.launchnavigator" 25 | ], 26 | "cordovaPlatforms": [] 27 | } 28 | -------------------------------------------------------------------------------- /Ionic2Example/src/service-worker.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Check out https://googlechrome.github.io/sw-toolbox/docs/master/index.html for 3 | * more info on how to use sw-toolbox to custom configure your service worker. 4 | */ 5 | 6 | 7 | 'use strict'; 8 | importScripts('./build/sw-toolbox.js'); 9 | 10 | self.toolbox.options.cache = { 11 | name: 'ionic-cache' 12 | }; 13 | 14 | // pre-cache our key assets 15 | self.toolbox.precache( 16 | [ 17 | './build/main.js', 18 | './build/main.css', 19 | './build/polyfills.js', 20 | 'index.html', 21 | 'manifest.json' 22 | ] 23 | ); 24 | 25 | // dynamically cache any other local assets 26 | self.toolbox.router.any('/*', self.toolbox.cacheFirst); 27 | 28 | // for any other requests go to the network, cache, 29 | // and then only use that cached resource if your user goes offline 30 | self.toolbox.router.default = self.toolbox.networkFirst; -------------------------------------------------------------------------------- /Ionic3Example/src/pages/home/home.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { NavController } from 'ionic-angular'; 3 | import { LaunchNavigator, LaunchNavigatorOptions } from '@ionic-native/launch-navigator'; 4 | 5 | @Component({ 6 | selector: 'page-home', 7 | templateUrl: 'home.html' 8 | }) 9 | export class HomePage { 10 | destination:string; 11 | start:string; 12 | 13 | constructor( 14 | public navCtrl: NavController, 15 | private launchNavigator: LaunchNavigator 16 | ) { 17 | this.start = ""; 18 | this.destination = "Westminster, London, UK"; 19 | } 20 | 21 | navigate(){ 22 | let options: LaunchNavigatorOptions = { 23 | start: this.start 24 | }; 25 | 26 | this.launchNavigator.navigate(this.destination, options) 27 | .then( 28 | success => alert('Launched navigator'), 29 | error => alert('Error launching navigator: ' + error) 30 | ); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/home/home.page.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { LaunchNavigator, LaunchNavigatorOptions } from '@ionic-native/launch-navigator/ngx'; 3 | 4 | @Component({ 5 | selector: 'app-home', 6 | templateUrl: 'home.page.html', 7 | styleUrls: ['home.page.scss'], 8 | }) 9 | export class HomePage { 10 | destination:string; 11 | start:string; 12 | 13 | constructor( 14 | private launchNavigator: LaunchNavigator 15 | ) { 16 | this.start = ""; 17 | this.destination = "Westminster, London, UK"; 18 | } 19 | 20 | navigate(){ 21 | let options: LaunchNavigatorOptions = { 22 | start: this.start 23 | }; 24 | 25 | this.launchNavigator.navigate(this.destination, options) 26 | .then( 27 | success => alert('Launched navigator'), 28 | error => alert('Error launching navigator: ' + error) 29 | ); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /AdvancedExample/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "workingedge.example.launchnavigator.advanced", 3 | "version": "5.0.0", 4 | "displayName": "Launch Navigator Advanced Example", 5 | "cordova": { 6 | "platforms": [ 7 | "android", 8 | "ios", 9 | "windows" 10 | ], 11 | "plugins": { 12 | "cordova-plugin-device": {}, 13 | "cordova-plugin-dialogs": {}, 14 | "uk.co.workingedge.phonegap.plugin.launchnavigator": { 15 | "GOOGLE_API_KEY_FOR_ANDROID": "your_api_key", 16 | "LOCATION_USAGE_DESCRIPTION": "This app requires access to your location for navigation purposes", 17 | "OKHTTP_VERSION": "3.10.0" 18 | } 19 | } 20 | }, 21 | "dependencies": { 22 | "cordova-ios": "latest", 23 | "cordova-plugin-device": "1", 24 | "cordova-plugin-dialogs": "1", 25 | "uk.co.workingedge.phonegap.plugin.launchnavigator": "^5.0.0" 26 | }, 27 | "devDependencies": { 28 | "cordova-android": "^11.0.0" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/app.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { BrowserModule } from '@angular/platform-browser'; 3 | import { RouteReuseStrategy } from '@angular/router'; 4 | 5 | import { IonicModule, IonicRouteStrategy } from '@ionic/angular'; 6 | import { SplashScreen } from '@ionic-native/splash-screen/ngx'; 7 | import { StatusBar } from '@ionic-native/status-bar/ngx'; 8 | import { LaunchNavigator } from '@ionic-native/launch-navigator/ngx'; 9 | 10 | import { AppComponent } from './app.component'; 11 | import { AppRoutingModule } from './app-routing.module'; 12 | 13 | @NgModule({ 14 | declarations: [AppComponent], 15 | entryComponents: [], 16 | imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule], 17 | providers: [ 18 | StatusBar, 19 | SplashScreen, 20 | LaunchNavigator, 21 | { provide: RouteReuseStrategy, useClass: IonicRouteStrategy } 22 | ], 23 | bootstrap: [AppComponent] 24 | }) 25 | export class AppModule {} 26 | -------------------------------------------------------------------------------- /Ionic3Example/src/app/app.module.ts: -------------------------------------------------------------------------------- 1 | import { BrowserModule } from '@angular/platform-browser'; 2 | import { ErrorHandler, NgModule } from '@angular/core'; 3 | import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular'; 4 | import { SplashScreen } from '@ionic-native/splash-screen'; 5 | import { StatusBar } from '@ionic-native/status-bar'; 6 | import { FormsModule } from '@angular/forms'; 7 | import { LaunchNavigator } from '@ionic-native/launch-navigator'; 8 | 9 | import { MyApp } from './app.component'; 10 | import { HomePage } from '../pages/home/home'; 11 | 12 | @NgModule({ 13 | declarations: [ 14 | MyApp, 15 | HomePage 16 | ], 17 | imports: [ 18 | BrowserModule, 19 | IonicModule.forRoot(MyApp), 20 | FormsModule 21 | ], 22 | bootstrap: [IonicApp], 23 | entryComponents: [ 24 | MyApp, 25 | HomePage 26 | ], 27 | providers: [ 28 | StatusBar, 29 | SplashScreen, 30 | LaunchNavigator, 31 | {provide: ErrorHandler, useClass: IonicErrorHandler} 32 | ] 33 | }) 34 | export class AppModule {} 35 | -------------------------------------------------------------------------------- /SimpleExample/www/index.js: -------------------------------------------------------------------------------- 1 | 2 | function onSuccess(){ 3 | navigator.notification.alert("Successfully launched navigator"); 4 | } 5 | 6 | function onError(errMsg){ 7 | navigator.notification.alert("Error launching navigator: "+errMsg); 8 | } 9 | 10 | 11 | function navigate(e){ 12 | e.preventDefault(); 13 | 14 | var dest = $('#dest input').val().trim(), 15 | start = $('#start input').val().trim(); 16 | 17 | if(!dest){ 18 | navigator.notification. alert("A destination must be specified"); 19 | return; 20 | } 21 | 22 | launchnavigator.navigate(dest, { 23 | start: start, 24 | successCallback: onSuccess, 25 | errorCallback: onError 26 | }); 27 | return false; 28 | } 29 | 30 | function init() { 31 | launchnavigator.enableDebug(true, function(){ 32 | console.log("Debug mode enabled"); 33 | }, function(error){ 34 | console.error("Error enabling debug mode: "+error); 35 | }); 36 | 37 | $('#form').submit(navigate); 38 | 39 | } 40 | $(document).on("deviceready", init); -------------------------------------------------------------------------------- /Ionic2Example/src/pages/home/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | LaunchNavigator Ionic 2 Example 4 | 5 | 6 | 7 | 8 | 9 | 10 | Destination 11 | 12 | Westminster, London, UK 13 | 51.49,-0.13 (Westminster) 14 | 15 | 16 | 17 | Start 18 | 19 | None (current location) 20 | Manchester, UK 21 | 53.49,-2.24 (Manchester) 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Ionic3Example/src/pages/home/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | LaunchNavigator Ionic 3 Example 4 | 5 | 6 | 7 | 8 | 9 | 10 | Destination 11 | 12 | Westminster, London, UK 13 | 51.49,-0.13 (Westminster) 14 | 15 | 16 | 17 | Start 18 | 19 | None (current location) 20 | Manchester, UK 21 | 53.49,-2.24 (Manchester) 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Ionic4Example/src/karma.conf.js: -------------------------------------------------------------------------------- 1 | // Karma configuration file, see link for more information 2 | // https://karma-runner.github.io/1.0/config/configuration-file.html 3 | 4 | module.exports = function (config) { 5 | config.set({ 6 | basePath: '', 7 | frameworks: ['jasmine', '@angular-devkit/build-angular'], 8 | plugins: [ 9 | require('karma-jasmine'), 10 | require('karma-chrome-launcher'), 11 | require('karma-jasmine-html-reporter'), 12 | require('karma-coverage-istanbul-reporter'), 13 | require('@angular-devkit/build-angular/plugins/karma') 14 | ], 15 | client: { 16 | clearContext: false // leave Jasmine Spec Runner output visible in browser 17 | }, 18 | coverageIstanbulReporter: { 19 | dir: require('path').join(__dirname, '../coverage'), 20 | reports: ['html', 'lcovonly'], 21 | fixWebpackSourcePaths: true 22 | }, 23 | reporters: ['progress', 'kjhtml'], 24 | port: 9876, 25 | colors: true, 26 | logLevel: config.LOG_INFO, 27 | autoWatch: true, 28 | browsers: ['Chrome'], 29 | singleRun: false 30 | }); 31 | }; 32 | -------------------------------------------------------------------------------- /Ionic4Example/src/app/home/home.page.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | LaunchNavigator Ionic 4 Example 4 | 5 | 6 | 7 | 8 | 9 | 10 | Destination 11 | 12 | Westminster, London, UK 13 | 51.49,-0.13 (Westminster) 14 | 15 | 16 | 17 | Start 18 | 19 | None (current location) 20 | Manchester, UK 21 | 53.49,-2.24 (Manchester) 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Ionic4Example/src/assets/shapes.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /SimpleExample/www/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |

Launch Navigator - Simple Example

12 | 13 |
14 | 15 |
16 | 17 | 18 |

Enter destination as an address or "latitude, longitude"

19 |
20 | 21 |
22 | 23 | 24 |

Enter start as an address or "latitude, longitude" or leave blank to use current location

25 |
26 | 27 |
28 | 29 |
30 |
31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Ionic2Example/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 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Ionic2Example/www/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 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Ionic3Example/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 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /IonicExample/gulpfile.js: -------------------------------------------------------------------------------- 1 | var gulp = require('gulp'); 2 | var gutil = require('gulp-util'); 3 | var bower = require('bower'); 4 | var concat = require('gulp-concat'); 5 | var sass = require('gulp-sass'); 6 | var minifyCss = require('gulp-minify-css'); 7 | var rename = require('gulp-rename'); 8 | var sh = require('shelljs'); 9 | 10 | var paths = { 11 | sass: ['./scss/**/*.scss'] 12 | }; 13 | 14 | gulp.task('default', ['sass']); 15 | 16 | gulp.task('sass', function(done) { 17 | gulp.src('./scss/ionic.app.scss') 18 | .pipe(sass()) 19 | .on('error', sass.logError) 20 | .pipe(gulp.dest('./www/css/')) 21 | .pipe(minifyCss({ 22 | keepSpecialComments: 0 23 | })) 24 | .pipe(rename({ extname: '.min.css' })) 25 | .pipe(gulp.dest('./www/css/')) 26 | .on('end', done); 27 | }); 28 | 29 | gulp.task('watch', function() { 30 | gulp.watch(paths.sass, ['sass']); 31 | }); 32 | 33 | gulp.task('install', ['git-check'], function() { 34 | return bower.commands.install() 35 | .on('log', function(data) { 36 | gutil.log('bower', gutil.colors.cyan(data.id), data.message); 37 | }); 38 | }); 39 | 40 | gulp.task('git-check', function(done) { 41 | if (!sh.which('git')) { 42 | console.log( 43 | ' ' + gutil.colors.red('Git is not installed.'), 44 | '\n Git, the version control system, is required to download Ionic.', 45 | '\n Download git here:', gutil.colors.cyan('http://git-scm.com/downloads') + '.', 46 | '\n Once git is installed, run \'' + gutil.colors.cyan('gulp install') + '\' again.' 47 | ); 48 | process.exit(1); 49 | } 50 | done(); 51 | }); 52 | -------------------------------------------------------------------------------- /Ionic2Example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "launchnavigator.ionic2example", 3 | "version": "5.0.0", 4 | "author": "Dave Alden", 5 | "homepage": "https://github.com/dpa99c", 6 | "private": false, 7 | "scripts": { 8 | "clean": "ionic-app-scripts clean", 9 | "build": "ionic-app-scripts build", 10 | "ionic:build": "ionic-app-scripts build", 11 | "ionic:serve": "ionic-app-scripts serve" 12 | }, 13 | "dependencies": { 14 | "@angular/common": "2.2.1", 15 | "@angular/compiler": "2.2.1", 16 | "@angular/compiler-cli": "2.2.1", 17 | "@angular/core": "2.2.1", 18 | "@angular/forms": "2.2.1", 19 | "@angular/http": "2.2.1", 20 | "@angular/platform-browser": "2.2.1", 21 | "@angular/platform-browser-dynamic": "2.2.1", 22 | "@angular/platform-server": "2.2.1", 23 | "@ionic/storage": "1.1.7", 24 | "ionic-angular": "2.0.0", 25 | "ionic-native": "2.4.1", 26 | "ionicons": "3.0.0", 27 | "rxjs": "5.0.0-beta.12", 28 | "zone.js": "0.6.26", 29 | "sw-toolbox": "3.4.0" 30 | }, 31 | "devDependencies": { 32 | "@ionic/app-scripts": "1.0.0", 33 | "typescript": "2.0.9" 34 | }, 35 | "description": "Sample application that illustrates usage of the LaunchNavigator plugin with Ionic 2 framework", 36 | "cordovaPlugins": [ 37 | "cordova-plugin-device", 38 | "cordova-plugin-console", 39 | "cordova-plugin-whitelist", 40 | "cordova-plugin-splashscreen", 41 | "cordova-plugin-statusbar", 42 | "ionic-plugin-keyboard", 43 | "uk.co.workingedge.phonegap.plugin.launchnavigator" 44 | ], 45 | "cordovaPlatforms": [] 46 | } 47 | -------------------------------------------------------------------------------- /Ionic2Example/src/theme/variables.scss: -------------------------------------------------------------------------------- 1 | // Ionic Variables and Theming. For more info, please see: 2 | // http://ionicframework.com/docs/v2/theming/ 3 | $font-path: "../assets/fonts"; 4 | 5 | @import "ionic.globals"; 6 | 7 | 8 | // Shared Variables 9 | // -------------------------------------------------- 10 | // To customize the look and feel of this app, you can override 11 | // the Sass variables found in Ionic's source scss files. 12 | // To view all the possible Ionic variables, see: 13 | // http://ionicframework.com/docs/v2/theming/overriding-ionic-variables/ 14 | 15 | 16 | 17 | 18 | // Named Color Variables 19 | // -------------------------------------------------- 20 | // Named colors makes it easy to reuse colors on various components. 21 | // It's highly recommended to change the default colors 22 | // to match your app's branding. Ionic uses a Sass map of 23 | // colors so you can add, rename and remove colors as needed. 24 | // The "primary" color is the only required color in the map. 25 | 26 | $colors: ( 27 | primary: #387ef5, 28 | secondary: #32db64, 29 | danger: #f53d3d, 30 | light: #f4f4f4, 31 | dark: #222 32 | ); 33 | 34 | 35 | // App iOS Variables 36 | // -------------------------------------------------- 37 | // iOS only Sass variables can go here 38 | 39 | 40 | 41 | 42 | // App Material Design Variables 43 | // -------------------------------------------------- 44 | // Material Design only Sass variables can go here 45 | 46 | 47 | 48 | 49 | // App Windows Variables 50 | // -------------------------------------------------- 51 | // Windows only Sass variables can go here 52 | 53 | 54 | 55 | 56 | // App Theme 57 | // -------------------------------------------------- 58 | // Ionic apps can have different themes applied, which can 59 | // then be future customized. This import comes last 60 | // so that the above variables are used and Ionic's 61 | // default are overridden. 62 | 63 | @import "ionic.theme.default"; 64 | 65 | 66 | // Ionicons 67 | // -------------------------------------------------- 68 | // The premium icon font for Ionic. For more info, please see: 69 | // http://ionicframework.com/docs/v2/ionicons/ 70 | 71 | @import "ionic.ionicons"; 72 | 73 | 74 | // Fonts 75 | // -------------------------------------------------- 76 | 77 | @import "roboto"; 78 | @import "noto-sans"; 79 | -------------------------------------------------------------------------------- /Ionic4Example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ionic4Example", 3 | "version": "0.0.1", 4 | "author": "Ionic Framework", 5 | "homepage": "https://ionicframework.com/", 6 | "scripts": { 7 | "ng": "ng", 8 | "start": "ng serve", 9 | "build": "ng build", 10 | "test": "ng test", 11 | "lint": "ng lint", 12 | "e2e": "ng e2e" 13 | }, 14 | "private": true, 15 | "dependencies": { 16 | "@angular/common": "^7.2.2", 17 | "@angular/core": "^7.2.2", 18 | "@angular/forms": "^7.2.2", 19 | "@angular/http": "^7.2.2", 20 | "@angular/platform-browser": "^7.2.2", 21 | "@angular/platform-browser-dynamic": "^7.2.2", 22 | "@angular/router": "^7.2.2", 23 | "@ionic-native/core": "^5.0.0", 24 | "@ionic-native/launch-navigator": "^5.0.0", 25 | "@ionic-native/splash-screen": "^5.0.0", 26 | "@ionic-native/status-bar": "^5.0.0", 27 | "@ionic/angular": "^4.0.0", 28 | "cordova-android": "7.1.4", 29 | "cordova-plugin-actionsheet": "2.3.3", 30 | "cordova-plugin-dialogs": "2.0.1", 31 | "core-js": "^2.5.4", 32 | "rxjs": "~6.3.3", 33 | "uk.co.workingedge.phonegap.plugin.launchnavigator": "5.0.1", 34 | "zone.js": "~0.8.29" 35 | }, 36 | "devDependencies": { 37 | "@angular-devkit/architect": "~0.12.3", 38 | "@angular-devkit/build-angular": "~0.12.3", 39 | "@angular-devkit/core": "~7.2.3", 40 | "@angular-devkit/schematics": "~7.2.3", 41 | "@angular/cli": "~7.2.3", 42 | "@angular/compiler": "~7.2.2", 43 | "@angular/compiler-cli": "~7.2.2", 44 | "@angular/language-service": "~7.2.2", 45 | "@ionic/angular-toolkit": "~1.3.0", 46 | "@types/node": "~10.12.0", 47 | "@types/jasmine": "~2.8.8", 48 | "@types/jasminewd2": "~2.0.3", 49 | "codelyzer": "~4.5.0", 50 | "jasmine-core": "~2.99.1", 51 | "jasmine-spec-reporter": "~4.2.1", 52 | "karma": "~3.1.4", 53 | "karma-chrome-launcher": "~2.2.0", 54 | "karma-coverage-istanbul-reporter": "~2.0.1", 55 | "karma-jasmine": "~1.1.2", 56 | "karma-jasmine-html-reporter": "^0.2.2", 57 | "protractor": "~5.4.0", 58 | "ts-node": "~8.0.0", 59 | "tslint": "~5.12.0", 60 | "typescript": "~3.1.6" 61 | }, 62 | "description": "An Ionic project", 63 | "cordova": { 64 | "plugins": { 65 | "uk.co.workingedge.phonegap.plugin.launchnavigator": { 66 | "GOOGLE_API_KEY_FOR_ANDROID": "1234", 67 | "OKHTTP_VERSION": "3.+" 68 | } 69 | } 70 | } 71 | } -------------------------------------------------------------------------------- /Ionic2Example/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LaunchNavigator Ionic 2 Example 4 | Sample application that illustrates usage of the LaunchNavigator plugin with Ionic 2 framework 5 | Dave Alden 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 | -------------------------------------------------------------------------------- /Ionic3Example/src/theme/variables.scss: -------------------------------------------------------------------------------- 1 | // Ionic Variables and Theming. For more info, please see: 2 | // http://ionicframework.com/docs/v2/theming/ 3 | 4 | // Font path is used to include ionicons, 5 | // roboto, and noto sans fonts 6 | $font-path: "../assets/fonts"; 7 | 8 | 9 | // The app direction is used to include 10 | // rtl styles in your app. For more info, please see: 11 | // http://ionicframework.com/docs/theming/rtl-support/ 12 | $app-direction: ltr; 13 | 14 | 15 | @import "ionic.globals"; 16 | 17 | 18 | // Shared Variables 19 | // -------------------------------------------------- 20 | // To customize the look and feel of this app, you can override 21 | // the Sass variables found in Ionic's source scss files. 22 | // To view all the possible Ionic variables, see: 23 | // http://ionicframework.com/docs/v2/theming/overriding-ionic-variables/ 24 | 25 | 26 | 27 | 28 | // Named Color Variables 29 | // -------------------------------------------------- 30 | // Named colors makes it easy to reuse colors on various components. 31 | // It's highly recommended to change the default colors 32 | // to match your app's branding. Ionic uses a Sass map of 33 | // colors so you can add, rename and remove colors as needed. 34 | // The "primary" color is the only required color in the map. 35 | 36 | $colors: ( 37 | primary: #488aff, 38 | secondary: #32db64, 39 | danger: #f53d3d, 40 | light: #f4f4f4, 41 | dark: #222 42 | ); 43 | 44 | 45 | // App iOS Variables 46 | // -------------------------------------------------- 47 | // iOS only Sass variables can go here 48 | 49 | 50 | 51 | 52 | // App Material Design Variables 53 | // -------------------------------------------------- 54 | // Material Design only Sass variables can go here 55 | 56 | 57 | 58 | 59 | // App Windows Variables 60 | // -------------------------------------------------- 61 | // Windows only Sass variables can go here 62 | 63 | 64 | 65 | 66 | // App Theme 67 | // -------------------------------------------------- 68 | // Ionic apps can have different themes applied, which can 69 | // then be future customized. This import comes last 70 | // so that the above variables are used and Ionic's 71 | // default are overridden. 72 | 73 | @import "ionic.theme.default"; 74 | 75 | 76 | // Ionicons 77 | // -------------------------------------------------- 78 | // The premium icon font for Ionic. For more info, please see: 79 | // http://ionicframework.com/docs/v2/ionicons/ 80 | 81 | @import "ionic.ionicons"; 82 | 83 | 84 | // Fonts 85 | // -------------------------------------------------- 86 | 87 | @import "roboto"; 88 | @import "noto-sans"; 89 | -------------------------------------------------------------------------------- /Ionic4Example/src/theme/variables.scss: -------------------------------------------------------------------------------- 1 | // Ionic Variables and Theming. For more info, please see: 2 | // http://ionicframework.com/docs/theming/ 3 | 4 | /** Ionic CSS Variables **/ 5 | :root { 6 | /** primary **/ 7 | --ion-color-primary: #3880ff; 8 | --ion-color-primary-rgb: 56, 128, 255; 9 | --ion-color-primary-contrast: #ffffff; 10 | --ion-color-primary-contrast-rgb: 255, 255, 255; 11 | --ion-color-primary-shade: #3171e0; 12 | --ion-color-primary-tint: #4c8dff; 13 | 14 | /** secondary **/ 15 | --ion-color-secondary: #0cd1e8; 16 | --ion-color-secondary-rgb: 12, 209, 232; 17 | --ion-color-secondary-contrast: #ffffff; 18 | --ion-color-secondary-contrast-rgb: 255, 255, 255; 19 | --ion-color-secondary-shade: #0bb8cc; 20 | --ion-color-secondary-tint: #24d6ea; 21 | 22 | /** tertiary **/ 23 | --ion-color-tertiary: #7044ff; 24 | --ion-color-tertiary-rgb: 112, 68, 255; 25 | --ion-color-tertiary-contrast: #ffffff; 26 | --ion-color-tertiary-contrast-rgb: 255, 255, 255; 27 | --ion-color-tertiary-shade: #633ce0; 28 | --ion-color-tertiary-tint: #7e57ff; 29 | 30 | /** success **/ 31 | --ion-color-success: #10dc60; 32 | --ion-color-success-rgb: 16, 220, 96; 33 | --ion-color-success-contrast: #ffffff; 34 | --ion-color-success-contrast-rgb: 255, 255, 255; 35 | --ion-color-success-shade: #0ec254; 36 | --ion-color-success-tint: #28e070; 37 | 38 | /** warning **/ 39 | --ion-color-warning: #ffce00; 40 | --ion-color-warning-rgb: 255, 206, 0; 41 | --ion-color-warning-contrast: #ffffff; 42 | --ion-color-warning-contrast-rgb: 255, 255, 255; 43 | --ion-color-warning-shade: #e0b500; 44 | --ion-color-warning-tint: #ffd31a; 45 | 46 | /** danger **/ 47 | --ion-color-danger: #f04141; 48 | --ion-color-danger-rgb: 245, 61, 61; 49 | --ion-color-danger-contrast: #ffffff; 50 | --ion-color-danger-contrast-rgb: 255, 255, 255; 51 | --ion-color-danger-shade: #d33939; 52 | --ion-color-danger-tint: #f25454; 53 | 54 | /** dark **/ 55 | --ion-color-dark: #222428; 56 | --ion-color-dark-rgb: 34, 34, 34; 57 | --ion-color-dark-contrast: #ffffff; 58 | --ion-color-dark-contrast-rgb: 255, 255, 255; 59 | --ion-color-dark-shade: #1e2023; 60 | --ion-color-dark-tint: #383a3e; 61 | 62 | /** medium **/ 63 | --ion-color-medium: #989aa2; 64 | --ion-color-medium-rgb: 152, 154, 162; 65 | --ion-color-medium-contrast: #ffffff; 66 | --ion-color-medium-contrast-rgb: 255, 255, 255; 67 | --ion-color-medium-shade: #86888f; 68 | --ion-color-medium-tint: #a2a4ab; 69 | 70 | /** light **/ 71 | --ion-color-light: #f4f5f8; 72 | --ion-color-light-rgb: 244, 244, 244; 73 | --ion-color-light-contrast: #000000; 74 | --ion-color-light-contrast-rgb: 0, 0, 0; 75 | --ion-color-light-shade: #d7d8da; 76 | --ion-color-light-tint: #f5f6f9; 77 | } 78 | -------------------------------------------------------------------------------- /IonicExample/www/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |

Launch Navigator - Ionic Example

33 |
34 | 35 | 36 |
37 | 38 |
39 | 40 | 48 |
49 | 50 |
51 |
52 | 53 |
54 | 55 | 63 | 64 |
65 | 66 |
67 |
68 | 69 |
70 | 71 |
72 |
73 | 74 |
75 |
76 | 77 | 78 | -------------------------------------------------------------------------------- /Ionic3Example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "launchnavigator.ionic3example", 3 | "version": "5.0.0", 4 | "author": "Dave Alden", 5 | "homepage": "https://github.com/dpa99c", 6 | "private": false, 7 | "scripts": { 8 | "clean": "ionic-app-scripts clean", 9 | "build": "ionic-app-scripts build", 10 | "lint": "ionic-app-scripts lint", 11 | "ionic:build": "ionic-app-scripts build", 12 | "ionic:serve": "ionic-app-scripts serve" 13 | }, 14 | "dependencies": { 15 | "@angular/common": "4.3.3", 16 | "@angular/compiler": "4.3.3", 17 | "@angular/compiler-cli": "4.3.3", 18 | "@angular/core": "4.3.3", 19 | "@angular/forms": "4.3.3", 20 | "@angular/http": "4.3.3", 21 | "@angular/platform-browser": "4.3.3", 22 | "@angular/platform-browser-dynamic": "4.3.3", 23 | "@ionic-native/core": "4.1.0", 24 | "@ionic-native/launch-navigator": "^4.1.0", 25 | "@ionic-native/splash-screen": "4.1.0", 26 | "@ionic-native/status-bar": "4.1.0", 27 | "@ionic/cli-plugin-cordova": "^1.4.0", 28 | "@ionic/storage": "2.0.1", 29 | "cordova-android": "*", 30 | "cordova-ios": "*", 31 | "cordova-plugin-actionsheet": "^2.3.3", 32 | "cordova-plugin-console": "^1.0.7", 33 | "cordova-plugin-device": "^1.1.6", 34 | "cordova-plugin-splashscreen": "^4.0.3", 35 | "cordova-plugin-statusbar": "^2.2.3", 36 | "cordova-plugin-whitelist": "^1.3.2", 37 | "ionic-angular": "3.6.0", 38 | "ionic-plugin-keyboard": "^2.2.1", 39 | "ionicons": "3.0.0", 40 | "rxjs": "5.4.2", 41 | "sw-toolbox": "3.6.0", 42 | "uk.co.workingedge.phonegap.plugin.launchnavigator": "^5.0.0", 43 | "zone.js": "0.8.16" 44 | }, 45 | "devDependencies": { 46 | "@ionic/app-scripts": "2.1.3", 47 | "@ionic/cli-plugin-ionic-angular": "1.4.1", 48 | "ionic": "3.7.0", 49 | "typescript": "2.4.2" 50 | }, 51 | "description": "Sample application that illustrates usage of the LaunchNavigator plugin with Ionic 3 framework", 52 | "cordova": { 53 | "plugins": { 54 | "cordova-plugin-console": {}, 55 | "cordova-plugin-device": {}, 56 | "cordova-plugin-splashscreen": {}, 57 | "cordova-plugin-statusbar": {}, 58 | "cordova-plugin-whitelist": {}, 59 | "ionic-plugin-keyboard": {}, 60 | "uk.co.workingedge.phonegap.plugin.launchnavigator": { 61 | "GOOGLE_API_KEY_FOR_ANDROID": "your_api_key", 62 | "LOCATION_USAGE_DESCRIPTION": "This app requires access to your location for navigation purposes", 63 | "OKHTTP_VERSION": "3.10.0" 64 | } 65 | }, 66 | "platforms": [ 67 | "android", 68 | "ios" 69 | ] 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /IonicExample/hooks/after_prepare/010_add_platform_class.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | // Add Platform Class 4 | // v1.0 5 | // Automatically adds the platform class to the body tag 6 | // after the `prepare` command. By placing the platform CSS classes 7 | // directly in the HTML built for the platform, it speeds up 8 | // rendering the correct layout/style for the specific platform 9 | // instead of waiting for the JS to figure out the correct classes. 10 | 11 | var fs = require('fs'); 12 | var path = require('path'); 13 | 14 | var rootdir = process.argv[2]; 15 | 16 | function addPlatformBodyTag(indexPath, platform) { 17 | // add the platform class to the body tag 18 | try { 19 | var platformClass = 'platform-' + platform; 20 | var cordovaClass = 'platform-cordova platform-webview'; 21 | 22 | var html = fs.readFileSync(indexPath, 'utf8'); 23 | 24 | var bodyTag = findBodyTag(html); 25 | if(!bodyTag) return; // no opening body tag, something's wrong 26 | 27 | if(bodyTag.indexOf(platformClass) > -1) return; // already added 28 | 29 | var newBodyTag = bodyTag; 30 | 31 | var classAttr = findClassAttr(bodyTag); 32 | if(classAttr) { 33 | // body tag has existing class attribute, add the classname 34 | var endingQuote = classAttr.substring(classAttr.length-1); 35 | var newClassAttr = classAttr.substring(0, classAttr.length-1); 36 | newClassAttr += ' ' + platformClass + ' ' + cordovaClass + endingQuote; 37 | newBodyTag = bodyTag.replace(classAttr, newClassAttr); 38 | 39 | } else { 40 | // add class attribute to the body tag 41 | newBodyTag = bodyTag.replace('>', ' class="' + platformClass + ' ' + cordovaClass + '">'); 42 | } 43 | 44 | html = html.replace(bodyTag, newBodyTag); 45 | 46 | fs.writeFileSync(indexPath, html, 'utf8'); 47 | 48 | process.stdout.write('add to body class: ' + platformClass + '\n'); 49 | } catch(e) { 50 | process.stdout.write(e); 51 | } 52 | } 53 | 54 | function findBodyTag(html) { 55 | // get the body tag 56 | try{ 57 | return html.match(/])(.*?)>/gi)[0]; 58 | }catch(e){} 59 | } 60 | 61 | function findClassAttr(bodyTag) { 62 | // get the body tag's class attribute 63 | try{ 64 | return bodyTag.match(/ class=["|'](.*?)["|']/gi)[0]; 65 | }catch(e){} 66 | } 67 | 68 | if (rootdir) { 69 | 70 | // go through each of the platform directories that have been prepared 71 | var platforms = (process.env.CORDOVA_PLATFORMS ? process.env.CORDOVA_PLATFORMS.split(',') : []); 72 | 73 | for(var x=0; x= 10, Chrome >= 55 (including Opera), 12 | * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. 13 | * 14 | * Learn more in https://angular.io/guide/browser-support 15 | */ 16 | 17 | /*************************************************************************************************** 18 | * BROWSER POLYFILLS 19 | */ 20 | 21 | /** IE9, IE10, IE11, and older Chrome requires all of the following polyfills. **/ 22 | // import 'core-js/es6/symbol'; 23 | // import 'core-js/es6/object'; 24 | // import 'core-js/es6/function'; 25 | // import 'core-js/es6/parse-int'; 26 | // import 'core-js/es6/parse-float'; 27 | // import 'core-js/es6/number'; 28 | // import 'core-js/es6/math'; 29 | // import 'core-js/es6/string'; 30 | // import 'core-js/es6/date'; 31 | // import 'core-js/es6/array'; 32 | // import 'core-js/es6/regexp'; 33 | // import 'core-js/es6/map'; 34 | // import 'core-js/es6/weak-map'; 35 | // import 'core-js/es6/set'; 36 | 37 | /** 38 | * If the application will be indexed by Google Search, the following is required. 39 | * Googlebot uses a renderer based on Chrome 41. 40 | * https://developers.google.com/search/docs/guides/rendering 41 | **/ 42 | // import 'core-js/es6/array'; 43 | 44 | /** IE10 and IE11 requires the following for NgClass support on SVG elements */ 45 | // import 'classlist.js'; // Run `npm install --save classlist.js`. 46 | 47 | /** IE10 and IE11 requires the following for the Reflect API. */ 48 | // import 'core-js/es6/reflect'; 49 | 50 | /** 51 | * Web Animations `@angular/platform-browser/animations` 52 | * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. 53 | * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). 54 | **/ 55 | // import 'web-animations-js'; // Run `npm install --save web-animations-js`. 56 | 57 | /** 58 | * By default, zone.js will patch all possible macroTask and DomEvents 59 | * user can disable parts of macroTask/DomEvents patch by setting following flags 60 | * because those flags need to be set before `zone.js` being loaded, and webpack 61 | * will put import in the top of bundle, so user need to create a separate file 62 | * in this directory (for example: zone-flags.ts), and put the following flags 63 | * into that file, and then add the following code before importing zone.js. 64 | * import './zone-flags.ts'; 65 | * 66 | * The flags allowed in zone-flags.ts are listed here. 67 | * 68 | * The following flags will work for all browsers. 69 | * 70 | * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame 71 | * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick 72 | * (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames 73 | * 74 | * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js 75 | * with the following flag, it will bypass `zone.js` patch for IE/Edge 76 | * 77 | * (window as any).__Zone_enable_cross_context_check = true; 78 | * 79 | */ 80 | 81 | /*************************************************************************************************** 82 | * Zone JS is required by default for Angular itself. 83 | */ 84 | import 'zone.js/dist/zone'; // Included with Angular CLI. 85 | 86 | 87 | /*************************************************************************************************** 88 | * APPLICATION IMPORTS 89 | */ 90 | -------------------------------------------------------------------------------- /IonicExample/www/js/app.js: -------------------------------------------------------------------------------- 1 | // Ionic Starter App 2 | 3 | // angular.module is a global place for creating, registering and retrieving Angular modules 4 | // 'starter' is the name of this angular module example (also set in a attribute in index.html) 5 | // the 2nd parameter is an array of 'requires' 6 | angular.module('starter', ['ionic']) 7 | 8 | .run(function ($ionicPlatform) { 9 | $ionicPlatform.ready(function () { 10 | try { 11 | if (window.cordova && window.cordova.plugins.Keyboard) { 12 | 13 | // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard 14 | // for form inputs) 15 | cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 16 | 17 | // Don't remove this line unless you know what you are doing. It stops the viewport 18 | // from snapping when text inputs are focused. Ionic handles this internally for 19 | // a much nicer keyboard experience. 20 | cordova.plugins.Keyboard.disableScroll(true); 21 | } 22 | if (window.StatusBar) { 23 | StatusBar.styleDefault(); 24 | } 25 | }catch(e){/*discard*/} 26 | }); 27 | }) 28 | 29 | // Define an Angular service to wrap the plugin 30 | .service('$cordovaLaunchNavigator', ['$q', function ($q) { 31 | "use strict"; 32 | 33 | var $cordovaLaunchNavigator = {}; 34 | $cordovaLaunchNavigator.navigate = function (destination, options) { 35 | var q = $q.defer(), 36 | isRealDevice = ionic.Platform.isWebView(); 37 | 38 | if (!isRealDevice) { 39 | q.reject("launchnavigator will only work on a real mobile device! It is a NATIVE app launcher."); 40 | } else { 41 | try { 42 | 43 | var successFn = options.successCallBack || function () { 44 | }, 45 | errorFn = options.errorCallback || function () { 46 | }, 47 | _successFn = function () { 48 | successFn(); 49 | q.resolve(); 50 | }, 51 | _errorFn = function (err) { 52 | errorFn(err); 53 | q.reject(err); 54 | }; 55 | 56 | options.successCallBack = _successFn; 57 | options.errorCallback = _errorFn; 58 | 59 | launchnavigator.navigate(destination, options); 60 | } catch (e) { 61 | q.reject("Exception: " + e.message); 62 | } 63 | } 64 | return q.promise; 65 | }; 66 | 67 | return $cordovaLaunchNavigator; 68 | }]) 69 | 70 | // Define a controller to use the promised service 71 | .controller('mainController', function ($scope, $cordovaLaunchNavigator) { 72 | $scope.formData = { 73 | dest: "Westminster, London, UK" 74 | }; 75 | 76 | $scope.$watch('formData', function (formData) { 77 | if(formData.start != "custom" || formData.custom_start){ 78 | $('#start .custom input').removeClass('error'); 79 | } 80 | if(formData.dest != "custom" || formData.custom_dest){ 81 | $('#dest .custom input').removeClass('error'); 82 | } 83 | }, true); 84 | 85 | $scope.navigate = function () { 86 | 87 | // Validate 88 | if($scope.formData.start == "custom" && !$scope.formData.custom_start){ 89 | $('#start .custom input').addClass('error'); 90 | return; 91 | } 92 | 93 | if($scope.formData.dest == "custom" && !$scope.formData.custom_dest){ 94 | $('#dest .custom input').addClass('error'); 95 | return; 96 | } 97 | 98 | var start = $scope.formData.start == "custom" ? $scope.formData.custom_start : $scope.formData.start, 99 | dest = $scope.formData.dest == "custom" ? $scope.formData.custom_dest : $scope.formData.dest; 100 | 101 | $cordovaLaunchNavigator.navigate(dest, { 102 | start: start, 103 | enableDebug: true 104 | }).then(function () { 105 | alert("Navigator launched"); 106 | }, function (err) { 107 | alert(err); 108 | }); 109 | }; 110 | 111 | }); 112 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Cordova/Phonegap Launch Navigator Example 2 | ========================================= 3 | 4 | This repo contains example projects illustrating how to use the [Launch Navigator plugin](https://github.com/dpa99c/phonegap-launch-navigator) to launch native navigation apps on iOS, Android, and Windows to get driving directions to a desired location. 5 | 6 | 7 | 8 | **Table of Contents** 9 | 10 | - [Cordova/Phonegap Launch Navigator Example](#cordovaphonegap-launch-navigator-example) 11 | - [Projects](#projects) 12 | - [Building and running](#building-and-running) 13 | - [SimpleExample and AdvancedExample](#simpleexample-and-advancedexample) 14 | - [IonicExample, Ionic2Example, Ionic3Example](#ionicexample-ionic2example-ionic3example) 15 | - [Supported platforms](#supported-platforms) 16 | - [Credits](#credits) 17 | - [License](#license) 18 | 19 | 20 | 21 | # Downloading 22 | 23 | To download the example, clone the repo using git: 24 | 25 | $ git clone https://github.com/dpa99c/phonegap-launch-navigator-example.git 26 | 27 | # Projects 28 | 29 | The repo contains the following example projects in sub-directories: 30 | 31 | - SimpleExample - a basic (pure HTML5) example showing how the plugin can be invoked to navigate to a specified destination, with an optionally specified start location. 32 | - AdvancedExample - a more complex (pure HTML5) example which shows how the plugin can be used to launch specific navigation apps and how their input parameters can be tailored. 33 | - IonicExample - a basic example using Ionic 1 framework / Angular 1 34 | - Ionic2Example - a basic example using Ionic 2 framework / Angular 2 35 | - Ionic3Example - a basic example using Ionic 3 framework / Angular 4 36 | - Ionic4Example - a basic example using Ionic 4 framework / Angular 7 37 | 38 | # Building and running 39 | 40 | The plugin is intended to launch **native** navigation apps and therefore will only work on native mobile platforms (i.e. Android/iOS/Windows). 41 | Note that the plugin will **NOT** work in a browser-emulated Cordova environment, for example by running `ionic serve` or using the [Ripple emulator](https://github.com/ripple-emulator/ripple). 42 | 43 | To build and run any of the projects, first open a terminal window and change to the project directory, for example: 44 | 45 | $ cd SimpleExample 46 | 47 | ## SimpleExample and AdvancedExample 48 | 49 | Add a platform, for example Android: 50 | 51 | $ cordova platform add android 52 | 53 | Then build and run the project. The plugins dependencies will be satisfied automatically. For example: 54 | 55 | $ cordova run android 56 | 57 | ## IonicExample, Ionic2Example, Ionic3Example 58 | 59 | Since these are ionic-based projects, first install node module dependencies 60 | 61 | $ npm install 62 | 63 | Add a platform, for example Android: 64 | 65 | $ ionic cordova platform add android 66 | 67 | Then build and run the project, for example 68 | 69 | $ ionic cordova run android 70 | 71 | # Supported platforms 72 | 73 | The example projects will run on Android, iOS, Windows Universal (8.1/10) and Windows Phone 8 (8.0/8.1) 74 | 75 | 76 | # Credits 77 | 78 | Thanks to [opadro](https://github.com/opadro) for Windows platform example 79 | 80 | License 81 | ================ 82 | 83 | The MIT License 84 | 85 | Copyright (c) 2016 Dave Alden / Working Edge Ltd. 86 | 87 | Permission is hereby granted, free of charge, to any person obtaining a copy 88 | of this software and associated documentation files (the "Software"), to deal 89 | in the Software without restriction, including without limitation the rights 90 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 91 | copies of the Software, and to permit persons to whom the Software is 92 | furnished to do so, subject to the following conditions: 93 | 94 | The above copyright notice and this permission notice shall be included in 95 | all copies or substantial portions of the Software. 96 | 97 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 98 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 99 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 100 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 101 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 102 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 103 | THE SOFTWARE. -------------------------------------------------------------------------------- /IonicExample/hooks/README.md: -------------------------------------------------------------------------------- 1 | 2 | **Table of Contents** 3 | 4 | - [Licensed to the Apache Software Foundation (ASF) under one](#licensed-to-the-apache-software-foundation-asf-under-one) 5 | - [or more contributor license agreements. See the NOTICE file](#or-more-contributor-license-agreements--see-the-notice-file) 6 | - [distributed with this work for additional information](#distributed-with-this-work-for-additional-information) 7 | - [regarding copyright ownership. The ASF licenses this file](#regarding-copyright-ownership--the-asf-licenses-this-file) 8 | - [to you under the Apache License, Version 2.0 (the](#to-you-under-the-apache-license-version-20-the) 9 | - ["License"); you may not use this file except in compliance](#license-you-may-not-use-this-file-except-in-compliance) 10 | - [with the License. You may obtain a copy of the License at](#with-the-license--you-may-obtain-a-copy-of-the-license-at) 11 | - [http://www.apache.org/licenses/LICENSE-2.0](#httpwwwapacheorglicenseslicense-20) 12 | - [Unless required by applicable law or agreed to in writing,](#unless-required-by-applicable-law-or-agreed-to-in-writing) 13 | - [software distributed under the License is distributed on an](#software-distributed-under-the-license-is-distributed-on-an) 14 | - ["AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY](#as-is-basis-without-warranties-or-conditions-of-any) 15 | - [KIND, either express or implied. See the License for the](#kind-either-express-or-implied--see-the-license-for-the) 16 | - [specific language governing permissions and limitations](#specific-language-governing-permissions-and-limitations) 17 | - [under the License.](#under-the-license) 18 | - [Cordova Hooks](#cordova-hooks) 19 | - [Hook Directories](#hook-directories) 20 | - [Script Interface](#script-interface) 21 | - [Writing hooks](#writing-hooks) 22 | 23 | 24 | 25 | 45 | # Cordova Hooks 46 | 47 | This directory may contain scripts used to customize cordova commands. This 48 | directory used to exist at `.cordova/hooks`, but has now been moved to the 49 | project root. Any scripts you add to these directories will be executed before 50 | and after the commands corresponding to the directory name. Useful for 51 | integrating your own build systems or integrating with version control systems. 52 | 53 | __Remember__: Make your scripts executable. 54 | 55 | ## Hook Directories 56 | The following subdirectories will be used for hooks: 57 | 58 | after_build/ 59 | after_compile/ 60 | after_docs/ 61 | after_emulate/ 62 | after_platform_add/ 63 | after_platform_rm/ 64 | after_platform_ls/ 65 | after_plugin_add/ 66 | after_plugin_ls/ 67 | after_plugin_rm/ 68 | after_plugin_search/ 69 | after_prepare/ 70 | after_run/ 71 | after_serve/ 72 | before_build/ 73 | before_compile/ 74 | before_docs/ 75 | before_emulate/ 76 | before_platform_add/ 77 | before_platform_rm/ 78 | before_platform_ls/ 79 | before_plugin_add/ 80 | before_plugin_ls/ 81 | before_plugin_rm/ 82 | before_plugin_search/ 83 | before_prepare/ 84 | before_run/ 85 | before_serve/ 86 | pre_package/ <-- Windows 8 and Windows Phone only. 87 | 88 | ## Script Interface 89 | 90 | All scripts are run from the project's root directory and have the root directory passes as the first argument. All other options are passed to the script using environment variables: 91 | 92 | * CORDOVA_VERSION - The version of the Cordova-CLI. 93 | * CORDOVA_PLATFORMS - Comma separated list of platforms that the command applies to (e.g.: android, ios). 94 | * CORDOVA_PLUGINS - Comma separated list of plugin IDs that the command applies to (e.g.: org.apache.cordova.file, org.apache.cordova.file-transfer) 95 | * CORDOVA_HOOK - Path to the hook that is being executed. 96 | * CORDOVA_CMDLINE - The exact command-line arguments passed to cordova (e.g.: cordova run ios --emulate) 97 | 98 | If a script returns a non-zero exit code, then the parent cordova command will be aborted. 99 | 100 | 101 | ## Writing hooks 102 | 103 | We highly recommend writting your hooks using Node.js so that they are 104 | cross-platform. Some good examples are shown here: 105 | 106 | [http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/](http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/) 107 | 108 | -------------------------------------------------------------------------------- /IonicExample/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | Launch Navigator Ionic Example 10 | 11 | Sample application that illustrates usage of the LaunchNavigator plugin with Ionic framework. 12 | 13 | 14 | Dave Alden 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 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | -------------------------------------------------------------------------------- /Ionic4Example/angular.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "./node_modules/@angular-devkit/core/src/workspace/workspace-schema.json", 3 | "version": 1, 4 | "defaultProject": "app", 5 | "newProjectRoot": "projects", 6 | "projects": { 7 | "app": { 8 | "root": "", 9 | "sourceRoot": "src", 10 | "projectType": "application", 11 | "prefix": "app", 12 | "schematics": {}, 13 | "architect": { 14 | "build": { 15 | "builder": "@angular-devkit/build-angular:browser", 16 | "options": { 17 | "outputPath": "www", 18 | "index": "src/index.html", 19 | "main": "src/main.ts", 20 | "polyfills": "src/polyfills.ts", 21 | "tsConfig": "src/tsconfig.app.json", 22 | "assets": [ 23 | { 24 | "glob": "**/*", 25 | "input": "src/assets", 26 | "output": "assets" 27 | }, 28 | { 29 | "glob": "**/*.svg", 30 | "input": "node_modules/ionicons/dist/ionicons/svg", 31 | "output": "./svg" 32 | } 33 | ], 34 | "styles": [ 35 | { 36 | "input": "src/theme/variables.scss" 37 | }, 38 | { 39 | "input": "src/global.scss" 40 | } 41 | ], 42 | "scripts": [] 43 | }, 44 | "configurations": { 45 | "production": { 46 | "fileReplacements": [ 47 | { 48 | "replace": "src/environments/environment.ts", 49 | "with": "src/environments/environment.prod.ts" 50 | } 51 | ], 52 | "optimization": true, 53 | "outputHashing": "all", 54 | "sourceMap": false, 55 | "extractCss": true, 56 | "namedChunks": false, 57 | "aot": true, 58 | "extractLicenses": true, 59 | "vendorChunk": false, 60 | "buildOptimizer": true, 61 | "budgets": [ 62 | { 63 | "type": "initial", 64 | "maximumWarning": "2mb", 65 | "maximumError": "5mb" 66 | } 67 | ] 68 | }, 69 | "ci": { 70 | "progress": false 71 | } 72 | } 73 | }, 74 | "serve": { 75 | "builder": "@angular-devkit/build-angular:dev-server", 76 | "options": { 77 | "browserTarget": "app:build" 78 | }, 79 | "configurations": { 80 | "production": { 81 | "browserTarget": "app:build:production" 82 | }, 83 | "ci": { 84 | "progress": false 85 | } 86 | } 87 | }, 88 | "extract-i18n": { 89 | "builder": "@angular-devkit/build-angular:extract-i18n", 90 | "options": { 91 | "browserTarget": "app:build" 92 | } 93 | }, 94 | "test": { 95 | "builder": "@angular-devkit/build-angular:karma", 96 | "options": { 97 | "main": "src/test.ts", 98 | "polyfills": "src/polyfills.ts", 99 | "tsConfig": "src/tsconfig.spec.json", 100 | "karmaConfig": "src/karma.conf.js", 101 | "styles": [], 102 | "scripts": [], 103 | "assets": [ 104 | { 105 | "glob": "favicon.ico", 106 | "input": "src/", 107 | "output": "/" 108 | }, 109 | { 110 | "glob": "**/*", 111 | "input": "src/assets", 112 | "output": "/assets" 113 | } 114 | ] 115 | }, 116 | "configurations": { 117 | "ci": { 118 | "progress": false, 119 | "watch": false 120 | } 121 | } 122 | }, 123 | "lint": { 124 | "builder": "@angular-devkit/build-angular:tslint", 125 | "options": { 126 | "tsConfig": ["src/tsconfig.app.json", "src/tsconfig.spec.json"], 127 | "exclude": ["**/node_modules/**"] 128 | } 129 | }, 130 | "ionic-cordova-build": { 131 | "builder": "@ionic/angular-toolkit:cordova-build", 132 | "options": { 133 | "browserTarget": "app:build" 134 | }, 135 | "configurations": { 136 | "production": { 137 | "browserTarget": "app:build:production" 138 | } 139 | } 140 | }, 141 | "ionic-cordova-serve": { 142 | "builder": "@ionic/angular-toolkit:cordova-serve", 143 | "options": { 144 | "cordovaBuildTarget": "app:ionic-cordova-build", 145 | "devServerTarget": "app:serve" 146 | }, 147 | "configurations": { 148 | "production": { 149 | "cordovaBuildTarget": "app:ionic-cordova-build:production", 150 | "devServerTarget": "app:serve:production" 151 | } 152 | } 153 | } 154 | } 155 | }, 156 | "app-e2e": { 157 | "root": "e2e/", 158 | "projectType": "application", 159 | "architect": { 160 | "e2e": { 161 | "builder": "@angular-devkit/build-angular:protractor", 162 | "options": { 163 | "protractorConfig": "e2e/protractor.conf.js", 164 | "devServerTarget": "app:serve" 165 | }, 166 | "configurations": { 167 | "ci": { 168 | "devServerTarget": "app:serve:ci" 169 | } 170 | } 171 | }, 172 | "lint": { 173 | "builder": "@angular-devkit/build-angular:tslint", 174 | "options": { 175 | "tsConfig": "e2e/tsconfig.e2e.json", 176 | "exclude": ["**/node_modules/**"] 177 | } 178 | } 179 | } 180 | } 181 | }, 182 | "cli": { 183 | "defaultCollection": "@ionic/angular-toolkit" 184 | }, 185 | "schematics": { 186 | "@ionic/angular-toolkit:component": { 187 | "styleext": "scss" 188 | }, 189 | "@ionic/angular-toolkit:page": { 190 | "styleext": "scss" 191 | } 192 | } 193 | } 194 | -------------------------------------------------------------------------------- /Ionic4Example/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | MyApp 4 | An awesome Ionic/Cordova app. 5 | Ionic Framework Team 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 | 85 | 86 | 87 | 88 | 89 | 90 | -------------------------------------------------------------------------------- /Ionic3Example/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LaunchNavigator Ionic 3 Example 4 | Sample application that illustrates usage of the LaunchNavigator plugin with Ionic 3 framework 5 | Dave Alden 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 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | -------------------------------------------------------------------------------- /AdvancedExample/www/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |

Launch Navigator - Advanced Example

12 | 13 |
14 |
15 | 16 | 17 |
18 | 19 |
20 | 21 |
22 | 23 |
24 |
25 | 26 | 30 |
31 |
32 | 33 | 55 |
56 |
57 | 58 | 59 |
60 |
61 | 62 |
63 |
64 | 65 | 70 |
71 |
72 | 73 | 95 |
96 |
97 | 98 | 99 |
100 |
101 | 102 |
103 | 104 | 105 |
106 | 107 |
108 | 109 | 110 |
111 | 112 |
113 | 114 | 115 |
116 | 117 |
118 | 119 | 124 |
125 | 126 |
127 | 128 | 132 |
133 | 134 |
135 | 136 | 137 |

Enter in querystring format: a=b&c=d

138 |
139 | 140 |
141 |

User app preference

142 |

Preferred app:

143 |

Asked to remember?:

144 | 145 |
146 | 147 | 152 |
153 | 154 |
155 |
156 | 157 |
158 |
159 | 160 |
161 |
162 |
163 | 164 |
165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | -------------------------------------------------------------------------------- /IonicExample/merges/windows/winstore-jscompat.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. 2 | // JavaScript Dynamic Content shim for Windows Store apps 3 | (function () { 4 | 5 | if (window.MSApp && MSApp.execUnsafeLocalFunction) { 6 | 7 | // Some nodes will have an "attributes" property which shadows the Node.prototype.attributes property 8 | // and means we don't actually see the attributes of the Node (interestingly the VS debug console 9 | // appears to suffer from the same issue). 10 | // 11 | var Element_setAttribute = Object.getOwnPropertyDescriptor(Element.prototype, "setAttribute").value; 12 | var Element_removeAttribute = Object.getOwnPropertyDescriptor(Element.prototype, "removeAttribute").value; 13 | var HTMLElement_insertAdjacentHTMLPropertyDescriptor = Object.getOwnPropertyDescriptor(HTMLElement.prototype, "insertAdjacentHTML"); 14 | var Node_get_attributes = Object.getOwnPropertyDescriptor(Node.prototype, "attributes").get; 15 | var Node_get_childNodes = Object.getOwnPropertyDescriptor(Node.prototype, "childNodes").get; 16 | var detectionDiv = document.createElement("div"); 17 | 18 | function getAttributes(element) { 19 | return Node_get_attributes.call(element); 20 | } 21 | 22 | function setAttribute(element, attribute, value) { 23 | try { 24 | Element_setAttribute.call(element, attribute, value); 25 | } catch (e) { 26 | // ignore 27 | } 28 | } 29 | 30 | function removeAttribute(element, attribute) { 31 | Element_removeAttribute.call(element, attribute); 32 | } 33 | 34 | function childNodes(element) { 35 | return Node_get_childNodes.call(element); 36 | } 37 | 38 | function empty(element) { 39 | while (element.childNodes.length) { 40 | element.removeChild(element.lastChild); 41 | } 42 | } 43 | 44 | function insertAdjacentHTML(element, position, html) { 45 | HTMLElement_insertAdjacentHTMLPropertyDescriptor.value.call(element, position, html); 46 | } 47 | 48 | function inUnsafeMode() { 49 | var isUnsafe = true; 50 | try { 51 | detectionDiv.innerHTML = ""; 52 | } 53 | catch (ex) { 54 | isUnsafe = false; 55 | } 56 | 57 | return isUnsafe; 58 | } 59 | 60 | function cleanse(html, targetElement) { 61 | var cleaner = document.implementation.createHTMLDocument("cleaner"); 62 | empty(cleaner.documentElement); 63 | MSApp.execUnsafeLocalFunction(function () { 64 | insertAdjacentHTML(cleaner.documentElement, "afterbegin", html); 65 | }); 66 | 67 | var scripts = cleaner.documentElement.querySelectorAll("script"); 68 | Array.prototype.forEach.call(scripts, function (script) { 69 | switch (script.type.toLowerCase()) { 70 | case "": 71 | script.type = "text/inert"; 72 | break; 73 | case "text/javascript": 74 | case "text/ecmascript": 75 | case "text/x-javascript": 76 | case "text/jscript": 77 | case "text/livescript": 78 | case "text/javascript1.1": 79 | case "text/javascript1.2": 80 | case "text/javascript1.3": 81 | script.type = "text/inert-" + script.type.slice("text/".length); 82 | break; 83 | case "application/javascript": 84 | case "application/ecmascript": 85 | case "application/x-javascript": 86 | script.type = "application/inert-" + script.type.slice("application/".length); 87 | break; 88 | 89 | default: 90 | break; 91 | } 92 | }); 93 | 94 | function cleanseAttributes(element) { 95 | var attributes = getAttributes(element); 96 | if (attributes && attributes.length) { 97 | // because the attributes collection is live it is simpler to queue up the renames 98 | var events; 99 | for (var i = 0, len = attributes.length; i < len; i++) { 100 | var attribute = attributes[i]; 101 | var name = attribute.name; 102 | if ((name[0] === "o" || name[0] === "O") && 103 | (name[1] === "n" || name[1] === "N")) { 104 | events = events || []; 105 | events.push({ name: attribute.name, value: attribute.value }); 106 | } 107 | } 108 | if (events) { 109 | for (var i = 0, len = events.length; i < len; i++) { 110 | var attribute = events[i]; 111 | removeAttribute(element, attribute.name); 112 | setAttribute(element, "x-" + attribute.name, attribute.value); 113 | } 114 | } 115 | } 116 | var children = childNodes(element); 117 | for (var i = 0, len = children.length; i < len; i++) { 118 | cleanseAttributes(children[i]); 119 | } 120 | } 121 | cleanseAttributes(cleaner.documentElement); 122 | 123 | var cleanedNodes = []; 124 | 125 | if (targetElement.tagName === 'HTML') { 126 | cleanedNodes = Array.prototype.slice.call(document.adoptNode(cleaner.documentElement).childNodes); 127 | } else { 128 | if (cleaner.head) { 129 | cleanedNodes = cleanedNodes.concat(Array.prototype.slice.call(document.adoptNode(cleaner.head).childNodes)); 130 | } 131 | if (cleaner.body) { 132 | cleanedNodes = cleanedNodes.concat(Array.prototype.slice.call(document.adoptNode(cleaner.body).childNodes)); 133 | } 134 | } 135 | 136 | return cleanedNodes; 137 | } 138 | 139 | function cleansePropertySetter(property, setter) { 140 | var propertyDescriptor = Object.getOwnPropertyDescriptor(HTMLElement.prototype, property); 141 | var originalSetter = propertyDescriptor.set; 142 | Object.defineProperty(HTMLElement.prototype, property, { 143 | get: propertyDescriptor.get, 144 | set: function (value) { 145 | if(window.WinJS && window.WinJS._execUnsafe && inUnsafeMode()) { 146 | originalSetter.call(this, value); 147 | } else { 148 | var that = this; 149 | var nodes = cleanse(value, that); 150 | MSApp.execUnsafeLocalFunction(function () { 151 | setter(propertyDescriptor, that, nodes); 152 | }); 153 | } 154 | }, 155 | enumerable: propertyDescriptor.enumerable, 156 | configurable: propertyDescriptor.configurable, 157 | }); 158 | } 159 | cleansePropertySetter("innerHTML", function (propertyDescriptor, target, elements) { 160 | empty(target); 161 | for (var i = 0, len = elements.length; i < len; i++) { 162 | target.appendChild(elements[i]); 163 | } 164 | }); 165 | cleansePropertySetter("outerHTML", function (propertyDescriptor, target, elements) { 166 | for (var i = 0, len = elements.length; i < len; i++) { 167 | target.insertAdjacentElement("afterend", elements[i]); 168 | } 169 | target.parentNode.removeChild(target); 170 | }); 171 | 172 | } 173 | 174 | }()); -------------------------------------------------------------------------------- /AdvancedExample/www/index.js: -------------------------------------------------------------------------------- 1 | var ln, platform, 2 | $form, $select_app, $select_transport_mode, $select_launch_mode, 3 | $select_dest_type, $select_dest, $input_dest_name, 4 | $select_start_type, $select_start, $input_start_name, 5 | $select_selectable_apps; 6 | 7 | function onSuccess(){ 8 | navigator.notification.alert("Successfully launched navigator"); 9 | } 10 | 11 | function onError(errMsg){ 12 | console.error(errMsg); 13 | navigator.notification.alert(errMsg, null, "Error"); 14 | } 15 | 16 | function updateUI(){ 17 | var app = $select_app.val(), 18 | launchMode = $select_launch_mode.val(), 19 | startType = $select_start_type.val(), 20 | destType = $select_dest_type.val(), 21 | transportMode = $select_transport_mode.val(); 22 | 23 | // Set transport modes 24 | $select_transport_mode.empty(); 25 | if(ln.supportsTransportMode(app, platform, launchMode)){ 26 | $select_transport_mode.prop('disabled', false); 27 | $('#transport-mode').toggleClass('disabled', false); 28 | var transportModes = ln.getTransportModes(app, platform, launchMode); 29 | transportModes.forEach(function(_transportMode){ 30 | var opt = $(''); 31 | $select_transport_mode.append(opt); 32 | if(_transportMode == transportMode){ 33 | opt.attr("selected", "selected"); 34 | } 35 | }); 36 | 37 | }else{ 38 | $select_transport_mode.prop('disabled', true); 39 | $('#transport-mode').toggleClass('disabled', true); 40 | } 41 | 42 | // set launch mode availability 43 | $select_launch_mode.prop('disabled', !ln.supportsLaunchMode(app, platform)); 44 | if(platform == "android") { 45 | $('#google-maps-launch-mode').toggleClass('disabled', !ln.supportsLaunchMode(app, platform)); 46 | } 47 | if(platform == "ios") { 48 | $('#apple-maps-launch-mode').toggleClass('disabled', !ln.supportsLaunchMode(app, platform)); 49 | } 50 | 51 | var supportsStart = ln.supportsStart(app, platform, launchMode); 52 | $('#start').toggleClass('disabled', !supportsStart); 53 | $select_start.prop('disabled', !supportsStart); 54 | $select_start_type.prop('disabled', !supportsStart); 55 | 56 | $input_start_name.prop('disabled', !supportsStart || !ln.supportsStartName(app, platform, launchMode) || startType == 'none'); 57 | $('#start .name').toggleClass('disabled', !supportsStart || !ln.supportsStartName(app, platform, launchMode)); 58 | 59 | $input_dest_name.prop('disabled', !ln.supportsDestName(app, platform, launchMode)); 60 | $('#dest .name').toggleClass('disabled', !ln.supportsDestName(app, platform, launchMode)); 61 | 62 | // Set start/dest types 63 | $('#start .location').toggleClass('disabled', startType == 'none'); 64 | $select_start.prop('disabled', startType == 'none'); 65 | 66 | $select_start.find('option.name').prop('disabled', startType == "coord"); 67 | $select_start.find('option.coord').prop('disabled', startType == "name"); 68 | $select_start.find('option').each(function(){ 69 | var option = $(this); 70 | if(!option.prop("disabled")){ 71 | option.prop("selected", true); 72 | return false; 73 | } 74 | }); 75 | 76 | $select_dest.find('option.name').prop('disabled', destType == "coord"); 77 | $select_dest.find('option.coord').prop('disabled', destType == "name"); 78 | $select_dest.find('option').each(function(){ 79 | var option = $(this); 80 | if(!option.prop("disabled")){ 81 | option.prop("selected", true); 82 | return false; 83 | } 84 | }); 85 | 86 | // Set start/dest types 87 | $('#selectable-apps').toggleClass('disabled', app != ln.APP.USER_SELECT); 88 | $select_selectable_apps.prop('disabled', app != ln.APP.USER_SELECT); 89 | 90 | 91 | $('#user-app-preference').toggleClass('disabled', app != ln.APP.USER_SELECT); 92 | 93 | //Check if user has preferred app 94 | ln.appSelection.userChoice.get(function(app){ 95 | $('#clearAppPreference') 96 | .toggleClass('disabled', !app) 97 | .prop('disabled', !app); 98 | 99 | $('#preferred-app span').text(app ? ln.getAppDisplayName(app) : "[None]"); 100 | }); 101 | 102 | //Check if user has been asked whether to remember preference 103 | ln.appSelection.userPrompted.get(function(hasBeenPrompted){ 104 | $('#resetUserPrompt') 105 | .toggleClass('disabled', !hasBeenPrompted) 106 | .prop('disabled', !hasBeenPrompted); 107 | 108 | $('#user-prompted span').text(hasBeenPrompted ? "Yes" : "No"); 109 | }); 110 | } 111 | 112 | function navigate(){ 113 | var values = {}; 114 | $.each($('#form').serializeArray(), function(i, field) { 115 | values[field.name] = field.value; 116 | }); 117 | 118 | var opts = { 119 | successCallback: function(){ 120 | console.info("Launched navigator app"); 121 | }, 122 | errorCallback: function(err){ 123 | onError("Error launching navigator app: "+err); 124 | }, 125 | app: values["app"], 126 | destinationName: values["dest-name"], 127 | start: values["start"], 128 | startName: values["start-name"], 129 | transportMode: values["transport-mode"], 130 | extras: parseExtras(values["extras"]), 131 | appSelection:{ 132 | dialogHeaderText: "Custom header", 133 | cancelButtonText: "Custom cancel text", 134 | list: getSelectableApps(), 135 | callback: function(app){ 136 | console.info("User selected app: "+app); 137 | }, 138 | rememberChoice: { 139 | enabled: values["should-remember-choice"] 140 | } 141 | }, 142 | enableGeocoding: values["enable-geocoding"] === "on" 143 | }; 144 | if(platform === "android"){ 145 | opts.launchModeGoogleMaps = values["google-maps-launch-mode"]; 146 | } 147 | if(platform === "ios"){ 148 | opts.launchModeAppleMaps = values["apple-maps-launch-mode"]; 149 | } 150 | 151 | ln.navigate(values["dest"], opts); 152 | } 153 | 154 | function init() { 155 | $(document).on("resume", updateUI); 156 | 157 | ln = launchnavigator; 158 | ln.enableDebug(true, function(){ 159 | console.log("Debug mode enabled"); 160 | }, function(error){ 161 | console.error("Error enabling debug mode: "+error); 162 | }); 163 | 164 | platform = device.platform.toLowerCase(); 165 | if(platform == "android"){ 166 | platform = ln.PLATFORM.ANDROID; 167 | }else if(platform == "ios"){ 168 | platform = ln.PLATFORM.IOS; 169 | }else if(platform.match(/win/)){ 170 | platform = ln.PLATFORM.WINDOWS; 171 | } 172 | $('body').addClass(platform); 173 | 174 | // Get DOM refs 175 | $form = $('#form'); 176 | $select_app = $('#app select'); 177 | $select_transport_mode = $('#transport-mode select'); 178 | if(platform == "android"){ 179 | $select_launch_mode = $('#google-maps-launch-mode select'); 180 | } 181 | if(platform == "ios"){ 182 | $select_launch_mode = $('#apple-maps-launch-mode select'); 183 | } 184 | $select_dest_type = $('#dest .type select'); 185 | $select_dest = $('#dest .location select'); 186 | $input_dest_name = $('#dest .name input'); 187 | $select_start_type = $('#start .type select'); 188 | $select_start = $('#start .location select'); 189 | $input_start_name = $('#start .name input'); 190 | $select_selectable_apps = $('#selectable-apps select'); 191 | 192 | // Populate apps for this platform 193 | ln.getAppsForPlatform(platform).forEach(function(app){ 194 | $select_app.append($('')); 195 | if(app != ln.APP.USER_SELECT){ 196 | $select_selectable_apps.append($('')); 197 | } 198 | }); 199 | 200 | // disable those that are not available 201 | var onAvailableError = function(errMsg){ 202 | onError("Error checking installed apps: "+errMsg); 203 | }; 204 | ln.availableApps(function(results){ 205 | for(var app in results){ 206 | ln.isAppAvailable(app, function(app, available){ 207 | if(!available){ 208 | $select_app.find('option[value="'+app+'"]') 209 | .prop('disabled', true) 210 | .addClass('disabled'); 211 | } 212 | }.bind(this, app), onAvailableError); 213 | } 214 | },onAvailableError); 215 | 216 | // Set change handlers 217 | $select_app.change(updateUI); 218 | $select_transport_mode.change(updateUI); 219 | $select_dest_type.change(updateUI); 220 | $select_start_type.change(updateUI); 221 | $select_launch_mode.change(updateUI); 222 | $form.submit(function(e){ 223 | e.preventDefault(); 224 | return false; 225 | }); 226 | $('#navigate').click(navigate); 227 | 228 | $('#clearAppPreference').click(function(){ 229 | ln.appSelection.userChoice.clear(updateUI); 230 | }); 231 | 232 | $('#resetUserPrompt').click(function(){ 233 | ln.appSelection.userPrompted.clear(updateUI); 234 | }); 235 | 236 | // Refresh UI 237 | updateUI(); 238 | } 239 | 240 | function parseExtras(sExtras){ 241 | if(!sExtras) return null; 242 | 243 | try{ 244 | var oExtras = {}; 245 | sExtras = sExtras.replace(';','&'); 246 | var params = sExtras.split('&'); 247 | for(var i=0; i