mirror of
https://github.com/danielsogl/awesome-cordova-plugins.git
synced 2026-02-16 00:00:02 +08:00
Compare commits
36 Commits
refactor/r
...
v5.29.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f04f1f479f | ||
|
|
da72795081 | ||
|
|
f3ce3c4930 | ||
|
|
5a77eabf76 | ||
|
|
99e6a5398f | ||
|
|
14ec32b83c | ||
|
|
7b0195bdf4 | ||
|
|
1f48c31a8e | ||
|
|
c62c137723 | ||
|
|
3340e9a694 | ||
|
|
4766ec7a35 | ||
|
|
a37ea81488 | ||
|
|
b5f7f952df | ||
|
|
5d1b5d5fda | ||
|
|
b2e82bea62 | ||
|
|
d2a6b13059 | ||
|
|
ce9db34e24 | ||
|
|
36ae7dcad9 | ||
|
|
adca021f39 | ||
|
|
308e0f3f33 | ||
|
|
8ce71132b0 | ||
|
|
f6bf48d9b2 | ||
|
|
579170a99e | ||
|
|
b0ffb0ec4a | ||
|
|
eec3fec7ff | ||
|
|
a010bb1869 | ||
|
|
26d10ef633 | ||
|
|
d7ccd454fb | ||
|
|
fab667f22c | ||
|
|
ccca644134 | ||
|
|
b4462d5e6c | ||
|
|
5aa5757795 | ||
|
|
85eaf92e58 | ||
|
|
1ffad79320 | ||
|
|
44f86f3ce5 | ||
|
|
25bf7437b5 |
47
CHANGELOG.md
47
CHANGELOG.md
@@ -1,3 +1,50 @@
|
||||
# [5.29.0](https://github.com/ionic-team/ionic-native/compare/v5.28.0...v5.29.0) (2020-10-16)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **diagnostics:** locationAccuracyAuthorization Property missing in build ([#3540](https://github.com/ionic-team/ionic-native/issues/3540)) ([c62c137](https://github.com/ionic-team/ionic-native/commit/c62c13772307c02e7581c15ec6f5c94309927cc6))
|
||||
* **http:** add missing type to serialiser property ([#3532](https://github.com/ionic-team/ionic-native/issues/3532)) ([7b0195b](https://github.com/ionic-team/ionic-native/commit/7b0195bdf441532106df6eb2baf5a9ada1068761))
|
||||
* **in-app-purchase-2:** change in-app-purchase-2 plugin id ([#3553](https://github.com/ionic-team/ionic-native/issues/3553)) ([ce9db34](https://github.com/ionic-team/ionic-native/commit/ce9db34e2439d4fefd1b4071bffb6e5c8daab634))
|
||||
* **music-controls:** update associated cordova plugin ([#3543](https://github.com/ionic-team/ionic-native/issues/3543)) ([4766ec7](https://github.com/ionic-team/ionic-native/commit/4766ec7a35d7e7b0ab31d3db8953f2ef4bdcb6df))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **adjust:** updating to match official typings ([#3523](https://github.com/ionic-team/ionic-native/issues/3523)) ([5a77eab](https://github.com/ionic-team/ionic-native/commit/5a77eabf7644a79369da40eb929b6edfcb83de07))
|
||||
* **all-in-one-sdk:** add plugin for Paytm All-in-One SDK ([#3536](https://github.com/ionic-team/ionic-native/issues/3536)) ([1f48c31](https://github.com/ionic-team/ionic-native/commit/1f48c31a8eaf5079ec8e391b21ea5ce3fa9e1446))
|
||||
* **appsfyler:** add property waitForATTUserAuthorization to AppsflyerOptions ([#3541](https://github.com/ionic-team/ionic-native/issues/3541)) ([3340e9a](https://github.com/ionic-team/ionic-native/commit/3340e9a6949f798d5ec540a78c7ac46a5dc884b2))
|
||||
* **fingerprint-air:** add new functions ([#3530](https://github.com/ionic-team/ionic-native/issues/3530)) ([99e6a53](https://github.com/ionic-team/ionic-native/commit/99e6a5398fb2923991d7236475913eb17e8640c0))
|
||||
* **firebase-x:** add setLanguageCode method for auth ([#3548](https://github.com/ionic-team/ionic-native/issues/3548)) ([5d1b5d5](https://github.com/ionic-team/ionic-native/commit/5d1b5d5fda311003d0ae20e27a06d6bd443554be))
|
||||
* **mobile-messaging:** add new fields to Message type and new method to display chat view ([#3531](https://github.com/ionic-team/ionic-native/issues/3531)) ([14ec32b](https://github.com/ionic-team/ionic-native/commit/14ec32b83c603fc5a079eabf794b7dadce867358))
|
||||
* **purchases:** update to plugin version 1.3.0 ([#3547](https://github.com/ionic-team/ionic-native/issues/3547)) ([b5f7f95](https://github.com/ionic-team/ionic-native/commit/b5f7f952df06828a07f4ab013ce52fddc8ccafdf))
|
||||
* **social-sharing:** Add missing method shareViaWhatsAppToPhone([#3513](https://github.com/ionic-team/ionic-native/issues/3513)) ([f3ce3c4](https://github.com/ionic-team/ionic-native/commit/f3ce3c4930f87f6f2dd023dc28ef924faee05a84))
|
||||
|
||||
|
||||
|
||||
# [5.28.0](https://github.com/ionic-team/ionic-native/compare/v5.27.0...v5.28.0) (2020-08-14)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **ble:** add missing method "isLocationEnabled" ([#3495](https://github.com/ionic-team/ionic-native/issues/3495)) ([b4462d5](https://github.com/ionic-team/ionic-native/commit/b4462d5e6c12f144412001cade1020b5f88b4ae5))
|
||||
* **geolocation:** [#3303](https://github.com/ionic-team/ionic-native/issues/3303) geolocation watchPosition return type ([#3470](https://github.com/ionic-team/ionic-native/issues/3470)) ([579170a](https://github.com/ionic-team/ionic-native/commit/579170a99ea8a53634631b76ffa19b6b635c1d03))
|
||||
* **hyper-track:** update to the modern sdk ([#3508](https://github.com/ionic-team/ionic-native/issues/3508)) ([44f86f3](https://github.com/ionic-team/ionic-native/commit/44f86f3ce5f6912f1cc0b4596e43066571c96b44))
|
||||
* **ibeacon:** undefined locationManager ([#3505](https://github.com/ionic-team/ionic-native/issues/3505)) ([1ffad79](https://github.com/ionic-team/ionic-native/commit/1ffad79320f83038d1fc09e9112c40c86d948416))
|
||||
* **metrix:** change firebase api ([#3473](https://github.com/ionic-team/ionic-native/issues/3473)) ([b0ffb0e](https://github.com/ionic-team/ionic-native/commit/b0ffb0ec4a035097c8a413f31b2382dae1eda4c7))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **clover-go:** add support to pass signature and void payment ([#3485](https://github.com/ionic-team/ionic-native/issues/3485)) ([26d10ef](https://github.com/ionic-team/ionic-native/commit/26d10ef63346782e6d8ed37ca89bd2dd7402aa0a))
|
||||
* **diagnostics:** Add support for new iOS14-LocationAccuracy Permission ([#3490](https://github.com/ionic-team/ionic-native/issues/3490)) ([ccca644](https://github.com/ionic-team/ionic-native/commit/ccca644134999365a729b4a7d554da6a011eb693))
|
||||
* **nfc:** update to phonegap-nfc@1.2.0 ([#3486](https://github.com/ionic-team/ionic-native/issues/3486)) ([d7ccd45](https://github.com/ionic-team/ionic-native/commit/d7ccd454fb757d8d3be57a70bfa7fb3c269e3318))
|
||||
* **onesignal:** add in-app messages methods ([#3481](https://github.com/ionic-team/ionic-native/issues/3481)) ([eec3fec](https://github.com/ionic-team/ionic-native/commit/eec3fec7ff820e96443e6e3f0d7bf96dac359038))
|
||||
* **purchases:** update to plugin version 1.2.0 ([#3482](https://github.com/ionic-team/ionic-native/issues/3482)) ([a010bb1](https://github.com/ionic-team/ionic-native/commit/a010bb186964b8b825ab80f9cf6092794ee2e4b1))
|
||||
* **smartlook:** update to 1.5.2 ([#3498](https://github.com/ionic-team/ionic-native/issues/3498)) ([5aa5757](https://github.com/ionic-team/ionic-native/commit/5aa57577956c13e8fe34d2c658690df7daf86ef4))
|
||||
|
||||
|
||||
|
||||
# [5.27.0](https://github.com/ionic-team/ionic-native/compare/v5.26.0...v5.27.0) (2020-06-23)
|
||||
|
||||
|
||||
|
||||
3460
package-lock.json
generated
3460
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
48
package.json
48
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ionic-native",
|
||||
"version": "5.27.0",
|
||||
"version": "5.29.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)",
|
||||
@@ -23,21 +23,21 @@
|
||||
"prettier": "prettier --write \"**/*.{js,json,css,scss,less,md,ts,html,component.html}\""
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular/common": "^9.1.11",
|
||||
"@angular/compiler": "^9.1.11",
|
||||
"@angular/compiler-cli": "^9.1.11",
|
||||
"@angular/core": "^9.1.11",
|
||||
"@angular/common": "^9.1.12",
|
||||
"@angular/compiler": "^9.1.12",
|
||||
"@angular/compiler-cli": "^9.1.12",
|
||||
"@angular/core": "^9.1.12",
|
||||
"@types/cordova": "0.0.34",
|
||||
"@types/fs-extra": "^9.0.1",
|
||||
"@types/jest": "^26.0.0",
|
||||
"@types/lodash": "^4.14.156",
|
||||
"@types/node": "^12.12.47",
|
||||
"@types/fs-extra": "^9.0.2",
|
||||
"@types/jest": "^26.0.14",
|
||||
"@types/lodash": "^4.14.162",
|
||||
"@types/node": "^12.12.68",
|
||||
"@types/rimraf": "^3.0.0",
|
||||
"@types/webpack": "^4.41.17",
|
||||
"ajv": "^6.12.2",
|
||||
"@types/webpack": "^4.41.22",
|
||||
"ajv": "^6.12.6",
|
||||
"async-promise-queue": "^1.0.5",
|
||||
"conventional-changelog-cli": "^2.0.34",
|
||||
"cz-conventional-changelog": "^3.2.0",
|
||||
"conventional-changelog-cli": "^2.1.0",
|
||||
"cz-conventional-changelog": "^3.3.0",
|
||||
"dgeni": "^0.4.12",
|
||||
"dgeni-packages": "0.16.10",
|
||||
"fs-extra": "^9.0.1",
|
||||
@@ -45,27 +45,27 @@
|
||||
"gulp-rename": "^2.0.0",
|
||||
"gulp-replace": "^1.0.0",
|
||||
"gulp-tslint": "^8.1.4",
|
||||
"husky": "^4.2.5",
|
||||
"jest": "^26.1.0",
|
||||
"lint-staged": "^10.2.11",
|
||||
"lodash": "^4.17.15",
|
||||
"husky": "^4.3.0",
|
||||
"jest": "^26.5.3",
|
||||
"lint-staged": "^10.4.1",
|
||||
"lodash": "^4.17.20",
|
||||
"minimist": "^1.2.5",
|
||||
"natives": "^1.1.6",
|
||||
"prettier": "^2.0.5",
|
||||
"prettier": "^2.1.2",
|
||||
"rimraf": "^3.0.2",
|
||||
"rxjs": "^6.5.5",
|
||||
"ts-jest": "^26.1.1",
|
||||
"rxjs": "^6.6.3",
|
||||
"ts-jest": "^26.4.1",
|
||||
"ts-node": "^8.10.2",
|
||||
"tslint": "^5.20.1",
|
||||
"tslint-config-prettier": "^1.18.0",
|
||||
"tslint-ionic-rules": "0.0.21",
|
||||
"typedoc": "^0.17.7",
|
||||
"typedoc": "^0.18.0",
|
||||
"typescript": "~3.8.3",
|
||||
"typescript-tslint-plugin": "0.5.5",
|
||||
"uglifyjs-webpack-plugin": "^2.2.0",
|
||||
"unminified-webpack-plugin": "^2.0.0",
|
||||
"webpack": "^4.43.0",
|
||||
"winston": "^3.3.2",
|
||||
"webpack": "^4.44.2",
|
||||
"winston": "^3.3.3",
|
||||
"zone.js": "^0.10.3"
|
||||
},
|
||||
"jest": {
|
||||
@@ -94,7 +94,7 @@
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": "^1.13.0"
|
||||
"tslib": "^1.14.1"
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
|
||||
@@ -45,6 +45,8 @@ export class AdjustConfig {
|
||||
private delayStart = 0.0;
|
||||
private logLevel: AdjustLogLevel = null;
|
||||
private defaultTracker: string = null;
|
||||
private urlStrategy: string = null;
|
||||
private externalDeviceId: string = null;
|
||||
private sendInBackground: boolean = null;
|
||||
private shouldLaunchDeeplink: boolean = null;
|
||||
private eventBufferingEnabled: boolean = null;
|
||||
@@ -56,6 +58,8 @@ export class AdjustConfig {
|
||||
private info3: number = null;
|
||||
private info4: number = null;
|
||||
private processName: string = null; // Android only
|
||||
private allowiAdInfoReading: boolean = null; // iOS only
|
||||
private allowIdfaReading: boolean = null; // iOS only
|
||||
|
||||
private attributionCallback: (attribution: AdjustAttribution) => void = null;
|
||||
private eventTrackingSucceededCallback: (event: AdjustEventSuccess) => void = null;
|
||||
@@ -89,6 +93,10 @@ export class AdjustConfig {
|
||||
this.defaultTracker = defaultTracker;
|
||||
}
|
||||
|
||||
setExternalDeviceId(externalDeviceId: string) {
|
||||
this.externalDeviceId = externalDeviceId;
|
||||
}
|
||||
|
||||
setSendInBackground(sendInBackground: boolean) {
|
||||
this.sendInBackground = sendInBackground;
|
||||
}
|
||||
@@ -113,6 +121,14 @@ export class AdjustConfig {
|
||||
this.processName = processName;
|
||||
}
|
||||
|
||||
setAllowiAdInfoReading(allowiAdInfoReading: boolean) {
|
||||
this.allowiAdInfoReading = allowiAdInfoReading;
|
||||
}
|
||||
|
||||
setAllowIdfaReading(allowIdfaReading: boolean) {
|
||||
this.allowIdfaReading = allowIdfaReading;
|
||||
}
|
||||
|
||||
setAttributionCallbackListener(attributionCallback: (attribution: AdjustAttribution) => void) {
|
||||
this.attributionCallback = attributionCallback;
|
||||
}
|
||||
@@ -188,6 +204,77 @@ export class AdjustConfig {
|
||||
}
|
||||
}
|
||||
|
||||
export class AdjustAppStoreSubscription {
|
||||
private price: string;
|
||||
private currency: string;
|
||||
private transactionId: string;
|
||||
private receipt: string;
|
||||
private transactionDate: string;
|
||||
private salesRegion: string;
|
||||
private callbackParameters: string[] = [];
|
||||
private partnerParameters: string[] = [];
|
||||
|
||||
constructor(price: string, currency: string, transactionId: string, receipt: string) {
|
||||
this.price = price;
|
||||
this.currency = currency;
|
||||
this.transactionId = transactionId;
|
||||
this.receipt = receipt;
|
||||
}
|
||||
|
||||
setTransactionDate(transactionDate: string): void {
|
||||
this.transactionDate = transactionDate;
|
||||
}
|
||||
|
||||
setSalesRegion(salesRegion: string): void {
|
||||
this.salesRegion = salesRegion;
|
||||
}
|
||||
|
||||
addCallbackParameter(key: string, value: string): void {
|
||||
this.callbackParameters.push(key);
|
||||
this.callbackParameters.push(value);
|
||||
}
|
||||
|
||||
addPartnerParameter(key: string, value: string): void {
|
||||
this.partnerParameters.push(key);
|
||||
this.partnerParameters.push(value);
|
||||
}
|
||||
}
|
||||
|
||||
export class AdjustPlayStoreSubscription {
|
||||
private price: string;
|
||||
private currency: string;
|
||||
private sku: string;
|
||||
private orderId: string;
|
||||
private signature: string;
|
||||
private purchaseToken: string;
|
||||
private purchaseTime: string;
|
||||
private callbackParameters: string[] = [];
|
||||
private partnerParameters: string[] = [];
|
||||
|
||||
constructor(price: string, currency: string, sku: string, orderId: string, signature: string, purchaseToken: string) {
|
||||
this.price = price;
|
||||
this.currency = currency;
|
||||
this.sku = sku;
|
||||
this.orderId = orderId;
|
||||
this.signature = signature;
|
||||
this.purchaseToken = purchaseToken;
|
||||
}
|
||||
|
||||
setPurchaseTime(purchaseTime: string): void {
|
||||
this.purchaseTime = purchaseTime;
|
||||
}
|
||||
|
||||
addCallbackParameter(key: string, value: string): void {
|
||||
this.callbackParameters.push(key);
|
||||
this.callbackParameters.push(value);
|
||||
}
|
||||
|
||||
addPartnerParameter(key: string, value: string): void {
|
||||
this.partnerParameters.push(key);
|
||||
this.partnerParameters.push(value);
|
||||
}
|
||||
}
|
||||
|
||||
export interface AdjustAttribution {
|
||||
trackerToken: string;
|
||||
trackerName: string;
|
||||
@@ -257,7 +344,7 @@ export enum AdjustLogLevel {
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Adjust, AdjustConfig, AdjustEnvironment } from '@ionic-native/adjust/ngx';
|
||||
* import { Adjust, AdjustConfig, AdjustEnvironment } from '@ionic-native/adjust';
|
||||
*
|
||||
* constructor(private adjust: Adjust) { }
|
||||
*
|
||||
@@ -278,6 +365,8 @@ export enum AdjustLogLevel {
|
||||
* @classes
|
||||
* AdjustEvent
|
||||
* AdjustConfig
|
||||
* AdjustAppStoreSubscription
|
||||
* AdjustPlayStoreSubscription
|
||||
* @enums
|
||||
* AdjustEnvironment
|
||||
* AdjustLogLevel
|
||||
@@ -305,6 +394,20 @@ export class Adjust extends IonicNativePlugin {
|
||||
@Cordova({ sync: true })
|
||||
trackEvent(event: AdjustEvent): void {}
|
||||
|
||||
/**
|
||||
* This method tracks App Store subscription
|
||||
* @param {AdjustAppStoreSubscription} subscription Adjust App Store subscription object to be tracked
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
trackAppStoreSubscription(subscription: AdjustAppStoreSubscription): void {}
|
||||
|
||||
/**
|
||||
* This method tracks Play Store subscription
|
||||
* @param {AdjustPlayStoreSubscription} subscription Adjust Play Store subscription object to be tracked
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
trackPlayStoreSubscription(subscription: AdjustPlayStoreSubscription): void {}
|
||||
|
||||
/**
|
||||
* This method sets offline mode on or off
|
||||
* @param {boolean} enabled set to true for offline mode on
|
||||
@@ -350,6 +453,13 @@ export class Adjust extends IonicNativePlugin {
|
||||
@Cordova({ sync: true })
|
||||
gdprForgetMe(): void {}
|
||||
|
||||
/**
|
||||
* You can now notify Adjust when a user has exercised their right to stop sharing their data with partners for marketing purposes, but has allowed it to be shared for statistics purposes.
|
||||
* Calling the following method will instruct the Adjust SDK to communicate the user's choice to disable data sharing to the Adjust backend
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
disableThirdPartySharing(): void {}
|
||||
|
||||
/**
|
||||
* Function used to get Google AdId
|
||||
* @return {Promise<string>} Returns a promise with google AdId value
|
||||
@@ -452,4 +562,14 @@ export class Adjust extends IonicNativePlugin {
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
sendFirstPackages(): void {}
|
||||
|
||||
/**
|
||||
* Request Adjust SDK to show pop up dialog for asking user's consent to be tracked.
|
||||
* In order to do this, call this function
|
||||
* @return {Promise<int>} Returns a promise with user's consent value
|
||||
*/
|
||||
@Cordova()
|
||||
requestTrackingAuthorizationWithCompletionHandler(): Promise<number> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
78
src/@ionic-native/plugins/all-in-one-sdk/index.ts
Normal file
78
src/@ionic-native/plugins/all-in-one-sdk/index.ts
Normal file
@@ -0,0 +1,78 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, CordovaProperty, CordovaInstance, InstanceProperty, IonicNativePlugin } from '@ionic-native/core';
|
||||
import { Observable } from 'rxjs';
|
||||
|
||||
/**
|
||||
* @name AllInOneSDK
|
||||
* @description
|
||||
* Paytm All-in-One SDK plugin for Cordova/Ionic Applications
|
||||
* Paytm All-in-One SDK provides a swift, secure and seamless payment experience to your users by invoking the Paytm app (if installed on your user’s smartphone) to complete payment for your order.
|
||||
* Paytm All-in-One SDK enables payment acceptance via Paytm wallet, Paytm Payments Bank, saved Debit/Credit cards, Net Banking, BHIM UPI and EMI as available in your customer’s Paytm account. If Paytm app is not installed on a customer's device, the transaction will be processed via web view within the All-in-One SDK.
|
||||
* For more information about Paytm All-in-One SDK, please visit https://developer.paytm.com/docs/all-in-one-sdk/
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { AllInOneSDK } from '@ionic-native/all-in-one-sdk/ngx';
|
||||
*
|
||||
*
|
||||
* constructor(private allInOneSDK: AllInOneSDK) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* For below parameters see [documentation](https://developer.paytm.com/docs/all-in-one-sdk/)
|
||||
* let paymentIntent = { mid : merchantID, orderId: orderId, txnToken: transactionToken, amount: amount, isStaging: isStaging, callbackUrl:callBackURL }
|
||||
*
|
||||
* this.allInOneSDK.startTransaction(paymentIntent)
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* ```
|
||||
*
|
||||
* For iOS:
|
||||
* After adding the plugin, open the iOS project, you can find the same at <projectName>/platforms/ios.
|
||||
* In case merchant don’t have callback URL, Add an entry into Info.plist LSApplicationQueriesSchemes(Array) Item 0 (String)-> paytm
|
||||
* Add a URL Scheme “paytm”+”MID”
|
||||
*
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'AllInOneSDK',
|
||||
plugin: 'cordova-paytm-allinonesdk',
|
||||
pluginRef: 'AllInOneSDK',
|
||||
repo: 'https://github.com/paytm/paytm-allinonesdk-ionic-cordova.git',
|
||||
platforms: ['Android','iOS']
|
||||
})
|
||||
export class AllInOneSDK extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* This function checks if Paytm Application is available on the device.
|
||||
* If Paytm exists then it invokes Paytm Application with the parameters sent and creates an order.
|
||||
* If the Paytm Application is not available the transaction is continued on a webView within All-in-One SDK.
|
||||
* @param options {PaymentIntentModel} These parameters are required and will be used to create an order.
|
||||
* @return {Promise<PaytmResponse>} Returns a promise that resolves when a transaction completes(both failed and successful).
|
||||
*/
|
||||
@Cordova()
|
||||
startTransaction(options : PaymentIntentModel): Promise<PaytmResponse> {
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* The response that will be recieved when any transaction is completed
|
||||
*/
|
||||
export interface PaytmResponse{
|
||||
message : string;
|
||||
response : string; // A stringified response of a hashmap returned from All-in-One SDK
|
||||
}
|
||||
|
||||
/**
|
||||
* For below parameters see [documentation](https://developer.paytm.com/docs/all-in-one-sdk/)
|
||||
*/
|
||||
export interface PaymentIntentModel{
|
||||
mid : string; // Merchant ID
|
||||
orderId : string; // Order ID
|
||||
txnToken : string; // Transaction Token
|
||||
amount : string; // Amount
|
||||
isStaging: boolean; // Environment
|
||||
callbackUrl: string; // Callback URL
|
||||
}
|
||||
66
src/@ionic-native/plugins/app-update/index.ts
Normal file
66
src/@ionic-native/plugins/app-update/index.ts
Normal file
@@ -0,0 +1,66 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core';
|
||||
|
||||
export interface AppUpdateOptions {
|
||||
authType?: string;
|
||||
username?: string;
|
||||
password?: string;
|
||||
skipPromptDialog?: boolean;
|
||||
skipProgressDialog?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name App Update
|
||||
* @description
|
||||
* This plugin does self-update for android
|
||||
*
|
||||
* @usage
|
||||
*
|
||||
* You should first host an XML file on your server with the following data in it:
|
||||
* ```xml
|
||||
* <update>
|
||||
* <version>302048</version>
|
||||
* <name>APK Name</name>
|
||||
* <url>https://your-remote-api.com/YourApp.apk</url>
|
||||
* </update>
|
||||
* ```
|
||||
*
|
||||
* Then use the following code:
|
||||
*
|
||||
* ```typescript
|
||||
* import { AppUpdate } from '@ionic-native/app-update/ngx';
|
||||
*
|
||||
* constructor(private appUpdate: AppUpdate) {
|
||||
*
|
||||
* const updateUrl = 'https://your-remote-api.com/update.xml';
|
||||
* this.appUpdate.checkAppUpdate(updateUrl).then(() => { console.log('Update available') });
|
||||
*
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* The plugin will compare the app version and update it automatically if the API has a newer version to install.
|
||||
* @interfaces
|
||||
* AppUpdateOptions
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'AppUpdate',
|
||||
plugin: 'cordova-plugin-app-update',
|
||||
pluginRef: 'AppUpdate',
|
||||
repo: 'https://github.com/vaenow/cordova-plugin-app-update',
|
||||
platforms: ['Android'],
|
||||
})
|
||||
@Injectable()
|
||||
export class AppUpdate extends IonicNativePlugin {
|
||||
/**
|
||||
* Check and update
|
||||
* @param {string} updateUrl update api url
|
||||
* @param {AppUpdateOptions} [options] options
|
||||
* @return {Promise<any>} Returns a promise that resolves when something happens
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse',
|
||||
})
|
||||
checkAppUpdate(updateUrl: string, options?: AppUpdateOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,6 @@ export interface WatchExistData {
|
||||
|
||||
/**
|
||||
* @name Apple Wallet
|
||||
* @premier apple-payment-pass
|
||||
* @description
|
||||
* A Cordova plugin that enables users from Add Payment Cards to their Apple Wallet.
|
||||
*
|
||||
|
||||
@@ -31,6 +31,11 @@ export interface AppsflyerOptions {
|
||||
* default false Accessing AppsFlyer Attribution / Conversion Data from the SDK (Deferred Deeplinking). Read more: Android, iOS. AppsFlyer plugin will return attribution data in onSuccess callback.
|
||||
*/
|
||||
onInstallConversionDataListener?: boolean;
|
||||
|
||||
/**
|
||||
* time for the sdk to wait before launch - IOS 14 ONLY!
|
||||
*/
|
||||
waitForATTUserAuthorization?: number;
|
||||
}
|
||||
|
||||
export interface AppsflyerEvent {
|
||||
|
||||
@@ -9,6 +9,8 @@ import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core';
|
||||
*
|
||||
* Requires Cordova plugin: cordova-plugin-badge. For more info, please see the [Badge plugin docs](https://github.com/katzer/cordova-plugin-badge).
|
||||
*
|
||||
* Android Note: Badges have historically only been a feature implemented by third party launchers and not visible unless one of those launchers was being used (E.G. Samsung or Nova Launcher) and if enabled by the user. As of Android 8 (Oreo), [notification badges](https://developer.android.com/training/notify-user/badges) were introduced officially to reflect unread notifications. This plugin is unlikely to work as expected on devices running Android 8 or newer. Please see the [local notifications plugin docs](https://github.com/katzer/cordova-plugin-local-notifications) for more information on badge use with notifications.
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Badge } from '@ionic-native/badge/ngx';
|
||||
|
||||
@@ -455,9 +455,12 @@ export class BLE extends IonicNativePlugin {
|
||||
* @param {string} serviceUUID UUID of the BLE service
|
||||
* @param {string} characteristicUUID UUID of the BLE characteristic
|
||||
* @return {Observable<any>} Returns an Observable that notifies of characteristic changes.
|
||||
* The observer emit an array with data at index 0 and sequence order at index 1.
|
||||
* The sequence order is always undefined on iOS. On android it leave the client to check the sequence order and reorder if needed
|
||||
*/
|
||||
@Cordova({
|
||||
observable: true,
|
||||
destruct: true,
|
||||
clearFunction: 'stopNotification',
|
||||
clearWithArgs: true,
|
||||
})
|
||||
@@ -604,4 +607,15 @@ export class BLE extends IonicNativePlugin {
|
||||
bondedDevices(): Promise<any[]> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports if location services are enabled.
|
||||
* Android only
|
||||
*
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
@Cordova()
|
||||
isLocationEnabled(): Promise<void> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,6 +24,9 @@ export interface SaleResponse extends Response {
|
||||
cardFirst6?: string;
|
||||
cardLast4?: string;
|
||||
}
|
||||
export interface VoidPaymentResponse extends Response {
|
||||
paymentId?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name Clover Go
|
||||
@@ -56,6 +59,14 @@ export interface SaleResponse extends Response {
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* this.cloverGo.sign(signInfo)
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* this.cloverGo.voidPayment(paymentInfo)
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
@@ -64,7 +75,7 @@ export interface SaleResponse extends Response {
|
||||
pluginRef: 'clovergo',
|
||||
repo: 'https://github.com/hotwax/cordova-plugin-clovergo',
|
||||
install: 'ionic plugin add cordova-plugin-clovergo',
|
||||
platforms: ['Android', 'iOS'],
|
||||
platforms: ['Android'],
|
||||
})
|
||||
@Injectable()
|
||||
export class CloverGo extends IonicNativePlugin {
|
||||
@@ -107,4 +118,27 @@ export class CloverGo extends IonicNativePlugin {
|
||||
sale(saleInfo: object): Promise<SaleResponse> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is used to pass signature as two
|
||||
* dimensional number array that represents points
|
||||
* of signature on screen.
|
||||
* The list is passed as signature in SignInfo object.
|
||||
* @param signInfo {object}
|
||||
* @return {Promise<SaleResponse>}
|
||||
*/
|
||||
@Cordova()
|
||||
sign(signInfo: object): Promise<SaleResponse> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* This function void any payment done through the device
|
||||
* @param saleInfo {object}
|
||||
* @return {Promise<VoidPaymentResponse>}
|
||||
*/
|
||||
@Cordova()
|
||||
voidPayment(paymentInfo: object): Promise<VoidPaymentResponse> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,6 +89,15 @@ export class Diagnostic extends IonicNativePlugin {
|
||||
WHEN_IN_USE: 'when_in_use',
|
||||
};
|
||||
|
||||
/**
|
||||
* iOS ONLY
|
||||
* Location accuracy authorization
|
||||
*/
|
||||
locationAccuracyAuthorization: {
|
||||
FULL: 'full',
|
||||
REDUCED: 'reduced',
|
||||
};
|
||||
|
||||
permissionGroups = {
|
||||
CALENDAR: ['READ_CALENDAR', 'WRITE_CALENDAR'],
|
||||
CAMERA: ['CAMERA'],
|
||||
@@ -929,4 +938,36 @@ export class Diagnostic extends IonicNativePlugin {
|
||||
getMotionAuthorizationStatus(): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the location accuracy authorization for the application on iOS 14+. Note: calling on iOS <14 will result in the Promise being rejected.
|
||||
*
|
||||
* Learn more about this method [here](https://github.com/dpa99c/cordova-diagnostic-plugin#getlocationaccuracyauthorization)
|
||||
*
|
||||
* @return {Promise<string>}
|
||||
*/
|
||||
@Cordova({ platform: ['iOS'] })
|
||||
getLocationAccuracyAuthorization(): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Requests temporary access to full location accuracy for the application on iOS 14+.
|
||||
*
|
||||
* Learn more about this method [here](https://github.com/dpa99c/cordova-diagnostic-plugin#requesttemporaryfullaccuracyauthorization)
|
||||
*
|
||||
* @return {Promise<string>}
|
||||
*/
|
||||
@Cordova({ platforms: ['iOS'] })
|
||||
requestTemporaryFullAccuracyAuthorization(purpose: string): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers a function to be called when a change in location accuracy authorization occurs on iOS 14+.
|
||||
*
|
||||
* Learn more about this method [here](https://github.com/dpa99c/cordova-diagnostic-plugin#registerLocationAccuracyAuthorizationChangeHandler)
|
||||
*/
|
||||
@Cordova({ platforms: ['iOS'], sync: true })
|
||||
registerLocationAccuracyAuthorizationChangeHandler(handler: Function): void {}
|
||||
}
|
||||
|
||||
@@ -105,11 +105,7 @@ export interface FileTransferError {
|
||||
*
|
||||
* @description
|
||||
* This plugin allows you to upload and download files.
|
||||
*
|
||||
* @deprecated
|
||||
* This plugin has been deprecated in favor of XHR2
|
||||
* https://cordova.apache.org/blog/2017/10/18/from-filetransfer-to-xhr2.html
|
||||
*
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { FileTransfer, FileUploadOptions, FileTransferObject } from '@ionic-native/file-transfer/ngx';
|
||||
|
||||
@@ -39,6 +39,19 @@ export interface FingerprintOptions {
|
||||
disableBackup?: boolean;
|
||||
}
|
||||
|
||||
export interface FingerprintSecretOptions extends FingerprintOptions {
|
||||
/**
|
||||
* String secret to encrypt and save, use simple strings matching the regex [a-zA-Z0-9\-]+
|
||||
*/
|
||||
secret: string;
|
||||
|
||||
/**
|
||||
* If `true` secret will be deleted when biometry items are deleted or enrolled
|
||||
* @default false
|
||||
*/
|
||||
invalidateOnEnrollment?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name Fingerprint AIO
|
||||
* @description
|
||||
@@ -68,9 +81,30 @@ export interface FingerprintOptions {
|
||||
* .then((result: any) => console.log(result))
|
||||
* .catch((error: any) => console.log(error));
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.faio.registerBiometricSecret({
|
||||
* description: "Some biometric description", // optional | Default: null
|
||||
* secret: "my-super-secret", // mandatory
|
||||
* invalidateOnEnrollment: true, // optional | Default: false
|
||||
* disableBackup: true, // (Android Only) | optional | always `true` on Android
|
||||
* })
|
||||
* .then((result: any) => console.log(result))
|
||||
* .catch((error: any) => console.log(error));
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.faio.loadBiometricSecret({
|
||||
* description: "Some biometric description", // optional | Default: null
|
||||
* disableBackup: true, // always disabled on Android
|
||||
* })
|
||||
* .then((result: string) => console.log(result))
|
||||
* .catch((error: any) => console.log(error));
|
||||
*
|
||||
* ```
|
||||
* @interfaces
|
||||
* FingerprintOptions
|
||||
* FingerprintSecretOptions
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'FingerprintAIO',
|
||||
@@ -146,6 +180,11 @@ export class FingerprintAIO extends IonicNativePlugin {
|
||||
* @type {number}
|
||||
*/
|
||||
BIOMETRIC_LOCKED_OUT_PERMANENT = -112;
|
||||
/**
|
||||
* Convenience constant
|
||||
* @type {number}
|
||||
*/
|
||||
BIOMETRIC_SECRET_NOT_FOUND = -113;
|
||||
|
||||
/**
|
||||
* Check if fingerprint authentication is available
|
||||
@@ -156,6 +195,26 @@ export class FingerprintAIO extends IonicNativePlugin {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Show authentication dialogue and register secret
|
||||
* @param {FingerprintSecretOptions} options Options for platform specific fingerprint API
|
||||
* @return {Promise<any>} Returns a promise that resolves when authentication was successful
|
||||
*/
|
||||
@Cordova()
|
||||
registerBiometricSecret(options: FingerprintSecretOptions): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Show authentication dialogue and load secret
|
||||
* @param {FingerprintOptions} options Options for platform specific fingerprint API
|
||||
* @return {Promise<any>} Returns a promise that resolves when authentication was successful
|
||||
*/
|
||||
@Cordova()
|
||||
loadBiometricSecret(options: FingerprintOptions): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Show authentication dialogue
|
||||
* @param {FingerprintOptions} options Options for platform specific fingerprint API
|
||||
|
||||
@@ -7,10 +7,6 @@ export interface IDynamicLink {
|
||||
deepLink: string;
|
||||
}
|
||||
|
||||
export interface ICreatedDynamicLink {
|
||||
url: string;
|
||||
}
|
||||
|
||||
export interface ILinkOptions {
|
||||
domainUriPrefix?: string;
|
||||
link?: string;
|
||||
@@ -116,36 +112,36 @@ export class FirebaseDynamicLinks extends IonicNativePlugin {
|
||||
/**
|
||||
* Creates a Dynamic Link from the parameters. Returns a promise fulfilled with the new dynamic link url.
|
||||
* @param {ILinkOptions} opt [Dynamic Link Parameters](https://github.com/chemerisuk/cordova-plugin-firebase-dynamiclinks#dynamic-link-parameters)
|
||||
* @return {Promise<ICreatedDynamicLink>} Returns a promise with the url
|
||||
* @return {Promise<string>} Returns a promise with the url
|
||||
*/
|
||||
@Cordova({
|
||||
otherPromise: true,
|
||||
})
|
||||
createDynamicLink(opts: ILinkOptions): Promise<ICreatedDynamicLink> {
|
||||
createDynamicLink(opts: ILinkOptions): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a shortened Dynamic Link from the parameters. Shorten the path to a string that is only as long as needed to be unique, with a minimum length of 4 characters. Use this method if sensitive information would not be exposed if a short Dynamic Link URL were guessed.
|
||||
* @param {ILinkOptions} opt [Dynamic Link Parameters](https://github.com/chemerisuk/cordova-plugin-firebase-dynamiclinks#dynamic-link-parameters)
|
||||
* @return {Promise<ICreatedDynamicLink>} Returns a promise with the url
|
||||
* @return {Promise<string>} Returns a promise with the url
|
||||
*/
|
||||
@Cordova({
|
||||
otherPromise: true,
|
||||
})
|
||||
createShortDynamicLink(opts: ILinkOptions): Promise<ICreatedDynamicLink> {
|
||||
createShortDynamicLink(opts: ILinkOptions): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Dynamic Link from the parameters. Shorten the path to an unguessable string. Such strings are created by base62-encoding randomly generated 96-bit numbers, and consist of 17 alphanumeric characters. Use unguessable strings to prevent your Dynamic Links from being crawled, which can potentially expose sensitive information.
|
||||
* @param {ILinkOptions} opt [Dynamic Link Parameters](https://github.com/chemerisuk/cordova-plugin-firebase-dynamiclinks#dynamic-link-parameters)
|
||||
* @return {Promise<ICreatedDynamicLink>} Returns a promise with the url
|
||||
* @return {Promise<string>} Returns a promise with the url
|
||||
*/
|
||||
@Cordova({
|
||||
otherPromise: true,
|
||||
})
|
||||
createUnguessableDynamicLink(opts: ILinkOptions): Promise<ICreatedDynamicLink> {
|
||||
createUnguessableDynamicLink(opts: ILinkOptions): Promise<string> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -179,6 +179,15 @@ export class FirebaseX extends IonicNativePlugin {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reload the current FCM user.
|
||||
* @return {Promise<FirebaseUser | string>}
|
||||
*/
|
||||
@Cordova()
|
||||
reloadCurrentUser(): Promise<FirebaseUser | string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get notified when a token is refreshed.
|
||||
* @return {Observable<any>}
|
||||
@@ -517,13 +526,18 @@ export class FirebaseX extends IonicNativePlugin {
|
||||
* code {string} - verification code. Will only be present if instantVerification is true. Always undefined on iOS.
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
callbackOrder: 'reverse',
|
||||
})
|
||||
verifyPhoneNumber(
|
||||
phoneNumber: string,
|
||||
timeOutDuration: number,
|
||||
fakeVerificationCode?: string
|
||||
): Promise<any> {
|
||||
verifyPhoneNumber(phoneNumber: string, timeOutDuration: number, fakeVerificationCode?: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Switch current authentification system language, for example, the phone sms code.
|
||||
* @param lang - language to change, ex: 'fr' for french
|
||||
*/
|
||||
@Cordova()
|
||||
setLanguageCode(lang: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -192,10 +192,10 @@ export class Geolocation extends IonicNativePlugin {
|
||||
* ```
|
||||
*
|
||||
* @param {GeolocationOptions} options The [geolocation options](https://developer.mozilla.org/en-US/docs/Web/API/PositionOptions).
|
||||
* @returns {Observable<Geoposition>} Returns an Observable that notifies with the [position](https://developer.mozilla.org/en-US/docs/Web/API/Position) of the device, or errors.
|
||||
* @returns {Observable<Geoposition | PositionError>} Returns an Observable that notifies with the [position](https://developer.mozilla.org/en-US/docs/Web/API/Position) of the device, or errors.
|
||||
*/
|
||||
watchPosition(options?: GeolocationOptions): Observable<Geoposition> {
|
||||
return new Observable<Geoposition>((observer: any) => {
|
||||
watchPosition(options?: GeolocationOptions): Observable<Geoposition | PositionError> {
|
||||
return new Observable<Geoposition | PositionError>((observer: any) => {
|
||||
const watchId = navigator.geolocation.watchPosition(
|
||||
observer.next.bind(observer),
|
||||
observer.next.bind(observer),
|
||||
|
||||
@@ -352,7 +352,7 @@ export class HTTP extends IonicNativePlugin {
|
||||
method: 'get' | 'post' | 'put' | 'patch' | 'head' | 'delete' | 'options' | 'upload' | 'download';
|
||||
data?: { [index: string]: any };
|
||||
params?: { [index: string]: string | number };
|
||||
serializer?: 'json' | 'urlencoded' | 'utf8' | 'multipart';
|
||||
serializer?: 'json' | 'urlencoded' | 'utf8' | 'multipart' | 'raw';
|
||||
timeout?: number;
|
||||
headers?: { [index: string]: string };
|
||||
filePath?: string | string[];
|
||||
|
||||
@@ -1,212 +1,234 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core';
|
||||
import {
|
||||
Plugin,
|
||||
Cordova,
|
||||
CordovaProperty,
|
||||
CordovaInstance,
|
||||
InstanceProperty,
|
||||
IonicNativePlugin,
|
||||
} from '@ionic-native/core';
|
||||
import { kMaxLength } from 'buffer';
|
||||
import { resolve } from 'dns';
|
||||
import { reject } from 'lodash';
|
||||
import { error } from 'console';
|
||||
|
||||
/**
|
||||
* @beta
|
||||
* @name HyperTrack
|
||||
* @description
|
||||
* HyperTrack cordova plugin wrapper for Ionic Native. Location-based services provider.
|
||||
* Make sure to include your publishable key at config.xml (see [HyperTrack Cordova Setup](https://docs.hypertrack.com/sdks/cordova/setup.html#step-2-configure-the-sdk)).
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { HyperTrack } from '@ionic-native/hyper-track/ngx';
|
||||
*
|
||||
* constructor(private hyperTrack: HyperTrack) { }
|
||||
*
|
||||
* // Check if app has location permissions enabled
|
||||
* this.hyperTrack.checkLocationPermission().then(response => {
|
||||
* // response (String) can be "true" or "false"
|
||||
* if (response != "true") {
|
||||
* // Ask for permissions
|
||||
* this.hyperTrack.requestPermissions().then(response => {}, error => {});
|
||||
* }
|
||||
* }, error => {});
|
||||
*
|
||||
* // Check if app has location services enabled
|
||||
* this.hyperTrack.checkLocationServices().then(response => {
|
||||
* // response (String) can be "true" or "false"
|
||||
* if (response != "true") {
|
||||
* // Request services to be enabled
|
||||
* this.hyperTrack.requestLocationServices().then(response => {}, error => {});
|
||||
* }
|
||||
* }, error => {});
|
||||
*
|
||||
* // First set the current user. This can be done via getOrCreateUser() or setUserId()
|
||||
* this.hyperTrack.setUserId("xxx").then(user => {
|
||||
* // user (String) is a String representation of a User's JSON
|
||||
*
|
||||
* this.hyperTrack.startTracking().then(userId => {}, trackingError => {});
|
||||
*
|
||||
* this.hyperTrack.createAndAssignAction('visit', 'lookupId','address', 20.12, -100.3).then(action => {
|
||||
* // Handle action. It's a String representation of the Action's JSON. For example:
|
||||
* // '{"eta":"Jul 17, 2017 12:50:03 PM","assigned_at":"Jul 17, 2017 12:34:38 PM",,"distance":"0.0",...}'
|
||||
* }, error => {});
|
||||
*
|
||||
* // You can complete an action with completeAction() or completeActionWithLookupId()
|
||||
* this.hyperTrack.completeAction('action-id').then(response => {
|
||||
* // Handle response (String). Should be "OK".
|
||||
* }, error => {});
|
||||
*
|
||||
* this.hyperTrack.getCurrentLocation().then(location => {
|
||||
* // Handle location. It's a String representation of a Location's JSON.For example:
|
||||
* // '{"mAccuracy":22.601,,"mLatitude":23.123456, "mLongitude":-100.1234567, ...}'
|
||||
* }, error => {});
|
||||
*
|
||||
* this.hyperTrack.stopTracking().then(success => {
|
||||
* // Handle success (String). Should be "OK".
|
||||
* }, error => {});
|
||||
*
|
||||
* }, error => {});*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'HyperTrack',
|
||||
plugin: 'cordova-plugin-hypertrack',
|
||||
pluginRef: 'cordova.plugins.HyperTrack',
|
||||
repo: 'https://github.com/hypertrack/hypertrack-cordova',
|
||||
pluginName: 'cordova-plugin-hypertrack-v3',
|
||||
plugin: 'cordova-plugin-hypertrack-v3',
|
||||
pluginRef: 'hypertrack',
|
||||
repo: 'https://github.com/hypertrack/cordova-plugin-hypertrack.git',
|
||||
platforms: ['Android'],
|
||||
})
|
||||
@Injectable()
|
||||
export class HyperTrack extends IonicNativePlugin {
|
||||
/**
|
||||
* Returns given text. For testing purposes.
|
||||
* @param {String} text Given text to print
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the result text (which is the same as the given text) if successful, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
export class HyperTrackPlugin extends IonicNativePlugin {
|
||||
@Cordova()
|
||||
helloWorld(text: String): Promise<String> {
|
||||
initialize(publishableKey: string): Promise<HyperTrackCordova> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new user to identify the current device or get a user from a lookup id.
|
||||
* @param {String} name User's name
|
||||
* @param {String} phone User's phone
|
||||
* @param {String} photo User's photo as URL or a Base64 converted string
|
||||
* @param {String} lookupId User's lookupId, which is used to check if a new user is to be created (in this case you could set it to an internal reference for the user that you can use later to identify it), or if one with an existing lookupId is to be used.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with a string representation of the User's JSON, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
getOrCreateUser(name: String, phone: String, photo: String, lookupId: String): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set UserId for the SDK created using HyperTrack APIs. This is useful if you already have a user previously created.
|
||||
* @param {String} userId User's ID
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with an "OK" string if successful, or it gets rejected if an error ocurred. An "OK" response doesn't necessarily mean that the userId was found. It just means that it was set correctly.
|
||||
*/
|
||||
@Cordova()
|
||||
setUserId(userId: String): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Enable the SDK and start tracking. This will fail if there is no user set.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the userId (String) of the User being tracked if successful, or it gets rejected if an error ocurred. One example of an error is not setting a User with getOrCreateUser() or setUserId() before calling this function.
|
||||
*/
|
||||
@Cordova()
|
||||
startTracking(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create and assign an action to the current user using specified parameters
|
||||
* @param {String} type The action type. Can be one from "pickup", "delivery", "dropoff", "visit", "stopover" or "task"
|
||||
* @param {String} lookupId The Action's desired lookupId
|
||||
* @param {String} expectedPlaceAddress The address of the Action
|
||||
* @param {Number} expectedPlaceLatitude The latitude of the Action
|
||||
* @param {Number} expectedPlaceLongitude The longitude of the Action
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with a string representation of the Action's JSON, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
createAndAssignAction(
|
||||
type: String,
|
||||
lookupId: String,
|
||||
expectedPlaceAddress: String,
|
||||
expectedPlaceLatitude: Number,
|
||||
expectedPlaceLongitude: Number
|
||||
): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Complete an action from the SDK by its ID
|
||||
* @param {String} actionId ID of the Action that will be marked as completed
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with an "OK" string if successful, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
completeAction(actionId: String): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Complete an action from the SDK using Action's lookupId as parameter
|
||||
* @param {String} lookupId Lookup ID of the Action that will be marked as completed
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with an "OK" string if successful, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
completeActionWithLookupId(lookupId: String): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable the SDK and stop tracking.
|
||||
* Needs user setting (via getOrCreateUser() or setUserId()) first.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the an "OK" string if successful, or it gets rejected if an error ocurred. One example of an error is not setting a User with getOrCreateUser() or setUserId() before calling this function.
|
||||
*/
|
||||
@Cordova()
|
||||
stopTracking(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user's current location from the SDK
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with a string representation of the Location's JSON, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
getCurrentLocation(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if Location permission has been granted to the app (for Android).
|
||||
* Returns "true" or "false" in success method accordingly.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the a string that can be "true" or "false", depending if location permission was granted, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
checkLocationPermission(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Request user to grant Location access to the app (for Anrdoid).
|
||||
* For Android Marshmallow and above. In other platforms, the Promise is never resolved.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the a string that can be "true" or "false", depending if Location access was given to the app, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
requestPermissions(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if Location services are enabled on the device (for Android).
|
||||
* Returns "true" or "false" in success method accordingly.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the a string that can be "true" or "false", depending if location services are enabled, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
checkLocationServices(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Request user to enable Location services on the device.
|
||||
* For Android Marshmallow and above. In other platforms, the Promise is never resolved.
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with the a string that can be "true" or "false", depending if Location services were enabled, or it gets rejected if an error ocurred.
|
||||
*/
|
||||
@Cordova()
|
||||
requestLocationServices(): Promise<any> {
|
||||
enableDebugLogging(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Interfaces for Cordova Plugin callbacks
|
||||
interface DeviceIdReceiver {
|
||||
(deviceId: string): any;
|
||||
}
|
||||
interface TrackingStateReceiver {
|
||||
(isRunning: boolean): any;
|
||||
}
|
||||
interface FailureHandler {
|
||||
(error: Error): any;
|
||||
}
|
||||
interface SuccessHandler {
|
||||
(): any;
|
||||
}
|
||||
|
||||
// SDK instance that exposed from Cordova utilizes usage of callbacks, so we
|
||||
// wrap it with adapter to avoid mix of callbacks and Promises
|
||||
interface HyperTrackCordova {
|
||||
getDeviceId(success: DeviceIdReceiver, error: FailureHandler): void;
|
||||
isRunning(success: TrackingStateReceiver, error: FailureHandler): void;
|
||||
setDeviceName(name: string, success: SuccessHandler, error: FailureHandler): void;
|
||||
setDeviceMetadata(metadata: Object, success: SuccessHandler, error: FailureHandler): void;
|
||||
setTrackingNotificationProperties(
|
||||
title: string,
|
||||
message: string,
|
||||
success: SuccessHandler,
|
||||
error: FailureHandler
|
||||
): void;
|
||||
addGeoTag(geotagData: Object, expectedLocation: Coordinates, success: SuccessHandler, error: FailureHandler): void;
|
||||
requestPermissionsIfNecessary(success: SuccessHandler, error: FailureHandler): void;
|
||||
allowMockLocations(success: SuccessHandler, error: FailureHandler): void;
|
||||
syncDeviceSettings(success: SuccessHandler, error: FailureHandler): void;
|
||||
}
|
||||
|
||||
export class CoordinatesValidationError extends Error {}
|
||||
|
||||
/** Wrapper class for passing spatial geoposition as a geotag's expected location */
|
||||
export class Coordinates {
|
||||
constructor(latitude: number, longitude: number) {
|
||||
if (latitude < -90.0 || latitude > 90.0 || longitude < -180.0 || longitude > 180.0) {
|
||||
throw new CoordinatesValidationError('latitude and longitude should be of correct valaues');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { HyperTrack } from '@ionic-native/hyper-track';
|
||||
*
|
||||
* initializeHypertrack() {
|
||||
* HyperTrack.enableDebugLogging();
|
||||
* HyperTrack.initialize('YOUR_PUBLISHING_KEY')
|
||||
* .then( this.onSdkInstanceReceived )
|
||||
* .catch( (err) => console.error("HyperTrack init failed with error " + err) );
|
||||
* }
|
||||
* onSdkInstanceReceived(sdkInstance: HyperTrack) {
|
||||
* sdkInstance.getDeviceId()
|
||||
* .then((id) => console.log("Got device id " + id))
|
||||
* .then(() => sdkInstance.setDeviceName("Elvis Ionic"))
|
||||
* .then(() => console.log("Device name was changed"))
|
||||
* .then(() => sdkInstance.setDeviceMetadata({platform: "Ionic Android"}))
|
||||
* .then(() => console.log("Device metadata was changed"))
|
||||
* .then(() => sdkInstance.setTrackingNotificationProperties("Tracking On", "Ionic SDK is tracking"))
|
||||
* .then(() => console.log("Notification properties were changed"))
|
||||
* .catch((err) => console.error("Got error in HyperTrack " + err));
|
||||
* }
|
||||
*
|
||||
* ```
|
||||
*
|
||||
*/
|
||||
export class HyperTrack {
|
||||
/** Enables debug log in native HyperTrack SDK. */
|
||||
static enableDebugLogging(): void {
|
||||
new HyperTrackPlugin().enableDebugLogging();
|
||||
}
|
||||
|
||||
/**
|
||||
* Entry point into SDK.
|
||||
*
|
||||
* Initializes SDK. Also resolves SDK instance that could be used to query deviceId or set
|
||||
* various data.
|
||||
* @param publishableKey account-specific secret from the HyperTrack dashborad.
|
||||
*
|
||||
* @see {@link https://dashboard.hypertrack.com/setup}.
|
||||
*/
|
||||
static initialize(publishableKey: string): Promise<HyperTrack> {
|
||||
return new Promise((resolve, reject) => {
|
||||
new HyperTrackPlugin()
|
||||
.initialize(publishableKey)
|
||||
.then((cordovaInstance: HyperTrackCordova) => {
|
||||
resolve(new HyperTrack(cordovaInstance));
|
||||
})
|
||||
.catch((err: Error) => reject(err));
|
||||
});
|
||||
}
|
||||
|
||||
/** Resolves device ID that could be used to identify the device. */
|
||||
getDeviceId(): Promise<string> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.getDeviceId(
|
||||
deviceId => resolve(deviceId),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/** Resolves to true if tracking service is running and false otherwise */
|
||||
isRunning(): Promise<boolean> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.isRunning(
|
||||
isRunning => resolve(isRunning),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/** Sets device name that could be used to identify the device in HyperTrack dashboard */
|
||||
setDeviceName(name: string): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.setDeviceName(
|
||||
name,
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Use this to set additional properties, like segments, teams etc.
|
||||
* @param metadata key-value pais of properties.
|
||||
*/
|
||||
setDeviceMetadata(metadata: Object): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.setDeviceMetadata(
|
||||
metadata,
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/** Updates title and text in persistent notification, that appears when tracking is active. */
|
||||
setTrackingNotificationProperties(title: string, message: string): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.setTrackingNotificationProperties(
|
||||
title,
|
||||
message,
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/** Adds special marker-like object to device timeline. */
|
||||
addGeotag(geotagData: Object, expectedLocation?: Coordinates): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.addGeoTag(
|
||||
geotagData,
|
||||
expectedLocation,
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/** Pops up permission request dialog, if permissions weren't granted before or does nothing otherwise. */
|
||||
requestPermissionsIfNecessary(): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.requestPermissionsIfNecessary(
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/** Allows injecting false locations into the SDK, which ignores them by default. */
|
||||
allowMockLocations(): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.allowMockLocations(
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Synchronizes tracking state with platform model. This method is used to
|
||||
* harden platform2device communication channel.
|
||||
*/
|
||||
syncDeviceSettings(): Promise<any> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.syncDeviceSettings(
|
||||
() => resolve(),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
private constructor(private cordovaInstanceHandle: HyperTrackCordova) {}
|
||||
}
|
||||
|
||||
@@ -293,7 +293,7 @@ export class IBeacon extends IonicNativePlugin {
|
||||
*/
|
||||
@CordovaCheck({ sync: true })
|
||||
Delegate(): IBeaconDelegate {
|
||||
const delegate = new cordova.plugins.locationManager.Delegate();
|
||||
const delegate = new window.cordova.plugins.locationManager.Delegate();
|
||||
|
||||
delegate.didChangeAuthorizationStatus = (pluginResult?: IBeaconPluginResult) => {
|
||||
return new Observable<IBeaconPluginResult>((observer: any) => {
|
||||
@@ -358,7 +358,7 @@ export class IBeacon extends IonicNativePlugin {
|
||||
});
|
||||
};
|
||||
|
||||
cordova.plugins.locationManager.setDelegate(delegate);
|
||||
window.cordova.plugins.locationManager.setDelegate(delegate);
|
||||
return delegate;
|
||||
}
|
||||
|
||||
@@ -382,7 +382,7 @@ export class IBeacon extends IonicNativePlugin {
|
||||
minor?: number,
|
||||
notifyEntryStateOnDisplay?: boolean
|
||||
): BeaconRegion {
|
||||
return new cordova.plugins.locationManager.BeaconRegion(identifer, uuid, major, minor, notifyEntryStateOnDisplay);
|
||||
return new window.cordova.plugins.locationManager.BeaconRegion(identifer, uuid, major, minor, notifyEntryStateOnDisplay);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -55,9 +55,9 @@ export interface IAPProduct {
|
||||
|
||||
downloaded?: boolean;
|
||||
|
||||
lastRenewalDate?: string;
|
||||
lastRenewalDate?: Date;
|
||||
|
||||
expiryDate?: string;
|
||||
expiryDate?: Date;
|
||||
|
||||
introPrice?: string;
|
||||
|
||||
@@ -541,11 +541,11 @@ export class IAPError {
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'InAppPurchase2',
|
||||
plugin: 'cc.fovea.cordova.purchase',
|
||||
plugin: 'cordova-plugin-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>"',
|
||||
install: 'ionic cordova plugin add cordova-plugin-purchase --variable BILLING_KEY="<ANDROID_BILLING_KEY>"',
|
||||
})
|
||||
@Injectable()
|
||||
export class InAppPurchase2 extends IonicNativePlugin {
|
||||
|
||||
@@ -2,11 +2,11 @@ import { Injectable } from '@angular/core';
|
||||
import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core';
|
||||
|
||||
export interface LuxandConfig {
|
||||
/** The licence key got from Luxand */
|
||||
/** The licence key gotten from Luxand */
|
||||
licence: string;
|
||||
/** The internal database name the tracker should use */
|
||||
dbname: string;
|
||||
/** the number of retry when registering of identifying a face */
|
||||
/** the number of retries when registering or identifying a face */
|
||||
loginTryCount: number;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ export interface OMLFacialData {
|
||||
message: string;
|
||||
/** The unique name generated and associated to a face when registering */
|
||||
name: string;
|
||||
/** The unique id Luxand Face SDK tracker associate to a face in it's internal database */
|
||||
/** The unique id Luxand Face SDK tracker associates to a face in it's internal database */
|
||||
id: number;
|
||||
/** Extra information about the face including age, expressions */
|
||||
extra: {
|
||||
@@ -31,7 +31,7 @@ export interface OMLFacialData {
|
||||
/**
|
||||
* @name Luxand
|
||||
* @description
|
||||
* This plugin let you integrat Luxand Face SDK into your ionic projects, so you can implements face authentication easily in your applications.
|
||||
* This plugin let you integrate Luxand Face SDK into your ionic projects, so you can implement face authentication easily in your application.
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
|
||||
@@ -11,6 +11,8 @@ export class MetrixConfig {
|
||||
private defaultTrackerToken: string = null;
|
||||
private shouldLaunchDeeplink = false;
|
||||
private firebaseAppId: string = null;
|
||||
private firebaseProjectId: string = null;
|
||||
private firebaseApiKey: string = null;
|
||||
private isLocationListeningEnable = false;
|
||||
private eventUploadThreshold: number = null;
|
||||
private eventUploadMaxBatchSize: number = null;
|
||||
@@ -32,8 +34,10 @@ export class MetrixConfig {
|
||||
this.defaultTrackerToken = defaultTrackerToken;
|
||||
}
|
||||
|
||||
setFirebaseAppId(firebaseAppId: string) {
|
||||
setFirebaseId(firebaseAppId: string, firebaseProjectId: string, firebaseApiKey: string) {
|
||||
this.firebaseAppId = firebaseAppId;
|
||||
this.firebaseProjectId = firebaseProjectId;
|
||||
this.firebaseApiKey = firebaseApiKey;
|
||||
}
|
||||
|
||||
setAppSecret(secretId: number, info1: number, info2: number, info3: number, info4: number) {
|
||||
|
||||
@@ -129,6 +129,11 @@ export interface Message {
|
||||
vibrate?: boolean; // Android only
|
||||
icon?: string; // Android only
|
||||
category?: string; // Android only
|
||||
chat?: string;
|
||||
browserUrl?: string;
|
||||
deeplink?: string;
|
||||
webViewUrl?: string;
|
||||
inAppDismissTitle?: string;
|
||||
}
|
||||
|
||||
export interface MobileMessagingError {
|
||||
@@ -136,6 +141,12 @@ export interface MobileMessagingError {
|
||||
message: string;
|
||||
}
|
||||
|
||||
export interface ChatConfig {
|
||||
ios?: {
|
||||
showModally: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
export class DefaultMessageStorage {
|
||||
@Cordova({ sync: true })
|
||||
find(messageId: string, callback: (message: Message) => void) {
|
||||
@@ -437,4 +448,15 @@ export class MobileMessaging extends IonicNativePlugin {
|
||||
defaultMessageStorage(): DefaultMessageStorage | undefined {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Displays chat view.
|
||||
*
|
||||
* @name showChat
|
||||
* @param {ChatConfig} chat config
|
||||
*/
|
||||
@Cordova()
|
||||
showChat(config?: ChatConfig): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,9 +148,9 @@ export interface MusicControlsOptions {
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'MusicControls',
|
||||
plugin: 'cordova-plugin-music-controls',
|
||||
plugin: 'cordova-plugin-music-controls2',
|
||||
pluginRef: 'MusicControls',
|
||||
repo: 'https://github.com/homerours/cordova-music-controls-plugin',
|
||||
repo: 'https://github.com/ghenry22/cordova-plugin-music-controls2',
|
||||
platforms: ['Android', 'iOS', 'Windows'],
|
||||
})
|
||||
@Injectable()
|
||||
|
||||
@@ -38,6 +38,14 @@ export interface NfcTag {
|
||||
type?: string;
|
||||
}
|
||||
|
||||
export interface ScanOptions {
|
||||
/**
|
||||
* If true, keep the scan session open so write can be called
|
||||
* after reading. The default value is false.
|
||||
*/
|
||||
keepSessionOpen?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name NFC
|
||||
* @description
|
||||
@@ -85,7 +93,7 @@ export interface NfcTag {
|
||||
plugin: 'phonegap-nfc',
|
||||
pluginRef: 'nfc',
|
||||
repo: 'https://github.com/chariotsolutions/phonegap-nfc',
|
||||
platforms: ['Android', 'BlackBerry 10', 'Windows', 'Windows Phone 8', 'iOS'],
|
||||
platforms: ['Android', 'iOS', 'Windows'],
|
||||
})
|
||||
/**
|
||||
* @{ NFC } class methods
|
||||
@@ -130,7 +138,7 @@ export class NFC extends IonicNativePlugin {
|
||||
* https://github.com/chariotsolutions/phonegap-nfc#nfcscanndef
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
scanNdef(): Promise<NfcTag> {
|
||||
scanNdef(options?: ScanOptions): Promise<NfcTag> {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -141,7 +149,7 @@ export class NFC extends IonicNativePlugin {
|
||||
* https://github.com/chariotsolutions/phonegap-nfc#nfcscantag
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
scanTag(): Promise<NfcTag> {
|
||||
scanTag(options?: ScanOptions): Promise<NfcTag> {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -303,6 +303,28 @@ export enum OSActionType {
|
||||
ActionTake = 1,
|
||||
}
|
||||
|
||||
/**
|
||||
* Details about the In-App Message action element (button or image) that was tapped on.
|
||||
*/
|
||||
export interface OSInAppMessageAction {
|
||||
/**
|
||||
* An optional click name defined for the action element. null or nil (iOS) if not set.
|
||||
*/
|
||||
click_name: string;
|
||||
/**
|
||||
* An optional URL that opens when the action takes place. null or nil (iOS) if not set.
|
||||
*/
|
||||
click_url: string;
|
||||
/**
|
||||
* `true` if this is the first time the user has pressed any action on the In-App Message.
|
||||
*/
|
||||
first_click: boolean;
|
||||
/**
|
||||
* If `true`, the In-App Message will animate off the screen. If `false`, the In-App Message will stay on screen until the user dismisses it.
|
||||
*/
|
||||
closes_message: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name OneSignal
|
||||
* @description
|
||||
@@ -406,6 +428,7 @@ export enum OSActionType {
|
||||
* OSBackgroundImageLayout
|
||||
* OSNotificationOpenedResult
|
||||
* OSActionType
|
||||
* OSInAppMessageAction
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'OneSignal',
|
||||
@@ -464,6 +487,18 @@ export class OneSignal extends IonicNativePlugin {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Use to process an In-App Message the user just tapped on.
|
||||
*
|
||||
* @return {Observable<OSInAppMessageAction>}
|
||||
*/
|
||||
@Cordova({
|
||||
observable: true,
|
||||
})
|
||||
handleInAppMessageClicked(): Observable<OSInAppMessageAction> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* **iOS** - Settings for iOS apps
|
||||
*
|
||||
@@ -781,4 +816,67 @@ export class OneSignal extends IonicNativePlugin {
|
||||
*/
|
||||
@Cordova()
|
||||
removeExternalUserId(): void {}
|
||||
|
||||
/**
|
||||
* Add a trigger. May show an In-App Message if its trigger conditions were met.
|
||||
*
|
||||
* @param {string} key Key for the trigger.
|
||||
* @param {string | number | Object} value Value for the trigger. String or number recommended. Object passed in will be converted to a string.
|
||||
*/
|
||||
@Cordova({
|
||||
sync: true,
|
||||
})
|
||||
addTrigger(key: string, value: string | number | Object): void {}
|
||||
|
||||
/**
|
||||
* Add a map of triggers. May show an In-App Message if its trigger conditions were met.
|
||||
*
|
||||
* @param {Object.<string, string | number | Object>} triggers Allows you to set multiple trigger key/value pairs simultaneously. Pass a json object with key/value pairs like: `{"key": "value", "key2": "value2"}`.
|
||||
*/
|
||||
@Cordova({
|
||||
sync: true,
|
||||
})
|
||||
addTriggers(triggers: Object): void {}
|
||||
|
||||
/**
|
||||
* Removes a single trigger for the given key. May show an In-App Message if its trigger conditions were met.
|
||||
*
|
||||
* @param {string} key Key for trigger to remove.
|
||||
*/
|
||||
@Cordova({
|
||||
sync: true,
|
||||
})
|
||||
removeTriggerForKey(key: string): void {}
|
||||
|
||||
/**
|
||||
* Removes a list of triggers based on a collection (array) of keys. May show an In-App Message if its trigger conditions were met.
|
||||
*
|
||||
* @param {string[]} keys Removes a collection of triggers from their keys. Pass an array of trigger keys like: `["key1", "key2", "key3"]`.
|
||||
*/
|
||||
@Cordova({
|
||||
sync: true,
|
||||
})
|
||||
removeTriggersForKeys(keys: string[]): void {}
|
||||
|
||||
/**
|
||||
* Gets a trigger value for a provided trigger key.
|
||||
*
|
||||
* @param {string} key Key for trigger to get value.
|
||||
* @returns {Promise<string | number | Object>} Return value set with `addTrigger`, or `null`/`nil` (iOS) if never set or removed.
|
||||
*/
|
||||
@Cordova()
|
||||
getTriggerValueForKey(key: string): Promise<string | number | Object> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Allows you to temporarily pause all In-App Messages. You may want to do this while the user is engaged in an activity that you don't want a message to interrupt (such as watching a video).
|
||||
* An In-App Message that would display if not paused will display right after resume if its conditions to display remains satisfied.
|
||||
*
|
||||
* @param {boolean} pause To pause, set `true`. To resume, set `false`.
|
||||
*/
|
||||
@Cordova({
|
||||
sync: true,
|
||||
})
|
||||
pauseInAppMessages(pause: boolean): void {}
|
||||
}
|
||||
|
||||
@@ -203,11 +203,11 @@ export enum INTRO_ELIGIBILITY_STATUS {
|
||||
* PurchaserInfo
|
||||
* PurchasesEntitlementInfos
|
||||
* PurchasesEntitlementInfo
|
||||
*
|
||||
* PurchasesTransaction
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Purchases',
|
||||
plugin: 'cordova-plugin-purchases@1.1.0',
|
||||
plugin: 'cordova-plugin-purchases@1.3.0',
|
||||
pluginRef: 'Purchases', // the variable reference to call the plugin, example: navigator.geolocation
|
||||
repo: 'https://github.com/RevenueCat/cordova-plugin-purchases', // the github repository URL for the plugin
|
||||
platforms: ['Android', 'iOS'], // Array of platforms supported, example: ['Android', 'iOS']
|
||||
@@ -259,9 +259,12 @@ export class Purchases extends IonicNativePlugin {
|
||||
* @param {boolean} observerMode An optional boolean. Set this to TRUE if you have your own IAP implementation and
|
||||
* want to use only RevenueCat's backend. Default is FALSE. If you are on Android and setting this to ON, you will have
|
||||
* to acknowledge the purchases yourself.
|
||||
* @param {string?} userDefaultsSuiteName An optional string. iOS-only, will be ignored for Android.
|
||||
* Set this if you would like the RevenueCat SDK to store its preferences in a different NSUserDefaults
|
||||
* suite, otherwise it will use standardUserDefaults. Default is null, which will make the SDK use standardUserDefaults.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setup(apiKey: string, appUserID?: string | null, observerMode = false): void {}
|
||||
setup(apiKey: string, appUserID?: string | null, observerMode = false, userDefaultsSuiteName?: string): void {}
|
||||
|
||||
/**
|
||||
* Set this to true if you are passing in an appUserID but it is anonymous, this is true by default if you didn't pass an appUserID
|
||||
@@ -274,6 +277,9 @@ export class Purchases extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Add a dict of attribution information
|
||||
*
|
||||
* @deprecated Use the set<NetworkId> functions instead.
|
||||
*
|
||||
* @param {object} data Attribution data from any of the attribution networks in Purchases.ATTRIBUTION_NETWORKS
|
||||
* @param {ATTRIBUTION_NETWORK} network Which network, see Purchases.ATTRIBUTION_NETWORK
|
||||
* @param {string?} networkUserId An optional unique id for identifying the user. Needs to be a string.
|
||||
@@ -539,8 +545,13 @@ export class Purchases extends IonicNativePlugin {
|
||||
|
||||
/**
|
||||
* Invalidates the cache for purchaser information.
|
||||
* This is useful for cases where purchaser information might have been updated outside of the app, like if a
|
||||
* promotional subscription is granted through the RevenueCat dashboard.
|
||||
*
|
||||
* Most apps will not need to use this method; invalidating the cache can leave your app in an invalid state.
|
||||
* Refer to https://docs.revenuecat.com/docs/purchaserinfo#section-get-user-information for more information on
|
||||
* using the cache properly.
|
||||
*
|
||||
* This is useful for cases where purchaser information might have been updated outside of the
|
||||
* app, like if a promotional subscription is granted through the RevenueCat dashboard.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
invalidatePurchaserInfoCache(): void {}
|
||||
@@ -565,30 +576,137 @@ export class Purchases extends IonicNativePlugin {
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setEmail(email: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the phone number for the user
|
||||
*
|
||||
* @param phoneNumber Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
|
||||
@Cordova({ sync: true })
|
||||
setPhoneNumber(phoneNumber: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the display name for the user
|
||||
*
|
||||
* @param displayName Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
|
||||
@Cordova({ sync: true })
|
||||
setDisplayName(displayName: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the push token for the user
|
||||
*
|
||||
* @param pushToken null will delete the subscriber attribute.
|
||||
* @param pushToken Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
|
||||
@Cordova({ sync: true })
|
||||
setPushToken(pushToken: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the install media source for the user
|
||||
*
|
||||
* @param mediaSource Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setMediaSource(mediaSource: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the install campaign for the user
|
||||
*
|
||||
* @param campaign Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setCampaign(campaign: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the install ad group for the user
|
||||
*
|
||||
* @param adGroup Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setAdGroup(adGroup: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the install ad for the user
|
||||
*
|
||||
* @param ad Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setAd(ad: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the install keyword for the user
|
||||
*
|
||||
* @param keyword Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setKeyword(keyword: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the install ad creative for the user
|
||||
*
|
||||
* @param creative Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setCreative(creative: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the Adjust Id for the user
|
||||
* Required for the RevenueCat Adjust integration
|
||||
*
|
||||
* @param adjustID Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setAdjustId(adjustId: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the AppsFlyer Id for the user
|
||||
* Required for the RevenueCat AppsFlyer integration
|
||||
* @param appsflyerID Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setAppsflyerId(appsflyerId: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the Facebook SDK Anonymous Id for the user
|
||||
* Recommended for the RevenueCat Facebook integration
|
||||
*
|
||||
* @param fbAnonymousID Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setFbAnonymousId(fbAnonymousId: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the mParticle Id for the user
|
||||
* Recommended for the RevenueCat mParticle integration
|
||||
*
|
||||
* @param mparticleID Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setMparticleId(mparticleId: string | null): void {}
|
||||
|
||||
/**
|
||||
* Subscriber attribute associated with the OneSignal Player Id for the user
|
||||
* Required for the RevenueCat OneSignal integration
|
||||
*
|
||||
* @param onesignalID Empty String or null will delete the subscriber attribute.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setOnesignalId(onesignalId: string | null): void {}
|
||||
|
||||
/**
|
||||
* Automatically collect subscriber attributes associated with the device identifiers.
|
||||
* $idfa, $idfv, $ip on iOS
|
||||
* $gpsAdId, $androidId, $ip on Android
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
collectDeviceIdentifiers(): void {}
|
||||
|
||||
/**
|
||||
* Set this property to your proxy URL before configuring Purchases *only* if you've received a proxy key value from your RevenueCat contact.
|
||||
* @param url Proxy URL as a string.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setProxyURL(url: string): void {}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -693,6 +811,11 @@ export interface PurchaserInfo {
|
||||
* Set of purchased skus, active and inactive
|
||||
*/
|
||||
readonly allPurchasedProductIdentifiers: [string];
|
||||
/**
|
||||
* Returns all the non-subscription purchases a user has made.
|
||||
* The purchases are ordered by purchase date in ascending order.
|
||||
*/
|
||||
readonly nonSubscriptionTransactions: [PurchasesTransaction];
|
||||
/**
|
||||
* The latest expiration date of all purchased skus
|
||||
*/
|
||||
@@ -727,6 +850,33 @@ export interface PurchaserInfo {
|
||||
* in Android
|
||||
*/
|
||||
readonly originalApplicationVersion: string | null;
|
||||
/**
|
||||
* Returns the purchase date for the version of the application when the user bought the app.
|
||||
* Use this for grandfathering users when migrating to subscriptions.
|
||||
*/
|
||||
readonly originalPurchaseDate: string | null;
|
||||
/**
|
||||
* URL to manage the active subscription of the user. If this user has an active iOS
|
||||
* subscription, this will point to the App Store, if the user has an active Play Store subscription
|
||||
* it will point there. If there are no active subscriptions it will be null.
|
||||
* If there are multiple for different platforms, it will point to the device store.
|
||||
*/
|
||||
readonly managementURL: string | null;
|
||||
}
|
||||
|
||||
export interface PurchasesTransaction {
|
||||
/**
|
||||
* RevenueCat Id associated to the transaction.
|
||||
*/
|
||||
readonly revenueCatId: string;
|
||||
/**
|
||||
* Product Id associated with the transaction.
|
||||
*/
|
||||
readonly productId: string;
|
||||
/**
|
||||
* Purchase date of the transaction in ISO 8601 format.
|
||||
*/
|
||||
readonly purchaseDate: string;
|
||||
}
|
||||
|
||||
export interface PurchasesProduct {
|
||||
|
||||
@@ -1,13 +1,55 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
|
||||
|
||||
export class SmartlookSetupConfigBuilder {
|
||||
private readonly _smartlookSetupConfig: SmartlookSetupConfig;
|
||||
|
||||
constructor(smartlookAPIKey: string) {
|
||||
this._smartlookSetupConfig = new SmartlookSetupConfig(smartlookAPIKey);
|
||||
}
|
||||
|
||||
fps(fps: number): SmartlookSetupConfigBuilder {
|
||||
this._smartlookSetupConfig.fps = fps;
|
||||
return this;
|
||||
}
|
||||
|
||||
renderingMode(renderingMode: string): SmartlookSetupConfigBuilder {
|
||||
this._smartlookSetupConfig.renderingMode = renderingMode;
|
||||
return this;
|
||||
}
|
||||
|
||||
startNewSession(startNewSession: boolean): SmartlookSetupConfigBuilder {
|
||||
this._smartlookSetupConfig.startNewSession = startNewSession;
|
||||
return this;
|
||||
}
|
||||
|
||||
startNewSessionAndUser(startNewSessionAndUser: boolean): SmartlookSetupConfigBuilder {
|
||||
this._smartlookSetupConfig.startNewSessionAndUser = startNewSessionAndUser;
|
||||
return this;
|
||||
}
|
||||
|
||||
build(): SmartlookSetupConfig {
|
||||
return this._smartlookSetupConfig;
|
||||
}
|
||||
}
|
||||
|
||||
export class SmartlookSetupConfig {
|
||||
private smartlookAPIKey: string;
|
||||
private fps: number;
|
||||
fps: number;
|
||||
renderingMode: string;
|
||||
startNewSession: boolean;
|
||||
startNewSessionAndUser: boolean;
|
||||
|
||||
constructor(smartlookAPIKey: string, fps?: number) {
|
||||
constructor(smartlookAPIKey: string) {
|
||||
this.smartlookAPIKey = smartlookAPIKey;
|
||||
this.fps = fps;
|
||||
}
|
||||
}
|
||||
|
||||
export class SmartlookResetSession {
|
||||
private resetUser: string;
|
||||
|
||||
constructor(resetUser: string) {
|
||||
this.resetUser = resetUser;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -138,6 +180,19 @@ export class SmartlookReferrer {
|
||||
}
|
||||
}
|
||||
|
||||
export class SmartlookDashboardSessionUrl {
|
||||
private withCurrentTimestamp: boolean;
|
||||
|
||||
constructor(withCurrentTimestamp: boolean) {
|
||||
this.withCurrentTimestamp = withCurrentTimestamp;
|
||||
}
|
||||
}
|
||||
|
||||
export interface SmartlookIntegrationListener {
|
||||
onSessionReady: (dashboardSessionUrl: string) => any;
|
||||
onVisitorReady: (dashboardVisitorUrl: string) => any;
|
||||
}
|
||||
|
||||
export class SmartlookRenderingMode {
|
||||
private renderingMode: string;
|
||||
|
||||
@@ -176,7 +231,9 @@ export class SmartlookRenderingMode {
|
||||
* }
|
||||
* ```
|
||||
* @classes
|
||||
* SmartlookSetupConfigBuilder
|
||||
* SmartlookSetupConfig
|
||||
* SmartlookResetSession
|
||||
* SmartlookUserIdentifier
|
||||
* SmartlookEventTrackingMode
|
||||
* SmartlookNavigationEvent
|
||||
@@ -189,6 +246,7 @@ export class SmartlookRenderingMode {
|
||||
* SmartlookGlobalEventProperty
|
||||
* SmartlookGlobalEventPropertyKey
|
||||
* SmartlookReferrer
|
||||
* SmartlookDashboardSessionUrl
|
||||
* SmartlookRenderingMode
|
||||
*/
|
||||
@Plugin({
|
||||
@@ -205,6 +263,9 @@ export class Smartlook extends IonicNativePlugin {
|
||||
* @param config SmartlookSetupConfig object.
|
||||
* @param config.smartlookAPIKey (required) Smartlook API key (you can obtain it in your dashboard).
|
||||
* @param config.fps (optional) recorded video framerate (allowed values 2-10 fps).
|
||||
* @param options.renderingMode (optional) Mode defining the video output of recording.
|
||||
* @param options.startNewSession (optional) If true new session is going to be created
|
||||
* @param options.startNewSessionAndUser (optional) If true new session and visitor is going to be created
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setupAndStartRecording(config: SmartlookSetupConfig): void {
|
||||
@@ -216,6 +277,9 @@ export class Smartlook extends IonicNativePlugin {
|
||||
* @param config SmartlookSetupConfig object.
|
||||
* @param config.smartlookAPIKey (required) Smartlook API key (you can obtain it in your dashboard).
|
||||
* @param config.fps (optional) recorded video framerate (allowed values 2-10 fps).
|
||||
* @param options.renderingMode (optional) Mode defining the video output of recording.
|
||||
* @param options.startNewSession (optional) If true new session is going to be created
|
||||
* @param options.startNewSessionAndUser (optional) If true new session and visitor is going to be created
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
setup(config: SmartlookSetupConfig): void {
|
||||
@@ -247,6 +311,16 @@ export class Smartlook extends IonicNativePlugin {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Resets current session and new session in dashboard is created.
|
||||
* @param resetSession SmartlookResetSession object.
|
||||
* @param resetSession.resetUser If set to TRUE new visitor is created in the dashboard.
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
resetSession(resetSession: SmartlookResetSession): void {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* When you start sensitive mode SDK records blank videos (single color) but SDK still sends analytic events.
|
||||
*/
|
||||
@@ -413,11 +487,36 @@ export class Smartlook extends IonicNativePlugin {
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtain sharable url to user's session leading to our dashboard.
|
||||
* @return {Promise<string>} Returns a promise with dashboard URL string.
|
||||
* Obtain session URL leading to our dashboard.
|
||||
* @param smartlookDashboardSessionUrl SmartlookDashboardSessionUrl object.
|
||||
* @param smartlookDashboardSessionUrl.withCurrentTimestamp If set to TRUE record will start at current timestamp.
|
||||
* @return {Promise<string>} Returns a promise with dashboard session URL string.
|
||||
*/
|
||||
@Cordova()
|
||||
getDashboardSessionUrl(): Promise<string> {
|
||||
getDashboardSessionUrl(smartlookDashboardSessionUrl: SmartlookDashboardSessionUrl): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtain visitor URL leading to our dashboard.
|
||||
* @return {Promise<string>} Returns a promise with dashboard visitor URL string.
|
||||
*/
|
||||
@Cordova()
|
||||
getDashboardVisitorUrl(): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Integration listener can be used to obtain dashboard URL for current session and visitor.
|
||||
* These URLs can be propagated to various analytic tools/SDKs.
|
||||
* @param integrationListener SmartlookIntegrationListener object.
|
||||
* @param integrationListener.onSessionReady Called when dashboard session URL is ready. Note that this URL can be accesed only by user
|
||||
* that has access to Smartlook dashboard (it is not public share link).
|
||||
* @param integrationListener.onVisitorReady Called when dashboard visitor URL is ready. Note that this URL can be accesed only by user
|
||||
* that has access to Smartlook dashboard (it is not public share link).
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
registerIntegrationListener(integrationListener: SmartlookIntegrationListener): void {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -430,4 +529,12 @@ export class Smartlook extends IonicNativePlugin {
|
||||
setRenderingMode(renderingMode: SmartlookRenderingMode): void {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Unregister Integration listener (@see registerIntegrationListener())
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
unregisterIntegrationListener(): void {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -282,4 +282,21 @@ export class SocialSharing extends IonicNativePlugin {
|
||||
saveToPhotoAlbum(fileOrFileArray: string | string[]): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shares directly to a WhatsApp Contact with phone number.
|
||||
* @param phone {string} Pass phone number
|
||||
* @param message {string} Message to send
|
||||
* @param fileOrFileArray fileOrFileArray Single or multiple files
|
||||
* @param url {string} Link to send
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
@Cordova({
|
||||
successIndex: 5,
|
||||
errorIndex: 6,
|
||||
platforms: ['iOS', 'Android'],
|
||||
})
|
||||
shareViaWhatsAppToPhone(phone: string, message: string, fileOrFileArray: string | string[], url?: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user