mirror of
https://github.com/danielsogl/awesome-cordova-plugins.git
synced 2026-02-16 00:00:02 +08:00
Compare commits
129 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a6fcc16d12 | ||
|
|
e420bd1d2a | ||
|
|
8b826e3c1b | ||
|
|
1b45462542 | ||
|
|
82377f0633 | ||
|
|
aef160e418 | ||
|
|
a801c7d305 | ||
|
|
898e0b8588 | ||
|
|
99161e2b73 | ||
|
|
678fb71a7f | ||
|
|
6e953e58ca | ||
|
|
29163b93d6 | ||
|
|
ba83a81c75 | ||
|
|
ac1d0aa0a1 | ||
|
|
5d7cf3940f | ||
|
|
725e88080b | ||
|
|
38d59e3455 | ||
|
|
b5b8968ac4 | ||
|
|
ebdd6e9796 | ||
|
|
620385befc | ||
|
|
ba9c1c154e | ||
|
|
dd081cc696 | ||
|
|
135c6cc8b4 | ||
|
|
c7d39dde42 | ||
|
|
eb27d87d92 | ||
|
|
878a6e94c2 | ||
|
|
95fa8eb098 | ||
|
|
b1f4639640 | ||
|
|
d6697b8a95 | ||
|
|
41e96d950f | ||
|
|
56fc1d4663 | ||
|
|
9e5953bc27 | ||
|
|
346ea82652 | ||
|
|
8671e18391 | ||
|
|
0a31a374b1 | ||
|
|
64d2c55880 | ||
|
|
f96b7588de | ||
|
|
7a528b42d9 | ||
|
|
19fc222ea9 | ||
|
|
41a85e6587 | ||
|
|
04422600ca | ||
|
|
4e183b1881 | ||
|
|
63c83653c0 | ||
|
|
032f3a160a | ||
|
|
44967cc02c | ||
|
|
123517eac6 | ||
|
|
d1c13567d7 | ||
|
|
49df2996c8 | ||
|
|
d14d8c413e | ||
|
|
511300ea7b | ||
|
|
a3d3d546af | ||
|
|
cca5929a7d | ||
|
|
6e83ebdfb3 | ||
|
|
38528e1017 | ||
|
|
c801668d3f | ||
|
|
bc1ff3da7d | ||
|
|
a29927837c | ||
|
|
3935e620be | ||
|
|
379df77692 | ||
|
|
af723c02e3 | ||
|
|
daa929e229 | ||
|
|
126f23b303 | ||
|
|
95b84447ad | ||
|
|
5ebe762d4b | ||
|
|
ab1ea4aef9 | ||
|
|
08db901db6 | ||
|
|
0e922b7e0b | ||
|
|
cfa194b71a | ||
|
|
cee00fbcc8 | ||
|
|
9f65002b6e | ||
|
|
7aba998e1c | ||
|
|
3e1fdd966b | ||
|
|
c2b01e0510 | ||
|
|
26a8cbe437 | ||
|
|
7e2452b6ad | ||
|
|
5f9f58edba | ||
|
|
6b2c1fd32e | ||
|
|
f5b7b8469b | ||
|
|
c70508e877 | ||
|
|
dd349640ee | ||
|
|
6406cdc35c | ||
|
|
6f4d6cf0bc | ||
|
|
88e78cf9fa | ||
|
|
21b7b673e9 | ||
|
|
5b9382f2fe | ||
|
|
8bda638d19 | ||
|
|
f81610ef69 | ||
|
|
adba813eb0 | ||
|
|
aa00e37ffd | ||
|
|
c7566e2ba0 | ||
|
|
bf443da2d4 | ||
|
|
8a4055c06b | ||
|
|
00a0cbc05b | ||
|
|
343ca3652d | ||
|
|
1f5a2f007a | ||
|
|
bae0a8dbc8 | ||
|
|
18cb1acb2a | ||
|
|
9a4abea1cd | ||
|
|
46086a7f4f | ||
|
|
710cf7acc0 | ||
|
|
206b2183f1 | ||
|
|
a8dafc29be | ||
|
|
36ed9a6d9c | ||
|
|
ab2aec26e3 | ||
|
|
9f93ba66a5 | ||
|
|
d735124f59 | ||
|
|
ba5232cdb0 | ||
|
|
672552bd7d | ||
|
|
6e2b9a062a | ||
|
|
893540cf88 | ||
|
|
dcad4d7711 | ||
|
|
bfd3a58276 | ||
|
|
365571eaf2 | ||
|
|
53cd775a71 | ||
|
|
798ae0a238 | ||
|
|
4b2dea8244 | ||
|
|
444b9539a8 | ||
|
|
ed83bbe171 | ||
|
|
136d24ae3d | ||
|
|
6ff9625fdc | ||
|
|
650027f2cc | ||
|
|
2b92cc1adf | ||
|
|
19acfe7dbd | ||
|
|
9865faa8c5 | ||
|
|
24e190ae1f | ||
|
|
17121a8058 | ||
|
|
fd88c86e40 | ||
|
|
02d38860d1 | ||
|
|
164ae4039a |
2
.github/ISSUE_TEMPLATE.md
vendored
2
.github/ISSUE_TEMPLATE.md
vendored
@@ -1,7 +1,7 @@
|
||||
**I'm submitting a ...** (check one with "x")
|
||||
[ ] bug report
|
||||
[ ] feature request
|
||||
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or https://ionicworldwide.herokuapp.com/
|
||||
[ ] support request => Please do not submit support requests here, use the discussions section https://github.com/danielsogl/awesome-cordova-plugins/discussions
|
||||
|
||||
**Current behavior:**
|
||||
<!-- Describe how the bug manifests. -->
|
||||
|
||||
4
.github/workflows/nodejs.yml
vendored
4
.github/workflows/nodejs.yml
vendored
@@ -11,9 +11,9 @@ jobs:
|
||||
node-version: [14.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3.0.0
|
||||
- uses: actions/checkout@v3.0.2
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3.1.0
|
||||
uses: actions/setup-node@v3.4.1
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
|
||||
|
||||
8
.github/workflows/npmpublish.yml
vendored
8
.github/workflows/npmpublish.yml
vendored
@@ -9,8 +9,8 @@ jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.0.0
|
||||
- uses: actions/setup-node@v3.1.0
|
||||
- uses: actions/checkout@v3.0.2
|
||||
- uses: actions/setup-node@v3.4.1
|
||||
with:
|
||||
node-version: 14
|
||||
- name: Install dependencies
|
||||
@@ -24,8 +24,8 @@ jobs:
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.0.0
|
||||
- uses: actions/setup-node@v3.1.0
|
||||
- uses: actions/checkout@v3.0.2
|
||||
- uses: actions/setup-node@v3.4.1
|
||||
with:
|
||||
node-version: 14
|
||||
registry-url: https://registry.npmjs.org/
|
||||
|
||||
61
CHANGELOG.md
61
CHANGELOG.md
@@ -1,3 +1,64 @@
|
||||
# [5.45.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.44.0...v5.45.0) (2022-09-05)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **adjust:** update wrapper for Adjust Cordova SDK v4.30.0 ([#4277](https://github.com/danielsogl/awesome-cordova-plugins/issues/4277)) ([82377f0](https://github.com/danielsogl/awesome-cordova-plugins/commit/82377f06330e8618e50a57004c9a79cafa66d972))
|
||||
* **android-permissions:** add android 13 permissions ([#4295](https://github.com/danielsogl/awesome-cordova-plugins/issues/4295)) ([ba9c1c1](https://github.com/danielsogl/awesome-cordova-plugins/commit/ba9c1c154e76900f9570a7f3acc7728fd32a89a2))
|
||||
* **dynamsoft-barcode:** add setFocus and setZoom ([#4281](https://github.com/danielsogl/awesome-cordova-plugins/issues/4281)) ([a801c7d](https://github.com/danielsogl/awesome-cordova-plugins/commit/a801c7d3054d285c962b4657f4b224c9a9ad67cf))
|
||||
* **firebase-x:** add message typing ([#4282](https://github.com/danielsogl/awesome-cordova-plugins/issues/4282)) ([898e0b8](https://github.com/danielsogl/awesome-cordova-plugins/commit/898e0b8588f479aea228746c2b3e177c6066f757))
|
||||
* **in-app-purchase-2:** update validator for custom headers ([#4262](https://github.com/danielsogl/awesome-cordova-plugins/issues/4262)) ([8b826e3](https://github.com/danielsogl/awesome-cordova-plugins/commit/8b826e3c1b2b53e0d188e90d22f34948b2362cd4))
|
||||
* **intercom:** add displaySurvey ([#4292](https://github.com/danielsogl/awesome-cordova-plugins/issues/4292)) ([ebdd6e9](https://github.com/danielsogl/awesome-cordova-plugins/commit/ebdd6e97964d6c1e862f0160180d6e056f91de88))
|
||||
* **lets-cooee:** add event observer and installation documentation ([#4278](https://github.com/danielsogl/awesome-cordova-plugins/issues/4278)) ([aef160e](https://github.com/danielsogl/awesome-cordova-plugins/commit/aef160e4180d28598a8ef25c75cd8057dd59f81f))
|
||||
* **unvired-cordova-sdk:** Add new function to regenrate the JWT Token ([#4291](https://github.com/danielsogl/awesome-cordova-plugins/issues/4291)) ([678fb71](https://github.com/danielsogl/awesome-cordova-plugins/commit/678fb71a7f4cf1ad34c2746fdaa3690a13df4fe4))
|
||||
|
||||
|
||||
|
||||
# [5.44.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.43.0...v5.44.0) (2022-06-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **diagnostic:** adjust options declaration ([#4227](https://github.com/danielsogl/awesome-cordova-plugins/issues/4227)) ([19fc222](https://github.com/danielsogl/awesome-cordova-plugins/commit/19fc222ea93c79c53156aa0a05b3dc0bffa77a7e))
|
||||
* **urbanairship:** fix cordova and method wrapper options ([#4221](https://github.com/danielsogl/awesome-cordova-plugins/issues/4221)) ([0442260](https://github.com/danielsogl/awesome-cordova-plugins/commit/04422600ca9675ff1f5ff763e3aba03b7abb8455))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **cooee:** add plugin ([#4228](https://github.com/danielsogl/awesome-cordova-plugins/issues/4228)) ([7a528b4](https://github.com/danielsogl/awesome-cordova-plugins/commit/7a528b42d9427222d01b8e0da675045996be042d))
|
||||
* **dynamsoft-barcode:** update startScanning options ([#4205](https://github.com/danielsogl/awesome-cordova-plugins/issues/4205)) ([4e183b1](https://github.com/danielsogl/awesome-cordova-plugins/commit/4e183b18818864b23501fa4bccd2813ca4149e5a))
|
||||
* **file-md5:** add plugin ([#4201](https://github.com/danielsogl/awesome-cordova-plugins/issues/4201)) ([63c8365](https://github.com/danielsogl/awesome-cordova-plugins/commit/63c83653c0d0942d9cac2185bd8b9f38a5b4980c))
|
||||
* **mobile-messaging:** add chat methods ([#4231](https://github.com/danielsogl/awesome-cordova-plugins/issues/4231)) ([f96b758](https://github.com/danielsogl/awesome-cordova-plugins/commit/f96b7588dece0ed1119d7166168486315f9fc714))
|
||||
* **zip:** add plugin ([#4238](https://github.com/danielsogl/awesome-cordova-plugins/issues/4238)) ([0a31a37](https://github.com/danielsogl/awesome-cordova-plugins/commit/0a31a374b1a73403785a1e6c9104381ee9761940))
|
||||
|
||||
|
||||
|
||||
# [5.43.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.42.0...v5.43.0) (2022-05-25)
|
||||
|
||||
|
||||
|
||||
# [5.42.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.41.0...v5.42.0) (2022-05-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **deps:** update dependency tslib to v2.4.0 ([#4154](https://github.com/danielsogl/awesome-cordova-plugins/issues/4154)) ([bae0a8d](https://github.com/danielsogl/awesome-cordova-plugins/commit/bae0a8dbc85fb751470365080b1a35689d9d6be4))
|
||||
* **keychain:** mark useTouchID as required ([#4182](https://github.com/danielsogl/awesome-cordova-plugins/issues/4182)) ([6b2c1fd](https://github.com/danielsogl/awesome-cordova-plugins/commit/6b2c1fd32e068a25dccd0f9fda5357fdc9eb7c26))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **dynamsoft barcode scanner:** update plugin ([#4176](https://github.com/danielsogl/awesome-cordova-plugins/issues/4176)) ([7e2452b](https://github.com/danielsogl/awesome-cordova-plugins/commit/7e2452b6ad0526247dcb310d37f819026c90451c))
|
||||
* **hyper-track:** add new functions ([#4128](https://github.com/danielsogl/awesome-cordova-plugins/issues/4128)) ([26a8cbe](https://github.com/danielsogl/awesome-cordova-plugins/commit/26a8cbe437f63e8dd80b9fac643ee68070b9a1cf))
|
||||
* **in-app-purchase-2:** add launchPriceChangeConfirmationFlow ([#4127](https://github.com/danielsogl/awesome-cordova-plugins/issues/4127)) ([c2b01e0](https://github.com/danielsogl/awesome-cordova-plugins/commit/c2b01e051086d87747597ac3554feaa8772a71d1))
|
||||
|
||||
|
||||
### Reverts
|
||||
|
||||
* Revert "chore(deps): update dependency jest to v28 (#4159)" (#4163) ([710cf7a](https://github.com/danielsogl/awesome-cordova-plugins/commit/710cf7acc0d12c981adb9b00db96945e4348c643)), closes [#4159](https://github.com/danielsogl/awesome-cordova-plugins/issues/4159) [#4163](https://github.com/danielsogl/awesome-cordova-plugins/issues/4163)
|
||||
|
||||
|
||||
|
||||
# [5.41.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.40.0...v5.41.0) (2022-04-02)
|
||||
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
* [LocalBackup](plugins/local-backup.md)
|
||||
* [Native Geocoder](plugins/native-geocoder.md)
|
||||
* [Coordinates](plugins/hyper-track.md)
|
||||
* [HTTP](plugins/approov-advanced-http.md)
|
||||
* [ApproovHTTP](plugins/approov-advanced-http.md)
|
||||
* [Answers](plugins/fabric.md)
|
||||
* [UriHelper](plugins/nfc.md)
|
||||
* [Dialogs](plugins/dialogs.md)
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
# Dynamsoft Barcode Scanner
|
||||
|
||||
```
|
||||
$ git clone https://github.com/Dynamsoft/cordova-plugin-dbr/
|
||||
$ ionic cordova plugin add cordova-plugin-dbr
|
||||
$ ionic cordova plugin add cordova-plugin-dynamsoft-barcode-reader
|
||||
$ npm install @awesome-cordova-plugins/dynamsoft-barcode-scanner
|
||||
```
|
||||
|
||||
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/dynamsoft-barcode-scanner/)
|
||||
|
||||
Plugin Repo: [https://github.com/Dynamsoft/cordova-plugin-dbr/](https://github.com/Dynamsoft/cordova-plugin-dbr/)
|
||||
Plugin Repo: [https://github.com/xulihang/cordova-plugin-dynamsoft-barcode-reader](https://github.com/xulihang/cordova-plugin-dynamsoft-barcode-reader)
|
||||
|
||||
The Dynamsoft Barcode Scanner Plugin opens a camera view and automatically scans a barcode, returning the data back to you.
|
||||
The Dynamsoft Barcode Scanner Plugin can read barcodes from images as well as camera previews.
|
||||
|
||||
## Supported platforms
|
||||
|
||||
- Android
|
||||
- iOS
|
||||
* Android
|
||||
* iOS
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
# Dynamsoft Barcode Scanner
|
||||
# dynamsoft-barcode-scanner
|
||||
|
||||
```
|
||||
$ git clone https://github.com/Dynamsoft/cordova-plugin-dbr/
|
||||
$ ionic cordova plugin add cordova-plugin-dbr
|
||||
$ ''
|
||||
$ npm install @awesome-cordova-plugins/dynamsoft-barcode-scanner
|
||||
```
|
||||
|
||||
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/dynamsoft-barcode-scanner/)
|
||||
|
||||
Plugin Repo: [https://github.com/Dynamsoft/cordova-plugin-dbr/](https://github.com/Dynamsoft/cordova-plugin-dbr/)
|
||||
Plugin Repo: [https://github.com/xulihang/cordova-plugin-dynamsoft-barcode-reader](https://github.com/xulihang/cordova-plugin-dynamsoft-barcode-reader)
|
||||
|
||||
The Dynamsoft Barcode Scanner Plugin opens a camera view and automatically scans a barcode, returning the data back to you.
|
||||
This plugin scans barcodes using Dynamsoft Barcode Reader
|
||||
|
||||
## Supported platforms
|
||||
|
||||
- Android
|
||||
- iOS
|
||||
- iOS
|
||||
|
||||
|
||||
|
||||
|
||||
20
docs/plugins/file-md5/README.md
Normal file
20
docs/plugins/file-md5/README.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# File MD5
|
||||
|
||||
```
|
||||
$ ionic cordova plugin add cordova-plugin-file-md5
|
||||
$ npm install @awesome-cordova-plugins/file-md5
|
||||
```
|
||||
|
||||
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/file-md5/)
|
||||
|
||||
Plugin Repo: [https://github.com/mramonlopez/cordova-plugin-file-md5](https://github.com/mramonlopez/cordova-plugin-file-md5)
|
||||
|
||||
This plugin reads large files in chunks and build the md5sum incrementally.
|
||||
|
||||
## Supported platforms
|
||||
|
||||
- Android
|
||||
- iOS
|
||||
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ Go to firebase console and export google-services.json and GoogleService-Info.pl
|
||||
NOTE: on iOS in order to collect demographic, age, gender data etc. you should additionally include AdSupport.framework into your project.
|
||||
|
||||
## Using capacitor?
|
||||
For Android you'll have to add in __android/app/src/main/AndroidManfiest.xml__ under `<application>`
|
||||
For Android you'll have to add in __android/app/src/main/AndroidManifest.xml__ under `<application>`
|
||||
```
|
||||
<meta-data
|
||||
tools:replace="android:value"
|
||||
|
||||
@@ -13,7 +13,7 @@ Get and set data in the iOS Keychain
|
||||
|
||||
Requires Cordova plugin: `cordova-plugin-ios-keychain`. For more info, please see the [Keychain plugin docs](https://github.com/ionic-team/cordova-plugin-ios-keychain).
|
||||
|
||||
See also [Secure Storage](https://ionicframework.com/docs/native/secure-storage/) for more supported platforms.
|
||||
See also [Secure Storage](https://ionic.io/docs/secure-storage) for more supported platforms.
|
||||
|
||||
## Supported platforms
|
||||
|
||||
|
||||
20
docs/plugins/lets-cooee/README.md
Normal file
20
docs/plugins/lets-cooee/README.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Lets Cooee
|
||||
|
||||
```
|
||||
$ ionic cordova plugin add @letscooee/cordova-plugin --variable COOEE_APP_ID=appId
|
||||
$ npm install @awesome-cordova-plugins/lets-cooee
|
||||
```
|
||||
|
||||
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/lets-cooee/)
|
||||
|
||||
Plugin Repo: [https://github.com/letscooee/cordova-plugin-cooee](https://github.com/letscooee/cordova-plugin-cooee)
|
||||
|
||||
AI driven Personalised Notifications for Better Customer Engagement
|
||||
|
||||
## Supported platforms
|
||||
|
||||
- Android
|
||||
- iOS
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# SmartlookTimedCustomEventStart
|
||||
plugin add https://github.com/smartlook/cordova-smartlook.git
|
||||
# SmartlookEventTrackingMode
|
||||
ova plugin add https://github.com/smartlook/cordova-smartlook.git
|
||||
$ npm install @awesome-cordova-plugins/smartlook
|
||||
```
|
||||
|
||||
|
||||
20
docs/plugins/zip/README.md
Normal file
20
docs/plugins/zip/README.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Zip
|
||||
|
||||
```
|
||||
$ ionic cordova plugin add cordova-plugin-zip
|
||||
$ npm install @awesome-cordova-plugins/zip
|
||||
```
|
||||
|
||||
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/zip/)
|
||||
|
||||
Plugin Repo: [https://github.com/MobileChromeApps/cordova-plugin-zip](https://github.com/MobileChromeApps/cordova-plugin-zip)
|
||||
|
||||
A Cordova plugin to unzip files in Android and iOS.
|
||||
|
||||
## Supported platforms
|
||||
|
||||
- Android
|
||||
- iOS
|
||||
|
||||
|
||||
|
||||
1536
package-lock.json
generated
1536
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
40
package.json
40
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "awesome-cordova-plugins",
|
||||
"version": "5.41.0",
|
||||
"version": "5.45.0",
|
||||
"description": "Native plugin wrappers for Cordova and Ionic with TypeScript, ES6+, Promise and Observable support",
|
||||
"homepage": "https://awesome-cordova-plugins.com",
|
||||
"author": "Daniel Sogl <me@danielsogl.com> (https://danielsogl.com)",
|
||||
@@ -24,7 +24,7 @@
|
||||
"prettier": "prettier --write --ignore-unknown \"**/*\""
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": "2.3.1"
|
||||
"tslib": "2.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular/common": "11.2.14",
|
||||
@@ -33,43 +33,43 @@
|
||||
"@angular/core": "11.2.14",
|
||||
"@types/cordova": "0.0.34",
|
||||
"@types/fs-extra": "9.0.13",
|
||||
"@types/jest": "27.4.1",
|
||||
"@types/lodash": "4.14.181",
|
||||
"@types/node": "16.11.26",
|
||||
"@types/jest": "27.5.2",
|
||||
"@types/lodash": "4.14.184",
|
||||
"@types/node": "16.11.57",
|
||||
"@types/rimraf": "3.0.2",
|
||||
"@types/webpack": "5.28.0",
|
||||
"@typescript-eslint/eslint-plugin": "5.17.0",
|
||||
"@typescript-eslint/parser": "5.17.0",
|
||||
"@typescript-eslint/eslint-plugin": "5.36.1",
|
||||
"@typescript-eslint/parser": "5.36.1",
|
||||
"async-promise-queue": "1.0.5",
|
||||
"conventional-changelog-cli": "2.2.2",
|
||||
"cz-conventional-changelog": "3.3.0",
|
||||
"dgeni": "0.4.14",
|
||||
"dgeni-packages": "0.16.10",
|
||||
"eslint": "8.12.0",
|
||||
"eslint": "8.23.0",
|
||||
"eslint-config-prettier": "8.5.0",
|
||||
"eslint-plugin-jsdoc": "38.1.6",
|
||||
"fs-extra": "10.0.1",
|
||||
"eslint-plugin-jsdoc": "39.3.6",
|
||||
"fs-extra": "10.1.0",
|
||||
"gulp": "4.0.2",
|
||||
"gulp-rename": "2.0.0",
|
||||
"gulp-replace": "1.1.3",
|
||||
"husky": "7.0.4",
|
||||
"husky": "8.0.1",
|
||||
"is-ci": "3.0.1",
|
||||
"jest": "27.5.1",
|
||||
"lint-staged": "12.3.7",
|
||||
"lint-staged": "13.0.3",
|
||||
"lodash": "4.17.21",
|
||||
"minimist": "1.2.6",
|
||||
"prettier": "2.6.2",
|
||||
"prettier": "2.7.1",
|
||||
"rimraf": "3.0.2",
|
||||
"rollup": "2.70.1",
|
||||
"rollup": "2.79.0",
|
||||
"rxjs": "6.6.7",
|
||||
"terser-webpack-plugin": "5.3.1",
|
||||
"ts-jest": "27.1.4",
|
||||
"ts-node": "10.7.0",
|
||||
"terser-webpack-plugin": "5.3.6",
|
||||
"ts-jest": "27.1.5",
|
||||
"ts-node": "10.9.1",
|
||||
"typescript": "4.1.6",
|
||||
"unminified-webpack-plugin": "3.0.0",
|
||||
"webpack": "5.71.0",
|
||||
"winston": "3.6.0",
|
||||
"zone.js": "0.11.5"
|
||||
"webpack": "5.74.0",
|
||||
"winston": "3.8.1",
|
||||
"zone.js": "0.11.8"
|
||||
},
|
||||
"jest": {
|
||||
"testEnvironment": "jsdom",
|
||||
|
||||
@@ -65,6 +65,8 @@ export class AdjustConfig {
|
||||
private allowiAdInfoReading: boolean = null; // iOS only
|
||||
private allowIdfaReading: boolean = null; // iOS only
|
||||
private allowAdServicesInfoReading: boolean = null; // iOS only
|
||||
private coppaCompliantEnabled: boolean = null;
|
||||
private playStoreKidsAppEnabled: boolean = null; // Android only
|
||||
|
||||
private attributionCallback: (attribution: AdjustAttribution) => void = null;
|
||||
private eventTrackingSucceededCallback: (event: AdjustEventSuccess) => void = null;
|
||||
@@ -119,6 +121,14 @@ export class AdjustConfig {
|
||||
this.eventBufferingEnabled = eventBufferingEnabled;
|
||||
}
|
||||
|
||||
setCoppaCompliantEnabled(coppaCompliantEnabled: boolean) {
|
||||
this.coppaCompliantEnabled = coppaCompliantEnabled;
|
||||
}
|
||||
|
||||
setPlayStoreKidsAppEnabled(playStoreKidsAppEnabled: boolean) {
|
||||
this.playStoreKidsAppEnabled = playStoreKidsAppEnabled;
|
||||
}
|
||||
|
||||
setUserAgent(userAgent: string) {
|
||||
this.userAgent = userAgent;
|
||||
}
|
||||
@@ -454,7 +464,11 @@ export enum AdjustAdRevenueSource {
|
||||
AdRevenueSourceAppLovinMAX = 'applovin_max_sdk',
|
||||
AdRevenueSourceMopub = 'mopub',
|
||||
AdRevenueSourceAdMob = 'admob_sdk',
|
||||
AdRevenueSourceIronsource = 'ironsource_sdk',
|
||||
AdRevenueSourceIronSource = 'ironsource_sdk',
|
||||
AdRevenueSourceAdMost = "admost_sdk",
|
||||
AdRevenueSourceUnity = "unity_sdk",
|
||||
AdRevenueSourceHeliumChartboost = "helium_chartboost_sdk",
|
||||
AdRevenueSourcePublisher = "publisher_sdk",
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -463,6 +477,7 @@ export enum AdjustAdRevenueSource {
|
||||
* This is the Ionic Cordova SDK of Adjust™. You can read more about Adjust™ at adjust.com.
|
||||
*
|
||||
* Requires Cordova plugin: `com.adjust.sdk`. For more info, please see the [Adjust Cordova SDK](https://github.com/adjust/cordova_sdk)
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Adjust, AdjustConfig, AdjustEnvironment } from '@awesome-cordova-plugins/adjust/ngx';
|
||||
@@ -505,6 +520,7 @@ export enum AdjustAdRevenueSource {
|
||||
})
|
||||
@Injectable()
|
||||
export class Adjust extends AwesomeCordovaNativePlugin {
|
||||
|
||||
/**
|
||||
* This method initializes Adjust SDK
|
||||
*
|
||||
@@ -623,7 +639,7 @@ export class Adjust extends AwesomeCordovaNativePlugin {
|
||||
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.
|
||||
* 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 })
|
||||
@@ -670,6 +686,12 @@ export class Adjust extends AwesomeCordovaNativePlugin {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Instruct to Adjust SDK to check current state of att_status
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
checkForNewAttStatus(): void {}
|
||||
|
||||
/**
|
||||
* If you want to access information about a user's current attribution whenever you need it, you can make a call to this function
|
||||
*
|
||||
|
||||
@@ -67,7 +67,10 @@ export class AndroidPermissions extends AwesomeCordovaNativePlugin {
|
||||
BIND_WALLPAPER: 'android.permission.BIND_WALLPAPER',
|
||||
BLUETOOTH: 'android.permission.BLUETOOTH',
|
||||
BLUETOOTH_ADMIN: 'android.permission.BLUETOOTH_ADMIN',
|
||||
BLUETOOTH_ADVERTISE: 'android.permission.BLUETOOTH_ADVERTISE',
|
||||
BLUETOOTH_CONNECT: 'android.permission.BLUETOOTH_CONNECT',
|
||||
BLUETOOTH_PRIVILEGED: 'android.permission.BLUETOOTH_PRIVILEGED',
|
||||
BLUETOOTH_SCAN: 'android.permission.BLUETOOTH_SCAN',
|
||||
BODY_SENSORS: 'android.permission.BODY_SENSORS',
|
||||
BRICK: 'android.permission.BRICK',
|
||||
BROADCAST_PACKAGE_REMOVED: 'android.permission.BROADCAST_PACKAGE_REMOVED',
|
||||
@@ -123,6 +126,7 @@ export class AndroidPermissions extends AwesomeCordovaNativePlugin {
|
||||
MOUNT_UNMOUNT_FILESYSTEMS: 'android.permission.MOUNT_UNMOUNT_FILESYSTEMS',
|
||||
NFC: 'android.permission.NFC',
|
||||
PERSISTENT_ACTIVITY: 'android.permission.PERSISTENT_ACTIVITY',
|
||||
POST_NOTIFICATIONS: 'android.permission.POST_NOTIFICATIONS',
|
||||
PROCESS_OUTGOING_CALLS: 'android.permission.PROCESS_OUTGOING_CALLS',
|
||||
READ_CALENDAR: 'android.permission.READ_CALENDAR',
|
||||
READ_CALL_LOG: 'android.permission.READ_CALL_LOG',
|
||||
@@ -132,6 +136,9 @@ export class AndroidPermissions extends AwesomeCordovaNativePlugin {
|
||||
READ_HISTORY_BOOKMARKS: 'com.android.browser.permission.READ_HISTORY_BOOKMARKS',
|
||||
READ_INPUT_STATE: 'android.permission.READ_INPUT_STATE',
|
||||
READ_LOGS: 'android.permission.READ_LOGS',
|
||||
READ_MEDIA_AUDIO: 'android.permission.READ_MEDIA_AUDIO',
|
||||
READ_MEDIA_IMAGES: 'android.permission.READ_MEDIA_IMAGES',
|
||||
READ_MEDIA_VIDEO: 'android.permission.READ_MEDIA_VIDEO',
|
||||
READ_PHONE_STATE: 'android.permission.READ_PHONE_STATE',
|
||||
READ_PROFILE: 'android.permission.READ_PROFILE',
|
||||
READ_SMS: 'android.permission.READ_SMS',
|
||||
|
||||
@@ -91,9 +91,9 @@ export class Diagnostic extends AwesomeCordovaNativePlugin {
|
||||
* iOS ONLY
|
||||
* Location accuracy authorization
|
||||
*/
|
||||
locationAccuracyAuthorization: {
|
||||
FULL: 'full';
|
||||
REDUCED: 'reduced';
|
||||
locationAccuracyAuthorization = {
|
||||
FULL: 'full',
|
||||
REDUCED: 'reduced',
|
||||
};
|
||||
|
||||
permissionGroups = {
|
||||
|
||||
@@ -50,7 +50,7 @@ export interface DocumentScannerOptions {
|
||||
* This plugin processes images of documents, compensating for perspective.
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { DocumentScanner, DocumentScannerOptions } from '@awesome-cordova-plugins/document-scanner';
|
||||
* import { DocumentScanner, DocumentScannerOptions } from '@awesome-cordova-plugins/document-scanner/ngx';
|
||||
*
|
||||
*
|
||||
* constructor(private documentScanner: DocumentScanner) { }
|
||||
|
||||
@@ -9,98 +9,74 @@ import {
|
||||
} from '@awesome-cordova-plugins/core';
|
||||
import { Observable } from 'rxjs';
|
||||
|
||||
export interface BarcodeScannerOptions {
|
||||
/**
|
||||
* Prefer front camera. Supported on iOS and Android.
|
||||
*/
|
||||
preferFrontCamera?: boolean;
|
||||
|
||||
/**
|
||||
* Show flip camera button. Supported on iOS and Android.
|
||||
*/
|
||||
showFlipCameraButton?: boolean;
|
||||
|
||||
/**
|
||||
* Show torch button. Supported on iOS and Android.
|
||||
*/
|
||||
showTorchButton?: boolean;
|
||||
|
||||
/**
|
||||
* Disable animations. Supported on iOS only.
|
||||
*/
|
||||
disableAnimations?: boolean;
|
||||
|
||||
/**
|
||||
* Disable success beep. Supported on iOS only.
|
||||
*/
|
||||
disableSuccessBeep?: boolean;
|
||||
|
||||
/**
|
||||
* Prompt text. Supported on Android only.
|
||||
*/
|
||||
prompt?: string;
|
||||
|
||||
/**
|
||||
* Formats separated by commas. Defaults to all formats except `PDF_417` and `RSS_EXPANDED`.
|
||||
*/
|
||||
formats?: string;
|
||||
|
||||
/**
|
||||
* Orientation. Supported on Android only. Can be set to `portrait` or `landscape`. Defaults to none so the user can rotate the phone and pick an orientation.
|
||||
*/
|
||||
orientation?: string;
|
||||
|
||||
/**
|
||||
* Launch with the torch switched on (if available). Supported on Android only.
|
||||
*/
|
||||
torchOn?: boolean;
|
||||
|
||||
/**
|
||||
* Save scan history. Defaults to `false`. Supported on Android only.
|
||||
*/
|
||||
saveHistory?: boolean;
|
||||
|
||||
/**
|
||||
* Display scanned text for X ms. 0 suppresses it entirely, default 1500. Supported on Android only.
|
||||
*/
|
||||
resultDisplayDuration?: number;
|
||||
|
||||
/**
|
||||
* Long key for Dynamsoft Barcode Reader
|
||||
*/
|
||||
dynamsoftlicense?: string;
|
||||
/**
|
||||
* dceLicense: License of Dynamsoft Camera Enhancer
|
||||
* resolution: use EnumResolution
|
||||
* rotate: convert frame to bitmap and rotate it
|
||||
*/
|
||||
export interface ScanOptions {
|
||||
dceLicense?: string;
|
||||
resolution?: number;
|
||||
rotate?: boolean;
|
||||
}
|
||||
|
||||
export interface BarcodeScanResult {
|
||||
format: string;
|
||||
cancelled: boolean;
|
||||
text: string;
|
||||
export interface FrameResult {
|
||||
frameWidth: number;
|
||||
frameHeight: number;
|
||||
frameRotation: number;
|
||||
results: BarcodeResult[];
|
||||
}
|
||||
|
||||
export interface BarcodeResult {
|
||||
barcodeText: string;
|
||||
barcodeFormat: string;
|
||||
barcodeBytesBase64?: string;
|
||||
x1: number;
|
||||
x2: number;
|
||||
x3: number;
|
||||
x4: number;
|
||||
y1: number;
|
||||
y2: number;
|
||||
y3: number;
|
||||
y4: number;
|
||||
}
|
||||
|
||||
export enum EnumResolution {
|
||||
RESOLUTION_AUTO = 0,
|
||||
RESOLUTION_480P = 1,
|
||||
RESOLUTION_720P = 2,
|
||||
RESOLUTION_1080P = 3,
|
||||
RESOLUTION_2K = 4,
|
||||
RESOLUTION_4K = 5,
|
||||
}
|
||||
|
||||
/**
|
||||
* @name dynamsoft-barcode-scanner
|
||||
* @description
|
||||
* The Barcode Scanner Plugin opens a camera view and automatically scans a barcode, returning the data back to you.
|
||||
* Requires this Cordova plugin: [BarcodeScanner plugin](https://github.com/Dynamsoft/cordova-plugin-dbr/).
|
||||
* This plugin scans barcodes using Dynamsoft Barcode Reader
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { BarcodeScanner } from '@awesome-cordova-plugins/dynamsoft-barcode-scanner';
|
||||
* import { dynamsoft-barcode-scanner } from '@awesome-cordova-plugins/dynamsoft-barcode-scanner';
|
||||
*
|
||||
*
|
||||
* constructor(private dynamsoft-barcode-scanner: dynamsoft-barcode-scanner) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* const results = await BarcodeScanner.scan({"dynamsoftlicense":"license"});
|
||||
* console.log(results);
|
||||
*
|
||||
* await this.dynamsoft-barcode-scanner.init("license");
|
||||
* this.dynamsoft-barcode-scanner.startScanning("license").subscribe(result => {
|
||||
console.log(result);
|
||||
});
|
||||
*
|
||||
* ```
|
||||
* @interfaces
|
||||
* BarcodeScannerOptions
|
||||
* BarcodeScanResult
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'dynamsoft-barcode-scanner',
|
||||
plugin: 'cordova-plugin-dbr',
|
||||
pluginRef: 'cordova.plugins.barcodeScanner',
|
||||
repo: 'https://github.com/Dynamsoft/cordova-plugin-dbr',
|
||||
plugin: 'cordova-plugin-dynamsoft-barcode-reader',
|
||||
pluginRef: 'cordova.plugins.DBR',
|
||||
repo: 'https://github.com/xulihang/cordova-plugin-dynamsoft-barcode-reader',
|
||||
install: '',
|
||||
installVariables: [],
|
||||
platforms: ['Android', 'iOS'],
|
||||
@@ -108,15 +84,126 @@ export interface BarcodeScanResult {
|
||||
@Injectable()
|
||||
export class BarcodeScanner extends AwesomeCordovaNativePlugin {
|
||||
/**
|
||||
* Open the barcode scanner.
|
||||
*
|
||||
* @param {BarcodeScannerOptions} [options] Optional options to pass to the scanner
|
||||
* @returns {Promise<any>} Returns a Promise that resolves with scanner data, or rejects with an error.
|
||||
* Initialize Dynamsoft Barcode Reader
|
||||
* @param license {string}
|
||||
* @return {Promise<any>} Returns a promise that resolves when the initialization is done
|
||||
*/
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse',
|
||||
successIndex: 1,
|
||||
errorIndex: 2,
|
||||
})
|
||||
scan(options?: BarcodeScannerOptions): Promise<BarcodeScanResult> {
|
||||
init(license: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set up runtime settings
|
||||
* @param settings {string} runtime settings template in JSON
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({
|
||||
successIndex: 1,
|
||||
errorIndex: 2,
|
||||
})
|
||||
initRuntimeSettingsWithString(settings?: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Output runtime settings to JSON string
|
||||
* @return {Promise<String>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
outputSettingsToString(): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* destroy Dynamsoft Barcode Reader
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
destroy(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* start the camera to scan barcodes
|
||||
* @param options {ScanOptions}
|
||||
* @return {Observable<FrameResult>}
|
||||
*/
|
||||
@Cordova({
|
||||
successIndex: 1,
|
||||
errorIndex: 2,
|
||||
observable: true,
|
||||
})
|
||||
startScanning(options?: ScanOptions): Observable<FrameResult> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* stop scanning
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
stopScanning(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* resume scanning
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
resumeScanning(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* pause scanning
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
pauseScanning(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* get resolution like: 1280x720
|
||||
* @return {Promise<string>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
getResolution(): Promise<string> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* switch torch
|
||||
* @param desiredStatus {string} on or off
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
switchTorch(desiredStatus: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* set zoom
|
||||
* @param factor {number} zoom factor
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
setZoom(factor: number): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* set focus
|
||||
* @param point focus point
|
||||
* @return {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova({ successIndex: 1, errorIndex: 2 })
|
||||
setFocus(point: { x: number; y: number }): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
43
src/@awesome-cordova-plugins/plugins/file-md5/index.ts
Normal file
43
src/@awesome-cordova-plugins/plugins/file-md5/index.ts
Normal file
@@ -0,0 +1,43 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, AwesomeCordovaNativePlugin } from '@awesome-cordova-plugins/core';
|
||||
|
||||
/**
|
||||
* @name File MD5
|
||||
* @description
|
||||
* This plugin reads large files in chunks and build the md5sum incrementally.
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { FileMD5 } from '@awesome-cordova-plugins/file-md5/nx';
|
||||
*
|
||||
*
|
||||
* constructor(private fileMD5: FileMD5) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
*
|
||||
* this.fileMD5.file(fileEntry)
|
||||
* .then((md5sum: string) => console.log(md5sum))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'FileMD5',
|
||||
plugin: 'cordova-plugin-file-md5',
|
||||
pluginRef: 'md5chksum',
|
||||
repo: 'https://github.com/mramonlopez/cordova-plugin-file-md5',
|
||||
platforms: ['Android', 'iOS'],
|
||||
})
|
||||
@Injectable()
|
||||
export class FileMD5 extends AwesomeCordovaNativePlugin {
|
||||
/**
|
||||
* Get MD5 checksum from a file
|
||||
*
|
||||
* @param fileEntry {FileEntry} File entry is a org.apache.cordova.file.FileEntry
|
||||
* @returns {Promise<any>} Promise with md5sum
|
||||
*/
|
||||
@Cordova()
|
||||
file(fileEntry: any): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -12,7 +12,7 @@ import { Cordova, AwesomeCordovaNativePlugin, Plugin } from '@awesome-cordova-pl
|
||||
* NOTE: on iOS in order to collect demographic, age, gender data etc. you should additionally include AdSupport.framework into your project.
|
||||
*
|
||||
* ## Using capacitor?
|
||||
* For Android you'll have to add in __android/app/src/main/AndroidManfiest.xml__ under `<application>`
|
||||
* For Android you'll have to add in __android/app/src/main/AndroidManifest.xml__ under `<application>`
|
||||
* ```
|
||||
* <meta-data
|
||||
* tools:replace="android:value"
|
||||
|
||||
@@ -112,7 +112,19 @@ export interface FirebaseUser {
|
||||
*/
|
||||
name?: string;
|
||||
}
|
||||
|
||||
export interface MessagePayload {
|
||||
title: string;
|
||||
body: string;
|
||||
collapse_key: string;
|
||||
from: string;
|
||||
id: string;
|
||||
messageType: string;
|
||||
notification_foreground: string;
|
||||
sent_time: string;
|
||||
show_notification: string;
|
||||
ttl: string;
|
||||
tap?: 'background' | 'foreground';
|
||||
}
|
||||
/**
|
||||
* @name Firebase X
|
||||
* @description
|
||||
@@ -237,7 +249,7 @@ export class FirebaseX extends AwesomeCordovaNativePlugin {
|
||||
@Cordova({
|
||||
observable: true,
|
||||
})
|
||||
onMessageReceived(): Observable<any> {
|
||||
onMessageReceived<T = { [key: string]: string }>(): Observable<MessagePayload & T> {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { AwesomeCordovaNativePlugin, Cordova, Plugin } from '@awesome-cordova-plugins/core';
|
||||
|
||||
const hypertrackIonicPluginVersion = "0.2.0"
|
||||
// Minimal cordova-plugin-hypertrack-v3 version: 0.5.0
|
||||
@Plugin({
|
||||
pluginName: 'cordova-plugin-hypertrack-v3',
|
||||
plugin: 'cordova-plugin-hypertrack-v3',
|
||||
@@ -39,6 +41,9 @@ interface FailureHandler {
|
||||
interface SuccessHandler {
|
||||
(): any;
|
||||
}
|
||||
interface LocationReceiver {
|
||||
(location: CordovaLatestLocationResult): any;
|
||||
}
|
||||
|
||||
// SDK instance that exposed from Cordova utilizes usage of callbacks, so we
|
||||
// wrap it with adapter to avoid mix of callbacks and Promises
|
||||
@@ -64,17 +69,23 @@ interface HyperTrackCordova {
|
||||
syncDeviceSettings(success: SuccessHandler, error: FailureHandler): void;
|
||||
start(success: SuccessHandler, error: FailureHandler): void;
|
||||
stop(success: SuccessHandler, error: FailureHandler): void;
|
||||
getLatestLocation(success: LocationReceiver, error: FailureHandler): void;
|
||||
getCurrentLocation(success: LocationReceiver, 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) {
|
||||
constructor(public latitude: number, public 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');
|
||||
throw new CoordinatesValidationError('latitude and longitude should be of correct values');
|
||||
}
|
||||
}
|
||||
|
||||
public toString = (): string => {
|
||||
return JSON.stringify(this);
|
||||
}
|
||||
}
|
||||
|
||||
/** A blocker is an obstacle that needs to be resolved to achieve reliable tracking. */
|
||||
@@ -89,6 +100,40 @@ export interface Blocker {
|
||||
resolve: () => void;
|
||||
}
|
||||
|
||||
export type CordovaLatestLocationResult = {
|
||||
type: "location",
|
||||
location: Coordinates,
|
||||
} | {
|
||||
type: "outage",
|
||||
outage: {
|
||||
code: number,
|
||||
name: keyof typeof Outage
|
||||
}
|
||||
}
|
||||
|
||||
export type LocationResult = {
|
||||
type: LocationResultType.LOCATION,
|
||||
value: Coordinates
|
||||
} |
|
||||
{
|
||||
type: LocationResultType.OUTAGE,
|
||||
value: Outage
|
||||
}
|
||||
|
||||
export enum LocationResultType {
|
||||
LOCATION, OUTAGE
|
||||
}
|
||||
|
||||
export enum Outage {
|
||||
MISSING_LOCATION_PERMISSION,
|
||||
MISSING_ACTIVITY_PERMISSION,
|
||||
LOCATION_SERVICE_DISABLED,
|
||||
NOT_TRACKING,
|
||||
START_HAS_NOT_FINISHED,
|
||||
NO_GPS_SIGNAL,
|
||||
RESTART_REQUIRED
|
||||
}
|
||||
|
||||
/**
|
||||
* @usage
|
||||
* ```typescript
|
||||
@@ -130,6 +175,7 @@ export class HyperTrack {
|
||||
* @see {@link https://dashboard.hypertrack.com/setup}.
|
||||
*/
|
||||
static initialize(publishableKey: string): Promise<HyperTrack> {
|
||||
console.log(`Hypertrack Ionic plugin version ${hypertrackIonicPluginVersion}`)
|
||||
return new Promise((resolve, reject) => {
|
||||
new HyperTrackPlugin()
|
||||
.initialize(publishableKey)
|
||||
@@ -286,5 +332,49 @@ export class HyperTrack {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolves latest device location that was sent by the SDK.
|
||||
* Only available for Android platform.
|
||||
* */
|
||||
getLatestLocation(): Promise<LocationResult> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.getLatestLocation(
|
||||
locationResult => resolve(this.handleLocationResult(locationResult)),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolves latest device location from system location provider.
|
||||
* Only available for Android platform.
|
||||
* */
|
||||
getCurrentLocation(): Promise<LocationResult> {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.cordovaInstanceHandle.getCurrentLocation(
|
||||
locationResult => resolve(this.handleLocationResult(locationResult)),
|
||||
err => reject(err)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
private handleLocationResult(locationResult: CordovaLatestLocationResult): LocationResult {
|
||||
switch (locationResult.type) {
|
||||
case "location": {
|
||||
return {
|
||||
type: LocationResultType.LOCATION,
|
||||
value: locationResult.location
|
||||
}
|
||||
}
|
||||
case "outage": {
|
||||
const outage = Outage[locationResult.outage.name]
|
||||
return {
|
||||
type: LocationResultType.OUTAGE,
|
||||
value: outage
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private constructor(private cordovaInstanceHandle: HyperTrackCordova) {}
|
||||
}
|
||||
|
||||
@@ -745,7 +745,13 @@ export class InAppPurchase2 extends AwesomeCordovaNativePlugin {
|
||||
products: IAPProducts;
|
||||
|
||||
@CordovaProperty()
|
||||
validator: string | ((url: string | IAPProduct, callback: Function) => void);
|
||||
validator:
|
||||
| string
|
||||
| ((url: string | IAPProduct, callback: Function) => void)
|
||||
| {
|
||||
url: string;
|
||||
headers?: { [token: string]: string };
|
||||
};
|
||||
|
||||
@CordovaProperty()
|
||||
applicationUsername: string | (() => string);
|
||||
@@ -915,4 +921,11 @@ export class InAppPurchase2 extends AwesomeCordovaNativePlugin {
|
||||
/** Opens the Manage Billing page (AppStore, Play, Microsoft, ...), where the user can update his/her payment methods. */
|
||||
@Cordova({ sync: true })
|
||||
manageBilling(): void {}
|
||||
|
||||
/** Open the subscription price change notification workflow. (Play) See: https://developer.android.com/google/play/billing/subscriptions#price-change-communicate */
|
||||
@Cordova({ sync: true })
|
||||
launchPriceChangeConfirmationFlow(
|
||||
productId: string,
|
||||
callback: (status: 'OK' | 'UnknownProduct' | 'UserCanceled') => void
|
||||
): void {}
|
||||
}
|
||||
|
||||
@@ -246,4 +246,14 @@ export class Intercom extends AwesomeCordovaNativePlugin {
|
||||
setBottomPadding(bottomPadding: string | number): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Programmatically display a Survey
|
||||
* @param surveyId {string}
|
||||
* @returns {Promise<any>} Returns a promise
|
||||
*/
|
||||
@Cordova()
|
||||
displaySurvey(surveyId: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import { Cordova, AwesomeCordovaNativePlugin, Plugin } from '@awesome-cordova-pl
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-ios-keychain`. For more info, please see the [Keychain plugin docs](https://github.com/ionic-team/cordova-plugin-ios-keychain).
|
||||
*
|
||||
* See also [Secure Storage](https://ionicframework.com/docs/native/secure-storage/) for more supported platforms.
|
||||
* See also [Secure Storage](https://ionic.io/docs/secure-storage) for more supported platforms.
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Keychain } from '@awesome-cordova-plugins/keychain/ngx';
|
||||
@@ -17,7 +17,7 @@ import { Cordova, AwesomeCordovaNativePlugin, Plugin } from '@awesome-cordova-pl
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* this.keychain.set(key, value).then(() => {
|
||||
* this.keychain.set(key, value, false).then(() => {
|
||||
* this.keychain.get(key)
|
||||
* .then(value => console.log('Got value', value))
|
||||
* .catch(err => console.error('Error getting', err));
|
||||
@@ -57,7 +57,7 @@ export class Keychain extends AwesomeCordovaNativePlugin {
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse',
|
||||
})
|
||||
set(key: string, value: string | number | boolean, useTouchID?: boolean): Promise<any> {
|
||||
set(key: string, value: string | number | boolean, useTouchID: boolean): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
89
src/@awesome-cordova-plugins/plugins/lets-cooee/index.ts
Normal file
89
src/@awesome-cordova-plugins/plugins/lets-cooee/index.ts
Normal file
@@ -0,0 +1,89 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Plugin, Cordova, AwesomeCordovaNativePlugin } from '@awesome-cordova-plugins/core';
|
||||
import { Observable } from 'rxjs';
|
||||
|
||||
/**
|
||||
* @name Lets Cooee
|
||||
* @description
|
||||
* AI driven Personalised Notifications for Better Customer Engagement
|
||||
*
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Cooee } from '@awesome-cordova-plugins/lets-cooee/nx';
|
||||
*
|
||||
*
|
||||
* constructor(private cooee: Cooee) { }
|
||||
*
|
||||
* ...
|
||||
*
|
||||
*
|
||||
* this.cooee.functionName('Hello', 123)
|
||||
* .then((res: any) => console.log(res))
|
||||
* .catch((error: any) => console.error(error));
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Cooee',
|
||||
plugin: '@letscooee/cordova-plugin',
|
||||
pluginRef: 'cordova.plugins.Cooee',
|
||||
repo: 'https://github.com/letscooee/cordova-plugin-cooee',
|
||||
install: 'ionic cordova plugin add @letscooee/cordova-plugin --variable COOEE_APP_ID=appId',
|
||||
installVariables: ['COOEE_APP_ID'],
|
||||
platforms: ['Android', 'iOS'],
|
||||
})
|
||||
@Injectable()
|
||||
export class Cooee extends AwesomeCordovaNativePlugin {
|
||||
/**
|
||||
* Send the given user data and user properties to the server.
|
||||
* @return {Promise<any>} Returns a promise so user can be notified.
|
||||
* @param eventName {string} Name of the event
|
||||
* @param eventProperties {Record<string, any>} Properties of the event
|
||||
*/
|
||||
@Cordova()
|
||||
sendEvent(eventName: string, eventProperties: Record<string, any>): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Send the given user data and user properties to the server.
|
||||
* @return {Promise<any>} Returns a promise so user can be notified.
|
||||
* @param userProfile {Record<string, any>} User data to send to the server
|
||||
*/
|
||||
@Cordova()
|
||||
updateUserProfile(userProfile: Record<string, any>): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Send the given screen name with every event.
|
||||
* @return {Promise<any>} Returns a promise so user can be notified.
|
||||
* @param screenName {string} Screen name to send to the server
|
||||
*/
|
||||
@Cordova()
|
||||
setCurrentScreen(screenName: string): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Provide Cooee's userID assigned to the current user.
|
||||
* @return {Promise<any>} Returns a promise with userId.
|
||||
*/
|
||||
@Cordova()
|
||||
getUserID(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides callback for the onCooeeCTAListener event.
|
||||
* @return {Observable<Any>} Returns an observable record.
|
||||
*/
|
||||
@Cordova({
|
||||
eventObservable: true,
|
||||
event: 'onCooeeCTAListener',
|
||||
element: document,
|
||||
})
|
||||
addCooeeCTAListener(): Observable<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -15,6 +15,8 @@ export type Event =
|
||||
| 'userUpdated'
|
||||
| 'personalized'
|
||||
| 'depersonalized'
|
||||
| 'inAppChat.availabilityUpdated'
|
||||
| 'inAppChat.unreadMessageCounterUpdated'
|
||||
| 'deeplink';
|
||||
|
||||
export interface CustomEvent {
|
||||
@@ -32,7 +34,7 @@ export interface Configuration {
|
||||
/**
|
||||
* Message storage save callback
|
||||
*/
|
||||
messageStorage?: string;
|
||||
messageStorage?: CustomMessageStorage;
|
||||
defaultMessageStorage?: boolean;
|
||||
ios?: {
|
||||
notificationTypes?: string[]; // ['alert', 'badge', 'sound']
|
||||
@@ -43,6 +45,15 @@ export interface Configuration {
|
||||
notificationIcon?: string; // a resource name for a status bar icon (without extension), located in '/platforms/android/app/src/main/res/mipmap'
|
||||
multipleNotifications?: boolean; // set to 'true' to enable multiple notifications
|
||||
notificationAccentColor?: string; // set to hex color value in format '#RRGGBB' or '#AARRGGBB'
|
||||
firebaseOptions?: {
|
||||
apiKey: string;
|
||||
applicationId: string;
|
||||
databaseUrl?: string;
|
||||
gaTrackingId?: string;
|
||||
gcmSenderId?: string;
|
||||
storageBucket?: string;
|
||||
projectId: string;
|
||||
};
|
||||
};
|
||||
privacySettings?: {
|
||||
applicationCodePersistingDisabled?: boolean;
|
||||
@@ -52,10 +63,10 @@ export interface Configuration {
|
||||
};
|
||||
notificationCategories?: [
|
||||
{
|
||||
identifier?: string;
|
||||
identifier: string;
|
||||
actions?: [
|
||||
{
|
||||
identifier?: string;
|
||||
identifier: string;
|
||||
title?: string;
|
||||
foreground?: boolean;
|
||||
authenticationRequired?: boolean;
|
||||
@@ -71,7 +82,7 @@ export interface Configuration {
|
||||
}
|
||||
|
||||
export interface UserData {
|
||||
externalUserId: string;
|
||||
externalUserId?: string;
|
||||
firstName?: string;
|
||||
lastName?: string;
|
||||
middleName?: string;
|
||||
@@ -117,6 +128,22 @@ export interface PersonalizeContext {
|
||||
forceDepersonalize?: boolean;
|
||||
}
|
||||
|
||||
export interface GeoData {
|
||||
area: GeoArea;
|
||||
}
|
||||
|
||||
export interface GeoArea {
|
||||
id: string;
|
||||
center: GeoCenter;
|
||||
radius: number;
|
||||
title: string;
|
||||
}
|
||||
|
||||
export interface GeoCenter {
|
||||
lat: number;
|
||||
lon: number;
|
||||
}
|
||||
|
||||
export interface Message {
|
||||
messageId: string;
|
||||
title?: string;
|
||||
@@ -138,12 +165,14 @@ export interface Message {
|
||||
browserUrl?: string;
|
||||
deeplink?: string;
|
||||
webViewUrl?: string;
|
||||
inAppOpenTitle?: string | undefined;
|
||||
inAppDismissTitle?: string;
|
||||
}
|
||||
|
||||
export interface MobileMessagingError {
|
||||
code: string;
|
||||
message: string;
|
||||
description: string;
|
||||
domain?: string;
|
||||
}
|
||||
|
||||
export interface ChatConfig {
|
||||
@@ -174,6 +203,62 @@ export class DefaultMessageStorage {
|
||||
}
|
||||
}
|
||||
|
||||
export class CustomMessageStorage {
|
||||
/**
|
||||
* Will be called by the plugin when messages are received and it's time to save them to the storage
|
||||
*
|
||||
* @param array of message objects to save to storage
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
save(messages: Message[]) {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Will be called by the plugin to find a message by message id
|
||||
*
|
||||
* @param callback has to be called on completion with one parameter - found message object
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
find(messageId: string, callback: (message: Message) => void) {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Will be called by the plugin to find all messages in the storage
|
||||
*
|
||||
* @param callback has to be called on completion with one parameter - an array of available messages
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
findAll(callback: (messages: Message[]) => void) {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Will be called by the plugin when its time to initialize the storage
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
start() {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Will be called by the plugin when its time to deinitialize the storage
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
stop() {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
export interface ChatSettingsIOS {
|
||||
title: string;
|
||||
sendButtonColor: string;
|
||||
navigationBarItemsColor: string;
|
||||
navigationBarColor: string;
|
||||
navigationBarTitleColor: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name Mobile Messaging
|
||||
* @description
|
||||
@@ -472,4 +557,33 @@ export class MobileMessaging extends AwesomeCordovaNativePlugin {
|
||||
showChat(config?: ChatConfig): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Setup chat settings for iOS only
|
||||
*
|
||||
* @param settings
|
||||
*/
|
||||
@Cordova()
|
||||
setupiOSChatSettings(settings: ChatSettingsIOS): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns unread in-app chat push messages counter.
|
||||
* The counter increments each time the application receives in-app chat push message
|
||||
* (this usually happens when chat screen is inactive or the application is in background/terminated state).
|
||||
*/
|
||||
@Cordova({ sync: true })
|
||||
getMessageCounter(onResult: (counter: number) => void) {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* MobileMessaging plugin automatically resets the counter to 0 whenever user opens the in-app chat screen.
|
||||
* However, use the following API in case you need to manually reset the counter.
|
||||
*/
|
||||
@Cordova()
|
||||
resetMessageCounter() {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1663,4 +1663,13 @@ export class UnviredCordovaSDK extends AwesomeCordovaNativePlugin {
|
||||
registerForPushNotification(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Regenerates the JWT token used for communicating with the UMP server.
|
||||
* The updated token will be available via the registered NotificationListener's callback |JWTTokenReceived|
|
||||
*/
|
||||
@Cordova()
|
||||
refreshJWTToken(): Promise<any> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,12 +29,14 @@ export interface ChannelSubscriptionListEditor {
|
||||
apply(success: () => void, failure: (message: string) => void): ChannelSubscriptionListEditor;
|
||||
}
|
||||
|
||||
export type ContactSubscriptionScope = 'app' | 'email' | 'push' | 'sms';
|
||||
|
||||
/**
|
||||
* Interface for UAirship ContactSubscriptionList Editor
|
||||
*/
|
||||
export interface ContactSubscriptionListEditor {
|
||||
subscribe(subscriptionListID: string, contactScope: 'APP' | 'EMAIL'): ContactSubscriptionListEditor;
|
||||
unsubscribe(subscriptionListID: string, contactScope: 'APP' | 'EMAIL'): ContactSubscriptionListEditor;
|
||||
subscribe(subscriptionListID: string, contactScope: ContactSubscriptionScope): ContactSubscriptionListEditor;
|
||||
unsubscribe(subscriptionListID: string, contactScope: ContactSubscriptionScope): ContactSubscriptionListEditor;
|
||||
apply(success: () => void, failure: (message: string) => void): ContactSubscriptionListEditor;
|
||||
}
|
||||
|
||||
@@ -630,10 +632,10 @@ export class UrbanAirShip extends AwesomeCordovaNativePlugin {
|
||||
* @param {string} failure.message The error message.
|
||||
*/
|
||||
@Cordova({
|
||||
successIndex: 1,
|
||||
errorIndex: 2,
|
||||
successIndex: 0,
|
||||
errorIndex: 1,
|
||||
})
|
||||
getChannelSubscriptionLists(): Promise<any> {
|
||||
getChannelSubscriptionLists(): Promise<string[]> {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -646,10 +648,10 @@ export class UrbanAirShip extends AwesomeCordovaNativePlugin {
|
||||
* @param {string} failure.message The error message.
|
||||
*/
|
||||
@Cordova({
|
||||
successIndex: 1,
|
||||
errorIndex: 2,
|
||||
successIndex: 0,
|
||||
errorIndex: 1,
|
||||
})
|
||||
getContactSubscriptionLists(): Promise<any> {
|
||||
getContactSubscriptionLists(): Promise<string[]> {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -663,7 +665,7 @@ export class UrbanAirShip extends AwesomeCordovaNativePlugin {
|
||||
* @param {string} failure.message The error message.
|
||||
*/
|
||||
@Cordova()
|
||||
setAssociatedIdentifier(key: string, identifier: string): Promise<any> {
|
||||
setAssociatedIdentifier(key: string, identifier: string): Promise<void> {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
43
src/@awesome-cordova-plugins/plugins/zip/index.ts
Normal file
43
src/@awesome-cordova-plugins/plugins/zip/index.ts
Normal file
@@ -0,0 +1,43 @@
|
||||
import { AwesomeCordovaNativePlugin, Cordova, Plugin } from '@awesome-cordova-plugins/core';
|
||||
|
||||
import { Injectable } from '@angular/core';
|
||||
|
||||
/**
|
||||
* @name Zip
|
||||
* @description
|
||||
* A Cordova plugin to unzip files in Android and iOS.
|
||||
* @usage
|
||||
* ```typescript
|
||||
* import { Zip } from '@awesome-cordova-plugins/zip/nx'
|
||||
* ...
|
||||
*
|
||||
* const result = await Zip.unzip('path/to/source.zip', 'path/to/dest', (progress) =>
|
||||
* console.log('Unzipping, ' + Math.round((progress.loaded / progress.total) * 100) + '%')
|
||||
* );
|
||||
*
|
||||
* if(result === 0) console.log('SUCCESS');
|
||||
* if(result === -1) console.log('FAILED');
|
||||
*
|
||||
* ```
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Zip',
|
||||
plugin: 'cordova-plugin-zip',
|
||||
pluginRef: 'zip',
|
||||
repo: 'https://github.com/MobileChromeApps/cordova-plugin-zip',
|
||||
platforms: ['Android', 'iOS'],
|
||||
})
|
||||
@Injectable()
|
||||
export class Zip extends AwesomeCordovaNativePlugin {
|
||||
/**
|
||||
* Extracts files from a ZIP archive
|
||||
* @param {string} sourceZip Source ZIP file
|
||||
* @param {string} destFolder Destination folder
|
||||
* @param {Function} onProgress optional callback to be called on progress update
|
||||
* @returns {Promise<number>} returns a promise that resolves with a number. 0 is success, -1 is error
|
||||
*/
|
||||
@Cordova()
|
||||
unzip(sourceZip: string, destFolder: string, onProgress?: Function): Promise<number> {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -17,5 +17,9 @@
|
||||
"sourceMap": true
|
||||
},
|
||||
"include": ["src/@awesome-cordova-plugins/core/**/*.ts"],
|
||||
"exclude": ["node_modules", "src/@awesome-cordova-plugins/core/**/*.spec.ts"]
|
||||
"exclude": ["node_modules", "src/@awesome-cordova-plugins/core/**/*.spec.ts"],
|
||||
"angularCompilerOptions": {
|
||||
"genDir": "aot",
|
||||
"compilationMode": "partial"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
},
|
||||
"include": ["src/@awesome-cordova-plugins/plugins/**/*.ts"],
|
||||
"angularCompilerOptions": {
|
||||
"genDir": "aot"
|
||||
"genDir": "aot",
|
||||
"compilationMode": "partial"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user