@allahjs/utils 0.0.1

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.
Files changed (160) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +244 -0
  3. package/dist/.tsbuildinfo +1 -0
  4. package/dist/browser/cookieUtils/index.cjs +100 -0
  5. package/dist/browser/cookieUtils/index.cjs.map +1 -0
  6. package/dist/browser/cookieUtils/index.d.ts +55 -0
  7. package/dist/browser/domUtils/index.cjs +237 -0
  8. package/dist/browser/domUtils/index.cjs.map +1 -0
  9. package/dist/browser/domUtils/index.d.ts +116 -0
  10. package/dist/browser/index.cjs +12 -0
  11. package/dist/browser/index.cjs.map +1 -0
  12. package/dist/browser/index.d.ts +3 -0
  13. package/dist/browser/urlUtils/index.cjs +262 -0
  14. package/dist/browser/urlUtils/index.cjs.map +1 -0
  15. package/dist/browser/urlUtils/index.d.ts +72 -0
  16. package/dist/core/arrayUtils/index.cjs +109 -0
  17. package/dist/core/arrayUtils/index.cjs.map +1 -0
  18. package/dist/core/arrayUtils/index.d.ts +67 -0
  19. package/dist/core/asyncUtils/index.cjs +180 -0
  20. package/dist/core/asyncUtils/index.cjs.map +1 -0
  21. package/dist/core/asyncUtils/index.d.ts +80 -0
  22. package/dist/core/colorUtils/index.cjs +38 -0
  23. package/dist/core/colorUtils/index.cjs.map +1 -0
  24. package/dist/core/colorUtils/index.d.ts +10 -0
  25. package/dist/core/cryptoUtils/index.cjs +428 -0
  26. package/dist/core/cryptoUtils/index.cjs.map +1 -0
  27. package/dist/core/cryptoUtils/index.d.ts +132 -0
  28. package/dist/core/dateUtils/index.cjs +245 -0
  29. package/dist/core/dateUtils/index.cjs.map +1 -0
  30. package/dist/core/dateUtils/index.d.ts +117 -0
  31. package/dist/core/index.cjs +34 -0
  32. package/dist/core/index.cjs.map +1 -0
  33. package/dist/core/index.d.ts +118 -0
  34. package/dist/core/numberUtils/index.cjs +126 -0
  35. package/dist/core/numberUtils/index.cjs.map +1 -0
  36. package/dist/core/numberUtils/index.d.ts +91 -0
  37. package/dist/core/objectUtils/index.cjs +249 -0
  38. package/dist/core/objectUtils/index.cjs.map +1 -0
  39. package/dist/core/objectUtils/index.d.ts +91 -0
  40. package/dist/core/pageUtils/index.cjs +74 -0
  41. package/dist/core/pageUtils/index.cjs.map +1 -0
  42. package/dist/core/pageUtils/index.d.ts +52 -0
  43. package/dist/core/stringUtils/index.cjs +163 -0
  44. package/dist/core/stringUtils/index.cjs.map +1 -0
  45. package/dist/core/stringUtils/index.d.ts +69 -0
  46. package/dist/core/validationUtils/index.cjs +154 -0
  47. package/dist/core/validationUtils/index.cjs.map +1 -0
  48. package/dist/core/validationUtils/index.d.ts +87 -0
  49. package/dist/esm/browser/cookieUtils/index.d.ts +55 -0
  50. package/dist/esm/browser/cookieUtils/index.js +96 -0
  51. package/dist/esm/browser/cookieUtils/index.js.map +1 -0
  52. package/dist/esm/browser/domUtils/index.d.ts +116 -0
  53. package/dist/esm/browser/domUtils/index.js +233 -0
  54. package/dist/esm/browser/domUtils/index.js.map +1 -0
  55. package/dist/esm/browser/index.d.ts +3 -0
  56. package/dist/esm/browser/index.js +4 -0
  57. package/dist/esm/browser/index.js.map +1 -0
  58. package/dist/esm/browser/urlUtils/index.d.ts +72 -0
  59. package/dist/esm/browser/urlUtils/index.js +248 -0
  60. package/dist/esm/browser/urlUtils/index.js.map +1 -0
  61. package/dist/esm/core/arrayUtils/index.d.ts +67 -0
  62. package/dist/esm/core/arrayUtils/index.js +105 -0
  63. package/dist/esm/core/arrayUtils/index.js.map +1 -0
  64. package/dist/esm/core/asyncUtils/index.d.ts +80 -0
  65. package/dist/esm/core/asyncUtils/index.js +175 -0
  66. package/dist/esm/core/asyncUtils/index.js.map +1 -0
  67. package/dist/esm/core/colorUtils/index.d.ts +10 -0
  68. package/dist/esm/core/colorUtils/index.js +34 -0
  69. package/dist/esm/core/colorUtils/index.js.map +1 -0
  70. package/dist/esm/core/cryptoUtils/index.d.ts +132 -0
  71. package/dist/esm/core/cryptoUtils/index.js +424 -0
  72. package/dist/esm/core/cryptoUtils/index.js.map +1 -0
  73. package/dist/esm/core/dateUtils/index.d.ts +117 -0
  74. package/dist/esm/core/dateUtils/index.js +241 -0
  75. package/dist/esm/core/dateUtils/index.js.map +1 -0
  76. package/dist/esm/core/index.d.ts +118 -0
  77. package/dist/esm/core/index.js +30 -0
  78. package/dist/esm/core/index.js.map +1 -0
  79. package/dist/esm/core/numberUtils/index.d.ts +91 -0
  80. package/dist/esm/core/numberUtils/index.js +122 -0
  81. package/dist/esm/core/numberUtils/index.js.map +1 -0
  82. package/dist/esm/core/objectUtils/index.d.ts +91 -0
  83. package/dist/esm/core/objectUtils/index.js +245 -0
  84. package/dist/esm/core/objectUtils/index.js.map +1 -0
  85. package/dist/esm/core/pageUtils/index.d.ts +52 -0
  86. package/dist/esm/core/pageUtils/index.js +66 -0
  87. package/dist/esm/core/pageUtils/index.js.map +1 -0
  88. package/dist/esm/core/stringUtils/index.d.ts +69 -0
  89. package/dist/esm/core/stringUtils/index.js +159 -0
  90. package/dist/esm/core/stringUtils/index.js.map +1 -0
  91. package/dist/esm/core/validationUtils/index.d.ts +87 -0
  92. package/dist/esm/core/validationUtils/index.js +150 -0
  93. package/dist/esm/core/validationUtils/index.js.map +1 -0
  94. package/dist/esm/index.d.ts +22 -0
  95. package/dist/esm/index.js +26 -0
  96. package/dist/esm/index.js.map +1 -0
  97. package/dist/esm/request/ReqQueue/index.js +59 -0
  98. package/dist/esm/request/ReqQueue/index.js.map +1 -0
  99. package/dist/esm/request/httpCode/index.js +49 -0
  100. package/dist/esm/request/httpCode/index.js.map +1 -0
  101. package/dist/esm/request/httpUtils/index.js +359 -0
  102. package/dist/esm/request/httpUtils/index.js.map +1 -0
  103. package/dist/esm/request/index.d.ts +15 -0
  104. package/dist/esm/request/index.js +166 -0
  105. package/dist/esm/request/index.js.map +1 -0
  106. package/dist/esm/request/typings/index.d.ts +184 -0
  107. package/dist/esm/request/uniRequest/index.js +62 -0
  108. package/dist/esm/request/uniRequest/index.js.map +1 -0
  109. package/dist/esm/types/data/index.d.ts +188 -0
  110. package/dist/esm/types/data/index.js +13 -0
  111. package/dist/esm/types/data/index.js.map +1 -0
  112. package/dist/esm/types/index.d.ts +1 -0
  113. package/dist/esm/types/index.js +2 -0
  114. package/dist/esm/types/index.js.map +1 -0
  115. package/dist/esm/uniapp/Tips/index.d.ts +295 -0
  116. package/dist/esm/uniapp/Tips/index.js +498 -0
  117. package/dist/esm/uniapp/Tips/index.js.map +1 -0
  118. package/dist/esm/uniapp/cloudUtils/index.d.ts +56 -0
  119. package/dist/esm/uniapp/cloudUtils/index.js +90 -0
  120. package/dist/esm/uniapp/cloudUtils/index.js.map +1 -0
  121. package/dist/esm/uniapp/index.d.ts +3 -0
  122. package/dist/esm/uniapp/index.js +4 -0
  123. package/dist/esm/uniapp/index.js.map +1 -0
  124. package/dist/esm/uniapp/uniUtils/index.d.ts +113 -0
  125. package/dist/esm/uniapp/uniUtils/index.js +199 -0
  126. package/dist/esm/uniapp/uniUtils/index.js.map +1 -0
  127. package/dist/index.cjs +88 -0
  128. package/dist/index.cjs.map +1 -0
  129. package/dist/index.d.ts +22 -0
  130. package/dist/request/ReqQueue/index.cjs +63 -0
  131. package/dist/request/ReqQueue/index.cjs.map +1 -0
  132. package/dist/request/httpCode/index.cjs +52 -0
  133. package/dist/request/httpCode/index.cjs.map +1 -0
  134. package/dist/request/httpUtils/index.cjs +365 -0
  135. package/dist/request/httpUtils/index.cjs.map +1 -0
  136. package/dist/request/index.cjs +170 -0
  137. package/dist/request/index.cjs.map +1 -0
  138. package/dist/request/index.d.ts +15 -0
  139. package/dist/request/typings/index.d.ts +184 -0
  140. package/dist/request/uniRequest/index.cjs +66 -0
  141. package/dist/request/uniRequest/index.cjs.map +1 -0
  142. package/dist/types/data/index.cjs +15 -0
  143. package/dist/types/data/index.cjs.map +1 -0
  144. package/dist/types/data/index.d.ts +188 -0
  145. package/dist/types/index.cjs +8 -0
  146. package/dist/types/index.cjs.map +1 -0
  147. package/dist/types/index.d.ts +1 -0
  148. package/dist/uniapp/Tips/index.cjs +521 -0
  149. package/dist/uniapp/Tips/index.cjs.map +1 -0
  150. package/dist/uniapp/Tips/index.d.ts +295 -0
  151. package/dist/uniapp/cloudUtils/index.cjs +92 -0
  152. package/dist/uniapp/cloudUtils/index.cjs.map +1 -0
  153. package/dist/uniapp/cloudUtils/index.d.ts +56 -0
  154. package/dist/uniapp/index.cjs +53 -0
  155. package/dist/uniapp/index.cjs.map +1 -0
  156. package/dist/uniapp/index.d.ts +3 -0
  157. package/dist/uniapp/uniUtils/index.cjs +213 -0
  158. package/dist/uniapp/uniUtils/index.cjs.map +1 -0
  159. package/dist/uniapp/uniUtils/index.d.ts +113 -0
  160. package/package.json +129 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/browser/urlUtils/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import { IOptions2 } from '../../types/data/index.js';
2
+
3
+ /**
4
+ * 数组工具函数
5
+ */
6
+
7
+ /**
8
+ * 数组工具对象
9
+ */
10
+ declare const arrayUtils: {
11
+ /**
12
+ * 数组去重
13
+ * @param arr 输入数组
14
+ * @returns 去重后的数组
15
+ */
16
+ unique<T>(arr: T[]): T[];
17
+ /**
18
+ * 数组分块
19
+ * @param arr 输入数组
20
+ * @param size 每块大小
21
+ * @returns 分块后的二维数组
22
+ */
23
+ chunk<T>(arr: T[], size: number): T[][];
24
+ /**
25
+ * 数组扁平化
26
+ * @param arr 输入数组
27
+ * @param depth 扁平化深度,默认为 1
28
+ * @returns 扁平化后的数组
29
+ */
30
+ flatten<T>(arr: any[], depth?: number): T[];
31
+ /**
32
+ * 数组洗牌
33
+ * @param arr 输入数组
34
+ * @returns 洗牌后的新数组
35
+ */
36
+ shuffle<T>(arr: T[]): T[];
37
+ /**
38
+ * 数组求交集
39
+ * @param arr1 数组1
40
+ * @param arr2 数组2
41
+ * @returns 交集数组
42
+ */
43
+ intersection<T>(arr1: T[], arr2: T[]): T[];
44
+ /**
45
+ * 数组求差集
46
+ * @param arr1 数组1
47
+ * @param arr2 数组2
48
+ * @returns 差集数组
49
+ */
50
+ difference<T>(arr1: T[], arr2: T[]): T[];
51
+ /**
52
+ * 数组分组
53
+ * @param arr 输入数组
54
+ * @param keyFn 分组键函数
55
+ * @returns 分组后的对象
56
+ */
57
+ groupBy<T, K extends string | number | symbol>(arr: T[], keyFn: (item: T) => K): Record<K, T[]>;
58
+ /**
59
+ * 从optList中筛选出目标对象
60
+ * @param s 需要筛选的目标字符串
61
+ * @param optList 目标数组
62
+ * @param key 数据的下标
63
+ */
64
+ getListId(s: string, optList: IOptions2[], key: string): any;
65
+ };
66
+
67
+ export { arrayUtils as default };
@@ -0,0 +1,105 @@
1
+ /**
2
+ * 数组工具函数
3
+ */
4
+ /**
5
+ * 数组工具对象
6
+ */
7
+ const arrayUtils = {
8
+ /**
9
+ * 数组去重
10
+ * @param arr 输入数组
11
+ * @returns 去重后的数组
12
+ */
13
+ unique(arr) {
14
+ return [...new Set(arr)];
15
+ },
16
+ /**
17
+ * 数组分块
18
+ * @param arr 输入数组
19
+ * @param size 每块大小
20
+ * @returns 分块后的二维数组
21
+ */
22
+ chunk(arr, size) {
23
+ const result = [];
24
+ for (let i = 0; i < arr.length; i += size) {
25
+ result.push(arr.slice(i, i + size));
26
+ }
27
+ return result;
28
+ },
29
+ /**
30
+ * 数组扁平化
31
+ * @param arr 输入数组
32
+ * @param depth 扁平化深度,默认为 1
33
+ * @returns 扁平化后的数组
34
+ */
35
+ flatten(arr, depth = 1) {
36
+ return depth > 0
37
+ ? arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? arrayUtils.flatten(val, depth - 1) : val), [])
38
+ : arr.slice();
39
+ },
40
+ /**
41
+ * 数组洗牌
42
+ * @param arr 输入数组
43
+ * @returns 洗牌后的新数组
44
+ */
45
+ shuffle(arr) {
46
+ const result = [...arr];
47
+ for (let i = result.length - 1; i > 0; i--) {
48
+ const j = Math.floor(Math.random() * (i + 1));
49
+ [result[i], result[j]] = [result[j], result[i]];
50
+ }
51
+ return result;
52
+ },
53
+ /**
54
+ * 数组求交集
55
+ * @param arr1 数组1
56
+ * @param arr2 数组2
57
+ * @returns 交集数组
58
+ */
59
+ intersection(arr1, arr2) {
60
+ return arr1.filter(item => arr2.includes(item));
61
+ },
62
+ /**
63
+ * 数组求差集
64
+ * @param arr1 数组1
65
+ * @param arr2 数组2
66
+ * @returns 差集数组
67
+ */
68
+ difference(arr1, arr2) {
69
+ return arr1.filter(item => !arr2.includes(item));
70
+ },
71
+ /**
72
+ * 数组分组
73
+ * @param arr 输入数组
74
+ * @param keyFn 分组键函数
75
+ * @returns 分组后的对象
76
+ */
77
+ groupBy(arr, keyFn) {
78
+ return arr.reduce((groups, item) => {
79
+ const key = keyFn(item);
80
+ if (!groups[key]) {
81
+ groups[key] = [];
82
+ }
83
+ groups[key].push(item);
84
+ return groups;
85
+ }, {});
86
+ },
87
+ /**
88
+ * 从optList中筛选出目标对象
89
+ * @param s 需要筛选的目标字符串
90
+ * @param optList 目标数组
91
+ * @param key 数据的下标
92
+ */
93
+ getListId(s, optList, key) {
94
+ if (optList.length === 0 || !s)
95
+ return null;
96
+ const classList = optList.filter(item => item.text === s);
97
+ if (classList.length > 0) {
98
+ return classList[0][key];
99
+ }
100
+ return null;
101
+ }
102
+ };
103
+
104
+ export { arrayUtils as default };
105
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/core/arrayUtils/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * 异步工具函数
3
+ */
4
+ /**
5
+ * 异步队列类
6
+ */
7
+ declare class AsyncQueue {
8
+ private queue;
9
+ private running;
10
+ /**
11
+ * 添加任务到队列
12
+ * @param task 异步任务
13
+ * @returns Promise
14
+ */
15
+ add<T>(task: () => Promise<T>): Promise<T>;
16
+ private process;
17
+ }
18
+ /**
19
+ * 异步工具对象
20
+ */
21
+ declare const asyncUtils: {
22
+ /**
23
+ * 延迟执行
24
+ * @param ms 延迟毫秒数
25
+ * @returns Promise
26
+ */
27
+ delay(ms: number): Promise<void>;
28
+ /**
29
+ * 超时控制
30
+ * @param promise Promise对象
31
+ * @param timeout 超时时间(毫秒)
32
+ * @param timeoutMessage 超时错误信息
33
+ * @returns 带超时控制的Promise
34
+ */
35
+ withTimeout<T>(promise: Promise<T>, timeout: number, timeoutMessage?: string): Promise<T>;
36
+ /**
37
+ * 重试机制
38
+ * @param fn 要重试的函数
39
+ * @param maxRetries 最大重试次数
40
+ * @param delayMs 重试间隔(毫秒)
41
+ * @returns Promise
42
+ */
43
+ retry<T>(fn: () => Promise<T>, maxRetries?: number, delayMs?: number): Promise<T>;
44
+ /**
45
+ * 并发控制
46
+ * @param tasks 任务数组
47
+ * @param concurrency 并发数
48
+ * @returns Promise数组结果
49
+ */
50
+ concurrent<T>(tasks: (() => Promise<T>)[], concurrency?: number): Promise<T[]>;
51
+ /**
52
+ * 防抖函数
53
+ * @param fn 要防抖的函数
54
+ * @param delay 延迟时间(毫秒)
55
+ * @returns 防抖后的函数
56
+ */
57
+ debounce<T extends (...args: any[]) => any>(fn: T, delay: number): (...args: Parameters<T>) => void;
58
+ /**
59
+ * 节流函数
60
+ * @param fn 要节流的函数
61
+ * @param interval 间隔时间(毫秒)
62
+ * @returns 节流后的函数
63
+ */
64
+ throttle<T extends (...args: any[]) => any>(fn: T, interval: number): (...args: Parameters<T>) => void;
65
+ /**
66
+ * 创建异步队列实例
67
+ * @returns AsyncQueue实例
68
+ */
69
+ createQueue(): AsyncQueue;
70
+ /**
71
+ * 缓存装饰器(基于Promise)
72
+ * @param fn 要缓存的异步函数
73
+ * @param keyFn 生成缓存键的函数
74
+ * @param ttl 缓存时间(毫秒),0表示永不过期
75
+ * @returns 带缓存的函数
76
+ */
77
+ memoizeAsync<T extends (...args: any[]) => Promise<any>>(fn: T, keyFn?: (...args: Parameters<T>) => string, ttl?: number): T;
78
+ };
79
+
80
+ export { AsyncQueue, asyncUtils as default };
@@ -0,0 +1,175 @@
1
+ /**
2
+ * 异步工具函数
3
+ */
4
+ /**
5
+ * 异步队列类
6
+ */
7
+ class AsyncQueue {
8
+ constructor() {
9
+ this.queue = [];
10
+ this.running = false;
11
+ }
12
+ /**
13
+ * 添加任务到队列
14
+ * @param task 异步任务
15
+ * @returns Promise
16
+ */
17
+ add(task) {
18
+ return new Promise((resolve, reject) => {
19
+ this.queue.push(async () => {
20
+ try {
21
+ const result = await task();
22
+ resolve(result);
23
+ }
24
+ catch (error) {
25
+ reject(error);
26
+ }
27
+ });
28
+ this.process();
29
+ });
30
+ }
31
+ async process() {
32
+ if (this.running || this.queue.length === 0)
33
+ return;
34
+ this.running = true;
35
+ while (this.queue.length > 0) {
36
+ const task = this.queue.shift();
37
+ await task();
38
+ }
39
+ this.running = false;
40
+ }
41
+ }
42
+ /**
43
+ * 异步工具对象
44
+ */
45
+ const asyncUtils = {
46
+ /**
47
+ * 延迟执行
48
+ * @param ms 延迟毫秒数
49
+ * @returns Promise
50
+ */
51
+ delay(ms) {
52
+ return new Promise(resolve => setTimeout(resolve, ms));
53
+ },
54
+ /**
55
+ * 超时控制
56
+ * @param promise Promise对象
57
+ * @param timeout 超时时间(毫秒)
58
+ * @param timeoutMessage 超时错误信息
59
+ * @returns 带超时控制的Promise
60
+ */
61
+ withTimeout(promise, timeout, timeoutMessage = 'Operation timed out') {
62
+ return Promise.race([
63
+ promise,
64
+ new Promise((_, reject) => setTimeout(() => reject(new Error(timeoutMessage)), timeout))
65
+ ]);
66
+ },
67
+ /**
68
+ * 重试机制
69
+ * @param fn 要重试的函数
70
+ * @param maxRetries 最大重试次数
71
+ * @param delayMs 重试间隔(毫秒)
72
+ * @returns Promise
73
+ */
74
+ async retry(fn, maxRetries = 3, delayMs = 1000) {
75
+ let lastError;
76
+ for (let i = 0; i <= maxRetries; i++) {
77
+ try {
78
+ return await fn();
79
+ }
80
+ catch (error) {
81
+ lastError = error;
82
+ if (i < maxRetries) {
83
+ await this.delay(delayMs);
84
+ }
85
+ }
86
+ }
87
+ throw lastError;
88
+ },
89
+ /**
90
+ * 并发控制
91
+ * @param tasks 任务数组
92
+ * @param concurrency 并发数
93
+ * @returns Promise数组结果
94
+ */
95
+ async concurrent(tasks, concurrency = 3) {
96
+ const results = [];
97
+ const executing = [];
98
+ for (const [index, task] of tasks.entries()) {
99
+ const promise = task().then(result => {
100
+ results[index] = result;
101
+ });
102
+ executing.push(promise);
103
+ if (executing.length >= concurrency) {
104
+ await Promise.race(executing);
105
+ executing.splice(executing.findIndex(p => p === promise), 1);
106
+ }
107
+ }
108
+ await Promise.all(executing);
109
+ return results;
110
+ },
111
+ /**
112
+ * 防抖函数
113
+ * @param fn 要防抖的函数
114
+ * @param delay 延迟时间(毫秒)
115
+ * @returns 防抖后的函数
116
+ */
117
+ debounce(fn, delay) {
118
+ let timeoutId;
119
+ return (...args) => {
120
+ clearTimeout(timeoutId);
121
+ timeoutId = setTimeout(() => fn(...args), delay);
122
+ };
123
+ },
124
+ /**
125
+ * 节流函数
126
+ * @param fn 要节流的函数
127
+ * @param interval 间隔时间(毫秒)
128
+ * @returns 节流后的函数
129
+ */
130
+ throttle(fn, interval) {
131
+ let lastTime = 0;
132
+ return (...args) => {
133
+ const now = Date.now();
134
+ if (now - lastTime >= interval) {
135
+ lastTime = now;
136
+ fn(...args);
137
+ }
138
+ };
139
+ },
140
+ /**
141
+ * 创建异步队列实例
142
+ * @returns AsyncQueue实例
143
+ */
144
+ createQueue() {
145
+ return new AsyncQueue();
146
+ },
147
+ /**
148
+ * 缓存装饰器(基于Promise)
149
+ * @param fn 要缓存的异步函数
150
+ * @param keyFn 生成缓存键的函数
151
+ * @param ttl 缓存时间(毫秒),0表示永不过期
152
+ * @returns 带缓存的函数
153
+ */
154
+ memoizeAsync(fn, keyFn = (...args) => JSON.stringify(args), ttl = 0) {
155
+ const cache = new Map();
156
+ return ((...args) => {
157
+ const key = keyFn(...args);
158
+ const cached = cache.get(key);
159
+ if (cached && (ttl === 0 || Date.now() < cached.expiry)) {
160
+ return Promise.resolve(cached.value);
161
+ }
162
+ const promise = fn(...args);
163
+ promise.then(result => {
164
+ cache.set(key, {
165
+ value: result,
166
+ expiry: ttl > 0 ? Date.now() + ttl : Infinity
167
+ });
168
+ });
169
+ return promise;
170
+ });
171
+ }
172
+ };
173
+
174
+ export { AsyncQueue, asyncUtils as default };
175
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/core/asyncUtils/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ declare const colorUtils: {
2
+ /**
3
+ * 从颜色数组中获取颜色
4
+ * @param index 颜色数组下标
5
+ * @returns 颜色值
6
+ */
7
+ getColor(index: number): string;
8
+ };
9
+
10
+ export { colorUtils as default };
@@ -0,0 +1,34 @@
1
+ /**
2
+ * 常用颜色
3
+ */
4
+ const binColor = [
5
+ '#5470c6',
6
+ '#fd6f6f',
7
+ '#7aad62',
8
+ '#7ed3f4',
9
+ '#91c7ae',
10
+ '#ff915a',
11
+ '#a868c5',
12
+ '#fa541c',
13
+ '#ffa940',
14
+ '#ffc53d',
15
+ '#d4b106',
16
+ '#7cb305',
17
+ '#08979c',
18
+ '#1d39c4',
19
+ '#eb2f96',
20
+ '#ffdc60'
21
+ ];
22
+ const colorUtils = {
23
+ /**
24
+ * 从颜色数组中获取颜色
25
+ * @param index 颜色数组下标
26
+ * @returns 颜色值
27
+ */
28
+ getColor(index) {
29
+ return binColor[index % binColor.length];
30
+ }
31
+ };
32
+
33
+ export { colorUtils as default };
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/core/colorUtils/index.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;AAEG;AACH,MAAM,QAAQ,GAAG;IACf,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT;CACD;AAED,MAAM,UAAU,GAAG;AACjB;;;;AAIG;AACH,IAAA,QAAQ,CAAC,KAAa,EAAA;QACpB,OAAO,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC1C;;;;;"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * 加密工具类
3
+ * 提供 UUID 生成、MD5 哈希、RSA 加密解密、AES 对称加密等功能
4
+ */
5
+ declare const cryptoUtils: {
6
+ /**
7
+ * 生成 UUID v4
8
+ * @returns {Promise<string>} 返回一个随机生成的 UUID v4 字符串
9
+ * @example
10
+ * ```typescript
11
+ * const uuid = await cryptoUtils.uuid();
12
+ * console.log(uuid); // "550e8400e29b41d4a716446655440000"
13
+ * ```
14
+ */
15
+ uuid(): Promise<string>;
16
+ /**
17
+ * 生成字符串的 MD5 哈希值
18
+ * @param {string} input - 需要进行 MD5 加密的输入字符串
19
+ * @param {string} [salt] - 可选的盐值,用于增强安全性
20
+ * @returns {string} 返回 MD5 哈希值的十六进制字符串
21
+ * @example
22
+ * ```typescript
23
+ * // 基础 MD5
24
+ * const hash1 = cryptoUtils.md5('hello world');
25
+ * console.log(hash1); // "5d41402abc4b2a76b9719d911017c592"
26
+ *
27
+ * // 带盐值的 MD5
28
+ * const hash2 = cryptoUtils.md5('password', 'mysalt');
29
+ * console.log(hash2); // "a1b2c3d4e5f6..."
30
+ * ```
31
+ */
32
+ md5(input: string, salt?: string): string;
33
+ /**
34
+ * 生成简短的 UUID(8位)
35
+ * @returns {string} 返回一个8位的短 UUID 字符串
36
+ * @example
37
+ * ```typescript
38
+ * const shortUuid = cryptoUtils.miniUuid();
39
+ * console.log(shortUuid); // "a1b2c3d4"
40
+ * ```
41
+ */
42
+ miniUuid(): string;
43
+ /**
44
+ * 验证 UUID 格式是否正确
45
+ * @param {string} uuid - 需要验证的 UUID 字符串
46
+ * @returns {Promise<boolean>} 如果格式正确返回 true,否则返回 false
47
+ * @example
48
+ * ```typescript
49
+ * const isValid = await cryptoUtils.isValidUUID('550e8400-e29b-41d4-a716-446655440000');
50
+ * console.log(isValid); // true
51
+ * ```
52
+ */
53
+ isValidUUID(uuid: string): Promise<boolean>;
54
+ /**
55
+ * RSA 加密(跨环境兼容)
56
+ * 在 Node.js 环境中使用内置 crypto 模块,在浏览器环境中使用 jsencrypt
57
+ * @param {string} text - 需要加密的文本
58
+ * @param {string} publicKey - RSA 公钥(PEM 格式)
59
+ * @returns {Promise<string | false>} 返回加密后的 Base64 字符串,失败返回 false
60
+ * @example
61
+ * ```typescript
62
+ * const publicKey = `-----BEGIN PUBLIC KEY-----
63
+ * MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7vbqajDw4o...
64
+ * -----END PUBLIC KEY-----`;
65
+ *
66
+ * const encrypted = await cryptoUtils.rsaEncrypt('Hello World', publicKey);
67
+ * console.log(encrypted); // "base64 encrypted string"
68
+ * ```
69
+ */
70
+ rsaEncrypt(text: string, publicKey: string): Promise<string | false>;
71
+ /**
72
+ * RSA 解密(跨环境兼容)
73
+ * 在 Node.js 环境中使用内置 crypto 模块,在浏览器环境中使用 jsencrypt
74
+ * @param {string} encryptedText - 需要解密的 Base64 字符串
75
+ * @param {string} privateKey - RSA 私钥(PEM 格式)
76
+ * @returns {Promise<string | false>} 返回解密后的原文,失败返回 false
77
+ * @example
78
+ * ```typescript
79
+ * const privateKey = `-----BEGIN PRIVATE KEY-----
80
+ * MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAL...
81
+ * -----END PRIVATE KEY-----`;
82
+ *
83
+ * const decrypted = await cryptoUtils.rsaDecrypt(encryptedText, privateKey);
84
+ * console.log(decrypted); // "Hello World"
85
+ * ```
86
+ */
87
+ rsaDecrypt(encryptedText: string, privateKey: string): Promise<string | false>;
88
+ /**
89
+ * 生成 RSA 密钥对(跨环境兼容)
90
+ * 在 Node.js 环境中使用内置 crypto 模块,在浏览器环境中使用 jsencrypt
91
+ * @param {number} [keySize=1024] - 密钥长度,默认 1024 位
92
+ * @returns {Promise<{ publicKey: string; privateKey: string } | null>} 返回包含公钥和私钥的对象,失败返回 null
93
+ * @example
94
+ * ```typescript
95
+ * const keyPair = await cryptoUtils.generateRSAKeyPair(2048);
96
+ * if (keyPair) {
97
+ * console.log(keyPair.publicKey); // "-----BEGIN PUBLIC KEY-----..."
98
+ * console.log(keyPair.privateKey); // "-----BEGIN PRIVATE KEY-----..."
99
+ * }
100
+ * ```
101
+ */
102
+ generateRSAKeyPair(keySize?: number): Promise<{
103
+ publicKey: string;
104
+ privateKey: string;
105
+ } | null>;
106
+ /**
107
+ * AES 加密(使用字符串密钥)
108
+ * @param {string} text - 需要加密的文本
109
+ * @param {string} key - 加密密钥(字符串)
110
+ * @returns {string} 返回加密后的文本(包含 IV 和密文)
111
+ * @example
112
+ * ```typescript
113
+ * const encrypted = cryptoUtils.aesEncrypt('Hello World', 'mySecretKey123');
114
+ * console.log(encrypted); // "iv:ciphertext"
115
+ * ```
116
+ */
117
+ aesEncrypt(text: string, key: string): string;
118
+ /**
119
+ * AES 解密(使用字符串密钥)
120
+ * @param {string} encryptedText - 需要解密的文本(包含 IV 和密文)
121
+ * @param {string} key - 解密密钥(字符串)
122
+ * @returns {string} 返回解密后的原文
123
+ * @example
124
+ * ```typescript
125
+ * const decrypted = cryptoUtils.aesDecrypt(encryptedText, 'mySecretKey123');
126
+ * console.log(decrypted); // "Hello World"
127
+ * ```
128
+ */
129
+ aesDecrypt(encryptedText: string, key: string): string;
130
+ };
131
+
132
+ export { cryptoUtils as default };