Compare commits

..

67 Commits

Author SHA1 Message Date
Daniel Sogl
093fda8f74 5.38.0 2022-01-27 08:35:11 +00:00
renovate[bot]
9ba02fe567 chore(deps): update dependency eslint-plugin-jsdoc to v37.7.0 (#4003)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-27 09:34:47 +01:00
renovate[bot]
20ced6738b chore(deps): update dependency lint-staged to v12.3.2 (#4004)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-27 09:34:41 +01:00
Daniel Sogl
3af036f93e docs(): update generated readmes 2022-01-27 08:33:57 +00:00
Daniel Sogl
e6140aaaee feat(market): add plugin 2022-01-27 08:32:31 +00:00
renovate[bot]
8765be4e42 chore(deps): update dependency @typescript-eslint/parser to v5.10.1 (#4000)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-25 21:29:55 +01:00
renovate[bot]
c3b0377e3c chore(deps): update dependency rollup to v2.66.1 (#4001)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-25 21:29:46 +01:00
renovate[bot]
8ab490b95b chore(deps): update dependency @typescript-eslint/eslint-plugin to v5.10.1 (#3999)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-24 19:34:48 +01:00
Пронин Андрей
67d8a37d1e feat(chooser-simple-file): add plugin (#3982)
* add chooser actual fork plugin

* * removes base64 functionality as we can use ionic native file plugin to get file directly

* use getFiles

Co-authored-by: Pronin Andrey <a@innoline.pro>
2022-01-23 16:39:28 +01:00
renovate[bot]
8351a26a74 chore(deps): update dependency lint-staged to v12.3.1 (#3998)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-23 16:24:27 +01:00
renovate[bot]
a9c5ba9d67 chore(deps): update dependency lint-staged to v12.3.0 (#3997)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-23 16:14:20 +01:00
TAKUYA NAKAYASU
a1e85d2f80 fix(social-sharing): change shareWithOptions parameter typing (#3996) 2022-01-23 16:14:14 +01:00
renovate[bot]
551382a841 chore(deps): update dependency rollup to v2.66.0 (#3994)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-23 16:14:05 +01:00
renovate[bot]
bc51ed7c2c chore(deps): update dependency eslint-plugin-jsdoc to v37.6.3 (#3991)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 20:19:39 +01:00
renovate[bot]
416a4b7626 chore(deps): update dependency webpack to v5.67.0 (#3993)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 20:19:25 +01:00
renovate[bot]
06c9f19ce3 chore(deps): update dependency eslint-plugin-jsdoc to v37.6.2 (#3989)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 15:58:27 +01:00
renovate[bot]
32c6559648 chore(deps): update dependency rollup to v2.65.0 (#3990)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 15:58:13 +01:00
renovate[bot]
2c25c4be3a chore(deps): update dependency lint-staged to v12.2.2 (#3986)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-20 20:04:11 +01:00
renovate[bot]
c88310b658 chore(deps): update dependency lint-staged to v12.2.1 (#3983)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-20 14:44:06 +01:00
renovate[bot]
92a2ae5006 chore(deps): update dependency @types/node to v16.11.21 (#3984)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-20 14:43:55 +01:00
renovate[bot]
3bd839acbb chore(deps): update typescript-eslint monorepo to v5.10.0 (#3981)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-17 22:06:27 +01:00
renovate[bot]
43136d9447 chore(deps): update dependency @types/node to v16.11.20 (#3980)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-17 19:37:12 +01:00
renovate[bot]
bbab19f5aa chore(deps): update dependency eslint to v8.7.0 (#3979)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-16 19:17:24 +01:00
renovate[bot]
8276f460e7 chore(deps): update dependency ts-jest to v27.1.3 (#3978)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-15 10:33:31 +01:00
renovate[bot]
d31111478d chore(deps): update dependency rollup to v2.64.0 (#3977)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-15 10:33:17 +01:00
renovate[bot]
20c3b83c23 chore(deps): update dependency webpack to v5.66.0 (#3974)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-12 16:23:32 +01:00
renovate[bot]
c17defd727 chore(deps): update dependency winston to v3.4.0 (#3969)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-11 17:30:43 +01:00
renovate[bot]
68d854f0a5 chore(deps): update typescript-eslint monorepo to v5.9.1 (#3968)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-11 17:30:34 +01:00
renovate[bot]
b2d1e45ba6 chore(deps): update dependency winston to v3.3.4 (#3966)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-10 18:14:29 +01:00
renovate[bot]
7c487064b7 chore(deps): update dependency eslint-plugin-jsdoc to v37.6.1 (#3965)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-09 18:25:20 +01:00
Simone Colazzo
3b8566df93 feat(magnetometer): add magnetometer wrapper (#3887)
* feat(magnetometer): add magnetometer wrapper

* fix(magnetomer): add wrapper parameters

Co-authored-by: Simone Colazzo <si.colazzo@reply.it>
2022-01-08 14:21:04 +01:00
renovate[bot]
a04a70e1a0 chore(deps): update dependency eslint-plugin-jsdoc to v37.5.2 (#3964)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-08 14:20:37 +01:00
renovate[bot]
7cad9fd207 chore(deps): update dependency lint-staged to v12.1.7 (#3961)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-08 14:10:12 +01:00
Martin DONADIEU
6a93bb2e9b feat(camera-preview): add storeToFile param (#3958) 2022-01-06 21:28:38 +01:00
renovate[bot]
e1c10171ba chore(deps): update dependency jest to v27.4.7 (#3957)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 21:27:42 +01:00
renovate[bot]
7ef395a1f5 chore(deps): update dependency @types/node to v16.11.19 (#3956) 2022-01-04 23:35:29 +01:00
renovate[bot]
3da6e37b20 chore(deps): update typescript-eslint monorepo to v5.9.0 (#3954)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 18:24:13 +01:00
renovate[bot]
8e9bbf41e1 chore(deps): update dependency rollup to v2.63.0 (#3955)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 18:24:06 +01:00
Marius Backes
7350c630fe feat(sumup): add test and setup function (#3950)
* feat(sumup): add setup and test function

* feat(sumup): add title as parameter in pay function
2022-01-03 15:47:15 +01:00
renovate[bot]
f5c5e7d179 chore(deps): update dependency lint-staged to v12.1.5 (#3951)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-03 15:46:53 +01:00
renovate[bot]
dfbcf412ed chore(deps): update dependency @types/node to v16.11.18 (#3952)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-03 15:46:42 +01:00
renovate[bot]
8c23123ae8 chore(deps): update dependency eslint-plugin-jsdoc to v37.5.1 (#3953)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-03 15:46:35 +01:00
renovate[bot]
2c8d6e4224 chore(deps): update dependency eslint-plugin-jsdoc to v37.5.0 (#3948)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-02 14:38:23 +01:00
renovate[bot]
cc203ee566 chore(deps): update dependency eslint to v8.6.0 (#3949)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-02 14:22:14 +01:00
renovate[bot]
c3248915e0 chore(deps): update dependency @types/jest to v27.4.0 (#3947)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-31 12:15:21 +01:00
renovate[bot]
0c282b365a chore(deps): update dependency eslint-plugin-jsdoc to v37.4.2 (#3945)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-28 19:09:42 +01:00
renovate[bot]
3a628efa78 chore(deps): update actions/setup-node action to v2.5.1 (#3944)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-28 12:43:13 +01:00
renovate[bot]
64ec0cbb07 chore(deps): update typescript-eslint monorepo to v5.8.1 (#3943)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-28 12:43:01 +01:00
renovate[bot]
930e011bf0 chore(deps): update dependency eslint to v8 (#3924)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-25 22:02:24 +01:00
renovate[bot]
eb2c405e99 chore(deps): update dependency @types/node to v16.11.17 (#3936)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-25 22:01:41 +01:00
renovate[bot]
bf3c873b43 chore(deps): update dependency rollup to v2.62.0 (#3938)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-25 22:01:35 +01:00
renovate[bot]
f63db5b94c chore(deps): update dependency lint-staged to v12.1.4 (#3940)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-25 22:01:29 +01:00
renovate[bot]
642314271c chore(deps): update dependency conventional-changelog-cli to v2.2.2 (#3941)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-25 22:01:24 +01:00
Daniel Sogl
7d52794933 refactor(tealium): resolv lint issues 2021-12-25 20:47:29 +00:00
Daniel Sogl
104e66db28 chore(ci): run lint workflow quiet 2021-12-25 20:46:28 +00:00
Karen Tamayo
771552cd42 feat(tealium): update wrapper (#3883)
Co-authored-by: Karen Tamayo <karentamayo@Karens-MBP.webpass.net>
2021-12-21 18:58:13 +01:00
renovate[bot]
50069b6fe8 chore(deps): update dependency @types/node to v16.11.15 (#3916)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-21 18:57:37 +01:00
renovate[bot]
3b6d3a04fb chore(deps): update dependency eslint-plugin-jsdoc to v37.4.0 (#3929)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-21 18:57:27 +01:00
renovate[bot]
1df610968a chore(deps): update typescript-eslint monorepo to v5.8.0 (#3932)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-21 18:57:18 +01:00
Daniel Sogl
79e10c7b54 Update .gitbook.yaml 2021-12-21 18:42:31 +01:00
Daniel Sogl
da8c059017 Delete README.md 2021-12-21 18:41:53 +01:00
Daniel Sogl
bbb8e20b57 GitBook: [#6] No subject 2021-12-21 17:38:18 +00:00
Jean-Christophe Hoelt
5c7ece4e9b docs(in-app-purchase-2): add missing code block close (#3933) 2021-12-21 16:08:52 +01:00
renovate[bot]
bdab2f82cd chore(deps): update typescript-eslint monorepo to v5 (#3928)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-19 18:38:18 +01:00
renovate[bot]
e149bc0fdc chore(deps): update dependency eslint-plugin-jsdoc to v37.3.0 (#3917)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-19 18:37:48 +01:00
renovate[bot]
a16099aaae chore(deps): update dependency terser-webpack-plugin to v5.3.0 (#3921)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-19 18:37:40 +01:00
renovate[bot]
ce822f8ed0 chore(deps): update dependency lint-staged to v12.1.3 (#3927)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-19 18:37:25 +01:00
23 changed files with 1789 additions and 1579 deletions

View File

@@ -1 +1 @@
root: ./docs/
root: ./docs/plugins/

View File

@@ -13,7 +13,7 @@ jobs:
steps:
- uses: actions/checkout@v2.4.0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2.5.0
uses: actions/setup-node@v2.5.1
with:
node-version: ${{ matrix.node-version }}
@@ -21,7 +21,7 @@ jobs:
run: npm ci
- name: Lint
run: npm run lint
run: npm run lint -- --quiet
- name: Build
run: npm run build

View File

@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.4.0
- uses: actions/setup-node@v2.5.0
- uses: actions/setup-node@v2.5.1
with:
node-version: 14
- name: Install dependencies
@@ -25,7 +25,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.4.0
- uses: actions/setup-node@v2.5.0
- uses: actions/setup-node@v2.5.1
with:
node-version: 14
registry-url: https://registry.npmjs.org/

View File

@@ -1,3 +1,22 @@
# [5.38.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.37.3...v5.38.0) (2022-01-27)
### Bug Fixes
* **social-sharing:** change shareWithOptions parameter typing ([#3996](https://github.com/danielsogl/awesome-cordova-plugins/issues/3996)) ([a1e85d2](https://github.com/danielsogl/awesome-cordova-plugins/commit/a1e85d2f80a18a4b2da93abdd85ebd5ab04f1b16))
### Features
* **camera-preview:** add storeToFile param ([#3958](https://github.com/danielsogl/awesome-cordova-plugins/issues/3958)) ([6a93bb2](https://github.com/danielsogl/awesome-cordova-plugins/commit/6a93bb2e9b450d89112768e78c5cf888b85fcffa))
* **chooser-simple-file:** add plugin ([#3982](https://github.com/danielsogl/awesome-cordova-plugins/issues/3982)) ([67d8a37](https://github.com/danielsogl/awesome-cordova-plugins/commit/67d8a37d1e1d526da8beab8ac8e05b09312f30e4))
* **magnetometer:** add magnetometer wrapper ([#3887](https://github.com/danielsogl/awesome-cordova-plugins/issues/3887)) ([3b8566d](https://github.com/danielsogl/awesome-cordova-plugins/commit/3b8566df939773a4b9a1604a4af3a60e24cf9aed))
* **market:** add plugin ([e6140aa](https://github.com/danielsogl/awesome-cordova-plugins/commit/e6140aaaeef735731a292aabb3972624754f10c3))
* **sumup:** add test and setup function ([#3950](https://github.com/danielsogl/awesome-cordova-plugins/issues/3950)) ([7350c63](https://github.com/danielsogl/awesome-cordova-plugins/commit/7350c630fea4db8c31a07f46b4464bab2f1b55e4))
* **tealium:** update wrapper ([#3883](https://github.com/danielsogl/awesome-cordova-plugins/issues/3883)) ([771552c](https://github.com/danielsogl/awesome-cordova-plugins/commit/771552cd4286b755b5bd7a8bddb755bb3c3d5d0c))
## [5.37.3](https://github.com/danielsogl/awesome-cordova-plugins/compare/v5.37.2...v5.37.3) (2021-12-19)

View File

@@ -1,2 +0,0 @@
# Initial page

View File

@@ -1,5 +1,7 @@
# AdjustPlayStoreSubscription
plugin add com.adjust.sdk
# Adjust
```
$ ionic cordova plugin add com.adjust.sdk
$ npm install @awesome-cordova-plugins/adjust
```

View File

@@ -0,0 +1,32 @@
# Chooser
```
$ ionic cordova plugin add cordova-plugin-simple-file-chooser
$ npm install @awesome-cordova-plugins/chooser-simple-file
```
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/chooser-simple-file/)
Plugin Repo: [https://github.com/hc-oss/cordova-plugin-simple-file-chooser](https://github.com/hc-oss/cordova-plugin-simple-file-chooser)
File chooser plugin for Cordova.
The following must be added to config.xml to prevent crashing when selecting large files on Android:
```xml
<platform name="android">
<edit-config
file="app/src/main/AndroidManifest.xml"
mode="merge"
target="/manifest/application">
<application android:largeHeap="true" />
</edit-config>
</platform>
```
## Supported platforms
- Android
- iOS

View File

@@ -0,0 +1,20 @@
# Device eMagnetometer
```
$ ionic cordova plugin add cordova-plugin-magnetometer
$ npm install @awesome-cordova-plugins/magnetometer
```
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/magnetometer/)
Plugin Repo: [https://github.com/sdesalas/cordova-plugin-magnetometer](https://github.com/sdesalas/cordova-plugin-magnetometer)
Requires Cordova plugin: `cordova-plugin-magnetometer`. For more info, please see the [Device Orientation docs](https://github.com/sdesalas/cordova-plugin-magnetometer).
## Supported platforms
- Android
- iOS

View File

@@ -0,0 +1,20 @@
# Market
```
$ ionic cordova plugin add cordova-plugin-market
$ npm install @awesome-cordova-plugins/market
```
## [Usage Documentation](https://danielsogl.gitbook.io/awesome-cordova-plugins/plugins/market/)
Plugin Repo: [https://github.com/xmartlabs/cordova-plugin-market](https://github.com/xmartlabs/cordova-plugin-market)
Opens an app's page in the market place (Google Play, App Store)
## Supported platforms
- Android
- iOS

View File

@@ -1,7 +1,7 @@
# Purchases
```
$ ionic cordova plugin add cordova-plugin-purchases@2.3.0
$ ionic cordova plugin add cordova-plugin-purchases@2.4.0
$ npm install @awesome-cordova-plugins/purchases
```

View File

@@ -1,7 +1,5 @@
# Smartlook
```
$ ionic cordova plugin add https://github.com/smartlook/cordova-smartlook.git
# SmartlookTimedCustomEventStart
plugin add https://github.com/smartlook/cordova-smartlook.git
$ npm install @awesome-cordova-plugins/smartlook
```

View File

@@ -9,9 +9,9 @@ $ npm install @awesome-cordova-plugins/tealium
Plugin Repo: [https://github.com/Tealium/cordova-plugin](https://github.com/Tealium/cordova-plugin)
This plugin provides a TypeScript wrapper around the [Tealium](https://www.tealium.com) Cordova plugin for Ionic Native.
This plugin does provides a wrapper around the Tealium Cordova Plugin for Ionic Native.
For full documentation, see [https://community.tealiumiq.com/t5/Mobile-Libraries/Tealium-for-Cordova/ta-p/17618](https://community.tealiumiq.com/t5/Mobile-Libraries/Tealium-for-Cordova/ta-p/17618)
For full documentation, see [https://docs.tealium.com/platforms/cordova/](https://docs.tealium.com/platforms/cordova/)
## Supported platforms

View File

@@ -1,5 +1,5 @@
# LoginParameters
SDK
# UnviredResult
a SDK
```
$ ionic cordova plugin add @awesome-cordova-plugins/unvired-cordova-sdk

2560
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "awesome-cordova-plugins",
"version": "5.37.3",
"version": "5.38.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)",
@@ -33,42 +33,42 @@
"@angular/core": "11.2.14",
"@types/cordova": "0.0.34",
"@types/fs-extra": "9.0.13",
"@types/jest": "27.0.3",
"@types/jest": "27.4.0",
"@types/lodash": "4.14.178",
"@types/node": "16.11.12",
"@types/node": "16.11.21",
"@types/rimraf": "3.0.2",
"@types/webpack": "5.28.0",
"@typescript-eslint/eslint-plugin": "4.33.0",
"@typescript-eslint/parser": "4.33.0",
"@typescript-eslint/eslint-plugin": "5.10.1",
"@typescript-eslint/parser": "5.10.1",
"async-promise-queue": "1.0.5",
"conventional-changelog-cli": "2.1.1",
"conventional-changelog-cli": "2.2.2",
"cz-conventional-changelog": "3.3.0",
"dgeni": "0.4.14",
"dgeni-packages": "0.16.10",
"eslint": "7.32.0",
"eslint": "8.7.0",
"eslint-config-prettier": "8.3.0",
"eslint-plugin-jsdoc": "37.2.0",
"eslint-plugin-jsdoc": "37.7.0",
"fs-extra": "10.0.0",
"gulp": "4.0.2",
"gulp-rename": "2.0.0",
"gulp-replace": "1.1.3",
"husky": "7.0.4",
"is-ci": "3.0.1",
"jest": "27.4.5",
"lint-staged": "12.1.2",
"jest": "27.4.7",
"lint-staged": "12.3.2",
"lodash": "4.17.21",
"minimist": "1.2.5",
"prettier": "2.5.1",
"rimraf": "3.0.2",
"rollup": "2.61.1",
"rollup": "2.66.1",
"rxjs": "6.6.7",
"terser-webpack-plugin": "5.2.5",
"ts-jest": "27.1.2",
"terser-webpack-plugin": "5.3.0",
"ts-jest": "27.1.3",
"ts-node": "10.4.0",
"typescript": "4.1.6",
"unminified-webpack-plugin": "3.0.0",
"webpack": "5.65.0",
"winston": "3.3.3",
"webpack": "5.67.0",
"winston": "3.4.0",
"zone.js": "0.11.4"
},
"jest": {

View File

@@ -30,6 +30,9 @@ export interface CameraPreviewOptions {
/** Preview box drag across the screen, default 'false' */
previewDrag?: boolean;
/** Capture images to a file and return back the file path instead of returning base64 encoded data. */
storeToFile: boolean;
/** Preview box to the back of the webview (true => back, false => front) , default false */
toBack?: boolean;

View File

@@ -0,0 +1,64 @@
import { Injectable } from '@angular/core';
import { Cordova, AwesomeCordovaNativePlugin, Plugin } from '@awesome-cordova-plugins/core';
export interface ChooserResult {
mediaType: string;
name: string;
uri: string;
}
/**
* @name Chooser
* @description
* File chooser plugin for Cordova.
*
* The following must be added to config.xml to prevent crashing when selecting large files on Android:
* ```xml
* <platform name="android">
* <edit-config
* file="app/src/main/AndroidManifest.xml"
* mode="merge"
* target="/manifest/application">
* <application android:largeHeap="true" />
* </edit-config>
* </platform>
* ```
* @usage
* ```typescript
* import { Chooser } from '@awesome-cordova-plugins/chooser-simple-file/ngx';
*
*
* constructor(private chooser: Chooser) { }
*
* ...
*
*
* this.chooser.getFiles()
* .then(files => console.log(files ? files.name : 'canceled'))
* .catch((error: any) => console.error(error));
*
* ```
* @interfaces
* ChooserResult
*/
@Plugin({
pluginName: 'Chooser',
plugin: 'cordova-plugin-simple-file-chooser',
pluginRef: 'chooser',
repo: 'https://github.com/hc-oss/cordova-plugin-simple-file-chooser',
platforms: ['Android', 'iOS'],
})
@Injectable()
export class Chooser extends AwesomeCordovaNativePlugin {
/**
* Displays native prompt for user to select a file.
*
* @param {string} [accept] Optional MIME type filter (e.g. 'image/gif,video/*').
* @returns {Promise<any>} Promise containing selected file's
* data: MIME type, display name, and original URI.
*/
@Cordova()
getFiles(accept?: string): Promise<ChooserResult[] | undefined> {
return;
}
}

View File

@@ -505,6 +505,7 @@ export class IAPError {
* | +--> APPROVED +--------------------------------+--> FINISHED +--> OWNED
* | |
* +-------------------------------------------------------------+
* ```
*
* #### Notes
*

View File

@@ -0,0 +1,87 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, AwesomeCordovaNativePlugin } from '@awesome-cordova-plugins/core';
import { Observable } from 'rxjs';
export interface MagnetometerReading {
/**
* X reading of magnetometer. (Number)
*/
x: number;
/**
* Y reading of magnetometer. (Number)
*/
y: number;
/**
* Z reading of magnetometer. (Number)
*/
z: number;
/**
* Calculated total - always positive of magnetometer. (Number)
*/
magnitude: number;
}
/**
* @name Device eMagnetometer
* @description
* Requires Cordova plugin: `cordova-plugin-magnetometer`. For more info, please see the [Device Orientation docs](https://github.com/sdesalas/cordova-plugin-magnetometer).
*
* @usage
* ```typescript
* // MagnetometerReading is an interface for compass
* import { Magnetometer, MagnetometerReading } from '@awesome-cordova-plugins/device-orientation/ngx';
*
* constructor(private magnetometer: Magnetometer) { }
*
* ...
*
* // Get the device current compass heading
* this.magnetometer.getReading().then(
* (data: MagnetometerReading) => console.log(data),
* (error: any) => console.log(error)
* );
*
* // Watch the device compass heading change
* var subscription = this.magnetometer.watchReadings().subscribe(
* (data: MagnetometerReading) => console.log(data)
* );
*
* // Stop watching heading change
* subscription.unsubscribe();
* ```
* @interfaces
* MagnetometerReading
*/
@Plugin({
pluginName: 'Magnetometer',
plugin: 'cordova-plugin-magnetometer',
pluginRef: 'cordova.plugins.magnetometer',
repo: 'https://github.com/sdesalas/cordova-plugin-magnetometer',
platforms: ['Android', 'iOS'],
})
@Injectable()
export class Magnetometer extends AwesomeCordovaNativePlugin {
/**
* Get the current compass reading.
* @returns {Promise<MagnetometerReading>}
*/
@Cordova()
getReading(): Promise<MagnetometerReading> {
return;
}
/**
* Get the device current heading at a regular interval
*
* Stop the watch by unsubscribing from the observable
* @param {DeviceOrientationCompassOptions} [options] Options for compass. Frequency and Filter. Optional
* @returns {Observable<DeviceOrientationCompassHeading>} Returns an observable that contains the compass heading
*/
@Cordova({
callbackOrder: 'reverse',
observable: true,
clearFunction: 'stop',
})
watchReadings(): Observable<MagnetometerReading> {
return;
}
}

View File

@@ -0,0 +1,57 @@
import { Injectable } from '@angular/core';
import { Cordova, AwesomeCordovaNativePlugin, Plugin } from '@awesome-cordova-plugins/core';
/**
* @name Market
* @description
* Opens an app's page in the market place (Google Play, App Store)
*
* @usage
* ```typescript
* import { Market } from '@awesome-cordova-plugins/market/ngx';
*
* constructor(private market: Market) { }
*
* ...
*
* this.market.open('your.package.name');
*
* ```
*/
@Plugin({
pluginName: 'Market',
plugin: 'cordova-plugin-market',
pluginRef: 'cordova.plugins.market',
repo: 'https://github.com/xmartlabs/cordova-plugin-market',
platforms: ['Android', 'iOS'],
})
@Injectable()
export class Market extends AwesomeCordovaNativePlugin {
/**
* Opens an app in Google Play / App Store
* @param appId {string} Package name
* @return {Promise<any>}
*/
@Cordova({
callbackStyle: 'object',
successName: 'success',
errorName: 'failure',
})
open(appId: string): Promise<any> {
return;
}
/**
* Search apps by keyword
* @param keyword {string} Keyword
* @return {Promise<any>}
*/
@Cordova({
callbackStyle: 'object',
successName: 'success',
errorName: 'failure',
platforms: ['Android'],
})
search(keyword: string): Promise<any> {
return;
}
}

View File

@@ -74,7 +74,7 @@ export class SocialSharing extends AwesomeCordovaNativePlugin {
shareWithOptions(options: {
message?: string;
subject?: string;
files?: string | string[];
files?: string[];
url?: string;
chooserTitle?: string;
}): Promise<any> {

View File

@@ -111,7 +111,7 @@ export class SumUpKeys {
* .then((res: SumUpResponse) => console.log(res))
* .catch((error: SumUpResponse) => console.error(error));
*
* this.sumUp.pay(10.0, 'EUR')
* this.sumUp.pay(10.0, 'Transaction title', 'EUR')
* .then((res: SumUpPayment) => console.log(res))
* .catch((error: SumUpPayment) => console.error(error));
*
@@ -203,16 +203,38 @@ export class SumUp extends AwesomeCordovaNativePlugin {
return;
}
/**
* Will setup the SumUP SDK.
* This action is required before using other functions.
*
* @returns {Promise<SumUpResponse>} Return a SumUpResponse object
*/
@Cordova()
setup(): Promise<SumUpResponse> {
return;
}
/**
* Test the SumUp integration using SDK tests.
*
* @returns {Promise<SumUpResponse>} Return a SumUpResponse object
*/
@Cordova()
test(): Promise<SumUpResponse> {
return;
}
/**
* Opens a native SumUp window to proceed a payment. Parameter amount and currencycode are required.
* If the Payment was successful it returns an SumUpPayment object with information about the payment.
*
* @param amount {number}
* @param currencycode {string}
* @param title {string}
* @param currencyCode {string}
* @returns {Promise<SumUpResponse>} Return a SumUpResponse object
*/
@Cordova()
pay(amount: number, currencycode: string): Promise<SumUpPayment> {
pay(amount: number, title?: string, currencyCode?: string): Promise<SumUpPayment> {
return;
}
}

View File

@@ -1,229 +1,372 @@
import { Cordova, AwesomeCordovaNativePlugin, Plugin } from '@awesome-cordova-plugins/core';
import { Injectable } from '@angular/core';
import {
Plugin,
Cordova,
CordovaProperty,
CordovaInstance,
InstanceProperty,
AwesomeCordovaNativePlugin,
} from '@awesome-cordova-plugins/core';
import { Observable } from 'rxjs';
export interface TealConfig {
/**
* Your Tealium account name
*/
export enum Collectors {
AppData = 'AppData',
Connectivity = 'Connectivity',
DeviceData = 'DeviceData',
Lifecycle = 'Lifecycle',
}
export enum Dispatchers {
Collect = 'Collect',
TagManagement = 'TagManagement',
RemoteCommands = 'RemoteCommands',
}
export enum Expiry {
forever = 'forever',
untilRestart = 'untilRestart',
session = 'session',
}
export enum ConsentPolicy {
ccpa = 'ccpa',
gdpr = 'gdpr',
}
export interface TealiumDispatch {
dataLayer: Map<string, any>;
type: string;
toJson(): string;
}
export class TealiumView implements TealiumDispatch {
public type = 'view';
constructor(public viewName: string, public dataLayer: Map<string, any>) {}
toJson() {
const dictionary: any = {};
dictionary['type'] = this.type;
dictionary['dataLayer'] = {};
this.dataLayer.forEach((k, v) => {
dictionary['dataLayer'][k] = v;
});
dictionary['type'] = this.type;
dictionary['viewName'] = this.viewName;
return JSON.stringify(dictionary);
}
}
export class TealiumEvent implements TealiumDispatch {
public type = 'event';
constructor(public eventName: string, public dataLayer: Map<string, any>) {}
toJson() {
const dictionary: any = {};
dictionary['type'] = this.type;
dictionary['dataLayer'] = {};
this.dataLayer.forEach((k, v) => {
dictionary['dataLayer'][k] = v;
});
dictionary['type'] = this.type;
dictionary['eventName'] = this.eventName;
return JSON.stringify(dictionary);
}
}
export class ConsentExpiry {
constructor(public time: number, public unit: TimeUnit) {}
}
export enum TimeUnit {
minutes = 'minutes',
hours = 'hours',
days = 'days',
months = 'months',
}
export enum ConsentStatus {
consented = 'consented',
notConsented = 'notConsented',
unknown = 'unknown',
}
export enum LogLevel {
dev = 'dev',
qa = 'qa',
prod = 'prod',
silent = 'silent',
}
export enum TealiumEnvironment {
dev = 'dev',
qa = 'qa',
prod = 'prod',
}
export enum ConsentCategories {
analytics = 'analytics',
affiliates = 'affiliates',
displayAds = 'display_ads',
email = 'email',
personalization = 'personalization',
search = 'search',
social = 'social',
bigData = 'big_data',
mobile = 'mobile',
engagement = 'engagement',
monitoring = 'monitoring',
crm = 'crm',
cdp = 'cdp',
cookieMatch = 'cookiematch',
misc = 'misc',
}
export interface TealiumConfig {
account: string;
/**
* Your Tealium profile name
*/
profile: string;
/**
* Your Tealium environment name (dev, qa, prod)
*/
environment: string;
/**
* Arbitrary instance name string. Must be consistent for all calls to Tealium API.
*/
instance: string;
/**
* Enables ("true") or disables ("false") lifecycle reporting. Default true if omitted.
*/
isLifecycleEnabled?: string;
/**
* Not usually required. Sets a custom URL override for dispatches to UDH.
*/
collectDispatchURL?: string;
/**
* Your Tealium UDH profile. Only active if you do not have collectDispatchURL set.
*/
collectDispatchProfile?: string;
/**
* Enables ("true") or disables ("false") Crash Reporter module for Android. Default false if omitted.
*/
isCrashReporterEnabled?: string;
environment: TealiumEnvironment;
dataSource?: string;
collectors: Collectors[];
dispatchers: Dispatchers[];
customVisitorId?: string;
memoryReportingEnabled?: boolean;
overrideCollectURL?: string;
overrideCollectBatchURL?: string;
overrideCollectDomain?: string;
overrideLibrarySettingsURL?: string;
overrideTagManagementURL?: string;
deepLinkTrackingEnabled?: boolean;
qrTraceEnabled?: boolean;
loglevel?: LogLevel;
consentLoggingEnabled?: boolean;
consentPolicy?: ConsentPolicy;
consentExpiry?: ConsentExpiry;
lifecycleAutotrackingEnabled?: boolean;
useRemoteLibrarySettings?: boolean;
visitorServiceEnabled?: boolean;
visitorServiceRefreshInterval?: string;
}
/**
* @paid
* @name Tealium
* @description
* This plugin provides a TypeScript wrapper around the [Tealium](https://www.tealium.com) Cordova plugin for Ionic Native.
* This plugin does provides a wrapper around the Tealium Cordova Plugin for Ionic Native.
*
* For full documentation, see [https://docs.tealium.com/platforms/cordova/](https://docs.tealium.com/platforms/cordova/)
*
* For full documentation, see [https://community.tealiumiq.com/t5/Mobile-Libraries/Tealium-for-Cordova/ta-p/17618](https://community.tealiumiq.com/t5/Mobile-Libraries/Tealium-for-Cordova/ta-p/17618)
* @usage
* ```
* import { Tealium, TealConfig } from '@awesome-cordova-plugins/tealium/ngx';
* ```typescript
* import { Tealium } from '@awesome-cordova-plugins/tealium/ngx';
*
*
* constructor(private tealium: Tealium) { }
*
* ...
*
* let tealConfig: TealConfig = {
* account: "<your-account>",
* profile: "<your-profile>",
* environment: "<your-environment>", // usually "dev", "qa" or "prod"
* isLifecycleEnabled: "true", // pass "false" to disable lifecycle tracking
* isCrashReporterEnabled: "false", // pass "true" to enable crash reporter (Android only)
* instance: "<your-instance-name" // an arbitrary instance name. use the same instance name for all subsequent API calls
* }
* let config: TealiumConfig = {
* account: <your_tealium_account>,
* profile: <your_tealium_profile>,
* environment: TealiumEnvironment.dev,
* dispatchers: [Dispatchers.Collect, Dispatchers.RemoteCommands, Dispatchers.TagManagement],
* collectors: [Collectors.AppData, Collectors.DeviceData, Collectors.Lifecycle, Collectors.Connectivity],
* consentLoggingEnabled: true,
* consentPolicy: ConsentPolicy.gdpr,
* visitorServiceEnabled: true,
* // visitorServiceRefreshInterval: '1',
* consentExpiry: new ConsentExpiry(3, TimeUnit.minutes),
* };
*
* this.tealium.init(tealConfig).then(()=>{
* this.tealium.trackView({"screen_name": "homescreen"});
* });
* Tealium.initialize(config);
*
* ```
* @interfaces
* TealConfig
*/
@Plugin({
pluginName: 'Tealium',
plugin: 'tealium-cordova-plugin', // npm package name, example: cordova-plugin-camera
pluginRef: 'window.tealium', // the variable reference to call the plugin, example: navigator.geolocation
plugin: 'tealium-cordova-plugin', // npm package name
pluginRef: 'tealium', // the variable reference to call the plugin
repo: 'https://github.com/Tealium/cordova-plugin', // the github repository URL for the plugin
platforms: ['Android', 'iOS'], // Array of platforms supported, example: ['Android', 'iOS']
install: '', // OPTIONAL install command, in case the plugin requires variables
installVariables: [], // OPTIONAL the plugin requires variables
platforms: ['Android', 'iOS'], // Array of platforms supported
})
@Injectable()
export class Tealium extends AwesomeCordovaNativePlugin {
/**
* This function initializes the Tealium Cordova plugin.
* This should usually be done inside the "deviceReady" handler.
*
* @param config {TealConfig}
* @returns {Promise<any>} Returns a promise that resolves when something happens
* This function initializes the Tealium Cordova Plugin
* @param config {TealiumConfig}
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
init(config: TealConfig): Promise<any> {
initialize(config: TealiumConfig, callback?: Function): Promise<any> {
return; // We add return; here to avoid any IDE / Compiler errors
}
/**
* This function tracks a view event in the Tealium Cordova plugin
*
* @param dataObject {any} The JSON data object containing your key-value pairs
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* This function tracks an event
* @param dispatch {TealiumDispatch} Dispatch containing event data
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
trackView(dataObject: any, instanceName: string): Promise<any> {
track(dispatch: TealiumDispatch): Promise<any> {
return;
}
/**
* This function tracks a link event in the Tealium Cordova plugin
*
* @param dataObject {any} The JSON data object containing your key-value pairs
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* This function terminatest the Tealium instance
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
trackEvent(dataObject: any, instanceName: string): Promise<any> {
terminateInstance(): Promise<any> {
return;
}
/**
* This function tracks a custom event in the Tealium Cordova plugin
*
* @param eventType {string} The event type, link or view
* @param dataObject {any} The JSON data object containing your key-value pairs
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Adds data to data layer
* @param data A map containing the key-value pairs to be added to data layer
* @param expiry When the data should expire. Choose `Expiry.session` if unsure.
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
track(eventType: string, dataObject: any, instanceName: string): Promise<any> {
addData(data: Map<string, any>, expiry: string): Promise<any> {
return;
}
/**
* This function adds data to the Tealium persistent data store
*
* @param keyName {string} The key name that this data will be stored under for later retrieval
* @param value {any} The value to be stored as persistent data
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* @param key The key of the data to retrieve from the data layer
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
addPersistent(keyName: string, value: string | string[] | any, instanceName: string): Promise<any> {
getData(key: string, callback?: Function): Promise<any> {
return;
}
/**
* This function adds data to the Tealium volatile data store
*
* @param keyName {string} The key name that this data will be stored under for later retrieval
* @param value {any} The value to be stored as volatile data
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Removes data from the data layer
* @param keys The keys of the data to be removed
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
addVolatile(keyName: string, value: string | string[], instanceName: string): Promise<any> {
removeData(keys: string[]): Promise<any> {
return;
}
/**
* This function removes data from the Tealium volatile data store
*
* @param keyName {string} The key name that this data will removed from the Tealium data store
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Retrieves the user's consent status
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
removeVolatile(keyName: string, instanceName: string): Promise<any> {
getConsentStatus(callback?: Function): Promise<any> {
return;
}
/**
* This function removes data from the Tealium persistent data store
*
* @param keyName {string} The key name that this data will removed from the Tealium data store
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Sets the user's consent status
* @param consentStatus
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
removePersistent(keyName: string, instanceName: string): Promise<any> {
setConsentStatus(consentStatus: ConsentStatus): Promise<any> {
return;
}
/**
* This function retrieves a value from the Tealium Persistent data store
*
* @param keyName {string} The key name that this data will retrieved from the Tealium data store
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @param callback {any} A callback function that will be called when the data has been retrieved
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Retrieves the user's consent categories
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
getPersistent(keyName: string, instanceName: string, callback: any): Promise<any> {
return;
}
/**
* This function retrieves a value from the Tealium Volatile data store
*
* @param keyName {string} The key name that this data will retrieved from the Tealium data store
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @param callback {any} A callback function that will be called when the data has been retrieved
* @returns {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
getVolatile(keyName: string, instanceName: string, callback: any): Promise<any> {
getConsentCategories(callback?: Function): Promise<any> {
return;
}
/**
* This function adds a remote command for later execution
*
* @param commandName {string} The command name for this Remote Command
* @param instanceName {string} Your arbitrary Tealium instance name provided at init time
* @param callback {any} A callback function that will be called when the data has been retrieved
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Sets the user's consent categories
* @param categories
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
addRemoteCommand(commandName: string, instanceName: string, callback: any): Promise<any> {
setConsentCategories(categories: ConsentCategories[]): Promise<any> {
return;
}
/**
* This function retrieves the Tealium Visitor ID
*
* @returns {Promise<any>} Returns a promise that resolves when something happens
* Joins a trace session weith the specified Trace ID
* @param id Trace ID
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
getVisitorId(): Promise<any> {
joinTrace(id: string): Promise<any> {
return;
}
/**
* Leaves a trace session
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
leaveTrace(): Promise<any> {
return;
}
/**
* Retrieves the Tealium Visitor ID
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
getVisitorId(callback?: Function): Promise<any> {
return;
}
/**
* Sets a listener to be called when the AudienceStream visitor profile is updated
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
setVisitorServiceListener(callback?: Function): Promise<any> {
return;
}
/**
* Sets a listener to be called when the consent has expired
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
setConsentExpiryListener(callback?: Function): Promise<any> {
return;
}
/**
* Adds a remote command for later execution
* @param id The ID used to invoke the remote command
* @param callback
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
addRemoteCommand(id: string, callback?: Function): Promise<any> {
return;
}
/**
* Removes a previously-added remote command
* @param id The ID of remote command to be removed
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
removeRemoteCommand(id: string): Promise<any> {
return;
}
/**
* Removes all listeners
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
removeListeners(): Promise<any> {
return;
}
}