@softarc/native-federation-orchestrator 4.3.0 → 4.4.0
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/README.md +3 -2
- package/fesm2022/@softarc/native-federation-orchestrator.mjs +88 -72
- package/fesm2022/@softarc/native-federation-orchestrator.mjs.map +4 -4
- package/fesm2022/module-federation.mjs +56 -0
- package/fesm2022/module-federation.mjs.map +7 -0
- package/fesm2022/node.mjs +84 -76
- package/fesm2022/node.mjs.map +4 -4
- package/fesm2022/options.mjs +4 -2
- package/fesm2022/options.mjs.map +2 -2
- package/package.json +5 -1
- package/quickstart.mjs +11 -11
- package/types/lib/core/2.app/config/mode.contract.d.ts +1 -0
- package/types/lib/core/2.app/driver-ports/init/for-committing-changes.port.d.ts +5 -1
- package/types/lib/core/4.config/import-map/trusted-types.d.ts +5 -1
- package/types/lib/module-federation/get-shared.d.ts +7 -0
- package/types/lib/module-federation/share-infos.contract.d.ts +45 -0
- package/types/lib/module-federation.index.d.ts +2 -0
package/README.md
CHANGED
|
@@ -70,7 +70,7 @@ Get up and running in under 2 minutes:
|
|
|
70
70
|
</script>
|
|
71
71
|
|
|
72
72
|
<!-- Include the orchestrator runtime -->
|
|
73
|
-
<script src="https://unpkg.com/@softarc/native-federation-orchestrator@4.
|
|
73
|
+
<script src="https://unpkg.com/@softarc/native-federation-orchestrator@4.4.0/quickstart.mjs"></script>
|
|
74
74
|
</head>
|
|
75
75
|
<body>
|
|
76
76
|
<!-- Use your loaded components -->
|
|
@@ -88,7 +88,7 @@ Your micro frontends are now loaded and ready to use. The runtime handles the wh
|
|
|
88
88
|
|
|
89
89
|
```html
|
|
90
90
|
<!-- Development and quick testing -->
|
|
91
|
-
<script src="https://unpkg.com/@softarc/native-federation-orchestrator@4.
|
|
91
|
+
<script src="https://unpkg.com/@softarc/native-federation-orchestrator@4.4.0/quickstart.mjs"></script>
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
## Advanced Usage
|
|
@@ -132,6 +132,7 @@ const HeaderComponent = await loadRemoteModule('team/mfe2', './Header');
|
|
|
132
132
|
| [📡 Event Registry](https://github.com/native-federation/orchestrator/blob/main/docs/event-registry.md) | In-page event bus for cross-MFE communication |
|
|
133
133
|
| [🔄 Version Resolution](https://github.com/native-federation/orchestrator/blob/main/docs/version-resolver.md) | How dependency conflicts are resolved |
|
|
134
134
|
| [🔒 Security & Trusted Types](https://github.com/native-federation/orchestrator/blob/main/docs/security.md) | CSP setup and the built-in Trusted Types policy |
|
|
135
|
+
| [🌉 Module Federation](https://github.com/native-federation/orchestrator/blob/main/docs/module-federation.md) | Share singletons with webpack Module Federation |
|
|
135
136
|
|
|
136
137
|
## Example repositories
|
|
137
138
|
|
|
@@ -5,7 +5,11 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
-
|
|
8
|
+
try {
|
|
9
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
|
+
} catch (e) {
|
|
11
|
+
throw mod = 0, e;
|
|
12
|
+
}
|
|
9
13
|
};
|
|
10
14
|
var __copyProps = (to, from, except, desc) => {
|
|
11
15
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -24,9 +28,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
24
28
|
mod
|
|
25
29
|
));
|
|
26
30
|
|
|
27
|
-
// node_modules/.pnpm/semver@7.8.
|
|
31
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/debug.js
|
|
28
32
|
var require_debug = __commonJS({
|
|
29
|
-
"node_modules/.pnpm/semver@7.8.
|
|
33
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/debug.js"(exports, module) {
|
|
30
34
|
"use strict";
|
|
31
35
|
var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
|
|
32
36
|
};
|
|
@@ -34,9 +38,9 @@ var require_debug = __commonJS({
|
|
|
34
38
|
}
|
|
35
39
|
});
|
|
36
40
|
|
|
37
|
-
// node_modules/.pnpm/semver@7.8.
|
|
41
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/constants.js
|
|
38
42
|
var require_constants = __commonJS({
|
|
39
|
-
"node_modules/.pnpm/semver@7.8.
|
|
43
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/constants.js"(exports, module) {
|
|
40
44
|
"use strict";
|
|
41
45
|
var SEMVER_SPEC_VERSION = "2.0.0";
|
|
42
46
|
var MAX_LENGTH = 256;
|
|
@@ -66,9 +70,9 @@ var require_constants = __commonJS({
|
|
|
66
70
|
}
|
|
67
71
|
});
|
|
68
72
|
|
|
69
|
-
// node_modules/.pnpm/semver@7.8.
|
|
73
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/re.js
|
|
70
74
|
var require_re = __commonJS({
|
|
71
|
-
"node_modules/.pnpm/semver@7.8.
|
|
75
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/re.js"(exports, module) {
|
|
72
76
|
"use strict";
|
|
73
77
|
var {
|
|
74
78
|
MAX_SAFE_COMPONENT_LENGTH,
|
|
@@ -154,9 +158,9 @@ var require_re = __commonJS({
|
|
|
154
158
|
}
|
|
155
159
|
});
|
|
156
160
|
|
|
157
|
-
// node_modules/.pnpm/semver@7.8.
|
|
161
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/parse-options.js
|
|
158
162
|
var require_parse_options = __commonJS({
|
|
159
|
-
"node_modules/.pnpm/semver@7.8.
|
|
163
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/parse-options.js"(exports, module) {
|
|
160
164
|
"use strict";
|
|
161
165
|
var looseOption = Object.freeze({ loose: true });
|
|
162
166
|
var emptyOpts = Object.freeze({});
|
|
@@ -173,9 +177,9 @@ var require_parse_options = __commonJS({
|
|
|
173
177
|
}
|
|
174
178
|
});
|
|
175
179
|
|
|
176
|
-
// node_modules/.pnpm/semver@7.8.
|
|
180
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/identifiers.js
|
|
177
181
|
var require_identifiers = __commonJS({
|
|
178
|
-
"node_modules/.pnpm/semver@7.8.
|
|
182
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/identifiers.js"(exports, module) {
|
|
179
183
|
"use strict";
|
|
180
184
|
var numeric = /^[0-9]+$/;
|
|
181
185
|
var compareIdentifiers = (a, b) => {
|
|
@@ -198,9 +202,9 @@ var require_identifiers = __commonJS({
|
|
|
198
202
|
}
|
|
199
203
|
});
|
|
200
204
|
|
|
201
|
-
// node_modules/.pnpm/semver@7.8.
|
|
205
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/semver.js
|
|
202
206
|
var require_semver = __commonJS({
|
|
203
|
-
"node_modules/.pnpm/semver@7.8.
|
|
207
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/semver.js"(exports, module) {
|
|
204
208
|
"use strict";
|
|
205
209
|
var debug = require_debug();
|
|
206
210
|
var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
|
|
@@ -490,9 +494,9 @@ var require_semver = __commonJS({
|
|
|
490
494
|
}
|
|
491
495
|
});
|
|
492
496
|
|
|
493
|
-
// node_modules/.pnpm/semver@7.8.
|
|
497
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/parse.js
|
|
494
498
|
var require_parse = __commonJS({
|
|
495
|
-
"node_modules/.pnpm/semver@7.8.
|
|
499
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/parse.js"(exports, module) {
|
|
496
500
|
"use strict";
|
|
497
501
|
var SemVer = require_semver();
|
|
498
502
|
var parse = (version, options, throwErrors = false) => {
|
|
@@ -512,9 +516,9 @@ var require_parse = __commonJS({
|
|
|
512
516
|
}
|
|
513
517
|
});
|
|
514
518
|
|
|
515
|
-
// node_modules/.pnpm/semver@7.8.
|
|
519
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/valid.js
|
|
516
520
|
var require_valid = __commonJS({
|
|
517
|
-
"node_modules/.pnpm/semver@7.8.
|
|
521
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/valid.js"(exports, module) {
|
|
518
522
|
"use strict";
|
|
519
523
|
var parse = require_parse();
|
|
520
524
|
var valid = (version, options) => {
|
|
@@ -525,9 +529,9 @@ var require_valid = __commonJS({
|
|
|
525
529
|
}
|
|
526
530
|
});
|
|
527
531
|
|
|
528
|
-
// node_modules/.pnpm/semver@7.8.
|
|
532
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/lrucache.js
|
|
529
533
|
var require_lrucache = __commonJS({
|
|
530
|
-
"node_modules/.pnpm/semver@7.8.
|
|
534
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/lrucache.js"(exports, module) {
|
|
531
535
|
"use strict";
|
|
532
536
|
var LRUCache = class {
|
|
533
537
|
constructor() {
|
|
@@ -563,9 +567,9 @@ var require_lrucache = __commonJS({
|
|
|
563
567
|
}
|
|
564
568
|
});
|
|
565
569
|
|
|
566
|
-
// node_modules/.pnpm/semver@7.8.
|
|
570
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare.js
|
|
567
571
|
var require_compare = __commonJS({
|
|
568
|
-
"node_modules/.pnpm/semver@7.8.
|
|
572
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare.js"(exports, module) {
|
|
569
573
|
"use strict";
|
|
570
574
|
var SemVer = require_semver();
|
|
571
575
|
var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
|
|
@@ -573,9 +577,9 @@ var require_compare = __commonJS({
|
|
|
573
577
|
}
|
|
574
578
|
});
|
|
575
579
|
|
|
576
|
-
// node_modules/.pnpm/semver@7.8.
|
|
580
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/eq.js
|
|
577
581
|
var require_eq = __commonJS({
|
|
578
|
-
"node_modules/.pnpm/semver@7.8.
|
|
582
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/eq.js"(exports, module) {
|
|
579
583
|
"use strict";
|
|
580
584
|
var compare = require_compare();
|
|
581
585
|
var eq = (a, b, loose) => compare(a, b, loose) === 0;
|
|
@@ -583,9 +587,9 @@ var require_eq = __commonJS({
|
|
|
583
587
|
}
|
|
584
588
|
});
|
|
585
589
|
|
|
586
|
-
// node_modules/.pnpm/semver@7.8.
|
|
590
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/neq.js
|
|
587
591
|
var require_neq = __commonJS({
|
|
588
|
-
"node_modules/.pnpm/semver@7.8.
|
|
592
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/neq.js"(exports, module) {
|
|
589
593
|
"use strict";
|
|
590
594
|
var compare = require_compare();
|
|
591
595
|
var neq = (a, b, loose) => compare(a, b, loose) !== 0;
|
|
@@ -593,9 +597,9 @@ var require_neq = __commonJS({
|
|
|
593
597
|
}
|
|
594
598
|
});
|
|
595
599
|
|
|
596
|
-
// node_modules/.pnpm/semver@7.8.
|
|
600
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gt.js
|
|
597
601
|
var require_gt = __commonJS({
|
|
598
|
-
"node_modules/.pnpm/semver@7.8.
|
|
602
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gt.js"(exports, module) {
|
|
599
603
|
"use strict";
|
|
600
604
|
var compare = require_compare();
|
|
601
605
|
var gt = (a, b, loose) => compare(a, b, loose) > 0;
|
|
@@ -603,9 +607,9 @@ var require_gt = __commonJS({
|
|
|
603
607
|
}
|
|
604
608
|
});
|
|
605
609
|
|
|
606
|
-
// node_modules/.pnpm/semver@7.8.
|
|
610
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gte.js
|
|
607
611
|
var require_gte = __commonJS({
|
|
608
|
-
"node_modules/.pnpm/semver@7.8.
|
|
612
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gte.js"(exports, module) {
|
|
609
613
|
"use strict";
|
|
610
614
|
var compare = require_compare();
|
|
611
615
|
var gte = (a, b, loose) => compare(a, b, loose) >= 0;
|
|
@@ -613,9 +617,9 @@ var require_gte = __commonJS({
|
|
|
613
617
|
}
|
|
614
618
|
});
|
|
615
619
|
|
|
616
|
-
// node_modules/.pnpm/semver@7.8.
|
|
620
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lt.js
|
|
617
621
|
var require_lt = __commonJS({
|
|
618
|
-
"node_modules/.pnpm/semver@7.8.
|
|
622
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lt.js"(exports, module) {
|
|
619
623
|
"use strict";
|
|
620
624
|
var compare = require_compare();
|
|
621
625
|
var lt = (a, b, loose) => compare(a, b, loose) < 0;
|
|
@@ -623,9 +627,9 @@ var require_lt = __commonJS({
|
|
|
623
627
|
}
|
|
624
628
|
});
|
|
625
629
|
|
|
626
|
-
// node_modules/.pnpm/semver@7.8.
|
|
630
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lte.js
|
|
627
631
|
var require_lte = __commonJS({
|
|
628
|
-
"node_modules/.pnpm/semver@7.8.
|
|
632
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lte.js"(exports, module) {
|
|
629
633
|
"use strict";
|
|
630
634
|
var compare = require_compare();
|
|
631
635
|
var lte = (a, b, loose) => compare(a, b, loose) <= 0;
|
|
@@ -633,9 +637,9 @@ var require_lte = __commonJS({
|
|
|
633
637
|
}
|
|
634
638
|
});
|
|
635
639
|
|
|
636
|
-
// node_modules/.pnpm/semver@7.8.
|
|
640
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/cmp.js
|
|
637
641
|
var require_cmp = __commonJS({
|
|
638
|
-
"node_modules/.pnpm/semver@7.8.
|
|
642
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/cmp.js"(exports, module) {
|
|
639
643
|
"use strict";
|
|
640
644
|
var eq = require_eq();
|
|
641
645
|
var neq = require_neq();
|
|
@@ -683,9 +687,9 @@ var require_cmp = __commonJS({
|
|
|
683
687
|
}
|
|
684
688
|
});
|
|
685
689
|
|
|
686
|
-
// node_modules/.pnpm/semver@7.8.
|
|
690
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/comparator.js
|
|
687
691
|
var require_comparator = __commonJS({
|
|
688
|
-
"node_modules/.pnpm/semver@7.8.
|
|
692
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/comparator.js"(exports, module) {
|
|
689
693
|
"use strict";
|
|
690
694
|
var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
|
|
691
695
|
var Comparator = class _Comparator {
|
|
@@ -796,9 +800,9 @@ var require_comparator = __commonJS({
|
|
|
796
800
|
}
|
|
797
801
|
});
|
|
798
802
|
|
|
799
|
-
// node_modules/.pnpm/semver@7.8.
|
|
803
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/range.js
|
|
800
804
|
var require_range = __commonJS({
|
|
801
|
-
"node_modules/.pnpm/semver@7.8.
|
|
805
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/range.js"(exports, module) {
|
|
802
806
|
"use strict";
|
|
803
807
|
var SPACE_CHARACTERS = /\s+/g;
|
|
804
808
|
var Range = class _Range {
|
|
@@ -985,20 +989,22 @@ var require_range = __commonJS({
|
|
|
985
989
|
return comp;
|
|
986
990
|
};
|
|
987
991
|
var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
|
|
992
|
+
var invalidXRangeOrder = (M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p);
|
|
988
993
|
var replaceTildes = (comp, options) => {
|
|
989
994
|
return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
|
|
990
995
|
};
|
|
991
996
|
var replaceTilde = (comp, options) => {
|
|
992
997
|
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
|
|
998
|
+
const z = options.includePrerelease ? "-0" : "";
|
|
993
999
|
return comp.replace(r, (_, M, m, p, pr) => {
|
|
994
1000
|
debug("tilde", comp, _, M, m, p, pr);
|
|
995
1001
|
let ret;
|
|
996
1002
|
if (isX(M)) {
|
|
997
1003
|
ret = "";
|
|
998
1004
|
} else if (isX(m)) {
|
|
999
|
-
ret = `>=${M}.0.0 <${+M + 1}.0.0-0`;
|
|
1005
|
+
ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
|
|
1000
1006
|
} else if (isX(p)) {
|
|
1001
|
-
ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`;
|
|
1007
|
+
ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
|
|
1002
1008
|
} else if (pr) {
|
|
1003
1009
|
debug("replaceTilde pr", pr);
|
|
1004
1010
|
ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
|
|
@@ -1065,6 +1071,9 @@ var require_range = __commonJS({
|
|
|
1065
1071
|
const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
|
|
1066
1072
|
return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
|
|
1067
1073
|
debug("xRange", comp, ret, gtlt, M, m, p, pr);
|
|
1074
|
+
if (invalidXRangeOrder(M, m, p)) {
|
|
1075
|
+
return comp;
|
|
1076
|
+
}
|
|
1068
1077
|
const xM = isX(M);
|
|
1069
1078
|
const xm = xM || isX(m);
|
|
1070
1079
|
const xp = xm || isX(p);
|
|
@@ -1176,9 +1185,9 @@ var require_range = __commonJS({
|
|
|
1176
1185
|
}
|
|
1177
1186
|
});
|
|
1178
1187
|
|
|
1179
|
-
// node_modules/.pnpm/semver@7.8.
|
|
1188
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/satisfies.js
|
|
1180
1189
|
var require_satisfies = __commonJS({
|
|
1181
|
-
"node_modules/.pnpm/semver@7.8.
|
|
1190
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/satisfies.js"(exports, module) {
|
|
1182
1191
|
"use strict";
|
|
1183
1192
|
var Range = require_range();
|
|
1184
1193
|
var satisfies = (version, range, options) => {
|
|
@@ -1193,9 +1202,9 @@ var require_satisfies = __commonJS({
|
|
|
1193
1202
|
}
|
|
1194
1203
|
});
|
|
1195
1204
|
|
|
1196
|
-
// node_modules/.pnpm/semver@7.8.
|
|
1205
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-version.js
|
|
1197
1206
|
var require_min_version = __commonJS({
|
|
1198
|
-
"node_modules/.pnpm/semver@7.8.
|
|
1207
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-version.js"(exports, module) {
|
|
1199
1208
|
"use strict";
|
|
1200
1209
|
var SemVer = require_semver();
|
|
1201
1210
|
var Range = require_range();
|
|
@@ -1252,9 +1261,9 @@ var require_min_version = __commonJS({
|
|
|
1252
1261
|
}
|
|
1253
1262
|
});
|
|
1254
1263
|
|
|
1255
|
-
// node_modules/.pnpm/semver@7.8.
|
|
1264
|
+
// node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/valid.js
|
|
1256
1265
|
var require_valid2 = __commonJS({
|
|
1257
|
-
"node_modules/.pnpm/semver@7.8.
|
|
1266
|
+
"node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/valid.js"(exports, module) {
|
|
1258
1267
|
"use strict";
|
|
1259
1268
|
var Range = require_range();
|
|
1260
1269
|
var validRange = (range, options) => {
|
|
@@ -1274,7 +1283,7 @@ var createInitFlow = ({
|
|
|
1274
1283
|
adapters,
|
|
1275
1284
|
config
|
|
1276
1285
|
}) => {
|
|
1277
|
-
return (remotesOrManifestUrl) => flow.getRemoteEntries(remotesOrManifestUrl).then(flow.processRemoteEntries).then(flow.determineSharedExternals).then(flow.generateImportMap).then(flow.commitChanges).then(flow.exposeModuleLoader).then((loadRemoteModule) => ({
|
|
1286
|
+
return (remotesOrManifestUrl) => flow.getRemoteEntries(remotesOrManifestUrl).then(flow.processRemoteEntries).then(flow.determineSharedExternals).then(flow.generateImportMap).then((importMap) => flow.commitChanges(importMap, { override: true })).then(flow.exposeModuleLoader).then((loadRemoteModule) => ({
|
|
1278
1287
|
config,
|
|
1279
1288
|
adapters,
|
|
1280
1289
|
loadRemoteModule
|
|
@@ -1432,11 +1441,12 @@ function createStoreRemoteEntry(config, ports, logStep) {
|
|
|
1432
1441
|
}
|
|
1433
1442
|
function addExternalsToStorage(remoteEntry, onSharedExternal) {
|
|
1434
1443
|
remoteEntry.shared.forEach((external) => {
|
|
1435
|
-
|
|
1444
|
+
const tag = resolveVersion(remoteEntry, external);
|
|
1445
|
+
if (tag === null) return;
|
|
1436
1446
|
if (external.singleton) {
|
|
1437
|
-
onSharedExternal(remoteEntry, external, sharedExternalContext(remoteEntry, external));
|
|
1447
|
+
onSharedExternal(remoteEntry, external, sharedExternalContext(remoteEntry, external, tag));
|
|
1438
1448
|
} else {
|
|
1439
|
-
addScopedExternal(remoteEntry, external);
|
|
1449
|
+
addScopedExternal(remoteEntry, external, tag);
|
|
1440
1450
|
}
|
|
1441
1451
|
});
|
|
1442
1452
|
}
|
|
@@ -1450,25 +1460,30 @@ function createStoreRemoteEntry(config, ports, logStep) {
|
|
|
1450
1460
|
ports.sharedChunksRepo.addOrReplace(remoteEntry.name, bundleName, chunks);
|
|
1451
1461
|
});
|
|
1452
1462
|
}
|
|
1453
|
-
function addScopedExternal(remoteEntry, sharedInfo) {
|
|
1463
|
+
function addScopedExternal(remoteEntry, sharedInfo, tag) {
|
|
1454
1464
|
ports.scopedExternalsRepo.addExternal(remoteEntry.name, sharedInfo.packageName, {
|
|
1455
|
-
tag
|
|
1465
|
+
tag,
|
|
1456
1466
|
file: sharedInfo.outFileName,
|
|
1457
1467
|
bundle: sharedInfo.bundle
|
|
1458
1468
|
});
|
|
1459
1469
|
}
|
|
1460
|
-
function
|
|
1461
|
-
if (
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1470
|
+
function resolveVersion(remoteEntry, external) {
|
|
1471
|
+
if (external.version && ports.versionCheck.isValidSemver(external.version)) {
|
|
1472
|
+
return external.version;
|
|
1473
|
+
}
|
|
1474
|
+
const errorMsg = `[${remoteEntry.name}][${external.packageName}] Version '${external.version}' is not a valid version.`;
|
|
1475
|
+
if (config.strict.strictExternalVersion) {
|
|
1476
|
+
config.log.error(logStep, errorMsg);
|
|
1477
|
+
throw new NFError(`Could not process remote '${remoteEntry.name}'`);
|
|
1478
|
+
}
|
|
1479
|
+
if (config.profile.skipInvalidExternalVersions) {
|
|
1480
|
+
config.log.warn(logStep, `${errorMsg} Skipping external.`);
|
|
1481
|
+
return null;
|
|
1468
1482
|
}
|
|
1483
|
+
config.log.warn(logStep, errorMsg);
|
|
1484
|
+
return ports.versionCheck.smallestVersion(external.requiredVersion);
|
|
1469
1485
|
}
|
|
1470
|
-
function sharedExternalContext(remoteEntry, sharedInfo) {
|
|
1471
|
-
const tag = sharedInfo.version ?? ports.versionCheck.smallestVersion(sharedInfo.requiredVersion);
|
|
1486
|
+
function sharedExternalContext(remoteEntry, sharedInfo, tag) {
|
|
1472
1487
|
const scopeType = ports.sharedExternalsRepo.scopeType(sharedInfo.shareScope);
|
|
1473
1488
|
const remote = {
|
|
1474
1489
|
file: sharedInfo.outFileName,
|
|
@@ -1628,15 +1643,15 @@ function createDetermineSharedExternals(config, ports) {
|
|
|
1628
1643
|
}
|
|
1629
1644
|
}
|
|
1630
1645
|
|
|
1631
|
-
// node_modules/.pnpm/@softarc+native-federation@4.
|
|
1632
|
-
var BuildNotificationType
|
|
1633
|
-
(function(BuildNotificationType2) {
|
|
1646
|
+
// node_modules/.pnpm/@softarc+native-federation@4.2.1_typescript@6.0.3/node_modules/@softarc/native-federation/dist/lib/domain/core/build-notification-options.contract.js
|
|
1647
|
+
var BuildNotificationType = /* @__PURE__ */ ((BuildNotificationType2) => {
|
|
1634
1648
|
BuildNotificationType2["COMPLETED"] = "federation-rebuild-complete";
|
|
1635
1649
|
BuildNotificationType2["ERROR"] = "federation-rebuild-error";
|
|
1636
1650
|
BuildNotificationType2["CANCELLED"] = "federation-rebuild-cancelled";
|
|
1637
|
-
|
|
1651
|
+
return BuildNotificationType2;
|
|
1652
|
+
})(BuildNotificationType || {});
|
|
1638
1653
|
|
|
1639
|
-
// node_modules/.pnpm/@softarc+native-federation@4.
|
|
1654
|
+
// node_modules/.pnpm/@softarc+native-federation@4.2.1_typescript@6.0.3/node_modules/@softarc/native-federation/dist/lib/domain/core/chunk.js
|
|
1640
1655
|
var CHUNK_PREFIX = "@nf-internal";
|
|
1641
1656
|
function toChunkImport(fileName) {
|
|
1642
1657
|
if (fileName.startsWith("./")) {
|
|
@@ -1887,9 +1902,9 @@ function createGenerateImportMap(config, ports) {
|
|
|
1887
1902
|
|
|
1888
1903
|
// src/lib/core/2.app/steps/commit-changes.ts
|
|
1889
1904
|
function createCommitChanges(config, ports) {
|
|
1890
|
-
return (importMap) => Promise.resolve(importMap).then(addToBrowser).then(persistRepositoryChanges);
|
|
1891
|
-
function addToBrowser(importMap) {
|
|
1892
|
-
ports.browser.setImportMapFn(importMap);
|
|
1905
|
+
return (importMap, opts = {}) => Promise.resolve(importMap).then((map) => addToBrowser(map, opts)).then(persistRepositoryChanges);
|
|
1906
|
+
function addToBrowser(importMap, opts) {
|
|
1907
|
+
ports.browser.setImportMapFn(importMap, opts);
|
|
1893
1908
|
config.log.debug(5, "Added import map to browser.", importMap);
|
|
1894
1909
|
return importMap;
|
|
1895
1910
|
}
|
|
@@ -2592,7 +2607,7 @@ var getTrustedTypesPolicy = (name = "nfo") => {
|
|
|
2592
2607
|
});
|
|
2593
2608
|
cachedPolicy = {
|
|
2594
2609
|
createScript: (input) => native.createScript(input),
|
|
2595
|
-
createScriptURL: (input) => native.createScriptURL(input)
|
|
2610
|
+
createScriptURL: (input) => String(native.createScriptURL(input))
|
|
2596
2611
|
};
|
|
2597
2612
|
return cachedPolicy;
|
|
2598
2613
|
};
|
|
@@ -2749,6 +2764,7 @@ var createStorageConfig = (override) => ({
|
|
|
2749
2764
|
// src/lib/core/4.config/mode/default.profile.ts
|
|
2750
2765
|
var defaultProfile = {
|
|
2751
2766
|
latestSharedExternal: false,
|
|
2767
|
+
skipInvalidExternalVersions: false,
|
|
2752
2768
|
overrideCachedRemotes: "init-only",
|
|
2753
2769
|
overrideCachedRemotesIfURLMatches: false
|
|
2754
2770
|
};
|