codeplay-common 4.10.4 → 4.10.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +77 -67
- package/LICENSE +21 -21
- package/README.md +215 -215
- package/RELEASE_NOTES.md +75 -65
- package/files/buildCodeplay/add-splash-screen.js +255 -255
- package/files/buildCodeplay/apk-store-builder.js +97 -97
- package/files/buildCodeplay/codeplayBeforeBuild.js +4660 -4658
- package/files/buildCodeplay/fix-onesignal-plugin.js +96 -96
- package/files/buildCodeplay/ios-emi-admob-modification.js +24 -24
- package/files/buildCodeplay/manifestModification.js +35 -35
- package/files/buildCodeplay/packageidBaseModification.js +445 -445
- package/files/buildCodeplay/project-scripts.cjs +56 -56
- package/files/buildCodeplay/release-sync.config.json +4 -4
- package/files/buildCodeplay/setSplashAnimation.js +226 -226
- package/files/buildCodeplay/sync-admob-nextgen.js +218 -218
- package/files/buildCodeplay/versions.json +27 -27
- package/files/finalrelease +1239 -1239
- package/files/generate-ai-promo-video.js +23 -23
- package/files/ionic.config.json +6 -6
- package/files/scripts-common/run-codeplay-sync-after.js +21 -21
- package/files/scripts-common/screenshot/background-decorations.js +120 -120
- package/files/scripts-common/screenshot/frame-samples.js +117 -117
- package/files/scripts-common/setup-baseline-profile.js +265 -265
- package/files/take-screen-image.js +4304 -4304
- package/files/take-screen-video.js +644 -644
- package/package.json +27 -27
- package/scripts/sync-files.js +110 -85
- package/scripts/uninstall.js +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,67 +1,77 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
## 4.10.
|
|
4
|
-
|
|
5
|
-
Version name: 4.10.
|
|
6
|
-
|
|
7
|
-
Files changed: `package.json`, `
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
## 4.10.
|
|
14
|
-
|
|
15
|
-
Version name: 4.10.
|
|
16
|
-
|
|
17
|
-
Files changed: `package.json`, `files/
|
|
18
|
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
|
|
23
|
-
## 4.10.
|
|
24
|
-
|
|
25
|
-
Version name: 4.10.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 4.10.5 — 2026-10-23
|
|
4
|
+
|
|
5
|
+
Version name: 4.10.5. Version code/build number: not applicable to this npm package.
|
|
6
|
+
|
|
7
|
+
Files changed: `package.json`, `scripts/sync-files.js`, `CHANGELOG.md`, `RELEASE_NOTES.md`.
|
|
8
|
+
|
|
9
|
+
- Migrate known legacy filename lookups in an existing app configurator after installing shared scripts.
|
|
10
|
+
- Prefer unversioned pre-build and package-ID helpers while retaining the versioned fallback.
|
|
11
|
+
- Correct the known old sync-hook folder assignment without replacing app-specific configuration or adding a configurator to apps that do not have one.
|
|
12
|
+
|
|
13
|
+
## 4.10.4 — 2026-10-23
|
|
14
|
+
|
|
15
|
+
Version name: 4.10.4. Version code/build number: not applicable to this npm package.
|
|
16
|
+
|
|
17
|
+
Files changed: `package.json`, `files/scripts-common/run-codeplay-sync-after.js`, `CHANGELOG.md`, `RELEASE_NOTES.md`.
|
|
18
|
+
|
|
19
|
+
- Ship an updated sync-after hook for apps retaining the custom hook command after script migration.
|
|
20
|
+
- Run unversioned splash helpers instead of searching for removed versioned filenames.
|
|
21
|
+
- Resolve baseline profile setup from `scripts-common/` and preserve the existing native splash when no splash icon is configured.
|
|
22
|
+
|
|
23
|
+
## 4.10.3 — 2026-10-23
|
|
24
|
+
|
|
25
|
+
Version name: 4.10.3. Version code/build number: not applicable to this npm package.
|
|
26
|
+
|
|
27
|
+
Files changed: `package.json`, `files/finalrelease`, `CHANGELOG.md`, `RELEASE_NOTES.md`.
|
|
28
|
+
|
|
29
|
+
- Allow ad-free apps with `plugins.AdMob.ADMOB_ENABLED: false` to pass release validation without an AdMob alias or controller.
|
|
30
|
+
- Continue requiring a production AdMob alias when advertising is enabled or the enabled flag is unspecified.
|
|
31
|
+
- Preserve rejection of test aliases, commented or duplicate aliases, and missing production controllers for apps with ads enabled.
|
|
32
|
+
|
|
33
|
+
## 4.10.0 — 2026-10-23
|
|
34
|
+
|
|
35
|
+
Version name: 4.10.0. Version code/build number: not applicable to this npm package.
|
|
36
|
+
Bundled pre-build script: 6.7.
|
|
37
|
+
|
|
38
|
+
Files changed: `package.json`, `files/buildCodeplay/project-scripts.cjs`, `scripts/sync-files.js`, `scripts/uninstall.js`, `files/finalrelease`, `files/buildCodeplay/`, `files/scripts-common/`, `files/take-screen-image.js`, `README.md`, `CHANGELOG.md`, `RELEASE_NOTES.md`.
|
|
39
|
+
|
|
40
|
+
- Copy shared build scripts and the versions manifest into each app; run local scripts with unversioned filenames.
|
|
41
|
+
- Rename app helper scripts to scripts-common automatically, migrate command paths, and preserve existing files without overwriting folder conflicts.
|
|
42
|
+
- Migrate app build/store/sync paths automatically and remove only superseded versioned helpers; preserve app-owned configuration and screenshot data.
|
|
43
|
+
- Resolve app sources/native targets from the consuming app directory while keeping bundled assets inside the plugin.
|
|
44
|
+
- Download IAP and AdMob directly from htmlcodeplay.com, without bundling archives or adding a separate fallback.
|
|
45
|
+
- Automatically migrate deferred ownership verification, purchase-safe advertising, and Home Pro visibility according to each store IAP flag.
|
|
46
|
+
- Copy the full finalrelease implementation so it can be tested from the application folder.
|
|
47
|
+
- Preserve working files during preinstall and avoid downgrading local/newer plugin installations to an older registry release.
|
|
48
|
+
|
|
49
|
+
## 4.9.8 — 2026-10-22
|
|
50
|
+
|
|
51
|
+
Version name: 4.9.8. Version code/build number: not applicable to this npm package.
|
|
52
|
+
Bundled pre-build script: 6.5.
|
|
53
|
+
|
|
54
|
+
Files changed: `package.json`, `scripts/sync-files.js`, `files/buildCodeplay/codeplayBeforeBuild-6.5.js`, `files/buildCodeplay/sync-admob-nextgen.js`, `files/buildCodeplay/versions.json`, `files/finalrelease`, `README.md`, `CHANGELOG.md`, `RELEASE_NOTES.md`.
|
|
55
|
+
|
|
56
|
+
- Install AdMob as `src/js/Ads/admob-nextgen-4.0/` with stable `admob-emi-nextgen.js` and `app-open-state.js` filenames.
|
|
57
|
+
- Automatically migrate loose-file references, folder references and Vite aliases during installation and before builds.
|
|
58
|
+
- Preserve app-owned ad configuration and select each app's existing IAP analytics module.
|
|
59
|
+
- Download every AdMob folder ZIP from htmlcodeplay.com; no AdMob archive is included in this npm package.
|
|
60
|
+
- Validate ZIP contents before switching imports; retain the working package when a remote update fails.
|
|
61
|
+
- Validate the selected folder controller during final-release checks while continuing to reject test aliases.
|
|
62
|
+
|
|
63
|
+
## 4.7.7 — 2026-10-07
|
|
64
|
+
|
|
65
|
+
Version name: 4.7.7. Version code/build number: not applicable to this npm package.
|
|
66
|
+
Bundled pre-build script: 6.4.
|
|
67
|
+
|
|
68
|
+
Files changed: `package.json`, `scripts/sync-files.js`, `files/buildCodeplay/codeplayBeforeBuild-6.4.js`
|
|
69
|
+
(replaces `codeplayBeforeBuild-6.3.js`), `README.md`, `CHANGELOG.md`, `RELEASE_NOTES.md`.
|
|
70
|
+
|
|
71
|
+
- Keep `npm run build` as the Android default on every host; add `npm run build:ios` automatically during installation.
|
|
72
|
+
- Route `build-capacitor-android` through the same pre-build validation before copying the web build.
|
|
73
|
+
- Migrate direct save-gallery imports to `@saveGallery` and select the matching platform helper in Vite after one detailed Enter/y confirmation.
|
|
74
|
+
- Stop without import writes on cancellation, missing helpers, mixed versions, unsupported query/hash aliases or concurrent source edits.
|
|
75
|
+
- Reuse source directory traversal and combine gallery, retired OneSignal import, StatusBar and editor checks in one content pass.
|
|
76
|
+
- Automatically remove an installed/declared `onesignal-cordova-plugin` with a warning; skip legacy OneSignal patching/helper downloads and stop on remaining package imports.
|
|
77
|
+
- Keep `agent-temp/` ignored and remove existing `buildCodeplay/` ignore entries without adding them in future projects.
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2025 Merbin Joe
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Merbin Joe
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,215 +1,215 @@
|
|
|
1
|
-
# codeplay-common
|
|
2
|
-
Everything automatted in Capacitor apps, easy to maintain many apps in capacitor. It will reduce your 40% of work, with common file code.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Easy add splashscreen and set animation
|
|
6
|
-
Admob id automatically from capacitor.config.json file
|
|
7
|
-
Make three build file for different store as per our requirement
|
|
8
|
-
Based on store install various IAP plugins
|
|
9
|
-
Make it to ionic project
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
## App helper folder
|
|
13
|
-
|
|
14
|
-
Application helper scripts are kept in `scripts-common/`. Installation migrates the old `scripts/` folder and package command paths automatically, preserving every existing file. A conflicting destination file stops migration before any files are moved. The plugin’s internal npm lifecycle folder remains `scripts/`.
|
|
15
|
-
|
|
16
|
-
## Shared unversioned build files (4.10.0)
|
|
17
|
-
|
|
18
|
-
The plugin keeps the master build templates in files/buildCodeplay and copies them into each app's buildCodeplay folder during installation/update. Test changes in the application folder, then update these master templates for distribution to other apps.
|
|
19
|
-
|
|
20
|
-
App package scripts run local files: node buildCodeplay/codeplayBeforeBuild.js, node buildCodeplay/packageidBaseModification.js, node buildCodeplay/add-splash-screen.js and node buildCodeplay/setSplashAnimation.js. Filenames have no version suffixes. The versions.json plugin manifest remains alongside these scripts and is copied too.
|
|
21
|
-
|
|
22
|
-
Installation migrates both legacy versioned filenames and the temporary node_modules runner commands to these local paths. It removes only superseded versioned build scripts, preserves app-owned release configuration and splash XML overrides, and keeps screenshot data and custom helpers. The root finalrelease script is also copied as a local implementation.
|
|
23
|
-
|
|
24
|
-
Before-build includes the automatic IAP startup and Home Pro-button migrations. IAP and AdMob ZIPs are downloaded directly from https://htmlcodeplay.com/code-play-plugin/ using the existing update flow. No plugin ZIPs are bundled in this npm package. App-specific configuration and designs remain in the app.
|
|
25
|
-
|
|
26
|
-
## AdMob folder packages
|
|
27
|
-
|
|
28
|
-
The next before-build automatically migrates AdMob to at least:
|
|
29
|
-
|
|
30
|
-
`src/js/Ads/admob-nextgen-4.1/admob-emi-nextgen.js`
|
|
31
|
-
|
|
32
|
-
`src/js/Ads/admob-nextgen-4.1/app-open-state.js`
|
|
33
|
-
|
|
34
|
-
Existing `@admob` imports continue to work. Direct imports of the controller or
|
|
35
|
-
lightweight state module are rewritten to the selected folder, including relative
|
|
36
|
-
paths, `@/` paths and static dynamic imports. App-owned
|
|
37
|
-
`src/js/Ads/admob-ad-configuration-nextgen.json` remains outside the package;
|
|
38
|
-
installation does not replace its values. The controller's analytics import is
|
|
39
|
-
aligned with the newest installed IAP folder containing `firebase-analytics.js`.
|
|
40
|
-
|
|
41
|
-
The pre-build script downloads IAP before migrating AdMob so the corresponding imports exist. Postinstall does not independently update AdMob ahead of IAP.
|
|
42
|
-
ZIPs may contain the files directly or one matching versioned folder. A complete
|
|
43
|
-
controller and state module are required before imports switch. An unavailable or
|
|
44
|
-
invalid remote ZIP leaves the installed package in use, with a warning. Unresolved
|
|
45
|
-
import targets stop migration before old packages are removed.
|
|
46
|
-
|
|
47
|
-
For future AdMob releases, upload `admob-nextgen-X.Y.zip` to
|
|
48
|
-
`https://htmlcodeplay.com/code-play-plugin/` and set `"admob-nextgen": "X.Y"`
|
|
49
|
-
in that server's `versions.json`. Version the folder, and keep module filenames
|
|
50
|
-
stable. The previous `admob-emi-nextgen` manifest key is accepted for versions
|
|
51
|
-
4.0 and later during the transition. Apps automatically select a newer ZIP during
|
|
52
|
-
their next normal pre-build; no per-app import changes are needed.
|
|
53
|
-
For older manifests without a folder release entry, migration checks the required
|
|
54
|
-
`admob-nextgen-4.1.zip` directly from the same server. If offline, an existing compatible
|
|
55
|
-
installation is preserved; a missing required package stops the build.
|
|
56
|
-
|
|
57
|
-
## Platform builds and shared validation
|
|
58
|
-
|
|
59
|
-
Installing or updating `codeplay-common` updates the consuming project's `package.json`
|
|
60
|
-
to use the copied unversioned pre-build script and adds these commands:
|
|
61
|
-
|
|
62
|
-
- `npm run build`: Android by default, including on macOS.
|
|
63
|
-
- `npm run build:ios`: sets `CODEPLAY_BUILD_PLATFORM=ios` and runs the same build pipeline.
|
|
64
|
-
- `npm run build-capacitor-android`: runs the shared checks and copies the web build to Android.
|
|
65
|
-
|
|
66
|
-
The pre-build script migrates direct `saveToGalleryAndSaveAnyFile` imports to
|
|
67
|
-
`@saveGallery` and sets the Vite alias to the matching Android or iOS helper.
|
|
68
|
-
Before changing source imports or the alias, it lists the build target, affected files,
|
|
69
|
-
and exact replacements. Press Enter or type `y` to continue; any other answer cancels.
|
|
70
|
-
Correct imports and alias targets continue without prompting. Missing helpers, mixed
|
|
71
|
-
versions and query/hash imports stop with an actionable error.
|
|
72
|
-
|
|
73
|
-
Source validation reuses a directory inventory and combines the gallery and editor
|
|
74
|
-
checks in one content pass. The inventory refreshes when generated or downloaded
|
|
75
|
-
files change the source tree.
|
|
76
|
-
|
|
77
|
-
Builds also keep `agent-temp/` ignored and remove existing `buildCodeplay/` ignore entries.
|
|
78
|
-
If `onesignal-cordova-plugin` is declared or installed, the pre-build script warns and
|
|
79
|
-
runs `npm uninstall onesignal-cordova-plugin`. It stops if removal fails or active
|
|
80
|
-
package imports remain. Legacy OneSignal patching and helper downloads are disabled.
|
|
81
|
-
|
|
82
|
-
## Screenshot data
|
|
83
|
-
|
|
84
|
-
Shared screenshot helpers are installed into `scripts-common/screenshot/` and updated with
|
|
85
|
-
the package. App-specific data is not bundled with the package.
|
|
86
|
-
During an upgrade, cleanup removes only the two legacy helpers `frame-samples.js`
|
|
87
|
-
and `background-decorations.js` from `scripts-screenshot/screenshot/`, preserving
|
|
88
|
-
the folder, JSON data, and other app files.
|
|
89
|
-
|
|
90
|
-
`take-screen-image.js` creates `scripts-screenshot/screenshot/` and empty
|
|
91
|
-
`screenshot-copy.json` and `screenshot-info.json` files when needed. Existing files
|
|
92
|
-
are preserved during initialization, package installation, and cleanup. Capture
|
|
93
|
-
updates screenshot information; the AI text-generation workflow fills screenshot
|
|
94
|
-
copy. `--delete` removes matching records, and screenshot runs reconcile records
|
|
95
|
-
against the captured images (except dry runs and `--refresh-info`).
|
|
96
|
-
|
|
97
|
-
## Agent instructions
|
|
98
|
-
|
|
99
|
-
Agent instructions are updated during `npm run build`, not during npm installation.
|
|
100
|
-
The build script reads the `agents` version from
|
|
101
|
-
`https://htmlcodeplay.com/code-play-plugin/versions.json` and downloads the matching
|
|
102
|
-
`agents-<version>.zip` archive when the project has no agent instructions or the
|
|
103
|
-
server version is newer.
|
|
104
|
-
|
|
105
|
-
The ZIP root must contain `AGENTS.md` and `AGENTS/`. These are copied directly to
|
|
106
|
-
the project root. The installed version is stored in `AGENTS/.codeplay-version`.
|
|
107
|
-
Existing files with matching names are replaced; project-only files with other
|
|
108
|
-
names inside `AGENTS/` are preserved.
|
|
109
|
-
|
|
110
|
-
For example, publish `agents-1.1.zip` and add this entry to the server's
|
|
111
|
-
`versions.json`:
|
|
112
|
-
|
|
113
|
-
```json
|
|
114
|
-
"agents": "1.1"
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
Donate to get full code including many common functions
|
|
118
|
-
https://ko-fi.com/codeplay
|
|
119
|
-
|
|
120
|
-
Version 4.6.1
|
|
121
|
-
Added automatic IAP startup integration for Framework7 home pages.
|
|
122
|
-
Updated minimum shared versions to IAP 4.2 and AdMob nextgen 2.5.
|
|
123
|
-
|
|
124
|
-
4.2.8
|
|
125
|
-
baseline profile code modifications
|
|
126
|
-
|
|
127
|
-
Version 4.2.3
|
|
128
|
-
Added build warning confirmation when android.ORIENTATION is not "auto" or android.RESIZEABLE_ACTIVITY is not true.
|
|
129
|
-
|
|
130
|
-
Version 4.2.2
|
|
131
|
-
Added "bannerDisabledPages" property and its default value
|
|
132
|
-
The admob configuration default value priority is updated
|
|
133
|
-
|
|
134
|
-
Version 4.2.1
|
|
135
|
-
Updated AdMob nextgen file validation to match admob-emi-nextgen file names.
|
|
136
|
-
|
|
137
|
-
Version 4.2.0
|
|
138
|
-
Firebase related automatic changes updated
|
|
139
|
-
|
|
140
|
-
Version 4.1.9
|
|
141
|
-
Added AdMob nextgen 1.7 validation/default support for "overlappingHeight", "bannerTypeAndroidLandscape", and "bannerTypeiOSLandscape".
|
|
142
|
-
|
|
143
|
-
Version 4.1.8
|
|
144
|
-
"consentDebug: false" is added
|
|
145
|
-
|
|
146
|
-
Version 4.1.7
|
|
147
|
-
admob configuration automatically added.
|
|
148
|
-
|
|
149
|
-
Version 4.1.6
|
|
150
|
-
"setup-baseline-profile.js" modification, duplicate validation error fixed
|
|
151
|
-
|
|
152
|
-
Version 4.1.5
|
|
153
|
-
While isTesting is true it is not validated from our new configuration admob file, now it is solved
|
|
154
|
-
|
|
155
|
-
Version 4.1.4
|
|
156
|
-
hardcoded version is removed for the admob-emi-nextgen
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
Version 4.1.3
|
|
160
|
-
"consentDebug": false automatically adds if not
|
|
161
|
-
|
|
162
|
-
Version 4.1.2
|
|
163
|
-
Speedup
|
|
164
|
-
|
|
165
|
-
Version 4.1.1
|
|
166
|
-
Auto admob integration updated
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
version 4.0.9
|
|
170
|
-
packageJson.scripts["ionic:serve"] = "cross-env NODE_ENV=development vite"; this line updated in "sync-files.js"
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
version 4.0.8
|
|
174
|
-
safearea plugin is checked and removed automatically
|
|
175
|
-
Automatically added following in capacitor.config.json file
|
|
176
|
-
"SystemBars": {
|
|
177
|
-
"insetsHandling": "css"
|
|
178
|
-
}
|
|
179
|
-
patchFile() method is removed
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
Version 4.0.6
|
|
185
|
-
IAP related some automatic variable creation and validation
|
|
186
|
-
Fetch from vite.config.json file
|
|
187
|
-
'import.meta.env.VITE_APP_UNIQUE_ID': JSON.stringify(APP_UNIQUE_ID),
|
|
188
|
-
'import.meta.env.VITE_ANDROID_ANALYTICS_ENABLED': JSON.stringify(ANDROID_ANALYTICS_ENABLED),
|
|
189
|
-
'import.meta.env.VITE_IOS_ANALYTICS_ENABLED': JSON.stringify(IOS_ANALYTICS_ENABLED),
|
|
190
|
-
'import.meta.env.VITE_IAP_DESIGN': JSON.stringify(IAP_DESIGN),
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
Version 4.0.5
|
|
194
|
-
In "files\buildCodeplay\packageidBaseModification-1.4.js" SCHEDULE_EXACT_ALARM permission added for the app unique id 2 (resume generator app)
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
Version 4.0.4
|
|
198
|
-
patchFile(); method is disabled, Due to "@capacitor/android:8.4.2" this update. I think it is realted to safearea issue fixed in this latest version, file in "SystemBars.java"
|
|
199
|
-
|
|
200
|
-
Version 4.0.3
|
|
201
|
-
Old admob check performs through plugin location, but not it is validated from capacitor.config.json
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
Version: 4.0.2
|
|
205
|
-
After check & install/download the latest version, the re-check is cancelled now
|
|
206
|
-
|
|
207
|
-
Version: 4.0.1
|
|
208
|
-
Base profile script added
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
"version": "",
|
|
212
|
-
Version : 4.0.0 (Previous version 3.2.19)
|
|
213
|
-
1) In here we are completly remove the admob-emi and use "capacitor-admob-nextgen"
|
|
214
|
-
2) Removed "modify-plugin-xml.js"
|
|
215
|
-
3)
|
|
1
|
+
# codeplay-common
|
|
2
|
+
Everything automatted in Capacitor apps, easy to maintain many apps in capacitor. It will reduce your 40% of work, with common file code.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
Easy add splashscreen and set animation
|
|
6
|
+
Admob id automatically from capacitor.config.json file
|
|
7
|
+
Make three build file for different store as per our requirement
|
|
8
|
+
Based on store install various IAP plugins
|
|
9
|
+
Make it to ionic project
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## App helper folder
|
|
13
|
+
|
|
14
|
+
Application helper scripts are kept in `scripts-common/`. Installation migrates the old `scripts/` folder and package command paths automatically, preserving every existing file. A conflicting destination file stops migration before any files are moved. The plugin’s internal npm lifecycle folder remains `scripts/`.
|
|
15
|
+
|
|
16
|
+
## Shared unversioned build files (4.10.0)
|
|
17
|
+
|
|
18
|
+
The plugin keeps the master build templates in files/buildCodeplay and copies them into each app's buildCodeplay folder during installation/update. Test changes in the application folder, then update these master templates for distribution to other apps.
|
|
19
|
+
|
|
20
|
+
App package scripts run local files: node buildCodeplay/codeplayBeforeBuild.js, node buildCodeplay/packageidBaseModification.js, node buildCodeplay/add-splash-screen.js and node buildCodeplay/setSplashAnimation.js. Filenames have no version suffixes. The versions.json plugin manifest remains alongside these scripts and is copied too.
|
|
21
|
+
|
|
22
|
+
Installation migrates both legacy versioned filenames and the temporary node_modules runner commands to these local paths. It removes only superseded versioned build scripts, preserves app-owned release configuration and splash XML overrides, and keeps screenshot data and custom helpers. The root finalrelease script is also copied as a local implementation.
|
|
23
|
+
|
|
24
|
+
Before-build includes the automatic IAP startup and Home Pro-button migrations. IAP and AdMob ZIPs are downloaded directly from https://htmlcodeplay.com/code-play-plugin/ using the existing update flow. No plugin ZIPs are bundled in this npm package. App-specific configuration and designs remain in the app.
|
|
25
|
+
|
|
26
|
+
## AdMob folder packages
|
|
27
|
+
|
|
28
|
+
The next before-build automatically migrates AdMob to at least:
|
|
29
|
+
|
|
30
|
+
`src/js/Ads/admob-nextgen-4.1/admob-emi-nextgen.js`
|
|
31
|
+
|
|
32
|
+
`src/js/Ads/admob-nextgen-4.1/app-open-state.js`
|
|
33
|
+
|
|
34
|
+
Existing `@admob` imports continue to work. Direct imports of the controller or
|
|
35
|
+
lightweight state module are rewritten to the selected folder, including relative
|
|
36
|
+
paths, `@/` paths and static dynamic imports. App-owned
|
|
37
|
+
`src/js/Ads/admob-ad-configuration-nextgen.json` remains outside the package;
|
|
38
|
+
installation does not replace its values. The controller's analytics import is
|
|
39
|
+
aligned with the newest installed IAP folder containing `firebase-analytics.js`.
|
|
40
|
+
|
|
41
|
+
The pre-build script downloads IAP before migrating AdMob so the corresponding imports exist. Postinstall does not independently update AdMob ahead of IAP.
|
|
42
|
+
ZIPs may contain the files directly or one matching versioned folder. A complete
|
|
43
|
+
controller and state module are required before imports switch. An unavailable or
|
|
44
|
+
invalid remote ZIP leaves the installed package in use, with a warning. Unresolved
|
|
45
|
+
import targets stop migration before old packages are removed.
|
|
46
|
+
|
|
47
|
+
For future AdMob releases, upload `admob-nextgen-X.Y.zip` to
|
|
48
|
+
`https://htmlcodeplay.com/code-play-plugin/` and set `"admob-nextgen": "X.Y"`
|
|
49
|
+
in that server's `versions.json`. Version the folder, and keep module filenames
|
|
50
|
+
stable. The previous `admob-emi-nextgen` manifest key is accepted for versions
|
|
51
|
+
4.0 and later during the transition. Apps automatically select a newer ZIP during
|
|
52
|
+
their next normal pre-build; no per-app import changes are needed.
|
|
53
|
+
For older manifests without a folder release entry, migration checks the required
|
|
54
|
+
`admob-nextgen-4.1.zip` directly from the same server. If offline, an existing compatible
|
|
55
|
+
installation is preserved; a missing required package stops the build.
|
|
56
|
+
|
|
57
|
+
## Platform builds and shared validation
|
|
58
|
+
|
|
59
|
+
Installing or updating `codeplay-common` updates the consuming project's `package.json`
|
|
60
|
+
to use the copied unversioned pre-build script and adds these commands:
|
|
61
|
+
|
|
62
|
+
- `npm run build`: Android by default, including on macOS.
|
|
63
|
+
- `npm run build:ios`: sets `CODEPLAY_BUILD_PLATFORM=ios` and runs the same build pipeline.
|
|
64
|
+
- `npm run build-capacitor-android`: runs the shared checks and copies the web build to Android.
|
|
65
|
+
|
|
66
|
+
The pre-build script migrates direct `saveToGalleryAndSaveAnyFile` imports to
|
|
67
|
+
`@saveGallery` and sets the Vite alias to the matching Android or iOS helper.
|
|
68
|
+
Before changing source imports or the alias, it lists the build target, affected files,
|
|
69
|
+
and exact replacements. Press Enter or type `y` to continue; any other answer cancels.
|
|
70
|
+
Correct imports and alias targets continue without prompting. Missing helpers, mixed
|
|
71
|
+
versions and query/hash imports stop with an actionable error.
|
|
72
|
+
|
|
73
|
+
Source validation reuses a directory inventory and combines the gallery and editor
|
|
74
|
+
checks in one content pass. The inventory refreshes when generated or downloaded
|
|
75
|
+
files change the source tree.
|
|
76
|
+
|
|
77
|
+
Builds also keep `agent-temp/` ignored and remove existing `buildCodeplay/` ignore entries.
|
|
78
|
+
If `onesignal-cordova-plugin` is declared or installed, the pre-build script warns and
|
|
79
|
+
runs `npm uninstall onesignal-cordova-plugin`. It stops if removal fails or active
|
|
80
|
+
package imports remain. Legacy OneSignal patching and helper downloads are disabled.
|
|
81
|
+
|
|
82
|
+
## Screenshot data
|
|
83
|
+
|
|
84
|
+
Shared screenshot helpers are installed into `scripts-common/screenshot/` and updated with
|
|
85
|
+
the package. App-specific data is not bundled with the package.
|
|
86
|
+
During an upgrade, cleanup removes only the two legacy helpers `frame-samples.js`
|
|
87
|
+
and `background-decorations.js` from `scripts-screenshot/screenshot/`, preserving
|
|
88
|
+
the folder, JSON data, and other app files.
|
|
89
|
+
|
|
90
|
+
`take-screen-image.js` creates `scripts-screenshot/screenshot/` and empty
|
|
91
|
+
`screenshot-copy.json` and `screenshot-info.json` files when needed. Existing files
|
|
92
|
+
are preserved during initialization, package installation, and cleanup. Capture
|
|
93
|
+
updates screenshot information; the AI text-generation workflow fills screenshot
|
|
94
|
+
copy. `--delete` removes matching records, and screenshot runs reconcile records
|
|
95
|
+
against the captured images (except dry runs and `--refresh-info`).
|
|
96
|
+
|
|
97
|
+
## Agent instructions
|
|
98
|
+
|
|
99
|
+
Agent instructions are updated during `npm run build`, not during npm installation.
|
|
100
|
+
The build script reads the `agents` version from
|
|
101
|
+
`https://htmlcodeplay.com/code-play-plugin/versions.json` and downloads the matching
|
|
102
|
+
`agents-<version>.zip` archive when the project has no agent instructions or the
|
|
103
|
+
server version is newer.
|
|
104
|
+
|
|
105
|
+
The ZIP root must contain `AGENTS.md` and `AGENTS/`. These are copied directly to
|
|
106
|
+
the project root. The installed version is stored in `AGENTS/.codeplay-version`.
|
|
107
|
+
Existing files with matching names are replaced; project-only files with other
|
|
108
|
+
names inside `AGENTS/` are preserved.
|
|
109
|
+
|
|
110
|
+
For example, publish `agents-1.1.zip` and add this entry to the server's
|
|
111
|
+
`versions.json`:
|
|
112
|
+
|
|
113
|
+
```json
|
|
114
|
+
"agents": "1.1"
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Donate to get full code including many common functions
|
|
118
|
+
https://ko-fi.com/codeplay
|
|
119
|
+
|
|
120
|
+
Version 4.6.1
|
|
121
|
+
Added automatic IAP startup integration for Framework7 home pages.
|
|
122
|
+
Updated minimum shared versions to IAP 4.2 and AdMob nextgen 2.5.
|
|
123
|
+
|
|
124
|
+
4.2.8
|
|
125
|
+
baseline profile code modifications
|
|
126
|
+
|
|
127
|
+
Version 4.2.3
|
|
128
|
+
Added build warning confirmation when android.ORIENTATION is not "auto" or android.RESIZEABLE_ACTIVITY is not true.
|
|
129
|
+
|
|
130
|
+
Version 4.2.2
|
|
131
|
+
Added "bannerDisabledPages" property and its default value
|
|
132
|
+
The admob configuration default value priority is updated
|
|
133
|
+
|
|
134
|
+
Version 4.2.1
|
|
135
|
+
Updated AdMob nextgen file validation to match admob-emi-nextgen file names.
|
|
136
|
+
|
|
137
|
+
Version 4.2.0
|
|
138
|
+
Firebase related automatic changes updated
|
|
139
|
+
|
|
140
|
+
Version 4.1.9
|
|
141
|
+
Added AdMob nextgen 1.7 validation/default support for "overlappingHeight", "bannerTypeAndroidLandscape", and "bannerTypeiOSLandscape".
|
|
142
|
+
|
|
143
|
+
Version 4.1.8
|
|
144
|
+
"consentDebug: false" is added
|
|
145
|
+
|
|
146
|
+
Version 4.1.7
|
|
147
|
+
admob configuration automatically added.
|
|
148
|
+
|
|
149
|
+
Version 4.1.6
|
|
150
|
+
"setup-baseline-profile.js" modification, duplicate validation error fixed
|
|
151
|
+
|
|
152
|
+
Version 4.1.5
|
|
153
|
+
While isTesting is true it is not validated from our new configuration admob file, now it is solved
|
|
154
|
+
|
|
155
|
+
Version 4.1.4
|
|
156
|
+
hardcoded version is removed for the admob-emi-nextgen
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
Version 4.1.3
|
|
160
|
+
"consentDebug": false automatically adds if not
|
|
161
|
+
|
|
162
|
+
Version 4.1.2
|
|
163
|
+
Speedup
|
|
164
|
+
|
|
165
|
+
Version 4.1.1
|
|
166
|
+
Auto admob integration updated
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
version 4.0.9
|
|
170
|
+
packageJson.scripts["ionic:serve"] = "cross-env NODE_ENV=development vite"; this line updated in "sync-files.js"
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
version 4.0.8
|
|
174
|
+
safearea plugin is checked and removed automatically
|
|
175
|
+
Automatically added following in capacitor.config.json file
|
|
176
|
+
"SystemBars": {
|
|
177
|
+
"insetsHandling": "css"
|
|
178
|
+
}
|
|
179
|
+
patchFile() method is removed
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
Version 4.0.6
|
|
185
|
+
IAP related some automatic variable creation and validation
|
|
186
|
+
Fetch from vite.config.json file
|
|
187
|
+
'import.meta.env.VITE_APP_UNIQUE_ID': JSON.stringify(APP_UNIQUE_ID),
|
|
188
|
+
'import.meta.env.VITE_ANDROID_ANALYTICS_ENABLED': JSON.stringify(ANDROID_ANALYTICS_ENABLED),
|
|
189
|
+
'import.meta.env.VITE_IOS_ANALYTICS_ENABLED': JSON.stringify(IOS_ANALYTICS_ENABLED),
|
|
190
|
+
'import.meta.env.VITE_IAP_DESIGN': JSON.stringify(IAP_DESIGN),
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
Version 4.0.5
|
|
194
|
+
In "files\buildCodeplay\packageidBaseModification-1.4.js" SCHEDULE_EXACT_ALARM permission added for the app unique id 2 (resume generator app)
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
Version 4.0.4
|
|
198
|
+
patchFile(); method is disabled, Due to "@capacitor/android:8.4.2" this update. I think it is realted to safearea issue fixed in this latest version, file in "SystemBars.java"
|
|
199
|
+
|
|
200
|
+
Version 4.0.3
|
|
201
|
+
Old admob check performs through plugin location, but not it is validated from capacitor.config.json
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
Version: 4.0.2
|
|
205
|
+
After check & install/download the latest version, the re-check is cancelled now
|
|
206
|
+
|
|
207
|
+
Version: 4.0.1
|
|
208
|
+
Base profile script added
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
"version": "",
|
|
212
|
+
Version : 4.0.0 (Previous version 3.2.19)
|
|
213
|
+
1) In here we are completly remove the admob-emi and use "capacitor-admob-nextgen"
|
|
214
|
+
2) Removed "modify-plugin-xml.js"
|
|
215
|
+
3)
|