From fd87e968f0478d70937d3330358a54682f750cca Mon Sep 17 00:00:00 2001 From: Ibby Hadeed Date: Mon, 9 Apr 2018 14:31:22 -0400 Subject: [PATCH] Restore interfaces.ts file --- package-lock.json | 166 ++---------------- package.json | 16 +- .../core/decorators/interfaces.ts | 105 +++++++++++ 3 files changed, 123 insertions(+), 164 deletions(-) create mode 100644 src/@ionic-native/core/decorators/interfaces.ts diff --git a/package-lock.json b/package-lock.json index 8b5122107..22fbddad7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,45 +4,6 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@angular/common": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.2.9.tgz", - "integrity": "sha512-g2hPcI0fnT4TV+Fd+1IohjuqBxPvxwyH9IzTn8PkU9X2M+F6cHCUvHxL1sWI2sF8pYcaHzVjq9WClym10X36Lg==", - "dev": true, - "requires": { - "tslib": "1.8.1" - } - }, - "@angular/compiler": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.9.tgz", - "integrity": "sha512-mN+ofInk8y/tk2TCJZx8RrGdOKdrfunoCair7tfDy4XoQJE90waGfaYWo07hYU+UYwLhrg19m2Czy6rIDciUJA==", - "dev": true, - "requires": { - "tslib": "1.8.1" - } - }, - "@angular/compiler-cli": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.2.9.tgz", - "integrity": "sha512-LAEpL/6PAev3zwTow/43Atzv9AtKLAiLoS285X3EV1f80yQpYAmFRrPUtDlrIZdhZHBBv7CxnyCVpOLU3T8ohw==", - "dev": true, - "requires": { - "chokidar": "1.7.0", - "minimist": "1.2.0", - "reflect-metadata": "0.1.12", - "tsickle": "0.27.5" - } - }, - "@angular/core": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.9.tgz", - "integrity": "sha512-cvHBJGtasrIoARvbLFyHaOsiWKVwMNrrSTZLwrlyHP8oYzkDrE0qKGer6QCqyKt+51hF53cgWEffGzM/u/0wYg==", - "dev": true, - "requires": { - "tslib": "1.8.1" - } - }, "@babel/code-frame": { "version": "7.0.0-beta.42", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.42.tgz", @@ -124,7 +85,7 @@ "integrity": "sha512-h3wnflb+jMTipvbbZnClgA2BexrT4w0GcfoCz5qyxd0IRsbqhLSyesM6mqZTAnhbVmhyTm5tuxfRu9R+8l+lGw==", "dev": true, "requires": { - "@types/node": "8.0.47" + "@types/node": "9.6.2" } }, "@types/glob": { @@ -135,7 +96,7 @@ "requires": { "@types/events": "1.1.0", "@types/minimatch": "3.0.2", - "@types/node": "8.0.47" + "@types/node": "9.6.2" } }, "@types/jest": { @@ -157,9 +118,9 @@ "dev": true }, "@types/node": { - "version": "8.0.47", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.0.47.tgz", - "integrity": "sha512-kOwL746WVvt/9Phf6/JgX/bsGQvbrK5iUgzyfwZNcKVFcjAUVSpF9HxevLTld2SG9aywYHOILj38arDdY1r/iQ==", + "version": "9.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-9.6.2.tgz", + "integrity": "sha512-UWkRY9X7RQHp5OhhRIIka58/gVVycL1zHZu0OTsT5LI86ABaMOSbUjAl+b0FeDhQcxclrkyft3kW5QWdMRs8wQ==", "dev": true }, "@types/rimraf": { @@ -169,21 +130,9 @@ "dev": true, "requires": { "@types/glob": "5.0.34", - "@types/node": "8.0.47" + "@types/node": "9.6.2" } }, - "@types/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I=", - "dev": true - }, - "@types/strip-json-comments": { - "version": "0.0.30", - "resolved": "https://registry.npmjs.org/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz", - "integrity": "sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ==", - "dev": true - }, "@types/tapable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.1.tgz", @@ -213,7 +162,7 @@ "integrity": "sha512-NoGVTCumOsyFfuy3934f3ktiJi+wcXHJFxT47tby3iCpuo6M/WjFA9VqT5bYO+FE46i3R0N00RpJX75HxHKDaQ==", "dev": true, "requires": { - "@types/node": "8.0.47", + "@types/node": "9.6.2", "@types/tapable": "1.0.1", "@types/uglify-js": "3.0.1", "source-map": "0.6.1" @@ -11017,12 +10966,6 @@ "strip-indent": "2.0.0" } }, - "reflect-metadata": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", - "integrity": "sha512-n+IyV+nGz3+0q3/Yf1ra12KpCyi001bi4XFxSjbiWWjfqb52iTTtpGXmCCAOWWIAn9KEuFZKGqBERHmrtScZ3A==", - "dev": true - }, "regenerate": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", @@ -11321,23 +11264,6 @@ "aproba": "1.2.0" } }, - "rxjs": { - "version": "6.0.0-rc.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.0.0-rc.1.tgz", - "integrity": "sha512-3knMfs9d6myCUuUYAqeaK2a+nE2KYyLHaQqxuoUFtTNuiIFBkCoTRzPMTO85qL279rEtjAwGY2NU5gpqXgpu0g==", - "dev": true, - "requires": { - "tslib": "1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz", - "integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ==", - "dev": true - } - } - }, "safe-buffer": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", @@ -13265,9 +13191,9 @@ } }, "ts-node": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-4.1.0.tgz", - "integrity": "sha512-xcZH12oVg9PShKhy3UHyDmuDLV3y7iKwX25aMVPt1SIXSuAfWkFiGPEkg+th8R4YKW/QCxDoW7lJdb15lx6QWg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-5.0.1.tgz", + "integrity": "sha512-XK7QmDcNHVmZkVtkiwNDWiERRHPyU8nBqZB1+iv2UhOG0q3RQ9HsZ2CMqISlFbxjrYFGfG2mX7bW4dAyxBVzUw==", "dev": true, "requires": { "arrify": "1.0.1", @@ -13277,8 +13203,6 @@ "minimist": "1.2.0", "mkdirp": "0.5.1", "source-map-support": "0.5.4", - "tsconfig": "7.0.0", - "v8flags": "3.0.2", "yn": "2.0.0" }, "dependencies": { @@ -13302,12 +13226,6 @@ "supports-color": "5.3.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -13331,64 +13249,6 @@ "requires": { "has-flag": "3.0.0" } - }, - "v8flags": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.0.2.tgz", - "integrity": "sha512-6sgSKoFw1UpUPd3cFdF7QGnrH6tDeBgW1F3v9gy8gLY0mlbiBXq8soy8aQpY6xeeCjH5K+JvC62Acp7gtl7wWA==", - "dev": true, - "requires": { - "homedir-polyfill": "1.0.1" - } - } - } - }, - "tsconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-7.0.0.tgz", - "integrity": "sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw==", - "dev": true, - "requires": { - "@types/strip-bom": "3.0.0", - "@types/strip-json-comments": "0.0.30", - "strip-bom": "3.0.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - } - } - }, - "tsickle": { - "version": "0.27.5", - "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.27.5.tgz", - "integrity": "sha512-NP+CjM1EXza/M8mOXBLH3vkFEJiu1zfEAlC5WdJxHPn8l96QPz5eooP6uAgYtw1CcKfuSyIiheNUdKxtDWCNeg==", - "dev": true, - "requires": { - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "source-map": "0.6.1", - "source-map-support": "0.5.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.4.tgz", - "integrity": "sha512-PETSPG6BjY1AHs2t64vS2aqAgu6dMIMXJULWFBGbh2Gr8nVLbCFDo6i/RMMvviIQ2h1Z8+5gQhVKSn2je9nmdg==", - "dev": true, - "requires": { - "source-map": "0.6.1" - } } } }, @@ -15244,12 +15104,6 @@ "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", "dev": true - }, - "zone.js": { - "version": "0.8.26", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.26.tgz", - "integrity": "sha512-W9Nj+UmBJG251wkCacIkETgra4QgBo/vgoEkb4a2uoLzpQG7qF9nzwoLXWU5xj3Fg2mxGvEDh47mg24vXccYjA==", - "dev": true } } } diff --git a/package.json b/package.json index e3e6a3187..ea37b1df6 100644 --- a/package.json +++ b/package.json @@ -22,15 +22,15 @@ "shipit": "npm run build && npm run readmes && npm run npmpub" }, "devDependencies": { - "@angular/common": "^5.2.9", - "@angular/compiler": "^5.2.9", - "@angular/compiler-cli": "^5.2.9", - "@angular/core": "^5.2.9", + "@angular/common": "6.0.0-rc.1", + "@angular/compiler": "6.0.0-rc.1", + "@angular/compiler-cli": "6.0.0-rc.1", + "@angular/core": "6.0.0-rc.1", "@types/cordova": "0.0.34", "@types/fs-extra": "^5.0.1", "@types/jest": "^22.2.2", "@types/lodash": "^4.14.106", - "@types/node": "8.0.47", + "@types/node": "^9.6.2", "@types/rimraf": "^2.0.2", "@types/webpack": "^4.1.3", "async-promise-queue": "^1.0.4", @@ -56,10 +56,10 @@ "minimist": "1.2.0", "nodemon": "^1.17.3", "rimraf": "^2.6.2", - "rxjs": "6.0.0-rc.1", + "rxjs": "6.0.0-rc.0", "string-replace-webpack-plugin": "^0.1.3", "ts-jest": "^22.4.2", - "ts-node": "^4.1.0", + "ts-node": "^5.0.1", "tslint": "^5.9.1", "tslint-ionic-rules": "0.0.14", "typescript": "~2.7.2", @@ -67,7 +67,7 @@ "unminified-webpack-plugin": "^2.0.0", "webpack": "^4.5.0", "winston": "3.0.0-rc3", - "zone.js": "^0.8.26" + "zone.js": "latest" }, "jest": { "transform": { diff --git a/src/@ionic-native/core/decorators/interfaces.ts b/src/@ionic-native/core/decorators/interfaces.ts new file mode 100644 index 000000000..487ee026a --- /dev/null +++ b/src/@ionic-native/core/decorators/interfaces.ts @@ -0,0 +1,105 @@ +export interface PluginConfig { + /** + * Plugin name, this should match the class name + */ + pluginName: string; + /** + * Plugin NPM package name + */ + plugin: string; + /** + * Plugin object reference + */ + pluginRef?: string; + /** + * Github repository URL + */ + repo?: string; + /** + * Custom install command + */ + install?: string; + /** + * Available installation variables + */ + installVariables?: string[]; + /** + * Supported platforms + */ + platforms?: string[]; + + [key: string]: any; +} + +export interface CordovaOptions { + destruct?: boolean; + /** + * Set to true if the wrapped method is a sync function + */ + sync?: boolean; + /** + * Callback order. Set to reverse if the success/error callbacks are the first 2 arguments that the wrapped method takes. + */ + callbackOrder?: 'reverse'; + /** + * Callback style + */ + callbackStyle?: 'node' | 'object'; + /** + * Set a custom index for the success callback function. This doesn't work if callbackOrder or callbackStyle are set. + */ + successIndex?: number; + /** + * Set a custom index for the error callback function. This doesn't work if callbackOrder or callbackStyle are set. + */ + errorIndex?: number; + /** + * Success function property name. This must be set if callbackStyle is set to object. + */ + successName?: string; + /** + * Error function property name. This must be set if callbackStyle is set to object. + */ + errorName?: string; + /** + * Set to true to return an observable + */ + observable?: boolean; + /** + * If observable is set to true, this can be set to a different function name that will cancel the observable. + */ + clearFunction?: string; + /** + * This can be used if clearFunction is set. Set this to true to call the clearFunction with the same arguments used in the initial function. + */ + clearWithArgs?: boolean; + /** + * Creates an observable that wraps a global event. Replaces document.addEventListener + */ + eventObservable?: boolean; + /** + * Event name, this must be set if eventObservable is set to true + */ + event?: string; + /** + * Element to attach the event listener to, this is optional, defaults to `window` + */ + element?: any; + /** + * Set to true if the wrapped method returns a promise + */ + otherPromise?: boolean; + /** + * Supported platforms + */ + platforms?: string[]; +} + +export declare const Plugin: (config: PluginConfig) => ClassDecorator; +export declare const Cordova: (config?: CordovaOptions) => MethodDecorator; +export declare const CordovaProperty: () => PropertyDecorator; +export declare const CordovaInstance: (config?: CordovaOptions) => MethodDecorator; +export declare const InstanceProperty: () => PropertyDecorator; +export declare const CordovaCheck: (config?: CordovaOptions) => MethodDecorator; +export declare const InstanceCheck: (config?: CordovaOptions) => MethodDecorator; +export declare const CordovaFunctionOverride: () => MethodDecorator;