From 38eaeffe7e1dc590ada8b78237b6f15e3bbab83a Mon Sep 17 00:00:00 2001 From: Paulo Vitor Magacho da Silva Date: Sun, 8 Oct 2017 10:44:50 -0300 Subject: [PATCH] Added Electric Imp Blinkup Plugin support --- src/@ionic-native/plugins/blinkup/index.ts | 114 +++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100644 src/@ionic-native/plugins/blinkup/index.ts diff --git a/src/@ionic-native/plugins/blinkup/index.ts b/src/@ionic-native/plugins/blinkup/index.ts new file mode 100644 index 00000000..b02d7154 --- /dev/null +++ b/src/@ionic-native/plugins/blinkup/index.ts @@ -0,0 +1,114 @@ +import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core'; +import { Observable } from 'rxjs/Observable'; +import { Injectable } from '@angular/core'; + +/** + * Interface of a blink up options. + */ +export interface BlinkUpOptions { + apiKey: string; + developmentPlanId?: string; + isInDevelopment?: boolean; + timeoutMs?: number; +} + +/** + * Interface of a blink up wifi options. + */ +export interface BlinkUpWifiOptions { + apiKey: string; + timeoutMs?: number; + ssid: string; + password: string; +} + +/** + * Interface of a blink up wps options. + */ +export interface BlinkUpWPSOptions { + apiKey: string; + timeoutMs?: number; + wpsPin: string; +} + +/** + * @name BlinkUp + * @description + * Electric Imp BlinkUp ionic plugin. + * + * @usage + * ```typescript + * import { BlinkUp } from '@ionic-native/blinkup'; + * + * const options = { + * apiKey: 'API_KEY', + * timeoutMs: 60000, + * ssid: 'MY_SSID', + * password: 'MY_PASSWORD' + * } + * BlinkUp.flashWifiBlinkUp(options).subscribe( + * (result) => console.log('Done'), + * (error) => console.log(error) + * ) + * ``` + */ +@Plugin({ + pluginName: 'BlinkUp', + plugin: 'cordova-plugin-blinkup', + pluginRef: 'blinkup', + repo: 'https://github.com/SensorShare/cordova-plugin-blinkup', + platforms: ['Android', 'iOS'] +}) +@Injectable() +export class BlinkUp extends IonicNativePlugin { + /** + * startBlinkUp - starts the blinkup process + * @param {module:blinkup.BlinkUpOptions} options BlinkUp Options + * @return {Observable} Returns an Observable + */ + @Cordova({ + callbackOrder: 'reverse', + observable: true + }) + startBlinkUp(options: BlinkUpOptions): Observable { return; } + + /** + * flashWifiBlinkUp - invokes the flash wifi process + * @param {module:blinkup.BlinkUpWifiOptions} options BlinkUp Wifi Options + * @return {Observable} Returns an Observable + */ + @Cordova({ + callbackOrder: 'reverse', + observable: true + }) + flashWifiBlinkUp(options: BlinkUpWifiOptions): Observable { return; } + + /** + * flashWPSBlinkUp - invokes the flash wps process + * @param {module:blinkup.BlinkUpWPSOptions} options BlinkUp WPS Options + * @return {Observable} Returns an Observable + */ + @Cordova({ + callbackOrder: 'reverse', + observable: true + }) + flashWPSBlinkUp(options: BlinkUpWPSOptions): Observable { return; } + + /** + * abortBlinkUp - abort blinkup process + * @return {Observable} Returns an Observable + */ + @Cordova({ + observable: true + }) + abortBlinkUp(): Observable { return; } + + /** + * clearBlinkUpData - clear wifi data + * @return {Observable} Returns an Observable + */ + @Cordova({ + observable: true + }) + clearBlinkUpData(): Observable { return; } +}