328 lines
11 KiB
TypeScript
Raw Normal View History

import { initAngular1 } from './ng1';
2015-12-01 13:33:08 -06:00
2015-11-29 16:30:15 -06:00
const DEVICE_READY_TIMEOUT = 2000;
2015-12-01 13:33:08 -06:00
declare var window;
import { ActionSheet } from './plugins/actionsheet';
import { AdMob } from './plugins/admob';
import { AndroidFingerprintAuth } from './plugins/android-fingerprint-auth';
import { AppAvailability } from './plugins/appavailability';
import { AppRate } from './plugins/apprate';
import { AppVersion } from './plugins/appversion';
import { Badge } from './plugins/badge';
import { BackgroundGeolocation } from './plugins/background-geolocation';
import { BackgroundMode } from './plugins/backgroundmode';
import { BarcodeScanner } from './plugins/barcodescanner';
import { Base64ToGallery } from './plugins/base64togallery';
import { BatteryStatus } from './plugins/batterystatus';
import { Brightness } from './plugins/brightness';
import { BLE } from './plugins/ble';
import { BluetoothSerial } from './plugins/bluetoothserial';
import { Calendar } from './plugins/calendar';
import { CallNumber } from './plugins/call-number';
import { Camera } from './plugins/camera';
import { CameraPreview } from './plugins/camera-preview';
import { CardIO } from './plugins/card-io';
import { Clipboard } from './plugins/clipboard';
import { CodePush } from './plugins/code-push';
import { Contacts } from './plugins/contacts';
import { Crop } from './plugins/crop';
import { DatePicker } from './plugins/datepicker';
import { DBMeter } from './plugins/dbmeter';
import { Deeplinks } from './plugins/deeplinks';
import { Device } from './plugins/device';
import { DeviceAccounts } from './plugins/deviceaccounts';
import { DeviceMotion } from './plugins/devicemotion';
import { DeviceOrientation } from './plugins/deviceorientation';
import { Diagnostic } from './plugins/diagnostic';
import { Dialogs } from './plugins/dialogs';
import { EmailComposer } from './plugins/emailcomposer';
2016-08-26 07:53:18 -04:00
import { EstimoteBeacons } from './plugins/estimote-beacons';
import { Facebook } from './plugins/facebook';
import { File } from './plugins/file';
import { Transfer } from './plugins/filetransfer';
import { Flashlight } from './plugins/flashlight';
import { Geofence } from './plugins/geofence';
import { Geolocation } from './plugins/geolocation';
import { Globalization } from './plugins/globalization';
import { GooglePlus } from './plugins/google-plus';
import { GoogleMap } from './plugins/googlemaps';
import { GoogleAnalytics } from './plugins/googleanalytics';
import { Hotspot } from './plugins/hotspot';
import { Httpd } from './plugins/httpd';
import { IBeacon } from './plugins/ibeacon';
import { ImagePicker } from './plugins/imagepicker';
import { ImageResizer } from './plugins/imageresizer';
import { InAppBrowser } from './plugins/inappbrowser';
import { InAppPurchase } from './plugins/inapppurchase';
import { Insomnia } from './plugins/insomnia';
import { Instagram } from './plugins/instagram';
import { IsDebug } from './plugins/is-debug';
import { Keyboard } from './plugins/keyboard';
import { LaunchNavigator } from './plugins/launchnavigator';
import { LocalNotifications } from './plugins/localnotifications';
import { MediaCapture } from './plugins/media-capture';
import { NativeAudio } from './plugins/native-audio';
import { NativePageTransitions } from './plugins/native-page-transitions';
import { NativeStorage } from './plugins/nativestorage';
import { Market } from './plugins/market';
import { MediaPlugin } from './plugins/media';
import { Mixpanel } from './plugins/mixpanel';
import { Network } from './plugins/network';
import { NFC } from './plugins/nfc';
import { OneSignal } from './plugins/onesignal';
import { PhotoViewer } from './plugins/photo-viewer';
import { ScreenOrientation } from './plugins/screen-orientation';
import { PayPal } from './plugins/pay-pal';
import { PinDialog } from './plugins/pin-dialog';
import { PowerManagement } from './plugins/power-management';
import { Printer } from './plugins/printer';
import { Push } from './plugins/push';
import { SafariViewController } from './plugins/safari-view-controller';
import { Screenshot } from './plugins/screenshot';
import { SecureStorage } from './plugins/securestorage';
import { Shake } from './plugins/shake';
import { Sim } from './plugins/sim';
import { SMS } from './plugins/sms';
import { SocialSharing } from './plugins/socialsharing';
import { SpinnerDialog } from './plugins/spinnerdialog';
import { Splashscreen } from './plugins/splashscreen';
import { SQLite } from './plugins/sqlite';
import { StatusBar } from './plugins/statusbar';
import { StreamingMedia } from './plugins/streaming-media';
import { ThreeDeeTouch } from './plugins/3dtouch';
import { Toast } from './plugins/toast';
import { TouchID } from './plugins/touchid';
import { TextToSpeech } from './plugins/text-to-speech';
import { TwitterConnect } from './plugins/twitter-connect';
import { Vibration } from './plugins/vibration';
import { VideoEditor } from './plugins/video-editor';
import { VideoPlayer } from './plugins/video-player';
import { WebIntent } from './plugins/webintent';
import { Zip } from './plugins/zip';
2016-06-09 21:47:27 -04:00
export * from './plugins/3dtouch';
2016-06-11 00:45:05 -04:00
export * from './plugins/background-geolocation';
export * from './plugins/backgroundmode';
export * from './plugins/batterystatus';
export * from './plugins/calendar';
export * from './plugins/camera';
export * from './plugins/card-io';
export * from './plugins/code-push';
export * from './plugins/contacts';
2016-06-11 00:45:05 -04:00
export * from './plugins/datepicker';
export * from './plugins/device';
export * from './plugins/devicemotion';
export * from './plugins/deviceorientation';
2016-08-26 07:54:52 -04:00
export * from './plugins/facebook';
export * from './plugins/file';
export * from './plugins/filetransfer';
export * from './plugins/geolocation';
2016-06-11 00:45:05 -04:00
export * from './plugins/googlemaps';
export * from './plugins/httpd';
export * from './plugins/ibeacon';
2016-06-11 00:45:05 -04:00
export * from './plugins/imagepicker';
2016-07-28 18:46:48 +02:00
export * from './plugins/imageresizer';
2016-06-11 00:45:05 -04:00
export * from './plugins/inappbrowser';
export * from './plugins/launchnavigator';
export * from './plugins/localnotifications';
export * from './plugins/nfc';
2016-06-11 00:45:05 -04:00
export * from './plugins/media';
export * from './plugins/media-capture';
export * from './plugins/mixpanel';
export * from './plugins/pay-pal';
export * from './plugins/native-page-transitions';
export * from './plugins/printer';
2016-06-11 00:45:05 -04:00
export * from './plugins/push';
export * from './plugins/safari-view-controller';
export * from './plugins/sms';
export * from './plugins/spinnerdialog';
export * from './plugins/streaming-media';
2016-06-11 00:45:05 -04:00
export * from './plugins/toast';
export * from './plugins/twitter-connect';
export * from './plugins/video-editor';
export * from './plugins/video-player';
2015-12-01 18:47:24 -06:00
export {
ActionSheet,
AdMob,
AndroidFingerprintAuth,
AppAvailability,
AppRate,
AppVersion,
Badge,
BarcodeScanner,
Base64ToGallery,
BatteryStatus,
Brightness,
BLE,
BluetoothSerial,
CallNumber,
CameraPreview,
Clipboard,
CodePush,
Crop,
DBMeter,
Deeplinks,
DeviceAccounts,
Dialogs,
Diagnostic,
EmailComposer,
EstimoteBeacons,
File,
Flashlight,
Geofence,
Globalization,
GooglePlus,
GoogleAnalytics,
Hotspot,
InAppPurchase,
Insomnia,
Instagram,
Keyboard,
NativeAudio,
NativeStorage,
Network,
Market,
OneSignal,
PhotoViewer,
ScreenOrientation,
PinDialog,
PowerManagement,
Screenshot,
SecureStorage,
Shake,
SocialSharing,
Sim,
Splashscreen,
SQLite,
StatusBar,
TouchID,
Transfer,
TextToSpeech,
Vibration,
WebIntent,
Zip
2015-12-01 18:47:24 -06:00
}
export * from './plugins/plugin';
2015-12-01 13:33:08 -06:00
// Window export to use outside of a module loading system
window['IonicNative'] = {
ActionSheet: ActionSheet,
AdMob: AdMob,
AndroidFingerprintAuth: AndroidFingerprintAuth,
AppAvailability: AppAvailability,
2016-03-04 15:42:21 -06:00
AppRate: AppRate,
AppVersion: AppVersion,
Badge: Badge,
BackgroundGeolocation: BackgroundGeolocation,
BackgroundMode: BackgroundMode,
BarcodeScanner: BarcodeScanner,
Base64ToGallery: Base64ToGallery,
BatteryStatus: BatteryStatus,
Brightness: Brightness,
2015-12-01 13:33:08 -06:00
BLE: BLE,
BluetoothSerial: BluetoothSerial,
2015-12-01 13:33:08 -06:00
Calendar: Calendar,
CallNumber: CallNumber,
Camera: Camera,
CameraPreview: CameraPreview,
2016-06-09 10:18:53 -04:00
CardIO: CardIO,
2016-03-04 15:42:21 -06:00
Clipboard: Clipboard,
CodePush: CodePush,
2015-12-01 18:47:24 -06:00
Contacts: Contacts,
2016-07-28 12:45:37 -04:00
Crop: Crop,
2016-03-04 15:42:21 -06:00
DatePicker: DatePicker,
DBMeter: DBMeter,
Deeplinks: Deeplinks,
2015-12-01 13:33:08 -06:00
Device: Device,
2016-04-29 13:09:13 -07:00
DeviceAccounts: DeviceAccounts,
DeviceMotion: DeviceMotion,
DeviceOrientation: DeviceOrientation,
Dialogs: Dialogs,
2016-03-28 20:24:05 -04:00
Diagnostic: Diagnostic,
EmailComposer: EmailComposer,
2016-07-27 10:07:33 +02:00
EstimoteBeacons: EstimoteBeacons,
2015-12-01 13:33:08 -06:00
Facebook: Facebook,
File: File,
Flashlight: Flashlight,
Geofence: Geofence,
2015-12-01 13:33:08 -06:00
Geolocation: Geolocation,
2016-03-13 04:08:39 -04:00
Globalization: Globalization,
2016-06-09 10:27:07 -04:00
GooglePlus: GooglePlus,
GoogleMap: GoogleMap,
2016-04-16 17:13:40 +02:00
GoogleAnalytics: GoogleAnalytics,
2016-03-13 17:25:26 -04:00
Hotspot: Hotspot,
2016-06-11 00:33:02 -04:00
Httpd: Httpd,
IBeacon: IBeacon,
ImagePicker: ImagePicker,
2016-07-28 18:46:48 +02:00
ImageResizer: ImageResizer,
InAppBrowser: InAppBrowser,
InAppPurchase: InAppPurchase,
Instagram: Instagram,
IsDebug: IsDebug,
Keyboard: Keyboard,
LaunchNavigator: LaunchNavigator,
LocalNotifications: LocalNotifications,
Market: Market,
MediaCapture: MediaCapture,
MediaPlugin: MediaPlugin,
Mixpanel: Mixpanel,
NativeAudio: NativeAudio,
NativePageTransitions: NativePageTransitions,
NativeStorage: NativeStorage,
2016-03-27 20:56:16 -05:00
Network: Network,
PayPal: PayPal,
NFC: NFC,
Printer: Printer,
2015-12-01 18:47:24 -06:00
Push: Push,
OneSignal: OneSignal,
PhotoViewer: PhotoViewer,
ScreenOrientation: ScreenOrientation,
PinDialog: PinDialog,
PowerManagement: PowerManagement,
2016-06-09 10:18:53 -04:00
SafariViewController: SafariViewController,
2016-04-28 22:06:21 -07:00
Screenshot: Screenshot,
SecureStorage: SecureStorage,
Shake: Shake,
Sim: Sim,
SMS: SMS,
SocialSharing: SocialSharing,
SpinnerDialog: SpinnerDialog,
Splashscreen: Splashscreen,
2016-05-16 08:34:01 +02:00
SQLite: SQLite,
2015-12-01 13:33:08 -06:00
StatusBar: StatusBar,
StreamingMedia: StreamingMedia,
2016-06-09 21:47:27 -04:00
ThreeDeeTouch: ThreeDeeTouch,
2015-12-01 19:06:38 -06:00
Toast: Toast,
2016-03-13 17:25:26 -04:00
TouchID: TouchID,
2016-05-01 21:56:55 -07:00
Transfer: Transfer,
TextToSpeech: TextToSpeech,
TwitterConnect: TwitterConnect,
VideoEditor: VideoEditor,
VideoPlayer: VideoPlayer,
2016-04-04 00:11:13 -04:00
Vibration: Vibration,
WebIntent: WebIntent,
Zip: Zip
2016-03-06 15:27:26 -05:00
};
2015-12-01 13:33:08 -06:00
2016-06-09 11:24:38 -05:00
initAngular1(window['IonicNative']);
2015-11-29 17:20:11 -06:00
// To help developers using cordova, we listen for the device ready event and
// log an error if it didn't fire in a reasonable amount of time. Generally,
// when this happens, developers should remove and reinstall plugins, since
// an inconsistent plugin is often the culprit.
2015-11-30 13:27:25 -06:00
let before = +new Date;
2015-11-29 16:30:15 -06:00
let didFireReady = false;
2015-11-30 13:27:25 -06:00
document.addEventListener('deviceready', function() {
2016-03-06 15:27:26 -05:00
console.log('DEVICE READY FIRED AFTER', (+new Date - before), 'ms');
2015-11-29 16:30:15 -06:00
didFireReady = true;
2016-03-06 15:27:26 -05:00
});
2015-11-29 16:30:15 -06:00
setTimeout(function() {
if (!didFireReady && window.cordova) {
2015-11-29 16:30:15 -06:00
console.warn('Native: deviceready did not fire within ' + DEVICE_READY_TIMEOUT + 'ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.');
}
}, DEVICE_READY_TIMEOUT);