@qiankunjs/shared 0.0.1-rc.8 → 0.0.1-rc.9
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/cjs/deferred-queue/index.d.ts +6 -0
- package/dist/cjs/deferred-queue/index.js +25 -0
- package/dist/cjs/deferred-queue/index.js.map +1 -0
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +4 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/deferred-queue/index.d.ts +6 -0
- package/dist/esm/deferred-queue/index.js +19 -0
- package/dist/esm/deferred-queue/index.js.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/script-queue/index.d.ts +0 -6
- package/dist/cjs/script-queue/index.js +0 -32
- package/dist/cjs/script-queue/index.js.map +0 -1
- package/dist/esm/script-queue/index.d.ts +0 -6
- package/dist/esm/script-queue/index.js +0 -26
- package/dist/esm/script-queue/index.js.map +0 -1
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.prepareDeferredQueue = prepareDeferredQueue;
|
|
7
|
+
var _utils = require("../utils");
|
|
8
|
+
function prepareDeferredQueue(deferredQueue) {
|
|
9
|
+
var queueLength = deferredQueue.length;
|
|
10
|
+
var prevDeferred = queueLength ? deferredQueue[deferredQueue.length - 1] : undefined;
|
|
11
|
+
var deferred = new _utils.Deferred();
|
|
12
|
+
return {
|
|
13
|
+
deferred: deferred,
|
|
14
|
+
prevDeferred: prevDeferred,
|
|
15
|
+
queue: function queue() {
|
|
16
|
+
deferredQueue.push(deferred);
|
|
17
|
+
// clear the memory regardless the script loaded or failed
|
|
18
|
+
void (0, _utils.waitUntilSettled)(deferred.promise).then(function () {
|
|
19
|
+
var scriptIndex = deferredQueue.indexOf(deferred);
|
|
20
|
+
deferredQueue.splice(scriptIndex, 1);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_utils","require","prepareDeferredQueue","deferredQueue","queueLength","length","prevDeferred","undefined","deferred","Deferred","queue","push","waitUntilSettled","promise","then","scriptIndex","indexOf","splice"],"sources":["../../../src/deferred-queue/index.ts"],"sourcesContent":["import { Deferred, waitUntilSettled } from '../utils';\n\nexport function prepareDeferredQueue(deferredQueue: Array<Deferred<void>>): {\n deferred: Deferred<void>;\n prevDeferred?: Deferred<void>;\n queue: () => void;\n} {\n const queueLength = deferredQueue.length;\n const prevDeferred = queueLength ? deferredQueue[deferredQueue.length - 1] : undefined;\n const deferred = new Deferred<void>();\n\n return {\n deferred,\n prevDeferred,\n queue: () => {\n deferredQueue.push(deferred);\n // clear the memory regardless the script loaded or failed\n void waitUntilSettled(deferred.promise).then(() => {\n const scriptIndex = deferredQueue.indexOf(deferred);\n deferredQueue.splice(scriptIndex, 1);\n });\n },\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,oBAAoBA,CAACC,aAAoC,EAIvE;EACA,IAAMC,WAAW,GAAGD,aAAa,CAACE,MAAM;EACxC,IAAMC,YAAY,GAAGF,WAAW,GAAGD,aAAa,CAACA,aAAa,CAACE,MAAM,GAAG,CAAC,CAAC,GAAGE,SAAS;EACtF,IAAMC,QAAQ,GAAG,IAAIC,eAAQ,CAAO,CAAC;EAErC,OAAO;IACLD,QAAQ,EAARA,QAAQ;IACRF,YAAY,EAAZA,YAAY;IACZI,KAAK,EAAE,SAAAA,MAAA,EAAM;MACXP,aAAa,CAACQ,IAAI,CAACH,QAAQ,CAAC;MAC5B;MACA,KAAK,IAAAI,uBAAgB,EAACJ,QAAQ,CAACK,OAAO,CAAC,CAACC,IAAI,CAAC,YAAM;QACjD,IAAMC,WAAW,GAAGZ,aAAa,CAACa,OAAO,CAACR,QAAQ,CAAC;QACnDL,aAAa,CAACc,MAAM,CAACF,WAAW,EAAE,CAAC,CAAC;MACtC,CAAC,CAAC;IACJ;EACF,CAAC;AACH"}
|
package/dist/cjs/index.d.ts
CHANGED
package/dist/cjs/index.js
CHANGED
|
@@ -69,14 +69,14 @@ Object.keys(_wrapFetchWithCache).forEach(function (key) {
|
|
|
69
69
|
}
|
|
70
70
|
});
|
|
71
71
|
});
|
|
72
|
-
var
|
|
73
|
-
Object.keys(
|
|
72
|
+
var _deferredQueue = require("./deferred-queue");
|
|
73
|
+
Object.keys(_deferredQueue).forEach(function (key) {
|
|
74
74
|
if (key === "default" || key === "__esModule") return;
|
|
75
|
-
if (key in exports && exports[key] ===
|
|
75
|
+
if (key in exports && exports[key] === _deferredQueue[key]) return;
|
|
76
76
|
Object.defineProperty(exports, key, {
|
|
77
77
|
enumerable: true,
|
|
78
78
|
get: function get() {
|
|
79
|
-
return
|
|
79
|
+
return _deferredQueue[key];
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
82
|
});
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_assetsTranspilers","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_utils","_moduleResolver","_common","_reporter","_wrapFetchWithCache","
|
|
1
|
+
{"version":3,"names":["_assetsTranspilers","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_utils","_moduleResolver","_common","_reporter","_wrapFetchWithCache","_deferredQueue"],"sources":["../../src/index.ts"],"sourcesContent":["/**\n * @author Kuitos\n * @since 2023-05-06\n */\nexport * from './assets-transpilers';\nexport * from './utils';\nexport * from './module-resolver';\nexport * from './common';\nexport * from './reporter';\nexport * from './fetch-utils/wrapFetchWithCache';\nexport * from './deferred-queue';\n"],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Deferred, waitUntilSettled } from "../utils";
|
|
2
|
+
export function prepareDeferredQueue(deferredQueue) {
|
|
3
|
+
var queueLength = deferredQueue.length;
|
|
4
|
+
var prevDeferred = queueLength ? deferredQueue[deferredQueue.length - 1] : undefined;
|
|
5
|
+
var deferred = new Deferred();
|
|
6
|
+
return {
|
|
7
|
+
deferred: deferred,
|
|
8
|
+
prevDeferred: prevDeferred,
|
|
9
|
+
queue: function queue() {
|
|
10
|
+
deferredQueue.push(deferred);
|
|
11
|
+
// clear the memory regardless the script loaded or failed
|
|
12
|
+
void waitUntilSettled(deferred.promise).then(function () {
|
|
13
|
+
var scriptIndex = deferredQueue.indexOf(deferred);
|
|
14
|
+
deferredQueue.splice(scriptIndex, 1);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Deferred","waitUntilSettled","prepareDeferredQueue","deferredQueue","queueLength","length","prevDeferred","undefined","deferred","queue","push","promise","then","scriptIndex","indexOf","splice"],"sources":["../../../src/deferred-queue/index.ts"],"sourcesContent":["import { Deferred, waitUntilSettled } from '../utils';\n\nexport function prepareDeferredQueue(deferredQueue: Array<Deferred<void>>): {\n deferred: Deferred<void>;\n prevDeferred?: Deferred<void>;\n queue: () => void;\n} {\n const queueLength = deferredQueue.length;\n const prevDeferred = queueLength ? deferredQueue[deferredQueue.length - 1] : undefined;\n const deferred = new Deferred<void>();\n\n return {\n deferred,\n prevDeferred,\n queue: () => {\n deferredQueue.push(deferred);\n // clear the memory regardless the script loaded or failed\n void waitUntilSettled(deferred.promise).then(() => {\n const scriptIndex = deferredQueue.indexOf(deferred);\n deferredQueue.splice(scriptIndex, 1);\n });\n },\n };\n}\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,gBAAgB;AAEnC,OAAO,SAASC,oBAAoBA,CAACC,aAAoC,EAIvE;EACA,IAAMC,WAAW,GAAGD,aAAa,CAACE,MAAM;EACxC,IAAMC,YAAY,GAAGF,WAAW,GAAGD,aAAa,CAACA,aAAa,CAACE,MAAM,GAAG,CAAC,CAAC,GAAGE,SAAS;EACtF,IAAMC,QAAQ,GAAG,IAAIR,QAAQ,CAAO,CAAC;EAErC,OAAO;IACLQ,QAAQ,EAARA,QAAQ;IACRF,YAAY,EAAZA,YAAY;IACZG,KAAK,EAAE,SAAAA,MAAA,EAAM;MACXN,aAAa,CAACO,IAAI,CAACF,QAAQ,CAAC;MAC5B;MACA,KAAKP,gBAAgB,CAACO,QAAQ,CAACG,OAAO,CAAC,CAACC,IAAI,CAAC,YAAM;QACjD,IAAMC,WAAW,GAAGV,aAAa,CAACW,OAAO,CAACN,QAAQ,CAAC;QACnDL,aAAa,CAACY,MAAM,CAACF,WAAW,EAAE,CAAC,CAAC;MACtC,CAAC,CAAC;IACJ;EACF,CAAC;AACH"}
|
package/dist/esm/index.d.ts
CHANGED
package/dist/esm/index.js
CHANGED
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":["/**\n * @author Kuitos\n * @since 2023-05-06\n */\nexport * from './assets-transpilers';\nexport * from './utils';\nexport * from './module-resolver';\nexport * from './common';\nexport * from './reporter';\nexport * from './fetch-utils/wrapFetchWithCache';\nexport * from './
|
|
1
|
+
{"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":["/**\n * @author Kuitos\n * @since 2023-05-06\n */\nexport * from './assets-transpilers';\nexport * from './utils';\nexport * from './module-resolver';\nexport * from './common';\nexport * from './reporter';\nexport * from './fetch-utils/wrapFetchWithCache';\nexport * from './deferred-queue';\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
|
package/package.json
CHANGED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Deferred } from '../utils';
|
|
2
|
-
export declare function prepareScriptForQueue(scriptQueue: HTMLScriptElement[], scriptDeferredWeakMap: WeakMap<HTMLScriptElement, Deferred<void>>): {
|
|
3
|
-
scriptDeferred: Deferred<void>;
|
|
4
|
-
prevScriptDeferred?: Deferred<void>;
|
|
5
|
-
queue: (script: HTMLScriptElement) => void;
|
|
6
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.prepareScriptForQueue = prepareScriptForQueue;
|
|
7
|
-
var _utils = require("../utils");
|
|
8
|
-
function prepareScriptForQueue(scriptQueue, scriptDeferredWeakMap) {
|
|
9
|
-
var queueLength = scriptQueue.length;
|
|
10
|
-
var prevScript = queueLength ? scriptQueue[scriptQueue.length - 1] : undefined;
|
|
11
|
-
var prevScriptDeferred = prevScript ? scriptDeferredWeakMap.get(prevScript) : undefined;
|
|
12
|
-
var scriptDeferred = new _utils.Deferred();
|
|
13
|
-
return {
|
|
14
|
-
scriptDeferred: scriptDeferred,
|
|
15
|
-
prevScriptDeferred: prevScriptDeferred,
|
|
16
|
-
queue: function queue(script) {
|
|
17
|
-
// the script have no src attribute, indicating that the script needs to wait for the src to be filled
|
|
18
|
-
if (!script.hasAttribute('src')) {
|
|
19
|
-
scriptQueue.push(script);
|
|
20
|
-
scriptDeferredWeakMap.set(script, scriptDeferred);
|
|
21
|
-
|
|
22
|
-
// clear the memory regardless the script loaded or failed
|
|
23
|
-
void (0, _utils.waitUntilSettled)(scriptDeferred.promise).then(function () {
|
|
24
|
-
var scriptIndex = scriptQueue.indexOf(script);
|
|
25
|
-
scriptQueue.splice(scriptIndex, 1);
|
|
26
|
-
scriptDeferredWeakMap.delete(script);
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_utils","require","prepareScriptForQueue","scriptQueue","scriptDeferredWeakMap","queueLength","length","prevScript","undefined","prevScriptDeferred","get","scriptDeferred","Deferred","queue","script","hasAttribute","push","set","waitUntilSettled","promise","then","scriptIndex","indexOf","splice","delete"],"sources":["../../../src/script-queue/index.ts"],"sourcesContent":["import { Deferred, waitUntilSettled } from '../utils';\n\nexport function prepareScriptForQueue(\n scriptQueue: HTMLScriptElement[],\n scriptDeferredWeakMap: WeakMap<HTMLScriptElement, Deferred<void>>,\n): { scriptDeferred: Deferred<void>; prevScriptDeferred?: Deferred<void>; queue: (script: HTMLScriptElement) => void } {\n const queueLength = scriptQueue.length;\n const prevScript = queueLength ? scriptQueue[scriptQueue.length - 1] : undefined;\n const prevScriptDeferred = prevScript ? scriptDeferredWeakMap.get(prevScript) : undefined;\n const scriptDeferred = new Deferred<void>();\n\n return {\n scriptDeferred,\n prevScriptDeferred,\n queue: (script: HTMLScriptElement) => {\n // the script have no src attribute, indicating that the script needs to wait for the src to be filled\n if (!script.hasAttribute('src')) {\n scriptQueue.push(script);\n scriptDeferredWeakMap.set(script, scriptDeferred);\n\n // clear the memory regardless the script loaded or failed\n void waitUntilSettled(scriptDeferred.promise).then(() => {\n const scriptIndex = scriptQueue.indexOf(script);\n scriptQueue.splice(scriptIndex, 1);\n scriptDeferredWeakMap.delete(script);\n });\n }\n },\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,qBAAqBA,CACnCC,WAAgC,EAChCC,qBAAiE,EACoD;EACrH,IAAMC,WAAW,GAAGF,WAAW,CAACG,MAAM;EACtC,IAAMC,UAAU,GAAGF,WAAW,GAAGF,WAAW,CAACA,WAAW,CAACG,MAAM,GAAG,CAAC,CAAC,GAAGE,SAAS;EAChF,IAAMC,kBAAkB,GAAGF,UAAU,GAAGH,qBAAqB,CAACM,GAAG,CAACH,UAAU,CAAC,GAAGC,SAAS;EACzF,IAAMG,cAAc,GAAG,IAAIC,eAAQ,CAAO,CAAC;EAE3C,OAAO;IACLD,cAAc,EAAdA,cAAc;IACdF,kBAAkB,EAAlBA,kBAAkB;IAClBI,KAAK,EAAE,SAAAA,MAACC,MAAyB,EAAK;MACpC;MACA,IAAI,CAACA,MAAM,CAACC,YAAY,CAAC,KAAK,CAAC,EAAE;QAC/BZ,WAAW,CAACa,IAAI,CAACF,MAAM,CAAC;QACxBV,qBAAqB,CAACa,GAAG,CAACH,MAAM,EAAEH,cAAc,CAAC;;QAEjD;QACA,KAAK,IAAAO,uBAAgB,EAACP,cAAc,CAACQ,OAAO,CAAC,CAACC,IAAI,CAAC,YAAM;UACvD,IAAMC,WAAW,GAAGlB,WAAW,CAACmB,OAAO,CAACR,MAAM,CAAC;UAC/CX,WAAW,CAACoB,MAAM,CAACF,WAAW,EAAE,CAAC,CAAC;UAClCjB,qBAAqB,CAACoB,MAAM,CAACV,MAAM,CAAC;QACtC,CAAC,CAAC;MACJ;IACF;EACF,CAAC;AACH"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Deferred } from '../utils';
|
|
2
|
-
export declare function prepareScriptForQueue(scriptQueue: HTMLScriptElement[], scriptDeferredWeakMap: WeakMap<HTMLScriptElement, Deferred<void>>): {
|
|
3
|
-
scriptDeferred: Deferred<void>;
|
|
4
|
-
prevScriptDeferred?: Deferred<void>;
|
|
5
|
-
queue: (script: HTMLScriptElement) => void;
|
|
6
|
-
};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Deferred, waitUntilSettled } from "../utils";
|
|
2
|
-
export function prepareScriptForQueue(scriptQueue, scriptDeferredWeakMap) {
|
|
3
|
-
var queueLength = scriptQueue.length;
|
|
4
|
-
var prevScript = queueLength ? scriptQueue[scriptQueue.length - 1] : undefined;
|
|
5
|
-
var prevScriptDeferred = prevScript ? scriptDeferredWeakMap.get(prevScript) : undefined;
|
|
6
|
-
var scriptDeferred = new Deferred();
|
|
7
|
-
return {
|
|
8
|
-
scriptDeferred: scriptDeferred,
|
|
9
|
-
prevScriptDeferred: prevScriptDeferred,
|
|
10
|
-
queue: function queue(script) {
|
|
11
|
-
// the script have no src attribute, indicating that the script needs to wait for the src to be filled
|
|
12
|
-
if (!script.hasAttribute('src')) {
|
|
13
|
-
scriptQueue.push(script);
|
|
14
|
-
scriptDeferredWeakMap.set(script, scriptDeferred);
|
|
15
|
-
|
|
16
|
-
// clear the memory regardless the script loaded or failed
|
|
17
|
-
void waitUntilSettled(scriptDeferred.promise).then(function () {
|
|
18
|
-
var scriptIndex = scriptQueue.indexOf(script);
|
|
19
|
-
scriptQueue.splice(scriptIndex, 1);
|
|
20
|
-
scriptDeferredWeakMap.delete(script);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["Deferred","waitUntilSettled","prepareScriptForQueue","scriptQueue","scriptDeferredWeakMap","queueLength","length","prevScript","undefined","prevScriptDeferred","get","scriptDeferred","queue","script","hasAttribute","push","set","promise","then","scriptIndex","indexOf","splice","delete"],"sources":["../../../src/script-queue/index.ts"],"sourcesContent":["import { Deferred, waitUntilSettled } from '../utils';\n\nexport function prepareScriptForQueue(\n scriptQueue: HTMLScriptElement[],\n scriptDeferredWeakMap: WeakMap<HTMLScriptElement, Deferred<void>>,\n): { scriptDeferred: Deferred<void>; prevScriptDeferred?: Deferred<void>; queue: (script: HTMLScriptElement) => void } {\n const queueLength = scriptQueue.length;\n const prevScript = queueLength ? scriptQueue[scriptQueue.length - 1] : undefined;\n const prevScriptDeferred = prevScript ? scriptDeferredWeakMap.get(prevScript) : undefined;\n const scriptDeferred = new Deferred<void>();\n\n return {\n scriptDeferred,\n prevScriptDeferred,\n queue: (script: HTMLScriptElement) => {\n // the script have no src attribute, indicating that the script needs to wait for the src to be filled\n if (!script.hasAttribute('src')) {\n scriptQueue.push(script);\n scriptDeferredWeakMap.set(script, scriptDeferred);\n\n // clear the memory regardless the script loaded or failed\n void waitUntilSettled(scriptDeferred.promise).then(() => {\n const scriptIndex = scriptQueue.indexOf(script);\n scriptQueue.splice(scriptIndex, 1);\n scriptDeferredWeakMap.delete(script);\n });\n }\n },\n };\n}\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,gBAAgB;AAEnC,OAAO,SAASC,qBAAqBA,CACnCC,WAAgC,EAChCC,qBAAiE,EACoD;EACrH,IAAMC,WAAW,GAAGF,WAAW,CAACG,MAAM;EACtC,IAAMC,UAAU,GAAGF,WAAW,GAAGF,WAAW,CAACA,WAAW,CAACG,MAAM,GAAG,CAAC,CAAC,GAAGE,SAAS;EAChF,IAAMC,kBAAkB,GAAGF,UAAU,GAAGH,qBAAqB,CAACM,GAAG,CAACH,UAAU,CAAC,GAAGC,SAAS;EACzF,IAAMG,cAAc,GAAG,IAAIX,QAAQ,CAAO,CAAC;EAE3C,OAAO;IACLW,cAAc,EAAdA,cAAc;IACdF,kBAAkB,EAAlBA,kBAAkB;IAClBG,KAAK,EAAE,SAAAA,MAACC,MAAyB,EAAK;MACpC;MACA,IAAI,CAACA,MAAM,CAACC,YAAY,CAAC,KAAK,CAAC,EAAE;QAC/BX,WAAW,CAACY,IAAI,CAACF,MAAM,CAAC;QACxBT,qBAAqB,CAACY,GAAG,CAACH,MAAM,EAAEF,cAAc,CAAC;;QAEjD;QACA,KAAKV,gBAAgB,CAACU,cAAc,CAACM,OAAO,CAAC,CAACC,IAAI,CAAC,YAAM;UACvD,IAAMC,WAAW,GAAGhB,WAAW,CAACiB,OAAO,CAACP,MAAM,CAAC;UAC/CV,WAAW,CAACkB,MAAM,CAACF,WAAW,EAAE,CAAC,CAAC;UAClCf,qBAAqB,CAACkB,MAAM,CAACT,MAAM,CAAC;QACtC,CAAC,CAAC;MACJ;IACF;EACF,CAAC;AACH"}
|