diff --git a/CHANGELOG.md b/CHANGELOG.md index 438d1471..30203201 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,107 @@ + +# [5.0.0-beta.14](https://github.com/ionic-team/ionic-native/compare/v4.10.0...v5.0.0-beta.14) (2018-07-18) + + +### Features + +* **appsflyer:** Added Appsflyer Cordova SDK as ionic native plugin ([#2690](https://github.com/ionic-team/ionic-native/issues/2690)) ([3b3f942](https://github.com/ionic-team/ionic-native/commit/3b3f942)) +* **branch-io:** Add branch.io attribution and invitation plugin ([#2691](https://github.com/ionic-team/ionic-native/issues/2691)) ([90d75af](https://github.com/ionic-team/ionic-native/commit/90d75af)) +* **calldirectory:** add log function ([#2708](https://github.com/ionic-team/ionic-native/issues/2708)) ([9601a64](https://github.com/ionic-team/ionic-native/commit/9601a64)) +* **janalytics:** add plugin ([#2711](https://github.com/ionic-team/ionic-native/issues/2711)) ([0b97176](https://github.com/ionic-team/ionic-native/commit/0b97176)) +* **local-notifications:** Added local additional local notification action fields ([#2713](https://github.com/ionic-team/ionic-native/issues/2713)) ([267149b](https://github.com/ionic-team/ionic-native/commit/267149b)) +* **mixpanel:** Update/add functions ([#2697](https://github.com/ionic-team/ionic-native/issues/2697)) ([ac467c5](https://github.com/ionic-team/ionic-native/commit/ac467c5)) +* **wechat:** add plugin ([#2716](https://github.com/ionic-team/ionic-native/issues/2716)) ([10ac9ff](https://github.com/ionic-team/ionic-native/commit/10ac9ff)) + + + + +# [5.0.0-beta.17](https://github.com/ionic-team/ionic-native/compare/v5.0.0-beta.16...v5.0.0-beta.17) (2018-08-31) + + +### Bug Fixes + +* **in-app-browser:** fix mandatory options ([#2684](https://github.com/ionic-team/ionic-native/issues/2684)) ([d82e675](https://github.com/ionic-team/ionic-native/commit/d82e675)) + + + + +## [4.12.1](https://github.com/ionic-team/ionic-native/compare/v5.0.0-beta.15...v4.12.1) (2018-08-31) + + +### Bug Fixes + +* **open-native-settings:** allow supported input ([#2666](https://github.com/ionic-team/ionic-native/issues/2666)) ([be0dc3d](https://github.com/ionic-team/ionic-native/commit/be0dc3d)) + + +### Features + +* **aes256:** Added new utility methods to generate secure key and secure IV ([#2675](https://github.com/ionic-team/ionic-native/issues/2675)) ([a731466](https://github.com/ionic-team/ionic-native/commit/a731466)) +* **in-app-browser:** Add missing InAppBrowserOptions-properties ([#2669](https://github.com/ionic-team/ionic-native/issues/2669)) ([d90724e](https://github.com/ionic-team/ionic-native/commit/d90724e)) +* **push:** Added voip property to IOSPushOptions ([#2681](https://github.com/ionic-team/ionic-native/issues/2681)) ([03e4f0e](https://github.com/ionic-team/ionic-native/commit/03e4f0e)) + + + + +# [5.0.0-beta.15](https://github.com/ionic-team/ionic-native/compare/v4.12.0...v5.0.0-beta.15) (2018-08-25) + + +### Features + +* **bluetooth-le:** add bluetooth-le plugin ([#2651](https://github.com/ionic-team/ionic-native/issues/2651)) ([591ee87](https://github.com/ionic-team/ionic-native/commit/591ee87)) +* **http:** add setSSLCertMode function ([8db1dbe](https://github.com/ionic-team/ionic-native/commit/8db1dbe)) + + + + +# [4.12.0](https://github.com/ionic-team/ionic-native/compare/v4.11.0...v4.12.0) (2018-08-16) + + +### Bug Fixes + +* **extended-device-information:** Fixed Memory Display Bug ([#2641](https://github.com/ionic-team/ionic-native/issues/2641)) ([2ac5282](https://github.com/ionic-team/ionic-native/commit/2ac5282)) +* **network:** bind listener to document instead of window ([#2622](https://github.com/ionic-team/ionic-native/issues/2622)) ([d10777a](https://github.com/ionic-team/ionic-native/commit/d10777a)) +* **photo-library:** interface missing includeVideos ([3f415f9](https://github.com/ionic-team/ionic-native/commit/3f415f9)), closes [#2624](https://github.com/ionic-team/ionic-native/issues/2624) + + +### Features + +* **fabric:** add fabric plugin ([#2618](https://github.com/ionic-team/ionic-native/issues/2618)) ([9b4fd02](https://github.com/ionic-team/ionic-native/commit/9b4fd02)) +* **local-notifications:** add new foreground property ([#2633](https://github.com/ionic-team/ionic-native/issues/2633)) ([229b62c](https://github.com/ionic-team/ionic-native/commit/229b62c)) +* **webengage:** add optional config with initialization ([#2637](https://github.com/ionic-team/ionic-native/issues/2637)) ([ca9a702](https://github.com/ionic-team/ionic-native/commit/ca9a702)) + + + + +# [4.11.0](https://github.com/ionic-team/ionic-native/compare/v4.10.1...v4.11.0) (2018-07-29) + + +### Bug Fixes + +* **http:** add correct return types for downloadFile and uploadFile ([4092831](https://github.com/ionic-team/ionic-native/commit/4092831)), closes [#2615](https://github.com/ionic-team/ionic-native/issues/2615) + + +### Features + +* **clevertap:** add CleverTap plugin ([#2609](https://github.com/ionic-team/ionic-native/issues/2609)) ([27d380e](https://github.com/ionic-team/ionic-native/commit/27d380e)) +* **facebook:** add getDeferredApplink function ([3b32e19](https://github.com/ionic-team/ionic-native/commit/3b32e19)), closes [#2510](https://github.com/ionic-team/ionic-native/issues/2510) +* **webengage:** add webengage plugin ([#2604](https://github.com/ionic-team/ionic-native/issues/2604)) ([bd5bd7e](https://github.com/ionic-team/ionic-native/commit/bd5bd7e)) + + + + +## [4.10.1](https://github.com/ionic-team/ionic-native/compare/v5.0.0-beta.14...v4.10.1) (2018-07-25) + + +### Bug Fixes + +* **nfs:** Optional arguments for records like textRecord ([#2605](https://github.com/ionic-team/ionic-native/issues/2605)) ([b635ba9](https://github.com/ionic-team/ionic-native/commit/b635ba9)) +* **user-agent:** Plugin not installed ([#2607](https://github.com/ionic-team/ionic-native/issues/2607)) ([79cb478](https://github.com/ionic-team/ionic-native/commit/79cb478)) + + + # [5.0.0-beta.14](https://github.com/ionic-team/ionic-native/compare/v4.10.0...v5.0.0-beta.14) (2018-07-18) diff --git a/package-lock.json b/package-lock.json index 21a8b380..1e79fc56 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2709,6 +2709,149 @@ "lodash": "^4.2.1", "meow": "^4.0.0", "tempfile": "^1.1.1" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } } }, "conventional-changelog-codemirror": { @@ -2739,6 +2882,14 @@ "read-pkg": "^1.1.0", "read-pkg-up": "^1.0.1", "through2": "^2.0.0" + }, + "dependencies": { + "dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true + } } }, "conventional-changelog-ember": { @@ -2818,6 +2969,155 @@ "semver": "^5.5.0", "split": "^1.0.0", "through2": "^2.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } } }, "conventional-commit-types": { @@ -2849,6 +3149,149 @@ "split2": "^2.0.0", "through2": "^2.0.0", "trim-off-newlines": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } } }, "convert-source-map": { @@ -3126,12 +3569,6 @@ "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", "dev": true }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -5464,6 +5901,149 @@ "meow": "^4.0.0", "split2": "^2.0.0", "through2": "^2.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } } }, "git-remote-origin-url": { diff --git a/src/@ionic-native/plugins/appsflyer/index.ts b/src/@ionic-native/plugins/appsflyer/index.ts new file mode 100644 index 00000000..2f862525 --- /dev/null +++ b/src/@ionic-native/plugins/appsflyer/index.ts @@ -0,0 +1,188 @@ +import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; + +export interface AppsflyerOptions { + /** + * Appsflyer Dev key + */ + devKey: string; + + /** + * Apple Application ID(for iOS only) + */ + appId?: string; + + /** + * debug mode + */ + isDebug?: boolean; + + /** + * optout of collection of IMEI + */ + collectIMEI?: boolean; + + /** + * optout of collection of collectAndroidID + */ + collectAndroidID?: boolean; + + /** + * default false Accessing AppsFlyer Attribution / Conversion Data from the SDK (Deferred Deeplinking). Read more: Android, iOS. AppsFlyer plugin will return attribution data in onSuccess callback. + */ + onInstallConversionDataListener?: boolean; +} + +export interface AppsflyerEvent { + [x: string]: any; +} + +export interface AppsflyerInviteOptions { + channel?: string; + campaign?: string; + userParams?: { + [x: string]: any; + }; +} + +/** + * @name Appsflyer + * @description + * Appsflyer Cordova SDK support for Attribution + * + * @usage + * ```typescript + * import { Appsflyer } from '@ionic-native/appsflyer'; + * + * + * constructor(private appsflyer: Appsflyer) { } + * + * ... + * + * + * this.appsflyer.initSdk(options); + * + * ``` + * + * @interfaces + * AppsflyerOptions + * AppsflyerEvent + * AppsflyerInviteOptions + */ +@Plugin({ + pluginName: 'Appsflyer', + plugin: 'cordova-plugin-appsflyer-sdk', + pluginRef: 'window.plugins.appsFlyer', + repo: 'https://github.com/AppsFlyerSDK/cordova-plugin-appsflyer-sdk', + platforms: ['iOS', 'Android'], + install: 'Add to config.xml like stated on github and then start' +}) +@Injectable() +export class Appsflyer extends IonicNativePlugin { + /** + * initialize the SDK + * @param {AppsflyerOptions} options + * @returns {Promise} + */ + @Cordova() + initSdk(options: AppsflyerOptions): Promise { + return; + } + + /** + * These in-app events help you track how loyal users discover your app, and attribute them to specific campaigns/media-sources. Please take the time define the event/s you want to measure to allow you to track ROI (Return on Investment) and LTV (Lifetime Value). + * @param {string} eventName custom event name, is presented in your dashboard + * @param {AppsflyerEvent} eventValues event details + */ + @Cordova({ sync: true }) + trackEvent(eventName: string, eventValues: AppsflyerEvent): void {} + + /** + * Setting your own Custom ID enables you to cross-reference your own unique ID with AppsFlyer’s user ID and the other devices’ IDs. This ID is available in AppsFlyer CSV reports along with postbacks APIs for cross-referencing with you internal IDs. + * @param {string} customerUserId user id + */ + @Cordova({ sync: true }) + setAppUserId(customerUserId: string): void {} + + /** + * Setting your own Custom ID enables you to cross-reference your own unique ID with AppsFlyer’s user ID and the other devices’ IDs. This ID is available in AppsFlyer CSV reports along with postbacks APIs for cross-referencing with you internal IDs. + * @param {boolean} customerUserId In some extreme cases you might want to shut down all SDK tracking due to legal and privacy compliance. This can be achieved with the isStopTracking API. Once this API is invoked, our SDK will no longer communicate with our servers and stop functioning. + */ + @Cordova({ sync: true }) + stopTracking(isStopTracking: boolean): void {} + + /** + * Get the data from Attribution + * @returns {Promise} + */ + @Cordova() + registerOnAppOpenAttribution(): Promise { + return; + } + + /** + * Enables app uninstall tracking + * @param {string} token GCM/FCM ProjectNumber + * @returns {Promise} + */ + @Cordova() + enableUninstallTracking(token: string): Promise { + return; + } + + /** + * Allows to pass GCM/FCM Tokens that where collected by third party plugins to the AppsFlyer server. Can be used for Uninstall Tracking. + * @param {string} token GCM/FCM ProjectNumber + */ + @Cordova({ sync: true }) + updateServerUninstallToken(token: string): void {} + + /** + * Get AppsFlyer’s proprietary Device ID. The AppsFlyer Device ID is the main ID used by AppsFlyer in Reports and APIs. + */ + @Cordova() + getAppsFlyerUID(): Promise { + return; + } + + /** + * End User Opt-Out (Optional) AppsFlyer provides you a method to opt‐out specific users from AppsFlyer analytics. This method complies with the latest privacy requirements and complies with Facebook data and privacy policies. Default is FALSE, meaning tracking is enabled by default. + * @param {boolean} disable Set to true to opt-out user from tracking + */ + @Cordova({ sync: true }) + deviceTrackingDisabled(disable: boolean): void {} + + /** + * Set AppsFlyer’s OneLink ID. Setting a valid OneLink ID will result in shortened User Invite links, when one is generated. The OneLink ID can be obtained on the AppsFlyer Dashboard. + * @param {string} oneLinkId OneLink ID + */ + @Cordova({ sync: true }) + setAppInviteOneLinkID(oneLinkId: string): void {} + + /** + * Allowing your existing users to invite their friends and contacts as new users to your app can be a key growth factor for your app. AppsFlyer allows you to track and attribute new installs originating from user invites within your app. + * @param {AppsflyerInviteOptions} options Parameters for Invite link + * @returns {Promise} + */ + @Cordova() + generateInviteLink(options: AppsflyerInviteOptions): Promise { + return; + } + + /** + * Use this call to track an impression use the following API call. Make sure to use the promoted App ID as it appears within the AppsFlyer dashboard. + * @param {string} appId Promoted Application ID + * @param {string} campaign Promoted Campaign + */ + @Cordova({ sync: true }) + trackCrossPromotionImpression(appId: string, campaign: string): void {} + + /** + * Use this call to track the click and launch the app store's app page (via Browser) + * @param {string} appId Promoted Application ID + * @param {string} campaign Promoted Campaign + * @param {Object} options Additional Parameters to track + */ + @Cordova({ sync: true }) + trackAndOpenStore(appId: string, campaign: string, options: Object): void {} +} diff --git a/src/@ionic-native/plugins/branch-io/index.ts b/src/@ionic-native/plugins/branch-io/index.ts new file mode 100644 index 00000000..49f061bc --- /dev/null +++ b/src/@ionic-native/plugins/branch-io/index.ts @@ -0,0 +1,235 @@ +import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; + +export interface BranchIoPromise { + $identity_id?: number; + $one_time_use?: boolean; + '+click_timestamp'?: number; + '+clicked_branch_link'?: boolean; + '+is_first_session'?: boolean; + '+match_guaranteed'?: boolean; + contentMetadata?: string; + source?: string; + '~campaign'?: string; + '~channel'?: string; + '~creation_source'?: string; + '~feature'?: string; + '~id'?: number; + '~referring_link:'?: string; + [x: string]: any; +} + +export interface BranchIoAnalytics { + channel?: string; + feature?: string; + campaign?: string; + stage?: string; + tags?: string[]; + [x: string]: any; +} + +export interface BranchIoProperties { + contentMetadata?: { + [x: string]: any; + }; + [x: string]: any; +} + +export interface BranchUniversalObject { + generateShortUrl( + analytics: BranchIoAnalytics, + properties: BranchIoProperties + ): Promise; + registerView(): Promise; + showShareSheet( + analytics: BranchIoAnalytics, + properties: BranchIoProperties, + shareText: string + ): Promise; + onShareSheetLaunched(callback: any): void; + onShareSheetDismissed(callback: any): void; + onLinkShareResponse(callback: any): void; + onChannelSelected(callback: any): void; + listOnSpotlight(): Promise; +} + +/** + * @name BranchIo + * @description + * Branch.io is an attribution service for deeplinking and invitation links + * + * @usage + * ``` + * import { BranchIo } from '@ionic-native/branch-io'; + * + * + * constructor(private branch: BranchIo) { } + * + * ``` + * + * @interfaces + * BranchIoPromise + * BranchIoAnalytics + * BranchIoProperties + * BranchUniversalObject + * + */ +@Plugin({ + pluginName: 'BranchIo', + plugin: 'branch-cordova-sdk', + pluginRef: 'Branch', + repo: + 'https://github.com/BranchMetrics/cordova-ionic-phonegap-branch-deep-linking', + platforms: ['iOS', 'Android'] +}) +@Injectable() +export class BranchIo extends IonicNativePlugin { + /** + * for development and debugging only + * @param {boolean} enable Enable debug + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + setDebug(enable: boolean): Promise { + return; + } + + /** + * Disable tracking + * @param {boolean} disable disable tracking + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + disableTracking(disable: boolean): Promise { + return; + } + + /** + * Initializes Branch + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + initSession(): Promise { + return; + } + + /** + * Set Request Metadata + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + setRequestMetadata(): Promise { + return; + } + + /** + * for better Android matching + * @param {string} linkDomain LinkDomain at branch + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + setCookieBasedMatching(linkDomain: string): Promise { + return; + } + + /** + * First data + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + getFirstReferringParams(): Promise { + return; + } + + /** + * Latest data + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + getLatestReferringParams(): Promise { + return; + } + + /** + * Set identy of user + * @param {string} userId + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + setIdentity(userId: string): Promise { + return; + } + + /** + * Logout user + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + logout(): Promise { + return; + } + + /** + * Registers a custom event + * @param {string} eventName + * @param {any} metaData + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + userCompletedAction(eventName: string, metaData: any): Promise { + return; + } + + /** + * Send Commerce Event + * @param {string} event + * @param {any} metaData + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + sendCommerceEvent(event: string, metaData: any): Promise { + return; + } + + /** + * create a branchUniversalObj variable to reference with other Branch methods + * @param {BranchIoProperties} properties + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + createBranchUniversalObject( + properties: BranchIoProperties + ): Promise { + return; + } + + /** + * Load credits + * @param {any} bucket + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + loadRewards(bucket: any): Promise { + return; + } + + /** + * Redeem Rewards + * @param {string} value + * @param {any} bucket + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + redeemRewards(value: string, bucket: any): Promise { + return; + } + + /** + * Show credit history + * @return {Promise} + */ + @Cordova({ otherPromise: true }) + creditHistory(): Promise { + return; + } +} diff --git a/src/@ionic-native/plugins/call-directory/index.ts b/src/@ionic-native/plugins/call-directory/index.ts index 573b5d1b..689b135d 100644 --- a/src/@ionic-native/plugins/call-directory/index.ts +++ b/src/@ionic-native/plugins/call-directory/index.ts @@ -6,6 +6,11 @@ export interface CallDirectoryItem { number: string; } +export interface CallDirectoryLog { + plugin: Array; + extension: Array; +} + /** * @name Call Directory * @description @@ -29,6 +34,10 @@ export interface CallDirectoryItem { * .then(res: string) => console.log(res)) * .catch((error: any) => console.error(error)); * ``` + * + * @Interfaces + * CallDirectoryItem + * CallDirectoryLog */ @Plugin({ pluginName: 'CallDirectory', @@ -97,4 +106,13 @@ export class CallDirectory extends IonicNativePlugin { reloadExtension(): Promise { return; } + + /** + * Get log from plugin and call directory extension + * @return {Promise} Returns a promise with an object of log messages + */ + @Cordova() + getLog(): Promise { + return; + } } diff --git a/src/@ionic-native/plugins/in-app-browser/index.ts b/src/@ionic-native/plugins/in-app-browser/index.ts index b3f6d4d3..6aeae778 100644 --- a/src/@ionic-native/plugins/in-app-browser/index.ts +++ b/src/@ionic-native/plugins/in-app-browser/index.ts @@ -1,5 +1,10 @@ import { Injectable } from '@angular/core'; -import { CordovaInstance, InstanceCheck, IonicNativePlugin, Plugin } from '@ionic-native/core'; +import { + CordovaInstance, + InstanceCheck, + IonicNativePlugin, + Plugin +} from '@ionic-native/core'; import { Observable, Observer } from 'rxjs'; declare const cordova: Cordova & { InAppBrowser: any }; @@ -16,30 +21,37 @@ export interface InAppBrowserOptions { clearcache?: 'yes'; /** Set to yes to have the session cookie cache cleared before the new window is opened. */ clearsessioncache?: 'yes'; - /* (Android) Set to a string to use as the close button's caption instead of a X. Note that you need to localize this value yourself. + /* + * (Android) Set to a string to use as the close button's caption instead of a X. Note that you need to localize this value yourself. * (iOS) Set to a string to use as the Done button's caption. Note that you need to localize this value yourself. */ closebuttoncaption?: string; - /* (Android) Set to a valid hex color string, for example: #00ff00, and it will change the close button color from default, regardless of being a text or default X. Only has effect if user has location set to yes. + /* + * (Android) Set to a valid hex color string, for example: #00ff00, and it will change the close button color from default, regardless of being a text or default X. Only has effect if user has location set to yes. * (iOS) Set as a valid hex color string, for example: #00ff00, to change from the default Done button's color. Only applicable if toolbar is not disabled. */ closebuttoncolor?: string; - /** (Android Only) Set to yes to show Android browser's zoom controls, set to no to hide them. Default value is yes. */ + /* + * (Android Only) Set to yes to show Android browser's zoom controls, set to no to hide them. Default value is yes. */ zoom?: 'yes' | 'no'; - /** - * Set to yes to use the hardware back button to navigate backwards through the InAppBrowser's history. - * If there is no previous page, the InAppBrowser will close. The default value is yes, so you must set it to no if you want the back button to simply close the InAppBrowser. - */ + /* + * (Android & Windows Phone Only) Set to yes to use the hardware back button to navigate backwards through the InAppBrowser's history. + * If there is no previous page, the InAppBrowser will close. The default value is yes, so you must set it to no if you want the back button to simply close the InAppBrowser. */ hardwareback?: 'yes' | 'no'; - /** Set to yes to prevent HTML5 audio or video from autoplaying (defaults to no). */ + /* + * Set to yes to prevent HTML5 audio or video from autoplaying (defaults to no). */ mediaPlaybackRequiresUserAction?: 'yes' | 'no'; - /* (Android) Set to yes to hide the navigation buttons on the location toolbar, only has effect if user has location set to yes. The default value is no. + /* + * (Android) Set to yes to hide the navigation buttons on the location toolbar, only has effect if user has location set to yes. The default value is no. * (iOS) Set to yes or no to turn the toolbar navigation buttons on or off (defaults to no). Only applicable if toolbar is not disabled.*/ hidenavigationbuttons?: 'yes' | 'no'; - /* (Android) Set to yes to hide the url bar on the location toolbar, only has effect if user has location set to yes. The default value is no.*/ + /* + * (Android) Set to yes to hide the url bar on the location toolbar, only has effect if user has location set to yes. The default value is no.*/ hideurlbar?: 'yes' | 'no'; - /* (Android) Set to a valid hex color string, for example: #00ff00, and it will change the color of both navigation buttons from default. Only has effect if user has location set to yes and not hidenavigationbuttons set to yes. + /* + * (Android) Set to a valid hex color string, for example: #00ff00, and it will change the color of both navigation buttons from default. Only has effect if user has location set to yes and not hidenavigationbuttons set to yes. * (iOS) Set as a valid hex color string, for example: #00ff00, to change from the default color. Only applicable if navigation buttons are visible. */ navigationbuttoncolor?: string; - /* (Android) Set to a valid hex color string, for example: #00ff00, and it will change the color the toolbar from default. Only has effect if user has location set to yes. + /* + * (Android) Set to a valid hex color string, for example: #00ff00, and it will change the color the toolbar from default. Only has effect if user has location set to yes. * (iOS) Set as a valid hex color string, for example: #00ff00, to change from the default color of the toolbar. Only applicable if toolbar is not disabled.*/ toolbarcolor?: string; /** (Android Only) Set to yes to make InAppBrowser WebView to pause/resume with the app to stop background audio (this may be required to avoid Google Play issues) */ diff --git a/src/ionic-native/plugins/in-app-review b/src/@ionic-native/plugins/in-app-review/index.ts similarity index 100% rename from src/ionic-native/plugins/in-app-review rename to src/@ionic-native/plugins/in-app-review/index.ts diff --git a/src/@ionic-native/plugins/janalytics/index.ts b/src/@ionic-native/plugins/janalytics/index.ts new file mode 100644 index 00000000..a90f409e --- /dev/null +++ b/src/@ionic-native/plugins/janalytics/index.ts @@ -0,0 +1,95 @@ +import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; + +/** + * @name jAnalytics + * @description + * This plugin does something + * + * @usage + * ```typescript + * import { JAnalytics } from '@ionic-native/JAnalytics'; + * + * + * constructor(private jAnalytics: JAnalytics) { } + * + * ... + * + * + * this.jAnalytics.functionName('Hello', 123) + * .then((res: any) => console.log(res)) + * .catch((error: any) => console.error(error)); + * + * ``` + */ +@Plugin({ + pluginName: 'JAnalytics', + plugin: 'cordova-plugin-janalytics', + pluginRef: 'JAnalytics', + repo: 'https://github.com/jpush/cordova-plugin-janalytics', + install: + 'ionic cordova plugin add cordova-plugin-janalytics --variable APP_KEY=YOUR_APP_KEY', + installVariables: ['APP_KEY'], + platforms: ['Android', 'iOS'] +}) +@Injectable() +export class JAnalytics extends IonicNativePlugin { + /** + * This function does something + * @return {Promise} Returns a promise that resolves when something happens + */ + @Cordova() + init(): Promise { + return; + } + + @Cordova() + initCrashHandler(): Promise { + return; + } + + @Cordova() + stopCrashHandler(): Promise { + return; + } + + @Cordova() + onPageStart(params: any): Promise { + return; + } + + @Cordova() + onPageEnd(params: any): Promise { + return; + } + + @Cordova() + addCountEvent(params: any): Promise { + return; + } + + @Cordova() + addCalculateEvent(params: any): Promise { + return; + } + + @Cordova() + addLoginEvent(params: any): Promise { + return; + } + + @Cordova() + addRegisterEvent(params: any): Promise { + return; + } + + @Cordova() + addBrowseEvent(params: any): Promise { + return; + } + + @Cordova() + addPurchaseEvent(params: any): Promise { + return; + } +} diff --git a/src/@ionic-native/plugins/local-notifications/index.ts b/src/@ionic-native/plugins/local-notifications/index.ts index 691c55f5..ae4579e4 100755 --- a/src/@ionic-native/plugins/local-notifications/index.ts +++ b/src/@ionic-native/plugins/local-notifications/index.ts @@ -122,10 +122,15 @@ export interface ILocalNotificationAction { title?: string; /** - * Specifies whether the action causes the app to launch in the foreground + * Make this notification show when app in foreground. */ foreground?: boolean; + /** + * Specifies whether the action causes the app to launch in the foreground + */ + launch?: boolean; + /** * If the value is 'decline' the action is displayed with special highlighting to indicate that it performs a destructive task */ @@ -143,6 +148,24 @@ export interface ILocalNotificationAction { */ icon?: string; + /** + * ANDROID ONLY + * An array of pre-defined choices for users input + */ + choices?: string[]; + + /** + * ANDROID ONLY + * Specifies whether the user can provide arbitrary text values + */ + editable?: boolean; + + /** + * IOS ONLY + * The title of the text input button that is displayed to the user. + */ + submitTitle?: string; + /** * The type of the action. If omitted 'button' is used. */ diff --git a/src/@ionic-native/plugins/mixpanel/index.ts b/src/@ionic-native/plugins/mixpanel/index.ts index 8346c4cc..c2968d0f 100644 --- a/src/@ionic-native/plugins/mixpanel/index.ts +++ b/src/@ionic-native/plugins/mixpanel/index.ts @@ -33,15 +33,14 @@ declare var mixpanel: any; }) @Injectable() export class Mixpanel extends IonicNativePlugin { - /** - * + * If originalId is omitted, aliasId will be used as originalId. * @param aliasId {string} * @param originalId {string} * @returns {Promise} */ @Cordova() - alias(aliasId: string, originalId: string): Promise { + alias(aliasId: string, originalId?: string): Promise { return; } @@ -63,12 +62,13 @@ export class Mixpanel extends IonicNativePlugin { } /** - * + * The usePeople parameter is used for the iOS Mixpanel SDK. * @param distinctId {string} + * @param usePeople {boolean} * @returns {Promise} */ @Cordova() - identify(distinctId: string): Promise { + identify(distinctId: string, usePeople?: boolean): Promise { return; } @@ -87,7 +87,9 @@ export class Mixpanel extends IonicNativePlugin { * @returns {Promise} */ @Cordova() - getSuperProperties(): Promise { return; } + getSuperProperties(): Promise { + return; + } /** * @@ -105,7 +107,9 @@ export class Mixpanel extends IonicNativePlugin { * @returns {Promise} */ @Cordova() - registerSuperPropertiesOnce(superProperties: any): Promise { return; } + registerSuperPropertiesOnce(superProperties: any): Promise { + return; + } /** * @@ -113,7 +117,9 @@ export class Mixpanel extends IonicNativePlugin { * @returns {Promise} */ @Cordova() - unregisterSuperProperty(superPropertyName: string): Promise { return; } + unregisterSuperProperty(superPropertyName: string): Promise { + return; + } /** * @@ -147,7 +153,6 @@ export class Mixpanel extends IonicNativePlugin { track(eventName: string, eventProperties?: any): Promise { return; } - } /** @@ -160,6 +165,24 @@ export class Mixpanel extends IonicNativePlugin { }) @Injectable() export class MixpanelPeople extends IonicNativePlugin { + /** + * + * @param appendObject {any} + * @return {Promise} + */ + @Cordova() + append(appendObject: any): Promise { + return; + } + + /** + * + * @return {Promise} + */ + @Cordova() + deleteUser(): Promise { + return; + } /** * @@ -203,7 +226,7 @@ export class MixpanelPeople extends IonicNativePlugin { /** * - * @param peopleProperties + * @param peopleProperties {any} * @return {Promise} */ @Cordova() @@ -211,4 +234,34 @@ export class MixpanelPeople extends IonicNativePlugin { return; } + /** + * + * @param amount {number} + * @param chargeProperties + * @return {Promise} + */ + @Cordova() + trackCharge(amount: number, chargeProperties: any): Promise { + return; + } + + /** + * + * @param propertiesArray + * @return {Promise} + */ + @Cordova() + unset(propertiesArray: Array): Promise { + return; + } + + /** + * + * @param unionObject {any} + * @return {Promise} + */ + @Cordova() + union(unionObject: any): Promise { + return; + } } diff --git a/src/@ionic-native/plugins/ms-adal/index.ts b/src/@ionic-native/plugins/ms-adal/index.ts index 29025a94..72c70eec 100644 --- a/src/@ionic-native/plugins/ms-adal/index.ts +++ b/src/@ionic-native/plugins/ms-adal/index.ts @@ -1,8 +1,8 @@ import { checkAvailability, CordovaInstance, InstanceProperty, IonicNativePlugin, Plugin } from '@ionic-native/core'; import { Injectable } from '@angular/core'; +import { checkAvailability, CordovaInstance, InstanceProperty, IonicNativePlugin, Plugin } from '@ionic-native/core'; export interface AuthenticationResult { - accessToken: string; accesSTokenType: string; expiresOn: Date; @@ -18,7 +18,6 @@ export interface AuthenticationResult { * @returns {String} The authorization header. */ createAuthorizationHeader(): string; - } export interface TokenCache { @@ -52,7 +51,6 @@ export interface UserInfo { uniqueId: string; } - /** * @name MS ADAL * @description @@ -101,12 +99,17 @@ export class MSAdal extends IonicNativePlugin { createAuthenticationContext(authority: string, validateAuthority = true) { let authContext: any; - if (checkAvailability(MSAdal.getPluginRef(), null, MSAdal.getPluginName()) === true) { - authContext = new (MSAdal.getPlugin()).AuthenticationContext(authority); + if ( + checkAvailability(MSAdal.getPluginRef(), null, MSAdal.getPluginName()) === + true + ) { + authContext = new (MSAdal.getPlugin()).AuthenticationContext( + authority, + validateAuthority + ); } return new AuthenticationContext(authContext); } - } /** diff --git a/src/@ionic-native/plugins/onesignal/index.ts b/src/@ionic-native/plugins/onesignal/index.ts index f10b5e37..08eabd5e 100644 --- a/src/@ionic-native/plugins/onesignal/index.ts +++ b/src/@ionic-native/plugins/onesignal/index.ts @@ -372,7 +372,7 @@ export enum OSActionType { * ``` * * 3. From the root of your project make the file executable: - * `$ chmod +x hooks/after_prepare/030_copy_android_notification_icons.js` + * `$ chmod +x hooks/copy_android_notification_icons.js` * * * @usage diff --git a/src/@ionic-native/plugins/wechat/index.ts b/src/@ionic-native/plugins/wechat/index.ts new file mode 100644 index 00000000..a666a4e9 --- /dev/null +++ b/src/@ionic-native/plugins/wechat/index.ts @@ -0,0 +1,166 @@ +import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; + +/** + * @name Wechat + * @description + * A cordova plugin, a JS version of Wechat SDK + * + * @usage + * ```typescript + * import { Wechat } from '@ionic-native/wechat'; + * + * + * constructor(private wechat: Wechat) { } + * + * ... + * + * + * this.wechat.functionName('Hello', 123) + * .then((res: any) => console.log(res)) + * .catch((error: any) => console.error(error)); + * + * ``` + */ +@Plugin({ + pluginName: 'Wechat', + plugin: 'cordova-plugin-wechat', + pluginRef: 'Wechat', + repo: 'https://github.com/xu-li/cordova-plugin-wechat.git', + install: 'cordova plugin add cordova-plugin-wechat --variable wechatappid=YOUR_WECHAT_APPID', + installVariables: ['wechatappid'], + platforms: ['Android', 'iOS'] +}) +@Injectable() +export class Wechat extends IonicNativePlugin { + Scene: { + SESSION: 0; // 聊天界面 + TIMELINE: 1; // 朋友圈 + FAVORITE: 2; // 收藏 + }; + + Type: { + APP: 1; + EMOTION: 2; + FILE: 3; + IMAGE: 4; + MUSIC: 5; + VIDEO: 6; + WEBPAGE: 7; + }; + + @Cordova() + isInstalled(): Promise { + return; + } + + /** + * Share a message to wechat app + * + * @example + * + * this.wechat.share({ + * message: { + * title: "Message Title", + * description: "Message Description(optional)", + * mediaTagName: "Media Tag Name(optional)", + * thumb: "http://YOUR_THUMBNAIL_IMAGE", + * media: { + * type: Wechat.Type.WEBPAGE, // webpage + * webpageUrl: "https://github.com/xu-li/cordova-plugin-wechat" // webpage + * } + * }, + * scene: this.wechat.Scene.TIMELINE // share to Timeline + * }.then(() => { + * console.log('share success'); + * }) + * .catch(error => { + * console.log(error); + * }); + * + */ + @Cordova() + share(params: any): Promise { + return; + } + + /** + * Sending an auth request to Wechat + * + * @example + * + * this.wechat.auth.then((res) => { alert(res.code); }); + * + */ + auth(scope: any, state: any): Promise { + return; + } + + /** + * Send a payment request + * + * @link https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=9_1 + * @example + * + * var params = { + * mch_id: '10000100', // merchant id + * prepay_id: 'wx201411101639507cbf6ffd8b0779950874', // prepay id returned from server + * nonce: '1add1a30ac87aa2db72f57a2375d8fec', // nonce string returned from server + * timestamp: '1439531364', // timestamp + * sign: '0CB01533B8C1EF103065174F50BCA001', // signed string + * }; + * this.wechat.sendPaymentRequest(params).then(() => { + * console.log("Success"); + * }).catch(error => { + * console.log(error); + * }); + * + */ + sendPaymentRequest(params: any): Promise { + return; + } + + /** + * jumpToBizProfile (跳转到某个微信公众号)2016-11-11 测试是失效的,囧 + * + * @link https://segmentfault.com/a/1190000007204624 + * @link https://segmentfault.com/q/1010000003907796 + * @example + * + * var params = { + * info: 'gh_xxxxxxx', // 公众帐号原始ID + * type: 'Normal' // 普通号 + * } + * or + * var params = { + * info: 'extMsg', // 相关的硬件二维码串 + * type: 'Device' // 硬件号 + * }; + * this.wechat.jumpToBizProfile(params).then(()=> { + * console.log("Success"); + * }).catch(error => { + * console.log(error); + * }); + * + */ + jumpToWechat(url: string): Promise { + return; + } + + /** + * chooseInvoiceFromWX exq:choose invoices from Wechat card list + * + * @example + * + * params: signType, cardSign, nonceStr, timeStamp all required + * this.wechat.chooseInvoiceFromWX(params).then(() => { + * console.log("Success"); + * }).catch(error => { + * console.log(error); + * }); + * + */ + chooseInvoiceFromWX(params: any): Promise { + return; + } +}