@ws-test-realm/admin-kit 0.2.6-ng16 → 0.3.0-ng17
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/lib/build-modules.js +14 -0
- package/lib/generate-module.js +14 -0
- package/package.json +5 -5
- package/template-module/package.json +4 -4
package/lib/build-modules.js
CHANGED
|
@@ -53,6 +53,20 @@ function partitionByKind(workspaceDir, names) {
|
|
|
53
53
|
function buildLibs({ workspaceDir, restrictTo = [], withDeps = false }) {
|
|
54
54
|
const { order, angularJson } = loadOrder({ workspaceDir, restrictTo, withDeps });
|
|
55
55
|
|
|
56
|
+
// Flush native-federation's shared-chunk cache at the start of every build.
|
|
57
|
+
// The cache (under `<workspace>/node_modules/.cache/native-federation/`)
|
|
58
|
+
// keys by output filename only, so changes to `federation.config.js`'s
|
|
59
|
+
// share map don't invalidate stale chunks — a workspace lib whose set of
|
|
60
|
+
// externals/inlines changed will keep emitting the previous build's
|
|
61
|
+
// output. Cheaper to always rebuild than to debug stale-chunk classes of
|
|
62
|
+
// bugs; the cost is recompiling the third-party Angular shared chunks
|
|
63
|
+
// each pass.
|
|
64
|
+
const cacheDir = path.join(workspaceDir, "node_modules", ".cache", "native-federation");
|
|
65
|
+
if (fs.existsSync(cacheDir)) {
|
|
66
|
+
fs.rmSync(cacheDir, { recursive: true, force: true });
|
|
67
|
+
console.log(`Flushed native-federation cache: ${cacheDir}`);
|
|
68
|
+
}
|
|
69
|
+
|
|
56
70
|
console.log(`\n=== Build order ===`);
|
|
57
71
|
order.forEach((n, i) => console.log(` ${i + 1}. ${n}`));
|
|
58
72
|
|
package/lib/generate-module.js
CHANGED
|
@@ -117,6 +117,20 @@ function registerInAngularJson(workspaceDir, name) {
|
|
|
117
117
|
// peers are installed) rather than walking up from the symlink
|
|
118
118
|
// target in the fiddle.
|
|
119
119
|
preserveSymlinks: true,
|
|
120
|
+
// Copy the project's `assets/` into the federation output so the
|
|
121
|
+
// fiddle's `/api/v1/admin-federation/asset/<id>/...` endpoint can
|
|
122
|
+
// serve them. The endpoint resolves to
|
|
123
|
+
// `META-INF/federation/<id>/remote/<subpath>` (jar target) or
|
|
124
|
+
// `<ext-dir>/remote/<subpath>` (ext target); packIntoJar /
|
|
125
|
+
// deployExt mirror whatever's in `dist/<id>-remote/` into that
|
|
126
|
+
// `remote/` directory, so anything here becomes addressable.
|
|
127
|
+
assets: [
|
|
128
|
+
{
|
|
129
|
+
glob: "**/*",
|
|
130
|
+
input: `projects/${name}/assets/`,
|
|
131
|
+
output: "/assets/",
|
|
132
|
+
},
|
|
133
|
+
],
|
|
120
134
|
styles: [],
|
|
121
135
|
scripts: [],
|
|
122
136
|
},
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ws-test-realm/admin-kit",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Workflow CLI + scaffolding for Wiresphere admin-modules workspaces (Angular
|
|
3
|
+
"version": "0.3.0-ng17",
|
|
4
|
+
"description": "Workflow CLI + scaffolding for Wiresphere admin-modules workspaces (Angular 17 + native-federation line). Ships `ws-init-workspace`, `ws-modules` (build+deploy driver), `ws-generate-module`/`ws-drop-module`, `ws-wire-host`, `ws-wire-pom`, `ws-sync-paths`, and `ws-purge`. Depends on @ws-test-realm/devkit (toolchain BOM) + @ws-test-realm/shared (runtime BOM + native-federation share map).",
|
|
5
5
|
"license": "Artistic-2.0",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"README.md"
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@angular-architects/native-federation": "^
|
|
30
|
-
"@ws-test-realm/devkit": "^0.
|
|
31
|
-
"@ws-test-realm/shared": "^0.
|
|
29
|
+
"@angular-architects/native-federation": "^17.0.0",
|
|
30
|
+
"@ws-test-realm/devkit": "^0.5.0-ng17",
|
|
31
|
+
"@ws-test-realm/shared": "^0.5.0-ng17",
|
|
32
32
|
"adm-zip": "^0.5.10",
|
|
33
33
|
"fast-xml-parser": "^4.3.0"
|
|
34
34
|
}
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
"module": "../../dist/__name__/fesm2022/__name__.mjs",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"peerDependencies": {
|
|
7
|
-
"@angular/common": "
|
|
8
|
-
"@angular/core": "
|
|
9
|
-
"@angular/forms": "
|
|
10
|
-
"@angular/router": "
|
|
7
|
+
"@angular/common": "^17.0.0",
|
|
8
|
+
"@angular/core": "^17.0.0",
|
|
9
|
+
"@angular/forms": "^17.0.0",
|
|
10
|
+
"@angular/router": "^17.0.0",
|
|
11
11
|
"rxjs": "~7.8.0"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|