diff --git a/src/@ionic-native/core/decorators/interfaces.ts b/src/@ionic-native/core/decorators/interfaces.ts deleted file mode 100644 index 487ee026a..000000000 --- a/src/@ionic-native/core/decorators/interfaces.ts +++ /dev/null @@ -1,105 +0,0 @@ -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; diff --git a/src/@ionic-native/plugins/app-center-push/index.ts b/src/@ionic-native/plugins/app-center-push/index.ts index 2fcd486f8..8b383066f 100644 --- a/src/@ionic-native/plugins/app-center-push/index.ts +++ b/src/@ionic-native/plugins/app-center-push/index.ts @@ -37,14 +37,14 @@ import { Observable } from 'rxjs'; export class AppCenterPush extends IonicNativePlugin { /** * Subscribe to an event - * @param {string} eventname Event name + * @param {string} eventName Event name * @returns {Observable} */ @Cordova({ observable: true, clearFunction: 'removeEventListener' }) - addEventListener(eventname: string): Observable { + addEventListener(eventName: string): Observable { return; } /** diff --git a/src/@ionic-native/plugins/app-update/index.ts b/src/@ionic-native/plugins/app-update/index.ts index 0da8452f1..f78f6dce8 100644 --- a/src/@ionic-native/plugins/app-update/index.ts +++ b/src/@ionic-native/plugins/app-update/index.ts @@ -51,7 +51,8 @@ export interface AppUpdateOptions { export class AppUpdate extends IonicNativePlugin { /** * Check and update - * @param updateUrl {string} update api url + * @param {string} updateUrl update api url + * @param {AppUpdateOptions} [options] options * @return {Promise} Returns a promise that resolves when something happens */ @Cordova({ diff --git a/src/@ionic-native/plugins/apple-pay/index.ts b/src/@ionic-native/plugins/apple-pay/index.ts index dc04f5835..afb182d8c 100644 --- a/src/@ionic-native/plugins/apple-pay/index.ts +++ b/src/@ionic-native/plugins/apple-pay/index.ts @@ -1,4 +1,7 @@ import { Injectable } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core'; +import { Injectable } from '@angular/core'; import { Observable } from 'rxjs'; import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; @@ -65,7 +68,6 @@ export interface IOrderItem { label: string; amount: number; } - export interface IShippingMethod { identifier: string; label: string; @@ -214,9 +216,9 @@ export class ApplePay extends IonicNativePlugin { * any shipping contact selection event or else the user will not be able * to complete a transaction on the pay sheet. Do not call without * subscribing to shipping contact selection events first - * @returns {Promise} * - * @param {Object} including `items` and `shippingMethods` properties. + * @param {IOrderItemsAndShippingMethods} list `items` and `shippingMethods` properties. + * @returns {Promise} * * @usage * this.applePay.startListeningForShippingContactSelection().pluck('shippingAddressState').subscribe(shippingAddressState => { @@ -254,9 +256,9 @@ export class ApplePay extends IonicNativePlugin { /** * Request a payment with Apple Pay - * @return {Promise} Returns a promise that resolves when something happens * - * @param order {IOrder} + * @param {IOrder} order + * @return {Promise} Returns a promise that resolves when something happens * * @usage * try { @@ -331,11 +333,11 @@ export class ApplePay extends IonicNativePlugin { /** * Once the makePaymentRequest has been resolved successfully, the device will be waiting for a completion event. - * This means, that the application must proceed with the token authorisation and return a success, failure, + * This means, that the application must proceed with the token authorization and return a success, failure, * or other validation error. Once this has been passed back, the Apple Pay sheet will be dismissed via an animation. - * @return {Promise} Returns a promise that resolves after confirmation of payment authorization completion * - * @param complete {ITransactionStatus} + * @param {ITransactionStatus} complete + * @return {Promise} Returns a promise that resolves after confirmation of payment authorization completion * */ @Cordova({ diff --git a/src/@ionic-native/plugins/background-mode/index.ts b/src/@ionic-native/plugins/background-mode/index.ts index 7e056f491..ce11b0681 100644 --- a/src/@ionic-native/plugins/background-mode/index.ts +++ b/src/@ionic-native/plugins/background-mode/index.ts @@ -1,5 +1,7 @@ import { Injectable } from '@angular/core'; import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; +import { Observable } from 'rxjs/Observable'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Observable } from 'rxjs'; /** @@ -32,7 +34,7 @@ export interface BackgroundModeConfiguration { resume?: boolean; /** - * When set to false makes the notifications visible on lockscreen (Android 5.0+) + * When set to false makes the notifications visible on lock screen (Android 5.0+) */ hidden?: boolean; @@ -122,6 +124,7 @@ export class BackgroundMode extends IonicNativePlugin { * Override the default title, ticker and text. * Available only for Android platform. * @param {BackgroundModeConfiguration} options List of option to configure. See table below + * @returns {Promise} */ @Cordova({ platforms: ['Android'] @@ -133,7 +136,7 @@ export class BackgroundMode extends IonicNativePlugin { /** * Modify the displayed information. * Available only for Android platform. - * @param {BackgroundModeConfiguration} options Any options you want to update. See table below. + * @param {BackgroundModeConfiguration} [options] Any options you want to update. See table below. */ @Cordova({ platforms: ['Android'], @@ -202,6 +205,7 @@ export class BackgroundMode extends IonicNativePlugin { /** * The method works async instead of isActive() or isEnabled(). + * @returns {Promise} */ @Cordova({ platforms: ['Android'] diff --git a/src/@ionic-native/plugins/barcode-scanner/index.ts b/src/@ionic-native/plugins/barcode-scanner/index.ts index 467d613cf..9a81c4c86 100644 --- a/src/@ionic-native/plugins/barcode-scanner/index.ts +++ b/src/@ionic-native/plugins/barcode-scanner/index.ts @@ -124,7 +124,7 @@ export class BarcodeScanner extends IonicNativePlugin { /** * Open the barcode scanner. - * @param options {BarcodeScannerOptions} Optional options to pass to the scanner + * @param {BarcodeScannerOptions} [options] Optional options to pass to the scanner * @returns {Promise} Returns a Promise that resolves with scanner data, or rejects with an error. */ @Cordova({ @@ -137,8 +137,8 @@ export class BarcodeScanner extends IonicNativePlugin { /** * Encodes data into a barcode. * NOTE: not well supported on Android - * @param type {string} Type of encoding - * @param data {any} Data to encode + * @param {string} type Type of encoding + * @param {any} data Data to encode * @returns {Promise} */ @Cordova() diff --git a/src/@ionic-native/plugins/battery-status/index.ts b/src/@ionic-native/plugins/battery-status/index.ts index 7957389ab..3a6fdf1d9 100644 --- a/src/@ionic-native/plugins/battery-status/index.ts +++ b/src/@ionic-native/plugins/battery-status/index.ts @@ -74,7 +74,7 @@ export class BatteryStatus extends IonicNativePlugin { } /** - * Watch when the battery level goes to critial + * Watch when the battery level goes to critical * @returns {Observable} Returns an observable that pushes a status object */ @Cordova({ diff --git a/src/@ionic-native/plugins/ble/index.ts b/src/@ionic-native/plugins/ble/index.ts index b3855a650..37ec1061c 100644 --- a/src/@ionic-native/plugins/ble/index.ts +++ b/src/@ionic-native/plugins/ble/index.ts @@ -232,7 +232,7 @@ export class BLE extends IonicNativePlugin { /** * Scans for BLE devices. This function operates similarly to the `startScan` function, but allows you to specify extra options (like allowing duplicate device reports). * @param {string[]} services List of service UUIDs to discover, or `[]` to find all devices - * @param options {any} + * @param {BLEScanOptions} options Options * @returns {Observable} Returns an Observable that notifies of each peripheral discovered. */ @Cordova({ @@ -259,7 +259,7 @@ export class BLE extends IonicNativePlugin { * BLE.stopScan().then(() => { console.log('scan stopped'); }); * }, 5000); * ``` - * @return returns a Promise. + * @returns {Promise} */ @Cordova() stopScan(): Promise { @@ -277,8 +277,8 @@ export class BLE extends IonicNativePlugin { * console.log('disconnected'); * }); * ``` - * @param deviceId {string} UUID or MAC address of the peripheral - * @return Returns an Observable that notifies of connect/disconnect. + * @param {string} deviceId UUID or MAC address of the peripheral + * @return {Observable} Returns an Observable that notifies of connect/disconnect. */ @Cordova({ observable: true, @@ -297,8 +297,8 @@ export class BLE extends IonicNativePlugin { * console.log('Disconnected'); * }); * ``` - * @param deviceId {string} UUID or MAC address of the peripheral - * @return Returns a Promise + * @param {string} deviceId UUID or MAC address of the peripheral + * @return {Promise} Returns a Promise */ @Cordova() disconnect(deviceId: string): Promise { @@ -311,7 +311,7 @@ export class BLE extends IonicNativePlugin { * @param {string} deviceId UUID or MAC address of the peripheral * @param {string} serviceUUID UUID of the BLE service * @param {string} characteristicUUID UUID of the BLE characteristic - * @return Returns a Promise + * @return {Promise} Returns a Promise */ @Cordova() read( @@ -348,7 +348,7 @@ export class BLE extends IonicNativePlugin { * @param {string} serviceUUID UUID of the BLE service * @param {string} characteristicUUID UUID of the BLE characteristic * @param {ArrayBuffer} value Data to write to the characteristic, as an ArrayBuffer. - * @return Returns a Promise + * @return {Promise} Returns a Promise */ @Cordova() write( @@ -367,7 +367,7 @@ export class BLE extends IonicNativePlugin { * @param {string} serviceUUID UUID of the BLE service * @param {string} characteristicUUID UUID of the BLE characteristic * @param {ArrayBuffer} value Data to write to the characteristic, as an ArrayBuffer. - * @return Returns a Promise + * @return {Promise} Returns a Promise */ @Cordova() writeWithoutResponse( @@ -392,7 +392,7 @@ export class BLE extends IonicNativePlugin { * @param {string} deviceId UUID or MAC address of the peripheral * @param {string} serviceUUID UUID of the BLE service * @param {string} characteristicUUID UUID of the BLE characteristic - * @return Returns an Observable that notifies of characteristic changes. + * @return {Observable} Returns an Observable that notifies of characteristic changes. */ @Cordova({ observable: true, @@ -462,7 +462,7 @@ export class BLE extends IonicNativePlugin { * }); * ``` * - * @return Returns an Observable that notifies when the Bluetooth is enabled or disabled on the device. + * @return {Observable} Returns an Observable that notifies when the Bluetooth is enabled or disabled on the device. */ @Cordova({ observable: true, diff --git a/src/@ionic-native/plugins/braintree/index.ts b/src/@ionic-native/plugins/braintree/index.ts index 7de4f1336..2b2b6a0ef 100644 --- a/src/@ionic-native/plugins/braintree/index.ts +++ b/src/@ionic-native/plugins/braintree/index.ts @@ -139,7 +139,7 @@ export interface PaymentUIResult { * @description * This plugin enables the use of the Braintree Drop-In Payments UI in your Ionic applications on Android and iOS, using the native Drop-In UI for each platform (not the Javascript SDK). * - * Ionic Native utilizes [a maintaned fork](https://github.com/taracque/cordova-plugin-braintree) of the original `cordova-plugin-braintree` + * Ionic Native utilizes [a maintained fork](https://github.com/taracque/cordova-plugin-braintree) of the original `cordova-plugin-braintree` * * For information on how to use Apple Pay with this plugin, please refer to the [plugin documentation](https://github.com/Taracque/cordova-plugin-braintree#apple-pay-ios-only) * @@ -200,21 +200,21 @@ export interface PaymentUIResult { pluginRef: 'BraintreePlugin', repo: 'https://github.com/taracque/cordova-plugin-braintree', platforms: ['Android', 'iOS'], - install: 'ionic cordova plugin add https://github.com/taracque/cordova-plugin-braintree', - installVariables: [], + install: + 'ionic cordova plugin add https://github.com/taracque/cordova-plugin-braintree', + installVariables: [] }) @Injectable() export class Braintree extends IonicNativePlugin { - /** * Used to initialize the Braintree client. This function must be called before other methods can be used. * As the initialize code is async, be sure you call all Braintree related methods after the initialize promise has resolved. * - * @param token {string} The client token or tokenization key to use with the Braintree client. + * @param {string} token The client token or tokenization key to use with the Braintree client. * @return {Promise} Returns a promise that resolves with undefined on successful initialization, or rejects with a string message describing the failure. */ @Cordova({ - platforms: ['Android', 'iOS'], + platforms: ['Android', 'iOS'] }) initialize(token: string): Promise { return; @@ -229,11 +229,11 @@ export class Braintree extends IonicNativePlugin { * * Calling this function on Android is a `noop` so you can call it without having to check which cordova platform you are on! :D * - * @param options {ApplePayOptions} The options used to configure Apple Pay. + * @param {ApplePayOptions}options The options used to configure Apple Pay. * @return {Promise} Returns a promise that resolves with undefined on successful initialization, or rejects with a string message describing the failure. */ @Cordova({ - platforms: ['iOS'], + platforms: ['iOS'] }) setupApplePay(options: ApplePayOptions): Promise { return; @@ -247,9 +247,11 @@ export class Braintree extends IonicNativePlugin { * @return {Promise} Returns a promise that resolves with a PaymentUIResult object on successful payment (or the user cancels), or rejects with a string message describing the failure. */ @Cordova({ - platforms: ['Android', 'iOS'], + platforms: ['Android', 'iOS'] }) - presentDropInPaymentUI(options?: PaymentUIOptions): Promise { + presentDropInPaymentUI( + options?: PaymentUIOptions + ): Promise { return; } } diff --git a/src/@ionic-native/plugins/brightness/index.ts b/src/@ionic-native/plugins/brightness/index.ts index 54120ab96..857d34676 100644 --- a/src/@ionic-native/plugins/brightness/index.ts +++ b/src/@ionic-native/plugins/brightness/index.ts @@ -33,7 +33,7 @@ export class Brightness extends IonicNativePlugin { /** * Sets the brightness of the display. * - * @param value {number} Floating number between 0 and 1 in which case 1 means 100% brightness and 0 means 0% brightness. + * @param {number} value Floating number between 0 and 1 in which case 1 means 100% brightness and 0 means 0% brightness. * @returns {Promise} Returns a Promise that resolves if setting brightness was successful. */ @Cordova() @@ -54,6 +54,7 @@ export class Brightness extends IonicNativePlugin { /** * Keeps the screen on. Prevents the device from setting the screen to sleep. + * @param {boolean} value */ @Cordova() setKeepScreenOn(value: boolean): void {} diff --git a/src/@ionic-native/plugins/broadcaster/index.ts b/src/@ionic-native/plugins/broadcaster/index.ts index 21894023c..8fc85ed4b 100644 --- a/src/@ionic-native/plugins/broadcaster/index.ts +++ b/src/@ionic-native/plugins/broadcaster/index.ts @@ -34,7 +34,7 @@ import { Observable } from 'rxjs'; export class Broadcaster extends IonicNativePlugin { /** * This function listen to an event sent from the native code - * @param eventName {string} + * @param {string} eventName * @return {Observable} Returns an observable to watch when an event is received */ @Cordova({ @@ -48,8 +48,8 @@ export class Broadcaster extends IonicNativePlugin { /** * This function sends data to the native code - * @param eventName {string} - * @param eventData {any} + * @param {string} eventName + * @param {any} eventData * @return {Promise} Returns a promise that resolves when an event is successfully fired */ @Cordova() diff --git a/src/@ionic-native/plugins/browser-tab/index.ts b/src/@ionic-native/plugins/browser-tab/index.ts index a0f24ccec..f65c6c7b6 100644 --- a/src/@ionic-native/plugins/browser-tab/index.ts +++ b/src/@ionic-native/plugins/browser-tab/index.ts @@ -1,5 +1,5 @@ -import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; /** * @name Browser Tab @@ -13,21 +13,13 @@ import { Injectable } from '@angular/core'; * constructor(private browserTab: BrowserTab) { * * browserTab.isAvailable() - * .then((isAvailable: boolean) => { - * + * .then(isAvailable => { * if (isAvailable) { - * * browserTab.openUrl('https://ionic.io'); - * * } else { - * * // open URL with InAppBrowser instead or SafariViewController - * * } - * * }); - * - * * } * * ``` @@ -41,7 +33,6 @@ import { Injectable } from '@angular/core'; }) @Injectable() export class BrowserTab extends IonicNativePlugin { - /** * Check if BrowserTab option is available * @return {Promise} Returns a promise that resolves when check is successful and returns true or false diff --git a/src/@ionic-native/plugins/calendar/index.ts b/src/@ionic-native/plugins/calendar/index.ts index 5854ce0e1..bf7e9cf55 100644 --- a/src/@ionic-native/plugins/calendar/index.ts +++ b/src/@ionic-native/plugins/calendar/index.ts @@ -93,7 +93,7 @@ export class Calendar extends IonicNativePlugin { * This function checks if we have permission to read/write from/to the calendar. * The promise will resolve with `true` when: * - You're running on iOS, or - * - You're targetting API level lower than 23, or + * - You're targeting API level lower than 23, or * - You're using Android < 6, or * - You've already granted permission * @@ -184,7 +184,7 @@ export class Calendar extends IonicNativePlugin { } /** - * Returns options for a custom calender with sepcific colord + * Returns options for a custom calender with specific color * * @return {NameOrOptions} Returns an object with the default options */ diff --git a/src/@ionic-native/plugins/call-log/index.ts b/src/@ionic-native/plugins/call-log/index.ts index 43608abb5..67832e9d5 100644 --- a/src/@ionic-native/plugins/call-log/index.ts +++ b/src/@ionic-native/plugins/call-log/index.ts @@ -3,7 +3,7 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; export interface CallLogObject { name: string; - value: string|Array; + value: string | Array; operator: '==' | '!=' | '>' | '>=' | '<' | '<=' | 'like'; } @@ -35,7 +35,7 @@ export interface CallLogObject { export class CallLog extends IonicNativePlugin { /** * This function return the call logs - * @param filters {CallLogObject[]} array of object to filter the query + * @param {CallLogObject[]} filters array of object to filter the query * @return {Promise} */ @Cordova() diff --git a/src/@ionic-native/plugins/call-number/index.ts b/src/@ionic-native/plugins/call-number/index.ts index 77a5ddd77..73490c38d 100644 --- a/src/@ionic-native/plugins/call-number/index.ts +++ b/src/@ionic-native/plugins/call-number/index.ts @@ -33,8 +33,8 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; export class CallNumber extends IonicNativePlugin { /** * Calls a phone number - * @param numberToCall {string} The phone number to call as a string - * @param bypassAppChooser {boolean} Set to true to bypass the app chooser and go directly to dialer + * @param {string} numberToCall The phone number to call as a string + * @param {boolean} bypassAppChooser Set to true to bypass the app chooser and go directly to dialer * @return {Promise} */ @Cordova({ diff --git a/src/@ionic-native/plugins/camera-preview/index.ts b/src/@ionic-native/plugins/camera-preview/index.ts index 80f81029b..83c71baa1 100644 --- a/src/@ionic-native/plugins/camera-preview/index.ts +++ b/src/@ionic-native/plugins/camera-preview/index.ts @@ -40,7 +40,7 @@ export interface CameraPreviewOptions { /** Tap to set specific focus point. Note, this assumes the camera is full-screen. default false */ tapToFocus?: boolean; - /** On Android disable automatic rotation of the image and stripping of Exif header. default false */ + /** On Android disable automatic rotation of the image and stripping of Exit header. default false */ disableExifHeaderStripping?: boolean; } @@ -234,7 +234,7 @@ export class CameraPreview extends IonicNativePlugin { /** * Take the picture (base64) - * @param [options] {CameraPreviewPictureOptions} size and quality of the picture to take + * @param {CameraPreviewPictureOptions} [options] size and quality of the picture to take * @return {Promise} */ @Cordova({ @@ -293,7 +293,7 @@ export class CameraPreview extends IonicNativePlugin { /** * Set the preview Size - * @param [dimensions] {CameraPreviewDimensions} + * @param {CameraPreviewDimensions} [dimensions] * @return {Promise} */ @Cordova({ @@ -315,7 +315,7 @@ export class CameraPreview extends IonicNativePlugin { /** * Set the focus mode - * @param [focusMode] {string} 'fixed', 'auto', 'continuous-picture', 'continuous-video' (iOS & Android), 'edof', 'infinity', 'macro' (Android Only) + * @param {string} [focusMode] 'fixed', 'auto', 'continuous-picture', 'continuous-video' (iOS & Android), 'edof', 'infinity', 'macro' (Android Only) * @return {Promise} */ @Cordova({ @@ -345,8 +345,8 @@ export class CameraPreview extends IonicNativePlugin { } /** - * Set the flashmode - * @param [flashMode] {string} 'off' (iOS & Android), 'on' (iOS & Android), 'auto' (iOS & Android), 'torch' (Android) + * Set the flash mode + * @param {string} [flashMode] 'off' (iOS & Android), 'on' (iOS & Android), 'auto' (iOS & Android), 'torch' (Android) * @return {Promise} */ @Cordova({ @@ -395,7 +395,7 @@ export class CameraPreview extends IonicNativePlugin { /** * Set exposure mode - * @param [lock] {string} + * @param {string} [lock] * @return {Promise} */ @Cordova({ @@ -417,7 +417,7 @@ export class CameraPreview extends IonicNativePlugin { /** * Set exposure compensation (Android) - * @param [exposureCompensation] {number} + * @param {number} [exposureCompensation] * @return {Promise} */ @Cordova({ @@ -439,8 +439,8 @@ export class CameraPreview extends IonicNativePlugin { /** * Set specific focus point. Note, this assumes the camera is full-screen. - * @param xPoint {number} - * @param yPoint {number} + * @param {number} xPoint + * @param {number} yPoint * @return {Promise} */ @Cordova() @@ -450,7 +450,7 @@ export class CameraPreview extends IonicNativePlugin { /** * Add a listener for the back event for the preview - * @return {Promise} if backbutton pressed + * @return {Promise} if back button pressed */ @Cordova() onBackButton(): Promise { diff --git a/src/@ionic-native/plugins/card-io/index.ts b/src/@ionic-native/plugins/card-io/index.ts index 175b49d9c..299fd1acd 100644 --- a/src/@ionic-native/plugins/card-io/index.ts +++ b/src/@ionic-native/plugins/card-io/index.ts @@ -182,7 +182,7 @@ export class CardIO extends IonicNativePlugin { /** * Scan a credit card with card.io. - * @param {CardIOOptions} options Options for configuring the plugin + * @param {CardIOOptions} [options] Options for configuring the plugin * @returns {Promise} */ @Cordova() diff --git a/src/@ionic-native/plugins/code-push/index.ts b/src/@ionic-native/plugins/code-push/index.ts index a7c00d89e..be0116ec7 100644 --- a/src/@ionic-native/plugins/code-push/index.ts +++ b/src/@ionic-native/plugins/code-push/index.ts @@ -22,7 +22,6 @@ namespace Http { export interface Requester { request(verb: Verb, url: string, callback: Callback): void; - request( verb: Verb, url: string, @@ -160,6 +159,12 @@ interface NativeUpdateNotification { export interface Callback { (error: Error, parameter: T): void; } +export interface SuccessCallback { + (result?: T): void; +} +export interface ErrorCallback { + (error?: Error): void; +} export interface SuccessCallback { (result?: T): void; @@ -184,12 +189,10 @@ declare class AcquisitionStatus { declare class AcquisitionManager { constructor(httpRequester: Http.Requester, configuration: Configuration); - public queryUpdateWithCurrentPackage( currentPackage: IPackage, callback?: Callback ): void; - public reportStatusDeploy( pkg?: IPackage, status?: string, @@ -197,7 +200,6 @@ declare class AcquisitionManager { previousDeploymentKey?: string, callback?: Callback ): void; - public reportStatusDownload(pkg: IPackage, callback?: Callback): void; } diff --git a/src/@ionic-native/plugins/contacts/index.ts b/src/@ionic-native/plugins/contacts/index.ts index 01b1d110e..e5d3658e4 100644 --- a/src/@ionic-native/plugins/contacts/index.ts +++ b/src/@ionic-native/plugins/contacts/index.ts @@ -1,12 +1,47 @@ -import { CordovaInstance, InstanceProperty, Plugin, getPromise, InstanceCheck, checkAvailability, CordovaCheck, IonicNativePlugin } from '@ionic-native/core'; +import { + checkAvailability, + CordovaCheck, + CordovaInstance, + getPromise, + InstanceCheck, + InstanceProperty, + IonicNativePlugin, + Plugin +} from '@ionic-native/core'; -declare const window: any, - navigator: any; +declare const window: any, navigator: any; -export type ContactFieldType = '*' | 'addresses' | 'birthday' | 'categories' | 'country' | 'department' | 'displayName' | 'emails' | 'name.familyName' | 'name.formatted' | 'name.givenName' | 'name.honorificPrefix' | 'name.honorificSuffix' | 'id' | 'ims' | 'locality' | 'name.middleName' | 'name' | 'nickname' | 'note' | 'organizations' | 'phoneNumbers' | 'photos' | 'postalCode' | 'region' | 'streetAddress' | 'title' | 'urls'; +export type ContactFieldType = + | '*' + | 'addresses' + | 'birthday' + | 'categories' + | 'country' + | 'department' + | 'displayName' + | 'emails' + | 'name.familyName' + | 'name.formatted' + | 'name.givenName' + | 'name.honorificPrefix' + | 'name.honorificSuffix' + | 'id' + | 'ims' + | 'locality' + | 'name.middleName' + | 'name' + | 'nickname' + | 'note' + | 'organizations' + | 'phoneNumbers' + | 'photos' + | 'postalCode' + | 'region' + | 'streetAddress' + | 'title' + | 'urls'; export interface IContactProperties { - /** A globally unique identifier. */ id?: string; @@ -48,7 +83,6 @@ export interface IContactProperties { /** An array of web pages associated with the contact. */ urls?: IContactField[]; - } /** @@ -74,7 +108,9 @@ export class Contact implements IContactProperties { [key: string]: any; constructor() { - if (checkAvailability('navigator.contacts', 'create', 'Contacts') === true) { + if ( + checkAvailability('navigator.contacts', 'create', 'Contacts') === true + ) { this._objectInstance = navigator.contacts.create(); } } @@ -126,7 +162,7 @@ export declare const ContactError: { PENDING_OPERATION_ERROR: number; IO_ERROR: number; NOT_SUPPORTED_ERROR: number; - PERMISSION_DENIED_ERROR: number + PERMISSION_DENIED_ERROR: number; }; export interface IContactName { @@ -148,13 +184,14 @@ export interface IContactName { * @hidden */ export class ContactName implements IContactName { - constructor(public formatted?: string, - public familyName?: string, - public givenName?: string, - public middleName?: string, - public honorificPrefix?: string, - public honorificSuffix?: string) { - } + constructor( + public formatted?: string, + public familyName?: string, + public givenName?: string, + public middleName?: string, + public honorificPrefix?: string, + public honorificSuffix?: string + ) {} } export interface IContactField { @@ -170,10 +207,11 @@ export interface IContactField { * @hidden */ export class ContactField implements IContactField { - constructor(public type?: string, - public value?: string, - public pref?: boolean) { - } + constructor( + public type?: string, + public value?: string, + public pref?: boolean + ) {} } export interface IContactAddress { @@ -199,15 +237,16 @@ export interface IContactAddress { * @hidden */ export class ContactAddress implements IContactAddress { - constructor(public pref?: boolean, - public type?: string, - public formatted?: string, - public streetAddress?: string, - public locality?: string, - public region?: string, - public postalCode?: string, - public country?: string) { - } + constructor( + public pref?: boolean, + public type?: string, + public formatted?: string, + public streetAddress?: string, + public locality?: string, + public region?: string, + public postalCode?: string, + public country?: string + ) {} } export interface IContactOrganization { @@ -227,12 +266,13 @@ export interface IContactOrganization { * @hidden */ export class ContactOrganization implements IContactOrganization { - constructor(public type?: string, - public name?: string, - public department?: string, - public title?: string, - public pref?: boolean) { - } + constructor( + public type?: string, + public name?: string, + public department?: string, + public title?: string, + public pref?: boolean + ) {} } /** Search options to filter navigator.contacts. */ @@ -253,11 +293,12 @@ export interface IContactFindOptions { * @hidden */ export class ContactFindOptions implements IContactFindOptions { - constructor(public filter?: string, - public multiple?: boolean, - public desiredFields?: string[], - public hasPhoneNumber?: boolean) { - } + constructor( + public filter?: string, + public multiple?: boolean, + public desiredFields?: string[], + public hasPhoneNumber?: boolean + ) {} } /** @@ -298,10 +339,19 @@ export class ContactFindOptions implements IContactFindOptions { plugin: 'cordova-plugin-contacts', pluginRef: 'navigator.contacts', repo: 'https://github.com/apache/cordova-plugin-contacts', - platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows 8', 'Windows Phone'] + platforms: [ + 'Android', + 'BlackBerry 10', + 'Browser', + 'Firefox OS', + 'iOS', + 'Ubuntu', + 'Windows', + 'Windows 8', + 'Windows Phone' + ] }) export class Contacts extends IonicNativePlugin { - /** * Create a single contact. * @returns {Contact} Returns a Contact object @@ -312,16 +362,24 @@ export class Contacts extends IonicNativePlugin { /** * Search for contacts in the Contacts list. - * @param fields {ContactFieldType[]} Contact fields to be used as a search qualifier - * @param options {IContactFindOptions} Optional options for the query + * @param {ContactFieldType[]} fields Contact fields to be used as a search qualifier + * @param {IContactFindOptions} [options] Optional options for the query * @returns {Promise} Returns a Promise that resolves with the search results (an array of Contact objects) */ @CordovaCheck() - find(fields: ContactFieldType[], options?: IContactFindOptions): Promise { + find( + fields: ContactFieldType[], + options?: IContactFindOptions + ): Promise { return getPromise((resolve: Function, reject: Function) => { - navigator.contacts.find(fields, (contacts: any[]) => { - resolve(contacts.map(processContact)); - }, reject, options); + navigator.contacts.find( + fields, + (contacts: any[]) => { + resolve(contacts.map(processContact)); + }, + reject, + options + ); }); } @@ -332,10 +390,12 @@ export class Contacts extends IonicNativePlugin { @CordovaCheck() pickContact(): Promise { return getPromise((resolve: Function, reject: Function) => { - navigator.contacts.pickContact((contact: any) => resolve(processContact(contact)), reject); + navigator.contacts.pickContact( + (contact: any) => resolve(processContact(contact)), + reject + ); }); } - } /** diff --git a/src/@ionic-native/plugins/crop/index.ts b/src/@ionic-native/plugins/crop/index.ts index 8554f30f8..1a19786ce 100644 --- a/src/@ionic-native/plugins/crop/index.ts +++ b/src/@ionic-native/plugins/crop/index.ts @@ -38,8 +38,8 @@ export interface CropOptions { export class Crop extends IonicNativePlugin { /** * Crops an image - * @param pathToImage - * @param options + * @param {string} pathToImage + * @param {CropOptions} [options] * @returns {Promise} Returns a promise that resolves with the new image path, or rejects if failed to crop. */ @Cordova({ diff --git a/src/@ionic-native/plugins/device-accounts/index.ts b/src/@ionic-native/plugins/device-accounts/index.ts index 903ddc380..65333ee0b 100644 --- a/src/@ionic-native/plugins/device-accounts/index.ts +++ b/src/@ionic-native/plugins/device-accounts/index.ts @@ -53,6 +53,7 @@ export class DeviceAccounts extends IonicNativePlugin { /** * Get all accounts registered on Android device for requested type + * @param {string} type * @returns {Promise} */ @Cordova() diff --git a/src/@ionic-native/plugins/device-feedback/index.ts b/src/@ionic-native/plugins/device-feedback/index.ts index ee7a18cc1..ed662b465 100644 --- a/src/@ionic-native/plugins/device-feedback/index.ts +++ b/src/@ionic-native/plugins/device-feedback/index.ts @@ -57,7 +57,7 @@ export class DeviceFeedback extends IonicNativePlugin { /** * Provide vibrate feedback to user, nevertheless respect user's tactile feedback setting as native feedback do. - * @param type {number} Specify type of vibration feedback. 0 for long press, 1 for virtual key, or 3 for keyboard tap. + * @param {number} type Specify type of vibration feedback. 0 for long press, 1 for virtual key, or 3 for keyboard tap. */ @Cordova({ sync: true }) haptic(type: number): void {} diff --git a/src/@ionic-native/plugins/device-orientation/index.ts b/src/@ionic-native/plugins/device-orientation/index.ts index f47a9a4ab..6e5b8bb55 100644 --- a/src/@ionic-native/plugins/device-orientation/index.ts +++ b/src/@ionic-native/plugins/device-orientation/index.ts @@ -101,7 +101,7 @@ export class DeviceOrientation extends IonicNativePlugin { * Get the device current heading at a regular interval * * Stop the watch by unsubscribing from the observable - * @param {DeviceOrientationCompassOptions} options Options for compass. Frequency and Filter. Optional + * @param {DeviceOrientationCompassOptions} [options] Options for compass. Frequency and Filter. Optional * @returns {Observable} Returns an observable that contains the compass heading */ @Cordova({ diff --git a/src/@ionic-native/plugins/diagnostic/index.ts b/src/@ionic-native/plugins/diagnostic/index.ts index 95c8d2e8c..1a233e45f 100644 --- a/src/@ionic-native/plugins/diagnostic/index.ts +++ b/src/@ionic-native/plugins/diagnostic/index.ts @@ -1,5 +1,10 @@ import { Injectable } from '@angular/core'; -import { Cordova, CordovaProperty, IonicNativePlugin, Plugin } from '@ionic-native/core'; +import { + Cordova, + CordovaProperty, + IonicNativePlugin, + Plugin +} from '@ionic-native/core'; /** * @name Diagnostic @@ -43,7 +48,6 @@ import { Cordova, CordovaProperty, IonicNativePlugin, Plugin } from '@ionic-nati }) @Injectable() export class Diagnostic extends IonicNativePlugin { - permission = { READ_CALENDAR: 'READ_CALENDAR', WRITE_CALENDAR: 'WRITE_CALENDAR', @@ -92,9 +96,23 @@ export class Diagnostic extends IonicNativePlugin { CONTACTS: ['READ_CONTACTS', 'WRITE_CONTACTS', 'GET_ACCOUNTS'], LOCATION: ['ACCESS_FINE_LOCATION', 'ACCESS_COARSE_LOCATION'], MICROPHONE: ['RECORD_AUDIO'], - PHONE: ['READ_PHONE_STATE', 'CALL_PHONE', 'ADD_VOICEMAIL', 'USE_SIP', 'PROCESS_OUTGOING_CALLS', 'READ_CALL_LOG', 'WRITE_CALL_LOG'], + PHONE: [ + 'READ_PHONE_STATE', + 'CALL_PHONE', + 'ADD_VOICEMAIL', + 'USE_SIP', + 'PROCESS_OUTGOING_CALLS', + 'READ_CALL_LOG', + 'WRITE_CALL_LOG' + ], SENSORS: ['BODY_SENSORS'], - SMS: ['SEND_SMS', 'RECEIVE_SMS', 'READ_SMS', 'RECEIVE_WAP_PUSH', 'RECEIVE_MMS'], + SMS: [ + 'SEND_SMS', + 'RECEIVE_SMS', + 'READ_SMS', + 'RECEIVE_WAP_PUSH', + 'RECEIVE_MMS' + ], STORAGE: ['READ_EXTERNAL_STORAGE', 'WRITE_EXTERNAL_STORAGE'] }; @@ -181,29 +199,25 @@ export class Diagnostic extends IonicNativePlugin { * Displays the device location settings to allow user to enable location services/change location mode. */ @Cordova({ sync: true, platforms: ['Android', 'Windows 10', 'iOS'] }) - switchToLocationSettings(): void { - } + switchToLocationSettings(): void {} /** * Displays mobile settings to allow user to enable mobile data. */ @Cordova({ sync: true, platforms: ['Android', 'Windows 10'] }) - switchToMobileDataSettings(): void { - } + switchToMobileDataSettings(): void {} /** * Displays Bluetooth settings to allow user to enable Bluetooth. */ @Cordova({ sync: true, platforms: ['Android', 'Windows 10'] }) - switchToBluetoothSettings(): void { - } + switchToBluetoothSettings(): void {} /** * Displays WiFi settings to allow user to enable WiFi. */ @Cordova({ sync: true, platforms: ['Android', 'Windows 10'] }) - switchToWifiSettings(): void { - } + switchToWifiSettings(): void {} /** * Returns true if the WiFi setting is set to enabled, and is the same as `isWifiAvailable()` @@ -217,7 +231,7 @@ export class Diagnostic extends IonicNativePlugin { /** * Enables/disables WiFi on the device. * Requires `ACCESS_WIFI_STATE` and `CHANGE_WIFI_STATE` permissions on Android - * @param state {boolean} + * @param {boolean} state * @returns {Promise} */ @Cordova({ callbackOrder: 'reverse', platforms: ['Android', 'Windows 10'] }) @@ -228,7 +242,7 @@ export class Diagnostic extends IonicNativePlugin { /** * Enables/disables Bluetooth on the device. * Requires `BLUETOOTH` and `BLUETOOTH_ADMIN` permissions on Android - * @param state {boolean} + * @param {boolean} state * @returns {Promise} */ @Cordova({ callbackOrder: 'reverse', platforms: ['Android', 'Windows 10'] }) @@ -236,7 +250,6 @@ export class Diagnostic extends IonicNativePlugin { return; } - // ANDROID AND IOS ONLY /** @@ -448,26 +461,23 @@ export class Diagnostic extends IonicNativePlugin { /** * Registers a function to be called when a change in Bluetooth state occurs. - * @param handler + * @param {Function} handler */ @Cordova({ platforms: ['Android', 'iOS'], sync: true }) - registerBluetoothStateChangeHandler(handler: Function): void { - } + registerBluetoothStateChangeHandler(handler: Function): void {} /** * Registers a function to be called when a change in Location state occurs. - * @param handler + * @param {Function} handler */ @Cordova({ platforms: ['Android', 'iOS'], sync: true }) - registerLocationStateChangeHandler(handler: Function): void { - } - + registerLocationStateChangeHandler(handler: Function): void {} // ANDROID ONLY /** * Checks if high-accuracy locations are available to the app from GPS hardware. - * Returns true if Location mode is enabled and is set to "Device only" or "High accuracy" AND if the app is authorised to use location. + * Returns true if Location mode is enabled and is set to "Device only" or "High accuracy" AND if the app is authorized to use location. * @returns {Promise} */ @Cordova({ platforms: ['Android'] }) @@ -489,7 +499,7 @@ export class Diagnostic extends IonicNativePlugin { /** * Checks if low-accuracy locations are available to the app from network triangulation/WiFi access points. - * Returns true if Location mode is enabled and is set to "Battery saving" or "High accuracy" AND if the app is authorised to use location. + * Returns true if Location mode is enabled and is set to "Battery saving" or "High accuracy" AND if the app is authorized to use location. * @returns {Promise} */ @Cordova({ platforms: ['Android'] }) @@ -519,7 +529,7 @@ export class Diagnostic extends IonicNativePlugin { } /** - * Returns the current authorisation status for a given permission. + * Returns the current authorization status for a given permission. * Note: this is intended for Android 6 / API 23 and above. Calling on Android 5 / API 22 and below will always return GRANTED status as permissions are already granted at installation time. * @param permission * @returns {Promise} @@ -530,9 +540,9 @@ export class Diagnostic extends IonicNativePlugin { } /** - * Returns the current authorisation status for multiple permissions. + * Returns the current authorization status for multiple permissions. * Note: this is intended for Android 6 / API 23 and above. Calling on Android 5 / API 22 and below will always return GRANTED status as permissions are already granted at installation time. - * @param permissions + * @param {any[]} permissions * @returns {Promise} */ @Cordova({ platforms: ['Android'], callbackOrder: 'reverse' }) @@ -541,7 +551,7 @@ export class Diagnostic extends IonicNativePlugin { } /** - * Requests app to be granted authorisation for a runtime permission. + * Requests app to be granted authorization for a runtime permission. * Note: this is intended for Android 6 / API 23 and above. Calling on Android 5 / API 22 and below will have no effect as the permissions are already granted at installation time. * @param permission * @returns {Promise} @@ -552,9 +562,9 @@ export class Diagnostic extends IonicNativePlugin { } /** - * Requests app to be granted authorisation for multiple runtime permissions. + * Requests app to be granted authorization for multiple runtime permissions. * Note: this is intended for Android 6 / API 23 and above. Calling on Android 5 / API 22 and below will always return GRANTED status as permissions are already granted at installation time. - * @param permissions + * @param {any[]} permissions * @returns {Promise} */ @Cordova({ platforms: ['Android'], callbackOrder: 'reverse' }) @@ -576,8 +586,8 @@ export class Diagnostic extends IonicNativePlugin { /** * Registers a function to be called when a runtime permission request has completed. - * Pass in a falsey value to de-register the currently registered function. - * @param handler {Function} + * Pass in a falsy value to de-register the currently registered function. + * @param {Function} handler */ @Cordova({ sync: true }) registerPermissionRequestCompleteHandler(handler: Function): void { @@ -670,8 +680,7 @@ export class Diagnostic extends IonicNativePlugin { platforms: ['Android'], sync: true }) - switchToWirelessSettings(): void { - } + switchToWirelessSettings(): void {} /** * Displays NFC settings to allow user to enable NFC. @@ -680,8 +689,7 @@ export class Diagnostic extends IonicNativePlugin { platforms: ['Android'], sync: true }) - switchToNFCSettings(): void { - } + switchToNFCSettings(): void {} /** * Checks if NFC hardware is present on device. @@ -713,16 +721,15 @@ export class Diagnostic extends IonicNativePlugin { } /** - * Registers a function to be called when a change in NFC state occurs. Pass in a falsey value to de-register the currently registered function. - * @param hander {Function} callback function to be called when NFC state changes + * Registers a function to be called when a change in NFC state occurs. Pass in a falsy value to de-register the currently registered function. + * @param {Function} hander callback function to be called when NFC state changes * @returns {Promise} */ @Cordova({ platforms: ['Android'], sync: true }) - registerNFCStateChangeHandler(handler: Function): void { - } + registerNFCStateChangeHandler(handler: Function): void {} /** * Checks if the device data roaming setting is enabled. @@ -920,5 +927,4 @@ export class Diagnostic extends IonicNativePlugin { getMotionAuthorizationStatus(): Promise { return; } - } diff --git a/src/@ionic-native/plugins/dialogs/index.ts b/src/@ionic-native/plugins/dialogs/index.ts index 03c2674de..a452061ea 100644 --- a/src/@ionic-native/plugins/dialogs/index.ts +++ b/src/@ionic-native/plugins/dialogs/index.ts @@ -1,9 +1,7 @@ import { Injectable } from '@angular/core'; import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; - export interface DialogsPromptCallback { - /** * The index of the pressed button. (Number) Note that the index uses one-based indexing, so the value is 1, 2, 3, etc. */ @@ -13,10 +11,8 @@ export interface DialogsPromptCallback { * The text entered in the prompt dialog box. (String) */ input1: string; - } - /** * @name Dialogs * @description @@ -50,12 +46,11 @@ export interface DialogsPromptCallback { }) @Injectable() export class Dialogs extends IonicNativePlugin { - /** * Shows a custom alert or dialog box. * @param {string} message Dialog message. - * @param {string} title Dialog title. (Optional, defaults to Alert) - * @param {string} buttonName Button name. (Optional, defaults to OK) + * @param {string} [title] Dialog title. (Optional, defaults to Alert) + * @param {string} [buttonName] Button name. (Optional, defaults to OK) * @returns {Promise} Returns a blank promise once the user has dismissed the alert. */ @Cordova({ @@ -69,35 +64,43 @@ export class Dialogs extends IonicNativePlugin { /** * Displays a customizable confirmation dialog box. * @param {string} message Dialog message. - * @param {string} title Dialog title. (Optional, defaults to Confirm) - * @param {Array} buttonLabels Array of strings specifying button labels. (Optional, defaults to [OK,Cancel]) + * @param {string} [title] Dialog title. (Optional, defaults to Confirm) + * @param {Array} [buttonLabels] Array of strings specifying button labels. (Optional, defaults to [OK,Cancel]) * @returns {Promise} Returns a promise that resolves the button index that was clicked, or 0 if the user has dismissed the dialog by clicking outside the dialog box. Note that the index use one-based indexing. */ @Cordova({ successIndex: 1, errorIndex: 4 }) - confirm(message: string, title?: string, buttonLabels?: string[]): Promise { + confirm( + message: string, + title?: string, + buttonLabels?: string[] + ): Promise { return; } /** * Displays a native dialog box that is more customizable than the browser's prompt function. - * @param {string} message Dialog message. - * @param {string} title Dialog title. (Optional, defaults to Prompt) - * @param {Array} buttonLabels Array of strings specifying button labels. (Optional, defaults to ["OK","Cancel"]) - * @param {string} defaultText Default textbox input value. (Optional, Default: empty string) + * @param {string} [message] Dialog message. + * @param {string} [title] Dialog title. (Optional, defaults to Prompt) + * @param {Array} [buttonLabels] Array of strings specifying button labels. (Optional, defaults to ["OK","Cancel"]) + * @param {string} [defaultText] Default text box input value. (Optional, Default: empty string) * @returns {Promise} Returns a promise that resolves an object with the button index clicked and the text entered */ @Cordova({ successIndex: 1, errorIndex: 5 }) - prompt(message?: string, title?: string, buttonLabels?: string[], defaultText?: string): Promise { + prompt( + message?: string, + title?: string, + buttonLabels?: string[], + defaultText?: string + ): Promise { return; } - /** * The device plays a beep sound. * @param {numbers} times The number of times to repeat the beep. @@ -105,7 +108,5 @@ export class Dialogs extends IonicNativePlugin { @Cordova({ sync: true }) - beep(times: number): void { - } - + beep(times: number): void {} } diff --git a/src/@ionic-native/plugins/document-picker/index.ts b/src/@ionic-native/plugins/document-picker/index.ts index f9f636f6d..bb1f6252a 100644 --- a/src/@ionic-native/plugins/document-picker/index.ts +++ b/src/@ionic-native/plugins/document-picker/index.ts @@ -1,14 +1,12 @@ - import { Injectable } from '@angular/core'; import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core'; - /** * @name iOS DocumentPicker * @description * * Opens the file picker on iOS for the user to select a file, returns a file URI. - * Allows the user to upload files from icloud + * Allows the user to upload files from iCloud * * @usage * ```typescript @@ -33,13 +31,13 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core'; }) @Injectable() export class DocumentPicker extends IonicNativePlugin { - /** * Open a file - * @param {string} filters files between 'image', 'pdf' or 'all' + * @param {string} [option] files between 'image', 'pdf' or 'all' * @returns {Promise} */ @Cordova() - getFile(options?: string): Promise { return; } - + getFile(option?: string): Promise { + return; + } } diff --git a/src/@ionic-native/plugins/email-composer/index.ts b/src/@ionic-native/plugins/email-composer/index.ts index 73a13e50b..303917874 100644 --- a/src/@ionic-native/plugins/email-composer/index.ts +++ b/src/@ionic-native/plugins/email-composer/index.ts @@ -120,7 +120,7 @@ export class EmailComposer extends IonicNativePlugin { /** * Verifies if sending emails is supported on the device. * - * @param [app] {string} App id or uri scheme. + * @param {string} [app] App id or uri scheme. * @returns {Promise} Resolves if available, rejects if not available */ @CordovaCheck() @@ -173,8 +173,8 @@ export class EmailComposer extends IonicNativePlugin { /** * Adds a new mail app alias. * - * @param alias {string} The alias name - * @param packageName {string} The package name + * @param {string} alias The alias name + * @param {string} packageName The package name */ @Cordova() addAlias(alias: string, packageName: string): void {} @@ -182,8 +182,8 @@ export class EmailComposer extends IonicNativePlugin { /** * Displays the email composer pre-filled with data. * - * @param options {EmailComposerOptions} Email - * @param [scope] {any} Scope for the promise + * @param {EmailComposerOptions} options Email + * @param {any} [scope] Scope for the promise * @returns {Promise} Resolves promise when the EmailComposer has been opened */ @Cordova({ diff --git a/src/@ionic-native/plugins/estimote-beacons/index.ts b/src/@ionic-native/plugins/estimote-beacons/index.ts index 7a6fe4ffe..6fac5c079 100644 --- a/src/@ionic-native/plugins/estimote-beacons/index.ts +++ b/src/@ionic-native/plugins/estimote-beacons/index.ts @@ -180,10 +180,10 @@ export class EstimoteBeacons extends IonicNativePlugin { * EstimoteBeacons.stopAdvertisingAsBeacon().then((result) => { console.log('Beacon stopped'); }); * }, 5000); * ``` - * @param uuid {string} UUID string the beacon should advertise (mandatory). - * @param major {number} Major value to advertise (mandatory). - * @param minor {number} Minor value to advertise (mandatory). - * @param regionId {string} Identifier of the region used to advertise (mandatory). + * @param {string} uuid UUID string the beacon should advertise (mandatory). + * @param {number} major Major value to advertise (mandatory). + * @param {number} minor Minor value to advertise (mandatory). + * @param {string} regionId Identifier of the region used to advertise (mandatory). * @returns {Promise} */ @Cordova({ @@ -225,7 +225,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * ``` * EstimoteBeacons.enableAnalytics(true).then(() => { console.log('Analytics enabled'); }); * ``` - * @param enable {number} Boolean value to turn analytics on or off (mandatory). + * @param {number} enable Boolean value to turn analytics on or off (mandatory). * @returns {Promise} */ @Cordova() @@ -274,8 +274,8 @@ export class EstimoteBeacons extends IonicNativePlugin { * ``` * EstimoteBeacons.setupAppIDAndAppToken('MyAppID', 'MyAppToken').then(() => { console.log('AppID and AppToken configured!'); }); * ``` - * @param appID {string} The App ID (mandatory). - * @param appToken {string} The App Token (mandatory). + * @param {string} appID The App ID (mandatory). + * @param {string} appToken The App Token (mandatory). * @returns {Promise} */ @Cordova() @@ -338,7 +338,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * EstimoteBeacons.stopRangingBeaconsInRegion(region).then(() => { console.log('scan stopped'); }); * }, 5000); * ``` - * @param region {EstimoteBeaconRegion} Dictionary with region properties (mandatory). + * @param {EstimoteBeaconRegion} region Dictionary with region properties (mandatory). * @returns {Observable} Returns an Observable that notifies of each beacon discovered. */ @Cordova({ @@ -363,7 +363,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * EstimoteBeacons.stopRangingBeaconsInRegion(region).then(() => { console.log('scan stopped'); }); * }, 5000); * ``` - * @param region {EstimoteBeaconRegion} Dictionary with region properties (mandatory). + * @param {EstimoteBeaconRegion} region Dictionary with region properties (mandatory). * @returns {Promise} */ @Cordova() @@ -373,7 +373,7 @@ export class EstimoteBeacons extends IonicNativePlugin { /** * Start ranging secure beacons. Available on iOS. - * This function has the same parameters/behaviour as + * This function has the same parameters/behavior as * {@link EstimoteBeacons.startRangingBeaconsInRegion}. * To use secure beacons set the App ID and App Token using * {@link EstimoteBeacons.setupAppIDAndAppToken}. @@ -392,7 +392,7 @@ export class EstimoteBeacons extends IonicNativePlugin { /** * Stop ranging secure beacons. Available on iOS. - * This function has the same parameters/behaviour as + * This function has the same parameters/behavior as * {@link EstimoteBeacons.stopRangingBeaconsInRegion}. * @returns {Promise} */ @@ -411,8 +411,8 @@ export class EstimoteBeacons extends IonicNativePlugin { * console.log('Region state: ' + JSON.stringify(state)); * }); * ``` - * @param region {EstimoteBeaconRegion} Dictionary with region properties (mandatory). - * @param [notifyEntryStateOnDisplay=false] {boolean} Set to true to detect if you + * @param {EstimoteBeaconRegion} region Dictionary with region properties (mandatory). + * @param {boolean} [notifyEntryStateOnDisplay] Set to true to detect if you * are inside a region when the user turns display on, see * {@link https://developer.apple.com/library/prerelease/ios/documentation/CoreLocation/Reference/CLBeaconRegion_class/index.html#//apple_ref/occ/instp/CLBeaconRegion/notifyEntryStateOnDisplay|iOS documentation} * for further details (iOS only). @@ -440,7 +440,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * let region: EstimoteBeaconRegion = {} // Empty region matches all beacons. * EstimoteBeacons.stopMonitoringForRegion(region).then(() => { console.log('monitoring is stopped'); }); * ``` - * @param region {EstimoteBeaconRegion} Dictionary with region properties (mandatory). + * @param {EstimoteBeaconRegion} region Dictionary with region properties (mandatory). * @returns {Promise} */ @Cordova() @@ -450,13 +450,13 @@ export class EstimoteBeacons extends IonicNativePlugin { /** * Start monitoring secure beacons. Available on iOS. - * This function has the same parameters/behaviour as + * This function has the same parameters/behavior as * EstimoteBeacons.startMonitoringForRegion. * To use secure beacons set the App ID and App Token using * {@link EstimoteBeacons.setupAppIDAndAppToken}. * @see {@link EstimoteBeacons.startMonitoringForRegion} - * @param region {EstimoteBeaconRegion} Region - * @param notifyEntryStateOnDisplay {boolean} + * @param {EstimoteBeaconRegion} region Region + * @param {boolean} notifyEntryStateOnDisplay * @returns {Observable} */ @Cordova({ @@ -499,7 +499,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * minor: 1 * }); * ``` - * @param beacon {Beacon} Beacon to connect to. + * @param {Beacon} beacon Beacon to connect to. * @returns {Promise} */ @Cordova() @@ -529,7 +529,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * // Example that writes constant ESTIMOTE_PROXIMITY_UUID * EstimoteBeacons.writeConnectedProximityUUID(ESTIMOTE_PROXIMITY_UUID); * - * @param uuid {string} String to write as new UUID + * @param {string} uuid String to write as new UUID * @returns {Promise} */ @Cordova() @@ -545,7 +545,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * // Example that writes 1 * EstimoteBeacons.writeConnectedMajor(1); * - * @param major {number} number to write as new major + * @param {number} major number to write as new major * @returns {Promise} */ @Cordova() @@ -561,7 +561,7 @@ export class EstimoteBeacons extends IonicNativePlugin { * // Example that writes 1 * EstimoteBeacons.writeConnectedMinor(1); * - * @param minor {number} number to write as new minor + * @param {number} minor number to write as new minor * @returns {Promise} */ @Cordova() diff --git a/src/@ionic-native/plugins/fcm/index.ts b/src/@ionic-native/plugins/fcm/index.ts index e92ee3930..e411938b2 100644 --- a/src/@ionic-native/plugins/fcm/index.ts +++ b/src/@ionic-native/plugins/fcm/index.ts @@ -1,5 +1,6 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Observable } from 'rxjs'; export interface NotificationData { @@ -63,7 +64,7 @@ export interface NotificationData { @Injectable() export class FCM extends IonicNativePlugin { /** - * Get's device's current registration id + * Gets device's current registration id * * @returns {Promise} Returns a Promise that resolves with the registration id token */ @@ -97,7 +98,7 @@ export class FCM extends IonicNativePlugin { } /** - * Unubscribes you from a [topic](https://firebase.google.com/docs/notifications/android/console-topics) + * Unsubscribes you from a [topic](https://firebase.google.com/docs/notifications/android/console-topics) * * @param {string} topic Topic to be unsubscribed from * diff --git a/src/@ionic-native/plugins/file-encryption/index.ts b/src/@ionic-native/plugins/file-encryption/index.ts index 55b3e2de2..606d04045 100644 --- a/src/@ionic-native/plugins/file-encryption/index.ts +++ b/src/@ionic-native/plugins/file-encryption/index.ts @@ -1,5 +1,5 @@ -import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; /** * @name File Encryption @@ -30,11 +30,10 @@ import { Injectable } from '@angular/core'; }) @Injectable() export class FileEncryption extends IonicNativePlugin { - /** - * Enrcypt a file - * @param file {string} A string representing a local URI - * @param key {string} A key for the crypto operations + * Encrypt a file + * @param {string} file A string representing a local URI + * @param {string} key A key for the crypto operations * @return {Promise} Returns a promise that resolves when something happens */ @Cordova() @@ -44,13 +43,12 @@ export class FileEncryption extends IonicNativePlugin { /** * Decrypt a file - * @param file {string} A string representing a local URI - * @param key {string} A key for the crypto operations + * @param {string} file A string representing a local URI + * @param {string} key A key for the crypto operations * @return {Promise} Returns a promise that resolves when something happens */ @Cordova() decrypt(file: string, key: string): Promise { return; } - } diff --git a/src/@ionic-native/plugins/file-opener/index.ts b/src/@ionic-native/plugins/file-opener/index.ts index 26e382ce6..9d691fcbc 100644 --- a/src/@ionic-native/plugins/file-opener/index.ts +++ b/src/@ionic-native/plugins/file-opener/index.ts @@ -16,7 +16,7 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; * * this.fileOpener.open('path/to/file.pdf', 'application/pdf') * .then(() => console.log('File is opened')) - * .catch(e => console.log('Error openening file', e)); + * .catch(e => console.log('Error opening file', e)); * * ``` */ @@ -29,11 +29,10 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; }) @Injectable() export class FileOpener extends IonicNativePlugin { - /** * Open an file - * @param filePath {string} File Path - * @param fileMIMEType {string} File MIME Type + * @param {string} filePath File Path + * @param {string} fileMIMEType File MIME Type * @returns {Promise} */ @Cordova({ @@ -47,7 +46,7 @@ export class FileOpener extends IonicNativePlugin { /** * Uninstalls a package - * @param packageId {string} Package ID + * @param {string} packageId Package ID * @returns {Promise} */ @Cordova({ @@ -61,7 +60,7 @@ export class FileOpener extends IonicNativePlugin { /** * Check if an app is already installed - * @param packageId {string} Package ID + * @param {string} packageId Package ID * @returns {Promise} */ @Cordova({ @@ -72,5 +71,4 @@ export class FileOpener extends IonicNativePlugin { appIsInstalled(packageId: string): Promise { return; } - } diff --git a/src/@ionic-native/plugins/file-path/index.ts b/src/@ionic-native/plugins/file-path/index.ts index 86c8dc2dc..3e5896a23 100644 --- a/src/@ionic-native/plugins/file-path/index.ts +++ b/src/@ionic-native/plugins/file-path/index.ts @@ -32,15 +32,13 @@ declare const window: any; }) @Injectable() export class FilePath extends IonicNativePlugin { - /** * Resolve native path for given content URL/path. - * @param {String} path Content URL/path. + * @param {string} path Content URL/path. * @returns {Promise} */ @Cordova() resolveNativePath(path: string): Promise { return; } - } diff --git a/src/@ionic-native/plugins/file-transfer/index.ts b/src/@ionic-native/plugins/file-transfer/index.ts index 84aa7fa3b..b935aa86d 100644 --- a/src/@ionic-native/plugins/file-transfer/index.ts +++ b/src/@ionic-native/plugins/file-transfer/index.ts @@ -1,8 +1,13 @@ import { Injectable } from '@angular/core'; -import { checkAvailability, CordovaInstance, InstanceCheck, IonicNativePlugin, Plugin } from '@ionic-native/core'; +import { + checkAvailability, + CordovaInstance, + InstanceCheck, + IonicNativePlugin, + Plugin +} from '@ionic-native/core'; export interface FileUploadOptions { - /** * The name of the form element. * Defaults to 'file'. @@ -30,7 +35,7 @@ export interface FileUploadOptions { /** * A set of optional key/value pairs to pass in the HTTP request. */ - params?: { [s: string]: any; }; + params?: { [s: string]: any }; /** * Whether to upload the data in chunked streaming mode. @@ -43,12 +48,10 @@ export interface FileUploadOptions { * than one value. On iOS, FireOS, and Android, if a header named * Content-Type is present, multipart form data will NOT be used. */ - headers?: { [s: string]: any; }; - + headers?: { [s: string]: any }; } export interface FileUploadResult { - /** * The number of bytes sent to the server as part of the upload. */ @@ -67,12 +70,10 @@ export interface FileUploadResult { /** * The HTTP response headers by the server. */ - headers: { [s: string]: any; }; - + headers: { [s: string]: any }; } export interface FileTransferError { - /** * One of the predefined error codes listed below. */ @@ -103,7 +104,6 @@ export interface FileTransferError { * Either e.getMessage or e.toString. */ exception: string; - } /** @@ -179,11 +179,18 @@ export interface FileTransferError { plugin: 'cordova-plugin-file-transfer', pluginRef: 'FileTransfer', repo: 'https://github.com/apache/cordova-plugin-file-transfer', - platforms: ['Amazon Fire OS', 'Android', 'Browser', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone'] + platforms: [ + 'Amazon Fire OS', + 'Android', + 'Browser', + 'iOS', + 'Ubuntu', + 'Windows', + 'Windows Phone' + ] }) @Injectable() export class FileTransfer extends IonicNativePlugin { - /** * Error code rejected from upload with FileTransferError * Defined in FileTransferError. @@ -209,7 +216,6 @@ export class FileTransfer extends IonicNativePlugin { create(): FileTransferObject { return new FileTransferObject(); } - } /** @@ -223,7 +229,13 @@ export class FileTransferObject { private _objectInstance: any; constructor() { - if (checkAvailability(FileTransfer.getPluginRef(), null, FileTransfer.getPluginName()) === true) { + if ( + checkAvailability( + FileTransfer.getPluginRef(), + null, + FileTransfer.getPluginName() + ) === true + ) { this._objectInstance = new (FileTransfer.getPlugin())(); } } @@ -233,15 +245,20 @@ export class FileTransferObject { * * @param {string} fileUrl Filesystem URL representing the file on the device or a data URI. For backwards compatibility, this can also be the full path of the file on the device. * @param {string} url URL of the server to receive the file, as encoded by encodeURI(). - * @param {FileUploadOptions} options Optional parameters. - * @param {boolean} trustAllHosts Optional parameter, defaults to false. If set to true, it accepts all security certificates. This is useful since Android rejects self-signed security certificates. Not recommended for production use. Supported on Android and iOS. + * @param {FileUploadOptions} [options] Optional parameters. + * @param {boolean} [trustAllHosts] Optional parameter, defaults to false. If set to true, it accepts all security certificates. This is useful since Android rejects self-signed security certificates. Not recommended for production use. Supported on Android and iOS. * @returns {Promise} Returns a Promise that resolves to a FileUploadResult and rejects with FileTransferError. */ @CordovaInstance({ successIndex: 2, errorIndex: 3 }) - upload(fileUrl: string, url: string, options?: FileUploadOptions, trustAllHosts?: boolean): Promise { + upload( + fileUrl: string, + url: string, + options?: FileUploadOptions, + trustAllHosts?: boolean + ): Promise { return; } @@ -250,21 +267,26 @@ export class FileTransferObject { * * @param {string} source URL of the server to download the file, as encoded by encodeURI(). * @param {string} target Filesystem url representing the file on the device. For backwards compatibility, this can also be the full path of the file on the device. - * @param {boolean} trustAllHosts Optional parameter, defaults to false. If set to true, it accepts all security certificates. This is useful because Android rejects self-signed security certificates. Not recommended for production use. Supported on Android and iOS. - * @param {object} Optional parameters, currently only supports headers (such as Authorization (Basic Authentication), etc). + * @param {boolean} [trustAllHosts] Optional parameter, defaults to false. If set to true, it accepts all security certificates. This is useful because Android rejects self-signed security certificates. Not recommended for production use. Supported on Android and iOS. + * @param {object} [Optional] parameters, currently only supports headers (such as Authorization (Basic Authentication), etc). * @returns {Promise} Returns a Promise that resolves to a FileEntry object. */ @CordovaInstance({ successIndex: 2, errorIndex: 3 }) - download(source: string, target: string, trustAllHosts?: boolean, options?: { [s: string]: any; }): Promise { + download( + source: string, + target: string, + trustAllHosts?: boolean, + options?: { [s: string]: any } + ): Promise { return; } /** * Registers a listener that gets called whenever a new chunk of data is transferred. - * @param listener {function} Listener that takes a progress event. + * @param {Function} listener Listener that takes a progress event. */ @InstanceCheck({ sync: true }) onProgress(listener: (event: ProgressEvent) => any): void { diff --git a/src/@ionic-native/plugins/file/index.ts b/src/@ionic-native/plugins/file/index.ts index e3c7c213d..79241dc99 100644 --- a/src/@ionic-native/plugins/file/index.ts +++ b/src/@ionic-native/plugins/file/index.ts @@ -3,8 +3,7 @@ import { CordovaCheck, CordovaProperty, IonicNativePlugin, - Plugin, - getPromise + Plugin } from '@ionic-native/core'; export interface IFile extends Blob { @@ -147,6 +146,28 @@ export interface Entry { * Entry is a directory. */ isDirectory: boolean; + /** + * Look up metadata about this entry. + * @param successCallback A callback that is called with the time of the last modification. + * @param errorCallback ErrorCallback A callback that is called when errors happen. + */ + getMetadata( + successCallback: MetadataCallback, + errorCallback?: ErrorCallback + ): void; + + /** + * Set the metadata of the entry. + * @param successCallback {Function} is called with a Metadata object + * @param errorCallback {Function} is called with a FileError + * @param metadataObject {Metadata} keys and values to set + */ + setMetadata( + successCallback: MetadataCallback, + errorCallback: ErrorCallback, + metadataObject: Metadata + ): void; + /** * The name of the entry, excluding the path leading to it. */ @@ -456,6 +477,27 @@ export interface RemoveResult { /** @hidden */ export declare class FileSaver extends EventTarget { + /** + * When the FileSaver constructor is called, the user agent must return a new FileSaver object with readyState set to INIT. + * This constructor must be visible when the script's global object is either a Window object or an object implementing the WorkerUtils interface. + */ + constructor(data: Blob); + + /** + * When the abort method is called, user agents must run the steps below: + *
    + *
  1. If readyState == DONE or readyState == INIT, terminate this overall series of steps without doing anything else.
  2. + *
  3. Set readyState to DONE.
  4. + *
  5. If there are any tasks from the object's FileSaver task source in one of the task queues, then remove those tasks.
  6. + *
  7. Terminate the write algorithm being processed.
  8. + *
  9. Set the error attribute to a DOMError object of type "AbortError".
  10. + *
  11. Fire a progress event called abort
  12. + *
  13. Fire a progress event called write end
  14. + *
  15. Terminate this algorithm.
  16. + *
+ */ + abort(): void; + /** * The blob is being written. * @readonly @@ -487,7 +529,7 @@ export declare class FileSaver extends EventTarget { */ error: Error; /** - * Handler for writestart events + * Handler for write start events */ onwritestart: (event: ProgressEvent) => void; /** @@ -507,7 +549,7 @@ export declare class FileSaver extends EventTarget { */ onerror: (event: ProgressEvent) => void; /** - * Handler for writeend events. + * Handler for write end events. */ onwriteend: (event: ProgressEvent) => void; @@ -648,7 +690,7 @@ declare const window: Window; * * ... * - * this.file.checkDir(this.file.dataDirectory, 'mydir').then(_ => console.log('Directory exists')).catch(err => console.log('Directory doesnt exist')); + * this.file.checkDir(this.file.dataDirectory, 'mydir').then(_ => console.log('Directory exists')).catch(err => console.log('Directory doesn't exist')); * * ``` * @@ -675,63 +717,63 @@ export class File extends IonicNativePlugin { /** * Read-only directory where the application is installed. */ - @CordovaProperty() applicationDirectory: string; + @CordovaProperty applicationDirectory: string; /** * Read-only directory where the application is installed. */ - @CordovaProperty() applicationStorageDirectory: string; + @CordovaProperty applicationStorageDirectory: string; /** * Where to put app-specific data files. */ - @CordovaProperty() dataDirectory: string; + @CordovaProperty dataDirectory: string; /** * Cached files that should survive app restarts. * Apps should not rely on the OS to delete files in here. */ - @CordovaProperty() cacheDirectory: string; + @CordovaProperty cacheDirectory: string; /** * Android: the application space on external storage. */ - @CordovaProperty() externalApplicationStorageDirectory: string; + @CordovaProperty externalApplicationStorageDirectory: string; /** * Android: Where to put app-specific data files on external storage. */ - @CordovaProperty() externalDataDirectory: string; + @CordovaProperty externalDataDirectory: string; /** * Android: the application cache on external storage. */ - @CordovaProperty() externalCacheDirectory: string; + @CordovaProperty externalCacheDirectory: string; /** * Android: the external storage (SD card) root. */ - @CordovaProperty() externalRootDirectory: string; + @CordovaProperty externalRootDirectory: string; /** * iOS: Temp directory that the OS can clear at will. */ - @CordovaProperty() tempDirectory: string; + @CordovaProperty tempDirectory: string; /** * iOS: Holds app-specific files that should be synced (e.g. to iCloud). */ - @CordovaProperty() syncedDataDirectory: string; + @CordovaProperty syncedDataDirectory: string; /** * iOS: Files private to the app, but that are meaningful to other applications (e.g. Office files) */ - @CordovaProperty() documentsDirectory: string; + @CordovaProperty documentsDirectory: string; /** * BlackBerry10: Files globally available to all apps */ - @CordovaProperty() sharedDirectory: string; + @CordovaProperty sharedDirectory: string; cordovaFileError: any = { 1: 'NOT_FOUND_ERR', @@ -764,20 +806,20 @@ export class File extends IonicNativePlugin { /** * Check if a directory exists in a certain path, directory. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} dir Name of directory to check * @returns {Promise} Returns a Promise that resolves to true if the directory exists or rejects with an error. */ @CordovaCheck() checkDir(path: string, dir: string): Promise { if (/^\//.test(dir)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } - const fullpath = path + dir; - return this.resolveDirectoryUrl(fullpath).then(() => { + const fullPath = path + dir; + return this.resolveDirectoryUrl(fullPath).then(() => { return true; }); } @@ -787,7 +829,7 @@ export class File extends IonicNativePlugin { * The replace boolean value determines whether to replace an existing directory with the same name. * If an existing directory exists and the replace value is false, the promise will fail and return an error. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} dirName Name of directory to create * @param {boolean} replace If true, replaces file with same name. If false returns error * @returns {Promise} Returns a Promise that resolves with a DirectoryEntry or rejects with an error. @@ -799,7 +841,7 @@ export class File extends IonicNativePlugin { replace: boolean ): Promise { if (/^\//.test(dirName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } @@ -827,7 +869,7 @@ export class File extends IonicNativePlugin { @CordovaCheck() removeDir(path: string, dirName: string): Promise { if (/^\//.test(dirName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } @@ -846,7 +888,7 @@ export class File extends IonicNativePlugin { * * @param {string} path The source path to the directory * @param {string} dirName The source directory name - * @param {string} newPath The destionation path to the directory + * @param {string} newPath The destination path to the directory * @param {string} newDirName The destination directory name * @returns {Promise} Returns a Promise that resolves to the new DirectoryEntry object or rejects with an error. */ @@ -860,7 +902,7 @@ export class File extends IonicNativePlugin { newDirName = newDirName || dirName; if (/^\//.test(newDirName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } @@ -870,8 +912,8 @@ export class File extends IonicNativePlugin { return this.getDirectory(fse, dirName, { create: false }); }) .then(srcde => { - return this.resolveDirectoryUrl(newPath).then(deste => { - return this.move(srcde, deste, newDirName); + return this.resolveDirectoryUrl(newPath).then(destenation => { + return this.move(srcde, destenation, newDirName); }); }); } @@ -893,7 +935,7 @@ export class File extends IonicNativePlugin { newDirName: string ): Promise { if (/^\//.test(newDirName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } @@ -919,7 +961,7 @@ export class File extends IonicNativePlugin { @CordovaCheck() listDir(path: string, dirName: string): Promise { if (/^\//.test(dirName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } @@ -932,7 +974,7 @@ export class File extends IonicNativePlugin { }); }) .then(de => { - const reader = de.createReader(); + let reader = de.createReader(); return this.readEntries(reader); }); } @@ -940,14 +982,14 @@ export class File extends IonicNativePlugin { /** * Removes all files and the directory from a desired location. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} dirName Name of directory * @returns {Promise} Returns a Promise that resolves with a RemoveResult or rejects with an error. */ @CordovaCheck() removeRecursively(path: string, dirName: string): Promise { if (/^\//.test(dirName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'directory cannot start with /'; return Promise.reject(err); } @@ -964,14 +1006,14 @@ export class File extends IonicNativePlugin { /** * Check if a file exists in a certain path, directory. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} file Name of file to check * @returns {Promise} Returns a Promise that resolves with a boolean or rejects with an error. */ @CordovaCheck() checkFile(path: string, file: string): Promise { if (/^\//.test(file)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'file cannot start with /'; return Promise.reject(err); } @@ -980,7 +1022,7 @@ export class File extends IonicNativePlugin { if (fse.isFile) { return true; } else { - const err = new FileError(13); + let err = new FileError(13); err.message = 'input is not a file'; return Promise.reject(err); } @@ -992,7 +1034,7 @@ export class File extends IonicNativePlugin { * The replace boolean value determines whether to replace an existing file with the same name. * If an existing file exists and the replace value is false, the promise will fail and return an error. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} fileName Name of file to create * @param {boolean} replace If true, replaces file with same name. If false returns error * @returns {Promise} Returns a Promise that resolves to a FileEntry or rejects with an error. @@ -1004,7 +1046,7 @@ export class File extends IonicNativePlugin { replace: boolean ): Promise { if (/^\//.test(fileName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'file-name cannot start with /'; return Promise.reject(err); } @@ -1025,14 +1067,14 @@ export class File extends IonicNativePlugin { /** * Removes a file from a desired location. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} fileName Name of file to remove * @returns {Promise} Returns a Promise that resolves to a RemoveResult or rejects with an error. */ @CordovaCheck() removeFile(path: string, fileName: string): Promise { if (/^\//.test(fileName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'file-name cannot start with /'; return Promise.reject(err); } @@ -1048,7 +1090,7 @@ export class File extends IonicNativePlugin { /* Write a new file to the desired location. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} fileName path relative to base path * @param {string | Blob | ArrayBuffer} text content, blob or ArrayBuffer to write * @param {IWriteOptions} options replace file if set to true. See WriteOptions for more information. @@ -1083,7 +1125,35 @@ export class File extends IonicNativePlugin { /* Write to an existing file. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @hidden + * @param {FileEntry} fe file entry object + * @param {string | Blob} text content or blob to write + * @param {IWriteOptions} options replace file if set to true. See WriteOptions for more information. + * @returns {Promise} Returns a Promise that resolves to updated file entry or rejects with an error. + */ + private writeFileEntry( + fe: FileEntry, + text: string | Blob | ArrayBuffer, + options: IWriteOptions + ) { + return this.createWriter(fe) + .then(writer => { + if (options.append) { + writer.seek(writer.length); + } + + if (options.truncate) { + writer.truncate(options.truncate); + } + + return this.write(writer, text); + }) + .then(() => fe); + } + + /** Write to an existing file. + * + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} fileName path relative to base path * @param {string | Blob} text content or blob to write * @returns {Promise} Returns a Promise that resolves or rejects with an error. @@ -1100,7 +1170,7 @@ export class File extends IonicNativePlugin { /** * Read the contents of a file as text. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} file Name of file, relative to path. * @returns {Promise} Returns a Promise that resolves with the contents of the file as string or rejects with an error. */ @@ -1113,8 +1183,8 @@ export class File extends IonicNativePlugin { * Read file and return data as a base64 encoded data url. * A data url is of the form: * data: [][;base64], - * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} file Name of file, relative to path. * @returns {Promise} Returns a Promise that resolves with the contents of the file as data URL or rejects with an error. */ @@ -1125,7 +1195,7 @@ export class File extends IonicNativePlugin { /** * Read file and return data as a binary data. - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} file Name of file, relative to path. * @returns {Promise} Returns a Promise that resolves with the contents of the file as string rejects with an error. */ @@ -1136,7 +1206,7 @@ export class File extends IonicNativePlugin { /** * Read file and return data as an ArrayBuffer. - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} file Name of file, relative to path. * @returns {Promise} Returns a Promise that resolves with the contents of the file as ArrayBuffer or rejects with an error. */ @@ -1145,10 +1215,50 @@ export class File extends IonicNativePlugin { return this.readFile(path, file, 'ArrayBuffer'); } + private readFile( + path: string, + file: string, + readAs: 'ArrayBuffer' | 'BinaryString' | 'DataURL' | 'Text' + ): Promise { + if (/^\//.test(file)) { + let err = new FileError(5); + err.message = 'file-name cannot start with /'; + return Promise.reject(err); + } + + return this.resolveDirectoryUrl(path) + .then((directoryEntry: DirectoryEntry) => { + return this.getFile(directoryEntry, file, { create: false }); + }) + .then((fileEntry: FileEntry) => { + const reader = new FileReader(); + return new Promise((resolve, reject) => { + reader.onloadend = () => { + if (reader.result !== undefined || reader.result !== null) { + resolve((reader.result)); + } else if (reader.error !== undefined || reader.error !== null) { + reject(reader.error); + } else { + reject({ code: null, message: 'READER_ONLOADEND_ERR' }); + } + }; + + fileEntry.file( + file => { + reader[`readAs${readAs}`].call(reader, file); + }, + error => { + reject(error); + } + ); + }); + }); + } + /** * Move a file to a given path. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} fileName Name of file to move * @param {string} newPath Base FileSystem of new location * @param {string} newFileName New name of file to move to (leave blank to remain the same) @@ -1164,7 +1274,7 @@ export class File extends IonicNativePlugin { newFileName = newFileName || fileName; if (/^\//.test(newFileName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'file name cannot start with /'; return Promise.reject(err); } @@ -1183,7 +1293,7 @@ export class File extends IonicNativePlugin { /** * Copy a file in various methods. If file exists, will fail to copy. * - * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystems above + * @param {string} path Base FileSystem. Please refer to the iOS and Android filesystem above * @param {string} fileName Name of file to copy * @param {string} newPath Base FileSystem of new location * @param {string} newFileName New name of file to copy to (leave blank to remain the same) @@ -1199,7 +1309,7 @@ export class File extends IonicNativePlugin { newFileName = newFileName || fileName; if (/^\//.test(newFileName)) { - const err = new FileError(5); + let err = new FileError(5); err.message = 'file name cannot start with /'; return Promise.reject(err); } @@ -1215,6 +1325,15 @@ export class File extends IonicNativePlugin { }); } + /** + * @hidden + */ + private fillErrorMessage(err: FileError): void { + try { + err.message = this.cordovaFileError[err.code]; + } catch (e) {} + } + /** * Resolves a local file system URL * @param fileUrl {string} file system url @@ -1272,7 +1391,7 @@ export class File extends IonicNativePlugin { directoryName: string, flags: Flags ): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { try { directoryEntry.getDirectory( directoryName, @@ -1305,7 +1424,7 @@ export class File extends IonicNativePlugin { fileName: string, flags: Flags ): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { try { directoryEntry.getFile(fileName, flags, resolve, err => { this.fillErrorMessage(err); @@ -1399,7 +1518,7 @@ export class File extends IonicNativePlugin { * @hidden */ private remove(fe: Entry): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { fe.remove( () => { resolve({ success: true, fileRemoved: fe }); @@ -1420,7 +1539,7 @@ export class File extends IonicNativePlugin { destdir: DirectoryEntry, newName: string ): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { srce.moveTo( destdir, newName, @@ -1443,7 +1562,7 @@ export class File extends IonicNativePlugin { destdir: DirectoryEntry, newName: string ): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { srce.copyTo( destdir, newName, @@ -1462,7 +1581,7 @@ export class File extends IonicNativePlugin { * @hidden */ private readEntries(dr: DirectoryReader): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { dr.readEntries( entries => { resolve(entries); @@ -1479,7 +1598,7 @@ export class File extends IonicNativePlugin { * @hidden */ private rimraf(de: DirectoryEntry): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { de.removeRecursively( () => { resolve({ success: true, fileRemoved: de }); @@ -1496,7 +1615,7 @@ export class File extends IonicNativePlugin { * @hidden */ private createWriter(fe: FileEntry): Promise { - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { fe.createWriter( writer => { resolve(writer); @@ -1520,7 +1639,7 @@ export class File extends IonicNativePlugin { return this.writeFileInChunks(writer, gu); } - return getPromise((resolve, reject) => { + return new Promise((resolve, reject) => { writer.onwriteend = evt => { if (writer.error) { reject(writer.error); diff --git a/src/@ionic-native/plugins/fingerprint-aio/index.ts b/src/@ionic-native/plugins/fingerprint-aio/index.ts index b2c30d482..85ed812d2 100644 --- a/src/@ionic-native/plugins/fingerprint-aio/index.ts +++ b/src/@ionic-native/plugins/fingerprint-aio/index.ts @@ -1,7 +1,6 @@ import { Injectable } from '@angular/core'; import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; - export interface FingerprintOptions { /** * Key for platform keychain @@ -66,7 +65,6 @@ export interface FingerprintOptions { }) @Injectable() export class FingerprintAIO extends IonicNativePlugin { - /** * Check if fingerprint authentication is available * @return {Promise} Returns a promise with result @@ -78,12 +76,11 @@ export class FingerprintAIO extends IonicNativePlugin { /** * Show authentication dialogue - * @param options {FingerprintOptions} options for platform specific fingerprint API - * @return {Promise} Returns a promise that resolves when authentication was successfull + * @param {FingerprintOptions} options Options for platform specific fingerprint API + * @return {Promise} Returns a promise that resolves when authentication was successful */ @Cordova() show(options: FingerprintOptions): Promise { return; } - } diff --git a/src/@ionic-native/plugins/firebase-analytics/index.ts b/src/@ionic-native/plugins/firebase-analytics/index.ts index ad1414327..e47c8c181 100644 --- a/src/@ionic-native/plugins/firebase-analytics/index.ts +++ b/src/@ionic-native/plugins/firebase-analytics/index.ts @@ -35,51 +35,59 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; }) @Injectable() export class FirebaseAnalytics extends IonicNativePlugin { - /** * Logs an app event. * Be aware of automatically collected events. - * @param name {string} The name of the event - * @param params {any} Some param to configure something + * @param {string} name The name of the event + * @param {any} params Some param to configure something * @return {Promise} Returns a promise */ @Cordova({ sync: true }) - logEvent(name: string, params: any): Promise { return; } + logEvent(name: string, params: any): Promise { + return; + } /** * Sets the user ID property. * This feature must be used in accordance with Google's Privacy Policy. - * @param id {string} The user ID + * @param {string} id The user ID * @return {Promise} Returns a promise */ @Cordova({ sync: true }) - setUserId(id: string): Promise { return; } + setUserId(id: string): Promise { + return; + } /** * This feature must be used in accordance with Google's Privacy Policy. * Be aware of automatically collected user properties. - * @param name {string} The property name - * @param value {string} The property value + * @param {string} name The property name + * @param {string} value The property value * @return {Promise} Returns a promise */ @Cordova({ sync: true }) - setUserProperty(name: string, value: string): Promise { return; } + setUserProperty(name: string, value: string): Promise { + return; + } /** * Sets whether analytics collection is enabled for this app on this device. - * @param enabled {boolean} + * @param {boolean} enabled * @return {Promise} Returns a promise */ @Cordova({ sync: true }) - setEnabled(enabled: boolean): Promise { return; } + setEnabled(enabled: boolean): Promise { + return; + } /** * Sets the current screen name, which specifies the current visual context in your app. * This helps identify the areas in your app where users spend their time and how they interact with your app. - * @param name {string} The name of the screen + * @param {string} name The name of the screen * @return {Promise} Returns a promise */ @Cordova({ sync: true }) - setCurrentScreen(name: string): Promise { return; } - + setCurrentScreen(name: string): Promise { + return; + } } diff --git a/src/@ionic-native/plugins/firebase/index.ts b/src/@ionic-native/plugins/firebase/index.ts index a54f81e22..fa00d6e5d 100644 --- a/src/@ionic-native/plugins/firebase/index.ts +++ b/src/@ionic-native/plugins/firebase/index.ts @@ -87,7 +87,7 @@ export class Firebase extends IonicNativePlugin { /** * Set icon badge number. Set to 0 to clear the badge. - * @param badgeNumber {number} + * @param {number} badgeNumber * @return {Promise} */ @Cordova() @@ -106,7 +106,7 @@ export class Firebase extends IonicNativePlugin { /** * Subscribe to a topic - * @param topic {string} + * @param {string} topic * @return {Promise} */ @Cordova() @@ -116,7 +116,7 @@ export class Firebase extends IonicNativePlugin { /** * Unsubscribe from a topic - * @param topic {string} + * @param {string} topic * @return {Promise} */ @Cordova() @@ -135,8 +135,8 @@ export class Firebase extends IonicNativePlugin { /** * Log an event using Analytics - * @param type {string} - * @param data {Object} + * @param {string} type + * @param {Object} data * @return {Promise} */ @Cordova() @@ -146,7 +146,7 @@ export class Firebase extends IonicNativePlugin { /** * Log an Error using FirebaseCrash - * @param message {string} + * @param {string} message * @return {Promise} */ @Cordova() @@ -156,7 +156,7 @@ export class Firebase extends IonicNativePlugin { /** * Set the name of the current screen in Analytics - * @param name {string} Screen name + * @param {string} name Screen name * @return {Promise} */ @Cordova() @@ -166,7 +166,7 @@ export class Firebase extends IonicNativePlugin { /** * Set a user id for use in Analytics - * @param userId {string} + * @param {string} userId * @return {Promise} */ @Cordova() @@ -176,8 +176,8 @@ export class Firebase extends IonicNativePlugin { /** * Set a user property for use in Analytics - * @param name {string} - * @param value {string} + * @param {string} name + * @param {string} value * @return {Promise} */ @Cordova() @@ -187,7 +187,7 @@ export class Firebase extends IonicNativePlugin { /** * Fetch Remote Config parameter values for your app - * @param cacheExpirationSeconds {number} + * @param {number} [cacheExpirationSeconds] * @return {Promise} */ @Cordova({ @@ -209,8 +209,8 @@ export class Firebase extends IonicNativePlugin { /** * Retrieve a Remote Config value - * @param key {string} - * @param [namespace] {string} + * @param {string} key + * @param {string} [namespace] * @return {Promise} */ @Cordova({ @@ -223,8 +223,8 @@ export class Firebase extends IonicNativePlugin { /** * Retrieve a Remote Config byte array - * @param key {string} - * @param [namespace] {string} + * @param {string} key + * @param {string} [namespace] * @return {Promise} */ @Cordova({ @@ -247,7 +247,7 @@ export class Firebase extends IonicNativePlugin { /** * Change the settings for the FirebaseRemoteConfig object's operations - * @param settings {Object} + * @param {Object} settings * @return {Promise} */ @Cordova({ @@ -259,8 +259,8 @@ export class Firebase extends IonicNativePlugin { /** * Set defaults in the Remote Config - * @param defaults {Object} - * @param [namespace] {string} + * @param {Object} defaults + * @param {string} [namespace] * @return {Promise} */ @Cordova({ @@ -272,7 +272,7 @@ export class Firebase extends IonicNativePlugin { /** * Sends an SMS to the user with the SMS verification code and returns the Verification ID required to sign in using phone authentication - * @param phoneNumber {string} + * @param {string} phoneNumber * @returns {Promise} */ @Cordova({ @@ -284,8 +284,8 @@ export class Firebase extends IonicNativePlugin { /** * Sends an SMS to the user with the SMS verification code and returns the Verification ID required to sign in using phone authentication - * @param phoneNumber {string} the phone number, including '+' and country code - * @param timeoutDuration {number} the timeout in sec - no more SMS will be sent to this number until this timeout expires + * @param {string} phoneNumber The phone number, including '+' and country code + * @param {number} timeoutDuration The timeout in sec - no more SMS will be sent to this number until this timeout expires * @returns {Promise} */ @Cordova({ @@ -302,7 +302,7 @@ export class Firebase extends IonicNativePlugin { /** * Allows the user to enable/disable analytics collection - * @param enabled {booleab} value to set collection + * @param {boolean} enabled value to set collection * @returns {Promise} */ @Cordova() diff --git a/src/@ionic-native/plugins/flurry-analytics/index.ts b/src/@ionic-native/plugins/flurry-analytics/index.ts index 7f49866c2..55f38e468 100644 --- a/src/@ionic-native/plugins/flurry-analytics/index.ts +++ b/src/@ionic-native/plugins/flurry-analytics/index.ts @@ -1,5 +1,10 @@ -import { checkAvailability, CordovaInstance, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Injectable } from '@angular/core'; +import { + checkAvailability, + CordovaInstance, + IonicNativePlugin, + Plugin +} from '@ionic-native/core'; export interface FlurryAnalyticsOptions { /** Flurry API key is required */ @@ -76,14 +81,12 @@ export interface FlurryAnalyticsLocation { * @hidden */ export class FlurryAnalyticsObject { - - constructor(private _objectInstance: any) { - } + constructor(private _objectInstance: any) {} /** * This function set the Event - * @param eventName {string} Name of the event - * @param [params] {Object} Optional params + * @param {string} eventName Name of the event + * @param {Object} [params] Optional params * @return {Promise} Returns a promise that resolves when event is sent */ @CordovaInstance({ @@ -96,8 +99,8 @@ export class FlurryAnalyticsObject { /** * Start a timed event - * @param eventName {string} Name of the event - * @param [params] {Object} Optional params + * @param {string} eventName Name of the event + * @param {Object} Optional params * @return {Promise} Returns a promise that resolves when timed event is started tracking */ @CordovaInstance({ @@ -110,8 +113,8 @@ export class FlurryAnalyticsObject { /** * Complete a timed event - * @param eventName {string} Name of the event - * @param [params] {Object} Optional params + * @param {string} eventName Name of the event + * @param {Object} [params] Optional params * @return {Promise} Returns a promise that resolves when timed event is ended tracking */ @CordovaInstance({ @@ -124,8 +127,8 @@ export class FlurryAnalyticsObject { /** * This function log an error - * @param code - * @param message + * @param {Object} code + * @param {Object} message * @return {Promise} */ @CordovaInstance() @@ -145,12 +148,15 @@ export class FlurryAnalyticsObject { /** * This function set the location for the event * (this is will only be used for very course grained statistics like city) - * @param location {FlurryAnalyticsLocation} - * @param message {string} + * @param {FlurryAnalyticsLocation} location + * @param {string} message * @return {Promise} */ @CordovaInstance() - setLocation(location: FlurryAnalyticsLocation, message: string): Promise { + setLocation( + location: FlurryAnalyticsLocation, + message: string + ): Promise { return; } @@ -173,7 +179,6 @@ export class FlurryAnalyticsObject { endSession(): Promise { return; } - } /** @@ -217,22 +222,24 @@ export class FlurryAnalyticsObject { }) @Injectable() export class FlurryAnalytics extends IonicNativePlugin { - /** * Creates a new instance of FlurryAnalyticsObject - * @param options {FlurryAnalyticsOptions} options + * @param {FlurryAnalyticsOptions} options Options * @return {FlurryAnalyticsObject} */ create(options: FlurryAnalyticsOptions): FlurryAnalyticsObject { - let instance: any; - if (checkAvailability(FlurryAnalytics.pluginRef, null, FlurryAnalytics.pluginName) === true) { + if ( + checkAvailability( + FlurryAnalytics.pluginRef, + null, + FlurryAnalytics.pluginName + ) === true + ) { instance = new (window as any).FlurryAnalytics(options); } return new FlurryAnalyticsObject(instance); - } - } diff --git a/src/@ionic-native/plugins/ftp/index.ts b/src/@ionic-native/plugins/ftp/index.ts index 90abdc3a9..6f7bd762f 100644 --- a/src/@ionic-native/plugins/ftp/index.ts +++ b/src/@ionic-native/plugins/ftp/index.ts @@ -32,14 +32,13 @@ import { Observable } from 'rxjs'; }) @Injectable() export class FTP extends IonicNativePlugin { - /** * Connect to one ftp server. * * Just need to init the connection once. If success, you can do any ftp actions later. - * @param hostname {string} The ftp server url. Like ip without protocol prefix, e.g. "192.168.1.1". - * @param username {string} The ftp login username. If it and `password` are all blank/undefined, the default username "anonymous" is used. - * @param password {string} The ftp login password. If it and `username` are all blank/undefined, the default password "anonymous@" is used. + * @param {string} hostname The ftp server url. Like ip without protocol prefix, e.g. "192.168.1.1". + * @param {string} username The ftp login username. If it and `password` are all blank/undefined, the default username "anonymous" is used. + * @param {string} password The ftp login password. If it and `username` are all blank/undefined, the default password "anonymous@" is used. * @return {Promise} The success callback. Notice: For iOS, if triggered, means `init` success, but NOT means the later action, e.g. `ls`... `download` will success! */ @Cordova() @@ -58,7 +57,7 @@ export class FTP extends IonicNativePlugin { * - size: file size in bytes. * - modifiedDate: modified date of this file. date format is `yyyy-MM-dd HH:mm:ss zzz`, e.g "2015-12-01 20:45:00 GMT+8". * - * @param path {string} The path on the ftp server. e.g. "/adf/123/". + * @param {string} path The path on the ftp server. e.g. "/adf/123/". * @return {Promise} Returns a promise */ @Cordova() @@ -69,7 +68,7 @@ export class FTP extends IonicNativePlugin { /** * Create one directory on the ftp server. * - * @param path {string} The path on the ftp server. e.g. "/adf/123/". + * @param {string} path The path on the ftp server. e.g. "/adf/123/". * @return {Promise} Returns a promise */ @Cordova() @@ -82,7 +81,7 @@ export class FTP extends IonicNativePlugin { * * Tip: As many ftp server could not rm dir when it's not empty, so rm all files under the dir at first is recommended. * - * @param path {string} The file (with full path) you want to delete. e.g. "/adf/123/newDir/myFile". + * @param {string} path The file (with full path) you want to delete. e.g. "/adf/123/newDir/myFile". * @return {Promise} Returns a promise */ @Cordova() @@ -93,7 +92,7 @@ export class FTP extends IonicNativePlugin { /** * Delete one file on the ftp server. * - * @param file {string} The file (with full path) you want to delete. e.g. "/adf/123/newDir/myFile". + * @param {string} file The file (with full path) you want to delete. e.g. "/adf/123/newDir/myFile". * @return {Promise} Returns a promise */ @Cordova() @@ -104,8 +103,8 @@ export class FTP extends IonicNativePlugin { /** * Upload one local file to the ftp server. * - * @param localFile {string} The file (with full path) you want to upload. e.g. "/local/path/to/localFile". - * @param remoteFile {string} The file (with full path) you want to located on the ftp server. e.g. "/adf/123/newDir/remoteFile". + * @param {string} localFile The file (with full path) you want to upload. e.g. "/local/path/to/localFile". + * @param {string} remoteFile The file (with full path) you want to located on the ftp server. e.g. "/adf/123/newDir/remoteFile". * @return {Observable} Returns an observable. * It will be triggered many times according the file's size. * The arg `0`, `0.1xx`, `0.2xx` ... `1` means the upload percent. When it reach `1`, means success. @@ -120,8 +119,8 @@ export class FTP extends IonicNativePlugin { /** * Download one remote file on the ftp server to local path. * - * @param localFile {string} The file (with full path) you want to upload. e.g. "/local/path/to/localFile". - * @param remoteFile {string} The file (with full path) you want to located on the ftp server. e.g. "/adf/123/newDir/remoteFile". + * @param {string} localFile The file (with full path) you want to upload. e.g. "/local/path/to/localFile". + * @param {string} remoteFile The file (with full path) you want to located on the ftp server. e.g. "/adf/123/newDir/remoteFile". * @return {Observable} Returns an observable. * It will be triggered many times according the file's size. * The arg `0`, `0.1xx`, `0.2xx` ... `1` means the upload percent. When it reach `1`, means success. @@ -152,5 +151,4 @@ export class FTP extends IonicNativePlugin { disconnect(): Promise { return; } - } diff --git a/src/@ionic-native/plugins/google-nearby/index.ts b/src/@ionic-native/plugins/google-nearby/index.ts new file mode 100644 index 000000000..3ef6e97b0 --- /dev/null +++ b/src/@ionic-native/plugins/google-nearby/index.ts @@ -0,0 +1,59 @@ +import { Injectable } from '@angular/core'; +import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core'; +import { Observable } from 'rxjs/Observable'; + +/** + * @name google-nearby + * @description + * This plugin adds support for the Google Nearby Messages API. + * + * @usage + * ```typescript + * import { GoogleNearby } from '@ionic-native/google-nearby'; + * + * + * constructor(private googleNearby: GoogleNearby) { } + * + * this.googleNearby.publish('Hello') + * .then((res: any) => console.log(res)) + * .catch((error: any) => console.error(error)); + * + * this.googleNearby.subscribe() + * .then((res: any) => console.log(res)) + * .catch((error: any) => console.error(error)); + * ``` + */ +@Plugin({ + pluginName: 'GoogleNearby', + plugin: 'cordova-plugin-google-nearby', + pluginRef: 'window.nearby', + repo: 'https://github.com/hahahannes/cordova-plugin-google-nearby', + install: 'ionic cordova plugin add cordova-plugin-google-nearby --variable API_KEY="123456789"', + installVariables: ['API_KEY'], + platforms: ['Android'] +}) +@Injectable() +export class GoogleNearby extends IonicNativePlugin { + + /** + * Publish a message + * @param message {string} Message to publish + * @return {Promise} Returns a promise that resolves when the message got published + */ + @Cordova() + publish(message: string): Promise { + return; + } + +/** + * Subscribe to recieve messages + * @return {Observable} Returns an observable that emits recieved messages + */ + @Cordova({ + observable: true, + clearFunction: 'unsubscribe' + }) + subscribe(): Observable { + return; + } +}