@module-federation/sdk 0.1.17 → 0.1.19
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 +97 -52
- package/dist/index.esm.js +97 -52
- package/dist/package.json +1 -1
- package/dist/src/dom.d.ts +14 -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') {
|
|
@@ -775,49 +803,54 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
775
803
|
if (createScriptRes.timeout) timeout = createScriptRes.timeout;
|
|
776
804
|
}
|
|
777
805
|
}
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
806
|
+
var attrs = info.attrs;
|
|
807
|
+
if (attrs) {
|
|
808
|
+
Object.keys(attrs).forEach(function(name) {
|
|
809
|
+
if (script) {
|
|
810
|
+
if (name === 'async' || name === 'defer') {
|
|
811
|
+
script[name] = attrs[name];
|
|
812
|
+
} else {
|
|
813
|
+
script.setAttribute(name, attrs[name]);
|
|
814
|
+
}
|
|
786
815
|
}
|
|
787
|
-
}
|
|
788
|
-
}
|
|
816
|
+
});
|
|
817
|
+
}
|
|
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
|
+
var _info_needDeleteScript = info.needDeleteScript, needDeleteScript = _info_needDeleteScript === void 0 ? true : _info_needDeleteScript;
|
|
829
|
+
if (needDeleteScript) {
|
|
830
|
+
(script === null || script === void 0 ? void 0 : script.parentNode) && script.parentNode.removeChild(script);
|
|
831
|
+
}
|
|
799
832
|
});
|
|
800
833
|
if (prev) {
|
|
834
|
+
var _info_cb1;
|
|
801
835
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
802
836
|
var res = prev(event);
|
|
803
|
-
cb();
|
|
837
|
+
info === null || info === void 0 ? void 0 : (_info_cb1 = info.cb) === null || _info_cb1 === void 0 ? void 0 : _info_cb1.call(info);
|
|
804
838
|
return res;
|
|
805
839
|
}
|
|
806
840
|
}
|
|
807
|
-
cb();
|
|
841
|
+
info === null || info === void 0 ? void 0 : (_info_cb = info.cb) === null || _info_cb === void 0 ? void 0 : _info_cb.call(info);
|
|
808
842
|
};
|
|
809
843
|
script.onerror = onScriptComplete.bind(null, script.onerror);
|
|
810
844
|
script.onload = onScriptComplete.bind(null, script.onload);
|
|
811
845
|
timeoutId = setTimeout(function() {
|
|
812
|
-
onScriptComplete(null, new Error('Remote script "'.concat(url, '" time-outed.')));
|
|
846
|
+
onScriptComplete(null, new Error('Remote script "'.concat(info.url, '" time-outed.')));
|
|
813
847
|
}, timeout);
|
|
814
848
|
return {
|
|
815
849
|
script: script,
|
|
816
850
|
needAttach: needAttach
|
|
817
851
|
};
|
|
818
852
|
}
|
|
819
|
-
function createLink(
|
|
820
|
-
var attrs = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, createLinkHook = arguments.length > 3 ? arguments[3] : void 0;
|
|
853
|
+
function createLink(info) {
|
|
821
854
|
// <link rel="preload" href="script.js" as="script">
|
|
822
855
|
// Retrieve the existing script element by its src attribute
|
|
823
856
|
var link = null;
|
|
@@ -827,7 +860,7 @@ function createLink(url, cb) {
|
|
|
827
860
|
var l = links[i];
|
|
828
861
|
var linkHref = l.getAttribute('href');
|
|
829
862
|
var linkRef = l.getAttribute('ref');
|
|
830
|
-
if (linkHref && isStaticResourcesEqual(linkHref, url) && linkRef === attrs['ref']) {
|
|
863
|
+
if (linkHref && isStaticResourcesEqual(linkHref, info.url) && linkRef === info.attrs['ref']) {
|
|
831
864
|
link = l;
|
|
832
865
|
needAttach = false;
|
|
833
866
|
break;
|
|
@@ -835,21 +868,21 @@ function createLink(url, cb) {
|
|
|
835
868
|
}
|
|
836
869
|
if (!link) {
|
|
837
870
|
link = document.createElement('link');
|
|
838
|
-
link.setAttribute('href', url);
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
var createLinkRes = createLinkHook(url);
|
|
871
|
+
link.setAttribute('href', info.url);
|
|
872
|
+
if (info.createLinkHook) {
|
|
873
|
+
var createLinkRes = info.createLinkHook(info.url);
|
|
842
874
|
if (_instanceof(createLinkRes, HTMLLinkElement)) {
|
|
843
875
|
link = createLinkRes;
|
|
844
876
|
}
|
|
845
877
|
}
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
878
|
+
var attrs = info.attrs;
|
|
879
|
+
if (attrs) {
|
|
880
|
+
Object.keys(attrs).forEach(function(name) {
|
|
881
|
+
if (link) {
|
|
882
|
+
link.setAttribute(name, attrs[name]);
|
|
883
|
+
}
|
|
884
|
+
});
|
|
885
|
+
}
|
|
853
886
|
}
|
|
854
887
|
var onLinkComplete = function(prev, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
855
888
|
event) {
|
|
@@ -858,16 +891,19 @@ function createLink(url, cb) {
|
|
|
858
891
|
link.onerror = null;
|
|
859
892
|
link.onload = null;
|
|
860
893
|
safeWrapper(function() {
|
|
861
|
-
|
|
894
|
+
var _info_needDeleteLink = info.needDeleteLink, needDeleteLink = _info_needDeleteLink === void 0 ? true : _info_needDeleteLink;
|
|
895
|
+
if (needDeleteLink) {
|
|
896
|
+
(link === null || link === void 0 ? void 0 : link.parentNode) && link.parentNode.removeChild(link);
|
|
897
|
+
}
|
|
862
898
|
});
|
|
863
899
|
if (prev) {
|
|
864
900
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
865
901
|
var res = prev(event);
|
|
866
|
-
cb();
|
|
902
|
+
info.cb();
|
|
867
903
|
return res;
|
|
868
904
|
}
|
|
869
905
|
}
|
|
870
|
-
cb();
|
|
906
|
+
info.cb();
|
|
871
907
|
};
|
|
872
908
|
link.onerror = onLinkComplete.bind(null, link.onerror);
|
|
873
909
|
link.onload = onLinkComplete.bind(null, link.onload);
|
|
@@ -877,10 +913,19 @@ function createLink(url, cb) {
|
|
|
877
913
|
};
|
|
878
914
|
}
|
|
879
915
|
function loadScript(url, info) {
|
|
880
|
-
var
|
|
916
|
+
var _info_attrs = info.attrs, attrs = _info_attrs === void 0 ? {} : _info_attrs, createScriptHook = info.createScriptHook;
|
|
881
917
|
return new Promise(function(resolve, _reject) {
|
|
882
|
-
var _createScript = createScript(
|
|
883
|
-
|
|
918
|
+
var _createScript = createScript({
|
|
919
|
+
url: url,
|
|
920
|
+
cb: resolve,
|
|
921
|
+
attrs: _object_spread$1({
|
|
922
|
+
crossorigin: 'anonymous',
|
|
923
|
+
fetchpriority: 'high'
|
|
924
|
+
}, attrs),
|
|
925
|
+
createScriptHook: createScriptHook,
|
|
926
|
+
needDeleteScript: true
|
|
927
|
+
}), script = _createScript.script, needAttach = _createScript.needAttach;
|
|
928
|
+
needAttach && document.head.appendChild(script);
|
|
884
929
|
});
|
|
885
930
|
}
|
|
886
931
|
|
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') {
|
|
@@ -771,49 +799,54 @@ function createScript(url, cb, attrs, createScriptHook) {
|
|
|
771
799
|
if (createScriptRes.timeout) timeout = createScriptRes.timeout;
|
|
772
800
|
}
|
|
773
801
|
}
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
802
|
+
var attrs = info.attrs;
|
|
803
|
+
if (attrs) {
|
|
804
|
+
Object.keys(attrs).forEach(function(name) {
|
|
805
|
+
if (script) {
|
|
806
|
+
if (name === 'async' || name === 'defer') {
|
|
807
|
+
script[name] = attrs[name];
|
|
808
|
+
} else {
|
|
809
|
+
script.setAttribute(name, attrs[name]);
|
|
810
|
+
}
|
|
782
811
|
}
|
|
783
|
-
}
|
|
784
|
-
}
|
|
812
|
+
});
|
|
813
|
+
}
|
|
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
|
+
var _info_needDeleteScript = info.needDeleteScript, needDeleteScript = _info_needDeleteScript === void 0 ? true : _info_needDeleteScript;
|
|
825
|
+
if (needDeleteScript) {
|
|
826
|
+
(script === null || script === void 0 ? void 0 : script.parentNode) && script.parentNode.removeChild(script);
|
|
827
|
+
}
|
|
795
828
|
});
|
|
796
829
|
if (prev) {
|
|
830
|
+
var _info_cb1;
|
|
797
831
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
798
832
|
var res = prev(event);
|
|
799
|
-
cb();
|
|
833
|
+
info === null || info === void 0 ? void 0 : (_info_cb1 = info.cb) === null || _info_cb1 === void 0 ? void 0 : _info_cb1.call(info);
|
|
800
834
|
return res;
|
|
801
835
|
}
|
|
802
836
|
}
|
|
803
|
-
cb();
|
|
837
|
+
info === null || info === void 0 ? void 0 : (_info_cb = info.cb) === null || _info_cb === void 0 ? void 0 : _info_cb.call(info);
|
|
804
838
|
};
|
|
805
839
|
script.onerror = onScriptComplete.bind(null, script.onerror);
|
|
806
840
|
script.onload = onScriptComplete.bind(null, script.onload);
|
|
807
841
|
timeoutId = setTimeout(function() {
|
|
808
|
-
onScriptComplete(null, new Error('Remote script "'.concat(url, '" time-outed.')));
|
|
842
|
+
onScriptComplete(null, new Error('Remote script "'.concat(info.url, '" time-outed.')));
|
|
809
843
|
}, timeout);
|
|
810
844
|
return {
|
|
811
845
|
script: script,
|
|
812
846
|
needAttach: needAttach
|
|
813
847
|
};
|
|
814
848
|
}
|
|
815
|
-
function createLink(
|
|
816
|
-
var attrs = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, createLinkHook = arguments.length > 3 ? arguments[3] : void 0;
|
|
849
|
+
function createLink(info) {
|
|
817
850
|
// <link rel="preload" href="script.js" as="script">
|
|
818
851
|
// Retrieve the existing script element by its src attribute
|
|
819
852
|
var link = null;
|
|
@@ -823,7 +856,7 @@ function createLink(url, cb) {
|
|
|
823
856
|
var l = links[i];
|
|
824
857
|
var linkHref = l.getAttribute('href');
|
|
825
858
|
var linkRef = l.getAttribute('ref');
|
|
826
|
-
if (linkHref && isStaticResourcesEqual(linkHref, url) && linkRef === attrs['ref']) {
|
|
859
|
+
if (linkHref && isStaticResourcesEqual(linkHref, info.url) && linkRef === info.attrs['ref']) {
|
|
827
860
|
link = l;
|
|
828
861
|
needAttach = false;
|
|
829
862
|
break;
|
|
@@ -831,21 +864,21 @@ function createLink(url, cb) {
|
|
|
831
864
|
}
|
|
832
865
|
if (!link) {
|
|
833
866
|
link = document.createElement('link');
|
|
834
|
-
link.setAttribute('href', url);
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
var createLinkRes = createLinkHook(url);
|
|
867
|
+
link.setAttribute('href', info.url);
|
|
868
|
+
if (info.createLinkHook) {
|
|
869
|
+
var createLinkRes = info.createLinkHook(info.url);
|
|
838
870
|
if (_instanceof(createLinkRes, HTMLLinkElement)) {
|
|
839
871
|
link = createLinkRes;
|
|
840
872
|
}
|
|
841
873
|
}
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
874
|
+
var attrs = info.attrs;
|
|
875
|
+
if (attrs) {
|
|
876
|
+
Object.keys(attrs).forEach(function(name) {
|
|
877
|
+
if (link) {
|
|
878
|
+
link.setAttribute(name, attrs[name]);
|
|
879
|
+
}
|
|
880
|
+
});
|
|
881
|
+
}
|
|
849
882
|
}
|
|
850
883
|
var onLinkComplete = function(prev, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
851
884
|
event) {
|
|
@@ -854,16 +887,19 @@ function createLink(url, cb) {
|
|
|
854
887
|
link.onerror = null;
|
|
855
888
|
link.onload = null;
|
|
856
889
|
safeWrapper(function() {
|
|
857
|
-
|
|
890
|
+
var _info_needDeleteLink = info.needDeleteLink, needDeleteLink = _info_needDeleteLink === void 0 ? true : _info_needDeleteLink;
|
|
891
|
+
if (needDeleteLink) {
|
|
892
|
+
(link === null || link === void 0 ? void 0 : link.parentNode) && link.parentNode.removeChild(link);
|
|
893
|
+
}
|
|
858
894
|
});
|
|
859
895
|
if (prev) {
|
|
860
896
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
861
897
|
var res = prev(event);
|
|
862
|
-
cb();
|
|
898
|
+
info.cb();
|
|
863
899
|
return res;
|
|
864
900
|
}
|
|
865
901
|
}
|
|
866
|
-
cb();
|
|
902
|
+
info.cb();
|
|
867
903
|
};
|
|
868
904
|
link.onerror = onLinkComplete.bind(null, link.onerror);
|
|
869
905
|
link.onload = onLinkComplete.bind(null, link.onload);
|
|
@@ -873,10 +909,19 @@ function createLink(url, cb) {
|
|
|
873
909
|
};
|
|
874
910
|
}
|
|
875
911
|
function loadScript(url, info) {
|
|
876
|
-
var
|
|
912
|
+
var _info_attrs = info.attrs, attrs = _info_attrs === void 0 ? {} : _info_attrs, createScriptHook = info.createScriptHook;
|
|
877
913
|
return new Promise(function(resolve, _reject) {
|
|
878
|
-
var _createScript = createScript(
|
|
879
|
-
|
|
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);
|
|
880
925
|
});
|
|
881
926
|
}
|
|
882
927
|
|
package/dist/package.json
CHANGED
package/dist/src/dom.d.ts
CHANGED
|
@@ -4,11 +4,23 @@ 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
|
+
needDeleteLink?: boolean;
|
|
22
|
+
createLinkHook?: (url: string) => HTMLLinkElement | void;
|
|
23
|
+
}): {
|
|
12
24
|
link: HTMLLinkElement;
|
|
13
25
|
needAttach: boolean;
|
|
14
26
|
};
|
|
@@ -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;
|