@module-federation/sdk 0.0.0-next-20240604070618 → 0.0.0-next-20240605063144
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/dist/index.cjs.js +75 -34
- package/dist/index.esm.js +75 -34
- package/dist/package.json +1 -1
- package/dist/src/dom.d.ts +13 -2
- package/dist/src/types/stats.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
function _define_property$
|
|
5
|
+
function _define_property$4(obj, key, value) {
|
|
6
6
|
if (key in obj) {
|
|
7
7
|
Object.defineProperty(obj, key, {
|
|
8
8
|
value: value,
|
|
@@ -25,9 +25,9 @@ var NameTransformSymbol = {
|
|
|
25
25
|
SLASH: '/'
|
|
26
26
|
};
|
|
27
27
|
var _obj;
|
|
28
|
-
var NameTransformMap = (_obj = {}, _define_property$
|
|
28
|
+
var NameTransformMap = (_obj = {}, _define_property$4(_obj, NameTransformSymbol.AT, 'scope_'), _define_property$4(_obj, NameTransformSymbol.HYPHEN, '_'), _define_property$4(_obj, NameTransformSymbol.SLASH, '__'), _obj);
|
|
29
29
|
var _obj1;
|
|
30
|
-
var EncodedNameTransformMap = (_obj1 = {}, _define_property$
|
|
30
|
+
var EncodedNameTransformMap = (_obj1 = {}, _define_property$4(_obj1, NameTransformMap[NameTransformSymbol.AT], NameTransformSymbol.AT), _define_property$4(_obj1, NameTransformMap[NameTransformSymbol.HYPHEN], NameTransformSymbol.HYPHEN), _define_property$4(_obj1, NameTransformMap[NameTransformSymbol.SLASH], NameTransformSymbol.SLASH), _obj1);
|
|
31
31
|
var SEPARATOR = ':';
|
|
32
32
|
var ManifestFileName = 'mf-manifest.json';
|
|
33
33
|
var StatsFileName = 'mf-stats.json';
|
|
@@ -93,7 +93,7 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
93
93
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
94
94
|
return Constructor;
|
|
95
95
|
}
|
|
96
|
-
function _define_property$
|
|
96
|
+
function _define_property$3(obj, key, value) {
|
|
97
97
|
if (key in obj) {
|
|
98
98
|
Object.defineProperty(obj, key, {
|
|
99
99
|
value: value,
|
|
@@ -144,8 +144,8 @@ function safeGetLocalStorageItem() {
|
|
|
144
144
|
var Logger = /*#__PURE__*/ function() {
|
|
145
145
|
function Logger(identifier) {
|
|
146
146
|
_class_call_check(this, Logger);
|
|
147
|
-
_define_property$
|
|
148
|
-
_define_property$
|
|
147
|
+
_define_property$3(this, "enable", false);
|
|
148
|
+
_define_property$3(this, "identifier", void 0);
|
|
149
149
|
this.identifier = identifier || DEBUG_LOG;
|
|
150
150
|
if (isBrowserEnv() && safeGetLocalStorageItem()) {
|
|
151
151
|
this.enable = true;
|
|
@@ -374,7 +374,7 @@ var warn = function(msg) {
|
|
|
374
374
|
console.warn("".concat(LOG_CATEGORY, ": ").concat(msg));
|
|
375
375
|
};
|
|
376
376
|
|
|
377
|
-
function _define_property$
|
|
377
|
+
function _define_property$2(obj, key, value) {
|
|
378
378
|
if (key in obj) {
|
|
379
379
|
Object.defineProperty(obj, key, {
|
|
380
380
|
value: value,
|
|
@@ -387,7 +387,7 @@ function _define_property$1(obj, key, value) {
|
|
|
387
387
|
}
|
|
388
388
|
return obj;
|
|
389
389
|
}
|
|
390
|
-
function _object_spread$
|
|
390
|
+
function _object_spread$2(target) {
|
|
391
391
|
for(var i = 1; i < arguments.length; i++){
|
|
392
392
|
var source = arguments[i] != null ? arguments[i] : {};
|
|
393
393
|
var ownKeys = Object.keys(source);
|
|
@@ -397,7 +397,7 @@ function _object_spread$1(target) {
|
|
|
397
397
|
}));
|
|
398
398
|
}
|
|
399
399
|
ownKeys.forEach(function(key) {
|
|
400
|
-
_define_property$
|
|
400
|
+
_define_property$2(target, key, source[key]);
|
|
401
401
|
});
|
|
402
402
|
}
|
|
403
403
|
return target;
|
|
@@ -536,23 +536,23 @@ function generateSnapshotFromManifest(manifest) {
|
|
|
536
536
|
};
|
|
537
537
|
if ((_manifest_metaData = manifest.metaData) === null || _manifest_metaData === void 0 ? void 0 : _manifest_metaData.prefetchInterface) {
|
|
538
538
|
var prefetchInterface = manifest.metaData.prefetchInterface;
|
|
539
|
-
basicRemoteSnapshot = _object_spread_props(_object_spread$
|
|
539
|
+
basicRemoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
540
540
|
prefetchInterface: prefetchInterface
|
|
541
541
|
});
|
|
542
542
|
}
|
|
543
543
|
if ((_manifest_metaData1 = manifest.metaData) === null || _manifest_metaData1 === void 0 ? void 0 : _manifest_metaData1.prefetchEntry) {
|
|
544
544
|
var _manifest_metaData_prefetchEntry = manifest.metaData.prefetchEntry, path = _manifest_metaData_prefetchEntry.path, name = _manifest_metaData_prefetchEntry.name, type = _manifest_metaData_prefetchEntry.type;
|
|
545
|
-
basicRemoteSnapshot = _object_spread_props(_object_spread$
|
|
545
|
+
basicRemoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
546
546
|
prefetchEntry: simpleJoinRemoteEntry(path, name),
|
|
547
547
|
prefetchEntryType: type
|
|
548
548
|
});
|
|
549
549
|
}
|
|
550
550
|
if ('publicPath' in manifest.metaData) {
|
|
551
|
-
remoteSnapshot = _object_spread_props(_object_spread$
|
|
551
|
+
remoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
552
552
|
publicPath: getPublicPath()
|
|
553
553
|
});
|
|
554
554
|
} else {
|
|
555
|
-
remoteSnapshot = _object_spread_props(_object_spread$
|
|
555
|
+
remoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
556
556
|
getPublicPath: getPublicPath()
|
|
557
557
|
});
|
|
558
558
|
}
|
|
@@ -595,6 +595,19 @@ function _async_to_generator$1(fn) {
|
|
|
595
595
|
});
|
|
596
596
|
};
|
|
597
597
|
}
|
|
598
|
+
function _define_property$1(obj, key, value) {
|
|
599
|
+
if (key in obj) {
|
|
600
|
+
Object.defineProperty(obj, key, {
|
|
601
|
+
value: value,
|
|
602
|
+
enumerable: true,
|
|
603
|
+
configurable: true,
|
|
604
|
+
writable: true
|
|
605
|
+
});
|
|
606
|
+
} else {
|
|
607
|
+
obj[key] = value;
|
|
608
|
+
}
|
|
609
|
+
return obj;
|
|
610
|
+
}
|
|
598
611
|
function _instanceof(left, right) {
|
|
599
612
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
600
613
|
return !!right[Symbol.hasInstance](left);
|
|
@@ -602,6 +615,21 @@ function _instanceof(left, right) {
|
|
|
602
615
|
return left instanceof right;
|
|
603
616
|
}
|
|
604
617
|
}
|
|
618
|
+
function _object_spread$1(target) {
|
|
619
|
+
for(var i = 1; i < arguments.length; i++){
|
|
620
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
|
621
|
+
var ownKeys = Object.keys(source);
|
|
622
|
+
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
623
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
624
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
625
|
+
}));
|
|
626
|
+
}
|
|
627
|
+
ownKeys.forEach(function(key) {
|
|
628
|
+
_define_property$1(target, key, source[key]);
|
|
629
|
+
});
|
|
630
|
+
}
|
|
631
|
+
return target;
|
|
632
|
+
}
|
|
605
633
|
function _ts_generator$1(thisArg, body) {
|
|
606
634
|
var f, y, t, g, _ = {
|
|
607
635
|
label: 0,
|
|
@@ -746,7 +774,7 @@ function isStaticResourcesEqual(url1, url2) {
|
|
|
746
774
|
// Check if the relative paths are identical
|
|
747
775
|
return relativeUrl1 === relativeUrl2;
|
|
748
776
|
}
|
|
749
|
-
function createScript(
|
|
777
|
+
function createScript(info) {
|
|
750
778
|
// Retrieve the existing script element by its src attribute
|
|
751
779
|
var script = null;
|
|
752
780
|
var needAttach = true;
|
|
@@ -756,7 +784,7 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
756
784
|
for(var i = 0; i < scripts.length; i++){
|
|
757
785
|
var s = scripts[i];
|
|
758
786
|
var scriptSrc = s.getAttribute('src');
|
|
759
|
-
if (scriptSrc && isStaticResourcesEqual(scriptSrc, url)) {
|
|
787
|
+
if (scriptSrc && isStaticResourcesEqual(scriptSrc, info.url)) {
|
|
760
788
|
script = s;
|
|
761
789
|
needAttach = false;
|
|
762
790
|
break;
|
|
@@ -765,9 +793,9 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
765
793
|
if (!script) {
|
|
766
794
|
script = document.createElement('script');
|
|
767
795
|
script.type = 'text/javascript';
|
|
768
|
-
script.src = url;
|
|
769
|
-
if (createScriptHook) {
|
|
770
|
-
var createScriptRes = createScriptHook(url);
|
|
796
|
+
script.src = info.url;
|
|
797
|
+
if (info.createScriptHook) {
|
|
798
|
+
var createScriptRes = info.createScriptHook(info.url);
|
|
771
799
|
if (_instanceof(createScriptRes, HTMLScriptElement)) {
|
|
772
800
|
script = createScriptRes;
|
|
773
801
|
} else if (typeof createScriptRes === 'object') {
|
|
@@ -776,6 +804,7 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
776
804
|
}
|
|
777
805
|
}
|
|
778
806
|
}
|
|
807
|
+
var attrs = info.attrs;
|
|
779
808
|
if (attrs) {
|
|
780
809
|
Object.keys(attrs).forEach(function(name) {
|
|
781
810
|
if (script) {
|
|
@@ -789,35 +818,38 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
789
818
|
}
|
|
790
819
|
var onScriptComplete = function(prev, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
791
820
|
event) {
|
|
821
|
+
var _info_cb;
|
|
792
822
|
clearTimeout(timeoutId);
|
|
793
823
|
// Prevent memory leaks in IE.
|
|
794
824
|
if (script) {
|
|
795
825
|
script.onerror = null;
|
|
796
826
|
script.onload = null;
|
|
797
827
|
safeWrapper(function() {
|
|
798
|
-
(
|
|
828
|
+
if (info.needDeleteScript) {
|
|
829
|
+
(script === null || script === void 0 ? void 0 : script.parentNode) && script.parentNode.removeChild(script);
|
|
830
|
+
}
|
|
799
831
|
});
|
|
800
832
|
if (prev) {
|
|
833
|
+
var _info_cb1;
|
|
801
834
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
802
835
|
var res = prev(event);
|
|
803
|
-
cb();
|
|
836
|
+
info === null || info === void 0 ? void 0 : (_info_cb1 = info.cb) === null || _info_cb1 === void 0 ? void 0 : _info_cb1.call(info);
|
|
804
837
|
return res;
|
|
805
838
|
}
|
|
806
839
|
}
|
|
807
|
-
cb();
|
|
840
|
+
info === null || info === void 0 ? void 0 : (_info_cb = info.cb) === null || _info_cb === void 0 ? void 0 : _info_cb.call(info);
|
|
808
841
|
};
|
|
809
842
|
script.onerror = onScriptComplete.bind(null, script.onerror);
|
|
810
843
|
script.onload = onScriptComplete.bind(null, script.onload);
|
|
811
844
|
timeoutId = setTimeout(function() {
|
|
812
|
-
onScriptComplete(null, new Error('Remote script "'.concat(url, '" time-outed.')));
|
|
845
|
+
onScriptComplete(null, new Error('Remote script "'.concat(info.url, '" time-outed.')));
|
|
813
846
|
}, timeout);
|
|
814
847
|
return {
|
|
815
848
|
script: script,
|
|
816
849
|
needAttach: needAttach
|
|
817
850
|
};
|
|
818
851
|
}
|
|
819
|
-
function createLink(
|
|
820
|
-
var attrs = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, createLinkHook = arguments.length > 3 ? arguments[3] : void 0;
|
|
852
|
+
function createLink(info) {
|
|
821
853
|
// <link rel="preload" href="script.js" as="script">
|
|
822
854
|
// Retrieve the existing script element by its src attribute
|
|
823
855
|
var link = null;
|
|
@@ -827,7 +859,7 @@ function createLink(url, cb) {
|
|
|
827
859
|
var l = links[i];
|
|
828
860
|
var linkHref = l.getAttribute('href');
|
|
829
861
|
var linkRef = l.getAttribute('ref');
|
|
830
|
-
if (linkHref && isStaticResourcesEqual(linkHref, url) && linkRef === attrs['ref']) {
|
|
862
|
+
if (linkHref && isStaticResourcesEqual(linkHref, info.url) && linkRef === info.attrs['ref']) {
|
|
831
863
|
link = l;
|
|
832
864
|
needAttach = false;
|
|
833
865
|
break;
|
|
@@ -835,15 +867,15 @@ function createLink(url, cb) {
|
|
|
835
867
|
}
|
|
836
868
|
if (!link) {
|
|
837
869
|
link = document.createElement('link');
|
|
838
|
-
link.setAttribute('href', url);
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
var createLinkRes = createLinkHook(url);
|
|
870
|
+
link.setAttribute('href', info.url);
|
|
871
|
+
if (info.createLinkHook) {
|
|
872
|
+
var createLinkRes = info.createLinkHook(info.url);
|
|
842
873
|
if (_instanceof(createLinkRes, HTMLLinkElement)) {
|
|
843
874
|
link = createLinkRes;
|
|
844
875
|
}
|
|
845
876
|
}
|
|
846
877
|
}
|
|
878
|
+
var attrs = info.attrs;
|
|
847
879
|
if (attrs) {
|
|
848
880
|
Object.keys(attrs).forEach(function(name) {
|
|
849
881
|
if (link) {
|
|
@@ -863,11 +895,11 @@ function createLink(url, cb) {
|
|
|
863
895
|
if (prev) {
|
|
864
896
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
865
897
|
var res = prev(event);
|
|
866
|
-
cb();
|
|
898
|
+
info.cb();
|
|
867
899
|
return res;
|
|
868
900
|
}
|
|
869
901
|
}
|
|
870
|
-
cb();
|
|
902
|
+
info.cb();
|
|
871
903
|
};
|
|
872
904
|
link.onerror = onLinkComplete.bind(null, link.onerror);
|
|
873
905
|
link.onload = onLinkComplete.bind(null, link.onload);
|
|
@@ -877,10 +909,19 @@ function createLink(url, cb) {
|
|
|
877
909
|
};
|
|
878
910
|
}
|
|
879
911
|
function loadScript(url, info) {
|
|
880
|
-
var
|
|
912
|
+
var _info_attrs = info.attrs, attrs = _info_attrs === void 0 ? {} : _info_attrs, createScriptHook = info.createScriptHook;
|
|
881
913
|
return new Promise(function(resolve, _reject) {
|
|
882
|
-
var _createScript = createScript(
|
|
883
|
-
|
|
914
|
+
var _createScript = createScript({
|
|
915
|
+
url: url,
|
|
916
|
+
cb: resolve,
|
|
917
|
+
attrs: _object_spread$1({
|
|
918
|
+
crossorigin: 'anonymous',
|
|
919
|
+
fetchpriority: 'high'
|
|
920
|
+
}, attrs),
|
|
921
|
+
createScriptHook: createScriptHook,
|
|
922
|
+
needDeleteScript: true
|
|
923
|
+
}), script = _createScript.script, needAttach = _createScript.needAttach;
|
|
924
|
+
needAttach && document.head.appendChild(script);
|
|
884
925
|
});
|
|
885
926
|
}
|
|
886
927
|
|
package/dist/index.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function _define_property$
|
|
1
|
+
function _define_property$4(obj, key, value) {
|
|
2
2
|
if (key in obj) {
|
|
3
3
|
Object.defineProperty(obj, key, {
|
|
4
4
|
value: value,
|
|
@@ -21,9 +21,9 @@ var NameTransformSymbol = {
|
|
|
21
21
|
SLASH: '/'
|
|
22
22
|
};
|
|
23
23
|
var _obj;
|
|
24
|
-
var NameTransformMap = (_obj = {}, _define_property$
|
|
24
|
+
var NameTransformMap = (_obj = {}, _define_property$4(_obj, NameTransformSymbol.AT, 'scope_'), _define_property$4(_obj, NameTransformSymbol.HYPHEN, '_'), _define_property$4(_obj, NameTransformSymbol.SLASH, '__'), _obj);
|
|
25
25
|
var _obj1;
|
|
26
|
-
var EncodedNameTransformMap = (_obj1 = {}, _define_property$
|
|
26
|
+
var EncodedNameTransformMap = (_obj1 = {}, _define_property$4(_obj1, NameTransformMap[NameTransformSymbol.AT], NameTransformSymbol.AT), _define_property$4(_obj1, NameTransformMap[NameTransformSymbol.HYPHEN], NameTransformSymbol.HYPHEN), _define_property$4(_obj1, NameTransformMap[NameTransformSymbol.SLASH], NameTransformSymbol.SLASH), _obj1);
|
|
27
27
|
var SEPARATOR = ':';
|
|
28
28
|
var ManifestFileName = 'mf-manifest.json';
|
|
29
29
|
var StatsFileName = 'mf-stats.json';
|
|
@@ -89,7 +89,7 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
89
89
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
90
90
|
return Constructor;
|
|
91
91
|
}
|
|
92
|
-
function _define_property$
|
|
92
|
+
function _define_property$3(obj, key, value) {
|
|
93
93
|
if (key in obj) {
|
|
94
94
|
Object.defineProperty(obj, key, {
|
|
95
95
|
value: value,
|
|
@@ -140,8 +140,8 @@ function safeGetLocalStorageItem() {
|
|
|
140
140
|
var Logger = /*#__PURE__*/ function() {
|
|
141
141
|
function Logger(identifier) {
|
|
142
142
|
_class_call_check(this, Logger);
|
|
143
|
-
_define_property$
|
|
144
|
-
_define_property$
|
|
143
|
+
_define_property$3(this, "enable", false);
|
|
144
|
+
_define_property$3(this, "identifier", void 0);
|
|
145
145
|
this.identifier = identifier || DEBUG_LOG;
|
|
146
146
|
if (isBrowserEnv() && safeGetLocalStorageItem()) {
|
|
147
147
|
this.enable = true;
|
|
@@ -370,7 +370,7 @@ var warn = function(msg) {
|
|
|
370
370
|
console.warn("".concat(LOG_CATEGORY, ": ").concat(msg));
|
|
371
371
|
};
|
|
372
372
|
|
|
373
|
-
function _define_property$
|
|
373
|
+
function _define_property$2(obj, key, value) {
|
|
374
374
|
if (key in obj) {
|
|
375
375
|
Object.defineProperty(obj, key, {
|
|
376
376
|
value: value,
|
|
@@ -383,7 +383,7 @@ function _define_property$1(obj, key, value) {
|
|
|
383
383
|
}
|
|
384
384
|
return obj;
|
|
385
385
|
}
|
|
386
|
-
function _object_spread$
|
|
386
|
+
function _object_spread$2(target) {
|
|
387
387
|
for(var i = 1; i < arguments.length; i++){
|
|
388
388
|
var source = arguments[i] != null ? arguments[i] : {};
|
|
389
389
|
var ownKeys = Object.keys(source);
|
|
@@ -393,7 +393,7 @@ function _object_spread$1(target) {
|
|
|
393
393
|
}));
|
|
394
394
|
}
|
|
395
395
|
ownKeys.forEach(function(key) {
|
|
396
|
-
_define_property$
|
|
396
|
+
_define_property$2(target, key, source[key]);
|
|
397
397
|
});
|
|
398
398
|
}
|
|
399
399
|
return target;
|
|
@@ -532,23 +532,23 @@ function generateSnapshotFromManifest(manifest) {
|
|
|
532
532
|
};
|
|
533
533
|
if ((_manifest_metaData = manifest.metaData) === null || _manifest_metaData === void 0 ? void 0 : _manifest_metaData.prefetchInterface) {
|
|
534
534
|
var prefetchInterface = manifest.metaData.prefetchInterface;
|
|
535
|
-
basicRemoteSnapshot = _object_spread_props(_object_spread$
|
|
535
|
+
basicRemoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
536
536
|
prefetchInterface: prefetchInterface
|
|
537
537
|
});
|
|
538
538
|
}
|
|
539
539
|
if ((_manifest_metaData1 = manifest.metaData) === null || _manifest_metaData1 === void 0 ? void 0 : _manifest_metaData1.prefetchEntry) {
|
|
540
540
|
var _manifest_metaData_prefetchEntry = manifest.metaData.prefetchEntry, path = _manifest_metaData_prefetchEntry.path, name = _manifest_metaData_prefetchEntry.name, type = _manifest_metaData_prefetchEntry.type;
|
|
541
|
-
basicRemoteSnapshot = _object_spread_props(_object_spread$
|
|
541
|
+
basicRemoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
542
542
|
prefetchEntry: simpleJoinRemoteEntry(path, name),
|
|
543
543
|
prefetchEntryType: type
|
|
544
544
|
});
|
|
545
545
|
}
|
|
546
546
|
if ('publicPath' in manifest.metaData) {
|
|
547
|
-
remoteSnapshot = _object_spread_props(_object_spread$
|
|
547
|
+
remoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
548
548
|
publicPath: getPublicPath()
|
|
549
549
|
});
|
|
550
550
|
} else {
|
|
551
|
-
remoteSnapshot = _object_spread_props(_object_spread$
|
|
551
|
+
remoteSnapshot = _object_spread_props(_object_spread$2({}, basicRemoteSnapshot), {
|
|
552
552
|
getPublicPath: getPublicPath()
|
|
553
553
|
});
|
|
554
554
|
}
|
|
@@ -591,6 +591,19 @@ function _async_to_generator$1(fn) {
|
|
|
591
591
|
});
|
|
592
592
|
};
|
|
593
593
|
}
|
|
594
|
+
function _define_property$1(obj, key, value) {
|
|
595
|
+
if (key in obj) {
|
|
596
|
+
Object.defineProperty(obj, key, {
|
|
597
|
+
value: value,
|
|
598
|
+
enumerable: true,
|
|
599
|
+
configurable: true,
|
|
600
|
+
writable: true
|
|
601
|
+
});
|
|
602
|
+
} else {
|
|
603
|
+
obj[key] = value;
|
|
604
|
+
}
|
|
605
|
+
return obj;
|
|
606
|
+
}
|
|
594
607
|
function _instanceof(left, right) {
|
|
595
608
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
596
609
|
return !!right[Symbol.hasInstance](left);
|
|
@@ -598,6 +611,21 @@ function _instanceof(left, right) {
|
|
|
598
611
|
return left instanceof right;
|
|
599
612
|
}
|
|
600
613
|
}
|
|
614
|
+
function _object_spread$1(target) {
|
|
615
|
+
for(var i = 1; i < arguments.length; i++){
|
|
616
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
|
617
|
+
var ownKeys = Object.keys(source);
|
|
618
|
+
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
619
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
620
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
621
|
+
}));
|
|
622
|
+
}
|
|
623
|
+
ownKeys.forEach(function(key) {
|
|
624
|
+
_define_property$1(target, key, source[key]);
|
|
625
|
+
});
|
|
626
|
+
}
|
|
627
|
+
return target;
|
|
628
|
+
}
|
|
601
629
|
function _ts_generator$1(thisArg, body) {
|
|
602
630
|
var f, y, t, g, _ = {
|
|
603
631
|
label: 0,
|
|
@@ -742,7 +770,7 @@ function isStaticResourcesEqual(url1, url2) {
|
|
|
742
770
|
// Check if the relative paths are identical
|
|
743
771
|
return relativeUrl1 === relativeUrl2;
|
|
744
772
|
}
|
|
745
|
-
function createScript(
|
|
773
|
+
function createScript(info) {
|
|
746
774
|
// Retrieve the existing script element by its src attribute
|
|
747
775
|
var script = null;
|
|
748
776
|
var needAttach = true;
|
|
@@ -752,7 +780,7 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
752
780
|
for(var i = 0; i < scripts.length; i++){
|
|
753
781
|
var s = scripts[i];
|
|
754
782
|
var scriptSrc = s.getAttribute('src');
|
|
755
|
-
if (scriptSrc && isStaticResourcesEqual(scriptSrc, url)) {
|
|
783
|
+
if (scriptSrc && isStaticResourcesEqual(scriptSrc, info.url)) {
|
|
756
784
|
script = s;
|
|
757
785
|
needAttach = false;
|
|
758
786
|
break;
|
|
@@ -761,9 +789,9 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
761
789
|
if (!script) {
|
|
762
790
|
script = document.createElement('script');
|
|
763
791
|
script.type = 'text/javascript';
|
|
764
|
-
script.src = url;
|
|
765
|
-
if (createScriptHook) {
|
|
766
|
-
var createScriptRes = createScriptHook(url);
|
|
792
|
+
script.src = info.url;
|
|
793
|
+
if (info.createScriptHook) {
|
|
794
|
+
var createScriptRes = info.createScriptHook(info.url);
|
|
767
795
|
if (_instanceof(createScriptRes, HTMLScriptElement)) {
|
|
768
796
|
script = createScriptRes;
|
|
769
797
|
} else if (typeof createScriptRes === 'object') {
|
|
@@ -772,6 +800,7 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
772
800
|
}
|
|
773
801
|
}
|
|
774
802
|
}
|
|
803
|
+
var attrs = info.attrs;
|
|
775
804
|
if (attrs) {
|
|
776
805
|
Object.keys(attrs).forEach(function(name) {
|
|
777
806
|
if (script) {
|
|
@@ -785,35 +814,38 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
785
814
|
}
|
|
786
815
|
var onScriptComplete = function(prev, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
787
816
|
event) {
|
|
817
|
+
var _info_cb;
|
|
788
818
|
clearTimeout(timeoutId);
|
|
789
819
|
// Prevent memory leaks in IE.
|
|
790
820
|
if (script) {
|
|
791
821
|
script.onerror = null;
|
|
792
822
|
script.onload = null;
|
|
793
823
|
safeWrapper(function() {
|
|
794
|
-
(
|
|
824
|
+
if (info.needDeleteScript) {
|
|
825
|
+
(script === null || script === void 0 ? void 0 : script.parentNode) && script.parentNode.removeChild(script);
|
|
826
|
+
}
|
|
795
827
|
});
|
|
796
828
|
if (prev) {
|
|
829
|
+
var _info_cb1;
|
|
797
830
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
798
831
|
var res = prev(event);
|
|
799
|
-
cb();
|
|
832
|
+
info === null || info === void 0 ? void 0 : (_info_cb1 = info.cb) === null || _info_cb1 === void 0 ? void 0 : _info_cb1.call(info);
|
|
800
833
|
return res;
|
|
801
834
|
}
|
|
802
835
|
}
|
|
803
|
-
cb();
|
|
836
|
+
info === null || info === void 0 ? void 0 : (_info_cb = info.cb) === null || _info_cb === void 0 ? void 0 : _info_cb.call(info);
|
|
804
837
|
};
|
|
805
838
|
script.onerror = onScriptComplete.bind(null, script.onerror);
|
|
806
839
|
script.onload = onScriptComplete.bind(null, script.onload);
|
|
807
840
|
timeoutId = setTimeout(function() {
|
|
808
|
-
onScriptComplete(null, new Error('Remote script "'.concat(url, '" time-outed.')));
|
|
841
|
+
onScriptComplete(null, new Error('Remote script "'.concat(info.url, '" time-outed.')));
|
|
809
842
|
}, timeout);
|
|
810
843
|
return {
|
|
811
844
|
script: script,
|
|
812
845
|
needAttach: needAttach
|
|
813
846
|
};
|
|
814
847
|
}
|
|
815
|
-
function createLink(
|
|
816
|
-
var attrs = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, createLinkHook = arguments.length > 3 ? arguments[3] : void 0;
|
|
848
|
+
function createLink(info) {
|
|
817
849
|
// <link rel="preload" href="script.js" as="script">
|
|
818
850
|
// Retrieve the existing script element by its src attribute
|
|
819
851
|
var link = null;
|
|
@@ -823,7 +855,7 @@ function createLink(url, cb) {
|
|
|
823
855
|
var l = links[i];
|
|
824
856
|
var linkHref = l.getAttribute('href');
|
|
825
857
|
var linkRef = l.getAttribute('ref');
|
|
826
|
-
if (linkHref && isStaticResourcesEqual(linkHref, url) && linkRef === attrs['ref']) {
|
|
858
|
+
if (linkHref && isStaticResourcesEqual(linkHref, info.url) && linkRef === info.attrs['ref']) {
|
|
827
859
|
link = l;
|
|
828
860
|
needAttach = false;
|
|
829
861
|
break;
|
|
@@ -831,15 +863,15 @@ function createLink(url, cb) {
|
|
|
831
863
|
}
|
|
832
864
|
if (!link) {
|
|
833
865
|
link = document.createElement('link');
|
|
834
|
-
link.setAttribute('href', url);
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
var createLinkRes = createLinkHook(url);
|
|
866
|
+
link.setAttribute('href', info.url);
|
|
867
|
+
if (info.createLinkHook) {
|
|
868
|
+
var createLinkRes = info.createLinkHook(info.url);
|
|
838
869
|
if (_instanceof(createLinkRes, HTMLLinkElement)) {
|
|
839
870
|
link = createLinkRes;
|
|
840
871
|
}
|
|
841
872
|
}
|
|
842
873
|
}
|
|
874
|
+
var attrs = info.attrs;
|
|
843
875
|
if (attrs) {
|
|
844
876
|
Object.keys(attrs).forEach(function(name) {
|
|
845
877
|
if (link) {
|
|
@@ -859,11 +891,11 @@ function createLink(url, cb) {
|
|
|
859
891
|
if (prev) {
|
|
860
892
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
861
893
|
var res = prev(event);
|
|
862
|
-
cb();
|
|
894
|
+
info.cb();
|
|
863
895
|
return res;
|
|
864
896
|
}
|
|
865
897
|
}
|
|
866
|
-
cb();
|
|
898
|
+
info.cb();
|
|
867
899
|
};
|
|
868
900
|
link.onerror = onLinkComplete.bind(null, link.onerror);
|
|
869
901
|
link.onload = onLinkComplete.bind(null, link.onload);
|
|
@@ -873,10 +905,19 @@ function createLink(url, cb) {
|
|
|
873
905
|
};
|
|
874
906
|
}
|
|
875
907
|
function loadScript(url, info) {
|
|
876
|
-
var
|
|
908
|
+
var _info_attrs = info.attrs, attrs = _info_attrs === void 0 ? {} : _info_attrs, createScriptHook = info.createScriptHook;
|
|
877
909
|
return new Promise(function(resolve, _reject) {
|
|
878
|
-
var _createScript = createScript(
|
|
879
|
-
|
|
910
|
+
var _createScript = createScript({
|
|
911
|
+
url: url,
|
|
912
|
+
cb: resolve,
|
|
913
|
+
attrs: _object_spread$1({
|
|
914
|
+
crossorigin: 'anonymous',
|
|
915
|
+
fetchpriority: 'high'
|
|
916
|
+
}, attrs),
|
|
917
|
+
createScriptHook: createScriptHook,
|
|
918
|
+
needDeleteScript: true
|
|
919
|
+
}), script = _createScript.script, needAttach = _createScript.needAttach;
|
|
920
|
+
needAttach && document.head.appendChild(script);
|
|
880
921
|
});
|
|
881
922
|
}
|
|
882
923
|
|
package/dist/package.json
CHANGED
package/dist/src/dom.d.ts
CHANGED
|
@@ -4,11 +4,22 @@ export type CreateScriptHookReturn = HTMLScriptElement | {
|
|
|
4
4
|
script?: HTMLScriptElement;
|
|
5
5
|
timeout?: number;
|
|
6
6
|
} | void;
|
|
7
|
-
export declare function createScript(
|
|
7
|
+
export declare function createScript(info: {
|
|
8
|
+
url: string;
|
|
9
|
+
cb?: (value: void | PromiseLike<void>) => void;
|
|
10
|
+
attrs?: Record<string, any>;
|
|
11
|
+
needDeleteScript?: boolean;
|
|
12
|
+
createScriptHook?: (url: string) => CreateScriptHookReturn;
|
|
13
|
+
}): {
|
|
8
14
|
script: HTMLScriptElement;
|
|
9
15
|
needAttach: boolean;
|
|
10
16
|
};
|
|
11
|
-
export declare function createLink(
|
|
17
|
+
export declare function createLink(info: {
|
|
18
|
+
url: string;
|
|
19
|
+
cb: (value: void | PromiseLike<void>) => void;
|
|
20
|
+
attrs: Record<string, string>;
|
|
21
|
+
createLinkHook?: (url: string) => HTMLLinkElement | void;
|
|
22
|
+
}): {
|
|
12
23
|
link: HTMLLinkElement;
|
|
13
24
|
needAttach: boolean;
|
|
14
25
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RemoteWithEntry, RemoteWithVersion } from './common';
|
|
2
|
-
export type RemoteEntryType = '
|
|
2
|
+
export type RemoteEntryType = 'var' | 'module' | 'assign' | 'assign-properties' | 'this' | 'window' | 'self' | 'global' | 'commonjs' | 'commonjs2' | 'commonjs-module' | 'commonjs-static' | 'amd' | 'amd-require' | 'umd' | 'umd2' | 'jsonp' | 'system' | string;
|
|
3
3
|
interface ResourceInfo {
|
|
4
4
|
path: string;
|
|
5
5
|
name: string;
|