Compare commits

..
Author SHA1 Message Date
Daniel Sogl 09e5f562fa feat(sqlite): add Android provider options, fix abort call, add Browser platform 2026-07-27 22:14:56 +02:00
Daniel Sogl 1204bc52e7 chore(deps): update angular to 21.2.18
Angular 21 needs typescript >=5.9 <6.1; the pinned ~5.9.3 already satisfies
it, and the node engine range is unchanged from 20.

Verified against the published 9.3.0 artifacts (built with Angular 20.3.18):
the emitted .d.ts files are byte-identical and the only diff in the emitted
JS is the partial-compilation metadata string, version "20.3.18" -> "21.2.18".
minVersion stays "12.0.0", so the Angular linker floor for consumers does not
move — the library only uses @Injectable, whose declaration format has been
stable since Angular 12.

Raises the renovate cap accordingly. Angular 22 stays out: it requires
typescript >=6.0 <6.1, which turns the `module: ES2022` + `moduleResolution:
Node16` pair in scripts/build/ngx.ts into a hard TS5110 error.
2026-07-27 21:52:32 +02:00
Daniel Sogl 8b997cf357 fix(deps): update angular to 20.3.26 to patch @babel/core advisory
@angular/compiler-cli pinned @babel/core 7.29.0, which is affected by
GHSA-4x5r-pxfx-6jf8 (arbitrary file read via sourceMappingURL). 20.3.26 pins
7.29.7. Staying inside Angular 20 keeps the emitted partial-compilation
declarations unchanged (minVersion 12.0.0), so nothing changes for consumers.

npm audit fix additionally resolved the transitive brace-expansion
GHSA-3jxr-9vmj-r5cp in the lockfile.
2026-07-27 21:41:54 +02:00
Daniel Sogl 8f1a6da545 ci: let renovate manage github action versions
enabledManagers was limited to npm, so action versions never got update PRs
and drifted up to three majors behind — checkout and setup-node were still on
v4 while v7 was current.

The existing packageRules all match on `matchManagers: ["npm"]`, so action
updates fall through to the defaults: individual PRs, no automerge, reviewed
like any other major.
2026-07-27 21:35:14 +02:00
Daniel Sogl ef358238c2 ci: update release-please-action to v5
The only breaking change in v5.0.0 is the move to the node 24 runtime; inputs,
outputs and the manifest/config format are unchanged. Kept as its own commit
since this action drives the release flow and is the one worth reverting alone
if anything misbehaves.
2026-07-27 21:35:14 +02:00
Daniel Sogl 1789d08183 ci: update first-party actions to latest majors
checkout v4.3.1 -> v7.0.1, setup-node v4.4.0 -> v7.0.0, stale v9.1.0 -> v10.4.0.

The breaking changes across those majors do not apply here:
- checkout v5/v6 harden `pull_request_target` checkouts; no workflow uses it
- setup-node v5 auto-caches when package.json has a `packageManager` field;
  it has none, and `cache: npm` is set explicitly anyway
- setup-node v7 drops the dummy NODE_AUTH_TOKEN export; the publish job sets
  NODE_AUTH_TOKEN itself
- stale v10 only moves the runtime to node 24

All of them also raise the runtime to node 24, which clears the deprecation
warnings on recent runs.
2026-07-27 21:35:14 +02:00
Daniel Sogl 4de0e83d51 ci: run workflows on node 24
Also drops the explicit `npm install -g npm@latest` step: node 24 bundles
npm 11.16, well over the >= 11.5.1 that trusted publishing requires. Pulling
an unpinned npm@latest right before publishing 258 packages was the larger
risk of the two.
2026-07-27 21:35:14 +02:00
b853b94f2d chore: release main (#5161)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-27 21:20:03 +02:00
Daniel Sogl 9818f74831 ci: publish to npm via trusted publishing (OIDC)
npm validates the OIDC claim of the entry-point workflow, not the one that
runs `npm publish`. Calling publish.yml via workflow_call meant the trust
check could never match, so the publish job moves inline into
release-please.yml and publish.yml is removed.

setup-node with Node 22 ships npm 10.x; trusted publishing needs >= 11.5.1,
hence the explicit npm upgrade before publishing.

NPM_TOKEN stays as a fallback for packages that have no trusted publisher
yet — a brand new plugin cannot get one until it exists on npm. OIDC takes
precedence wherever a config is present.

Adds scripts/tasks/trust-packages.sh to configure the trusted publisher for
all 258 packages; npm has no multi-package call and `npm trust` requires
interactive 2FA, so it runs locally, in parallel, and is resumable.
2026-07-27 21:18:10 +02:00
Venkadesh PandGitHub 4294ebb2ff feat(unvired-cordova-sdk): update SDK interface with push config and missing kernel methods (#5189)
- Add `firebasePushConfig` property to `LoginParameters`
- Export `FirebasePushConfig` interface for Web/Electron push setup
- Add missing SDK methods (`checkConnectionStatus`, `getDatabasePath`, `downloadAttachmentSync`, `unRegisterNotifListener`, `prepareDatabaseForExport`, `updateSyncItemsCount`, `setAuthCredentials`)
2026-07-27 20:41:27 +02:00
cd687ffcb7 chore(deps): update linting and formatting (#5191)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-27 14:42:42 +00:00
fda4686768 chore(deps): update dependency rollup to ^4.62.3 (#5190)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-27 05:10:22 +00:00
01155f6618 chore(deps-dev): bump esbuild from 0.28.0 to 0.28.1 (#5166)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.28.0 to 0.28.1.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.28.0...v0.28.1)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-21 22:31:37 +02:00
8f16af0e8b chore(deps): update linting and formatting (#5188)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-21 14:03:12 +00:00
587534e401 chore(deps): update dependency @swc/core to ^1.15.46 (#5187)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-20 09:12:21 +00:00
ad2b96532b chore(deps): update dependency tsx to ^4.23.1 (#5186)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-13 19:51:42 +00:00
3aba9fb3be chore(deps): update dependency @types/node to ^24.13.3 (#5185)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-13 08:41:02 +00:00
c929197b72 chore(deps): update linting and formatting (#5184)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-06 06:42:21 +00:00
c889c29fd7 chore(deps): update dependency typedoc to ^0.28.20 (#5183)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-06 06:39:34 +00:00
92f25e05f0 chore(deps): lock file maintenance (#5182)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-29 06:08:59 +00:00
1323d60d93 chore(deps): update dependency eslint-plugin-jsdoc to v63 (#5181)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-29 02:05:30 +00:00
5d4b19b16f chore(deps): update dependency @types/node to v24 (#5179)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-29 02:04:02 +00:00
100c31f4ae chore(deps): update linting and formatting (#5178)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-29 02:02:26 +00:00
b1c6135d40 chore(deps): update dependency @types/node to ^22.20.0 (#5177)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-29 02:00:35 +00:00
1ddb8ca2b9 chore(deps): update dependency @swc/core to ^1.15.43 (#5176)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-29 01:58:05 +00:00
7042240c4c chore(deps): update documentation tools to ^4.12.0 (#5173)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 05:29:56 +00:00
b27760071f chore(deps): update build and bundling tools to ^4.62.2 (#5172)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 05:28:17 +00:00
e5c5ab5646 chore(deps): update typescript type definitions to ^22.19.21 (#5168)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-15 13:05:12 +00:00
2655a557d2 chore(deps): update testing framework to ^1.15.41 (#5167)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-15 05:13:50 +00:00
346b93dae1 chore(deps): update build and bundling tools (#5165)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-08 12:02:02 +00:00
0687f8b4f8 chore(deps): update typescript type definitions to ^22.19.20 (#5164)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-08 05:13:50 +00:00
8dbb439908 chore(deps): update testing framework (#5163)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-25 08:44:47 +00:00
dbcfe59b75 chore(deps): update dependency tsx to ^4.22.3 (#5162)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-25 04:55:45 +00:00
d7d7f5ba7c chore(deps): update dependency @types/node to ^22.19.19 (#5160)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-18 08:56:10 +00:00
dbcd8c0bda chore(deps): update build and bundling tools (#5159)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-18 05:40:17 +00:00
2f7eca8932 chore: release main (#5148)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-11 10:43:34 +02:00
0c5380ff10 chore(deps): update dependency rollup to ^4.60.3 (#5158)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 10:42:59 +02:00
Uglješa ErcegandGitHub fa13dd16f4 feat(adjust): update adjust sdk index.ts api to v5.6.0 (#5154) 2026-05-11 10:42:38 +02:00
70d5b1e2f2 chore(deps): update dependency typescript to ~5.9.3 (#5151)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 10:42:17 +02:00
694078a325 chore(deps): update dependency @types/node to ^22.19.18 (#5157)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 05:54:57 +00:00
4597727725 chore(deps): update linting and formatting (#5156)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 10:27:25 +00:00
0ef3fa9655 chore(deps): update dependency @swc/core to ^1.15.33 (#5155)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 06:26:57 +00:00
cc087382e4 chore(deps): update linting and formatting (#5152)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-27 05:24:07 +00:00
5b4a0a4eff chore(deps): update dependency rollup to ^4.60.2 (#5147)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 09:41:30 +00:00
ee64b91371 chore(deps): update dependency @swc/core to ^1.15.30 (#5146)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 09:09:04 +00:00
9005eab47e chore: release main (#5145)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-15 11:01:37 +02:00
ff293a931e fix: restore v9 plugin exports (#5144)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-15 11:00:56 +02:00
14 changed files with 1653 additions and 1275 deletions
+3 -3
View File
@@ -15,12 +15,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.3.1
- uses: actions/checkout@v7.0.1
- name: Setup Node.js
uses: actions/setup-node@v4.4.0
uses: actions/setup-node@v7.0.0
with:
node-version: 22
node-version: 24
cache: npm
- name: Install dependencies
-39
View File
@@ -1,39 +0,0 @@
name: Publish to npm
on:
workflow_call:
workflow_dispatch:
permissions:
contents: read
id-token: write
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.3.1
- name: Setup Node.js
uses: actions/setup-node@v4.4.0
with:
node-version: 22
cache: npm
registry-url: https://registry.npmjs.org
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint -- --quiet
- name: Test
run: npm test
- name: Build
run: npm run build
- name: Publish to npm
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npm run npmpub
+37 -3
View File
@@ -21,14 +21,48 @@ jobs:
steps:
- name: Run Release Please
id: release
uses: googleapis/release-please-action@v4.4.0
uses: googleapis/release-please-action@v5.0.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
config-file: release-please-config.json
manifest-file: .release-please-manifest.json
# npm trusted publishing validates the OIDC claim of the *entry point* workflow,
# not the one that runs `npm publish`. Keep this job inline — a reusable workflow
# here breaks the trust check. See https://github.com/npm/documentation/issues/1755
publish:
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
uses: ./.github/workflows/publish.yml
secrets: inherit
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@v7.0.1
- name: Setup Node.js
uses: actions/setup-node@v7.0.0
with:
# node 24 bundles npm 11.16, over the >= 11.5.1 that trusted publishing needs
node-version: 24
cache: npm
registry-url: https://registry.npmjs.org
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint -- --quiet
- name: Test
run: npm test
- name: Build
run: npm run build
- name: Publish to npm
env:
# fallback for packages without a trusted publisher yet (e.g. brand new plugins).
# OIDC takes precedence whenever the package has one configured.
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npm run npmpub
+1 -1
View File
@@ -12,7 +12,7 @@ jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v9.1.0
- uses: actions/stale@v10.4.0
with:
stale-issue-message: >
This issue has been automatically marked as inactive due to lack of
+2
View File
@@ -7,3 +7,5 @@ src/@awesome-cordova-plugins/plugins/**/ngx
*.d.ts
injectable-classes.json
# npm trust bulk setup progress
.npm-trust-done
+1 -1
View File
@@ -1,3 +1,3 @@
{
".": "9.1.3"
".": "9.3.0"
}
+62
View File
@@ -256,6 +256,68 @@
## [9.3.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/awesome-cordova-plugins-v9.2.0...awesome-cordova-plugins-v9.3.0) (2026-07-27)
### Features
* **unvired-cordova-sdk:** update SDK interface with push config and missing kernel methods ([#5189](https://github.com/danielsogl/awesome-cordova-plugins/issues/5189)) ([4294ebb](https://github.com/danielsogl/awesome-cordova-plugins/commit/4294ebb2ffc0b6a384a53785a2b84a9efc9e24f9))
### Miscellaneous Chores
* **deps-dev:** bump esbuild from 0.28.0 to 0.28.1 ([#5166](https://github.com/danielsogl/awesome-cordova-plugins/issues/5166)) ([01155f6](https://github.com/danielsogl/awesome-cordova-plugins/commit/01155f661827d9ed9c21a29f837c8479fd2f43b3))
* **deps:** lock file maintenance ([#5182](https://github.com/danielsogl/awesome-cordova-plugins/issues/5182)) ([92f25e0](https://github.com/danielsogl/awesome-cordova-plugins/commit/92f25e05f00b240096db4db9d7a8f4676acfb6b4))
* **deps:** update build and bundling tools ([#5159](https://github.com/danielsogl/awesome-cordova-plugins/issues/5159)) ([dbcd8c0](https://github.com/danielsogl/awesome-cordova-plugins/commit/dbcd8c0bda657ed65cbfbf8ffeec4094b5cfa399))
* **deps:** update build and bundling tools ([#5165](https://github.com/danielsogl/awesome-cordova-plugins/issues/5165)) ([346b93d](https://github.com/danielsogl/awesome-cordova-plugins/commit/346b93dae11042ace6c57e516ce236b1e58a9081))
* **deps:** update build and bundling tools to ^4.62.2 ([#5172](https://github.com/danielsogl/awesome-cordova-plugins/issues/5172)) ([b277600](https://github.com/danielsogl/awesome-cordova-plugins/commit/b27760071fa7113bc50ce3c6a6d24937bebb9c0b))
* **deps:** update dependency @swc/core to ^1.15.43 ([#5176](https://github.com/danielsogl/awesome-cordova-plugins/issues/5176)) ([1ddb8ca](https://github.com/danielsogl/awesome-cordova-plugins/commit/1ddb8ca2b98d3087d22b76e7f01de6214a7b64ff))
* **deps:** update dependency @swc/core to ^1.15.46 ([#5187](https://github.com/danielsogl/awesome-cordova-plugins/issues/5187)) ([587534e](https://github.com/danielsogl/awesome-cordova-plugins/commit/587534e401bdb23d0cbf1e0107380e4d535096ad))
* **deps:** update dependency @types/node to ^22.19.19 ([#5160](https://github.com/danielsogl/awesome-cordova-plugins/issues/5160)) ([d7d7f5b](https://github.com/danielsogl/awesome-cordova-plugins/commit/d7d7f5ba7ca6737ad3321fa8ac8726e1724b5fae))
* **deps:** update dependency @types/node to ^22.20.0 ([#5177](https://github.com/danielsogl/awesome-cordova-plugins/issues/5177)) ([b1c6135](https://github.com/danielsogl/awesome-cordova-plugins/commit/b1c6135d401c5e64c0fa1c18c89b4a6c917c472e))
* **deps:** update dependency @types/node to ^24.13.3 ([#5185](https://github.com/danielsogl/awesome-cordova-plugins/issues/5185)) ([3aba9fb](https://github.com/danielsogl/awesome-cordova-plugins/commit/3aba9fb3be2f3819997b8bf6667193a815a64e7c))
* **deps:** update dependency @types/node to v24 ([#5179](https://github.com/danielsogl/awesome-cordova-plugins/issues/5179)) ([5d4b19b](https://github.com/danielsogl/awesome-cordova-plugins/commit/5d4b19b16f5f399d9f7c7e7d2a53907961343258))
* **deps:** update dependency eslint-plugin-jsdoc to v63 ([#5181](https://github.com/danielsogl/awesome-cordova-plugins/issues/5181)) ([1323d60](https://github.com/danielsogl/awesome-cordova-plugins/commit/1323d60d934489fb8cd6b25c58bd109763b0e81b))
* **deps:** update dependency rollup to ^4.62.3 ([#5190](https://github.com/danielsogl/awesome-cordova-plugins/issues/5190)) ([fda4686](https://github.com/danielsogl/awesome-cordova-plugins/commit/fda4686768b036acd71f700cd7ac79452ecb8475))
* **deps:** update dependency tsx to ^4.22.3 ([#5162](https://github.com/danielsogl/awesome-cordova-plugins/issues/5162)) ([dbcfe59](https://github.com/danielsogl/awesome-cordova-plugins/commit/dbcfe59b752b256a72b45ddfb27f27200de0f337))
* **deps:** update dependency tsx to ^4.23.1 ([#5186](https://github.com/danielsogl/awesome-cordova-plugins/issues/5186)) ([ad2b965](https://github.com/danielsogl/awesome-cordova-plugins/commit/ad2b96532b5010ec5b0763f4a2418ba109b0c107))
* **deps:** update dependency typedoc to ^0.28.20 ([#5183](https://github.com/danielsogl/awesome-cordova-plugins/issues/5183)) ([c889c29](https://github.com/danielsogl/awesome-cordova-plugins/commit/c889c29fd71073a87d7750af58284371523dc01c))
* **deps:** update documentation tools to ^4.12.0 ([#5173](https://github.com/danielsogl/awesome-cordova-plugins/issues/5173)) ([7042240](https://github.com/danielsogl/awesome-cordova-plugins/commit/7042240c4c6488fb02cf86ad4c025bad0fe563d8))
* **deps:** update linting and formatting ([#5178](https://github.com/danielsogl/awesome-cordova-plugins/issues/5178)) ([100c31f](https://github.com/danielsogl/awesome-cordova-plugins/commit/100c31f4aec11ec2b949be6a4a9fc844ef019484))
* **deps:** update linting and formatting ([#5184](https://github.com/danielsogl/awesome-cordova-plugins/issues/5184)) ([c929197](https://github.com/danielsogl/awesome-cordova-plugins/commit/c929197b72a546cc8da43a16a98479f98b6616ec))
* **deps:** update linting and formatting ([#5188](https://github.com/danielsogl/awesome-cordova-plugins/issues/5188)) ([8f16af0](https://github.com/danielsogl/awesome-cordova-plugins/commit/8f16af0e8be8102ad50f4e2ce63b6a5cf04272fa))
* **deps:** update linting and formatting ([#5191](https://github.com/danielsogl/awesome-cordova-plugins/issues/5191)) ([cd687ff](https://github.com/danielsogl/awesome-cordova-plugins/commit/cd687ffcb7c1a70f57d6d4ca4092ae07e4082e0a))
* **deps:** update testing framework ([#5163](https://github.com/danielsogl/awesome-cordova-plugins/issues/5163)) ([8dbb439](https://github.com/danielsogl/awesome-cordova-plugins/commit/8dbb4399089b3812530c7660625cf3e9be2836e3))
* **deps:** update testing framework to ^1.15.41 ([#5167](https://github.com/danielsogl/awesome-cordova-plugins/issues/5167)) ([2655a55](https://github.com/danielsogl/awesome-cordova-plugins/commit/2655a557d24a19941406d838ace6f2b3adcb484b))
* **deps:** update typescript type definitions to ^22.19.20 ([#5164](https://github.com/danielsogl/awesome-cordova-plugins/issues/5164)) ([0687f8b](https://github.com/danielsogl/awesome-cordova-plugins/commit/0687f8b4f891b418712db9ba3388f4c2307bff73))
* **deps:** update typescript type definitions to ^22.19.21 ([#5168](https://github.com/danielsogl/awesome-cordova-plugins/issues/5168)) ([e5c5ab5](https://github.com/danielsogl/awesome-cordova-plugins/commit/e5c5ab5646a49dbf5fd07f7de2688f75a7bb04d0))
## [9.2.0](https://github.com/danielsogl/awesome-cordova-plugins/compare/awesome-cordova-plugins-v9.1.4...awesome-cordova-plugins-v9.2.0) (2026-05-11)
### Features
* **adjust:** update adjust sdk index.ts api to v5.6.0 ([#5154](https://github.com/danielsogl/awesome-cordova-plugins/issues/5154)) ([fa13dd1](https://github.com/danielsogl/awesome-cordova-plugins/commit/fa13dd16f44dd8163854039877ff019e3b461892))
### Miscellaneous Chores
* **deps:** update dependency @swc/core to ^1.15.30 ([#5146](https://github.com/danielsogl/awesome-cordova-plugins/issues/5146)) ([ee64b91](https://github.com/danielsogl/awesome-cordova-plugins/commit/ee64b913711da74c0d76709c15bcc48abec702d8))
* **deps:** update dependency @swc/core to ^1.15.33 ([#5155](https://github.com/danielsogl/awesome-cordova-plugins/issues/5155)) ([0ef3fa9](https://github.com/danielsogl/awesome-cordova-plugins/commit/0ef3fa9655477d457401e230053f410058186641))
* **deps:** update dependency @types/node to ^22.19.18 ([#5157](https://github.com/danielsogl/awesome-cordova-plugins/issues/5157)) ([694078a](https://github.com/danielsogl/awesome-cordova-plugins/commit/694078a325882872a80997434d3a2731754271e2))
* **deps:** update dependency rollup to ^4.60.2 ([#5147](https://github.com/danielsogl/awesome-cordova-plugins/issues/5147)) ([5b4a0a4](https://github.com/danielsogl/awesome-cordova-plugins/commit/5b4a0a4efff086c91424bbf53667d57d17103e3d))
* **deps:** update dependency rollup to ^4.60.3 ([#5158](https://github.com/danielsogl/awesome-cordova-plugins/issues/5158)) ([0c5380f](https://github.com/danielsogl/awesome-cordova-plugins/commit/0c5380ff10adb71000218af62785b7ca893b44d2))
* **deps:** update dependency typescript to ~5.9.3 ([#5151](https://github.com/danielsogl/awesome-cordova-plugins/issues/5151)) ([70d5b1e](https://github.com/danielsogl/awesome-cordova-plugins/commit/70d5b1e2f2382ed06c4d7ab269a51bc4735c6319))
* **deps:** update linting and formatting ([#5152](https://github.com/danielsogl/awesome-cordova-plugins/issues/5152)) ([cc08738](https://github.com/danielsogl/awesome-cordova-plugins/commit/cc087382e4f6e458d3a2fad000cd3ca3895e4873))
* **deps:** update linting and formatting ([#5156](https://github.com/danielsogl/awesome-cordova-plugins/issues/5156)) ([4597727](https://github.com/danielsogl/awesome-cordova-plugins/commit/459772772581a20b54d2f73c508fcfd7b6286f09))
## [9.1.4](https://github.com/danielsogl/awesome-cordova-plugins/compare/awesome-cordova-plugins-v9.1.3...awesome-cordova-plugins-v9.1.4) (2026-04-15)
### Bug Fixes
* restore v9 plugin exports ([#5144](https://github.com/danielsogl/awesome-cordova-plugins/issues/5144)) ([ff293a9](https://github.com/danielsogl/awesome-cordova-plugins/commit/ff293a931e135d86e4f8b16f75fd2e8a3e42c11a))
## [9.1.3](https://github.com/danielsogl/awesome-cordova-plugins/compare/awesome-cordova-plugins-v9.1.2...awesome-cordova-plugins-v9.1.3) (2026-04-15)
+1247 -1187
View File
File diff suppressed because it is too large Load Diff
+19 -19
View File
@@ -1,6 +1,6 @@
{
"name": "awesome-cordova-plugins",
"version": "9.1.3",
"version": "9.3.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)",
@@ -27,30 +27,30 @@
"tslib": "2.8.1"
},
"devDependencies": {
"@angular/common": "20.3.18",
"@angular/compiler": "20.3.18",
"@angular/compiler-cli": "20.3.18",
"@angular/core": "20.3.18",
"@angular/common": "21.2.18",
"@angular/compiler": "21.2.18",
"@angular/compiler-cli": "21.2.18",
"@angular/core": "21.2.18",
"@eslint/js": "^10.0.0",
"@swc/core": "^1.15.24",
"@swc/core": "^1.15.46",
"@swc/jest": "^0.2.39",
"@types/cordova": "11.0.3",
"@types/jest": "^30.0.0",
"@types/node": "^22.19.17",
"eslint": "^10.1.0",
"@types/node": "^24.13.3",
"eslint": "^10.8.0",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-jsdoc": "^62.8.1",
"jest": "^30.3.0",
"jest-environment-jsdom": "^30.3.0",
"lefthook": "^2.1.4",
"prettier": "^3.8.1",
"rollup": "^4.60.1",
"eslint-plugin-jsdoc": "^63.3.1",
"jest": "^30.4.2",
"jest-environment-jsdom": "^30.4.1",
"lefthook": "^2.1.10",
"prettier": "^3.9.6",
"rollup": "^4.62.3",
"rxjs": "^7.8.2",
"tsx": "^4.21.0",
"typedoc": "^0.28.19",
"typedoc-plugin-markdown": "^4.11.0",
"typescript": "~5.8.3",
"typescript-eslint": "^8.57.2"
"tsx": "^4.23.1",
"typedoc": "^0.28.20",
"typedoc-plugin-markdown": "^4.12.0",
"typescript": "~5.9.3",
"typescript-eslint": "^8.65.0"
},
"repository": {
"type": "git",
+2 -2
View File
@@ -52,7 +52,7 @@
},
{
"groupName": "Angular",
"allowedVersions": "<=20",
"allowedVersions": "<=21",
"automerge": false,
"matchPackageNames": ["/^@angular//", "/^@angular-devkit//", "/@schematics/angular/"]
},
@@ -101,7 +101,7 @@
"prHourlyLimit": 2,
"prConcurrentLimit": 5,
"updatePinnedDependencies": false,
"enabledManagers": ["npm"],
"enabledManagers": ["npm", "github-actions"],
"ignoreDeps": [],
"ignorePaths": ["**/node_modules/**", "**/dist/**", "**/coverage/**"]
}
+109
View File
@@ -0,0 +1,109 @@
#!/usr/bin/env bash
# One-time (and after adding new plugins) bulk setup of npm trusted publishers.
# Run locally after `npm login` — `npm trust` needs interactive 2FA and cannot run in CI.
#
# ./scripts/tasks/trust-packages.sh # 4 parallel workers
# JOBS=8 ./scripts/tasks/trust-packages.sh # more, at the risk of rate limiting
#
# npm has no multi-package call, so this loops. The first package runs on its own to
# trigger the browser 2FA prompt — tick "skip 2FA for the next 5 minutes" there. That
# window is server-side, so the parallel batch afterwards runs unattended inside it.
# Parallelism is what keeps the whole set inside a single window instead of ~4.
#
# A trust call is ~2s, so JOBS=4 is ~2 req/s — 4x npm's serial guidance, and the
# reason there is no extra sleep here. If npm rate-limits, the affected packages
# just land in the failed list and the next run picks them up.
#
# Packages that already have a trust config come back as E409 — npm only ever creates,
# there is no update path — so those are treated as done. To actually *change* a config,
# revoke it first: npm trust list <pkg> && npm trust revoke <pkg> --id=<id>, then re-run.
#
# Progress is recorded in .npm-trust-done; re-running resumes where it stopped.
# Packages must already exist on npm; a brand new plugin publishes via NPM_TOKEN
# on its first release, then gets its trust config here.
set -euo pipefail
REPO=danielsogl/awesome-cordova-plugins
WORKFLOW=release-please.yml
JOBS="${JOBS:-4}"
ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
SELF="$ROOT/scripts/tasks/trust-packages.sh"
DONE="$ROOT/.npm-trust-done"
create() {
npm trust github "$1" --file "$WORKFLOW" --repo "$REPO" --allow-publish --yes
}
trust_one() {
local pkg="$1" err rc=0
err=$(mktemp)
# stderr is buffered so E409 can be detected; stdout flows through untouched,
# otherwise npm's "Press ENTER to open in the browser" prompt would be invisible
create "$pkg" 2>"$err" || rc=$?
if [ "$rc" -eq 0 ]; then
# single short line + O_APPEND is atomic, so parallel workers can't interleave
echo "$pkg" >> "$DONE"
elif grep -q "E409" "$err"; then
# already has a trust config; npm only ever creates, so this is a no-op, not a failure
echo ">> $pkg already configured, skipping" >&2
echo "$pkg" >> "$DONE"
rc=0
else
cat "$err" >&2
fi
rm -f "$err"
return "$rc"
}
# re-entry point for xargs workers
if [ "${1:-}" = "--one" ]; then
trust_one "$2"
exit
fi
packages=(core)
for dir in "$ROOT"/src/@awesome-cordova-plugins/plugins/*/; do
packages+=("$(basename "$dir")")
done
touch "$DONE"
todo=()
for name in "${packages[@]}"; do
pkg="@awesome-cordova-plugins/$name"
grep -qxF "$pkg" "$DONE" || todo+=("$pkg")
done
if [ ${#todo[@]} -eq 0 ]; then
echo "All ${#packages[@]} packages already configured."
exit 0
fi
echo "${#todo[@]} of ${#packages[@]} packages left for $REPO/.github/workflows/$WORKFLOW"
echo
echo ">> ${todo[0]} runs first. Approve in the browser and tick"
echo ">> \"skip 2FA for the next 5 minutes\" — the rest then runs unattended."
echo
trust_one "${todo[0]}" || true
if [ ${#todo[@]} -gt 1 ]; then
echo
echo "Configuring the remaining $((${#todo[@]} - 1)) with $JOBS parallel workers..."
printf '%s\n' "${todo[@]:1}" | xargs -P "$JOBS" -n1 "$SELF" --one || true
fi
failed=()
for pkg in "${todo[@]}"; do
grep -qxF "$pkg" "$DONE" || failed+=("$pkg")
done
if [ ${#failed[@]} -gt 0 ]; then
echo
printf 'failed: %s\n' "${failed[@]}"
echo
echo "An expired 2FA window is the usual cause — re-run and approve again."
echo "Re-run retries only the failures; successes are recorded in $DONE."
exit 1
fi
echo "Done."
@@ -27,6 +27,7 @@ export class AdjustConfig {
private sessionTrackingSucceededCallback: (session: AdjustSessionSuccess) => void = null;
private sessionTrackingFailedCallback: (session: AdjustSessionFailure) => void = null;
private deferredDeeplinkCallback: (deeplink: string) => void = null;
private remoteTriggerCallback: (remoteTrigger: AdjustRemoteTrigger) => void = null;
// android only
private processName: string = null;
@@ -34,6 +35,7 @@ export class AdjustConfig {
private preinstallFilePath: string = null;
private isPlayStoreKidsComplianceEnabled: boolean = null;
private fbAppId: string = null;
private isAppSetIdReadingEnabled: boolean = null;
// ios only
private isAdServicesEnabled: boolean = null;
@@ -125,6 +127,10 @@ export class AdjustConfig {
this.deferredDeeplinkCallback = deferredDeeplinkCallback;
}
setRemoteTriggerCallback(remoteTriggerCallback: (remoteTrigger: AdjustRemoteTrigger) => void): void {
this.remoteTriggerCallback = remoteTriggerCallback;
}
private getAttributionCallback(): ((attribution: AdjustAttribution) => void) | null {
return this.attributionCallback;
}
@@ -149,6 +155,10 @@ export class AdjustConfig {
return this.deferredDeeplinkCallback;
}
private getRemoteTriggerCallback(): ((remoteTrigger: AdjustRemoteTrigger) => void) | null {
return this.remoteTriggerCallback;
}
private hasAttributionCallback(): boolean {
return this.attributionCallback !== null;
}
@@ -173,6 +183,10 @@ export class AdjustConfig {
return this.deferredDeeplinkCallback !== null;
}
private hasRemoteTriggerCallback(): boolean {
return this.remoteTriggerCallback !== null;
}
// android only
setProcessName(processName: string): void {
this.processName = processName;
@@ -190,6 +204,10 @@ export class AdjustConfig {
this.fbAppId = fbAppId;
}
disableAppSetIdReading(): void {
this.isAppSetIdReadingEnabled = false;
}
// ios only
disableIdfaReading(): void {
this.isIdfaReadingEnabled = false;
@@ -525,6 +543,11 @@ export interface AdjustSkanData {
error: string;
}
export interface AdjustRemoteTrigger {
label: string;
payloadJson: string;
}
export interface AdjustPurchaseVerificationResult {
verificationStatus: string;
code: number;
@@ -574,6 +597,7 @@ export enum AdjustLogLevel {
* AdjustEventSuccess
* AdjustEventFailure
* AdjustSkanData
* AdjustRemoteTrigger
* AdjustPurchaseVerificationResult
* @classes
* AdjustConfig
@@ -679,10 +703,22 @@ export class Adjust extends AwesomeCordovaNativePlugin {
* This method is used to send and potentially resolve shortened deep links
*
* @param {AdjustDeeplink} adjustDeeplink AdjustDeeplink instance containing shortened deep link that has opened your app
* @returns {Promise<string>} Returns a promise with either resolved (if it was resolved) or echoed deep link
* @returns {Promise<string | null>} Returns a promise with either resolved (if it was resolved) or echoed deep link
*/
@Cordova()
processAndResolveDeeplink(adjustDeeplink: AdjustDeeplink): Promise<string> {
processAndResolveDeeplink(adjustDeeplink: AdjustDeeplink): Promise<string | null> {
return;
}
/**
* This method resolves the underlying Adjust link from other links that wrap Adjust links.
*
* @param {string} url URL to resolve
* @param {string[]} resolveUrlSuffixArray Array of URL suffixes to resolve
* @returns {Promise<string | null>} Returns a promise with resolved link or null
*/
@Cordova()
resolveLinkWithUrl(url: string, resolveUrlSuffixArray: string[]): Promise<string | null> {
return;
}
@@ -727,40 +763,40 @@ export class Adjust extends AwesomeCordovaNativePlugin {
/**
* Function used to get Google AdId
*
* @returns {Promise<string>} Returns a promise with Google advertising ID value
* @returns {Promise<string | null>} Returns a promise with Google advertising ID value
*/
@Cordova()
getGoogleAdId(): Promise<string> {
getGoogleAdId(): Promise<string | null> {
return;
}
/**
* If you need to obtain the Amazon Fire Advertising ID, you can make a call to this function.
*
* @returns {Promise<string>} Returns a promise with Amazon Fire advertising ID
* @returns {Promise<string | null>} Returns a promise with Amazon Fire advertising ID
*/
@Cordova()
getAmazonAdId(): Promise<string> {
getAmazonAdId(): Promise<string | null> {
return;
}
/**
* To obtain the IDFA, call this function
*
* @returns {Promise<string>} Returns a promise with IDFA string value
* @returns {Promise<string | null>} Returns a promise with IDFA string value
*/
@Cordova()
getIdfa(): Promise<string> {
getIdfa(): Promise<string | null> {
return;
}
/**
* To obtain the IDFV, call this function
*
* @returns {Promise<string>} Returns a promise with IDFV string value
* @returns {Promise<string | null>} Returns a promise with IDFV string value
*/
@Cordova()
getIdfv(): Promise<string> {
getIdfv(): Promise<string | null> {
return;
}
@@ -768,30 +804,52 @@ export class Adjust extends AwesomeCordovaNativePlugin {
* For every device with your app installed on it, the Adjust backend generates a unique Adjust device identifier (adid).
* In order to obtain this identifier, call this function
*
* @returns {Promise<string>} Returns a promise with adid value
* @returns {Promise<string | null>} Returns a promise with adid value
*/
@Cordova()
getAdid(): Promise<string> {
getAdid(): Promise<string | null> {
return;
}
/**
* This method allows retrieving the ADID with a specified timeout. If the value is not obtained in time, null is returned.
*
* @param {number} timeoutInMilliseconds Timeout in milliseconds
* @returns {Promise<string | null>} Returns a promise with adid value or null if timeout
*/
@Cordova()
getAdidWithTimeout(timeoutInMilliseconds: number): Promise<string | null> {
return;
}
/**
* If you want to access information about a user's current attribution whenever you need it, you can make a call to this function
*
* @returns {Promise<AdjustAttribution>} Returns a promise with AdjustAttribution object
* @returns {Promise<AdjustAttribution | null>} Returns a promise with AdjustAttribution object
*/
@Cordova()
getAttribution(): Promise<AdjustAttribution> {
getAttribution(): Promise<AdjustAttribution | null> {
return;
}
/**
* This method allows retrieving the current attribution information with a specified timeout. If the value is not obtained in time, null is returned.
*
* @param {number} timeoutInMilliseconds Timeout in milliseconds
* @returns {Promise<AdjustAttribution | null>} Returns a promise with AdjustAttribution object or null if timeout
*/
@Cordova()
getAttributionWithTimeout(timeoutInMilliseconds: number): Promise<AdjustAttribution | null> {
return;
}
/**
* Get the information about version of the SDK used
*
* @returns {Promise<string>} Returns a promise with SDK version information
* @returns {Promise<string | null>} Returns a promise with SDK version information
*/
@Cordova()
getSdkVersion(): Promise<string> {
getSdkVersion(): Promise<string | null> {
return;
}
@@ -875,10 +933,10 @@ export class Adjust extends AwesomeCordovaNativePlugin {
/**
* To obtain the last deep link which has opened your app, call this function
*
* @returns {Promise<string>} Returns a promise with last opened deep link string value
* @returns {Promise<string | null>} Returns a promise with last opened deep link string value
*/
@Cordova()
getLastDeeplink(): Promise<string> {
getLastDeeplink(): Promise<string | null> {
return;
}
@@ -35,6 +35,17 @@ export interface SQLiteDatabaseConfig {
* support encrypted databases with https://github.com/litehelpers/Cordova-sqlcipher-adapter
*/
key?: string;
/**
* Use the Android system database provider instead of the default lightweight NDK connector.
* Set to 'system' to avoid multiple-SQLite-connection corruption issues on Android. Example: 'system'
*/
androidDatabaseProvider?: string;
/**
* Android-only workaround that closes and reopens the database file at the end of every committed
* transaction, to work around a database locking issue when `androidDatabaseProvider: 'system'` is used.
* Set to 1 to enable. Only applied to `sqlBatch`/`transaction`, not to `executeSql`.
*/
androidLockWorkaround?: number;
}
/**
@@ -135,8 +146,13 @@ export class SQLiteObject {
return;
}
/**
* The underlying plugin method is named `abortAllPendingTransactions`; mapped explicitly here since this
* method's name differs in casing.
*/
@CordovaInstance({
sync: true,
methodName: 'abortAllPendingTransactions',
})
abortallPendingTransactions(): void {}
}
@@ -181,7 +197,7 @@ export class SQLiteObject {
pluginRef: 'sqlitePlugin',
plugin: 'cordova-sqlite-storage',
repo: 'https://github.com/litehelpers/Cordova-sqlite-storage',
platforms: ['Android', 'iOS', 'macOS', 'Windows'],
platforms: ['Android', 'Browser', 'iOS', 'macOS', 'Windows'],
})
@Injectable()
export class SQLite extends AwesomeCordovaNativePlugin {
@@ -443,8 +443,22 @@ export class LoginParameters {
*/
dbUpdateStatements: string;
/**
* Specify Firebase push configuration for Web/Elector Push.
*/
firebasePushConfig: FirebasePushConfig;
}
export interface FirebasePushConfig {
apiKey: string;
authDomain: string;
projectId: string;
storageBucket: string;
messagingSenderId: string;
appId: string;
vapidKey: string; // VAPID public key for Web Push
}
export class LoginResult extends UnviredResult {
type: LoginListenerType;
}
@@ -1860,4 +1874,66 @@ export class UnviredCordovaSDK extends AwesomeCordovaNativePlugin {
getUMPRequestConfig(endpoint: string, options?: { customUrl?: string }): Promise<UMPRequestConfig> {
return;
}
/**
* Check connection status.
* Returns networkNotReachable, umpNotReachable, or connected.
*/
@Cordova()
checkConnectionStatus(): Promise<any> {
return;
}
/**
* Get database directory path.
*/
@Cordova()
getDatabasePath(): Promise<string> {
return;
}
/**
* Download attachment synchronously.
* @param structureObject Attachment Item JSON object containing field name-value.
*/
@Cordova()
downloadAttachmentSync(structureObject: any): Promise<any> {
return;
}
/**
* Unregister for callback on GetMessage status (Mobile only).
*/
@Cordova({ sync: true })
unRegisterNotifListener(): void {
return;
}
/**
* Prepare database for export.
*/
@Cordova()
prepareDatabaseForExport(): Promise<boolean> {
return;
}
/**
* Register a callback to listen for sync items count updates.
*/
@Cordova({
observable: true,
})
updateSyncItemsCount(): Observable<any> {
return;
}
/**
* Set authentication credentials.
* @param username Username
* @param password Password
*/
@Cordova()
setAuthCredentials(username: string, password: string): Promise<boolean> {
return;
}
}