mirror of
https://github.com/danielsogl/awesome-cordova-plugins.git
synced 2026-02-16 00:00:02 +08:00
Compare commits
83 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9a4e36d9d8 | ||
|
|
0e970f5038 | ||
|
|
398d0eeac5 | ||
|
|
c0d27262e4 | ||
|
|
f41dfee912 | ||
|
|
f5f92e191a | ||
|
|
a6ae0919e4 | ||
|
|
5b914d7f15 | ||
|
|
2f3331e9ea | ||
|
|
c972497475 | ||
|
|
3582e877d6 | ||
|
|
0c79ac16ec | ||
|
|
3af23023ee | ||
|
|
f289a6bbb6 | ||
|
|
e64cc0c61c | ||
|
|
7144eb0afa | ||
|
|
fa93226cbf | ||
|
|
613340118c | ||
|
|
55d573f144 | ||
|
|
b56297e115 | ||
|
|
b8ac7bfb6a | ||
|
|
7cb95f1b91 | ||
|
|
da0fd821f7 | ||
|
|
6a18d3f1e0 | ||
|
|
5072c99938 | ||
|
|
e40247c211 | ||
|
|
593607e914 | ||
|
|
51fc5332ff | ||
|
|
27fdac91fd | ||
|
|
3c125bbc84 | ||
|
|
62c39b33c6 | ||
|
|
e6f81519cc | ||
|
|
64ce132262 | ||
|
|
af91977f82 | ||
|
|
07443e0b53 | ||
|
|
72f838d768 | ||
|
|
fa86cee3fa | ||
|
|
83c25b41ef | ||
|
|
2128703d8d | ||
|
|
b52371b174 | ||
|
|
65c2665fc0 | ||
|
|
279b449456 | ||
|
|
9bd4994f01 | ||
|
|
ab74703841 | ||
|
|
18a81a77a9 | ||
|
|
2ebfa46437 | ||
|
|
1d4fc03cba | ||
|
|
e9283a994d | ||
|
|
ed6fe880b6 | ||
|
|
a2d979a277 | ||
|
|
1ccfb1d84c | ||
|
|
2ec0f87a79 | ||
|
|
03ac735476 | ||
|
|
9eb29f8924 | ||
|
|
85a1f6a35b | ||
|
|
3cb7d6d4d8 | ||
|
|
884cabd301 | ||
|
|
663c24d2fa | ||
|
|
fecf8ad994 | ||
|
|
b05ba586f8 | ||
|
|
4ed8f9337f | ||
|
|
25446441cf | ||
|
|
0805d7754e | ||
|
|
d60c0800e7 | ||
|
|
35f498b82c | ||
|
|
8cf4a57a77 | ||
|
|
cb51b5abd6 | ||
|
|
59a8e76ba9 | ||
|
|
8f985025d1 | ||
|
|
7d9df8c82f | ||
|
|
22ccbfdf8f | ||
|
|
c6a76c26e0 | ||
|
|
c3f9fb4a23 | ||
|
|
abeedbf2fa | ||
|
|
9bdabd3ac3 | ||
|
|
0467a0dd32 | ||
|
|
3eb69b4056 | ||
|
|
793e2e34d3 | ||
|
|
dd7098d5bd | ||
|
|
268e22456e | ||
|
|
9950b18e38 | ||
|
|
b4deaaa941 | ||
|
|
328e5de3f3 |
2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
@@ -4,7 +4,7 @@
|
||||
#### There are no rules, but here are a few things to consider:
|
||||
###### Before you submit an issue:
|
||||
* Do a quick search to see if there are similar issues
|
||||
* Make sure that you are waiting for `deviceready` to fire before interacting with any plugin. If you are using Ionic 2, this can be done using [the `Platform.ready()` function](http://ionicframework.com/docs/api/platform/Platform/#ready).
|
||||
* Make sure that you are waiting for `deviceready` to fire before interacting with any plugin. If you are using Ionic, this can be done using [the `Platform.ready()` function](http://ionicframework.com/docs/api/platform/Platform/#ready).
|
||||
* **Check that you are using the latest version of** `ionic-native`, you can install the latest version by running `npm i --save @ionic-native/core@latest`
|
||||
|
||||
###### Still having problems? submit an issue with the following details:
|
||||
|
||||
85
CHANGELOG.md
85
CHANGELOG.md
@@ -1,3 +1,88 @@
|
||||
<a name="3.14.0"></a>
|
||||
# [3.14.0](https://github.com/ionic-team/ionic-native/compare/v3.13.1...v3.14.0) (2017-07-07)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **in-app-purchase2:** add a second InAppPurchase plugin ([#1775](https://github.com/ionic-team/ionic-native/issues/1775)) ([398d0ee](https://github.com/ionic-team/ionic-native/commit/398d0ee)), closes [#1705](https://github.com/ionic-team/ionic-native/issues/1705)
|
||||
|
||||
|
||||
|
||||
<a name="3.13.1"></a>
|
||||
## [3.13.1](https://github.com/ionic-team/ionic-native/compare/v3.13.0...v3.13.1) (2017-07-05)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **document-viewer:** make config properties optional ([#1767](https://github.com/ionic-team/ionic-native/issues/1767)) ([5b914d7](https://github.com/ionic-team/ionic-native/commit/5b914d7))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **app-rate:** add function handleNegativeFeedback() ([#1748](https://github.com/ionic-team/ionic-native/issues/1748)) ([e64cc0c](https://github.com/ionic-team/ionic-native/commit/e64cc0c))
|
||||
* **app-rate:** add function navigateToAppStore() ([#1719](https://github.com/ionic-team/ionic-native/issues/1719)) ([0c79ac1](https://github.com/ionic-team/ionic-native/commit/0c79ac1))
|
||||
|
||||
|
||||
|
||||
<a name="3.13.0"></a>
|
||||
# [3.13.0](https://github.com/ionic-team/ionic-native/compare/v3.12.2...v3.13.0) (2017-07-03)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **pin-check:** add pin check plugin ([#1734](https://github.com/ionic-team/ionic-native/issues/1734)) ([b8ac7bf](https://github.com/ionic-team/ionic-native/commit/b8ac7bf))
|
||||
* **qqsdk:** add qqsdk plugin ([#1689](https://github.com/ionic-team/ionic-native/issues/1689)) ([b56297e](https://github.com/ionic-team/ionic-native/commit/b56297e))
|
||||
|
||||
|
||||
|
||||
<a name="3.12.2"></a>
|
||||
## [3.12.2](https://github.com/ionic-team/ionic-native/compare/v3.12.1...v3.12.2) (2017-07-03)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **android-fingerprint-auth:** fix return type of isAvailable ([#1697](https://github.com/ionic-team/ionic-native/issues/1697)) ([af91977](https://github.com/ionic-team/ionic-native/commit/af91977))
|
||||
* **ibeacon:** optional parameter ([#1702](https://github.com/ionic-team/ionic-native/issues/1702)) ([64ce132](https://github.com/ionic-team/ionic-native/commit/64ce132)), closes [#1701](https://github.com/ionic-team/ionic-native/issues/1701)
|
||||
* **local-notifications:** add missing priority option ([e40247c](https://github.com/ionic-team/ionic-native/commit/e40247c)), closes [#1683](https://github.com/ionic-team/ionic-native/issues/1683)
|
||||
* **mobile-accessibility:** fix plugin reference ([03ac735](https://github.com/ionic-team/ionic-native/commit/03ac735)), closes [#1666](https://github.com/ionic-team/ionic-native/issues/1666)
|
||||
* **onesignal:** fix getPermissionSubscriptionState return type ([#1742](https://github.com/ionic-team/ionic-native/issues/1742)) ([3c125bb](https://github.com/ionic-team/ionic-native/commit/3c125bb))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **music-controls:** add event for ios control center seek and function to update ios elapsed time ([#1727](https://github.com/ionic-team/ionic-native/issues/1727)) ([593607e](https://github.com/ionic-team/ionic-native/commit/593607e))
|
||||
* **one-signal:** add getPermissionSubscriptionState ([#1678](https://github.com/ionic-team/ionic-native/issues/1678)) ([e9283a9](https://github.com/ionic-team/ionic-native/commit/e9283a9))
|
||||
* **sqlite:** support pre-filled databases ([#1687](https://github.com/ionic-team/ionic-native/issues/1687)) ([b52371b](https://github.com/ionic-team/ionic-native/commit/b52371b))
|
||||
|
||||
|
||||
|
||||
<a name="3.12.1"></a>
|
||||
## [3.12.1](https://github.com/ionic-team/ionic-native/compare/v3.12.0...v3.12.1) (2017-06-03)
|
||||
|
||||
|
||||
### Code Refactoring
|
||||
|
||||
* **phonegap-local-notification:** fix class name to match plugin name ([c6a76c2](https://github.com/ionic-team/ionic-native/commit/c6a76c2))
|
||||
|
||||
|
||||
### BREAKING CHANGES
|
||||
|
||||
* **phonegap-local-notification:** PhonegapLocalNotifications class has been renamed to PhonegapLocalNotification
|
||||
|
||||
|
||||
|
||||
<a name="3.12.0"></a>
|
||||
# [3.12.0](https://github.com/ionic-team/ionic-native/compare/v3.11.0...v3.12.0) (2017-06-03)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **base64:** add Base64 plugin ([#1645](https://github.com/ionic-team/ionic-native/issues/1645)) ([793e2e3](https://github.com/ionic-team/ionic-native/commit/793e2e3))
|
||||
* **firebase-analytics:** add firebase analytics plugin ([#1647](https://github.com/ionic-team/ionic-native/issues/1647)) ([3eb69b4](https://github.com/ionic-team/ionic-native/commit/3eb69b4))
|
||||
* **firebase-dynamic-links:** add firebase dynamic links plugin ([#1649](https://github.com/ionic-team/ionic-native/issues/1649)) ([0467a0d](https://github.com/ionic-team/ionic-native/commit/0467a0d))
|
||||
|
||||
|
||||
|
||||
<a name="3.11.0"></a>
|
||||
# [3.11.0](https://github.com/ionic-team/ionic-native/compare/v3.10.2...v3.11.0) (2017-06-01)
|
||||
|
||||
|
||||
11
circle.yml
11
circle.yml
@@ -7,7 +7,7 @@ jobs:
|
||||
steps:
|
||||
- checkout
|
||||
- restore_cache:
|
||||
key: ionic-site-{{ .Branch }}
|
||||
key: ionic-site-{{ checksum "package.json" }}
|
||||
- run:
|
||||
name: Prepare ionic-site repo
|
||||
command: |
|
||||
@@ -15,7 +15,7 @@ jobs:
|
||||
./scripts/docs/prepare.sh
|
||||
fi
|
||||
- save_cache:
|
||||
key: ionic-site-{{ .Branch }}
|
||||
key: ionic-site-{{ checksum "package.json" }}
|
||||
paths:
|
||||
- ~/ionic-site/
|
||||
- restore_cache:
|
||||
@@ -32,8 +32,11 @@ jobs:
|
||||
command: npm run lint
|
||||
- run: bash ./scripts/git/config.sh
|
||||
- run:
|
||||
name: Build changed plugins
|
||||
command: node scripts/ci-tests.js
|
||||
name: Build Ionic Native
|
||||
command: npm run build:core && ./node_modules/.bin/tsc
|
||||
- run:
|
||||
name: Generate README files to ensure docs are valid
|
||||
command: npm run readmes
|
||||
- run:
|
||||
name: Run tests
|
||||
command: npm test
|
||||
|
||||
2
package-lock.json
generated
2
package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ionic-native",
|
||||
"version": "3.11.0",
|
||||
"version": "3.12.1",
|
||||
"lockfileVersion": 1,
|
||||
"dependencies": {
|
||||
"@angular/compiler": {
|
||||
|
||||
13
package.json
13
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ionic-native",
|
||||
"version": "3.11.0",
|
||||
"version": "3.14.0",
|
||||
"description": "Native plugin wrappers for Cordova and Ionic with TypeScript, ES6+, Promise and Observable support",
|
||||
"homepage": "https://ionicframework.com/",
|
||||
"author": "Ionic Team <hi@ionic.io> (https://ionic.io)",
|
||||
@@ -10,8 +10,8 @@
|
||||
"@angular/compiler-cli": "4.1.3",
|
||||
"@angular/core": "4.1.3",
|
||||
"@types/cordova": "0.0.34",
|
||||
"@types/jasmine": "^2.5.47",
|
||||
"@types/node": "^7.0.18",
|
||||
"@types/jasmine": "^2.5.51",
|
||||
"@types/node": "^7.0.27",
|
||||
"canonical-path": "0.0.2",
|
||||
"child-process-promise": "2.2.1",
|
||||
"conventional-changelog-cli": "1.3.1",
|
||||
@@ -39,12 +39,12 @@
|
||||
"q": "1.5.0",
|
||||
"queue": "4.2.1",
|
||||
"rimraf": "2.6.1",
|
||||
"rxjs": "5.1.1",
|
||||
"rxjs": "5.4.0",
|
||||
"semver": "5.3.0",
|
||||
"tslint": "3.15.1",
|
||||
"tslint-ionic-rules": "0.0.8",
|
||||
"typescript": "2.3.3",
|
||||
"zone.js": "^0.8.11"
|
||||
"zone.js": "0.8.12"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "npm run test:watch",
|
||||
@@ -58,7 +58,8 @@
|
||||
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
|
||||
"postchangelog": "git commit -am \"chore(): update changelog\"",
|
||||
"test": "karma start karma.conf.js --single-run",
|
||||
"test:watch": "karma start karma.conf.js"
|
||||
"test:watch": "karma start karma.conf.js",
|
||||
"readmes": "gulp readmes"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
||||
12
scripts/docs/templates/common.template.html
vendored
12
scripts/docs/templates/common.template.html
vendored
@@ -127,7 +127,7 @@ docType: "<$ doc.docType $>"
|
||||
|
||||
<@- macro documentClass(doc) @>
|
||||
<@- if doc.statics.length -@>
|
||||
<h2>Static Members</h2>
|
||||
<h2><a class="anchor" name="static-members" href="#static-members"></a>Static Members</h2>
|
||||
<@ for method in doc.statics -@>
|
||||
<$ documentMethod(method) $>
|
||||
<@ endfor -@>
|
||||
@@ -136,7 +136,7 @@ docType: "<$ doc.docType $>"
|
||||
<# --- methods in class --- #>
|
||||
<@- if doc.members and doc.members.length @>
|
||||
|
||||
<h2>Instance Members</h2>
|
||||
<h2><a class="anchor" name="instance-members" href="#instance-members"></a>Instance Members</h2>
|
||||
<@ for method in doc.members -@>
|
||||
<$ documentMethod(method) $>
|
||||
<@- endfor @>
|
||||
@@ -174,7 +174,7 @@ docType: "<$ doc.docType $>"
|
||||
</p>
|
||||
|
||||
<# --- Install commands --- #>
|
||||
<h2>Installation</h2>
|
||||
<h2><a class="anchor" name="installation" href="#installation"></a>Installation</h2>
|
||||
<ol class="installation">
|
||||
<li>Install the Cordova and Ionic Native plugins:<br>
|
||||
<pre><code class="nohighlight">$ <@ if prop.install @><$ prop.install $><@ else @>ionic cordova plugin add <$ prop.plugin $><@ endif @>
|
||||
@@ -186,7 +186,7 @@ $ npm install --save @ionic-native/<$ doc.npmId $>
|
||||
|
||||
<# --- Plugin supported platforms --- #>
|
||||
<@ if prop.platforms @>
|
||||
<h2>Supported platforms</h2>
|
||||
<h2><a class="anchor" name="platforms" href="#platforms"></a>Supported platforms</h2>
|
||||
<ul>
|
||||
<@ for platform in prop.platforms -@>
|
||||
<li><$ platform $></li>
|
||||
@@ -198,13 +198,13 @@ $ npm install --save @ionic-native/<$ doc.npmId $>
|
||||
|
||||
<# --- Plugin usage --- #>
|
||||
<@ if doc.usage @>
|
||||
<h2>Usage</h2>
|
||||
<h2><a class="anchor" name="usage" href="#usage"></a>Usage</h2>
|
||||
<$ doc.usage | marked $>
|
||||
<@ endif @>
|
||||
|
||||
<# --- Plugin attributes --- #>
|
||||
<@- if doc.properties -@>
|
||||
<h2>Attributes:</h2>
|
||||
<h2><a class="anchor" name="attributes" href="#attributes"></a>Attributes:</h2>
|
||||
<table class="table" style="margin:0;">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
@@ -25,7 +25,7 @@ export const getPromise = (callback: Function): Promise<any> => {
|
||||
callback(resolve, reject);
|
||||
});
|
||||
} else {
|
||||
console.error('No Promise support or polyfill found. To enable Ionic Native support, please add the es6-promise polyfill before this script, or run with a library like Angular 2 or on a recent browser.');
|
||||
console.error('No Promise support or polyfill found. To enable Ionic Native support, please add the es6-promise polyfill before this script, or run with a library like Angular or on a recent browser.');
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@ export interface ActionSheetOptions {
|
||||
plugin: 'cordova-plugin-actionsheet',
|
||||
pluginRef: 'plugins.actionsheet',
|
||||
repo: 'https://github.com/EddyVerbruggen/cordova-plugin-actionsheet',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Browser']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class ActionSheet extends IonicNativePlugin {
|
||||
|
||||
@@ -101,7 +101,7 @@ export interface AlipayOrder {
|
||||
plugin: 'cordova-alipay-base',
|
||||
pluginRef: 'Alipay.Base',
|
||||
repo: 'https://github.com/xueron/cordova-alipay-base',
|
||||
install: 'ionic cordova plugin add https://github.com/xueron/cordova-alipay-base --variable APP_ID=your_app_id',
|
||||
install: 'ionic cordova plugin add cordova-alipay-base --variable APP_ID=your_app_id',
|
||||
installVariables: ['APP_ID'],
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
|
||||
@@ -192,7 +192,7 @@ export class AndroidFingerprintAuth extends IonicNativePlugin {
|
||||
* @returns {Promise<any>} Returns a Promise that resolves if fingerprint auth is available on the device
|
||||
*/
|
||||
@Cordova()
|
||||
isAvailable(): Promise<{ isAvailable: boolean }> { return; }
|
||||
isAvailable(): Promise<{ isAvailable: boolean, isHardwareDetected: boolean, hasEnrolledFingerprints: boolean }> { return; }
|
||||
|
||||
/**
|
||||
* Delete the cipher used for encryption and decryption by username
|
||||
|
||||
@@ -8,17 +8,17 @@ import { Injectable } from '@angular/core';
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Platfrom } from 'ionic-angular';
|
||||
* import { AppMinimize } from '@ionic-native/app-minimize';
|
||||
*
|
||||
*
|
||||
* constructor(private appMinimize: AppMinimize) { }
|
||||
* constructor(private platform: Platform, private appMinimize: AppMinimize) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.plugin.minimize().then(
|
||||
* success => console.log('Closed'),
|
||||
* err => console.log('Something went wrong')
|
||||
* );
|
||||
* this.platform.registerBackButtonAction(() => {
|
||||
* this.appMinimize.minimize();
|
||||
* });
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
|
||||
@@ -61,6 +61,10 @@ export interface AppRateCallbacks {
|
||||
* call back function. called when rate-dialog showing
|
||||
*/
|
||||
onRateDialogShow?: Function;
|
||||
/**
|
||||
* call back function. called when user clicked on negative feedback
|
||||
*/
|
||||
handleNegativeFeedback?: Function;
|
||||
|
||||
}
|
||||
|
||||
@@ -140,7 +144,7 @@ export interface AppUrls {
|
||||
plugin: 'cordova-plugin-apprate',
|
||||
pluginRef: 'AppRate',
|
||||
repo: 'https://github.com/pushandplay/cordova-plugin-apprate',
|
||||
platforms: ['Android', 'iOS', 'Windows (experimental)']
|
||||
platforms: ['Android', 'BlackBerry 10', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class AppRate extends IonicNativePlugin {
|
||||
@@ -159,4 +163,10 @@ export class AppRate extends IonicNativePlugin {
|
||||
@Cordova()
|
||||
promptForRating(immediately: boolean): void { };
|
||||
|
||||
/**
|
||||
* Immediately send the user to the app store rating page
|
||||
*/
|
||||
@Cordova()
|
||||
navigateToAppStore(): void { };
|
||||
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-app-version',
|
||||
pluginRef: 'cordova.getAppVersion',
|
||||
repo: 'https://github.com/whiteoctober/cordova-plugin-app-version',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Android', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class AppVersion extends IonicNativePlugin {
|
||||
|
||||
@@ -125,7 +125,7 @@ export interface BackgroundGeolocationConfig {
|
||||
startForeground?: boolean;
|
||||
|
||||
/**
|
||||
* ANDROID, WP8 ONLY
|
||||
* ANDROID ONLY
|
||||
* When using BackgroundGeolocation.LocationProvider.ANDROID_DISTANCE_FILTER_PROVIDER:
|
||||
* The minimum time interval between location updates in milliseconds.
|
||||
* @see Android docs (http://developer.android.com/reference/android/location/LocationManager.html#requestLocationUpdates(long,%20float,%20android.location.Criteria,%20android.app.PendingIntent))
|
||||
@@ -306,7 +306,7 @@ export interface BackgroundGeolocationConfig {
|
||||
plugin: 'cordova-plugin-mauron85-background-geolocation',
|
||||
pluginRef: 'backgroundGeolocation',
|
||||
repo: 'https://github.com/mauron85/cordova-plugin-background-geolocation',
|
||||
platforms: ['iOS', 'Android', 'Windows Phone 8']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class BackgroundGeolocation extends IonicNativePlugin {
|
||||
@@ -391,7 +391,7 @@ export class BackgroundGeolocation extends IonicNativePlugin {
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
@Cordova({
|
||||
platforms: ['iOS', 'Windows Phone']
|
||||
platforms: ['iOS']
|
||||
})
|
||||
finish(): Promise<any> { return; }
|
||||
|
||||
@@ -401,7 +401,7 @@ export class BackgroundGeolocation extends IonicNativePlugin {
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
@Cordova({
|
||||
platforms: ['iOS', 'Windows Phone']
|
||||
platforms: ['iOS']
|
||||
})
|
||||
changePace(isMoving: boolean): Promise<any> { return; }
|
||||
|
||||
@@ -420,7 +420,7 @@ export class BackgroundGeolocation extends IonicNativePlugin {
|
||||
* @returns {Promise<Location>}
|
||||
*/
|
||||
@Cordova({
|
||||
platforms: ['iOS', 'Windows Phone']
|
||||
platforms: ['iOS']
|
||||
})
|
||||
getStationaryLocation(): Promise<BackgroundGeolocationResponse> { return; }
|
||||
|
||||
@@ -430,7 +430,7 @@ export class BackgroundGeolocation extends IonicNativePlugin {
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
@Cordova({
|
||||
platforms: ['iOS', 'Windows Phone']
|
||||
platforms: ['iOS']
|
||||
})
|
||||
onStationary(): Promise<any> { return; }
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@ export interface BackgroundModeConfiguration {
|
||||
plugin: 'cordova-plugin-background-mode',
|
||||
pluginRef: 'cordova.plugins.backgroundMode',
|
||||
repo: 'https://github.com/katzer/cordova-plugin-background-mode',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
platforms: ['AmazonFire OS', 'Android', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class BackgroundMode extends IonicNativePlugin {
|
||||
|
||||
@@ -27,7 +27,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-badge',
|
||||
pluginRef: 'cordova.plugins.notification.badge',
|
||||
repo: 'https://github.com/katzer/cordova-plugin-badge',
|
||||
platforms: ['Android', 'iOS', 'Browser', 'Windows', 'Amazon FireOS', 'Windows Phone 8']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class Badge extends IonicNativePlugin {
|
||||
|
||||
@@ -92,7 +92,7 @@ export interface BarcodeScanResult {
|
||||
plugin: 'phonegap-plugin-barcodescanner',
|
||||
pluginRef: 'cordova.plugins.barcodeScanner',
|
||||
repo: 'https://github.com/phonegap/phonegap-plugin-barcodescanner',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Windows 10', 'Windows 8', 'BlackBerry 10', 'Browser']
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class BarcodeScanner extends IonicNativePlugin {
|
||||
|
||||
45
src/@ionic-native/plugins/base64/index.ts
Normal file
45
src/@ionic-native/plugins/base64/index.ts
Normal file
@@ -0,0 +1,45 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
|
||||
/**
|
||||
* @beta
|
||||
* @name Base64
|
||||
* @description
|
||||
* This Plugin is used to encode base64 of any file, it uses js code for iOS, but in case of android it uses native code to handle android versions lower than v.3
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Base64 } from '@ionic-native/base64';
|
||||
*
|
||||
* constructor(private base64: Base64) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* let filePath: string = 'file:///...';
|
||||
* this.base64.encodeFile(filePath).then((base64File: string) => {
|
||||
* console.log(base64File);
|
||||
* }, (err) => {
|
||||
* console.log(err);
|
||||
* });
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Base64',
|
||||
plugin: 'com-badrit-base64',
|
||||
pluginRef: 'plugins.Base64',
|
||||
repo: 'https://github.com/hazemhagrass/phonegap-base64',
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class Base64 extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* This function encodes base64 of any file
|
||||
* @param {string} filePath Absolute file path
|
||||
* @return {Promise<string>} Returns a promise that resolves when the file is successfully encoded
|
||||
*/
|
||||
@Cordova()
|
||||
encodeFile(filePath: string): Promise<string> { return; }
|
||||
|
||||
}
|
||||
@@ -49,7 +49,7 @@ export interface BatteryStatusResponse {
|
||||
plugin: 'cordova-plugin-battery-status',
|
||||
pluginRef: 'navigator.battery',
|
||||
repo: 'https://github.com/apache/cordova-plugin-battery-status',
|
||||
platforms: ['Amazon Fire OS', 'iOS', 'Android', 'BlackBerry 10', 'Windows Phone 7', 'Windows Phone 8', 'Windows', 'Firefox OS', 'Browser']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class BatteryStatus extends IonicNativePlugin {
|
||||
|
||||
@@ -173,7 +173,7 @@ import { Observable } from 'rxjs/Observable';
|
||||
plugin: 'cordova-plugin-ble-central',
|
||||
pluginRef: 'ble',
|
||||
repo: 'https://github.com/don/cordova-plugin-ble-central',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class BLE extends IonicNativePlugin {
|
||||
|
||||
@@ -35,7 +35,7 @@ import { Observable } from 'rxjs/Observable';
|
||||
repo: 'https://github.com/don/BluetoothSerial',
|
||||
plugin: 'cordova-plugin-bluetooth-serial',
|
||||
pluginRef: 'bluetoothSerial',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone', 'Browser']
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class BluetoothSerial extends IonicNativePlugin {
|
||||
|
||||
@@ -4,6 +4,7 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
* @name Call Number
|
||||
* @description
|
||||
* Call a number directly from your Cordova/Ionic application.
|
||||
* **NOTE**: The iOS Simulator (and maybe Android Simulators) do not provide access to the phone subsystem.
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
@@ -14,7 +15,7 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
* ...
|
||||
*
|
||||
*
|
||||
* this.callNumber.callNumber(18001010101, true)
|
||||
* this.callNumber.callNumber("18001010101", true)
|
||||
* .then(() => console.log('Launched dialer!'))
|
||||
* .catch(() => console.log('Error launching dialer'));
|
||||
*
|
||||
@@ -25,7 +26,7 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'call-number',
|
||||
pluginRef: 'plugins.CallNumber',
|
||||
repo: 'https://github.com/Rohfosho/CordovaCallNumberPlugin',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class CallNumber extends IonicNativePlugin {
|
||||
|
||||
@@ -125,7 +125,7 @@ export interface CameraPopoverOptions {
|
||||
plugin: 'cordova-plugin-camera',
|
||||
pluginRef: 'navigator.camera',
|
||||
repo: 'https://github.com/apache/cordova-plugin-camera',
|
||||
platforms: ['Android', 'BlackBerry', 'Browser', 'Firefox', 'FireOS', 'iOS', 'Windows', 'Windows Phone 8', 'Ubuntu']
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class Camera extends IonicNativePlugin {
|
||||
|
||||
@@ -164,7 +164,7 @@ export interface CardIOResponse {
|
||||
plugin: 'card.io.cordova.mobilesdk',
|
||||
pluginRef: 'CardIO',
|
||||
repo: 'https://github.com/card-io/card.io-Cordova-Plugin',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class CardIO extends IonicNativePlugin {
|
||||
|
||||
@@ -5,8 +5,6 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
* @description
|
||||
* Clipboard management plugin for Cordova that supports iOS, Android, and Windows Phone 8.
|
||||
*
|
||||
* Requires Cordova plugin: https://github.com/VersoSolutions/CordovaClipboard
|
||||
* For more info, please see the [Clipboard plugin docs](https://github.com/VersoSolutions/CordovaClipboard.git).
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
@@ -31,10 +29,10 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Clipboard',
|
||||
plugin: 'https://github.com/VersoSolutions/CordovaClipboard.git',
|
||||
plugin: 'danielsogl-cordova-plugin-clipboard',
|
||||
pluginRef: 'cordova.plugins.clipboard',
|
||||
repo: 'https://github.com/VersoSolutions/CordovaClipboard',
|
||||
platforms: ['Amazon Fire OS', 'iOS', 'Android', 'BlackBerry 10', 'Windows Phone 7', 'Windows Phone 8', 'Windows', 'Firefox OS', 'Browser']
|
||||
repo: 'https://github.com/danielsogl/cordova-plugin-clipboard',
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class Clipboard extends IonicNativePlugin {
|
||||
|
||||
@@ -294,7 +294,7 @@ 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', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class Contacts extends IonicNativePlugin {
|
||||
|
||||
@@ -23,7 +23,7 @@ import { Injectable } from '@angular/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'CouchbaseLite',
|
||||
plugin: 'https://github.com/couchbaselabs/Couchbase-Lite-PhoneGap-Plugin.git',
|
||||
plugin: 'couchbase-lite-phonegap-plugin',
|
||||
pluginRef: 'cblite',
|
||||
repo: 'https://github.com/couchbaselabs/Couchbase-Lite-PhoneGap-Plugin',
|
||||
platforms: ['Android', 'iOS']
|
||||
|
||||
@@ -39,7 +39,7 @@ import { Observable } from 'rxjs/Observable';
|
||||
plugin: 'cordova-plugin-dbmeter',
|
||||
pluginRef: 'DBMeter',
|
||||
repo: 'https://github.com/akofman/cordova-plugin-dbmeter',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class DBMeter extends IonicNativePlugin {
|
||||
|
||||
@@ -49,7 +49,7 @@ export interface DeeplinkMatch {
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
* Alternatively, if you're using Ionic 2, there's a convenience method that takes a reference to a `NavController` and handles
|
||||
* Alternatively, if you're using Ionic, there's a convenience method that takes a reference to a `NavController` and handles
|
||||
* the actual navigation for you:
|
||||
*
|
||||
* ```typescript
|
||||
@@ -67,7 +67,7 @@ export interface DeeplinkMatch {
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
* See the [Ionic 2 Deeplinks Demo](https://github.com/ionic-team/ionic2-deeplinks-demo/blob/master/app/app.ts) for an example of how to
|
||||
* See the [Ionic Deeplinks Demo](https://github.com/ionic-team/ionic2-deeplinks-demo/blob/master/app/app.ts) for an example of how to
|
||||
* retrieve the `NavController` reference at runtime.
|
||||
*
|
||||
* @interfaces
|
||||
@@ -80,7 +80,7 @@ export interface DeeplinkMatch {
|
||||
repo: 'https://github.com/ionic-team/ionic-plugin-deeplinks',
|
||||
install: 'ionic cordova plugin add ionic-plugin-deeplinks --variable URL_SCHEME=myapp --variable DEEPLINK_SCHEME=https --variable DEEPLINK_HOST=example.com --variable ANDROID_PATH_PREFIX=/',
|
||||
installVariables: ['URL_SCHEME', 'DEEPLINK_SCHEME', 'DEEPLINK_HOST', 'ANDROID_PATH_PREFIX'],
|
||||
platforms: ['iOS', 'Android', 'Browser']
|
||||
platforms: ['Android', 'Browser', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class Deeplinks extends IonicNativePlugin {
|
||||
@@ -103,7 +103,7 @@ export class Deeplinks extends IonicNativePlugin {
|
||||
/**
|
||||
*
|
||||
* This is a convenience version of `route` that takes a reference to a NavController
|
||||
* from Ionic 2, or a custom class that conforms to this protocol:
|
||||
* from Ionic, or a custom class that conforms to this protocol:
|
||||
*
|
||||
* NavController.push = function(View, Params){}
|
||||
*
|
||||
|
||||
@@ -22,9 +22,9 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'DeviceAccounts',
|
||||
plugin: 'https://github.com/loicknuchel/cordova-device-accounts.git',
|
||||
plugin: 'cordova-device-accounts',
|
||||
pluginRef: 'plugins.DeviceAccounts',
|
||||
repo: 'https://github.com/loicknuchel/cordova-device-accounts',
|
||||
repo: 'https://github.com/danielsogl/cordova-device-accounts',
|
||||
platforms: ['Android']
|
||||
})
|
||||
@Injectable()
|
||||
|
||||
@@ -72,7 +72,7 @@ export interface DeviceMotionAccelerometerOptions {
|
||||
plugin: 'cordova-plugin-device-motion',
|
||||
pluginRef: 'navigator.accelerometer',
|
||||
repo: 'https://github.com/apache/cordova-plugin-device-motion',
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class DeviceMotion extends IonicNativePlugin {
|
||||
|
||||
@@ -77,7 +77,7 @@ export interface DeviceOrientationCompassOptions {
|
||||
plugin: 'cordova-plugin-device-orientation',
|
||||
pluginRef: 'navigator.compass',
|
||||
repo: 'https://github.com/apache/cordova-plugin-device-orientation',
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class DeviceOrientation extends IonicNativePlugin {
|
||||
|
||||
@@ -46,7 +46,7 @@ export interface DialogsPromptCallback {
|
||||
plugin: 'cordova-plugin-dialogs',
|
||||
pluginRef: 'navigator.notification',
|
||||
repo: 'https://github.com/apache/cordova-plugin-dialogs',
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Windows Phone 7', 'Windows Phone 8', 'Windows']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Dialogs extends IonicNativePlugin {
|
||||
|
||||
@@ -2,29 +2,29 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
import { Injectable } from '@angular/core';
|
||||
|
||||
export interface DocumentViewerOptions {
|
||||
title: string;
|
||||
documentView: {
|
||||
title?: string;
|
||||
documentView?: {
|
||||
closeLabel: string;
|
||||
};
|
||||
navigationView: {
|
||||
navigationView?: {
|
||||
closeLabel: string;
|
||||
};
|
||||
email: {
|
||||
email?: {
|
||||
enabled: boolean;
|
||||
};
|
||||
print: {
|
||||
print?: {
|
||||
enabled: boolean;
|
||||
};
|
||||
openWith: {
|
||||
openWith?: {
|
||||
enabled: boolean;
|
||||
};
|
||||
bookmarks: {
|
||||
bookmarks?: {
|
||||
enabled: boolean;
|
||||
};
|
||||
search: {
|
||||
search?: {
|
||||
enabled: boolean;
|
||||
};
|
||||
autoClose: {
|
||||
autoClose?: {
|
||||
onPause: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ export interface EmailComposerOptions {
|
||||
plugin: 'cordova-plugin-email',
|
||||
pluginRef: 'cordova.plugins.email',
|
||||
repo: 'https://github.com/hypery2k/cordova-email-plugin',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class EmailComposer extends IonicNativePlugin {
|
||||
|
||||
@@ -44,7 +44,7 @@ export interface EstimoteBeaconRegion {
|
||||
plugin: 'cordova-plugin-estimote',
|
||||
pluginRef: 'estimote.beacons',
|
||||
repo: 'https://github.com/evothings/phonegap-estimotebeacons',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class EstimoteBeacons extends IonicNativePlugin {
|
||||
@@ -512,4 +512,3 @@ export class EstimoteBeacons extends IonicNativePlugin {
|
||||
writeConnectedMinor(minor: number): Promise<any> { return; }
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ export interface FacebookLoginResponse {
|
||||
* Then type in the following command in your Terminal, where APP_ID and APP_NAME are the values from the Facebook Developer portal.
|
||||
*
|
||||
* ```bash
|
||||
* ionic plugin add cordova-plugin-facebook4 --variable APP_ID="123456789" --variable APP_NAME="myApplication"
|
||||
* ionic cordova plugin add cordova-plugin-facebook4 --variable APP_ID="123456789" --variable APP_NAME="myApplication"
|
||||
* ```
|
||||
*
|
||||
* After, you'll need to add the native platforms you'll be using to your app in the Facebook Developer portal under your app's Settings:
|
||||
@@ -116,7 +116,7 @@ export interface FacebookLoginResponse {
|
||||
repo: 'https://github.com/jeduan/cordova-plugin-facebook4',
|
||||
install: 'ionic cordova plugin add cordova-plugin-facebook4 --variable APP_ID="123456789" --variable APP_NAME="myApplication"',
|
||||
installVariables: ['APP_ID', 'APP_NAME'],
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Android', 'iOS', 'Browser']
|
||||
})
|
||||
@Injectable()
|
||||
export class Facebook extends IonicNativePlugin {
|
||||
|
||||
@@ -28,15 +28,15 @@ export interface NotificationData {
|
||||
* import { FCM } from '@ionic-native/fcm';
|
||||
*
|
||||
* constructor(private fcm: FCM) {}
|
||||
*
|
||||
*
|
||||
* ...
|
||||
*
|
||||
*
|
||||
* fcm.subscribeToTopic('marketing');
|
||||
*
|
||||
*
|
||||
* fcm.getToken().then(token=>{
|
||||
* backend.registerToken(token);
|
||||
* })
|
||||
*
|
||||
*
|
||||
* fcm.onNotification().subscribe(data=>{
|
||||
* if(data.wasTapped){
|
||||
* console.log("Received in background");
|
||||
@@ -44,13 +44,13 @@ export interface NotificationData {
|
||||
* console.log("Received in foreground");
|
||||
* };
|
||||
* })
|
||||
*
|
||||
*
|
||||
* fcm.onTokenRefresh().subscribe(token=>{
|
||||
* backend.registerToken(token);
|
||||
* })
|
||||
*
|
||||
*
|
||||
* fcm.unsubscribeFromTopic('marketing');
|
||||
*
|
||||
*
|
||||
* ```
|
||||
* @interfaces
|
||||
* NotificationData
|
||||
@@ -60,14 +60,14 @@ export interface NotificationData {
|
||||
plugin: 'cordova-plugin-fcm',
|
||||
pluginRef: 'FCMPlugin',
|
||||
repo: 'https://github.com/fechanique/cordova-plugin-fcm',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class FCM extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Get's device's current registration id
|
||||
*
|
||||
*
|
||||
* @returns {Promise<string>} Returns a Promise that resolves with the registration id token
|
||||
*/
|
||||
@Cordova()
|
||||
@@ -75,7 +75,7 @@ export class FCM extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Event firing on the token refresh
|
||||
*
|
||||
*
|
||||
* @returns {Observable<string>} Returns an Observable that notifies with the change of device's registration id
|
||||
*/
|
||||
@Cordova({
|
||||
@@ -85,9 +85,9 @@ export class FCM extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Subscribes you to a [topic](https://firebase.google.com/docs/notifications/android/console-topics)
|
||||
*
|
||||
*
|
||||
* @param {string} topic Topic to be subscribed to
|
||||
*
|
||||
*
|
||||
* @returns {Promise<any>} Returns a promise resolving in result of subscribing to a topic
|
||||
*/
|
||||
@Cordova()
|
||||
@@ -95,9 +95,9 @@ export class FCM extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Unubscribes you from a [topic](https://firebase.google.com/docs/notifications/android/console-topics)
|
||||
*
|
||||
*
|
||||
* @param {string} topic Topic to be unsubscribed from
|
||||
*
|
||||
*
|
||||
* @returns {Promise<any>} Returns a promise resolving in result of unsubscribing from a topic
|
||||
*/
|
||||
@Cordova()
|
||||
@@ -105,7 +105,7 @@ export class FCM extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Watch for incoming notifications
|
||||
*
|
||||
*
|
||||
* @returns {Observable<any>} returns an object with data from the notification
|
||||
*/
|
||||
@Cordova({
|
||||
|
||||
@@ -23,9 +23,9 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'FileChooser',
|
||||
plugin: 'https://github.com/don/cordova-filechooser.git',
|
||||
plugin: 'cordova-plugin-filechooser',
|
||||
pluginRef: 'fileChooser',
|
||||
repo: 'https://github.com/don/cordova-filechooser',
|
||||
repo: 'https://github.com/ihadeed/cordova-filechooser',
|
||||
platforms: ['Android']
|
||||
})
|
||||
@Injectable()
|
||||
|
||||
85
src/@ionic-native/plugins/firebase-analytics/index.ts
Normal file
85
src/@ionic-native/plugins/firebase-analytics/index.ts
Normal file
@@ -0,0 +1,85 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
|
||||
/**
|
||||
* @beta
|
||||
* @name Firebase Analytics
|
||||
* @description
|
||||
* Cordova plugin for Firebase Analytics
|
||||
*
|
||||
* Go yo firebase console and export google-services.json and GoogleService-Info.plist. Put those files into the root of your cordova app folder.
|
||||
*
|
||||
* NOTE: on iOS in order to collect demographic, age, gender data etc. you should additionally include AdSupport.framework into your project.
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { FirebaseAnalytics } from '@ionic-native/firebase-analytics';
|
||||
*
|
||||
*
|
||||
* constructor(private firebaseAnalytics: FirebaseAnalytics) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.firebaseAnalytics.logEvent('page_view', {page: "dashboard"})
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'FirebaseAnalytics',
|
||||
plugin: 'cordova-plugin-firebase-analytics',
|
||||
pluginRef: 'cordova.plugins.firebase.analytics',
|
||||
repo: 'https://github.com/chemerisuk/cordova-plugin-firebase-analytics',
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@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
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
logEvent(name: string, params: any): Promise<any> { return; }
|
||||
|
||||
/**
|
||||
* Sets the user ID property.
|
||||
* This feature must be used in accordance with Google's Privacy Policy.
|
||||
* @param id {string} THe user ID
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
setUserId(id: string): Promise<any> { 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
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
setUserProperty(name: string, value: string): Promise<any> { return; }
|
||||
|
||||
/**
|
||||
* Sets whether analytics collection is enabled for this app on this device.
|
||||
* @param enabled {boolean}
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
setEnabled(enabled: boolean): Promise<any> { 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
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
setCurrentScreen(name: string): Promise<any> { return; }
|
||||
|
||||
}
|
||||
90
src/@ionic-native/plugins/firebase-dynamic-links/index.ts
Normal file
90
src/@ionic-native/plugins/firebase-dynamic-links/index.ts
Normal file
@@ -0,0 +1,90 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
|
||||
export interface DynamicLinksOptions {
|
||||
title: string;
|
||||
message: string;
|
||||
deepLink?: string;
|
||||
callToActionText?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @beta
|
||||
* @name Firebase Dynamic Links
|
||||
* @description
|
||||
* Cordova plugin for Firebase Invites and Firebase Dynamic Links
|
||||
*
|
||||
* Variables APP_DOMAIN and APP_PATH specify web URL where your app will start an activity to handle the link. They also used to setup support for App Indexing.
|
||||
*
|
||||
* Go to firebase console and export google-services.json and GoogleService-Info.plist. Put those files into the root of your cordova app folder.
|
||||
*
|
||||
* Preferences:
|
||||
*
|
||||
* Preferences GoogleIOSClientId and GoogleAndroidClientId are used to setup dynamic links when you have an app for several platforms.
|
||||
* You can find values at your GoogleService-Info.plist (key ANDROID_CLIENT_ID) and google-services.json (key client[0].oauth_client[0].client_id).
|
||||
*
|
||||
*config.xml:
|
||||
* ```xml
|
||||
* <platform name="android">
|
||||
* <preference name="GoogleIOSClientId" value="..." />
|
||||
* </platform>
|
||||
* <platform name="ios">
|
||||
* <preference name="GoogleAndroidClientId" value="..." />
|
||||
* </platform>
|
||||
* ```
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { FirebaseDynamicLinks } from '@ionic-native/firebase-dynamic-links';
|
||||
*
|
||||
*
|
||||
* constructor(private firebaseDynamicLinks: FirebaseDynamicLinks) { }
|
||||
*
|
||||
* ...
|
||||
* // The deepLink and callToActionText properties are optional
|
||||
* const options: DynamicLinksOptions = {
|
||||
* title: 'My Title';
|
||||
* message: 'My message';
|
||||
* deepLink: 'http://example.com/';
|
||||
* callToActionText: 'Message on button';
|
||||
* }
|
||||
*
|
||||
* this.firebaseDynamicLinks.sendInvitation(options)
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* this.firebaseDynamicLinks.onDynamicLink()
|
||||
* .then((res: any) => console.log(res)) //Handle the logic here after opening the app with the Dynamic link
|
||||
* .catch((error:any) => console.log(error));
|
||||
* ```
|
||||
*
|
||||
* @interfaces
|
||||
* DynamicLinksOptions
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'FirebaseDynamicLinks',
|
||||
plugin: ' cordova-plugin-firebase-dynamiclinks',
|
||||
pluginRef: 'cordova.plugins.firebase.dynamiclinks',
|
||||
repo: 'https://github.com/chemerisuk/cordova-plugin-firebase-dynamiclinks',
|
||||
install: 'ionic cordova plugin add cordova-plugin-firebase-dynamiclinks --save --variable APP_DOMAIN="example.com" --variable APP_PATH="/"',
|
||||
installVariables: ['APP_DOMAIN', 'APP_PATH'],
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class FirebaseDynamicLinks extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Registers callback that is triggered on each dynamic link click.
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
onDynamicLink(): Promise<any> { return; }
|
||||
|
||||
/**
|
||||
* Display invitation dialog.
|
||||
* @param options {DynamicLinksOptions} Some param to configure something
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
sendInvitation(options: DynamicLinksOptions): Promise<any> { return; }
|
||||
|
||||
}
|
||||
@@ -212,7 +212,7 @@ export class FlurryAnalyticsObject {
|
||||
plugin: 'cordova-plugin-flurryanalytics',
|
||||
pluginRef: 'FlurryAnalytics',
|
||||
repo: 'https://github.com/blakgeek/cordova-plugin-flurryanalytics',
|
||||
platforms: ['Android', 'iOS', 'Browser']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class FlurryAnalytics extends IonicNativePlugin {
|
||||
|
||||
@@ -72,7 +72,7 @@ declare const window: any;
|
||||
* ### Troubleshooting ###
|
||||
* #### I get compile errors when I run `ionic build ios` or `ionic run ios`. ####
|
||||
* This could be caused by the Cordova project directory in `/platforms/ios` not being named correctly.
|
||||
* Try running `ionic platform rm <platform>` then run `ionic platform add <platform>` to recreate the
|
||||
* Try running `ionic cordova platform rm <platform>` then run `ionic cordova platform add <platform>` to recreate the
|
||||
* platform directories.
|
||||
*/
|
||||
@Plugin({
|
||||
@@ -80,7 +80,7 @@ declare const window: any;
|
||||
plugin: 'cordova-plugin-geofence',
|
||||
pluginRef: 'geofence',
|
||||
repo: 'https://github.com/cowbell/cordova-plugin-geofence',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Windows Phone']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class Geofence extends IonicNativePlugin {
|
||||
|
||||
@@ -153,7 +153,7 @@ export interface GeolocationOptions {
|
||||
plugin: 'cordova-plugin-geolocation',
|
||||
pluginRef: 'navigator.geolocation',
|
||||
repo: 'https://github.com/apache/cordova-plugin-geolocation',
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Firefox OS', 'iOS', 'Tizen', 'Windows', 'Windows Phone']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Geolocation extends IonicNativePlugin {
|
||||
|
||||
@@ -26,7 +26,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-globalization',
|
||||
pluginRef: 'navigator.globalization',
|
||||
repo: 'https://github.com/apache/cordova-plugin-globalization',
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Firefox OS', 'iOS', 'Windows Phone 8', 'Widnows', 'Browser']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Globalization extends IonicNativePlugin {
|
||||
|
||||
@@ -34,7 +34,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-google-analytics',
|
||||
pluginRef: 'ga',
|
||||
repo: 'https://github.com/danwilson/google-analytics-plugin',
|
||||
platforms: ['Android', 'iOS', 'Browser']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class GoogleAnalytics extends IonicNativePlugin {
|
||||
|
||||
@@ -25,7 +25,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
repo: 'https://github.com/EddyVerbruggen/cordova-plugin-googleplus',
|
||||
install: 'ionic cordova plugin add cordova-plugin-googleplus --variable REVERSED_CLIENT_ID=myreversedclientid',
|
||||
installVariables: ['REVERSED_CLIENT_ID'],
|
||||
platforms: ['Android', 'iOS', 'Browser']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class GooglePlus extends IonicNativePlugin {
|
||||
|
||||
@@ -49,10 +49,10 @@ export interface HttpdOptions {
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Httpd',
|
||||
plugin: 'https://github.com/floatinghotpot/cordova-httpd.git',
|
||||
plugin: 'cordova-plugin-httpd',
|
||||
pluginRef: 'cordova.plugins.CorHttpd',
|
||||
repo: 'https://github.com/floatinghotpot/cordova-httpd',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS', 'macOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class Httpd extends IonicNativePlugin {
|
||||
|
||||
@@ -16,7 +16,7 @@ export interface Beacon {
|
||||
major: number;
|
||||
|
||||
/**
|
||||
* The beacon's major identifier number.
|
||||
* The beacon's minor identifier number.
|
||||
*/
|
||||
minor: number;
|
||||
|
||||
@@ -636,7 +636,7 @@ export class IBeacon extends IonicNativePlugin {
|
||||
* native layer acknowledged the dispatch of the advertising request.
|
||||
*/
|
||||
@Cordova({ otherPromise: true })
|
||||
startAdvertising(region: Region, measuredPower: number): Promise<void> { return; }
|
||||
startAdvertising(region: Region, measuredPower?: number): Promise<void> { return; }
|
||||
|
||||
/**
|
||||
* Stop advertising as a beacon.
|
||||
|
||||
@@ -43,7 +43,7 @@ export interface ImageResizerOptions {
|
||||
* Cordova Plugin For Image Resize
|
||||
*
|
||||
* Requires plugin `info.protonet.imageresizer` - use the Ionic CLI and type in the following command:
|
||||
* `ionic plugin add https://github.com/protonet/cordova-plugin-image-resizer.git`
|
||||
* `ionic cordova plugin add https://github.com/protonet/cordova-plugin-image-resizer.git`
|
||||
*
|
||||
* For more info, please see the https://github.com/protonet/cordova-plugin-image-resizer
|
||||
*
|
||||
|
||||
@@ -181,7 +181,7 @@ export class InAppBrowserObject {
|
||||
plugin: 'cordova-plugin-inappbrowser',
|
||||
pluginRef: 'cordova.InAppBrowser',
|
||||
repo: 'https://github.com/apache/cordova-plugin-inappbrowser',
|
||||
platforms: ['Amazon', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'macOS', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
platforms: ['AmazonFire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'macOS', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class InAppBrowser extends IonicNativePlugin {
|
||||
|
||||
425
src/@ionic-native/plugins/in-app-purchase-2/index.ts
Normal file
425
src/@ionic-native/plugins/in-app-purchase-2/index.ts
Normal file
@@ -0,0 +1,425 @@
|
||||
import { Plugin, IonicNativePlugin, Cordova, CordovaProperty } from '@ionic-native/core';
|
||||
import { Injectable } from '@angular/core';
|
||||
|
||||
/**
|
||||
* @name In App Purchase 2
|
||||
* @description
|
||||
* In-App Purchase for Cordova on iOS, Android and Windows
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { InAppPurchase2 } from '@ionic-native/in-app-purchase-2';
|
||||
*
|
||||
* constructor(private store: InAppPurchase2) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* * @advanced
|
||||
*
|
||||
* ```typescript
|
||||
* // After Platform Ready
|
||||
* this.store.verbosity = this.store.DEBUG;
|
||||
* this.store.register({
|
||||
* id: productId,
|
||||
* alias: productId,
|
||||
* type: this.store.NON_RENEWING_SUBSCRIPTION
|
||||
* });
|
||||
*
|
||||
* // Register Event Handlers for the specific product
|
||||
* this.store.when(productId).registered( (product: IAPProduct) => {
|
||||
* console.log('Registered: ' + JSON.stringify(product));
|
||||
* });
|
||||
*
|
||||
* // Updated
|
||||
* this.store.when(productId).updated( (product: IAPProduct) => {
|
||||
* console.log('Loaded' + JSON.stringify(product));
|
||||
* });
|
||||
*
|
||||
* // Issue with buying
|
||||
* this.store.when(productId).cancelled( (product) => {
|
||||
* alert('Purchase was Cancelled');
|
||||
* });
|
||||
*
|
||||
* // Track All Store Errors
|
||||
* this.store.error( (err) => {
|
||||
* alert('Store Error ' + JSON.stringify(err));
|
||||
* });
|
||||
*
|
||||
* this.store.ready().then((status) => {
|
||||
* console.log(JSON.stringify(this.store.get(productId)));
|
||||
* console.log('Store is Ready: ' + JSON.stringify(status));
|
||||
* console.log('Products: ' + JSON.stringify(this.store.products));
|
||||
* });
|
||||
*
|
||||
*
|
||||
* // Errors
|
||||
* this.store.when(productId).error( (error) => {
|
||||
* this.loader.dismiss();
|
||||
* alert('An Error Occured' + JSON.stringify(error));
|
||||
* });
|
||||
* // Refresh Starts Handlers
|
||||
* console.log('Refresh Store');
|
||||
* this.store.refresh();
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* // To Purchase
|
||||
* this.store.order(productId);
|
||||
*
|
||||
* ```
|
||||
*
|
||||
*/
|
||||
|
||||
export interface IAPProductOptions {
|
||||
id: string;
|
||||
alias: string;
|
||||
type: string;
|
||||
}
|
||||
|
||||
export type IAPProducts = Array<IAPProduct> & {
|
||||
/**
|
||||
* Get product by ID
|
||||
*/
|
||||
byId: { [id: string]: IAPProduct; };
|
||||
/**
|
||||
* Get product by alias
|
||||
*/
|
||||
byAlias: { [alias: string]: IAPProduct; };
|
||||
/**
|
||||
* Remove all products (for testing only).
|
||||
*/
|
||||
reset: () => {};
|
||||
};
|
||||
|
||||
export type IAPQueryCallback = ((product: IAPProduct) => void) | ((error: IAPError) => void);
|
||||
|
||||
export interface IAPProduct {
|
||||
|
||||
id: string;
|
||||
|
||||
alias: string;
|
||||
|
||||
type: string;
|
||||
|
||||
state: string;
|
||||
|
||||
title: string;
|
||||
|
||||
description: string;
|
||||
|
||||
priceMicros: string;
|
||||
|
||||
price: string;
|
||||
|
||||
currency: string;
|
||||
|
||||
loaded: boolean;
|
||||
|
||||
valid: boolean;
|
||||
|
||||
canPurchase: boolean;
|
||||
|
||||
owned: boolean;
|
||||
|
||||
downloading: boolean;
|
||||
|
||||
downloaded: boolean;
|
||||
|
||||
additionalData: any;
|
||||
|
||||
transaction: any;
|
||||
|
||||
finish(): void;
|
||||
|
||||
verify(): any;
|
||||
|
||||
set(key: string, value: any): void;
|
||||
|
||||
stateChanged(): void;
|
||||
|
||||
on(event: string, callback: Function): void;
|
||||
|
||||
once(event: string, callback: Function): void;
|
||||
|
||||
off(callback: Function): void;
|
||||
|
||||
trigger(action: string, args: any): void;
|
||||
|
||||
}
|
||||
|
||||
export interface IAPProductEvents {
|
||||
loaded: (callback: IAPQueryCallback) => void;
|
||||
updated: (callback: IAPQueryCallback) => void;
|
||||
error: (callback: IAPQueryCallback) => void;
|
||||
approved: (callback: IAPQueryCallback) => void;
|
||||
owned: (callback: IAPQueryCallback) => void;
|
||||
cancelled: (callback: IAPQueryCallback) => void;
|
||||
refunded: (callback: IAPQueryCallback) => void;
|
||||
registered: (callback: IAPQueryCallback) => void;
|
||||
valid: (callback: IAPQueryCallback) => void;
|
||||
invalid: (callback: IAPQueryCallback) => void;
|
||||
requested: (callback: IAPQueryCallback) => void;
|
||||
initiated: (callback: IAPQueryCallback) => void;
|
||||
finished: (callback: IAPQueryCallback) => void;
|
||||
verified: (callback: IAPQueryCallback) => void;
|
||||
unverified: (callback: IAPQueryCallback) => void;
|
||||
expired: (callback: IAPQueryCallback) => void;
|
||||
downloading: (product: IAPProduct, progress: any, time_remaining: any) => void;
|
||||
downloaded: (callback: IAPQueryCallback) => void;
|
||||
}
|
||||
|
||||
export class IAPError {
|
||||
code: number;
|
||||
message: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name In App Purchase 2
|
||||
* @description
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* import { InAppPurchase2 } from '@ionic-native/in-app-purchase-2';
|
||||
*
|
||||
*
|
||||
* constructor(private inAppPurchase2: InAppPurchase2) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'InAppPurchase2',
|
||||
plugin: 'cc.fovea.cordova.purchase',
|
||||
pluginRef: 'store',
|
||||
repo: 'https://github.com/j3k0/cordova-plugin-purchase',
|
||||
platforms: ['iOS', 'Android', 'Windows'],
|
||||
install: 'ionic cordova plugin add cc.fovea.cordova.purchase --variable BILLING_KEY="<ANDROID_BILLING_KEY>"'
|
||||
})
|
||||
@Injectable()
|
||||
export class InAppPurchase2 extends IonicNativePlugin {
|
||||
|
||||
@CordovaProperty
|
||||
QUIET: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERROR: number;
|
||||
|
||||
@CordovaProperty
|
||||
WARNING: number;
|
||||
|
||||
@CordovaProperty
|
||||
INFO: number;
|
||||
|
||||
@CordovaProperty
|
||||
DEBUG: number;
|
||||
|
||||
/**
|
||||
* Debug level. Use QUIET, ERROR, WARNING, INFO or DEBUG constants
|
||||
*/
|
||||
@CordovaProperty
|
||||
verbosity: number;
|
||||
|
||||
/**
|
||||
* Set to true to invoke the platform purchase sandbox. (Windows only)
|
||||
*/
|
||||
@CordovaProperty
|
||||
sandbox: boolean;
|
||||
|
||||
@CordovaProperty
|
||||
FREE_SUBSCRIPTION: string;
|
||||
|
||||
@CordovaProperty
|
||||
PAID_SUBSCRIPTION: string;
|
||||
|
||||
@CordovaProperty
|
||||
NON_RENEWING_SUBSCRIPTION: string;
|
||||
|
||||
@CordovaProperty
|
||||
CONSUMABLE: string;
|
||||
|
||||
@CordovaProperty
|
||||
NON_CONSUMABLE: string;
|
||||
|
||||
|
||||
@CordovaProperty
|
||||
ERR_SETUP: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_LOAD: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_PURCHASE: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_LOAD_RECEIPTS: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_CLIENT_INVALID: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_PAYMENT_CANCELLED: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_PAYMENT_INVALID: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_PAYMENT_NOT_ALLOWED: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_UNKNOWN: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_REFRESH_RECEIPTS: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_INVALID_PRODUCT_ID: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_FINISH: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_COMMUNICATION: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_SUBSCRIPTIONS_NOT_AVAILABLE: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_MISSING_TOKEN: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_VERIFICATION_FAILED: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_BAD_RESPONSE: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_REFRESH: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_PAYMENT_EXPIRED: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_DOWNLOAD: number;
|
||||
|
||||
@CordovaProperty
|
||||
ERR_SUBSCRIPTION_UPDATE_NOT_AVAILABLE: number;
|
||||
|
||||
|
||||
@CordovaProperty
|
||||
REGISTERED: string;
|
||||
|
||||
@CordovaProperty
|
||||
INVALID: string;
|
||||
|
||||
@CordovaProperty
|
||||
VALID: string;
|
||||
|
||||
@CordovaProperty
|
||||
REQUESTED: string;
|
||||
|
||||
@CordovaProperty
|
||||
INITIATED: string;
|
||||
|
||||
@CordovaProperty
|
||||
APPROVED: string;
|
||||
|
||||
@CordovaProperty
|
||||
FINISHED: string;
|
||||
|
||||
@CordovaProperty
|
||||
OWNED: string;
|
||||
|
||||
@CordovaProperty
|
||||
DOWNLOADING: string;
|
||||
|
||||
@CordovaProperty
|
||||
DOWNLOADED: string;
|
||||
|
||||
|
||||
@CordovaProperty
|
||||
INVALID_PAYLOAD: number;
|
||||
|
||||
@CordovaProperty
|
||||
CONNECTION_FAILED: number;
|
||||
|
||||
@CordovaProperty
|
||||
PURCHASE_EXPIRED: number;
|
||||
|
||||
@CordovaProperty
|
||||
products: IAPProducts;
|
||||
|
||||
@CordovaProperty
|
||||
validator: string | ((product: string | IAPProduct, callback: Function) => void);
|
||||
|
||||
@CordovaProperty
|
||||
log: {
|
||||
error: (message: string) => void;
|
||||
warn: (message: string) => void;
|
||||
info: (message: string) => void;
|
||||
debug: (message: string) => void;
|
||||
};
|
||||
|
||||
/**
|
||||
* Get product by id or alias
|
||||
* @param idOrAlias
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
get(idOrAlias: string): IAPProduct { return; }
|
||||
|
||||
/**
|
||||
* Register error handler
|
||||
* @param onError {Function} function to call on error
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
error(onError: Function): void {}
|
||||
|
||||
/**
|
||||
* Add or register a product
|
||||
* @param product {IAPProductOptions}
|
||||
*/
|
||||
@Cordova({ sync: true})
|
||||
register(product: IAPProductOptions): void {}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param query
|
||||
* @param event
|
||||
* @param callback
|
||||
* @return {IAPProductEvents}
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
when(query: string | IAPProduct, event?: string, callback?: IAPQueryCallback): IAPProductEvents { return; }
|
||||
|
||||
/**
|
||||
* Identical to `when`, but the callback will be called only once. After being called, the callback will be unregistered.
|
||||
* @param query {string | IAPProduct}
|
||||
* @param [event] {event}
|
||||
* @param [callback] {IAPQueryCallback}
|
||||
* @return {IAPProductEvents}
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
once(query: string | IAPProduct, event?: string, callback?: IAPQueryCallback): IAPProductEvents { return; }
|
||||
|
||||
/**
|
||||
* Unregister a callback. Works for callbacks registered with ready, when, once and error.
|
||||
* @param callback {Function}
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
off(callback: Function): void {}
|
||||
|
||||
@Cordova({ sync: true })
|
||||
order(product: string | IAPProduct, additionalData?: any): { then: Function; error: Function; } { return; }
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {Promise<any>} returns a promise that resolves when the store is ready
|
||||
*/
|
||||
@Cordova()
|
||||
ready(): Promise<void> { return; }
|
||||
|
||||
@Cordova({ sync: true })
|
||||
refresh(): void {}
|
||||
|
||||
}
|
||||
@@ -57,8 +57,8 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
pluginName: 'InAppPurchase',
|
||||
plugin: 'cordova-plugin-inapppurchase',
|
||||
pluginRef: 'inAppPurchase',
|
||||
platforms: ['Android', 'iOS'],
|
||||
repo: 'https://github.com/AlexDisler/cordova-plugin-inapppurchase'
|
||||
repo: 'https://github.com/AlexDisler/cordova-plugin-inapppurchase',
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class InAppPurchase extends IonicNativePlugin {
|
||||
|
||||
@@ -31,10 +31,10 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Insomnia',
|
||||
plugin: 'https://github.com/EddyVerbruggen/Insomnia-PhoneGap-Plugin.git',
|
||||
plugin: 'cordova-plugin-insomnia',
|
||||
pluginRef: 'plugins.insomnia',
|
||||
repo: 'https://github.com/EddyVerbruggen/Insomnia-PhoneGap-Plugin',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
platforms: ['Android', 'Browser', 'Firefox OS', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class Insomnia extends IonicNativePlugin {
|
||||
|
||||
@@ -53,7 +53,7 @@ export interface IntelSecurityDataOptions {
|
||||
* .catch((error: any) => console.log(error));
|
||||
*
|
||||
* this.intelSecurity.storage.read({id: storageID })
|
||||
* .then((instanceID: number) => this.intelSec.data.getData(instanceID))
|
||||
* .then((instanceID: number) => this.intelSecurity.data.getData(instanceID))
|
||||
* .then((data: string) => console.log(data)) // Resolves to 'Sample Data'
|
||||
* .catch((error: any) => console.log(error));
|
||||
*
|
||||
@@ -72,7 +72,7 @@ export interface IntelSecurityDataOptions {
|
||||
plugin: 'com-intel-security-cordova-plugin',
|
||||
pluginRef: 'intel.security',
|
||||
repo: 'https://github.com/AppSecurityApi/com-intel-security-cordova-plugin',
|
||||
platforms: ['Android', 'iOS', 'Windows']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class IntelSecurity extends IonicNativePlugin {
|
||||
|
||||
@@ -57,7 +57,7 @@ export class Keyboard extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Prevents the native UIScrollView from moving when an input is focused.
|
||||
* @param disable
|
||||
* @param disable {boolean}
|
||||
*/
|
||||
@Cordova({
|
||||
sync: true,
|
||||
|
||||
@@ -92,7 +92,7 @@ export interface LaunchNavigatorOptions {
|
||||
plugin: 'uk.co.workingedge.phonegap.plugin.launchnavigator',
|
||||
pluginRef: 'launchnavigator',
|
||||
repo: 'https://github.com/dpa99c/phonegap-launch-navigator',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class LaunchNavigator extends IonicNativePlugin {
|
||||
|
||||
@@ -89,6 +89,11 @@ export interface ILocalNotification {
|
||||
* Default: FFFFFF
|
||||
*/
|
||||
led?: string;
|
||||
|
||||
/**
|
||||
* Notification priority.
|
||||
*/
|
||||
priority?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -146,7 +146,8 @@ export interface ConfigurationData {
|
||||
pluginName: 'MediaCapture',
|
||||
plugin: 'cordova-plugin-media-capture',
|
||||
pluginRef: 'navigator.device.capture',
|
||||
repo: 'https://github.com/apache/cordova-plugin-media-capture'
|
||||
repo: 'https://github.com/apache/cordova-plugin-media-capture',
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class MediaCapture extends IonicNativePlugin {
|
||||
|
||||
@@ -120,6 +120,8 @@ export type MediaErrorCallback = (error: MediaError) => void;
|
||||
/**
|
||||
* @name Media
|
||||
* @description
|
||||
* This plugin provides the ability to record and play back audio files on a device.
|
||||
*
|
||||
* Some hints if you are using iOS and recording doesn't work:
|
||||
* 1.) Try to use a absolute file path but remove beginning "file://".
|
||||
* Then it looks like: `/var/mobile/Containers/Data/Application/AF438B8B-7724-4FBB-8E69-083463224FC4/tmp/my_file.m4a`
|
||||
@@ -212,7 +214,8 @@ export type MediaErrorCallback = (error: MediaError) => void;
|
||||
pluginName: 'MediaPlugin',
|
||||
repo: 'https://github.com/apache/cordova-plugin-media',
|
||||
plugin: 'cordova-plugin-media',
|
||||
pluginRef: 'Media'
|
||||
pluginRef: 'Media',
|
||||
platforms: ['Android', 'BlackBerry 10', 'Browser', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class MediaPlugin extends IonicNativePlugin {
|
||||
|
||||
@@ -28,7 +28,8 @@ declare var mixpanel: any;
|
||||
pluginName: 'Mixpanel',
|
||||
plugin: 'cordova-plugin-mixpanel',
|
||||
pluginRef: 'mixpanel',
|
||||
repo: 'https://github.com/samzilverberg/cordova-mixpanel-plugin'
|
||||
repo: 'https://github.com/samzilverberg/cordova-mixpanel-plugin',
|
||||
platforms: ['Android', 'Browser', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class Mixpanel extends IonicNativePlugin {
|
||||
|
||||
@@ -22,10 +22,10 @@ import { Injectable } from '@angular/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'MobileAccessibility',
|
||||
plugin: 'https://github.com/phonegap/phonegap-mobile-accessibility.git',
|
||||
pluginRef: 'MobileAccessibilityNotifications',
|
||||
plugin: 'phonegap-plugin-mobile-accessibility',
|
||||
pluginRef: 'MobileAccessibility',
|
||||
repo: 'https://github.com/phonegap/phonegap-mobile-accessibility',
|
||||
platforms: ['Amazon Fire OS', 'Android', 'iOS']
|
||||
platforms: ['Android Fire OS', 'Android', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class MobileAccessibility extends IonicNativePlugin {
|
||||
@@ -179,7 +179,7 @@ export class MobileAccessibility extends IonicNativePlugin {
|
||||
getTextZoomCallback(): Promise<number> { return; }
|
||||
|
||||
/**
|
||||
* @param textZoom {nuber} A percentage value by which text in the WebView should be scaled.
|
||||
* @param textZoom {number} A percentage value by which text in the WebView should be scaled.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setTextZoom(textZoom: number): void { }
|
||||
|
||||
@@ -58,38 +58,53 @@ export interface MusicControlsOptions {
|
||||
*
|
||||
* this.musicControls.subscribe().subscribe(action => {
|
||||
*
|
||||
* switch(action) {
|
||||
* case 'music-controls-next':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-previous':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-pause':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-play':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-destroy':
|
||||
* function events(action) {
|
||||
* const message = JSON.parse(action).message;
|
||||
* switch(message) {
|
||||
* case 'music-controls-next':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-previous':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-pause':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-play':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-destroy':
|
||||
* // Do something
|
||||
* break;
|
||||
*
|
||||
* // External controls (iOS only)
|
||||
* case 'music-controls-toggle-play-pause' :
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-seek-to':
|
||||
* const seekToInSeconds = JSON.parse(action).position;
|
||||
* MusicControls.updateElapsed({
|
||||
* elapsed: seekToInSeconds,
|
||||
* isPlaying: true
|
||||
* });
|
||||
* // Do something
|
||||
* break;
|
||||
*
|
||||
* // Headset events (Android only)
|
||||
* case 'music-controls-media-button' :
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-headset-unplugged':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-headset-plugged':
|
||||
* // Do something
|
||||
* break;
|
||||
* default:
|
||||
* break;
|
||||
* }
|
||||
*
|
||||
* });
|
||||
* // Headset events (Android only)
|
||||
* // All media button events are listed below
|
||||
* case 'music-controls-media-button' :
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-headset-unplugged':
|
||||
* // Do something
|
||||
* break;
|
||||
* case 'music-controls-headset-plugged':
|
||||
* // Do something
|
||||
* break;
|
||||
* default:
|
||||
* break;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
* this.musicControls.listen(); // activates the observable above
|
||||
*
|
||||
@@ -104,7 +119,8 @@ export interface MusicControlsOptions {
|
||||
pluginName: 'MusicControls',
|
||||
plugin: 'cordova-plugin-music-controls',
|
||||
pluginRef: 'MusicControls',
|
||||
repo: 'https://github.com/homerours/cordova-music-controls-plugin'
|
||||
repo: 'https://github.com/homerours/cordova-music-controls-plugin',
|
||||
platforms: ['Android', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class MusicControls extends IonicNativePlugin {
|
||||
@@ -146,6 +162,15 @@ export class MusicControls extends IonicNativePlugin {
|
||||
@Cordova()
|
||||
updateIsPlaying(isPlaying: boolean): void { }
|
||||
|
||||
/**
|
||||
* Update elapsed time, optionally toggle play/pause:
|
||||
* @param args {Object}
|
||||
*/
|
||||
@Cordova({
|
||||
platforms: ['iOS']
|
||||
})
|
||||
updateElapsed(args: { elapsed: string; isPlaying: boolean; }): void { }
|
||||
|
||||
/**
|
||||
* Toggle dismissable:
|
||||
* @param dismissable {boolean}
|
||||
|
||||
@@ -34,7 +34,7 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-nativeaudio',
|
||||
pluginRef: 'plugins.NativeAudio',
|
||||
repo: 'https://github.com/floatinghotpot/cordova-plugin-nativeaudio',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Android', 'Browser', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class NativeAudio extends IonicNativePlugin {
|
||||
|
||||
@@ -202,7 +202,7 @@ export interface NativeKeyboardUpdateMessengerOptions {
|
||||
plugin: 'cordova-plugin-native-keyboard',
|
||||
pluginRef: 'NativeKeyboard',
|
||||
repo: 'https://github.com/EddyVerbruggen/cordova-plugin-native-keyboard',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class NativeKeyboard extends IonicNativePlugin {
|
||||
|
||||
@@ -66,7 +66,7 @@ export interface NativeTransitionOptions {
|
||||
plugin: 'com.telerik.plugins.nativepagetransitions',
|
||||
pluginRef: 'plugins.nativepagetransitions',
|
||||
repo: 'https://github.com/Telerik-Verified-Plugins/NativePageTransitions',
|
||||
platforms: ['iOS', 'Android', 'Windows Phone']
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class NativePageTransitions extends IonicNativePlugin {
|
||||
|
||||
@@ -32,7 +32,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-nativestorage',
|
||||
pluginRef: 'NativeStorage',
|
||||
repo: 'https://github.com/TheCocoaProject/cordova-plugin-nativestorage',
|
||||
platforms: ['Android', 'iOS', 'Windows']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'macOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class NativeStorage extends IonicNativePlugin {
|
||||
|
||||
@@ -53,7 +53,7 @@ declare const navigator: any;
|
||||
plugin: 'cordova-plugin-network-information',
|
||||
pluginRef: 'navigator.connection',
|
||||
repo: 'https://github.com/apache/cordova-plugin-network-information',
|
||||
platforms: ['Amazon Fire OS', 'iOS', 'Android', 'BlackBerry 10', 'Windows Phone 7', 'Windows Phone 8', 'Windows', 'Firefox OS', 'Browser']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Network extends IonicNativePlugin {
|
||||
|
||||
@@ -33,7 +33,7 @@ declare let window: any;
|
||||
plugin: 'phonegap-nfc',
|
||||
pluginRef: 'nfc',
|
||||
repo: 'https://github.com/chariotsolutions/phonegap-nfc',
|
||||
platforms: ['Android', 'Windows ', 'BlackBerry 7', 'BlackBerry 10']
|
||||
platforms: ['Android', 'BlackBerry 10', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
/**
|
||||
*@{ NFC } class methods
|
||||
|
||||
@@ -219,6 +219,41 @@ export interface OSActionButton {
|
||||
*/
|
||||
icon: string;
|
||||
}
|
||||
/**
|
||||
* OSPermissionState
|
||||
*/
|
||||
export interface OSPermissionState {
|
||||
/**
|
||||
* User was prompted.
|
||||
*/
|
||||
hasPrompted: boolean;
|
||||
/**
|
||||
* Permissions Status
|
||||
*/
|
||||
status: any;
|
||||
}
|
||||
/**
|
||||
* OSSubscriptionState
|
||||
*/
|
||||
export interface OSSubscriptionState {
|
||||
subscribed: boolean;
|
||||
userSubscriptionSetting: any;
|
||||
userId: any;
|
||||
pushToken: any;
|
||||
}
|
||||
/**
|
||||
* Subscription and permissions status
|
||||
*/
|
||||
export interface OSPermissionSubscriptionState {
|
||||
/**
|
||||
* Id assigned to the button.
|
||||
*/
|
||||
permissionStatus: OSPermissionState;
|
||||
/**
|
||||
* Text show on the button to the user.
|
||||
*/
|
||||
subscriptionStatus: OSSubscriptionState;
|
||||
}
|
||||
|
||||
/**
|
||||
* **ANDROID** - If a background image was set, this object will be available.
|
||||
@@ -268,6 +303,58 @@ export enum OSActionType {
|
||||
*
|
||||
* Requires Cordova plugin: `onesignal-cordova-plugin`. For more info, please see the [OneSignal Cordova Docs](https://documentation.onesignal.com/docs/phonegap-sdk-installation).
|
||||
*
|
||||
* #### Icons
|
||||
* If you want to use generated icons with command `ionic cordova resources`:
|
||||
*
|
||||
* 1. Add a file to your `hooks` directory inside the `after_prepare` folder called `030_copy_android_notification_icons.js`
|
||||
*
|
||||
* 2. Put the following code in it:
|
||||
*
|
||||
* ```
|
||||
* #!/usr/bin/env node
|
||||
*
|
||||
* var filestocopy = [{
|
||||
* "resources/android/icon/drawable-hdpi-icon.png":
|
||||
* "platforms/android/res/drawable-hdpi/ic_stat_onesignal_default.png"
|
||||
* }, {
|
||||
* "resources/android/icon/drawable-mdpi-icon.png":
|
||||
* "platforms/android/res/drawable-mdpi/ic_stat_onesignal_default.png"
|
||||
* }, {
|
||||
* "resources/android/icon/drawable-xhdpi-icon.png":
|
||||
* "platforms/android/res/drawable-xhdpi/ic_stat_onesignal_default.png"
|
||||
* }, {
|
||||
* "resources/android/icon/drawable-xxhdpi-icon.png":
|
||||
* "platforms/android/res/drawable-xxhdpi/ic_stat_onesignal_default.png"
|
||||
* }, {
|
||||
* "resources/android/icon/drawable-xxxhdpi-icon.png":
|
||||
* "platforms/android/res/drawable-xxxhdpi/ic_stat_onesignal_default.png"
|
||||
* } ];
|
||||
*
|
||||
* var fs = require('fs');
|
||||
* var path = require('path');
|
||||
*
|
||||
* // no need to configure below
|
||||
* var rootdir = process.argv[2];
|
||||
*
|
||||
* filestocopy.forEach(function(obj) {
|
||||
* Object.keys(obj).forEach(function(key) {
|
||||
* var val = obj[key];
|
||||
* var srcfile = path.join(rootdir, key);
|
||||
* var destfile = path.join(rootdir, val);
|
||||
* //console.log("copying "+srcfile+" to "+destfile);
|
||||
* var destdir = path.dirname(destfile);
|
||||
* if (fs.existsSync(srcfile) && fs.existsSync(destdir)) {
|
||||
* fs.createReadStream(srcfile).pipe(
|
||||
* fs.createWriteStream(destfile));
|
||||
* }
|
||||
* });
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
* 3. From the root of your project make the file executable:
|
||||
* `$ chmod +x hooks/after_prepare/030_copy_android_notification_icons.js`
|
||||
*
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { OneSignal } from '@ionic-native/onesignal';
|
||||
@@ -305,7 +392,7 @@ export enum OSActionType {
|
||||
plugin: 'onesignal-cordova-plugin',
|
||||
pluginRef: 'plugins.OneSignal',
|
||||
repo: 'https://github.com/OneSignal/OneSignal-Cordova-SDK',
|
||||
platforms: ['Android', 'iOS', 'Windows', 'FireOS']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class OneSignal extends IonicNativePlugin {
|
||||
@@ -485,6 +572,14 @@ export class OneSignal extends IonicNativePlugin {
|
||||
@Cordova({ sync: true })
|
||||
setSubscription(enable: boolean): void { }
|
||||
|
||||
/**
|
||||
* Get the current notification and permission state. Returns a OSPermissionSubscriptionState type described below.
|
||||
*
|
||||
* @returns {Promise<OSPermissionSubscriptionState>}
|
||||
*/
|
||||
@Cordova()
|
||||
getPermissionSubscriptionState(): Promise<OSPermissionSubscriptionState> { return; }
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {notificationObj} Parameters see POST [documentation](https://documentation.onesignal.com/v2.0/docs/notifications-create-notification)
|
||||
|
||||
@@ -1,14 +1,17 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Cordova, CordovaInstance, Plugin, IonicNativePlugin, checkAvailability } from '@ionic-native/core';
|
||||
|
||||
declare var Notification: any;
|
||||
declare const Notification: any;
|
||||
|
||||
/**
|
||||
* @hidden
|
||||
*/
|
||||
export class PLNObject {
|
||||
|
||||
private _objectInstance: any;
|
||||
|
||||
constructor(title: string, options: LocalNotificationOptions) {
|
||||
if (checkAvailability(PhonegapLocalNotifications.pluginRef, null, PhonegapLocalNotifications.pluginName) === true) {
|
||||
if (checkAvailability(PhonegapLocalNotification.pluginRef, null, PhonegapLocalNotification.pluginName) === true) {
|
||||
this._objectInstance = new Notification(title, options);
|
||||
}
|
||||
}
|
||||
@@ -55,7 +58,7 @@ export interface LocalNotificationOptions {
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* import { PhonegapLocalNotifications } from '@ionic-native/phonegap-local-notifications';
|
||||
* import { PhonegapLocalNotification } from '@ionic-native/phonegap-local-notification';
|
||||
*
|
||||
*
|
||||
* constructor(private localNotification: PhonegapLocalNotifications) { }
|
||||
@@ -87,10 +90,10 @@ export interface LocalNotificationOptions {
|
||||
plugin: 'phonegap-local-notifications',
|
||||
pluginRef: 'Notification',
|
||||
repo: 'https://github.com/phonegap/phonegap-plugin-local-notification',
|
||||
platforms: ['Android', 'iOS', 'Browser']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class PhonegapLocalNotifications extends IonicNativePlugin {
|
||||
export class PhonegapLocalNotification extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* A global object that lets you interact with the Notification API.
|
||||
|
||||
@@ -35,7 +35,7 @@ import { Injectable } from '@angular/core';
|
||||
* complete: () => { console.log('could not get photos'); }
|
||||
* });
|
||||
* })
|
||||
* .catch(err => console.log('permissions weren't granted'));
|
||||
* .catch(err => console.log('permissions weren\'t granted'));
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
|
||||
44
src/@ionic-native/plugins/pin-check/index.ts
Normal file
44
src/@ionic-native/plugins/pin-check/index.ts
Normal file
@@ -0,0 +1,44 @@
|
||||
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
import { Injectable } from '@angular/core';
|
||||
|
||||
/**
|
||||
* @name Pin Check
|
||||
* @description
|
||||
* This plugin is for use with Apache Cordova and allows your application to check whether pin/keyguard or passcode is setup on iOS and Android phones.
|
||||
*
|
||||
* Requires Cordova plugin: cordova-plugin-pincheck. For more info, please see the [PinCheck plugin docs](https://github.com/ohh2ahh/AppAvailability).
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { PinCheck } from '@ionic-native/pin-check';
|
||||
* import { Platform } from 'ionic-angular';
|
||||
*
|
||||
* constructor(private pinCheck: PinCheck, private platform: Platform) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.pinCheck.isPinSetup()
|
||||
* .then(
|
||||
* (success: string) => console.log("pin is setup.");,
|
||||
* (error: string) => console.log("pin not setup.");
|
||||
* );
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'PinCheck',
|
||||
plugin: 'cordova-plugin-pincheck',
|
||||
pluginRef: 'cordova.plugins.PinCheck',
|
||||
repo: 'https://github.com/shangyilim/cordova-plugin-pincheck',
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class PinCheck extends IonicNativePlugin {
|
||||
/**
|
||||
* check whether pin/keyguard or passcode is setup
|
||||
* @returns {Promise<boolean>}
|
||||
*/
|
||||
@Cordova()
|
||||
isPinSetup(): Promise<boolean> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -25,7 +25,7 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-powermanagement-orig',
|
||||
pluginRef: 'powerManagement',
|
||||
repo: 'https://github.com/Viras-/cordova-plugin-powermanagement',
|
||||
platforms: ['Android', 'iOS', 'WindowsPhone', 'Windows']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class PowerManagement extends IonicNativePlugin {
|
||||
|
||||
@@ -70,7 +70,7 @@ export interface PrintOptions {
|
||||
plugin: 'de.appplant.cordova.plugin.printer',
|
||||
pluginRef: 'cordova.plugins.printer',
|
||||
repo: 'https://github.com/katzer/cordova-plugin-printer',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Android', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class Printer extends IonicNativePlugin {
|
||||
|
||||
@@ -266,7 +266,7 @@ export type PushEvent = 'registration' | 'error' | 'notification';
|
||||
repo: 'https://github.com/phonegap/phonegap-plugin-push',
|
||||
install: 'ionic cordova plugin add phonegap-plugin-push --variable SENDER_ID=XXXXXXXXX',
|
||||
installVariables: ['SENDER_ID'],
|
||||
platforms: ['Android', 'iOS', 'Browser', 'Windows ']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class Push extends IonicNativePlugin {
|
||||
|
||||
261
src/@ionic-native/plugins/qqsdk/index.ts
Normal file
261
src/@ionic-native/plugins/qqsdk/index.ts
Normal file
@@ -0,0 +1,261 @@
|
||||
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
import { Injectable } from '@angular/core';
|
||||
|
||||
export interface QQShareOptions {
|
||||
|
||||
/**
|
||||
* The clinet type, QQ or TIM
|
||||
* Default is QQ
|
||||
*/
|
||||
client?: number;
|
||||
|
||||
/**
|
||||
* The Share Sence
|
||||
* Default is QQ
|
||||
*/
|
||||
scene?: number;
|
||||
|
||||
/**
|
||||
* The text for shareText
|
||||
*/
|
||||
text?: string;
|
||||
|
||||
/**
|
||||
* The url for share news or audio
|
||||
*/
|
||||
url?: string;
|
||||
|
||||
/**
|
||||
* The title for share image,news or audio
|
||||
*/
|
||||
title?: string;
|
||||
|
||||
/**
|
||||
* The description for share image,news or audio
|
||||
*/
|
||||
description?: string;
|
||||
|
||||
/**
|
||||
* The image for share image,news or audio
|
||||
* Image supports three types:
|
||||
* 1. Network URL
|
||||
* 2. Base64
|
||||
* 3. Absolute file path
|
||||
*/
|
||||
image?: string;
|
||||
|
||||
/**
|
||||
* The URL for audio
|
||||
*/
|
||||
flashUrl?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name QQSDK
|
||||
* @description
|
||||
* This Plugin is a wrapper around the Tencent QQ SDK for Android and iOS. Provides access to QQ ssoLogin, QQ Sharing, QQZone Sharing etc.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-qqsdk`. For more info, please see the [QQSDK plugin docs](https://github.com/iVanPan/Cordova_QQ).
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { QQSDK, QQShareOptions } from '@ionic-native/qqsdk';
|
||||
*
|
||||
* constructor(private qq: QQSDK) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
*
|
||||
* const options: QQShareOptions = {
|
||||
* client: this.qq.ClientType.QQ,
|
||||
* scene: this.qq.Scene.QQ,
|
||||
* title: 'This is a title for cordova-plugin-qqsdk',
|
||||
* url: 'https://cordova.apache.org/',
|
||||
* image: 'https://cordova.apache.org/static/img/cordova_bot.png',
|
||||
* description: 'This is Cordova QQ share description',
|
||||
* flashUrl: 'http://stream20.qqmusic.qq.com/30577158.mp3',
|
||||
* };
|
||||
*
|
||||
* const clientOptions: QQShareOptions = {
|
||||
* client: this.qq.ClientType.QQ,
|
||||
* };
|
||||
*
|
||||
* const shareTextOptions: QQShareOptions = {
|
||||
* client: this.qq.ClientType.QQ,
|
||||
* text: 'This is Share Text',
|
||||
* scene: this.qq.Scene.QQ,
|
||||
* };
|
||||
*
|
||||
* this.qq.ssoLogin(clientOptions)
|
||||
* .then(result => {
|
||||
* // Success
|
||||
* console.log('token is ' + result.access_token);
|
||||
* console.log('userid is ' + result.userid);
|
||||
* console.log('expires_time is ' + new Date(parseInt(result.expires_time)) + ' TimeStamp is ' + result.expires_time);
|
||||
* })
|
||||
* .catch(error => {
|
||||
* console.log(error); // Failed
|
||||
* });
|
||||
*
|
||||
* this.qq.logout()
|
||||
* .then(() => {
|
||||
* console.log('logout success');
|
||||
* })
|
||||
* .catch(error => {
|
||||
* console.log(error);
|
||||
* });
|
||||
*
|
||||
* this.qq.checkClientInstalled(clientOptions)
|
||||
* .then(() => {
|
||||
* console.log('Installed');
|
||||
* })
|
||||
* .catch(() => {
|
||||
* console.log('Not Installed');
|
||||
* });
|
||||
*
|
||||
* this.qq.shareText(shareTextOptions)
|
||||
* .then(() => {
|
||||
* console.log('shareText success');
|
||||
* })
|
||||
* .catch(error => {
|
||||
* console.log(error);
|
||||
* });
|
||||
*
|
||||
* this.qq.shareImage(options)
|
||||
* .then(() => {
|
||||
* console.log('shareImage success');
|
||||
* })
|
||||
* .catch(error => {
|
||||
* console.log(error);
|
||||
* });
|
||||
* }
|
||||
*
|
||||
* this.qq.shareNews(options)
|
||||
* .then(() => {
|
||||
* console.log('shareNews success');
|
||||
* })
|
||||
* .catch(error => {
|
||||
* console.log(error);
|
||||
* });
|
||||
* }
|
||||
*
|
||||
* this.qq.shareAudio(options)
|
||||
* .then(() => {
|
||||
* console.log('shareAudio success');
|
||||
* })
|
||||
* .catch(error => {
|
||||
* console.log(error);
|
||||
* });
|
||||
*
|
||||
* ```
|
||||
*
|
||||
* @interfaces
|
||||
* QQShareOptions
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'QQSDK',
|
||||
plugin: 'cordova-plugin-qqsdk',
|
||||
pluginRef: 'QQSDK',
|
||||
repo: 'https://github.com/iVanPan/Cordova_QQ',
|
||||
platforms: ['Android', 'iOS'],
|
||||
install: 'ionic cordova plugin add cordova-plugin-qqsdk --variable QQ_APP_ID=YOUR_QQ_APPID',
|
||||
installVariables: ['QQ_APP_ID'],
|
||||
})
|
||||
@Injectable()
|
||||
export class QQSDK extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* QQ Share Scene
|
||||
*/
|
||||
Scene = {
|
||||
QQ: 0,
|
||||
QQZone: 1,
|
||||
Favorite: 2
|
||||
};
|
||||
/**
|
||||
* client type: QQ application or TIM application
|
||||
*/
|
||||
ClientType = {
|
||||
QQ: 0,
|
||||
TIM: 1
|
||||
};
|
||||
|
||||
/**
|
||||
* open QQ or TIM client perform ssoLogin
|
||||
* @param options
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the success return, or rejects with an error.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
ssoLogin(options: QQShareOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
logout(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Detect if the QQ application or TIM application is installed on the device.
|
||||
*
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the success return, or rejects with an error.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
checkClientInstalled(options: QQShareOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* shareText
|
||||
* @param options
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the success return, or rejects with an error.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
shareText(options: QQShareOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* shareImage
|
||||
* @param options
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the success return, or rejects with an error.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
shareImage(options: QQShareOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* shareNews
|
||||
* @param options
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the success return, or rejects with an error.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
shareNews(options: QQShareOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* shareAudio
|
||||
* @param options
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the success return, or rejects with an error.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
shareAudio(options: QQShareOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -59,7 +59,7 @@ export interface SafariViewControllerOptions {
|
||||
plugin: 'cordova-plugin-safariviewcontroller',
|
||||
pluginRef: 'SafariViewController',
|
||||
repo: 'https://github.com/EddyVerbruggen/cordova-plugin-safariviewcontroller',
|
||||
platforms: ['iOS', 'Android']
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class SafariViewController extends IonicNativePlugin {
|
||||
|
||||
@@ -5,8 +5,7 @@ import { Observable } from 'rxjs/Observable';
|
||||
/**
|
||||
* @name Screen Orientation
|
||||
* @description
|
||||
* Cordova plugin to set/lock the screen orientation in a common way for iOS, Android, WP8 and Blackberry 10.
|
||||
* This plugin is based on an early version of Screen Orientation API so the api does not currently match the current spec.
|
||||
* Cordova plugin to set/lock the screen orientation in a common way.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-screen-orientation`. For more info, please see the [Screen Orientation plugin docs](https://github.com/apache/cordova-plugin-screen-orientation).
|
||||
*
|
||||
@@ -27,8 +26,16 @@ import { Observable } from 'rxjs/Observable';
|
||||
*
|
||||
* // allow user rotate
|
||||
* this.screenOrientation.unlock();
|
||||
* ```
|
||||
*
|
||||
* // detect orientation changes
|
||||
* this.screenOrientation.onChange().subscribe(
|
||||
* () => {
|
||||
* console.log("Orientation Changed");
|
||||
* }
|
||||
* );
|
||||
*
|
||||
* ```
|
||||
*
|
||||
* @advanced
|
||||
*
|
||||
* Accepted orientation values:
|
||||
@@ -48,7 +55,7 @@ import { Observable } from 'rxjs/Observable';
|
||||
plugin: 'cordova-plugin-screen-orientation',
|
||||
pluginRef: 'screen.orientation',
|
||||
repo: 'https://github.com/apache/cordova-plugin-screen-orientation',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
platforms: ['Android', 'BlackBerry 10', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class ScreenOrientation extends IonicNativePlugin {
|
||||
|
||||
@@ -23,10 +23,10 @@ declare const navigator: any;
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Screenshot',
|
||||
plugin: 'https://github.com/gitawego/cordova-screenshot.git',
|
||||
plugin: 'com.darktalker.cordova.screenshot',
|
||||
pluginRef: 'navigator.screenshot',
|
||||
repo: 'https://github.com/gitawego/cordova-screenshot',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Android', 'iOS', 'macOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class Screenshot extends IonicNativePlugin {
|
||||
@@ -34,11 +34,11 @@ export class Screenshot extends IonicNativePlugin {
|
||||
/**
|
||||
* Takes screenshot and saves the image
|
||||
*
|
||||
* @param {string} format. Format can take the value of either 'jpg' or 'png'
|
||||
* @param format {string} Format can take the value of either 'jpg' or 'png'
|
||||
* On ios, only 'jpg' format is supported
|
||||
* @param {number} quality. Determines the quality of the screenshot.
|
||||
* @param quality {number} Determines the quality of the screenshot.
|
||||
* Default quality is set to 100.
|
||||
* @param {string} filename. Name of the file as stored on the storage
|
||||
* @param filename {string} Name of the file as stored on the storage
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
save(format?: string, quality?: number, filename?: string): Promise<any> {
|
||||
@@ -63,7 +63,7 @@ export class Screenshot extends IonicNativePlugin {
|
||||
/**
|
||||
* Takes screenshot and returns the image as an URI
|
||||
*
|
||||
* @param {number} quality. Determines the quality of the screenshot.
|
||||
* @param quality {number} Determines the quality of the screenshot.
|
||||
* Default quality is set to 100.
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
|
||||
@@ -73,6 +73,8 @@ export class SecureStorageObject {
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-secure-storage`. For more info, please see the [Cordova Secure Storage docs](https://github.com/Crypho/cordova-plugin-secure-storage).
|
||||
*
|
||||
* The browser platform is supported as a mock only. Key/values are stored unencrypted in localStorage.
|
||||
*
|
||||
* @usage
|
||||
*
|
||||
* ```typescript
|
||||
@@ -115,7 +117,7 @@ export class SecureStorageObject {
|
||||
plugin: 'cordova-plugin-secure-storage',
|
||||
pluginRef: 'cordova.plugins.SecureStorage',
|
||||
repo: 'https://github.com/Crypho/cordova-plugin-secure-storage',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class SecureStorage extends IonicNativePlugin {
|
||||
|
||||
@@ -42,7 +42,7 @@ export interface SerialOpenOptions {
|
||||
plugin: 'cordovarduino',
|
||||
pluginRef: 'serial',
|
||||
repo: 'https://github.com/xseignard/cordovarduino',
|
||||
platforms: ['Android']
|
||||
platforms: ['Android', 'Ubuntu']
|
||||
})
|
||||
@Injectable()
|
||||
export class Serial extends IonicNativePlugin {
|
||||
|
||||
@@ -38,7 +38,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-sim',
|
||||
pluginRef: 'plugins.sim',
|
||||
repo: 'https://github.com/pbakondy/cordova-plugin-sim',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Sim extends IonicNativePlugin {
|
||||
|
||||
@@ -53,7 +53,7 @@ export interface SmsOptionsAndroid {
|
||||
plugin: 'cordova-sms-plugin',
|
||||
pluginRef: 'sms',
|
||||
repo: 'https://github.com/cordova-sms/cordova-sms-plugin',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class SMS extends IonicNativePlugin {
|
||||
|
||||
@@ -6,6 +6,9 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
* @name Social Sharing
|
||||
* @description
|
||||
* Share text, files, images, and links via social networks, sms, and email.
|
||||
*
|
||||
* For Browser usage check out the Web Share API docs: https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin#web-share-api
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { SocialSharing } from '@ionic-native/social-sharing';
|
||||
@@ -34,7 +37,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-x-socialsharing',
|
||||
pluginRef: 'plugins.socialsharing',
|
||||
repo: 'https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin',
|
||||
platforms: ['iOS', 'Android', 'Windows Phone']
|
||||
platforms: ['Android', 'Browser', 'iOS', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class SocialSharing extends IonicNativePlugin {
|
||||
|
||||
@@ -28,10 +28,10 @@ export interface SpinnerDialogIOSOptions {
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'SpinnerDialog',
|
||||
plugin: 'cordova-plugin-spinner-dialog',
|
||||
plugin: 'cordova-plugin-native-spinner',
|
||||
pluginRef: 'window.plugins.spinnerDialog',
|
||||
repo: 'https://github.com/Paldom/SpinnerDialog',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
repo: 'https://github.com/greybax/cordova-plugin-native-spinner',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8', 'Windows']
|
||||
})
|
||||
@Injectable()
|
||||
export class SpinnerDialog extends IonicNativePlugin {
|
||||
|
||||
@@ -23,7 +23,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-splashscreen',
|
||||
pluginRef: 'navigator.splashscreen',
|
||||
repo: 'https://github.com/apache/cordova-plugin-splashscreen',
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'iOS', 'Windows Phone 7 and 8', 'Windows', 'Browser']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class SplashScreen extends IonicNativePlugin {
|
||||
|
||||
@@ -43,7 +43,7 @@ import { Injectable } from '@angular/core';
|
||||
plugin: 'uk.co.workingedge.cordova.plugin.sqliteporter',
|
||||
pluginRef: 'cordova.plugins.sqlitePorter',
|
||||
repo: 'https://github.com/dpa99c/cordova-sqlite-porter',
|
||||
platforms: ['Android', 'iOS', 'Tizen', 'BlackBerry 10']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'iOS', 'Tizen', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class SQLitePorter extends IonicNativePlugin {
|
||||
|
||||
@@ -16,6 +16,10 @@ export interface SQLiteDatabaseConfig {
|
||||
* iOS Database Location. Example: 'Library'
|
||||
*/
|
||||
iosDatabaseLocation?: string;
|
||||
/**
|
||||
* support opening pre-filled databases with https://github.com/litehelpers/cordova-sqlite-ext
|
||||
*/
|
||||
createFromLocation?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -29,7 +29,7 @@ import { Cordova, CordovaProperty, Plugin, IonicNativePlugin } from '@ionic-nati
|
||||
plugin: 'cordova-plugin-statusbar',
|
||||
pluginRef: 'StatusBar',
|
||||
repo: 'https://github.com/apache/cordova-plugin-statusbar',
|
||||
platforms: ['iOS', 'Android', 'Windows Phone 8', 'Windows 8', 'Windows 10']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class StatusBar extends IonicNativePlugin {
|
||||
|
||||
@@ -26,9 +26,9 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Stepcounter',
|
||||
plugin: 'https://github.com/Slidee/cordova-plugin-stepcounter.git',
|
||||
plugin: 'cordova-plugin-stepcounter',
|
||||
pluginRef: 'stepcounter',
|
||||
repo: 'https://github.com/Slidee/cordova-plugin-stepcounter',
|
||||
repo: 'https://github.com/ihadeed/cordova-plugin-stepcounter',
|
||||
platforms: ['Android']
|
||||
})
|
||||
@Injectable()
|
||||
|
||||
@@ -45,7 +45,7 @@ export interface StreamingAudioOptions {
|
||||
plugin: 'cordova-plugin-streaming-media',
|
||||
pluginRef: 'plugins.streamingMedia',
|
||||
repo: 'https://github.com/nchutchind/cordova-plugin-streaming-media',
|
||||
platforms: ['Android', 'iOS']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class StreamingMedia extends IonicNativePlugin {
|
||||
|
||||
@@ -115,7 +115,7 @@ export interface StripeBankAccountParams {
|
||||
plugin: 'cordova-plugin-stripe',
|
||||
pluginRef: 'cordova.plugins.stripe',
|
||||
repo: 'https://github.com/zyramedia/cordova-plugin-stripe',
|
||||
platforms: ['Android', 'iOS', 'Browser']
|
||||
platforms: ['Android', 'Browser', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
export class Stripe extends IonicNativePlugin {
|
||||
|
||||
@@ -51,7 +51,7 @@ export interface ToastOptions {
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.toast.show('I'm a toast', '5000', 'center').subscribe(
|
||||
* this.toast.show(`I'm a toast`, '5000', 'center').subscribe(
|
||||
* toast => {
|
||||
* console.log(toast);
|
||||
* }
|
||||
@@ -65,7 +65,7 @@ export interface ToastOptions {
|
||||
plugin: 'cordova-plugin-x-toast',
|
||||
pluginRef: 'plugins.toast',
|
||||
repo: 'https://github.com/EddyVerbruggen/Toast-PhoneGap-Plugin',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
platforms: ['Android', 'BlackBerry 10', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class Toast extends IonicNativePlugin {
|
||||
|
||||
@@ -177,7 +177,7 @@ export interface FileTransferError {
|
||||
plugin: 'cordova-plugin-file-transfer',
|
||||
pluginRef: 'FileTransfer',
|
||||
repo: 'https://github.com/apache/cordova-plugin-file-transfer',
|
||||
platforms: ['Amazon Fire OS', 'Android', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
platforms: ['Amazon Fire OS', 'Android', 'Browser', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Transfer extends IonicNativePlugin {
|
||||
@@ -247,7 +247,7 @@ export class TransferObject {
|
||||
* Downloads a file from server.
|
||||
*
|
||||
* @param {string} source URL of the server to download the file, as encoded by encodeURI().
|
||||
* @param {stirng} 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 {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).
|
||||
* @returns {Promise<any>} Returns a Promise that resolves to a FileEntry object.
|
||||
|
||||
@@ -34,9 +34,9 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'UserAgent',
|
||||
plugin: 'https://github.com/LouisT/cordova-useragent.git',
|
||||
plugin: 'cordova-plugin-useragent',
|
||||
pluginRef: 'plugins.useragent',
|
||||
repo: 'https://github.com/LouisT/cordova-useragent',
|
||||
repo: 'https://github.com/danielsogl/cordova-plugin-useragent',
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
|
||||
@@ -33,7 +33,7 @@ import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
|
||||
plugin: 'cordova-plugin-vibration',
|
||||
pluginRef: 'navigator',
|
||||
repo: 'https://github.com/apache/cordova-plugin-vibration',
|
||||
platforms: ['Android', 'iOS', 'Windows 8.1 Phone', 'Windows 8.1', 'Windows 10']
|
||||
platforms: ['Android', 'BlackBerry 10', 'Firefox OS', 'iOS', 'Tizen', 'Ubuntu', 'Windows', 'Windows Phone']
|
||||
})
|
||||
@Injectable()
|
||||
export class Vibration extends IonicNativePlugin {
|
||||
|
||||
@@ -131,9 +131,9 @@ export interface VideoCapturePlusOptions {
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'VideoCapturePlus',
|
||||
plugin: 'https://github.com/EddyVerbruggen/VideoCapturePlus-PhoneGap-Plugin.git',
|
||||
plugin: 'cordova-plugin-video-capture-plus',
|
||||
pluginRef: 'window.plugins.videocaptureplus',
|
||||
repo: 'https://github.com/EddyVerbruggen/VideoCapturePlus-PhoneGap-Plugin',
|
||||
repo: 'https://github.com/danielsogl/cordova-plugin-video-capture-plus',
|
||||
platforms: ['Android', 'iOS']
|
||||
})
|
||||
@Injectable()
|
||||
|
||||
@@ -152,7 +152,7 @@ export interface VideoInfo {
|
||||
plugin: 'cordova-plugin-video-editor',
|
||||
pluginRef: 'VideoEditor',
|
||||
repo: 'https://github.com/jbavari/cordova-plugin-video-editor',
|
||||
platforms: ['Android', 'iOS', 'Windows Phone 8']
|
||||
platforms: ['Android', 'iOS', 'Windows', 'Windows Phone 8']
|
||||
})
|
||||
@Injectable()
|
||||
export class VideoEditor extends IonicNativePlugin {
|
||||
|
||||
@@ -28,7 +28,7 @@ import { Observable } from 'rxjs/Observable';
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'WebIntent',
|
||||
plugin: 'https://github.com/darryncampbell/darryncampbell-cordova-plugin-intent.git',
|
||||
plugin: 'com-darryncampbell-cordova-plugin-intent',
|
||||
pluginRef: 'intentShim',
|
||||
repo: 'https://github.com/darryncampbell/darryncampbell-cordova-plugin-intent',
|
||||
platforms: ['Android']
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user