feat(): add IonicNativePlugin base class (#1425)

* add base class

* properties are static

* some fixes

* tslint
This commit is contained in:
Ibby Hadeed 2017-04-27 00:36:12 -04:00 committed by GitHub
parent 39eaebfafd
commit 17366a29da
144 changed files with 334 additions and 294 deletions

View File

@ -1,3 +1,4 @@
export * from './plugin';
export * from './decorators';
export * from './util';
export * from './ionic-native-plugin';

View File

@ -0,0 +1,41 @@
export class IonicNativePlugin {
static pluginName: string;
static pluginRef: string;
static plugin: string;
static repo: string;
static platforms: string[];
static install: string;
/**
* Returns a boolean that indicates whether the plugin is installed
* @return {boolean}
*/
static installed(): boolean { return false; }
/**
* Returns the original plugin object
*/
static getPlugin(): any {}
/**
* Returns the plugin's name
*/
static getPluginName(): string { return; }
/**
* Returns the plugin's reference
*/
static getPluginRef(): string { return; }
/**
* Returns the plugin's install name
*/
static getPluginInstallName(): string { return; }
}

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin, CordovaProperty } from '@ionic-native/core';
import { Cordova, Plugin, CordovaProperty, IonicNativePlugin } from '@ionic-native/core';
export interface ActionSheetOptions {
@ -97,7 +97,7 @@ export interface ActionSheetOptions {
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Browser']
})
@Injectable()
export class ActionSheet {
export class ActionSheet extends IonicNativePlugin {
@CordovaProperty
ANDROID_THEMES: {

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/fromEvent';
@ -105,7 +105,7 @@ export interface AdMobFreeRewardVideoConfig {
platforms: ['Android', 'iOS']
})
@Injectable()
export class AdMobFree {
export class AdMobFree extends IonicNativePlugin {
/**
* Convenience constructor to get event names
@ -171,8 +171,6 @@ export class AdMobFree {
})
export class AdMobFreeBanner {
/**
* Update config.
* @param options

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export type AdSize = 'SMART_BANNER' | 'BANNER' | 'MEDIUM_RECTANGLE' | 'FULL_BANNER' | 'LEADERBOARD' | 'SKYSCRAPER' | 'CUSTOM';
@ -123,7 +123,7 @@ export interface AdExtras {
platforms: ['Android', 'iOS', 'Windows Phone 8']
})
@Injectable()
export class AdMob {
export class AdMob extends IonicNativePlugin {
AD_POSITION: {
NO_CHANGE: number;

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
export interface AlipayOrder {
@ -103,7 +103,7 @@ export interface AlipayOrder {
install: 'ionic plugin add https://github.com/xueron/cordova-alipay-base --variable APP_ID=your_app_id'
})
@Injectable()
export class Alipay {
export class Alipay extends IonicNativePlugin {
/**
* Open Alipay to perform App pay
* @param order { AlipayOrder } alipay options

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface AFAAuthOptions {
@ -148,7 +148,7 @@ export interface AFAEncryptResponse {
platforms: ['Android']
})
@Injectable()
export class AndroidFingerprintAuth {
export class AndroidFingerprintAuth extends IonicNativePlugin {
/**
* Opens a native dialog fragment to use the device hardware fingerprint scanner to authenticate against fingerprints registered for the device.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Android Full Screen
@ -29,7 +29,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class AndroidFullScreen {
export class AndroidFullScreen extends IonicNativePlugin {
/**
* Is this plugin supported?
* @return {Promise<void>}

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name App Availability
@ -40,7 +40,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class AppAvailability {
export class AppAvailability extends IonicNativePlugin {
/**
* Checks if an app is available on device

View File

@ -1,4 +1,4 @@
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
import { Injectable } from '@angular/core';
@ -27,7 +27,7 @@ import { Injectable } from '@angular/core';
platforms: ['Android', 'BlackBerry 10', 'Browser', 'iOS', 'OS X', 'Windows 8', 'Windows Phone']
})
@Injectable()
export class AppPreferences {
export class AppPreferences extends IonicNativePlugin {
/**
* Get a preference value

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, CordovaProperty, Plugin } from '@ionic-native/core';
import { Cordova, CordovaProperty, Plugin, IonicNativePlugin } from '@ionic-native/core';
declare var window;
@ -134,7 +134,7 @@ export interface AppUrls {
platforms: ['Android', 'iOS', 'Windows (experimental)']
})
@Injectable()
export class AppRate {
export class AppRate extends IonicNativePlugin {
/**
* Configure various settings for the Rating View.

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
/**
@ -42,7 +42,7 @@ import { Injectable } from '@angular/core';
platforms: ['Android']
})
@Injectable()
export class AppUpdate {
export class AppUpdate extends IonicNativePlugin {
/**
* Check and update
* @param updateUrl {string} update api url

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
@ -34,7 +34,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class AppVersion {
export class AppVersion extends IonicNativePlugin {
/**
* Returns the name of the app

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs';
import { Injectable } from '@angular/core';
@ -31,7 +31,7 @@ import { Injectable } from '@angular/core';
platforms: [ 'iOS', 'Android' ]
})
@Injectable()
export class Appodeal {
export class Appodeal extends IonicNativePlugin {
// available types of advertisements
readonly AD_TYPES = {
INTERSTITIAL: 1,

View File

@ -1,4 +1,4 @@
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
declare var window;
@ -63,7 +63,7 @@ export interface BackgroundFetchConfig {
platforms: ['iOS']
})
@Injectable()
export class BackgroundFetch {
export class BackgroundFetch extends IonicNativePlugin {
/**

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare var window;
@ -311,7 +311,7 @@ export interface BackgroundGeolocationConfig {
platforms: ['iOS', 'Android', 'Windows Phone 8']
})
@Injectable()
export class BackgroundGeolocation {
export class BackgroundGeolocation extends IonicNativePlugin {
/**
* Set location service provider @see https://github.com/mauron85/cordova-plugin-background-geolocation/wiki/Android-providers

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
@ -73,7 +73,7 @@ export interface BackgroundModeConfiguration {
platforms: ['Android', 'iOS', 'Windows Phone 8']
})
@Injectable()
export class BackgroundMode {
export class BackgroundMode extends IonicNativePlugin {
/**
* Enable the background mode.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
@ -32,7 +32,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class Backlight {
export class Backlight extends IonicNativePlugin {
/**
* This function turns backlight on

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
@ -30,7 +30,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Browser', 'Windows', 'Amazon FireOS', 'Windows Phone 8']
})
@Injectable()
export class Badge {
export class Badge extends IonicNativePlugin {
/**
* Clear the badge of the app icon.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface BarcodeScannerOptions {
@ -89,7 +89,7 @@ export interface BarcodeScannerOptions {
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Windows 10', 'Windows 8', 'BlackBerry 10', 'Browser']
})
@Injectable()
export class BarcodeScanner {
export class BarcodeScanner extends IonicNativePlugin {
Encode: {
TEXT_TYPE: string;

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Base64 To Gallery
@ -28,7 +28,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Windows Phone 8']
})
@Injectable()
export class Base64ToGallery {
export class Base64ToGallery extends IonicNativePlugin {
/**
* Converts a base64 string to an image file in the device gallery

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface BatteryStatusResponse {
@ -52,7 +52,7 @@ export interface BatteryStatusResponse {
platforms: ['Amazon Fire OS', 'iOS', 'Android', 'BlackBerry 10', 'Windows Phone 7', 'Windows Phone 8', 'Windows', 'Firefox OS', 'Browser']
})
@Injectable()
export class BatteryStatus {
export class BatteryStatus extends IonicNativePlugin {
/**
* Watch the change in battery level

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
@ -176,7 +176,7 @@ import { Observable } from 'rxjs/Observable';
platforms: ['iOS', 'Android']
})
@Injectable()
export class BLE {
export class BLE extends IonicNativePlugin {
/**
* Scan and discover BLE peripherals for the specified amount of time.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
@ -38,7 +38,7 @@ import { Observable } from 'rxjs/Observable';
platforms: ['Android', 'iOS', 'Windows Phone', 'Browser']
})
@Injectable()
export class BluetoothSerial {
export class BluetoothSerial extends IonicNativePlugin {
/**
* Connect to a Bluetooth device

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Brightness
@ -29,7 +29,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class Brightness {
export class Brightness extends IonicNativePlugin {
/**
* Sets the brightness of the display.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
@ -31,7 +31,7 @@ import { Observable } from 'rxjs/Observable';
platforms: ['Android', 'iOS']
})
@Injectable()
export class Broadcaster {
export class Broadcaster extends IonicNativePlugin {
/**
* This function listen to an event sent from the native code

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
/**
@ -40,7 +40,7 @@ import { Injectable } from '@angular/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class BrowserTab {
export class BrowserTab extends IonicNativePlugin {
/**
* Check if BrowserTab option is available

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface CalendarOptions {
@ -60,7 +60,7 @@ export interface CalendarOptions {
*
* @usage
* ```
* import {Calendar} from '@ionic-native/calendar';
* import { Calendar } from '@ionic-native/calendar';
*
* constructor(private calendar: Calendar) { }
*
@ -81,7 +81,7 @@ export interface CalendarOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class Calendar {
export class Calendar extends IonicNativePlugin {
/**
* This function checks if we have permission to read/write from/to the calendar.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Call Number
* @description
@ -7,7 +7,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
*
* @usage
* ```
* import {CallNumber} from '@ionic-native/call-number';
* import { CallNumber } from '@ionic-native/call-number';
*
* constructor(private callNumber: CallNumber) { }
*
@ -28,7 +28,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['iOS', 'Android']
})
@Injectable()
export class CallNumber {
export class CallNumber extends IonicNativePlugin {
/**
* Calls a phone number

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface CameraPreviewDimensions {
/** The width of the camera preview, default to window.screen.width */
@ -132,7 +132,7 @@ export interface CameraPreviewPictureOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class CameraPreview {
export class CameraPreview extends IonicNativePlugin {
EXPOSURE_MODES = {
LOCK: 'lock', // IOS Only

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface CameraOptions {
/** Picture quality in range 0-100. Default is 50 */
@ -128,7 +128,7 @@ export interface CameraPopoverOptions {
platforms: ['Android', 'BlackBerry', 'Browser', 'Firefox', 'FireOS', 'iOS', 'Windows', 'Windows Phone 8', 'Ubuntu']
})
@Injectable()
export class Camera {
export class Camera extends IonicNativePlugin {
/**
* Constant for possible destination types

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface CardIOOptions {
@ -167,7 +167,7 @@ export interface CardIOResponse {
platforms: ['iOS', 'Android']
})
@Injectable()
export class CardIO {
export class CardIO extends IonicNativePlugin {
/**
* Check whether card scanning is currently available. (May vary by

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Clipboard
* @description
@ -37,7 +37,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Amazon Fire OS', 'iOS', 'Android', 'BlackBerry 10', 'Windows Phone 7', 'Windows Phone 8', 'Windows', 'Firefox OS', 'Browser']
})
@Injectable()
export class Clipboard {
export class Clipboard extends IonicNativePlugin {
/**
* Copies the given text

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
namespace Http {
export const enum Verb {
@ -427,7 +427,7 @@ export interface DownloadProgress {
platforms: ['Android', 'iOS']
})
@Injectable()
export class CodePush {
export class CodePush extends IonicNativePlugin {
/**
* Get the current package information.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { CordovaInstance, InstanceProperty, Plugin, getPromise, InstanceCheck, checkAvailability, CordovaCheck } from '@ionic-native/core';
import { CordovaInstance, InstanceProperty, Plugin, getPromise, InstanceCheck, checkAvailability, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
declare var window: any,
navigator: any;
@ -294,7 +294,7 @@ export class ContactFindOptions implements IContactFindOptions {
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows 8', 'Windows Phone']
})
@Injectable()
export class Contacts {
export class Contacts extends IonicNativePlugin {
/**
* Create a single contact.

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
@ -29,7 +29,7 @@ import { Injectable } from '@angular/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class CouchbaseLite {
export class CouchbaseLite extends IonicNativePlugin {
/**
* Get the database url

View File

@ -1,12 +1,12 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Crop
* @description Crops images
* @usage
* ```
* import {Crop} from '@ionic-native/crop';
* import { Crop } from '@ionic-native/crop';
*
* constructor(private crop: Crop) { }
*
@ -27,7 +27,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class Crop {
export class Crop extends IonicNativePlugin {
/**
* Crops an image

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import {Cordova, Plugin} from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface DatePickerOptions {
/**
@ -154,7 +154,7 @@ export interface DatePickerOptions {
platforms: ['Android', 'iOS', 'Windows']
})
@Injectable()
export class DatePicker {
export class DatePicker extends IonicNativePlugin {
/**
* @hidden

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
@ -42,7 +42,7 @@ import { Observable } from 'rxjs/Observable';
platforms: ['iOS', 'Android']
})
@Injectable()
export class DBMeter {
export class DBMeter extends IonicNativePlugin {
/**
* Starts listening

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface DeeplinkMatch {
@ -83,7 +83,7 @@ export interface DeeplinkMatch {
installVariables: ['URL_SCHEME', 'DEEPLINK_SCHEME', 'DEEPLINK_HOST', 'ANDROID_PATH_PREFIX']
})
@Injectable()
export class Deeplinks {
export class Deeplinks extends IonicNativePlugin {
/**
* Define a set of paths to match against incoming deeplinks.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Device Accounts
@ -28,7 +28,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class DeviceAccounts {
export class DeviceAccounts extends IonicNativePlugin {
/**
* Gets all accounts registered on the Android Device

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Device Feedback
* @description
@ -38,7 +38,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class DeviceFeedback {
export class DeviceFeedback extends IonicNativePlugin {
/**
* Provide sound feedback to user, nevertheless respect user's settings and current active device profile as native feedback do.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface DeviceMotionAccelerationData {
@ -75,7 +75,7 @@ export interface DeviceMotionAccelerometerOptions {
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class DeviceMotion {
export class DeviceMotion extends IonicNativePlugin {
/**
* Get the current acceleration along the x, y, and z axes.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface DeviceOrientationCompassHeading {
@ -80,7 +80,7 @@ export interface DeviceOrientationCompassOptions {
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class DeviceOrientation {
export class DeviceOrientation extends IonicNativePlugin {
/**
* Get the current compass heading.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { CordovaProperty, Plugin } from '@ionic-native/core';
import { CordovaProperty, Plugin, IonicNativePlugin } from '@ionic-native/core';
declare var window: any;
@ -27,7 +27,7 @@ declare var window: any;
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'OS X', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class Device {
export class Device extends IonicNativePlugin {
/** Get the version of Cordova running on the device. */
@CordovaProperty

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import {Cordova, Plugin, CordovaProperty} from '@ionic-native/core';
import { Cordova, Plugin, CordovaProperty, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Diagnostic
@ -42,7 +42,7 @@ import {Cordova, Plugin, CordovaProperty} from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Windows']
})
@Injectable()
export class Diagnostic {
export class Diagnostic extends IonicNativePlugin {
permission = {
READ_CALENDAR: 'READ_CALENDAR',

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface DialogsPromptCallback {
@ -49,7 +49,7 @@ export interface DialogsPromptCallback {
platforms: ['Android', 'BlackBerry 10', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class Dialogs {
export class Dialogs extends IonicNativePlugin {
/**
* Shows a custom alert or dialog box.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin, CordovaCheck } from '@ionic-native/core';
import { Cordova, Plugin, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
declare var cordova: any;
@ -79,7 +79,7 @@ export interface EmailComposerOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class EmailComposer {
export class EmailComposer extends IonicNativePlugin {
/**
* Verifies if sending emails is supported on the device.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface EstimoteBeaconRegion {
@ -47,7 +47,7 @@ export interface EstimoteBeaconRegion {
platforms: ['iOS', 'Android']
})
@Injectable()
export class EstimoteBeacons {
export class EstimoteBeacons extends IonicNativePlugin {
/** Proximity value */
ProximityUnknown = 0;

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface FacebookLoginResponse {
@ -117,7 +117,7 @@ export interface FacebookLoginResponse {
platforms: ['Android', 'iOS']
})
@Injectable()
export class Facebook {
export class Facebook extends IonicNativePlugin {
/**
* Browser wrapper

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name File Chooser
@ -29,7 +29,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class FileChooser {
export class FileChooser extends IonicNativePlugin {
/**
* Open a file

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name File Opener
@ -28,7 +28,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
})
@Injectable()
export class FileOpener {
export class FileOpener extends IonicNativePlugin {
/**
* Open an file

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
declare var window: any;
@ -31,7 +31,7 @@ declare var window: any;
platforms: ['Android']
})
@Injectable()
export class FilePath {
export class FilePath extends IonicNativePlugin {
/**
* Resolve native path for given content URL/path.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { CordovaProperty, Plugin, CordovaCheck } from '@ionic-native/core';
import { CordovaProperty, Plugin, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
declare var window: any;
declare var cordova: any;
@ -371,7 +371,7 @@ export declare var FileError: {
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'OS X', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class File {
export class File extends IonicNativePlugin {
/**
* Read-only directory where the application is installed.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
export interface FingerprintOptions {
@ -54,7 +54,7 @@ export interface FingerprintOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class FingerprintAIO {
export class FingerprintAIO extends IonicNativePlugin {
/**
* Check if fingerprint authentication is available

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
@ -32,7 +32,7 @@ import { Observable } from 'rxjs/Observable';
platforms: ['Android', 'iOS']
})
@Injectable()
export class Firebase {
export class Firebase extends IonicNativePlugin {
/**
* Get the device token

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Flashlight
@ -28,7 +28,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Windows Phone 8']
})
@Injectable()
export class Flashlight {
export class Flashlight extends IonicNativePlugin {
/**
* Checks if the flashlight is available

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
export interface FlurryAnalyticsOptions {
@ -107,7 +107,7 @@ export interface FlurryAnalyticsLocation {
platforms: ['Android', 'iOS', 'Browser']
})
@Injectable()
export class FlurryAnalytics {
export class FlurryAnalytics extends IonicNativePlugin {
/**
* Set the setting for Flurry Analytics

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin, CordovaFunctionOverride } from '@ionic-native/core';
import { Cordova, Plugin, CordovaFunctionOverride, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare var window: any;
@ -83,7 +83,7 @@ declare var window: any;
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Windows Phone']
})
@Injectable()
export class Geofence {
export class Geofence extends IonicNativePlugin {
public TransitionType = {
ENTER: 1,

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare var navigator: any;
@ -156,7 +156,7 @@ export interface GeolocationOptions {
platforms: ['Android', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class Geolocation {
export class Geolocation extends IonicNativePlugin {
/**
* Get the device's current position.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Globalization
@ -29,7 +29,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Firefox OS', 'iOS', 'Windows Phone 8', 'Widnows', 'Browser']
})
@Injectable()
export class Globalization {
export class Globalization extends IonicNativePlugin {
/**
* Returns the BCP-47 compliant language identifier tag to the successCallback with a properties object as a parameter. That object should have a value property with a String value.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
declare var window;
@ -39,7 +39,7 @@ declare var window;
platforms: ['Android', 'iOS', 'Browser']
})
@Injectable()
export class GoogleAnalytics {
export class GoogleAnalytics extends IonicNativePlugin {
/**
* In your 'deviceready' handler, set up your Analytics tracker.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, CordovaInstance, CordovaCheck, Plugin, InstanceProperty, InstanceCheck, checkAvailability } from '@ionic-native/core';
import { Cordova, CordovaInstance, CordovaCheck, Plugin, InstanceProperty, InstanceCheck, checkAvailability, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/fromEvent';
@ -455,7 +455,7 @@ export class GoogleMap {
platforms: ['Android', 'iOS']
})
@Injectable()
export class GoogleMaps {
export class GoogleMaps extends IonicNativePlugin {
/**
* Checks if a map object has been created and is available.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Google Plus
@ -28,7 +28,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
installVariables: ['REVERSED_CLIENT_ID']
})
@Injectable()
export class GooglePlus {
export class GooglePlus extends IonicNativePlugin {
/**
* The login function walks the user through the Google Auth process.

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
import { Injectable } from '@angular/core';
@ -81,7 +81,7 @@ export interface GyroscopeOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class Gyroscope {
export class Gyroscope extends IonicNativePlugin {
/**
* Watching for gyroscope sensor changes

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Header Color
@ -25,7 +25,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class HeaderColor {
export class HeaderColor extends IonicNativePlugin {
/**
* Set a color to the task header

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
/**
@ -200,7 +200,7 @@ export interface HealthData {
platforms: ['Android', 'iOS']
})
@Injectable()
export class Health {
export class Health extends IonicNativePlugin {
/**
* Tells if either Google Fit or HealthKit are available.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface HotspotConnectionInfo {
@ -133,7 +133,7 @@ export interface HotspotDevice {
platforms: ['Android']
})
@Injectable()
export class Hotspot {
export class Hotspot extends IonicNativePlugin {
/**
* @returns {Promise<boolean>}

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
export interface HTTPResponse {
/**
@ -65,7 +65,7 @@ export interface HTTPResponse {
platforms: ['Android', 'iOS']
})
@Injectable()
export class HTTP {
export class HTTP extends IonicNativePlugin {
/**
* This returns an object representing a basic HTTP Authorization header of the form.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface HttpdOptions {
@ -55,7 +55,7 @@ export interface HttpdOptions {
platforms: ['iOS', 'Android']
})
@Injectable()
export class Httpd {
export class Httpd extends IonicNativePlugin {
/**
* Starts a web server.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin, CordovaCheck } from '@ionic-native/core';
import { Cordova, Plugin, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare var cordova: any;
@ -286,7 +286,7 @@ export interface IBeaconDelegate {
platforms: ['Android', 'iOS']
})
@Injectable()
export class IBeacon {
export class IBeacon extends IonicNativePlugin {
/**
* Instances of this class are delegates between the {@link LocationManager} and

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface ImagePickerOptions {
@ -63,7 +63,7 @@ export interface ImagePickerOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class ImagePicker {
export class ImagePicker extends IonicNativePlugin {
/**
* Pick pictures from the library.
* @param {ImagePickerOptions} options

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface ImageResizerOptions {
/**
@ -80,7 +80,7 @@ export interface ImageResizerOptions {
platforms: ['Android', 'iOS', 'Windows']
})
@Injectable()
export class ImageResizer {
export class ImageResizer extends IonicNativePlugin {
/**
* @returns {Promise<any>}
*/

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, CordovaInstance } from '@ionic-native/core';
import { Plugin, CordovaInstance, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/fromEvent';
@ -166,7 +166,7 @@ export class InAppBrowserObject {
platforms: ['Amazon', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'OS X', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()
export class InAppBrowser {
export class InAppBrowser extends IonicNativePlugin {
/**
* Opens a URL in a new InAppBrowser instance, the current browser instance, or the system browser.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
@ -61,7 +61,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
repo: 'https://github.com/AlexDisler/cordova-plugin-inapppurchase'
})
@Injectable()
export class InAppPurchase {
export class InAppPurchase extends IonicNativePlugin {
/**
* Retrieves a list of full product data from Apple/Google. This method must be called before making purchases.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
@ -37,7 +37,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Windows Phone 8']
})
@Injectable()
export class Insomnia {
export class Insomnia extends IonicNativePlugin {
/**
* Keeps awake the application

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Instagram
@ -27,7 +27,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class Instagram {
export class Instagram extends IonicNativePlugin {
/**
* Detect if the Instagram application is installed on the device.

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
declare var window: any;
@ -75,7 +75,7 @@ export interface IntelSecurityDataOptions {
platforms: ['Android', 'iOS', 'Windows']
})
@Injectable()
export class IntelSecurity {
export class IntelSecurity extends IonicNativePlugin {
/**
* returns an IntelSecurityStorage object

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Is Debug
@ -29,7 +29,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class IsDebug {
export class IsDebug extends IonicNativePlugin {
/**
* Determine if an app was installed via xcode / eclipse / the ionic CLI etc

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, CordovaCheck } from '@ionic-native/core';
import { Plugin, Cordova, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare var cordova: any;
@ -38,7 +38,7 @@ declare var cordova: any;
platforms: ['Android', 'iOS']
})
@Injectable()
export class JinsMeme {
export class JinsMeme extends IonicNativePlugin {
/**
* Authentication and authorization of App and SDK.
* Must call this method first.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
@ -28,7 +28,7 @@ import { Observable } from 'rxjs/Observable';
platforms: ['Android', 'BlackBerry 10', 'iOS', 'Windows']
})
@Injectable()
export class Keyboard {
export class Keyboard extends IonicNativePlugin {
/**
* Hide the keyboard accessory bar with the next, previous and done buttons.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface LaunchNavigatorOptions {
@ -95,7 +95,7 @@ export interface LaunchNavigatorOptions {
platforms: ['Android', 'iOS']
})
@Injectable()
export class LaunchNavigator {
export class LaunchNavigator extends IonicNativePlugin {
/**
* Launches navigator app

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Launch Review
@ -30,7 +30,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class LaunchReview {
export class LaunchReview extends IonicNativePlugin {
/**
* Launch store app using given app ID

View File

@ -1,4 +1,4 @@
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Injectable } from '@angular/core';
export type LinkedInLoginScopes = 'r_basicprofile' | 'r_emailaddress' | 'rw_company_admin' | 'w_share';
@ -57,7 +57,7 @@ export type LinkedInLoginScopes = 'r_basicprofile' | 'r_emailaddress' | 'rw_comp
platforms: ['Android', 'iOS']
})
@Injectable()
export class LinkedIn {
export class LinkedIn extends IonicNativePlugin {
/**
* Login with the LinkedIn App

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
export interface ILocalNotification {
@ -148,7 +148,7 @@ export interface ILocalNotification {
platforms: ['Android', 'iOS', 'Windows']
})
@Injectable()
export class LocalNotifications {
export class LocalNotifications extends IonicNativePlugin {
/**
* Schedules a single or multiple notifications

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Location Accuracy
@ -36,7 +36,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class LocationAccuracy {
export class LocationAccuracy extends IonicNativePlugin {
/**
* Indicates if you can request accurate location
* @returns {Promise<boolean>} Returns a promise that resovles with a boolean that indicates if you can request accurate location

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Market
* @description
@ -25,7 +25,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class Market {
export class Market extends IonicNativePlugin {
/**
* Opens an app in Google Play / App Store

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, CordovaProperty, Plugin } from '@ionic-native/core';
import { Cordova, CordovaProperty, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare var navigator: any;
@ -149,7 +149,7 @@ export interface ConfigurationData {
repo: 'https://github.com/apache/cordova-plugin-media-capture'
})
@Injectable()
export class MediaCapture {
export class MediaCapture extends IonicNativePlugin {
/**
* The recording image sizes and formats supported by the device.
* @returns {ConfigurationData[]}

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { CordovaInstance, Plugin, CordovaCheck } from '@ionic-native/core';
import { CordovaInstance, Plugin, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
declare var Media: any;
@ -217,7 +217,7 @@ export type MediaErrorCallback = (error: MediaError) => void;
pluginRef: 'Media'
})
@Injectable()
export class MediaPlugin {
export class MediaPlugin extends IonicNativePlugin {
// Constants
/**

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
declare var mixpanel: any;
@ -31,7 +31,7 @@ declare var mixpanel: any;
repo: 'https://github.com/samzilverberg/cordova-mixpanel-plugin'
})
@Injectable()
export class Mixpanel {
export class Mixpanel extends IonicNativePlugin {
/**
*
@ -115,7 +115,7 @@ export class Mixpanel {
pluginName: 'Mixpanel'
})
@Injectable()
export class MixpanelPeople {
export class MixpanelPeople extends IonicNativePlugin {
/**
*

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface MusicControlsOptions {
@ -107,7 +107,7 @@ export interface MusicControlsOptions {
repo: 'https://github.com/homerours/cordova-music-controls-plugin'
})
@Injectable()
export class MusicControls {
export class MusicControls extends IonicNativePlugin {
/**
* Create the media controls

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Native Audio
* @description Native Audio Playback
@ -36,7 +36,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
repo: 'https://github.com/floatinghotpot/cordova-plugin-nativeaudio'
})
@Injectable()
export class NativeAudio {
export class NativeAudio extends IonicNativePlugin {
/**
* Loads an audio file into memory. Optimized for short clips / single shots (up to five seconds). Cannot be stopped / looped.
* @param id {string} unique ID for the audio file

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @beta
@ -35,7 +35,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['iOS', 'Android']
})
@Injectable()
export class NativeGeocoder {
export class NativeGeocoder extends IonicNativePlugin {
/**
* Reverse geocode a given latitude and longitude to find location address

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
export interface NativeTransitionOptions {
direction?: string;
@ -69,7 +69,7 @@ export interface NativeTransitionOptions {
platforms: ['iOS', 'Android', 'Windows Phone']
})
@Injectable()
export class NativePageTransitions {
export class NativePageTransitions extends IonicNativePlugin {
/**
* Perform a slide animation
* @param options {NativeTransitionOptions} Options for the transition

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
@ -35,7 +35,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android', 'iOS', 'Windows']
})
@Injectable()
export class NativeStorage {
export class NativeStorage extends IonicNativePlugin {
/**
* Stores a value
* @param reference {string}

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
@ -28,7 +28,7 @@ import { Cordova, Plugin } from '@ionic-native/core';
platforms: ['Android']
})
@Injectable()
export class NavigationBar {
export class NavigationBar extends IonicNativePlugin {
/**
* hide automatically (or not) the navigation bar.

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, CordovaProperty, Plugin, CordovaCheck } from '@ionic-native/core';
import { Cordova, CordovaProperty, Plugin, CordovaCheck, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/merge';
@ -56,7 +56,7 @@ declare var navigator: any;
pluginRef: 'navigator.connection'
})
@Injectable()
export class Network {
export class Network extends IonicNativePlugin {
/**
* Connection type

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
declare let window: any;
/**
@ -38,7 +38,7 @@ declare let window: any;
*@{ NFC } class methods
*/
@Injectable()
export class NFC {
export class NFC extends IonicNativePlugin {
/**
* Registers an event listener for any NDEF tag.
* @param onSuccess
@ -163,7 +163,7 @@ export class NFC {
enabled(): Promise<any> {return; }
/**
* @{ NFC } class utility methods
* for use with
* for use with
*/
/**
* Convert byte array to string
@ -181,7 +181,7 @@ export class NFC {
stringToBytes(str: string): number[] {return; };
/**
* Convert byte array to hex string
*
*
* @param bytes {number[]}
* @returns {string}
*/
@ -206,7 +206,7 @@ export class NFC {
* For usage with nfc.write() and nfc.share()
*/
@Injectable()
export class Ndef {
export class Ndef extends IonicNativePlugin {
@Cordova({ sync: true })
uriRecord(uri: string): any { return; }

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin } from '@ionic-native/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export interface OSNotification {
@ -308,7 +308,7 @@ export enum OSActionType {
platforms: ['Android', 'iOS', 'Windows', 'FireOS']
})
@Injectable()
export class OneSignal {
export class OneSignal extends IonicNativePlugin {
/**
* constants to use in inFocusDisplaying()

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova } from '@ionic-native/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name PayPal
* @description
@ -71,7 +71,7 @@ import { Plugin, Cordova } from '@ionic-native/core';
platforms: ['Android', 'iOS']
})
@Injectable()
export class PayPal {
export class PayPal extends IonicNativePlugin {
/**
* Retrieve the version of the PayPal iOS SDK library. Useful when contacting support.
* @returns {Promise<string>}

Some files were not shown because too many files have changed in this diff Show More