@rspack/core 0.0.0-1bce45e7c0-20221109113710
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 +1 -0
- package/dist/compilation.d.ts +64 -0
- package/dist/compilation.d.ts.map +1 -0
- package/dist/compilation.js +148 -0
- package/dist/compilation.js.map +1 -0
- package/dist/compiler.d.ts +52 -0
- package/dist/compiler.d.ts.map +1 -0
- package/dist/compiler.js +397 -0
- package/dist/compiler.js.map +1 -0
- package/dist/config/RspackOptions.d.ts +36 -0
- package/dist/config/RspackOptions.d.ts.map +1 -0
- package/dist/config/RspackOptions.js +3 -0
- package/dist/config/RspackOptions.js.map +1 -0
- package/dist/config/browserslistTargetHandler.d.ts +20 -0
- package/dist/config/browserslistTargetHandler.d.ts.map +1 -0
- package/dist/config/browserslistTargetHandler.js +320 -0
- package/dist/config/browserslistTargetHandler.js.map +1 -0
- package/dist/config/builtins.d.ts +14 -0
- package/dist/config/builtins.d.ts.map +1 -0
- package/dist/config/builtins.js +35 -0
- package/dist/config/builtins.js.map +1 -0
- package/dist/config/context.d.ts +3 -0
- package/dist/config/context.d.ts.map +1 -0
- package/dist/config/context.js +3 -0
- package/dist/config/context.js.map +1 -0
- package/dist/config/defaults.d.ts +4 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +57 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/devServer.d.ts +21 -0
- package/dist/config/devServer.d.ts.map +1 -0
- package/dist/config/devServer.js +3 -0
- package/dist/config/devServer.js.map +1 -0
- package/dist/config/devtool.d.ts +5 -0
- package/dist/config/devtool.d.ts.map +1 -0
- package/dist/config/devtool.js +13 -0
- package/dist/config/devtool.js.map +1 -0
- package/dist/config/entry.d.ts +8 -0
- package/dist/config/entry.d.ts.map +1 -0
- package/dist/config/entry.js +39 -0
- package/dist/config/entry.js.map +1 -0
- package/dist/config/external.d.ts +5 -0
- package/dist/config/external.d.ts.map +1 -0
- package/dist/config/external.js +3 -0
- package/dist/config/external.js.map +1 -0
- package/dist/config/index.d.ts +56 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +55 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/mode.d.ts +3 -0
- package/dist/config/mode.d.ts.map +1 -0
- package/dist/config/mode.js +3 -0
- package/dist/config/mode.js.map +1 -0
- package/dist/config/module.d.ts +79 -0
- package/dist/config/module.d.ts.map +1 -0
- package/dist/config/module.js +120 -0
- package/dist/config/module.js.map +1 -0
- package/dist/config/output.d.ts +23 -0
- package/dist/config/output.d.ts.map +1 -0
- package/dist/config/output.js +10 -0
- package/dist/config/output.js.map +1 -0
- package/dist/config/plugin.d.ts +6 -0
- package/dist/config/plugin.d.ts.map +1 -0
- package/dist/config/plugin.js +3 -0
- package/dist/config/plugin.js.map +1 -0
- package/dist/config/resolve.d.ts +22 -0
- package/dist/config/resolve.d.ts.map +1 -0
- package/dist/config/resolve.js +33 -0
- package/dist/config/resolve.js.map +1 -0
- package/dist/config/stats.d.ts +10 -0
- package/dist/config/stats.d.ts.map +1 -0
- package/dist/config/stats.js +16 -0
- package/dist/config/stats.js.map +1 -0
- package/dist/config/target.d.ts +7 -0
- package/dist/config/target.d.ts.map +1 -0
- package/dist/config/target.js +21 -0
- package/dist/config/target.js.map +1 -0
- package/dist/config/watch.d.ts +8 -0
- package/dist/config/watch.d.ts.map +1 -0
- package/dist/config/watch.js +16 -0
- package/dist/config/watch.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/logging/Logger.d.ts +43 -0
- package/dist/logging/Logger.d.ts.map +1 -0
- package/dist/logging/Logger.js +136 -0
- package/dist/logging/Logger.js.map +1 -0
- package/dist/logging/createConsoleLogger.d.ts +7 -0
- package/dist/logging/createConsoleLogger.d.ts.map +1 -0
- package/dist/logging/createConsoleLogger.js +227 -0
- package/dist/logging/createConsoleLogger.js.map +1 -0
- package/dist/logging/runtime.d.ts +14 -0
- package/dist/logging/runtime.d.ts.map +1 -0
- package/dist/logging/runtime.js +42 -0
- package/dist/logging/runtime.js.map +1 -0
- package/dist/logging/truncateArgs.d.ts +8 -0
- package/dist/logging/truncateArgs.d.ts.map +1 -0
- package/dist/logging/truncateArgs.js +81 -0
- package/dist/logging/truncateArgs.js.map +1 -0
- package/dist/node/NodeTargetPlugin.d.ts +5 -0
- package/dist/node/NodeTargetPlugin.d.ts.map +1 -0
- package/dist/node/NodeTargetPlugin.js +70 -0
- package/dist/node/NodeTargetPlugin.js.map +1 -0
- package/dist/node/nodeConsole.d.ts +22 -0
- package/dist/node/nodeConsole.d.ts.map +1 -0
- package/dist/node/nodeConsole.js +121 -0
- package/dist/node/nodeConsole.js.map +1 -0
- package/dist/rspack.d.ts +8 -0
- package/dist/rspack.d.ts.map +1 -0
- package/dist/rspack.js +59 -0
- package/dist/rspack.js.map +1 -0
- package/dist/rspackOptionsApply.d.ts +6 -0
- package/dist/rspackOptionsApply.d.ts.map +1 -0
- package/dist/rspackOptionsApply.js +25 -0
- package/dist/rspackOptionsApply.js.map +1 -0
- package/dist/stats.d.ts +11 -0
- package/dist/stats.d.ts.map +1 -0
- package/dist/stats.js +773 -0
- package/dist/stats.js.map +1 -0
- package/dist/utils/createHash.d.ts +7 -0
- package/dist/utils/createHash.d.ts.map +1 -0
- package/dist/utils/createHash.js +166 -0
- package/dist/utils/createHash.js.map +1 -0
- package/dist/utils/createSource.d.ts +6 -0
- package/dist/utils/createSource.d.ts.map +1 -0
- package/dist/utils/createSource.js +48 -0
- package/dist/utils/createSource.js.map +1 -0
- package/dist/utils/hash/BatchedHash.d.ts +16 -0
- package/dist/utils/hash/BatchedHash.d.ts.map +1 -0
- package/dist/utils/hash/BatchedHash.js +61 -0
- package/dist/utils/hash/BatchedHash.js.map +1 -0
- package/dist/utils/hash/index.d.ts +19 -0
- package/dist/utils/hash/index.d.ts.map +1 -0
- package/dist/utils/hash/index.js +28 -0
- package/dist/utils/hash/index.js.map +1 -0
- package/dist/utils/hash/md4.d.ts +3 -0
- package/dist/utils/hash/md4.d.ts.map +1 -0
- package/dist/utils/hash/md4.js +13 -0
- package/dist/utils/hash/md4.js.map +1 -0
- package/dist/utils/hash/wasm-hash.d.ts +7 -0
- package/dist/utils/hash/wasm-hash.d.ts.map +1 -0
- package/dist/utils/hash/wasm-hash.js +162 -0
- package/dist/utils/hash/wasm-hash.js.map +1 -0
- package/dist/utils/hash/xxhash64.d.ts +3 -0
- package/dist/utils/hash/xxhash64.d.ts.map +1 -0
- package/dist/utils/hash/xxhash64.js +13 -0
- package/dist/utils/hash/xxhash64.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +8 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/memoize.d.ts +2 -0
- package/dist/utils/memoize.d.ts.map +1 -0
- package/dist/utils/memoize.js +22 -0
- package/dist/utils/memoize.js.map +1 -0
- package/dist/web/polyfillBuiltins.d.ts +5 -0
- package/dist/web/polyfillBuiltins.d.ts.map +1 -0
- package/dist/web/polyfillBuiltins.js +43 -0
- package/dist/web/polyfillBuiltins.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/*
|
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
|
3
|
+
Author Tobias Koppers @sokra
|
|
4
|
+
*/
|
|
5
|
+
"use strict";
|
|
6
|
+
// 65536 is the size of a wasm memory page
|
|
7
|
+
// 64 is the maximum chunk size for every possible wasm hash implementation
|
|
8
|
+
// 4 is the maximum number of bytes per char for string encoding (max is utf-8)
|
|
9
|
+
// ~3 makes sure that it's always a block of 4 chars, so avoid partially encoded bytes for base64
|
|
10
|
+
const MAX_SHORT_STRING = Math.floor((65536 - 64) / 4) & ~3;
|
|
11
|
+
class WasmHash {
|
|
12
|
+
/**
|
|
13
|
+
* @param {WebAssembly.Instance} instance wasm instance
|
|
14
|
+
* @param {WebAssembly.Instance[]} instancesPool pool of instances
|
|
15
|
+
* @param {number} chunkSize size of data chunks passed to wasm
|
|
16
|
+
* @param {number} digestSize size of digest returned by wasm
|
|
17
|
+
*/
|
|
18
|
+
constructor(instance, instancesPool, chunkSize, digestSize) {
|
|
19
|
+
const exports = /** @type {any} */ (instance.exports);
|
|
20
|
+
exports.init();
|
|
21
|
+
this.exports = exports;
|
|
22
|
+
this.mem = Buffer.from(exports.memory.buffer, 0, 65536);
|
|
23
|
+
this.buffered = 0;
|
|
24
|
+
this.instancesPool = instancesPool;
|
|
25
|
+
this.chunkSize = chunkSize;
|
|
26
|
+
this.digestSize = digestSize;
|
|
27
|
+
}
|
|
28
|
+
reset() {
|
|
29
|
+
this.buffered = 0;
|
|
30
|
+
this.exports.init();
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @param {Buffer | string} data data
|
|
34
|
+
* @param {BufferEncoding=} encoding encoding
|
|
35
|
+
* @returns {this} itself
|
|
36
|
+
*/
|
|
37
|
+
update(data, encoding) {
|
|
38
|
+
if (typeof data === "string") {
|
|
39
|
+
while (data.length > MAX_SHORT_STRING) {
|
|
40
|
+
this._updateWithShortString(data.slice(0, MAX_SHORT_STRING), encoding);
|
|
41
|
+
data = data.slice(MAX_SHORT_STRING);
|
|
42
|
+
}
|
|
43
|
+
this._updateWithShortString(data, encoding);
|
|
44
|
+
return this;
|
|
45
|
+
}
|
|
46
|
+
this._updateWithBuffer(data);
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* @param {string} data data
|
|
51
|
+
* @param {BufferEncoding=} encoding encoding
|
|
52
|
+
* @returns {void}
|
|
53
|
+
*/
|
|
54
|
+
_updateWithShortString(data, encoding) {
|
|
55
|
+
const { exports, buffered, mem, chunkSize } = this;
|
|
56
|
+
let endPos;
|
|
57
|
+
if (data.length < 70) {
|
|
58
|
+
if (!encoding || encoding === "utf-8" || encoding === "utf8") {
|
|
59
|
+
endPos = buffered;
|
|
60
|
+
for (let i = 0; i < data.length; i++) {
|
|
61
|
+
const cc = data.charCodeAt(i);
|
|
62
|
+
if (cc < 0x80)
|
|
63
|
+
mem[endPos++] = cc;
|
|
64
|
+
else if (cc < 0x800) {
|
|
65
|
+
mem[endPos] = (cc >> 6) | 0xc0;
|
|
66
|
+
mem[endPos + 1] = (cc & 0x3f) | 0x80;
|
|
67
|
+
endPos += 2;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
// bail-out for weird chars
|
|
71
|
+
endPos += mem.write(data.slice(i), endPos, encoding);
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
else if (encoding === "latin1") {
|
|
77
|
+
endPos = buffered;
|
|
78
|
+
for (let i = 0; i < data.length; i++) {
|
|
79
|
+
const cc = data.charCodeAt(i);
|
|
80
|
+
mem[endPos++] = cc;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
endPos = buffered + mem.write(data, buffered, encoding);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
endPos = buffered + mem.write(data, buffered, encoding);
|
|
89
|
+
}
|
|
90
|
+
if (endPos < chunkSize) {
|
|
91
|
+
this.buffered = endPos;
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
const l = endPos & ~(this.chunkSize - 1);
|
|
95
|
+
exports.update(l);
|
|
96
|
+
const newBuffered = endPos - l;
|
|
97
|
+
this.buffered = newBuffered;
|
|
98
|
+
if (newBuffered > 0)
|
|
99
|
+
mem.copyWithin(0, l, endPos);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* @param {Buffer} data data
|
|
104
|
+
* @returns {void}
|
|
105
|
+
*/
|
|
106
|
+
_updateWithBuffer(data) {
|
|
107
|
+
const { exports, buffered, mem } = this;
|
|
108
|
+
const length = data.length;
|
|
109
|
+
if (buffered + length < this.chunkSize) {
|
|
110
|
+
data.copy(mem, buffered, 0, length);
|
|
111
|
+
this.buffered += length;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
const l = (buffered + length) & ~(this.chunkSize - 1);
|
|
115
|
+
if (l > 65536) {
|
|
116
|
+
let i = 65536 - buffered;
|
|
117
|
+
data.copy(mem, buffered, 0, i);
|
|
118
|
+
exports.update(65536);
|
|
119
|
+
const stop = l - buffered - 65536;
|
|
120
|
+
while (i < stop) {
|
|
121
|
+
data.copy(mem, 0, i, i + 65536);
|
|
122
|
+
exports.update(65536);
|
|
123
|
+
i += 65536;
|
|
124
|
+
}
|
|
125
|
+
data.copy(mem, 0, i, l - buffered);
|
|
126
|
+
exports.update(l - buffered - i);
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
data.copy(mem, buffered, 0, l - buffered);
|
|
130
|
+
exports.update(l);
|
|
131
|
+
}
|
|
132
|
+
const newBuffered = length + buffered - l;
|
|
133
|
+
this.buffered = newBuffered;
|
|
134
|
+
if (newBuffered > 0)
|
|
135
|
+
data.copy(mem, 0, length - newBuffered, length);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
digest(type) {
|
|
139
|
+
const { exports, buffered, mem, digestSize } = this;
|
|
140
|
+
exports.final(buffered);
|
|
141
|
+
this.instancesPool.push(this);
|
|
142
|
+
const hex = mem.toString("latin1", 0, digestSize);
|
|
143
|
+
if (type === "hex")
|
|
144
|
+
return hex;
|
|
145
|
+
if (type === "binary" || !type)
|
|
146
|
+
return Buffer.from(hex, "hex");
|
|
147
|
+
return Buffer.from(hex, "hex").toString(type);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
const create = (wasmModule, instancesPool, chunkSize, digestSize) => {
|
|
151
|
+
if (instancesPool.length > 0) {
|
|
152
|
+
const old = instancesPool.pop();
|
|
153
|
+
old.reset();
|
|
154
|
+
return old;
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
return new WasmHash(new WebAssembly.Instance(wasmModule), instancesPool, chunkSize, digestSize);
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
module.exports = create;
|
|
161
|
+
module.exports.MAX_SHORT_STRING = MAX_SHORT_STRING;
|
|
162
|
+
//# sourceMappingURL=wasm-hash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm-hash.js","sourceRoot":"","sources":["../../../src/utils/hash/wasm-hash.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxhash64.d.ts","sourceRoot":"","sources":["../../../src/utils/hash/xxhash64.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/*
|
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
|
3
|
+
Author Tobias Koppers @sokra
|
|
4
|
+
*/
|
|
5
|
+
"use strict";
|
|
6
|
+
const create = require("./wasm-hash");
|
|
7
|
+
//#region wasm code: xxhash64 (../../../assembly/hash/xxhash64.asm.ts) --initialMemory 1
|
|
8
|
+
const xxhash64 = new WebAssembly.Module(Buffer.from(
|
|
9
|
+
// 1170 bytes
|
|
10
|
+
"AGFzbQEAAAABCAJgAX8AYAAAAwQDAQAABQMBAAEGGgV+AUIAC34BQgALfgFCAAt+AUIAC34BQgALByIEBGluaXQAAAZ1cGRhdGUAAQVmaW5hbAACBm1lbW9yeQIACrIIAzAAQtbrgu7q/Yn14AAkAELP1tO+0ser2UIkAUIAJAJC+erQ0OfJoeThACQDQgAkBAvUAQIBfwR+IABFBEAPCyMEIACtfCQEIwAhAiMBIQMjAiEEIwMhBQNAIAIgASkDAELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiECIAMgASkDCELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEDIAQgASkDEELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEEIAUgASkDGELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEFIAAgAUEgaiIBSw0ACyACJAAgAyQBIAQkAiAFJAMLqAYCAX8EfiMEQgBSBH4jACICQgGJIwEiA0IHiXwjAiIEQgyJfCMDIgVCEol8IAJCz9bTvtLHq9lCfkIfiUKHla+vmLbem55/foVCh5Wvr5i23puef35CnaO16oOxjYr6AH0gA0LP1tO+0ser2UJ+Qh+JQoeVr6+Ytt6bnn9+hUKHla+vmLbem55/fkKdo7Xqg7GNivoAfSAEQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef36FQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IAVCz9bTvtLHq9lCfkIfiUKHla+vmLbem55/foVCh5Wvr5i23puef35CnaO16oOxjYr6AH0FQsXP2bLx5brqJwsjBCAArXx8IQIDQCABQQhqIABNBEAgAiABKQMAQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef36FQhuJQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IQIgAUEIaiEBDAELCyABQQRqIABNBEAgAiABNQIAQoeVr6+Ytt6bnn9+hUIXiULP1tO+0ser2UJ+Qvnz3fGZ9pmrFnwhAiABQQRqIQELA0AgACABRwRAIAIgATEAAELFz9my8eW66id+hUILiUKHla+vmLbem55/fiECIAFBAWohAQwBCwtBACACIAJCIYiFQs/W077Sx6vZQn4iAkIdiCAChUL5893xmfaZqxZ+IgJCIIggAoUiAkIgiCIDQv//A4NCIIYgA0KAgPz/D4NCEIiEIgNC/4GAgPAfg0IQhiADQoD+g4CA4D+DQgiIhCIDQo+AvIDwgcAHg0IIhiADQvCBwIeAnoD4AINCBIiEIgNChoyYsODAgYMGfEIEiEKBgoSIkKDAgAGDQid+IANCsODAgYOGjJgwhHw3AwBBCCACQv////8PgyICQv//A4NCIIYgAkKAgPz/D4NCEIiEIgJC/4GAgPAfg0IQhiACQoD+g4CA4D+DQgiIhCICQo+AvIDwgcAHg0IIhiACQvCBwIeAnoD4AINCBIiEIgJChoyYsODAgYMGfEIEiEKBgoSIkKDAgAGDQid+IAJCsODAgYOGjJgwhHw3AwAL", "base64"));
|
|
11
|
+
//#endregion
|
|
12
|
+
module.exports = create.bind(null, xxhash64, [], 32, 16);
|
|
13
|
+
//# sourceMappingURL=xxhash64.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxhash64.js","sourceRoot":"","sources":["../../../src/utils/hash/xxhash64.js"],"names":[],"mappings":"AAAA;;;EAGE;AAEF,YAAY,CAAC;AAEb,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEtC,wFAAwF;AACxF,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,MAAM,CACtC,MAAM,CAAC,IAAI;AACV,aAAa;AACb,0hDAA0hD,EAC1hD,QAAQ,CACR,CACD,CAAC;AACF,YAAY;AAEZ,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,CACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM;;EAK3B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mapValues = void 0;
|
|
4
|
+
function mapValues(record, fn) {
|
|
5
|
+
return Object.fromEntries(Object.entries(record).map(([key, value]) => [key, fn(value)]));
|
|
6
|
+
}
|
|
7
|
+
exports.mapValues = mapValues;
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CACxB,MAA8B,EAC9B,EAA2B;IAE3B,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAC9D,CAAC;AACH,CAAC;AAPD,8BAOC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memoize.d.ts","sourceRoot":"","sources":["../../src/utils/memoize.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,6BAenB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.memoize = void 0;
|
|
4
|
+
const memoize = (fn) => {
|
|
5
|
+
let cache = false;
|
|
6
|
+
let result = undefined;
|
|
7
|
+
return () => {
|
|
8
|
+
if (cache) {
|
|
9
|
+
return result;
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
result = fn();
|
|
13
|
+
cache = true;
|
|
14
|
+
// Allow to clean up memory for fn
|
|
15
|
+
// and all dependent resources
|
|
16
|
+
fn = undefined;
|
|
17
|
+
return result;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
exports.memoize = memoize;
|
|
22
|
+
//# sourceMappingURL=memoize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memoize.js","sourceRoot":"","sources":["../../src/utils/memoize.ts"],"names":[],"mappings":";;;AAAO,MAAM,OAAO,GAAG,CAAI,EAAW,EAAa,EAAE;IACpD,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,MAAM,GAAG,SAAS,CAAC;IACvB,OAAO,GAAG,EAAE;QACX,IAAI,KAAK,EAAE;YACV,OAAO,MAAM,CAAC;SACd;aAAM;YACN,MAAM,GAAG,EAAE,EAAE,CAAC;YACd,KAAK,GAAG,IAAI,CAAC;YACb,kCAAkC;YAClC,8BAA8B;YAC9B,EAAE,GAAG,SAAS,CAAC;YACf,OAAO,MAAM,CAAC;SACd;IACF,CAAC,CAAC;AACH,CAAC,CAAC;AAfW,QAAA,OAAO,WAelB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polyfillBuiltins.d.ts","sourceRoot":"","sources":["../../src/web/polyfillBuiltins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA+BvC,qBAAa,sBAAsB;IAClC,KAAK,CAAC,QAAQ,EAAE,QAAQ;CAMxB"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PolyfillBuiltinsPlugin = void 0;
|
|
4
|
+
const PolyfilledBuiltinModules = {
|
|
5
|
+
assert: "assert/",
|
|
6
|
+
buffer: "buffer/",
|
|
7
|
+
console: "console-browserify",
|
|
8
|
+
constants: "constants-browserify",
|
|
9
|
+
crypto: "crypto-browserify",
|
|
10
|
+
domain: "domain-browser",
|
|
11
|
+
events: "events/",
|
|
12
|
+
http: "stream-http",
|
|
13
|
+
https: "https-browserify",
|
|
14
|
+
os: "os-browserify/browser",
|
|
15
|
+
path: "path-browserify",
|
|
16
|
+
punycode: "punycode/",
|
|
17
|
+
process: "process/browser",
|
|
18
|
+
querystring: "querystring-es3",
|
|
19
|
+
stream: "stream-browserify",
|
|
20
|
+
_stream_duplex: "readable-stream/duplex",
|
|
21
|
+
_stream_passthrough: "readable-stream/passthrough",
|
|
22
|
+
_stream_readable: "readable-stream/readable",
|
|
23
|
+
_stream_transform: "readable-stream/transform",
|
|
24
|
+
_stream_writable: "readable-stream/writable",
|
|
25
|
+
string_decoder: "string_decoder/",
|
|
26
|
+
sys: "util/",
|
|
27
|
+
timers: "timers-browserify",
|
|
28
|
+
tty: "tty-browserify",
|
|
29
|
+
url: "url/",
|
|
30
|
+
util: "util/",
|
|
31
|
+
vm: "vm-browserify",
|
|
32
|
+
zlib: "browserify-zlib"
|
|
33
|
+
};
|
|
34
|
+
class PolyfillBuiltinsPlugin {
|
|
35
|
+
apply(compiler) {
|
|
36
|
+
compiler.options.resolve.alias = {
|
|
37
|
+
...PolyfilledBuiltinModules,
|
|
38
|
+
...compiler.options.resolve.alias
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.PolyfillBuiltinsPlugin = PolyfillBuiltinsPlugin;
|
|
43
|
+
//# sourceMappingURL=polyfillBuiltins.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polyfillBuiltins.js","sourceRoot":"","sources":["../../src/web/polyfillBuiltins.ts"],"names":[],"mappings":";;;AACA,MAAM,wBAAwB,GAAG;IAChC,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,oBAAoB;IAC7B,SAAS,EAAE,sBAAsB;IACjC,MAAM,EAAE,mBAAmB;IAC3B,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,kBAAkB;IACzB,EAAE,EAAE,uBAAuB;IAC3B,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,WAAW;IACrB,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,iBAAiB;IAC9B,MAAM,EAAE,mBAAmB;IAC3B,cAAc,EAAE,wBAAwB;IACxC,mBAAmB,EAAE,6BAA6B;IAClD,gBAAgB,EAAE,0BAA0B;IAC5C,iBAAiB,EAAE,2BAA2B;IAC9C,gBAAgB,EAAE,0BAA0B;IAC5C,cAAc,EAAE,iBAAiB;IACjC,GAAG,EAAE,OAAO;IACZ,MAAM,EAAE,mBAAmB;IAC3B,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,OAAO;IACb,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,iBAAiB;CACvB,CAAC;AACF,MAAa,sBAAsB;IAClC,KAAK,CAAC,QAAkB;QACvB,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG;YAChC,GAAG,wBAAwB;YAC3B,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK;SACjC,CAAC;IACH,CAAC;CACD;AAPD,wDAOC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@rspack/core",
|
|
3
|
+
"version": "0.0.0-1bce45e7c0-20221109113710",
|
|
4
|
+
"main": "./dist/index.js",
|
|
5
|
+
"types": "./dist/index.d.ts",
|
|
6
|
+
"files": [
|
|
7
|
+
"dist"
|
|
8
|
+
],
|
|
9
|
+
"devDependencies": {
|
|
10
|
+
"@rspack/core": "0.0.0-1bce45e7c0-20221109113710",
|
|
11
|
+
"@swc/helpers": "^0.4.12",
|
|
12
|
+
"@types/jest": "29.0.2",
|
|
13
|
+
"@types/node": "^18.6.3",
|
|
14
|
+
"@types/sinon": "10.0.13",
|
|
15
|
+
"@types/webpack-sources": "3.2.0",
|
|
16
|
+
"@types/ws": "8.5.3",
|
|
17
|
+
"jest-serializer-path": "^0.1.15",
|
|
18
|
+
"sinon": "14.0.0",
|
|
19
|
+
"source-map": "^0.7.4",
|
|
20
|
+
"ts-node": "10.9.1",
|
|
21
|
+
"tsm": "^2.2.2",
|
|
22
|
+
"typescript": "4.7.3",
|
|
23
|
+
"uvu": "0.5.6",
|
|
24
|
+
"util": "0.12.5"
|
|
25
|
+
},
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"@rspack/binding": "0.0.0-1bce45e7c0-20221109113710",
|
|
28
|
+
"@rspack/dev-client": "0.0.0-1bce45e7c0-20221109113710",
|
|
29
|
+
"@rspack/plugin-less": "^0.0.0-1bce45e7c0-20221109113710",
|
|
30
|
+
"@rspack/plugin-postcss": "^0.0.0-1bce45e7c0-20221109113710",
|
|
31
|
+
"browserslist": "^4.21.3",
|
|
32
|
+
"chokidar": "3.5.3",
|
|
33
|
+
"tapable": "2.2.1",
|
|
34
|
+
"webpack-sources": "3.2.3",
|
|
35
|
+
"graceful-fs": "4.2.10",
|
|
36
|
+
"neo-async": "2.6.2",
|
|
37
|
+
"react-refresh": "0.14.0"
|
|
38
|
+
},
|
|
39
|
+
"optionalDependencies": {
|
|
40
|
+
"@tmp-sass-embedded/darwin-arm64": "1.54.4",
|
|
41
|
+
"@tmp-sass-embedded/darwin-x64": "1.54.4",
|
|
42
|
+
"@tmp-sass-embedded/linux-arm64": "1.54.4",
|
|
43
|
+
"@tmp-sass-embedded/linux-ia32": "1.54.4",
|
|
44
|
+
"@tmp-sass-embedded/linux-x64": "1.54.4",
|
|
45
|
+
"@tmp-sass-embedded/win32-ia32": "1.54.4",
|
|
46
|
+
"@tmp-sass-embedded/win32-x64": "1.54.4"
|
|
47
|
+
},
|
|
48
|
+
"scripts": {
|
|
49
|
+
"build": "tsc",
|
|
50
|
+
"dev": "tsc -w",
|
|
51
|
+
"example": "node -r ts-node/register ./example/basic.ts",
|
|
52
|
+
"test": "jest --verbose"
|
|
53
|
+
}
|
|
54
|
+
}
|