@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/index.cjs CHANGED
@@ -3,8 +3,23 @@ var __create = Object.create;
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
7
  var __getProtoOf = Object.getPrototypeOf;
7
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
+ var __pow = Math.pow;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
8
23
  var __export = (target, all) => {
9
24
  for (var name in all)
10
25
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -26,6 +41,27 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
41
  mod
27
42
  ));
28
43
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
44
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
45
+ var __async = (__this, __arguments, generator) => {
46
+ return new Promise((resolve, reject) => {
47
+ var fulfilled = (value) => {
48
+ try {
49
+ step(generator.next(value));
50
+ } catch (e) {
51
+ reject(e);
52
+ }
53
+ };
54
+ var rejected = (value) => {
55
+ try {
56
+ step(generator.throw(value));
57
+ } catch (e) {
58
+ reject(e);
59
+ }
60
+ };
61
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
62
+ step((generator = generator.apply(__this, __arguments)).next());
63
+ });
64
+ };
29
65
 
30
66
  // src/ts/index.ts
31
67
  var index_exports = {};
@@ -303,19 +339,23 @@ function arrayMove(list, fromIndex, toIndex) {
303
339
  }
304
340
 
305
341
  // src/ts/async/index.ts
306
- async function toAsync(p) {
307
- try {
308
- const data = await p;
309
- return [data, null];
310
- } catch (err) {
311
- return [null, err];
312
- }
342
+ function toAsync(p) {
343
+ return __async(this, null, function* () {
344
+ try {
345
+ const data = yield p;
346
+ return [data, null];
347
+ } catch (err) {
348
+ return [null, err];
349
+ }
350
+ });
313
351
  }
314
352
 
315
353
  // src/ts/bean/EventBus.ts
316
354
  var import_mitt = __toESM(require("mitt"), 1);
317
355
  var EventBus = class {
318
- _emitter = (0, import_mitt.default)();
356
+ constructor() {
357
+ __publicField(this, "_emitter", (0, import_mitt.default)());
358
+ }
319
359
  /** 订阅 */
320
360
  on(type, fn) {
321
361
  this._emitter.on(type, fn);
@@ -424,12 +464,12 @@ function withUnitPx(num) {
424
464
  return withUnit(num, "px");
425
465
  }
426
466
  function withDistance(m) {
427
- const n = Number(m ?? 0);
467
+ const n = Number(m != null ? m : 0);
428
468
  if (!Number.isFinite(n)) return "0m";
429
469
  return n >= 1e3 ? `${+(n / 1e3).toFixed(2)}km` : `${+n.toFixed(2)}m`;
430
470
  }
431
471
  function toThousandth(str) {
432
- const v = String(str ?? "").trim();
472
+ const v = String(str != null ? str : "").trim();
433
473
  if (v === "") return "";
434
474
  let sign = "";
435
475
  let num = v;
@@ -480,9 +520,10 @@ function toChineseNum(num) {
480
520
  return numInt < 0 ? `\u8D1F${res}` : res;
481
521
  }
482
522
  function toChineseCurrency(amount, opts = {}) {
483
- const dp = opts.precision ?? 2;
484
- const rm = opts.rm ?? import_bignumber.default.ROUND_HALF_UP;
485
- const yuan = opts.yuanChar ?? "\u5143";
523
+ var _a, _b, _c;
524
+ const dp = (_a = opts.precision) != null ? _a : 2;
525
+ const rm = (_b = opts.rm) != null ? _b : import_bignumber.default.ROUND_HALF_UP;
526
+ const yuan = (_c = opts.yuanChar) != null ? _c : "\u5143";
486
527
  if (amount === null || amount === void 0) return "";
487
528
  const bn = new import_bignumber.default(amount);
488
529
  if (!bn.isFinite()) return "";
@@ -667,11 +708,12 @@ function compact(arr) {
667
708
 
668
709
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/countBy.mjs
669
710
  function countBy(arr, mapper) {
711
+ var _a;
670
712
  const result = {};
671
713
  for (let i = 0; i < arr.length; i++) {
672
714
  const item = arr[i];
673
715
  const key = mapper(item);
674
- result[key] = (result[key] ?? 0) + 1;
716
+ result[key] = ((_a = result[key]) != null ? _a : 0) + 1;
675
717
  }
676
718
  return result;
677
719
  }
@@ -746,20 +788,22 @@ function fill(array, value, start = 0, end = array.length) {
746
788
 
747
789
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/semaphore.mjs
748
790
  var Semaphore = class {
749
- capacity;
750
- available;
751
- deferredTasks = [];
752
791
  constructor(capacity) {
792
+ __publicField(this, "capacity");
793
+ __publicField(this, "available");
794
+ __publicField(this, "deferredTasks", []);
753
795
  this.capacity = capacity;
754
796
  this.available = capacity;
755
797
  }
756
- async acquire() {
757
- if (this.available > 0) {
758
- this.available--;
759
- return;
760
- }
761
- return new Promise((resolve) => {
762
- this.deferredTasks.push(resolve);
798
+ acquire() {
799
+ return __async(this, null, function* () {
800
+ if (this.available > 0) {
801
+ this.available--;
802
+ return;
803
+ }
804
+ return new Promise((resolve) => {
805
+ this.deferredTasks.push(resolve);
806
+ });
763
807
  });
764
808
  }
765
809
  release() {
@@ -777,23 +821,27 @@ var Semaphore = class {
777
821
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/limitAsync.mjs
778
822
  function limitAsync(callback, concurrency) {
779
823
  const semaphore = new Semaphore(concurrency);
780
- return async function(...args) {
781
- try {
782
- await semaphore.acquire();
783
- return await callback.apply(this, args);
784
- } finally {
785
- semaphore.release();
786
- }
824
+ return function(...args) {
825
+ return __async(this, null, function* () {
826
+ try {
827
+ yield semaphore.acquire();
828
+ return yield callback.apply(this, args);
829
+ } finally {
830
+ semaphore.release();
831
+ }
832
+ });
787
833
  };
788
834
  }
789
835
 
790
836
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/filterAsync.mjs
791
- async function filterAsync(array, predicate, options) {
792
- if (options?.concurrency != null) {
793
- predicate = limitAsync(predicate, options.concurrency);
794
- }
795
- const results = await Promise.all(array.map(predicate));
796
- return array.filter((_, index) => results[index]);
837
+ function filterAsync(array, predicate, options) {
838
+ return __async(this, null, function* () {
839
+ if ((options == null ? void 0 : options.concurrency) != null) {
840
+ predicate = limitAsync(predicate, options.concurrency);
841
+ }
842
+ const results = yield Promise.all(array.map(predicate));
843
+ return array.filter((_, index) => results[index]);
844
+ });
797
845
  }
798
846
 
799
847
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/flatten.mjs
@@ -820,12 +868,14 @@ function flatMap(arr, iteratee, depth = 1) {
820
868
  }
821
869
 
822
870
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/flatMapAsync.mjs
823
- async function flatMapAsync(array, callback, options) {
824
- if (options?.concurrency != null) {
825
- callback = limitAsync(callback, options.concurrency);
826
- }
827
- const results = await Promise.all(array.map(callback));
828
- return flatten(results);
871
+ function flatMapAsync(array, callback, options) {
872
+ return __async(this, null, function* () {
873
+ if ((options == null ? void 0 : options.concurrency) != null) {
874
+ callback = limitAsync(callback, options.concurrency);
875
+ }
876
+ const results = yield Promise.all(array.map(callback));
877
+ return flatten(results);
878
+ });
829
879
  }
830
880
 
831
881
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/flattenDeep.mjs
@@ -839,11 +889,13 @@ function flatMapDeep(arr, iteratee) {
839
889
  }
840
890
 
841
891
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/forEachAsync.mjs
842
- async function forEachAsync(array, callback, options) {
843
- if (options?.concurrency != null) {
844
- callback = limitAsync(callback, options.concurrency);
845
- }
846
- await Promise.all(array.map(callback));
892
+ function forEachAsync(array, callback, options) {
893
+ return __async(this, null, function* () {
894
+ if ((options == null ? void 0 : options.concurrency) != null) {
895
+ callback = limitAsync(callback, options.concurrency);
896
+ }
897
+ yield Promise.all(array.map(callback));
898
+ });
847
899
  }
848
900
 
849
901
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/forEachRight.mjs
@@ -929,7 +981,7 @@ function last(arr) {
929
981
 
930
982
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/mapAsync.mjs
931
983
  function mapAsync(array, callback, options) {
932
- if (options?.concurrency != null) {
984
+ if ((options == null ? void 0 : options.concurrency) != null) {
933
985
  callback = limitAsync(callback, options.concurrency);
934
986
  }
935
987
  return Promise.all(array.map(callback));
@@ -1045,17 +1097,19 @@ function pullAt(arr, indicesToRemove) {
1045
1097
  }
1046
1098
 
1047
1099
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/reduceAsync.mjs
1048
- async function reduceAsync(array, reducer, initialValue) {
1049
- let startIndex = 0;
1050
- if (initialValue == null) {
1051
- initialValue = array[0];
1052
- startIndex = 1;
1053
- }
1054
- let accumulator = initialValue;
1055
- for (let i = startIndex; i < array.length; i++) {
1056
- accumulator = await reducer(accumulator, array[i], i, array);
1057
- }
1058
- return accumulator;
1100
+ function reduceAsync(array, reducer, initialValue) {
1101
+ return __async(this, null, function* () {
1102
+ let startIndex = 0;
1103
+ if (initialValue == null) {
1104
+ initialValue = array[0];
1105
+ startIndex = 1;
1106
+ }
1107
+ let accumulator = initialValue;
1108
+ for (let i = startIndex; i < array.length; i++) {
1109
+ accumulator = yield reducer(accumulator, array[i], i, array);
1110
+ }
1111
+ return accumulator;
1112
+ });
1059
1113
  }
1060
1114
 
1061
1115
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/array/remove.mjs
@@ -1420,7 +1474,9 @@ function ary(func, n) {
1420
1474
  }
1421
1475
 
1422
1476
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/asyncNoop.mjs
1423
- async function asyncNoop() {
1477
+ function asyncNoop() {
1478
+ return __async(this, null, function* () {
1479
+ });
1424
1480
  }
1425
1481
 
1426
1482
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/before.mjs
@@ -1521,7 +1577,7 @@ function debounce(func, debounceMs, { signal, edges } = {}) {
1521
1577
  invoke();
1522
1578
  };
1523
1579
  const debounced = function(...args) {
1524
- if (signal?.aborted) {
1580
+ if (signal == null ? void 0 : signal.aborted) {
1525
1581
  return;
1526
1582
  }
1527
1583
  pendingThis = this;
@@ -1535,7 +1591,7 @@ function debounce(func, debounceMs, { signal, edges } = {}) {
1535
1591
  debounced.schedule = schedule;
1536
1592
  debounced.cancel = cancel;
1537
1593
  debounced.flush = flush;
1538
- signal?.addEventListener("abort", cancel, { once: true });
1594
+ signal == null ? void 0 : signal.addEventListener("abort", cancel, { once: true });
1539
1595
  return debounced;
1540
1596
  }
1541
1597
 
@@ -1660,47 +1716,50 @@ function delay(ms, { signal } = {}) {
1660
1716
  clearTimeout(timeoutId);
1661
1717
  abortError();
1662
1718
  };
1663
- if (signal?.aborted) {
1719
+ if (signal == null ? void 0 : signal.aborted) {
1664
1720
  return abortError();
1665
1721
  }
1666
1722
  const timeoutId = setTimeout(() => {
1667
- signal?.removeEventListener("abort", abortHandler);
1723
+ signal == null ? void 0 : signal.removeEventListener("abort", abortHandler);
1668
1724
  resolve();
1669
1725
  }, ms);
1670
- signal?.addEventListener("abort", abortHandler, { once: true });
1726
+ signal == null ? void 0 : signal.addEventListener("abort", abortHandler, { once: true });
1671
1727
  });
1672
1728
  }
1673
1729
 
1674
1730
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/retry.mjs
1675
1731
  var DEFAULT_DELAY = 0;
1676
1732
  var DEFAULT_RETRIES = Number.POSITIVE_INFINITY;
1677
- async function retry(func, _options) {
1678
- let delay$1;
1679
- let retries;
1680
- let signal;
1681
- if (typeof _options === "number") {
1682
- delay$1 = DEFAULT_DELAY;
1683
- retries = _options;
1684
- signal = void 0;
1685
- } else {
1686
- delay$1 = _options?.delay ?? DEFAULT_DELAY;
1687
- retries = _options?.retries ?? DEFAULT_RETRIES;
1688
- signal = _options?.signal;
1689
- }
1690
- let error;
1691
- for (let attempts = 0; attempts < retries; attempts++) {
1692
- if (signal?.aborted) {
1693
- throw error ?? new Error(`The retry operation was aborted due to an abort signal.`);
1733
+ function retry(func, _options) {
1734
+ return __async(this, null, function* () {
1735
+ var _a, _b;
1736
+ let delay$1;
1737
+ let retries;
1738
+ let signal;
1739
+ if (typeof _options === "number") {
1740
+ delay$1 = DEFAULT_DELAY;
1741
+ retries = _options;
1742
+ signal = void 0;
1743
+ } else {
1744
+ delay$1 = (_a = _options == null ? void 0 : _options.delay) != null ? _a : DEFAULT_DELAY;
1745
+ retries = (_b = _options == null ? void 0 : _options.retries) != null ? _b : DEFAULT_RETRIES;
1746
+ signal = _options == null ? void 0 : _options.signal;
1694
1747
  }
1695
- try {
1696
- return await func();
1697
- } catch (err) {
1698
- error = err;
1699
- const currentDelay = typeof delay$1 === "function" ? delay$1(attempts) : delay$1;
1700
- await delay(currentDelay);
1748
+ let error;
1749
+ for (let attempts = 0; attempts < retries; attempts++) {
1750
+ if (signal == null ? void 0 : signal.aborted) {
1751
+ throw error != null ? error : new Error(`The retry operation was aborted due to an abort signal.`);
1752
+ }
1753
+ try {
1754
+ return yield func();
1755
+ } catch (err) {
1756
+ error = err;
1757
+ const currentDelay = typeof delay$1 === "function" ? delay$1(attempts) : delay$1;
1758
+ yield delay(currentDelay);
1759
+ }
1701
1760
  }
1702
- }
1703
- throw error;
1761
+ throw error;
1762
+ });
1704
1763
  }
1705
1764
 
1706
1765
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/function/spread.mjs
@@ -1941,7 +2000,7 @@ function cloneDeepWith(obj, cloneValue) {
1941
2000
  return cloneDeepWithImpl(obj, void 0, obj, /* @__PURE__ */ new Map(), cloneValue);
1942
2001
  }
1943
2002
  function cloneDeepWithImpl(valueToClone, keyToClone, objectToClone, stack = /* @__PURE__ */ new Map(), cloneValue = void 0) {
1944
- const cloned = cloneValue?.(valueToClone, keyToClone, objectToClone, stack);
2003
+ const cloned = cloneValue == null ? void 0 : cloneValue(valueToClone, keyToClone, objectToClone, stack);
1945
2004
  if (cloned !== void 0) {
1946
2005
  return cloned;
1947
2006
  }
@@ -2253,7 +2312,7 @@ function mergeWith(target, source, merge2) {
2253
2312
 
2254
2313
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/object/omit.mjs
2255
2314
  function omit(obj, keys) {
2256
- const result = { ...obj };
2315
+ const result = __spreadValues({}, obj);
2257
2316
  for (let i = 0; i < keys.length; i++) {
2258
2317
  const key = keys[i];
2259
2318
  delete result[key];
@@ -2312,9 +2371,10 @@ function capitalize(str) {
2312
2371
  }
2313
2372
 
2314
2373
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/string/words.mjs
2315
- var CASE_SPLIT_PATTERN = /\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;
2374
+ 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");
2316
2375
  function words(str) {
2317
- return Array.from(str.match(CASE_SPLIT_PATTERN) ?? []);
2376
+ var _a;
2377
+ return Array.from((_a = str.match(CASE_SPLIT_PATTERN)) != null ? _a : []);
2318
2378
  }
2319
2379
 
2320
2380
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/string/camelCase.mjs
@@ -2367,6 +2427,7 @@ function toMerged(target, source) {
2367
2427
 
2368
2428
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.mjs
2369
2429
  function isPlainObject2(object) {
2430
+ var _a;
2370
2431
  if (typeof object !== "object") {
2371
2432
  return false;
2372
2433
  }
@@ -2381,7 +2442,7 @@ function isPlainObject2(object) {
2381
2442
  if (tag == null) {
2382
2443
  return false;
2383
2444
  }
2384
- const isTagReadonly = !Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)?.writable;
2445
+ const isTagReadonly = !((_a = Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)) == null ? void 0 : _a.writable);
2385
2446
  if (isTagReadonly) {
2386
2447
  return false;
2387
2448
  }
@@ -2439,7 +2500,7 @@ function isBoolean(x) {
2439
2500
 
2440
2501
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isBrowser.mjs
2441
2502
  function isBrowser() {
2442
- return typeof window !== "undefined" && window?.document != null;
2503
+ return typeof window !== "undefined" && (window == null ? void 0 : window.document) != null;
2443
2504
  }
2444
2505
 
2445
2506
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isBuffer.mjs
@@ -2522,7 +2583,7 @@ function areObjectsEqual(a, b, stack, areValuesEqual) {
2522
2583
  return a === b;
2523
2584
  }
2524
2585
  }
2525
- stack = stack ?? /* @__PURE__ */ new Map();
2586
+ stack = stack != null ? stack : /* @__PURE__ */ new Map();
2526
2587
  const aStack = stack.get(a);
2527
2588
  const bStack = stack.get(b);
2528
2589
  if (aStack != null && bStack != null) {
@@ -2665,7 +2726,7 @@ function isJSON(value) {
2665
2726
  try {
2666
2727
  JSON.parse(value);
2667
2728
  return true;
2668
- } catch {
2729
+ } catch (e) {
2669
2730
  return false;
2670
2731
  }
2671
2732
  }
@@ -2727,7 +2788,8 @@ function isNil(x) {
2727
2788
 
2728
2789
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isNode.mjs
2729
2790
  function isNode() {
2730
- return typeof process !== "undefined" && process?.versions?.node != null;
2791
+ var _a;
2792
+ return typeof process !== "undefined" && ((_a = process == null ? void 0 : process.versions) == null ? void 0 : _a.node) != null;
2731
2793
  }
2732
2794
 
2733
2795
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/predicate/isNotNil.mjs
@@ -2782,12 +2844,16 @@ function isWeakSet(value) {
2782
2844
 
2783
2845
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/mutex.mjs
2784
2846
  var Mutex = class {
2785
- semaphore = new Semaphore(1);
2847
+ constructor() {
2848
+ __publicField(this, "semaphore", new Semaphore(1));
2849
+ }
2786
2850
  get isLocked() {
2787
2851
  return this.semaphore.available === 0;
2788
2852
  }
2789
- async acquire() {
2790
- return this.semaphore.acquire();
2853
+ acquire() {
2854
+ return __async(this, null, function* () {
2855
+ return this.semaphore.acquire();
2856
+ });
2791
2857
  }
2792
2858
  release() {
2793
2859
  this.semaphore.release();
@@ -2795,14 +2861,18 @@ var Mutex = class {
2795
2861
  };
2796
2862
 
2797
2863
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/timeout.mjs
2798
- async function timeout(ms) {
2799
- await delay(ms);
2800
- throw new TimeoutError();
2864
+ function timeout(ms) {
2865
+ return __async(this, null, function* () {
2866
+ yield delay(ms);
2867
+ throw new TimeoutError();
2868
+ });
2801
2869
  }
2802
2870
 
2803
2871
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/promise/withTimeout.mjs
2804
- async function withTimeout(run, ms) {
2805
- return Promise.race([run(), timeout(ms)]);
2872
+ function withTimeout(run, ms) {
2873
+ return __async(this, null, function* () {
2874
+ return Promise.race([run(), timeout(ms)]);
2875
+ });
2806
2876
  }
2807
2877
 
2808
2878
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/string/constantCase.mjs
@@ -2844,6 +2914,7 @@ var deburrMap = new Map(Object.entries({
2844
2914
  \u017F: "s"
2845
2915
  }));
2846
2916
  function deburr(str) {
2917
+ var _a;
2847
2918
  str = str.normalize("NFD");
2848
2919
  let result = "";
2849
2920
  for (let i = 0; i < str.length; i++) {
@@ -2851,7 +2922,7 @@ function deburr(str) {
2851
2922
  if (char >= "\u0300" && char <= "\u036F" || char >= "\uFE20" && char <= "\uFE23") {
2852
2923
  continue;
2853
2924
  }
2854
- result += deburrMap.get(char) ?? char;
2925
+ result += (_a = deburrMap.get(char)) != null ? _a : char;
2855
2926
  }
2856
2927
  return result;
2857
2928
  }
@@ -3015,13 +3086,15 @@ function attempt(func) {
3015
3086
  }
3016
3087
 
3017
3088
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/util/attemptAsync.mjs
3018
- async function attemptAsync(func) {
3019
- try {
3020
- const result = await func();
3021
- return [null, result];
3022
- } catch (error) {
3023
- return [error, null];
3024
- }
3089
+ function attemptAsync(func) {
3090
+ return __async(this, null, function* () {
3091
+ try {
3092
+ const result = yield func();
3093
+ return [null, result];
3094
+ } catch (error) {
3095
+ return [error, null];
3096
+ }
3097
+ });
3025
3098
  }
3026
3099
 
3027
3100
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/util/invariant.mjs
@@ -3050,10 +3123,11 @@ function isDeepKey(key) {
3050
3123
 
3051
3124
  // node_modules/.pnpm/es-toolkit@1.42.0/node_modules/es-toolkit/dist/compat/_internal/toKey.mjs
3052
3125
  function toKey(value) {
3126
+ var _a;
3053
3127
  if (typeof value === "string" || typeof value === "symbol") {
3054
3128
  return value;
3055
3129
  }
3056
- if (Object.is(value?.valueOf?.(), -0)) {
3130
+ if (Object.is((_a = value == null ? void 0 : value.valueOf) == null ? void 0 : _a.call(value), -0)) {
3057
3131
  return "-0";
3058
3132
  }
3059
3133
  return String(value);
@@ -3179,7 +3253,7 @@ function get(object, path, defaultValue) {
3179
3253
  if (Array.isArray(path)) {
3180
3254
  return getWithPath(object, path, defaultValue);
3181
3255
  }
3182
- if (Object.is(path?.valueOf(), -0)) {
3256
+ if (Object.is(path == null ? void 0 : path.valueOf(), -0)) {
3183
3257
  path = "-0";
3184
3258
  } else {
3185
3259
  path = String(path);
@@ -3282,7 +3356,7 @@ function updateWith(obj, path, updater, customizer) {
3282
3356
  newValue = updateValue;
3283
3357
  } else {
3284
3358
  const objValue = current[key];
3285
- const customizerResult = customizer?.(objValue, key, obj);
3359
+ const customizerResult = customizer == null ? void 0 : customizer(objValue, key, obj);
3286
3360
  newValue = customizerResult !== void 0 ? customizerResult : isObject(objValue) ? objValue : isIndex(resolvedPath[i + 1]) ? [] : {};
3287
3361
  }
3288
3362
  assignValue(current, key, newValue);
@@ -3337,7 +3411,7 @@ function createViewRandId(prefix = "id_") {
3337
3411
  return `${prefix}${Math.random().toString(36).substring(2, 16)}`;
3338
3412
  }
3339
3413
  function createTimeRandId(digits = 6) {
3340
- const base = 10 ** (digits - 1);
3414
+ const base = __pow(10, digits - 1);
3341
3415
  const range2 = 9 * base;
3342
3416
  const int = Math.floor(Math.random() * range2) + base;
3343
3417
  return `${Date.now()}${int}`;
@@ -3443,7 +3517,7 @@ function toBase64Url(s) {
3443
3517
  } else {
3444
3518
  try {
3445
3519
  b64 = btoa(unescape(encodeURIComponent(s)));
3446
- } catch {
3520
+ } catch (e) {
3447
3521
  b64 = "";
3448
3522
  }
3449
3523
  }
@@ -3471,13 +3545,14 @@ function appendUrlParam(url, param) {
3471
3545
 
3472
3546
  // src/ts/url/qn/index.ts
3473
3547
  function getQnImg(src, option) {
3548
+ var _a;
3474
3549
  if (!src || !option) return src;
3475
3550
  if (src.startsWith("blob:")) return src;
3476
3551
  if (src.includes(".svg")) return src;
3477
3552
  const segs = [];
3478
3553
  if (option.imageslim) segs.push("imageslim");
3479
3554
  if (option.imageView2) segs.push(getImageView2(option.imageView2));
3480
- const mogr = getImageMogr2(option.imageMogr2 ?? option);
3555
+ const mogr = getImageMogr2((_a = option.imageMogr2) != null ? _a : option);
3481
3556
  if (mogr) segs.push(mogr);
3482
3557
  if (option.watermark) segs.push(getWatermark2(option.watermark));
3483
3558
  if (option.imageInfo) segs.push("imageInfo");
@@ -3578,7 +3653,7 @@ function toBase64Url2(s) {
3578
3653
  } else {
3579
3654
  try {
3580
3655
  b64 = btoa(unescape(encodeURIComponent(s)));
3581
- } catch {
3656
+ } catch (e) {
3582
3657
  b64 = "";
3583
3658
  }
3584
3659
  }
@@ -3628,7 +3703,7 @@ function isLetter(s) {
3628
3703
  return /^[a-zA-Z]*$/.test(s);
3629
3704
  }
3630
3705
  function isChinese(s) {
3631
- const v = String(s ?? "").trim();
3706
+ const v = String(s != null ? s : "").trim();
3632
3707
  return /^[\u4E00-\u9FA5]+$/.test(v);
3633
3708
  }
3634
3709
  function isDigits(s) {
@@ -3648,28 +3723,28 @@ function isNumeric(value, options) {
3648
3723
  return reg.test(body);
3649
3724
  }
3650
3725
  function isMobilePhone(s) {
3651
- const v = String(s ?? "").trim();
3726
+ const v = String(s != null ? s : "").trim();
3652
3727
  return /^1[3-9]\d{9}$/.test(v);
3653
3728
  }
3654
3729
  function isLandline(s) {
3655
- const v = String(s ?? "").trim();
3730
+ const v = String(s != null ? s : "").trim();
3656
3731
  return /^0\d{2,3}-?\d{7,8}(?:-\d{1,6})?$/.test(v);
3657
3732
  }
3658
3733
  function isPhone(s) {
3659
3734
  return isMobilePhone(s) || isLandline(s);
3660
3735
  }
3661
3736
  function isEmail(s) {
3662
- const v = String(s ?? "").trim();
3737
+ const v = String(s != null ? s : "").trim();
3663
3738
  if (v === "") return false;
3664
3739
  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])?)+$/;
3665
3740
  return emailRegex.test(v);
3666
3741
  }
3667
3742
  function isChineseName(s) {
3668
- const v = String(s ?? "").trim();
3743
+ const v = String(s != null ? s : "").trim();
3669
3744
  return /^[\u4E00-\u9FA5·]{2,20}$/.test(v);
3670
3745
  }
3671
3746
  function isIdentityCard(code) {
3672
- const v = String(code ?? "").trim();
3747
+ const v = String(code != null ? code : "").trim();
3673
3748
  if (v === "") return false;
3674
3749
  const isValidDate = (yyyymmdd) => {
3675
3750
  const y = Number(yyyymmdd.slice(0, 4));
@@ -3704,7 +3779,7 @@ function isIdentityCard(code) {
3704
3779
  return false;
3705
3780
  }
3706
3781
  function isPassport(s) {
3707
- const t = String(s ?? "").replace(/[-\s]/g, "").trim();
3782
+ const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim();
3708
3783
  if (t === "") return false;
3709
3784
  if (/^[EG]\d{8}$/.test(t)) return true;
3710
3785
  if (/^[DPS]\d{7}$/.test(t)) return true;
@@ -3713,29 +3788,29 @@ function isPassport(s) {
3713
3788
  return false;
3714
3789
  }
3715
3790
  function isHKMOPermit(s) {
3716
- const t = String(s ?? "").replace(/[-\s]/g, "").trim().toUpperCase();
3791
+ const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
3717
3792
  return /^[HM]\d{8,10}$/.test(t);
3718
3793
  }
3719
3794
  function isTaiwanPermit(s) {
3720
- const t = String(s ?? "").replace(/[-\s]/g, "").trim().toUpperCase();
3795
+ const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
3721
3796
  if (/^\d{8}$/.test(t)) return true;
3722
3797
  if (/^[A-Z]\d{8}$/.test(t)) return true;
3723
3798
  if (/^\d{10}$/.test(t)) return true;
3724
3799
  return false;
3725
3800
  }
3726
3801
  function isOfficerId(s) {
3727
- const t = String(s ?? "").replace(/[-\s]/g, "").trim().toUpperCase();
3802
+ const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
3728
3803
  return /^[A-Z0-9]{7,18}$/.test(t);
3729
3804
  }
3730
3805
  function isSoldierId(s) {
3731
- const t = String(s ?? "").replace(/[-\s]/g, "").trim().toUpperCase();
3806
+ const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim().toUpperCase();
3732
3807
  return /^[A-Z0-9]{7,18}$/.test(t);
3733
3808
  }
3734
3809
  function isMilitaryId(s) {
3735
3810
  return isOfficerId(s) || isSoldierId(s);
3736
3811
  }
3737
3812
  function isBankCard(s) {
3738
- const t = String(s ?? "").replace(/[-\s]/g, "").trim();
3813
+ const t = String(s != null ? s : "").replace(/[-\s]/g, "").trim();
3739
3814
  if (!/^\d{12,19}$/.test(t)) return false;
3740
3815
  let sum2 = 0;
3741
3816
  let shouldDouble = false;
@@ -3751,7 +3826,7 @@ function isBankCard(s) {
3751
3826
  return sum2 % 10 === 0;
3752
3827
  }
3753
3828
  function isLicensePlate(s) {
3754
- const v = String(s ?? "").trim().toUpperCase();
3829
+ const v = String(s != null ? s : "").trim().toUpperCase();
3755
3830
  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";
3756
3831
  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]$`);
3757
3832
  const ne1 = new RegExp(`^[${prov}][A-HJ-NP-Z][DF][A-HJ-NP-Z0-9]{5}$`);
@@ -3759,7 +3834,7 @@ function isLicensePlate(s) {
3759
3834
  return std.test(v) || ne1.test(v) || ne2.test(v);
3760
3835
  }
3761
3836
  function isTaxID(code) {
3762
- const v = String(code ?? "").trim();
3837
+ const v = String(code != null ? code : "").trim();
3763
3838
  if (!/^[0-9A-HJ-NPQRTUWXY]{18}$/.test(v)) return false;
3764
3839
  const charset = "0123456789ABCDEFGHJKLMNPQRTUWXY";
3765
3840
  const weights = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];
@@ -3774,21 +3849,21 @@ function isTaxID(code) {
3774
3849
  return v[17] === expected;
3775
3850
  }
3776
3851
  function isHexColor(s) {
3777
- const v = String(s ?? "").trim();
3852
+ const v = String(s != null ? s : "").trim();
3778
3853
  return /^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(v);
3779
3854
  }
3780
3855
  function isURL(s) {
3781
- const v = String(s ?? "").trim();
3856
+ const v = String(s != null ? s : "").trim();
3782
3857
  if (v === "") return false;
3783
3858
  try {
3784
3859
  const u = new URL(v);
3785
3860
  return ["http:", "https:", "ftp:"].includes(u.protocol) && !!u.hostname;
3786
- } catch {
3861
+ } catch (e) {
3787
3862
  return false;
3788
3863
  }
3789
3864
  }
3790
3865
  function isIPv4(s) {
3791
- const v = String(s ?? "").trim();
3866
+ const v = String(s != null ? s : "").trim();
3792
3867
  if (v === "") return false;
3793
3868
  const parts = v.split(".");
3794
3869
  if (parts.length !== 4) return false;
@@ -3801,7 +3876,7 @@ function isIPv4(s) {
3801
3876
  return true;
3802
3877
  }
3803
3878
  function isIPv6(s) {
3804
- const v = String(s ?? "").trim();
3879
+ const v = String(s != null ? s : "").trim();
3805
3880
  if (v === "") return false;
3806
3881
  const lastColon = v.lastIndexOf(":");
3807
3882
  if (lastColon !== -1 && v.includes(".")) {
@@ -3833,7 +3908,7 @@ function isIP(s, version) {
3833
3908
  return isIPv4(s) || isIPv6(s);
3834
3909
  }
3835
3910
  function isIPRange(s) {
3836
- const v = String(s ?? "").trim();
3911
+ const v = String(s != null ? s : "").trim();
3837
3912
  if (v === "") return false;
3838
3913
  const parts = v.split("/");
3839
3914
  if (parts.length !== 2) return false;
@@ -3848,15 +3923,15 @@ function isIPRange(s) {
3848
3923
  return prefix >= 0 && prefix <= 32;
3849
3924
  }
3850
3925
  function isPortNumber(s) {
3851
- const v = typeof s === "number" ? s : Number(String(s ?? "").trim());
3926
+ const v = typeof s === "number" ? s : Number(String(s != null ? s : "").trim());
3852
3927
  return Number.isInteger(v) && v >= 0 && v <= 65535;
3853
3928
  }
3854
3929
  function isLatitude(s) {
3855
- const v = typeof s === "number" ? s : Number(String(s ?? "").trim());
3930
+ const v = typeof s === "number" ? s : Number(String(s != null ? s : "").trim());
3856
3931
  return Number.isFinite(v) && v >= -90 && v <= 90;
3857
3932
  }
3858
3933
  function isLongitude(s) {
3859
- const v = typeof s === "number" ? s : Number(String(s ?? "").trim());
3934
+ const v = typeof s === "number" ? s : Number(String(s != null ? s : "").trim());
3860
3935
  return Number.isFinite(v) && v >= -180 && v <= 180;
3861
3936
  }
3862
3937
  // Annotate the CommonJS export names for ESM import in node: