@base-web-kits/base-tools-ts 1.1.6 → 1.1.10
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/base-tools-ts.umd.global.js +222 -147
- package/dist/base-tools-ts.umd.global.js.map +1 -1
- package/dist/index.cjs +221 -146
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +225 -147
- package/dist/index.js.map +1 -1
- package/package.json +36 -36
package/dist/index.js
CHANGED
|
@@ -1,3 +1,42 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __pow = Math.pow;
|
|
6
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
|
+
var __spreadValues = (a, b) => {
|
|
8
|
+
for (var prop in b || (b = {}))
|
|
9
|
+
if (__hasOwnProp.call(b, prop))
|
|
10
|
+
__defNormalProp(a, prop, b[prop]);
|
|
11
|
+
if (__getOwnPropSymbols)
|
|
12
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
13
|
+
if (__propIsEnum.call(b, prop))
|
|
14
|
+
__defNormalProp(a, prop, b[prop]);
|
|
15
|
+
}
|
|
16
|
+
return a;
|
|
17
|
+
};
|
|
18
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
19
|
+
var __async = (__this, __arguments, generator) => {
|
|
20
|
+
return new Promise((resolve, reject) => {
|
|
21
|
+
var fulfilled = (value) => {
|
|
22
|
+
try {
|
|
23
|
+
step(generator.next(value));
|
|
24
|
+
} catch (e) {
|
|
25
|
+
reject(e);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
var rejected = (value) => {
|
|
29
|
+
try {
|
|
30
|
+
step(generator.throw(value));
|
|
31
|
+
} catch (e) {
|
|
32
|
+
reject(e);
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
36
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
|
|
1
40
|
// src/ts/array/index.ts
|
|
2
41
|
function arrayMove(list, fromIndex, toIndex) {
|
|
3
42
|
const newList = [...list];
|
|
@@ -7,19 +46,23 @@ function arrayMove(list, fromIndex, toIndex) {
|
|
|
7
46
|
}
|
|
8
47
|
|
|
9
48
|
// src/ts/async/index.ts
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
49
|
+
function toAsync(p) {
|
|
50
|
+
return __async(this, null, function* () {
|
|
51
|
+
try {
|
|
52
|
+
const data = yield p;
|
|
53
|
+
return [data, null];
|
|
54
|
+
} catch (err) {
|
|
55
|
+
return [null, err];
|
|
56
|
+
}
|
|
57
|
+
});
|
|
17
58
|
}
|
|
18
59
|
|
|
19
60
|
// src/ts/bean/EventBus.ts
|
|
20
61
|
import mitt from "mitt";
|
|
21
62
|
var EventBus = class {
|
|
22
|
-
|
|
63
|
+
constructor() {
|
|
64
|
+
__publicField(this, "_emitter", mitt());
|
|
65
|
+
}
|
|
23
66
|
/** 订阅 */
|
|
24
67
|
on(type, fn) {
|
|
25
68
|
this._emitter.on(type, fn);
|
|
@@ -128,12 +171,12 @@ function withUnitPx(num) {
|
|
|
128
171
|
return withUnit(num, "px");
|
|
129
172
|
}
|
|
130
173
|
function withDistance(m) {
|
|
131
|
-
const n = Number(m
|
|
174
|
+
const n = Number(m != null ? m : 0);
|
|
132
175
|
if (!Number.isFinite(n)) return "0m";
|
|
133
176
|
return n >= 1e3 ? `${+(n / 1e3).toFixed(2)}km` : `${+n.toFixed(2)}m`;
|
|
134
177
|
}
|
|
135
178
|
function toThousandth(str) {
|
|
136
|
-
const v = String(str
|
|
179
|
+
const v = String(str != null ? str : "").trim();
|
|
137
180
|
if (v === "") return "";
|
|
138
181
|
let sign = "";
|
|
139
182
|
let num = v;
|
|
@@ -184,9 +227,10 @@ function toChineseNum(num) {
|
|
|
184
227
|
return numInt < 0 ? `\u8D1F${res}` : res;
|
|
185
228
|
}
|
|
186
229
|
function toChineseCurrency(amount, opts = {}) {
|
|
187
|
-
|
|
188
|
-
const
|
|
189
|
-
const
|
|
230
|
+
var _a, _b, _c;
|
|
231
|
+
const dp = (_a = opts.precision) != null ? _a : 2;
|
|
232
|
+
const rm = (_b = opts.rm) != null ? _b : BigNumber.ROUND_HALF_UP;
|
|
233
|
+
const yuan = (_c = opts.yuanChar) != null ? _c : "\u5143";
|
|
190
234
|
if (amount === null || amount === void 0) return "";
|
|
191
235
|
const bn = new BigNumber(amount);
|
|
192
236
|
if (!bn.isFinite()) return "";
|
|
@@ -371,11 +415,12 @@ function compact(arr) {
|
|
|
371
415
|
|
|
372
416
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/countBy.mjs
|
|
373
417
|
function countBy(arr, mapper) {
|
|
418
|
+
var _a;
|
|
374
419
|
const result = {};
|
|
375
420
|
for (let i = 0; i < arr.length; i++) {
|
|
376
421
|
const item = arr[i];
|
|
377
422
|
const key = mapper(item);
|
|
378
|
-
result[key] = (result[key]
|
|
423
|
+
result[key] = ((_a = result[key]) != null ? _a : 0) + 1;
|
|
379
424
|
}
|
|
380
425
|
return result;
|
|
381
426
|
}
|
|
@@ -450,20 +495,22 @@ function fill(array, value, start = 0, end = array.length) {
|
|
|
450
495
|
|
|
451
496
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/semaphore.mjs
|
|
452
497
|
var Semaphore = class {
|
|
453
|
-
capacity;
|
|
454
|
-
available;
|
|
455
|
-
deferredTasks = [];
|
|
456
498
|
constructor(capacity) {
|
|
499
|
+
__publicField(this, "capacity");
|
|
500
|
+
__publicField(this, "available");
|
|
501
|
+
__publicField(this, "deferredTasks", []);
|
|
457
502
|
this.capacity = capacity;
|
|
458
503
|
this.available = capacity;
|
|
459
504
|
}
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
this.available
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
505
|
+
acquire() {
|
|
506
|
+
return __async(this, null, function* () {
|
|
507
|
+
if (this.available > 0) {
|
|
508
|
+
this.available--;
|
|
509
|
+
return;
|
|
510
|
+
}
|
|
511
|
+
return new Promise((resolve) => {
|
|
512
|
+
this.deferredTasks.push(resolve);
|
|
513
|
+
});
|
|
467
514
|
});
|
|
468
515
|
}
|
|
469
516
|
release() {
|
|
@@ -481,23 +528,27 @@ var Semaphore = class {
|
|
|
481
528
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/limitAsync.mjs
|
|
482
529
|
function limitAsync(callback, concurrency) {
|
|
483
530
|
const semaphore = new Semaphore(concurrency);
|
|
484
|
-
return
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
531
|
+
return function(...args) {
|
|
532
|
+
return __async(this, null, function* () {
|
|
533
|
+
try {
|
|
534
|
+
yield semaphore.acquire();
|
|
535
|
+
return yield callback.apply(this, args);
|
|
536
|
+
} finally {
|
|
537
|
+
semaphore.release();
|
|
538
|
+
}
|
|
539
|
+
});
|
|
491
540
|
};
|
|
492
541
|
}
|
|
493
542
|
|
|
494
543
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/filterAsync.mjs
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
544
|
+
function filterAsync(array, predicate, options) {
|
|
545
|
+
return __async(this, null, function* () {
|
|
546
|
+
if ((options == null ? void 0 : options.concurrency) != null) {
|
|
547
|
+
predicate = limitAsync(predicate, options.concurrency);
|
|
548
|
+
}
|
|
549
|
+
const results = yield Promise.all(array.map(predicate));
|
|
550
|
+
return array.filter((_, index) => results[index]);
|
|
551
|
+
});
|
|
501
552
|
}
|
|
502
553
|
|
|
503
554
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/flatten.mjs
|
|
@@ -524,12 +575,14 @@ function flatMap(arr, iteratee, depth = 1) {
|
|
|
524
575
|
}
|
|
525
576
|
|
|
526
577
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/flatMapAsync.mjs
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
578
|
+
function flatMapAsync(array, callback, options) {
|
|
579
|
+
return __async(this, null, function* () {
|
|
580
|
+
if ((options == null ? void 0 : options.concurrency) != null) {
|
|
581
|
+
callback = limitAsync(callback, options.concurrency);
|
|
582
|
+
}
|
|
583
|
+
const results = yield Promise.all(array.map(callback));
|
|
584
|
+
return flatten(results);
|
|
585
|
+
});
|
|
533
586
|
}
|
|
534
587
|
|
|
535
588
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/flattenDeep.mjs
|
|
@@ -543,11 +596,13 @@ function flatMapDeep(arr, iteratee) {
|
|
|
543
596
|
}
|
|
544
597
|
|
|
545
598
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/forEachAsync.mjs
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
599
|
+
function forEachAsync(array, callback, options) {
|
|
600
|
+
return __async(this, null, function* () {
|
|
601
|
+
if ((options == null ? void 0 : options.concurrency) != null) {
|
|
602
|
+
callback = limitAsync(callback, options.concurrency);
|
|
603
|
+
}
|
|
604
|
+
yield Promise.all(array.map(callback));
|
|
605
|
+
});
|
|
551
606
|
}
|
|
552
607
|
|
|
553
608
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/forEachRight.mjs
|
|
@@ -633,7 +688,7 @@ function last(arr) {
|
|
|
633
688
|
|
|
634
689
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/mapAsync.mjs
|
|
635
690
|
function mapAsync(array, callback, options) {
|
|
636
|
-
if (options
|
|
691
|
+
if ((options == null ? void 0 : options.concurrency) != null) {
|
|
637
692
|
callback = limitAsync(callback, options.concurrency);
|
|
638
693
|
}
|
|
639
694
|
return Promise.all(array.map(callback));
|
|
@@ -749,17 +804,19 @@ function pullAt(arr, indicesToRemove) {
|
|
|
749
804
|
}
|
|
750
805
|
|
|
751
806
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/reduceAsync.mjs
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
initialValue
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
807
|
+
function reduceAsync(array, reducer, initialValue) {
|
|
808
|
+
return __async(this, null, function* () {
|
|
809
|
+
let startIndex = 0;
|
|
810
|
+
if (initialValue == null) {
|
|
811
|
+
initialValue = array[0];
|
|
812
|
+
startIndex = 1;
|
|
813
|
+
}
|
|
814
|
+
let accumulator = initialValue;
|
|
815
|
+
for (let i = startIndex; i < array.length; i++) {
|
|
816
|
+
accumulator = yield reducer(accumulator, array[i], i, array);
|
|
817
|
+
}
|
|
818
|
+
return accumulator;
|
|
819
|
+
});
|
|
763
820
|
}
|
|
764
821
|
|
|
765
822
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/remove.mjs
|
|
@@ -1124,7 +1181,9 @@ function ary(func, n) {
|
|
|
1124
1181
|
}
|
|
1125
1182
|
|
|
1126
1183
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/asyncNoop.mjs
|
|
1127
|
-
|
|
1184
|
+
function asyncNoop() {
|
|
1185
|
+
return __async(this, null, function* () {
|
|
1186
|
+
});
|
|
1128
1187
|
}
|
|
1129
1188
|
|
|
1130
1189
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/before.mjs
|
|
@@ -1225,7 +1284,7 @@ function debounce(func, debounceMs, { signal, edges } = {}) {
|
|
|
1225
1284
|
invoke();
|
|
1226
1285
|
};
|
|
1227
1286
|
const debounced = function(...args) {
|
|
1228
|
-
if (signal
|
|
1287
|
+
if (signal == null ? void 0 : signal.aborted) {
|
|
1229
1288
|
return;
|
|
1230
1289
|
}
|
|
1231
1290
|
pendingThis = this;
|
|
@@ -1239,7 +1298,7 @@ function debounce(func, debounceMs, { signal, edges } = {}) {
|
|
|
1239
1298
|
debounced.schedule = schedule;
|
|
1240
1299
|
debounced.cancel = cancel;
|
|
1241
1300
|
debounced.flush = flush;
|
|
1242
|
-
signal
|
|
1301
|
+
signal == null ? void 0 : signal.addEventListener("abort", cancel, { once: true });
|
|
1243
1302
|
return debounced;
|
|
1244
1303
|
}
|
|
1245
1304
|
|
|
@@ -1364,47 +1423,50 @@ function delay(ms, { signal } = {}) {
|
|
|
1364
1423
|
clearTimeout(timeoutId);
|
|
1365
1424
|
abortError();
|
|
1366
1425
|
};
|
|
1367
|
-
if (signal
|
|
1426
|
+
if (signal == null ? void 0 : signal.aborted) {
|
|
1368
1427
|
return abortError();
|
|
1369
1428
|
}
|
|
1370
1429
|
const timeoutId = setTimeout(() => {
|
|
1371
|
-
signal
|
|
1430
|
+
signal == null ? void 0 : signal.removeEventListener("abort", abortHandler);
|
|
1372
1431
|
resolve();
|
|
1373
1432
|
}, ms);
|
|
1374
|
-
signal
|
|
1433
|
+
signal == null ? void 0 : signal.addEventListener("abort", abortHandler, { once: true });
|
|
1375
1434
|
});
|
|
1376
1435
|
}
|
|
1377
1436
|
|
|
1378
1437
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/retry.mjs
|
|
1379
1438
|
var DEFAULT_DELAY = 0;
|
|
1380
1439
|
var DEFAULT_RETRIES = Number.POSITIVE_INFINITY;
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1440
|
+
function retry(func, _options) {
|
|
1441
|
+
return __async(this, null, function* () {
|
|
1442
|
+
var _a, _b;
|
|
1443
|
+
let delay$1;
|
|
1444
|
+
let retries;
|
|
1445
|
+
let signal;
|
|
1446
|
+
if (typeof _options === "number") {
|
|
1447
|
+
delay$1 = DEFAULT_DELAY;
|
|
1448
|
+
retries = _options;
|
|
1449
|
+
signal = void 0;
|
|
1450
|
+
} else {
|
|
1451
|
+
delay$1 = (_a = _options == null ? void 0 : _options.delay) != null ? _a : DEFAULT_DELAY;
|
|
1452
|
+
retries = (_b = _options == null ? void 0 : _options.retries) != null ? _b : DEFAULT_RETRIES;
|
|
1453
|
+
signal = _options == null ? void 0 : _options.signal;
|
|
1454
|
+
}
|
|
1455
|
+
let error;
|
|
1456
|
+
for (let attempts = 0; attempts < retries; attempts++) {
|
|
1457
|
+
if (signal == null ? void 0 : signal.aborted) {
|
|
1458
|
+
throw error != null ? error : new Error(`The retry operation was aborted due to an abort signal.`);
|
|
1459
|
+
}
|
|
1460
|
+
try {
|
|
1461
|
+
return yield func();
|
|
1462
|
+
} catch (err) {
|
|
1463
|
+
error = err;
|
|
1464
|
+
const currentDelay = typeof delay$1 === "function" ? delay$1(attempts) : delay$1;
|
|
1465
|
+
yield delay(currentDelay);
|
|
1466
|
+
}
|
|
1405
1467
|
}
|
|
1406
|
-
|
|
1407
|
-
|
|
1468
|
+
throw error;
|
|
1469
|
+
});
|
|
1408
1470
|
}
|
|
1409
1471
|
|
|
1410
1472
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/spread.mjs
|
|
@@ -1645,7 +1707,7 @@ function cloneDeepWith(obj, cloneValue) {
|
|
|
1645
1707
|
return cloneDeepWithImpl(obj, void 0, obj, /* @__PURE__ */ new Map(), cloneValue);
|
|
1646
1708
|
}
|
|
1647
1709
|
function cloneDeepWithImpl(valueToClone, keyToClone, objectToClone, stack = /* @__PURE__ */ new Map(), cloneValue = void 0) {
|
|
1648
|
-
const cloned = cloneValue
|
|
1710
|
+
const cloned = cloneValue == null ? void 0 : cloneValue(valueToClone, keyToClone, objectToClone, stack);
|
|
1649
1711
|
if (cloned !== void 0) {
|
|
1650
1712
|
return cloned;
|
|
1651
1713
|
}
|
|
@@ -1957,7 +2019,7 @@ function mergeWith(target, source, merge2) {
|
|
|
1957
2019
|
|
|
1958
2020
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/object/omit.mjs
|
|
1959
2021
|
function omit(obj, keys) {
|
|
1960
|
-
const result = {
|
|
2022
|
+
const result = __spreadValues({}, obj);
|
|
1961
2023
|
for (let i = 0; i < keys.length; i++) {
|
|
1962
2024
|
const key = keys[i];
|
|
1963
2025
|
delete result[key];
|
|
@@ -2016,9 +2078,10 @@ function capitalize(str) {
|
|
|
2016
2078
|
}
|
|
2017
2079
|
|
|
2018
2080
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/string/words.mjs
|
|
2019
|
-
var CASE_SPLIT_PATTERN =
|
|
2081
|
+
var CASE_SPLIT_PATTERN = new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+", "gu");
|
|
2020
2082
|
function words(str) {
|
|
2021
|
-
|
|
2083
|
+
var _a;
|
|
2084
|
+
return Array.from((_a = str.match(CASE_SPLIT_PATTERN)) != null ? _a : []);
|
|
2022
2085
|
}
|
|
2023
2086
|
|
|
2024
2087
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/string/camelCase.mjs
|
|
@@ -2071,6 +2134,7 @@ function toMerged(target, source) {
|
|
|
2071
2134
|
|
|
2072
2135
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.mjs
|
|
2073
2136
|
function isPlainObject2(object) {
|
|
2137
|
+
var _a;
|
|
2074
2138
|
if (typeof object !== "object") {
|
|
2075
2139
|
return false;
|
|
2076
2140
|
}
|
|
@@ -2085,7 +2149,7 @@ function isPlainObject2(object) {
|
|
|
2085
2149
|
if (tag == null) {
|
|
2086
2150
|
return false;
|
|
2087
2151
|
}
|
|
2088
|
-
const isTagReadonly = !Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)
|
|
2152
|
+
const isTagReadonly = !((_a = Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)) == null ? void 0 : _a.writable);
|
|
2089
2153
|
if (isTagReadonly) {
|
|
2090
2154
|
return false;
|
|
2091
2155
|
}
|
|
@@ -2143,7 +2207,7 @@ function isBoolean(x) {
|
|
|
2143
2207
|
|
|
2144
2208
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isBrowser.mjs
|
|
2145
2209
|
function isBrowser() {
|
|
2146
|
-
return typeof window !== "undefined" && window
|
|
2210
|
+
return typeof window !== "undefined" && (window == null ? void 0 : window.document) != null;
|
|
2147
2211
|
}
|
|
2148
2212
|
|
|
2149
2213
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isBuffer.mjs
|
|
@@ -2226,7 +2290,7 @@ function areObjectsEqual(a, b, stack, areValuesEqual) {
|
|
|
2226
2290
|
return a === b;
|
|
2227
2291
|
}
|
|
2228
2292
|
}
|
|
2229
|
-
stack = stack
|
|
2293
|
+
stack = stack != null ? stack : /* @__PURE__ */ new Map();
|
|
2230
2294
|
const aStack = stack.get(a);
|
|
2231
2295
|
const bStack = stack.get(b);
|
|
2232
2296
|
if (aStack != null && bStack != null) {
|
|
@@ -2369,7 +2433,7 @@ function isJSON(value) {
|
|
|
2369
2433
|
try {
|
|
2370
2434
|
JSON.parse(value);
|
|
2371
2435
|
return true;
|
|
2372
|
-
} catch {
|
|
2436
|
+
} catch (e) {
|
|
2373
2437
|
return false;
|
|
2374
2438
|
}
|
|
2375
2439
|
}
|
|
@@ -2431,7 +2495,8 @@ function isNil(x) {
|
|
|
2431
2495
|
|
|
2432
2496
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isNode.mjs
|
|
2433
2497
|
function isNode() {
|
|
2434
|
-
|
|
2498
|
+
var _a;
|
|
2499
|
+
return typeof process !== "undefined" && ((_a = process == null ? void 0 : process.versions) == null ? void 0 : _a.node) != null;
|
|
2435
2500
|
}
|
|
2436
2501
|
|
|
2437
2502
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isNotNil.mjs
|
|
@@ -2486,12 +2551,16 @@ function isWeakSet(value) {
|
|
|
2486
2551
|
|
|
2487
2552
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/mutex.mjs
|
|
2488
2553
|
var Mutex = class {
|
|
2489
|
-
|
|
2554
|
+
constructor() {
|
|
2555
|
+
__publicField(this, "semaphore", new Semaphore(1));
|
|
2556
|
+
}
|
|
2490
2557
|
get isLocked() {
|
|
2491
2558
|
return this.semaphore.available === 0;
|
|
2492
2559
|
}
|
|
2493
|
-
|
|
2494
|
-
return this
|
|
2560
|
+
acquire() {
|
|
2561
|
+
return __async(this, null, function* () {
|
|
2562
|
+
return this.semaphore.acquire();
|
|
2563
|
+
});
|
|
2495
2564
|
}
|
|
2496
2565
|
release() {
|
|
2497
2566
|
this.semaphore.release();
|
|
@@ -2499,14 +2568,18 @@ var Mutex = class {
|
|
|
2499
2568
|
};
|
|
2500
2569
|
|
|
2501
2570
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/timeout.mjs
|
|
2502
|
-
|
|
2503
|
-
|
|
2504
|
-
|
|
2571
|
+
function timeout(ms) {
|
|
2572
|
+
return __async(this, null, function* () {
|
|
2573
|
+
yield delay(ms);
|
|
2574
|
+
throw new TimeoutError();
|
|
2575
|
+
});
|
|
2505
2576
|
}
|
|
2506
2577
|
|
|
2507
2578
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/withTimeout.mjs
|
|
2508
|
-
|
|
2509
|
-
return
|
|
2579
|
+
function withTimeout(run, ms) {
|
|
2580
|
+
return __async(this, null, function* () {
|
|
2581
|
+
return Promise.race([run(), timeout(ms)]);
|
|
2582
|
+
});
|
|
2510
2583
|
}
|
|
2511
2584
|
|
|
2512
2585
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/string/constantCase.mjs
|
|
@@ -2548,6 +2621,7 @@ var deburrMap = new Map(Object.entries({
|
|
|
2548
2621
|
\u017F: "s"
|
|
2549
2622
|
}));
|
|
2550
2623
|
function deburr(str) {
|
|
2624
|
+
var _a;
|
|
2551
2625
|
str = str.normalize("NFD");
|
|
2552
2626
|
let result = "";
|
|
2553
2627
|
for (let i = 0; i < str.length; i++) {
|
|
@@ -2555,7 +2629,7 @@ function deburr(str) {
|
|
|
2555
2629
|
if (char >= "\u0300" && char <= "\u036F" || char >= "\uFE20" && char <= "\uFE23") {
|
|
2556
2630
|
continue;
|
|
2557
2631
|
}
|
|
2558
|
-
result += deburrMap.get(char)
|
|
2632
|
+
result += (_a = deburrMap.get(char)) != null ? _a : char;
|
|
2559
2633
|
}
|
|
2560
2634
|
return result;
|
|
2561
2635
|
}
|
|
@@ -2719,13 +2793,15 @@ function attempt(func) {
|
|
|
2719
2793
|
}
|
|
2720
2794
|
|
|
2721
2795
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/util/attemptAsync.mjs
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2796
|
+
function attemptAsync(func) {
|
|
2797
|
+
return __async(this, null, function* () {
|
|
2798
|
+
try {
|
|
2799
|
+
const result = yield func();
|
|
2800
|
+
return [null, result];
|
|
2801
|
+
} catch (error) {
|
|
2802
|
+
return [error, null];
|
|
2803
|
+
}
|
|
2804
|
+
});
|
|
2729
2805
|
}
|
|
2730
2806
|
|
|
2731
2807
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/util/invariant.mjs
|
|
@@ -2754,10 +2830,11 @@ function isDeepKey(key) {
|
|
|
2754
2830
|
|
|
2755
2831
|
// node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/compat/_internal/toKey.mjs
|
|
2756
2832
|
function toKey(value) {
|
|
2833
|
+
var _a;
|
|
2757
2834
|
if (typeof value === "string" || typeof value === "symbol") {
|
|
2758
2835
|
return value;
|
|
2759
2836
|
}
|
|
2760
|
-
if (Object.is(value
|
|
2837
|
+
if (Object.is((_a = value == null ? void 0 : value.valueOf) == null ? void 0 : _a.call(value), -0)) {
|
|
2761
2838
|
return "-0";
|
|
2762
2839
|
}
|
|
2763
2840
|
return String(value);
|
|
@@ -2883,7 +2960,7 @@ function get(object, path, defaultValue) {
|
|
|
2883
2960
|
if (Array.isArray(path)) {
|
|
2884
2961
|
return getWithPath(object, path, defaultValue);
|
|
2885
2962
|
}
|
|
2886
|
-
if (Object.is(path
|
|
2963
|
+
if (Object.is(path == null ? void 0 : path.valueOf(), -0)) {
|
|
2887
2964
|
path = "-0";
|
|
2888
2965
|
} else {
|
|
2889
2966
|
path = String(path);
|
|
@@ -2986,7 +3063,7 @@ function updateWith(obj, path, updater, customizer) {
|
|
|
2986
3063
|
newValue = updateValue;
|
|
2987
3064
|
} else {
|
|
2988
3065
|
const objValue = current[key];
|
|
2989
|
-
const customizerResult = customizer
|
|
3066
|
+
const customizerResult = customizer == null ? void 0 : customizer(objValue, key, obj);
|
|
2990
3067
|
newValue = customizerResult !== void 0 ? customizerResult : isObject(objValue) ? objValue : isIndex(resolvedPath[i + 1]) ? [] : {};
|
|
2991
3068
|
}
|
|
2992
3069
|
assignValue(current, key, newValue);
|
|
@@ -3041,7 +3118,7 @@ function createViewRandId(prefix = "id_") {
|
|
|
3041
3118
|
return `${prefix}${Math.random().toString(36).substring(2, 16)}`;
|
|
3042
3119
|
}
|
|
3043
3120
|
function createTimeRandId(digits = 6) {
|
|
3044
|
-
const base = 10
|
|
3121
|
+
const base = __pow(10, digits - 1);
|
|
3045
3122
|
const range2 = 9 * base;
|
|
3046
3123
|
const int = Math.floor(Math.random() * range2) + base;
|
|
3047
3124
|
return `${Date.now()}${int}`;
|
|
@@ -3147,7 +3224,7 @@ function toBase64Url(s) {
|
|
|
3147
3224
|
} else {
|
|
3148
3225
|
try {
|
|
3149
3226
|
b64 = btoa(unescape(encodeURIComponent(s)));
|
|
3150
|
-
} catch {
|
|
3227
|
+
} catch (e) {
|
|
3151
3228
|
b64 = "";
|
|
3152
3229
|
}
|
|
3153
3230
|
}
|
|
@@ -3175,13 +3252,14 @@ function appendUrlParam(url, param) {
|
|
|
3175
3252
|
|
|
3176
3253
|
// src/ts/url/qn/index.ts
|
|
3177
3254
|
function getQnImg(src, option) {
|
|
3255
|
+
var _a;
|
|
3178
3256
|
if (!src || !option) return src;
|
|
3179
3257
|
if (src.startsWith("blob:")) return src;
|
|
3180
3258
|
if (src.includes(".svg")) return src;
|
|
3181
3259
|
const segs = [];
|
|
3182
3260
|
if (option.imageslim) segs.push("imageslim");
|
|
3183
3261
|
if (option.imageView2) segs.push(getImageView2(option.imageView2));
|
|
3184
|
-
const mogr = getImageMogr2(option.imageMogr2
|
|
3262
|
+
const mogr = getImageMogr2((_a = option.imageMogr2) != null ? _a : option);
|
|
3185
3263
|
if (mogr) segs.push(mogr);
|
|
3186
3264
|
if (option.watermark) segs.push(getWatermark2(option.watermark));
|
|
3187
3265
|
if (option.imageInfo) segs.push("imageInfo");
|
|
@@ -3282,7 +3360,7 @@ function toBase64Url2(s) {
|
|
|
3282
3360
|
} else {
|
|
3283
3361
|
try {
|
|
3284
3362
|
b64 = btoa(unescape(encodeURIComponent(s)));
|
|
3285
|
-
} catch {
|
|
3363
|
+
} catch (e) {
|
|
3286
3364
|
b64 = "";
|
|
3287
3365
|
}
|
|
3288
3366
|
}
|
|
@@ -3332,7 +3410,7 @@ function isLetter(s) {
|
|
|
3332
3410
|
return /^[a-zA-Z]*$/.test(s);
|
|
3333
3411
|
}
|
|
3334
3412
|
function isChinese(s) {
|
|
3335
|
-
const v = String(s
|
|
3413
|
+
const v = String(s != null ? s : "").trim();
|
|
3336
3414
|
return /^[\u4E00-\u9FA5]+$/.test(v);
|
|
3337
3415
|
}
|
|
3338
3416
|
function isDigits(s) {
|
|
@@ -3352,28 +3430,28 @@ function isNumeric(value, options) {
|
|
|
3352
3430
|
return reg.test(body);
|
|
3353
3431
|
}
|
|
3354
3432
|
function isMobilePhone(s) {
|
|
3355
|
-
const v = String(s
|
|
3433
|
+
const v = String(s != null ? s : "").trim();
|
|
3356
3434
|
return /^1[3-9]\d{9}$/.test(v);
|
|
3357
3435
|
}
|
|
3358
3436
|
function isLandline(s) {
|
|
3359
|
-
const v = String(s
|
|
3437
|
+
const v = String(s != null ? s : "").trim();
|
|
3360
3438
|
return /^0\d{2,3}-?\d{7,8}(?:-\d{1,6})?$/.test(v);
|
|
3361
3439
|
}
|
|
3362
3440
|
function isPhone(s) {
|
|
3363
3441
|
return isMobilePhone(s) || isLandline(s);
|
|
3364
3442
|
}
|
|
3365
3443
|
function isEmail(s) {
|
|
3366
|
-
const v = String(s
|
|
3444
|
+
const v = String(s != null ? s : "").trim();
|
|
3367
3445
|
if (v === "") return false;
|
|
3368
3446
|
const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)+$/;
|
|
3369
3447
|
return emailRegex.test(v);
|
|
3370
3448
|
}
|
|
3371
3449
|
function isChineseName(s) {
|
|
3372
|
-
const v = String(s
|
|
3450
|
+
const v = String(s != null ? s : "").trim();
|
|
3373
3451
|
return /^[\u4E00-\u9FA5·]{2,20}$/.test(v);
|
|
3374
3452
|
}
|
|
3375
3453
|
function isIdentityCard(code) {
|
|
3376
|
-
const v = String(code
|
|
3454
|
+
const v = String(code != null ? code : "").trim();
|
|
3377
3455
|
if (v === "") return false;
|
|
3378
3456
|
const isValidDate = (yyyymmdd) => {
|
|
3379
3457
|
const y = Number(yyyymmdd.slice(0, 4));
|
|
@@ -3408,7 +3486,7 @@ function isIdentityCard(code) {
|
|
|
3408
3486
|
return false;
|
|
3409
3487
|
}
|
|
3410
3488
|
function isPassport(s) {
|
|
3411
|
-
const t = String(s
|
|
3489
|
+
const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim();
|
|
3412
3490
|
if (t === "") return false;
|
|
3413
3491
|
if (/^[EG]\d{8}$/.test(t)) return true;
|
|
3414
3492
|
if (/^[DPS]\d{7}$/.test(t)) return true;
|
|
@@ -3417,29 +3495,29 @@ function isPassport(s) {
|
|
|
3417
3495
|
return false;
|
|
3418
3496
|
}
|
|
3419
3497
|
function isHKMOPermit(s) {
|
|
3420
|
-
const t = String(s
|
|
3498
|
+
const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
|
|
3421
3499
|
return /^[HM]\d{8,10}$/.test(t);
|
|
3422
3500
|
}
|
|
3423
3501
|
function isTaiwanPermit(s) {
|
|
3424
|
-
const t = String(s
|
|
3502
|
+
const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
|
|
3425
3503
|
if (/^\d{8}$/.test(t)) return true;
|
|
3426
3504
|
if (/^[A-Z]\d{8}$/.test(t)) return true;
|
|
3427
3505
|
if (/^\d{10}$/.test(t)) return true;
|
|
3428
3506
|
return false;
|
|
3429
3507
|
}
|
|
3430
3508
|
function isOfficerId(s) {
|
|
3431
|
-
const t = String(s
|
|
3509
|
+
const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
|
|
3432
3510
|
return /^[A-Z0-9]{7,18}$/.test(t);
|
|
3433
3511
|
}
|
|
3434
3512
|
function isSoldierId(s) {
|
|
3435
|
-
const t = String(s
|
|
3513
|
+
const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
|
|
3436
3514
|
return /^[A-Z0-9]{7,18}$/.test(t);
|
|
3437
3515
|
}
|
|
3438
3516
|
function isMilitaryId(s) {
|
|
3439
3517
|
return isOfficerId(s) || isSoldierId(s);
|
|
3440
3518
|
}
|
|
3441
3519
|
function isBankCard(s) {
|
|
3442
|
-
const t = String(s
|
|
3520
|
+
const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim();
|
|
3443
3521
|
if (!/^\d{12,19}$/.test(t)) return false;
|
|
3444
3522
|
let sum2 = 0;
|
|
3445
3523
|
let shouldDouble = false;
|
|
@@ -3455,7 +3533,7 @@ function isBankCard(s) {
|
|
|
3455
3533
|
return sum2 % 10 === 0;
|
|
3456
3534
|
}
|
|
3457
3535
|
function isLicensePlate(s) {
|
|
3458
|
-
const v = String(s
|
|
3536
|
+
const v = String(s != null ? s : "").trim().toUpperCase();
|
|
3459
3537
|
const prov = "\u4EAC\u6CAA\u6D25\u6E1D\u5180\u8C6B\u4E91\u8FBD\u9ED1\u6E58\u7696\u9C81\u65B0\u82CF\u6D59\u8D63\u9102\u6842\u7518\u664B\u8499\u9655\u5409\u95FD\u8D35\u9752\u85CF\u5DDD\u5B81\u743C\u7CA4";
|
|
3460
3538
|
const std = new RegExp(`^[${prov}][A-HJ-NP-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9\u6302\u5B66\u8B66\u6E2F\u6FB3]$`);
|
|
3461
3539
|
const ne1 = new RegExp(`^[${prov}][A-HJ-NP-Z][DF][A-HJ-NP-Z0-9]{5}$`);
|
|
@@ -3463,7 +3541,7 @@ function isLicensePlate(s) {
|
|
|
3463
3541
|
return std.test(v) || ne1.test(v) || ne2.test(v);
|
|
3464
3542
|
}
|
|
3465
3543
|
function isTaxID(code) {
|
|
3466
|
-
const v = String(code
|
|
3544
|
+
const v = String(code != null ? code : "").trim();
|
|
3467
3545
|
if (!/^[0-9A-HJ-NPQRTUWXY]{18}$/.test(v)) return false;
|
|
3468
3546
|
const charset = "0123456789ABCDEFGHJKLMNPQRTUWXY";
|
|
3469
3547
|
const weights = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];
|
|
@@ -3478,21 +3556,21 @@ function isTaxID(code) {
|
|
|
3478
3556
|
return v[17] === expected;
|
|
3479
3557
|
}
|
|
3480
3558
|
function isHexColor(s) {
|
|
3481
|
-
const v = String(s
|
|
3559
|
+
const v = String(s != null ? s : "").trim();
|
|
3482
3560
|
return /^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(v);
|
|
3483
3561
|
}
|
|
3484
3562
|
function isURL(s) {
|
|
3485
|
-
const v = String(s
|
|
3563
|
+
const v = String(s != null ? s : "").trim();
|
|
3486
3564
|
if (v === "") return false;
|
|
3487
3565
|
try {
|
|
3488
3566
|
const u = new URL(v);
|
|
3489
3567
|
return ["http:", "https:", "ftp:"].includes(u.protocol) && !!u.hostname;
|
|
3490
|
-
} catch {
|
|
3568
|
+
} catch (e) {
|
|
3491
3569
|
return false;
|
|
3492
3570
|
}
|
|
3493
3571
|
}
|
|
3494
3572
|
function isIPv4(s) {
|
|
3495
|
-
const v = String(s
|
|
3573
|
+
const v = String(s != null ? s : "").trim();
|
|
3496
3574
|
if (v === "") return false;
|
|
3497
3575
|
const parts = v.split(".");
|
|
3498
3576
|
if (parts.length !== 4) return false;
|
|
@@ -3505,7 +3583,7 @@ function isIPv4(s) {
|
|
|
3505
3583
|
return true;
|
|
3506
3584
|
}
|
|
3507
3585
|
function isIPv6(s) {
|
|
3508
|
-
const v = String(s
|
|
3586
|
+
const v = String(s != null ? s : "").trim();
|
|
3509
3587
|
if (v === "") return false;
|
|
3510
3588
|
const lastColon = v.lastIndexOf(":");
|
|
3511
3589
|
if (lastColon !== -1 && v.includes(".")) {
|
|
@@ -3537,7 +3615,7 @@ function isIP(s, version) {
|
|
|
3537
3615
|
return isIPv4(s) || isIPv6(s);
|
|
3538
3616
|
}
|
|
3539
3617
|
function isIPRange(s) {
|
|
3540
|
-
const v = String(s
|
|
3618
|
+
const v = String(s != null ? s : "").trim();
|
|
3541
3619
|
if (v === "") return false;
|
|
3542
3620
|
const parts = v.split("/");
|
|
3543
3621
|
if (parts.length !== 2) return false;
|
|
@@ -3552,15 +3630,15 @@ function isIPRange(s) {
|
|
|
3552
3630
|
return prefix >= 0 && prefix <= 32;
|
|
3553
3631
|
}
|
|
3554
3632
|
function isPortNumber(s) {
|
|
3555
|
-
const v = typeof s === "number" ? s : Number(String(s
|
|
3633
|
+
const v = typeof s === "number" ? s : Number(String(s != null ? s : "").trim());
|
|
3556
3634
|
return Number.isInteger(v) && v >= 0 && v <= 65535;
|
|
3557
3635
|
}
|
|
3558
3636
|
function isLatitude(s) {
|
|
3559
|
-
const v = typeof s === "number" ? s : Number(String(s
|
|
3637
|
+
const v = typeof s === "number" ? s : Number(String(s != null ? s : "").trim());
|
|
3560
3638
|
return Number.isFinite(v) && v >= -90 && v <= 90;
|
|
3561
3639
|
}
|
|
3562
3640
|
function isLongitude(s) {
|
|
3563
|
-
const v = typeof s === "number" ? s : Number(String(s
|
|
3641
|
+
const v = typeof s === "number" ? s : Number(String(s != null ? s : "").trim());
|
|
3564
3642
|
return Number.isFinite(v) && v >= -180 && v <= 180;
|
|
3565
3643
|
}
|
|
3566
3644
|
export {
|