@rstest/core 0.7.1 → 0.7.2
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/LICENSE.md +1 -1
- package/dist/0~122.js +9 -3
- package/dist/0~151.js +303 -264
- package/dist/0~583.js +1 -1
- package/dist/0~588.js +1 -1
- package/dist/0~62.js +1 -1
- package/dist/0~634.js +3 -3
- package/dist/0~809.js +1 -1
- package/dist/0~835.js +1 -1
- package/dist/0~919.js +65 -33
- package/dist/0~923.js +1 -1
- package/dist/{155.js → 131.js} +12 -12
- package/dist/404.js +210 -0
- package/dist/{362.js → 554.js} +68 -49
- package/dist/734.js +1 -1
- package/dist/946.js +40 -30
- package/dist/index.d.ts +49 -17
- package/dist/index.js +1 -1
- package/dist/worker.d.ts +52 -23
- package/dist/worker.js +1 -1
- package/package.json +7 -6
- package/dist/770.js +0 -167
- /package/dist/{0~454.js → 0~907.js} +0 -0
- /package/dist/{362.js.LICENSE.txt → 554.js.LICENSE.txt} +0 -0
package/dist/0~583.js
CHANGED
|
@@ -5,7 +5,7 @@ import { __webpack_require__ } from "./rslib-runtime.js";
|
|
|
5
5
|
import { lstat, open as promises_open, readdir, realpath as promises_realpath, stat as promises_stat } from "fs/promises";
|
|
6
6
|
import { Readable } from "node:stream";
|
|
7
7
|
import { readdir as promises_readdir, lstat as promises_lstat, promises_stat as promises_promises_stat, realpath as external_node_fs_promises_realpath } from "./946.js";
|
|
8
|
-
import { EventEmitter } from "./
|
|
8
|
+
import { EventEmitter } from "./131.js";
|
|
9
9
|
const external_node_path_ = __webpack_require__("node:path");
|
|
10
10
|
const EntryTypes = {
|
|
11
11
|
FILE_TYPE: 'files',
|
package/dist/0~588.js
CHANGED
|
@@ -2,7 +2,7 @@ import 'module';
|
|
|
2
2
|
/*#__PURE__*/ import.meta.url;
|
|
3
3
|
import { __webpack_require__ } from "./rslib-runtime.js";
|
|
4
4
|
import { src_logger, isTTY } from "./946.js";
|
|
5
|
-
import { runRest } from "./
|
|
5
|
+
import { runRest } from "./131.js";
|
|
6
6
|
const GLOB_REGEX = /[*?{}[\]()!@+|]/;
|
|
7
7
|
const isGlob = (str)=>GLOB_REGEX.test(str);
|
|
8
8
|
async function createChokidar(pathOrGlobs, root, options) {
|
package/dist/0~62.js
CHANGED
package/dist/0~634.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import 'module';
|
|
2
2
|
/*#__PURE__*/ import.meta.url;
|
|
3
3
|
import { __webpack_require__ } from "./rslib-runtime.js";
|
|
4
|
-
import { getTestEntries, getSetupFiles, getTaskNameWithPrefix, prettyTestPath, src_logger } from "./946.js";
|
|
4
|
+
import { getTestEntries, getSetupFiles, getTaskNameWithPrefix, prettyTestPath, bgColor, src_logger } from "./946.js";
|
|
5
5
|
import { prepareRsbuild, createPool, createRsbuildServer } from "./0~122.js";
|
|
6
6
|
const external_node_fs_ = __webpack_require__("node:fs");
|
|
7
7
|
const external_node_path_ = __webpack_require__("node:path");
|
|
@@ -122,14 +122,14 @@ async function listTests(context, { filesOnly, json }) {
|
|
|
122
122
|
const hasError = list.some((file)=>file.errors?.length);
|
|
123
123
|
const showProject = context.projects.length > 1;
|
|
124
124
|
if (hasError) {
|
|
125
|
-
const { printError } = await import("./
|
|
125
|
+
const { printError } = await import("./131.js").then((mod)=>({
|
|
126
126
|
printError: mod.error_printError
|
|
127
127
|
}));
|
|
128
128
|
process.exitCode = 1;
|
|
129
129
|
for (const file of list){
|
|
130
130
|
const relativePath = (0, external_node_path_.relative)(rootPath, file.testPath);
|
|
131
131
|
if (file.errors?.length) {
|
|
132
|
-
src_logger.log(`${
|
|
132
|
+
src_logger.log(`${bgColor('bgRed', ' FAIL ')} ${relativePath}`);
|
|
133
133
|
for (const error of file.errors)await printError(error, async (name)=>{
|
|
134
134
|
const sourceMap = await getSourceMap(name);
|
|
135
135
|
return sourceMap ? JSON.parse(sourceMap) : null;
|
package/dist/0~809.js
CHANGED
package/dist/0~835.js
CHANGED
|
@@ -2,7 +2,7 @@ import 'module';
|
|
|
2
2
|
/*#__PURE__*/ import.meta.url;
|
|
3
3
|
import { __webpack_require__ } from "./rslib-runtime.js";
|
|
4
4
|
import { posix, external_node_module_createRequire, src_logger } from "./946.js";
|
|
5
|
-
import { pathToFileURL } from "./
|
|
5
|
+
import { pathToFileURL } from "./404.js";
|
|
6
6
|
import { node_vm, asModule, shouldInterop, interopModule } from "./0~346.js";
|
|
7
7
|
const external_node_path_ = __webpack_require__("node:path");
|
|
8
8
|
const isRelativePath = (p)=>/^\.\.?\//.test(p);
|
package/dist/0~919.js
CHANGED
|
@@ -3,7 +3,7 @@ import 'module';
|
|
|
3
3
|
import { __webpack_require__ } from "./rslib-runtime.js";
|
|
4
4
|
import "./946.js";
|
|
5
5
|
__webpack_require__.add({
|
|
6
|
-
"../../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js"
|
|
6
|
+
"../../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js" (__unused_webpack_module, exports) {
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
@@ -25,10 +25,10 @@ __webpack_require__.add({
|
|
|
25
25
|
return token;
|
|
26
26
|
};
|
|
27
27
|
},
|
|
28
|
-
"../../node_modules/.pnpm/@babel+code-frame@7.27.1/node_modules/@babel/code-frame/lib/index.js"
|
|
28
|
+
"../../node_modules/.pnpm/@babel+code-frame@7.27.1/node_modules/@babel/code-frame/lib/index.js" (__unused_webpack_module, exports, __webpack_require__) {
|
|
29
29
|
var picocolors = __webpack_require__("../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js");
|
|
30
30
|
var jsTokens = __webpack_require__("../../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js");
|
|
31
|
-
var helperValidatorIdentifier = __webpack_require__("../../node_modules/.pnpm/@babel+helper-validator-identifier@7.
|
|
31
|
+
var helperValidatorIdentifier = __webpack_require__("../../node_modules/.pnpm/@babel+helper-validator-identifier@7.28.5/node_modules/@babel/helper-validator-identifier/lib/index.js");
|
|
32
32
|
function isColorSupported() {
|
|
33
33
|
return "object" == typeof process && ("0" === process.env.FORCE_COLOR || "false" === process.env.FORCE_COLOR) ? false : picocolors.isColorSupported;
|
|
34
34
|
}
|
|
@@ -194,15 +194,15 @@ __webpack_require__.add({
|
|
|
194
194
|
}
|
|
195
195
|
exports.codeFrameColumns = codeFrameColumns;
|
|
196
196
|
},
|
|
197
|
-
"../../node_modules/.pnpm/@babel+helper-validator-identifier@7.
|
|
197
|
+
"../../node_modules/.pnpm/@babel+helper-validator-identifier@7.28.5/node_modules/@babel/helper-validator-identifier/lib/identifier.js" (__unused_webpack_module, exports) {
|
|
198
198
|
Object.defineProperty(exports, "__esModule", {
|
|
199
199
|
value: true
|
|
200
200
|
});
|
|
201
201
|
exports.isIdentifierChar = isIdentifierChar;
|
|
202
202
|
exports.isIdentifierName = isIdentifierName;
|
|
203
203
|
exports.isIdentifierStart = isIdentifierStart;
|
|
204
|
-
let nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\
|
|
205
|
-
let nonASCIIidentifierChars = "\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0897-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0cf3\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ece\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\
|
|
204
|
+
let nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\u088f\u08a0-\u08c9\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c5c\u0c5d\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cdc-\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u1711\u171f-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4c\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c8a\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7dc\ua7f1-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc";
|
|
205
|
+
let nonASCIIidentifierChars = "\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0897-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0cf3\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ece\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1add\u1ae0-\u1aeb\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u200c\u200d\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\u30fb\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f\uff65";
|
|
206
206
|
const nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]");
|
|
207
207
|
const nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]");
|
|
208
208
|
nonASCIIidentifierStartChars = nonASCIIidentifierChars = null;
|
|
@@ -305,7 +305,9 @@ __webpack_require__.add({
|
|
|
305
305
|
21,
|
|
306
306
|
11,
|
|
307
307
|
25,
|
|
308
|
-
|
|
308
|
+
7,
|
|
309
|
+
25,
|
|
310
|
+
39,
|
|
309
311
|
55,
|
|
310
312
|
7,
|
|
311
313
|
1,
|
|
@@ -350,8 +352,8 @@ __webpack_require__.add({
|
|
|
350
352
|
7,
|
|
351
353
|
1,
|
|
352
354
|
17,
|
|
353
|
-
|
|
354
|
-
|
|
355
|
+
5,
|
|
356
|
+
57,
|
|
355
357
|
28,
|
|
356
358
|
11,
|
|
357
359
|
0,
|
|
@@ -535,7 +537,9 @@ __webpack_require__.add({
|
|
|
535
537
|
31,
|
|
536
538
|
15,
|
|
537
539
|
0,
|
|
538
|
-
|
|
540
|
+
24,
|
|
541
|
+
43,
|
|
542
|
+
261,
|
|
539
543
|
18,
|
|
540
544
|
16,
|
|
541
545
|
0,
|
|
@@ -583,7 +587,11 @@ __webpack_require__.add({
|
|
|
583
587
|
44,
|
|
584
588
|
212,
|
|
585
589
|
63,
|
|
586
|
-
|
|
590
|
+
33,
|
|
591
|
+
24,
|
|
592
|
+
3,
|
|
593
|
+
24,
|
|
594
|
+
45,
|
|
587
595
|
74,
|
|
588
596
|
6,
|
|
589
597
|
0,
|
|
@@ -593,13 +601,15 @@ __webpack_require__.add({
|
|
|
593
601
|
1,
|
|
594
602
|
2,
|
|
595
603
|
0,
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
604
|
+
15,
|
|
605
|
+
4,
|
|
606
|
+
10,
|
|
607
|
+
7381,
|
|
600
608
|
42,
|
|
601
|
-
|
|
602
|
-
|
|
609
|
+
31,
|
|
610
|
+
98,
|
|
611
|
+
114,
|
|
612
|
+
8702,
|
|
603
613
|
3,
|
|
604
614
|
2,
|
|
605
615
|
6,
|
|
@@ -707,7 +717,19 @@ __webpack_require__.add({
|
|
|
707
717
|
29,
|
|
708
718
|
3,
|
|
709
719
|
0,
|
|
710
|
-
|
|
720
|
+
208,
|
|
721
|
+
30,
|
|
722
|
+
2,
|
|
723
|
+
2,
|
|
724
|
+
2,
|
|
725
|
+
1,
|
|
726
|
+
2,
|
|
727
|
+
6,
|
|
728
|
+
3,
|
|
729
|
+
4,
|
|
730
|
+
10,
|
|
731
|
+
1,
|
|
732
|
+
225,
|
|
711
733
|
6,
|
|
712
734
|
2,
|
|
713
735
|
3,
|
|
@@ -790,12 +812,10 @@ __webpack_require__.add({
|
|
|
790
812
|
4421,
|
|
791
813
|
42719,
|
|
792
814
|
33,
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
815
|
+
4381,
|
|
816
|
+
3,
|
|
817
|
+
5773,
|
|
796
818
|
3,
|
|
797
|
-
5761,
|
|
798
|
-
15,
|
|
799
819
|
7472,
|
|
800
820
|
16,
|
|
801
821
|
621,
|
|
@@ -804,7 +824,7 @@ __webpack_require__.add({
|
|
|
804
824
|
1507,
|
|
805
825
|
4938,
|
|
806
826
|
6,
|
|
807
|
-
|
|
827
|
+
8489
|
|
808
828
|
];
|
|
809
829
|
const astralIdentifierCodes = [
|
|
810
830
|
509,
|
|
@@ -837,8 +857,8 @@ __webpack_require__.add({
|
|
|
837
857
|
4,
|
|
838
858
|
318,
|
|
839
859
|
1,
|
|
840
|
-
|
|
841
|
-
|
|
860
|
+
78,
|
|
861
|
+
5,
|
|
842
862
|
71,
|
|
843
863
|
10,
|
|
844
864
|
50,
|
|
@@ -983,7 +1003,9 @@ __webpack_require__.add({
|
|
|
983
1003
|
10,
|
|
984
1004
|
47,
|
|
985
1005
|
15,
|
|
986
|
-
|
|
1006
|
+
199,
|
|
1007
|
+
7,
|
|
1008
|
+
137,
|
|
987
1009
|
9,
|
|
988
1010
|
54,
|
|
989
1011
|
7,
|
|
@@ -1015,7 +1037,9 @@ __webpack_require__.add({
|
|
|
1015
1037
|
4,
|
|
1016
1038
|
9,
|
|
1017
1039
|
9,
|
|
1018
|
-
|
|
1040
|
+
55,
|
|
1041
|
+
9,
|
|
1042
|
+
266,
|
|
1019
1043
|
3,
|
|
1020
1044
|
10,
|
|
1021
1045
|
1,
|
|
@@ -1115,7 +1139,15 @@ __webpack_require__.add({
|
|
|
1115
1139
|
1,
|
|
1116
1140
|
2,
|
|
1117
1141
|
9,
|
|
1118
|
-
|
|
1142
|
+
233,
|
|
1143
|
+
0,
|
|
1144
|
+
3,
|
|
1145
|
+
0,
|
|
1146
|
+
8,
|
|
1147
|
+
1,
|
|
1148
|
+
6,
|
|
1149
|
+
0,
|
|
1150
|
+
475,
|
|
1119
1151
|
6,
|
|
1120
1152
|
110,
|
|
1121
1153
|
6,
|
|
@@ -1170,7 +1202,7 @@ __webpack_require__.add({
|
|
|
1170
1202
|
return !isFirst;
|
|
1171
1203
|
}
|
|
1172
1204
|
},
|
|
1173
|
-
"../../node_modules/.pnpm/@babel+helper-validator-identifier@7.
|
|
1205
|
+
"../../node_modules/.pnpm/@babel+helper-validator-identifier@7.28.5/node_modules/@babel/helper-validator-identifier/lib/index.js" (__unused_webpack_module, exports, __webpack_require__) {
|
|
1174
1206
|
Object.defineProperty(exports, "__esModule", {
|
|
1175
1207
|
value: true
|
|
1176
1208
|
});
|
|
@@ -1222,10 +1254,10 @@ __webpack_require__.add({
|
|
|
1222
1254
|
return _keyword.isStrictReservedWord;
|
|
1223
1255
|
}
|
|
1224
1256
|
});
|
|
1225
|
-
var _identifier = __webpack_require__("../../node_modules/.pnpm/@babel+helper-validator-identifier@7.
|
|
1226
|
-
var _keyword = __webpack_require__("../../node_modules/.pnpm/@babel+helper-validator-identifier@7.
|
|
1257
|
+
var _identifier = __webpack_require__("../../node_modules/.pnpm/@babel+helper-validator-identifier@7.28.5/node_modules/@babel/helper-validator-identifier/lib/identifier.js");
|
|
1258
|
+
var _keyword = __webpack_require__("../../node_modules/.pnpm/@babel+helper-validator-identifier@7.28.5/node_modules/@babel/helper-validator-identifier/lib/keyword.js");
|
|
1227
1259
|
},
|
|
1228
|
-
"../../node_modules/.pnpm/@babel+helper-validator-identifier@7.
|
|
1260
|
+
"../../node_modules/.pnpm/@babel+helper-validator-identifier@7.28.5/node_modules/@babel/helper-validator-identifier/lib/keyword.js" (__unused_webpack_module, exports) {
|
|
1229
1261
|
Object.defineProperty(exports, "__esModule", {
|
|
1230
1262
|
value: true
|
|
1231
1263
|
});
|
package/dist/0~923.js
CHANGED
|
@@ -2,7 +2,7 @@ import 'module';
|
|
|
2
2
|
/*#__PURE__*/ import.meta.url;
|
|
3
3
|
import { __webpack_require__ } from "./rslib-runtime.js";
|
|
4
4
|
import { posix, src_logger } from "./946.js";
|
|
5
|
-
import { pathToFileURL } from "./
|
|
5
|
+
import { pathToFileURL } from "./404.js";
|
|
6
6
|
import { node_vm, interopModule, shouldInterop } from "./0~346.js";
|
|
7
7
|
const external_node_path_ = __webpack_require__("node:path");
|
|
8
8
|
var loadEsModule_EsmMode = /*#__PURE__*/ function(EsmMode) {
|
package/dist/{155.js → 131.js}
RENAMED
|
@@ -2,8 +2,8 @@ import 'module';
|
|
|
2
2
|
/*#__PURE__*/ import.meta.url;
|
|
3
3
|
import { __webpack_require__ } from "./rslib-runtime.js";
|
|
4
4
|
import { EventEmitter } from "events";
|
|
5
|
-
import { createRsbuild, loadConfig, logger, mergeRsbuildConfig } from "@rsbuild/core";
|
|
6
|
-
import {
|
|
5
|
+
import { createRsbuild, loadConfig, logger as core_logger, mergeRsbuildConfig } from "@rsbuild/core";
|
|
6
|
+
import { DEFAULT_CONFIG_NAME, posix, globalApis, resolve as pathe_M_eThtNZ_resolve, pathe_M_eThtNZ_relative, filterProjects, join, glob, prettyTestPath, prettyTime, isAbsolute, TEMP_RSTEST_OUTPUT_DIR_GLOB, formatTestPath, TS_CONFIG_FILE, basename, isTTY, dirname, getAbsolutePath, bgColor, formatRootStr, isDynamicPattern, writeFile, castArray, src_logger, isDebug, getTaskNameWithPrefix, DEFAULT_CONFIG_EXTENSIONS, formatError, normalize } from "./946.js";
|
|
7
7
|
import { decode } from "./397.js";
|
|
8
8
|
function toArr(any) {
|
|
9
9
|
return null == any ? [] : Array.isArray(any) ? any : [
|
|
@@ -500,7 +500,7 @@ function prepareCli() {
|
|
|
500
500
|
if (!npm_execpath || npm_execpath.includes('npx-cli.js') || npm_execpath.includes('.bun')) console.log();
|
|
501
501
|
}
|
|
502
502
|
function showRstest() {
|
|
503
|
-
src_logger.greet(" Rstest v0.7.
|
|
503
|
+
src_logger.greet(" Rstest v0.7.2");
|
|
504
504
|
src_logger.log('');
|
|
505
505
|
}
|
|
506
506
|
const applyCommonOptions = (cli)=>{
|
|
@@ -544,7 +544,7 @@ const runRest = async ({ options, filters, command })=>{
|
|
|
544
544
|
function setupCommands() {
|
|
545
545
|
const cli = dist('rstest');
|
|
546
546
|
cli.help();
|
|
547
|
-
cli.version("0.7.
|
|
547
|
+
cli.version("0.7.2");
|
|
548
548
|
applyCommonOptions(cli);
|
|
549
549
|
cli.command('[...filters]', 'run tests').option('-w, --watch', 'Run tests in watch mode').action(async (filters, options)=>{
|
|
550
550
|
showRstest();
|
|
@@ -1443,7 +1443,7 @@ const printSummaryErrorLogs = async ({ testResults, results, rootPath, getSource
|
|
|
1443
1443
|
for (const test of failedTests){
|
|
1444
1444
|
const relativePath = posix.relative(rootPath, test.testPath);
|
|
1445
1445
|
const nameStr = getTaskNameWithPrefix(test);
|
|
1446
|
-
src_logger.log(`${
|
|
1446
|
+
src_logger.log(`${bgColor('bgRed', ' FAIL ')} ${prettyTestPath(relativePath)} ${nameStr.length ? `${picocolors_default().dim(">")} ${nameStr}` : ''}`);
|
|
1447
1447
|
if (test.errors) {
|
|
1448
1448
|
const { printError } = await Promise.resolve().then(()=>({
|
|
1449
1449
|
printError: error_printError
|
|
@@ -1575,11 +1575,11 @@ class StatusRenderer {
|
|
|
1575
1575
|
renderer;
|
|
1576
1576
|
startTime = void 0;
|
|
1577
1577
|
testState;
|
|
1578
|
-
constructor(rootPath, state){
|
|
1578
|
+
constructor(rootPath, state, logger){
|
|
1579
1579
|
this.rootPath = rootPath;
|
|
1580
1580
|
this.renderer = new WindowRenderer({
|
|
1581
1581
|
getWindow: ()=>this.getContent(),
|
|
1582
|
-
logger: {
|
|
1582
|
+
logger: logger ?? {
|
|
1583
1583
|
outputStream: process.stdout,
|
|
1584
1584
|
errorStream: process.stderr,
|
|
1585
1585
|
getColumns: ()=>'columns' in process.stdout ? process.stdout.columns : 80
|
|
@@ -1596,7 +1596,7 @@ class StatusRenderer {
|
|
|
1596
1596
|
const shouldDisplayRunningTests = (runningTests)=>runningTests[0]?.startTime && now - runningTests[0].startTime > 2000;
|
|
1597
1597
|
for (const [module, { runningTests }] of runningModules.entries()){
|
|
1598
1598
|
const relativePath = pathe_M_eThtNZ_relative(this.rootPath, module);
|
|
1599
|
-
summary.push(`${
|
|
1599
|
+
summary.push(`${bgColor('bgYellow', ' RUNS ')} ${prettyTestPath(relativePath)}`);
|
|
1600
1600
|
if (runningTests.length && shouldDisplayRunningTests(runningTests)) {
|
|
1601
1601
|
let caseLog = ` ${picocolors_default().gray("➜")} ${getTaskNameWithPrefix(runningTests[0])} ${picocolors_default().magenta(prettyTime(now - runningTests[0].startTime))}`;
|
|
1602
1602
|
if (runningTests.length > 1) caseLog += picocolors_default().gray(` and ${runningTests.length - 1} more cases`);
|
|
@@ -1667,7 +1667,7 @@ class DefaultReporter {
|
|
|
1667
1667
|
this.rootPath = rootPath;
|
|
1668
1668
|
this.config = config;
|
|
1669
1669
|
this.options = options;
|
|
1670
|
-
if (isTTY()) this.statusRenderer = new StatusRenderer(rootPath, testState);
|
|
1670
|
+
if (isTTY() || options.logger) this.statusRenderer = new StatusRenderer(rootPath, testState, options.logger);
|
|
1671
1671
|
}
|
|
1672
1672
|
onTestFileStart() {
|
|
1673
1673
|
this.statusRenderer?.onTestFileStart();
|
|
@@ -2175,7 +2175,7 @@ const stackIgnores = [
|
|
|
2175
2175
|
];
|
|
2176
2176
|
async function error_parseErrorStacktrace({ stack, getSourcemap, fullStack = isDebug() }) {
|
|
2177
2177
|
const stackFrames = await Promise.all(stack_trace_parser_esm_parse(stack).filter((frame)=>fullStack ? true : frame.file && !stackIgnores.some((entry)=>frame.file?.match(entry))).map(async (frame)=>{
|
|
2178
|
-
const sourcemap = await getSourcemap(frame.file);
|
|
2178
|
+
const sourcemap = await getSourcemap?.(frame.file);
|
|
2179
2179
|
if (sourcemap) {
|
|
2180
2180
|
const traceMap = new TraceMap(sourcemap);
|
|
2181
2181
|
const { line, column, source, name } = originalPositionFor(traceMap, {
|
|
@@ -2428,7 +2428,7 @@ class Rstest {
|
|
|
2428
2428
|
});
|
|
2429
2429
|
this.reporters = reporters;
|
|
2430
2430
|
this.snapshotManager = snapshotManager;
|
|
2431
|
-
this.version = "0.7.
|
|
2431
|
+
this.version = "0.7.2";
|
|
2432
2432
|
this.rootPath = rootPath;
|
|
2433
2433
|
this.originalConfig = userConfig;
|
|
2434
2434
|
this.normalizedConfig = rstestConfig;
|
|
@@ -2571,4 +2571,4 @@ function defineConfig(config) {
|
|
|
2571
2571
|
function defineProject(config) {
|
|
2572
2572
|
return config;
|
|
2573
2573
|
}
|
|
2574
|
-
export { EventEmitter, afterAll, afterEach, assert, beforeAll, beforeEach, config_loadConfig as loadConfig, core_createRstest as createRstest, createRsbuild, defineConfig, defineProject, describe, error_printError, expect, init_initCli as initCli, it,
|
|
2574
|
+
export { EventEmitter, afterAll, afterEach, assert, beforeAll, beforeEach, config_loadConfig as loadConfig, core_createRstest as createRstest, core_logger, createRsbuild, defineConfig, defineProject, describe, error_printError, expect, init_initCli as initCli, it, mergeRstestConfig, onTestFailed, onTestFinished, public_rstest as rstest, public_test as test, rs, runCLI, runRest };
|
package/dist/404.js
ADDED
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import 'module';
|
|
2
|
+
/*#__PURE__*/ import.meta.url;
|
|
3
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
4
|
+
import node_v8 from "node:v8";
|
|
5
|
+
const TYPE_REQUEST = "q";
|
|
6
|
+
const TYPE_RESPONSE = "s";
|
|
7
|
+
const DEFAULT_TIMEOUT = 6e4;
|
|
8
|
+
function defaultSerialize(i) {
|
|
9
|
+
return i;
|
|
10
|
+
}
|
|
11
|
+
const defaultDeserialize = defaultSerialize;
|
|
12
|
+
const { clearTimeout: dist_clearTimeout, setTimeout: dist_setTimeout } = globalThis;
|
|
13
|
+
const random = Math.random.bind(Math);
|
|
14
|
+
function createBirpc($functions, options) {
|
|
15
|
+
const { post, on, off = ()=>{}, eventNames = [], serialize = defaultSerialize, deserialize = defaultDeserialize, resolver, bind = "rpc", timeout = DEFAULT_TIMEOUT } = options;
|
|
16
|
+
let $closed = false;
|
|
17
|
+
const _rpcPromiseMap = /* @__PURE__ */ new Map();
|
|
18
|
+
let _promiseInit;
|
|
19
|
+
let rpc;
|
|
20
|
+
async function _call(method, args, event, optional) {
|
|
21
|
+
if ($closed) throw new Error(`[birpc] rpc is closed, cannot call "${method}"`);
|
|
22
|
+
const req = {
|
|
23
|
+
m: method,
|
|
24
|
+
a: args,
|
|
25
|
+
t: TYPE_REQUEST
|
|
26
|
+
};
|
|
27
|
+
if (optional) req.o = true;
|
|
28
|
+
const send = async (_req)=>post(serialize(_req));
|
|
29
|
+
if (event) return void await send(req);
|
|
30
|
+
if (_promiseInit) try {
|
|
31
|
+
await _promiseInit;
|
|
32
|
+
} finally{
|
|
33
|
+
_promiseInit = void 0;
|
|
34
|
+
}
|
|
35
|
+
let { promise, resolve, reject } = createPromiseWithResolvers();
|
|
36
|
+
const id = nanoid();
|
|
37
|
+
req.i = id;
|
|
38
|
+
let timeoutId;
|
|
39
|
+
async function handler(newReq = req) {
|
|
40
|
+
if (timeout >= 0) {
|
|
41
|
+
timeoutId = dist_setTimeout(()=>{
|
|
42
|
+
try {
|
|
43
|
+
const handleResult = options.onTimeoutError?.call(rpc, method, args);
|
|
44
|
+
if (true !== handleResult) throw new Error(`[birpc] timeout on calling "${method}"`);
|
|
45
|
+
} catch (e) {
|
|
46
|
+
reject(e);
|
|
47
|
+
}
|
|
48
|
+
_rpcPromiseMap.delete(id);
|
|
49
|
+
}, timeout);
|
|
50
|
+
if ("object" == typeof timeoutId) timeoutId = timeoutId.unref?.();
|
|
51
|
+
}
|
|
52
|
+
_rpcPromiseMap.set(id, {
|
|
53
|
+
resolve,
|
|
54
|
+
reject,
|
|
55
|
+
timeoutId,
|
|
56
|
+
method
|
|
57
|
+
});
|
|
58
|
+
await send(newReq);
|
|
59
|
+
return promise;
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
if (options.onRequest) await options.onRequest.call(rpc, req, handler, resolve);
|
|
63
|
+
else await handler();
|
|
64
|
+
} catch (e) {
|
|
65
|
+
if (options.onGeneralError?.call(rpc, e) !== true) throw e;
|
|
66
|
+
return;
|
|
67
|
+
} finally{
|
|
68
|
+
dist_clearTimeout(timeoutId);
|
|
69
|
+
_rpcPromiseMap.delete(id);
|
|
70
|
+
}
|
|
71
|
+
return promise;
|
|
72
|
+
}
|
|
73
|
+
const $call = (method, ...args)=>_call(method, args, false);
|
|
74
|
+
const $callOptional = (method, ...args)=>_call(method, args, false, true);
|
|
75
|
+
const $callEvent = (method, ...args)=>_call(method, args, true);
|
|
76
|
+
const $callRaw = (options2)=>_call(options2.method, options2.args, options2.event, options2.optional);
|
|
77
|
+
const builtinMethods = {
|
|
78
|
+
$call,
|
|
79
|
+
$callOptional,
|
|
80
|
+
$callEvent,
|
|
81
|
+
$callRaw,
|
|
82
|
+
$rejectPendingCalls,
|
|
83
|
+
get $closed () {
|
|
84
|
+
return $closed;
|
|
85
|
+
},
|
|
86
|
+
get $meta () {
|
|
87
|
+
return options.meta;
|
|
88
|
+
},
|
|
89
|
+
$close,
|
|
90
|
+
$functions
|
|
91
|
+
};
|
|
92
|
+
rpc = new Proxy({}, {
|
|
93
|
+
get (_, method) {
|
|
94
|
+
if (Object.prototype.hasOwnProperty.call(builtinMethods, method)) return builtinMethods[method];
|
|
95
|
+
if ("then" === method && !eventNames.includes("then") && !("then" in $functions)) return;
|
|
96
|
+
const sendEvent = (...args)=>_call(method, args, true);
|
|
97
|
+
if (eventNames.includes(method)) {
|
|
98
|
+
sendEvent.asEvent = sendEvent;
|
|
99
|
+
return sendEvent;
|
|
100
|
+
}
|
|
101
|
+
const sendCall = (...args)=>_call(method, args, false);
|
|
102
|
+
sendCall.asEvent = sendEvent;
|
|
103
|
+
return sendCall;
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
function $close(customError) {
|
|
107
|
+
$closed = true;
|
|
108
|
+
_rpcPromiseMap.forEach(({ reject, method })=>{
|
|
109
|
+
const error = new Error(`[birpc] rpc is closed, cannot call "${method}"`);
|
|
110
|
+
if (customError) {
|
|
111
|
+
customError.cause ??= error;
|
|
112
|
+
return reject(customError);
|
|
113
|
+
}
|
|
114
|
+
reject(error);
|
|
115
|
+
});
|
|
116
|
+
_rpcPromiseMap.clear();
|
|
117
|
+
off(onMessage);
|
|
118
|
+
}
|
|
119
|
+
function $rejectPendingCalls(handler) {
|
|
120
|
+
const entries = Array.from(_rpcPromiseMap.values());
|
|
121
|
+
const handlerResults = entries.map(({ method, reject })=>{
|
|
122
|
+
if (!handler) return reject(new Error(`[birpc]: rejected pending call "${method}".`));
|
|
123
|
+
return handler({
|
|
124
|
+
method,
|
|
125
|
+
reject
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
_rpcPromiseMap.clear();
|
|
129
|
+
return handlerResults;
|
|
130
|
+
}
|
|
131
|
+
async function onMessage(data, ...extra) {
|
|
132
|
+
let msg;
|
|
133
|
+
try {
|
|
134
|
+
msg = deserialize(data);
|
|
135
|
+
} catch (e) {
|
|
136
|
+
if (options.onGeneralError?.call(rpc, e) !== true) throw e;
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
if (msg.t === TYPE_REQUEST) {
|
|
140
|
+
const { m: method, a: args, o: optional } = msg;
|
|
141
|
+
let result, error;
|
|
142
|
+
let fn = await (resolver ? resolver.call(rpc, method, $functions[method]) : $functions[method]);
|
|
143
|
+
if (optional) fn ||= ()=>void 0;
|
|
144
|
+
if (fn) try {
|
|
145
|
+
result = await fn.apply("rpc" === bind ? rpc : $functions, args);
|
|
146
|
+
} catch (e) {
|
|
147
|
+
error = e;
|
|
148
|
+
}
|
|
149
|
+
else error = new Error(`[birpc] function "${method}" not found`);
|
|
150
|
+
if (msg.i) {
|
|
151
|
+
if (error && options.onError) options.onError.call(rpc, error, method, args);
|
|
152
|
+
if (error && options.onFunctionError) {
|
|
153
|
+
if (true === options.onFunctionError.call(rpc, error, method, args)) return;
|
|
154
|
+
}
|
|
155
|
+
if (!error) try {
|
|
156
|
+
await post(serialize({
|
|
157
|
+
t: TYPE_RESPONSE,
|
|
158
|
+
i: msg.i,
|
|
159
|
+
r: result
|
|
160
|
+
}), ...extra);
|
|
161
|
+
return;
|
|
162
|
+
} catch (e) {
|
|
163
|
+
error = e;
|
|
164
|
+
if (options.onGeneralError?.call(rpc, e, method, args) !== true) throw e;
|
|
165
|
+
}
|
|
166
|
+
try {
|
|
167
|
+
await post(serialize({
|
|
168
|
+
t: TYPE_RESPONSE,
|
|
169
|
+
i: msg.i,
|
|
170
|
+
e: error
|
|
171
|
+
}), ...extra);
|
|
172
|
+
} catch (e) {
|
|
173
|
+
if (options.onGeneralError?.call(rpc, e, method, args) !== true) throw e;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
} else {
|
|
177
|
+
const { i: ack, r: result, e: error } = msg;
|
|
178
|
+
const promise = _rpcPromiseMap.get(ack);
|
|
179
|
+
if (promise) {
|
|
180
|
+
dist_clearTimeout(promise.timeoutId);
|
|
181
|
+
if (error) promise.reject(error);
|
|
182
|
+
else promise.resolve(result);
|
|
183
|
+
}
|
|
184
|
+
_rpcPromiseMap.delete(ack);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
_promiseInit = on(onMessage);
|
|
188
|
+
return rpc;
|
|
189
|
+
}
|
|
190
|
+
function createPromiseWithResolvers() {
|
|
191
|
+
let resolve;
|
|
192
|
+
let reject;
|
|
193
|
+
const promise = new Promise((res, rej)=>{
|
|
194
|
+
resolve = res;
|
|
195
|
+
reject = rej;
|
|
196
|
+
});
|
|
197
|
+
return {
|
|
198
|
+
promise,
|
|
199
|
+
resolve,
|
|
200
|
+
reject
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
const urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
|
|
204
|
+
function nanoid(size = 21) {
|
|
205
|
+
let id = "";
|
|
206
|
+
let i = size;
|
|
207
|
+
while(i--)id += urlAlphabet[64 * random() | 0];
|
|
208
|
+
return id;
|
|
209
|
+
}
|
|
210
|
+
export { createBirpc, fileURLToPath, node_v8, pathToFileURL };
|