@alibarbar/common 1.0.0

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 (210) hide show
  1. package/README.md +338 -0
  2. package/dist/algorithm.d.mts +66 -0
  3. package/dist/algorithm.d.ts +66 -0
  4. package/dist/algorithm.js +44 -0
  5. package/dist/algorithm.js.map +1 -0
  6. package/dist/algorithm.mjs +3 -0
  7. package/dist/algorithm.mjs.map +1 -0
  8. package/dist/array.d.mts +139 -0
  9. package/dist/array.d.ts +139 -0
  10. package/dist/array.js +84 -0
  11. package/dist/array.js.map +1 -0
  12. package/dist/array.mjs +3 -0
  13. package/dist/array.mjs.map +1 -0
  14. package/dist/chunk-27UDDVLZ.js +259 -0
  15. package/dist/chunk-27UDDVLZ.js.map +1 -0
  16. package/dist/chunk-2FFSQ573.mjs +138 -0
  17. package/dist/chunk-2FFSQ573.mjs.map +1 -0
  18. package/dist/chunk-4RGXV4SJ.js +106 -0
  19. package/dist/chunk-4RGXV4SJ.js.map +1 -0
  20. package/dist/chunk-56W6YECK.js +374 -0
  21. package/dist/chunk-56W6YECK.js.map +1 -0
  22. package/dist/chunk-5BGSUGTI.mjs +128 -0
  23. package/dist/chunk-5BGSUGTI.mjs.map +1 -0
  24. package/dist/chunk-7E6GELHJ.mjs +302 -0
  25. package/dist/chunk-7E6GELHJ.mjs.map +1 -0
  26. package/dist/chunk-7V5UQXIO.js +89 -0
  27. package/dist/chunk-7V5UQXIO.js.map +1 -0
  28. package/dist/chunk-A4SWQXX7.mjs +484 -0
  29. package/dist/chunk-A4SWQXX7.mjs.map +1 -0
  30. package/dist/chunk-ALDC6LRJ.mjs +85 -0
  31. package/dist/chunk-ALDC6LRJ.mjs.map +1 -0
  32. package/dist/chunk-BHCRFURU.js +491 -0
  33. package/dist/chunk-BHCRFURU.js.map +1 -0
  34. package/dist/chunk-D7CS5EKF.js +110 -0
  35. package/dist/chunk-D7CS5EKF.js.map +1 -0
  36. package/dist/chunk-DYBSRI7V.js +189 -0
  37. package/dist/chunk-DYBSRI7V.js.map +1 -0
  38. package/dist/chunk-F3LAGHPG.js +332 -0
  39. package/dist/chunk-F3LAGHPG.js.map +1 -0
  40. package/dist/chunk-HLDFI7R2.mjs +175 -0
  41. package/dist/chunk-HLDFI7R2.mjs.map +1 -0
  42. package/dist/chunk-HME2N3VY.mjs +354 -0
  43. package/dist/chunk-HME2N3VY.mjs.map +1 -0
  44. package/dist/chunk-I3L42475.js +145 -0
  45. package/dist/chunk-I3L42475.js.map +1 -0
  46. package/dist/chunk-JBLX27WD.mjs +240 -0
  47. package/dist/chunk-JBLX27WD.mjs.map +1 -0
  48. package/dist/chunk-JHZ7M2MR.mjs +133 -0
  49. package/dist/chunk-JHZ7M2MR.mjs.map +1 -0
  50. package/dist/chunk-JK2SE3I2.js +100 -0
  51. package/dist/chunk-JK2SE3I2.js.map +1 -0
  52. package/dist/chunk-JQZBPAPO.js +157 -0
  53. package/dist/chunk-JQZBPAPO.js.map +1 -0
  54. package/dist/chunk-JXYGC2C5.mjs +100 -0
  55. package/dist/chunk-JXYGC2C5.mjs.map +1 -0
  56. package/dist/chunk-KGFTD255.js +104 -0
  57. package/dist/chunk-KGFTD255.js.map +1 -0
  58. package/dist/chunk-LBHBNPNJ.mjs +148 -0
  59. package/dist/chunk-LBHBNPNJ.mjs.map +1 -0
  60. package/dist/chunk-LCXGZISK.js +158 -0
  61. package/dist/chunk-LCXGZISK.js.map +1 -0
  62. package/dist/chunk-LF4CILQS.mjs +87 -0
  63. package/dist/chunk-LF4CILQS.mjs.map +1 -0
  64. package/dist/chunk-MMR6XQNX.js +98 -0
  65. package/dist/chunk-MMR6XQNX.js.map +1 -0
  66. package/dist/chunk-NSSDYX2U.mjs +80 -0
  67. package/dist/chunk-NSSDYX2U.mjs.map +1 -0
  68. package/dist/chunk-O3O67R4I.js +143 -0
  69. package/dist/chunk-O3O67R4I.js.map +1 -0
  70. package/dist/chunk-OX5PLOWB.js +90 -0
  71. package/dist/chunk-OX5PLOWB.js.map +1 -0
  72. package/dist/chunk-PJ7UCTX4.mjs +362 -0
  73. package/dist/chunk-PJ7UCTX4.mjs.map +1 -0
  74. package/dist/chunk-QIBE7GVN.mjs +81 -0
  75. package/dist/chunk-QIBE7GVN.mjs.map +1 -0
  76. package/dist/chunk-QIOC54LQ.mjs +130 -0
  77. package/dist/chunk-QIOC54LQ.mjs.map +1 -0
  78. package/dist/chunk-QV6MIQ7H.mjs +328 -0
  79. package/dist/chunk-QV6MIQ7H.mjs.map +1 -0
  80. package/dist/chunk-TQN37HIN.js +94 -0
  81. package/dist/chunk-TQN37HIN.js.map +1 -0
  82. package/dist/chunk-XJTZDXSR.mjs +94 -0
  83. package/dist/chunk-XJTZDXSR.mjs.map +1 -0
  84. package/dist/chunk-XVUE53T3.js +361 -0
  85. package/dist/chunk-XVUE53T3.js.map +1 -0
  86. package/dist/chunk-Y364QIQH.js +139 -0
  87. package/dist/chunk-Y364QIQH.js.map +1 -0
  88. package/dist/chunk-YXM6Q4JS.mjs +94 -0
  89. package/dist/chunk-YXM6Q4JS.mjs.map +1 -0
  90. package/dist/chunk-ZDMFMUDR.js +309 -0
  91. package/dist/chunk-ZDMFMUDR.js.map +1 -0
  92. package/dist/chunk-ZVJ6NQUM.mjs +82 -0
  93. package/dist/chunk-ZVJ6NQUM.mjs.map +1 -0
  94. package/dist/color.d.mts +74 -0
  95. package/dist/color.d.ts +74 -0
  96. package/dist/color.js +40 -0
  97. package/dist/color.js.map +1 -0
  98. package/dist/color.mjs +3 -0
  99. package/dist/color.mjs.map +1 -0
  100. package/dist/crypto.d.mts +92 -0
  101. package/dist/crypto.d.ts +92 -0
  102. package/dist/crypto.js +60 -0
  103. package/dist/crypto.js.map +1 -0
  104. package/dist/crypto.mjs +3 -0
  105. package/dist/crypto.mjs.map +1 -0
  106. package/dist/data-structure.d.mts +213 -0
  107. package/dist/data-structure.d.ts +213 -0
  108. package/dist/data-structure.js +32 -0
  109. package/dist/data-structure.js.map +1 -0
  110. package/dist/data-structure.mjs +3 -0
  111. package/dist/data-structure.mjs.map +1 -0
  112. package/dist/date.d.mts +108 -0
  113. package/dist/date.d.ts +108 -0
  114. package/dist/date.js +72 -0
  115. package/dist/date.js.map +1 -0
  116. package/dist/date.mjs +3 -0
  117. package/dist/date.mjs.map +1 -0
  118. package/dist/dom.d.mts +92 -0
  119. package/dist/dom.d.ts +92 -0
  120. package/dist/dom.js +56 -0
  121. package/dist/dom.js.map +1 -0
  122. package/dist/dom.mjs +3 -0
  123. package/dist/dom.mjs.map +1 -0
  124. package/dist/file.d.mts +44 -0
  125. package/dist/file.d.ts +44 -0
  126. package/dist/file.js +32 -0
  127. package/dist/file.js.map +1 -0
  128. package/dist/file.mjs +3 -0
  129. package/dist/file.mjs.map +1 -0
  130. package/dist/i18n.d.mts +77 -0
  131. package/dist/i18n.d.ts +77 -0
  132. package/dist/i18n.js +40 -0
  133. package/dist/i18n.js.map +1 -0
  134. package/dist/i18n.mjs +3 -0
  135. package/dist/i18n.mjs.map +1 -0
  136. package/dist/index.d.mts +155 -0
  137. package/dist/index.d.ts +155 -0
  138. package/dist/index.js +839 -0
  139. package/dist/index.js.map +1 -0
  140. package/dist/index.mjs +22 -0
  141. package/dist/index.mjs.map +1 -0
  142. package/dist/network.d.mts +47 -0
  143. package/dist/network.d.ts +47 -0
  144. package/dist/network.js +28 -0
  145. package/dist/network.js.map +1 -0
  146. package/dist/network.mjs +3 -0
  147. package/dist/network.mjs.map +1 -0
  148. package/dist/number.d.mts +100 -0
  149. package/dist/number.d.ts +100 -0
  150. package/dist/number.js +56 -0
  151. package/dist/number.js.map +1 -0
  152. package/dist/number.mjs +3 -0
  153. package/dist/number.mjs.map +1 -0
  154. package/dist/object.d.mts +132 -0
  155. package/dist/object.d.ts +132 -0
  156. package/dist/object.js +80 -0
  157. package/dist/object.js.map +1 -0
  158. package/dist/object.mjs +3 -0
  159. package/dist/object.mjs.map +1 -0
  160. package/dist/performance.d.mts +85 -0
  161. package/dist/performance.d.ts +85 -0
  162. package/dist/performance.js +40 -0
  163. package/dist/performance.js.map +1 -0
  164. package/dist/performance.mjs +3 -0
  165. package/dist/performance.mjs.map +1 -0
  166. package/dist/storage.d.mts +176 -0
  167. package/dist/storage.d.ts +176 -0
  168. package/dist/storage.js +33 -0
  169. package/dist/storage.js.map +1 -0
  170. package/dist/storage.mjs +4 -0
  171. package/dist/storage.mjs.map +1 -0
  172. package/dist/string.d.mts +105 -0
  173. package/dist/string.d.ts +105 -0
  174. package/dist/string.js +68 -0
  175. package/dist/string.js.map +1 -0
  176. package/dist/string.mjs +3 -0
  177. package/dist/string.mjs.map +1 -0
  178. package/dist/tracking.d.mts +182 -0
  179. package/dist/tracking.d.ts +182 -0
  180. package/dist/tracking.js +52 -0
  181. package/dist/tracking.js.map +1 -0
  182. package/dist/tracking.mjs +3 -0
  183. package/dist/tracking.mjs.map +1 -0
  184. package/dist/transform.d.mts +53 -0
  185. package/dist/transform.d.ts +53 -0
  186. package/dist/transform.js +32 -0
  187. package/dist/transform.js.map +1 -0
  188. package/dist/transform.mjs +3 -0
  189. package/dist/transform.mjs.map +1 -0
  190. package/dist/upload-DzlQtUBc.d.mts +202 -0
  191. package/dist/upload-DzlQtUBc.d.ts +202 -0
  192. package/dist/upload.d.mts +1 -0
  193. package/dist/upload.d.ts +1 -0
  194. package/dist/upload.js +17 -0
  195. package/dist/upload.js.map +1 -0
  196. package/dist/upload.mjs +4 -0
  197. package/dist/upload.mjs.map +1 -0
  198. package/dist/url.d.mts +82 -0
  199. package/dist/url.d.ts +82 -0
  200. package/dist/url.js +44 -0
  201. package/dist/url.js.map +1 -0
  202. package/dist/url.mjs +3 -0
  203. package/dist/url.mjs.map +1 -0
  204. package/dist/validation.d.mts +83 -0
  205. package/dist/validation.d.ts +83 -0
  206. package/dist/validation.js +60 -0
  207. package/dist/validation.js.map +1 -0
  208. package/dist/validation.mjs +3 -0
  209. package/dist/validation.mjs.map +1 -0
  210. package/package.json +170 -0
@@ -0,0 +1,202 @@
1
+ /**
2
+ * 文件上传相关类型定义
3
+ */
4
+ /**
5
+ * 上传初始化请求参数
6
+ */
7
+ interface UploadInitRequest {
8
+ fileName: string;
9
+ fileSize: number;
10
+ fileMd5: string;
11
+ chunkSize?: number;
12
+ }
13
+ /**
14
+ * 上传初始化响应
15
+ */
16
+ interface UploadInitResponse {
17
+ taskId: string;
18
+ totalChunks: number;
19
+ existingChunks: number[];
20
+ instantUpload: boolean;
21
+ fileUrl?: string;
22
+ chunkSize: number;
23
+ }
24
+ /**
25
+ * 分片上传响应
26
+ */
27
+ interface ChunkUploadResponse {
28
+ chunkIndex: number;
29
+ success: boolean;
30
+ message: string;
31
+ chunkMd5: string;
32
+ }
33
+ /**
34
+ * 完成上传响应
35
+ */
36
+ interface CompleteUploadResponse {
37
+ taskId: string;
38
+ fileUrl: string;
39
+ fileName: string;
40
+ fileSize: number;
41
+ fileMd5: string;
42
+ success: boolean;
43
+ message: string;
44
+ }
45
+ /**
46
+ * 上传进度信息
47
+ */
48
+ interface UploadProgress {
49
+ taskId: string;
50
+ fileName: string;
51
+ fileSize: number;
52
+ totalChunks: number;
53
+ uploadedChunks: number;
54
+ percentage: number;
55
+ status: string;
56
+ uploadedSize: number;
57
+ }
58
+ /**
59
+ * API响应包装类型
60
+ */
61
+ interface ApiResponse<T> {
62
+ code: number;
63
+ message: string;
64
+ data: T;
65
+ timestamp: number;
66
+ }
67
+ /**
68
+ * 上传配置选项
69
+ */
70
+ interface UploadOptions {
71
+ /** 分片大小(字节),默认 2MB */
72
+ chunkSize?: number;
73
+ /** 并发上传数量,默认 3 */
74
+ concurrency?: number;
75
+ /** 重试次数,默认 3 */
76
+ retryCount?: number;
77
+ /** 重试延迟(毫秒),默认 1000 */
78
+ retryDelay?: number;
79
+ /** 基础API地址 */
80
+ baseURL?: string;
81
+ /** 请求头 */
82
+ headers?: Record<string, string>;
83
+ /** 上传进度回调 */
84
+ onProgress?: (progress: UploadProgress) => void;
85
+ /** 上传完成回调 */
86
+ onComplete?: (result: CompleteUploadResponse) => void;
87
+ /** 上传错误回调 */
88
+ onError?: (error: Error) => void;
89
+ }
90
+ /**
91
+ * 上传状态
92
+ */
93
+ declare enum UploadStatus {
94
+ PENDING = "pending",
95
+ UPLOADING = "uploading",
96
+ PAUSED = "paused",
97
+ COMPLETED = "completed",
98
+ FAILED = "failed",
99
+ CANCELLED = "cancelled"
100
+ }
101
+ /**
102
+ * 文件分片信息
103
+ */
104
+ interface ChunkInfo {
105
+ index: number;
106
+ start: number;
107
+ end: number;
108
+ blob: Blob;
109
+ md5?: string;
110
+ }
111
+
112
+ /**
113
+ * 文件分片上传工具类
114
+ * 支持分片上传、断点续传、进度追踪
115
+ */
116
+
117
+ /**
118
+ * 文件上传器类
119
+ */
120
+ declare class ChunkUploader {
121
+ private file;
122
+ private options;
123
+ private taskId;
124
+ private chunks;
125
+ private uploadedChunks;
126
+ private status;
127
+ private abortController;
128
+ constructor(file: File, options?: UploadOptions);
129
+ /**
130
+ * 初始化上传
131
+ */
132
+ private initUpload;
133
+ /**
134
+ * 计算文件MD5(简化版,实际应该使用spark-md5等库)
135
+ */
136
+ private calculateFileMD5;
137
+ /**
138
+ * 准备分片
139
+ */
140
+ private prepareChunks;
141
+ /**
142
+ * 获取已上传的分片列表
143
+ */
144
+ private getUploadedChunks;
145
+ /**
146
+ * 上传单个分片
147
+ */
148
+ private uploadChunk;
149
+ /**
150
+ * 并发上传分片
151
+ */
152
+ private uploadChunksConcurrently;
153
+ /**
154
+ * 完成上传
155
+ */
156
+ private completeUpload;
157
+ /**
158
+ * 更新上传进度
159
+ */
160
+ private updateProgress;
161
+ /**
162
+ * 开始上传
163
+ */
164
+ upload(): Promise<CompleteUploadResponse>;
165
+ /**
166
+ * 暂停上传
167
+ */
168
+ pause(): void;
169
+ /**
170
+ * 恢复上传
171
+ */
172
+ resume(): Promise<CompleteUploadResponse>;
173
+ /**
174
+ * 取消上传
175
+ */
176
+ cancel(): Promise<void>;
177
+ /**
178
+ * 获取当前状态
179
+ */
180
+ getStatus(): UploadStatus;
181
+ /**
182
+ * 获取任务ID
183
+ */
184
+ getTaskId(): string | null;
185
+ /**
186
+ * HTTP请求封装
187
+ */
188
+ private request;
189
+ /**
190
+ * 延迟函数
191
+ */
192
+ private delay;
193
+ }
194
+ /**
195
+ * 创建文件上传器实例
196
+ * @param file - 文件对象
197
+ * @param options - 上传配置选项
198
+ * @returns 上传器实例
199
+ */
200
+ declare function createUploader(file: File, options?: UploadOptions): ChunkUploader;
201
+
202
+ export { type ApiResponse as A, ChunkUploader as C, type UploadInitRequest as U, type UploadInitResponse as a, type ChunkUploadResponse as b, createUploader as c, type CompleteUploadResponse as d, type UploadProgress as e, type UploadOptions as f, UploadStatus as g, type ChunkInfo as h };
@@ -0,0 +1 @@
1
+ export { C as ChunkUploader, c as createUploader } from './upload-DzlQtUBc.mjs';
@@ -0,0 +1 @@
1
+ export { C as ChunkUploader, c as createUploader } from './upload-DzlQtUBc.js';
package/dist/upload.js ADDED
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var chunkF3LAGHPG_js = require('./chunk-F3LAGHPG.js');
4
+ require('./chunk-7V5UQXIO.js');
5
+
6
+
7
+
8
+ Object.defineProperty(exports, "ChunkUploader", {
9
+ enumerable: true,
10
+ get: function () { return chunkF3LAGHPG_js.ChunkUploader; }
11
+ });
12
+ Object.defineProperty(exports, "createUploader", {
13
+ enumerable: true,
14
+ get: function () { return chunkF3LAGHPG_js.createUploader; }
15
+ });
16
+ //# sourceMappingURL=upload.js.map
17
+ //# sourceMappingURL=upload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"upload.js"}
@@ -0,0 +1,4 @@
1
+ export { ChunkUploader, createUploader } from './chunk-QV6MIQ7H.mjs';
2
+ import './chunk-ZVJ6NQUM.mjs';
3
+ //# sourceMappingURL=upload.mjs.map
4
+ //# sourceMappingURL=upload.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"upload.mjs"}
package/dist/url.d.mts ADDED
@@ -0,0 +1,82 @@
1
+ /**
2
+ * URL工具函数
3
+ */
4
+ /**
5
+ * URL解析结果
6
+ */
7
+ interface ParsedUrl {
8
+ protocol: string;
9
+ host: string;
10
+ hostname: string;
11
+ port: string;
12
+ pathname: string;
13
+ search: string;
14
+ hash: string;
15
+ origin: string;
16
+ }
17
+ /**
18
+ * URL解析
19
+ * @param url - URL字符串
20
+ * @returns 解析后的URL对象
21
+ */
22
+ declare function parseUrl(url: string): ParsedUrl;
23
+ /**
24
+ * URL构建
25
+ * @param parts - URL组成部分
26
+ * @returns 构建后的URL字符串
27
+ */
28
+ declare function buildUrl(parts: {
29
+ protocol?: string;
30
+ host?: string;
31
+ pathname?: string;
32
+ search?: string;
33
+ hash?: string;
34
+ }): string;
35
+ /**
36
+ * 获取查询参数
37
+ * @param url - URL字符串,默认为当前页面URL
38
+ * @returns 查询参数对象
39
+ */
40
+ declare function getQueryParams(url?: string): Record<string, string>;
41
+ /**
42
+ * 设置查询参数
43
+ * @param url - URL字符串
44
+ * @param params - 查询参数对象
45
+ * @returns 设置后的URL字符串
46
+ */
47
+ declare function setQueryParams(url: string, params: Record<string, string | number | boolean>): string;
48
+ /**
49
+ * 移除查询参数
50
+ * @param url - URL字符串
51
+ * @param keys - 要移除的查询参数键数组
52
+ * @returns 移除后的URL字符串
53
+ */
54
+ declare function removeQueryParams(url: string, keys: string[]): string;
55
+ /**
56
+ * 更新查询参数
57
+ * @param url - URL字符串
58
+ * @param params - 要更新的查询参数对象
59
+ * @returns 更新后的URL字符串
60
+ */
61
+ declare function updateQueryParams(url: string, params: Record<string, string | number | boolean | null>): string;
62
+ /**
63
+ * 判断是否为绝对URL
64
+ * @param url - URL字符串
65
+ * @returns 是否为绝对URL
66
+ */
67
+ declare function isAbsoluteUrl(url: string): boolean;
68
+ /**
69
+ * URL拼接
70
+ * @param baseUrl - 基础URL
71
+ * @param ...paths - 路径片段
72
+ * @returns 拼接后的URL
73
+ */
74
+ declare function joinUrl(baseUrl: string, ...paths: string[]): string;
75
+ /**
76
+ * URL标准化
77
+ * @param url - URL字符串
78
+ * @returns 标准化后的URL
79
+ */
80
+ declare function normalizeUrl(url: string): string;
81
+
82
+ export { type ParsedUrl, buildUrl, getQueryParams, isAbsoluteUrl, joinUrl, normalizeUrl, parseUrl, removeQueryParams, setQueryParams, updateQueryParams };
package/dist/url.d.ts ADDED
@@ -0,0 +1,82 @@
1
+ /**
2
+ * URL工具函数
3
+ */
4
+ /**
5
+ * URL解析结果
6
+ */
7
+ interface ParsedUrl {
8
+ protocol: string;
9
+ host: string;
10
+ hostname: string;
11
+ port: string;
12
+ pathname: string;
13
+ search: string;
14
+ hash: string;
15
+ origin: string;
16
+ }
17
+ /**
18
+ * URL解析
19
+ * @param url - URL字符串
20
+ * @returns 解析后的URL对象
21
+ */
22
+ declare function parseUrl(url: string): ParsedUrl;
23
+ /**
24
+ * URL构建
25
+ * @param parts - URL组成部分
26
+ * @returns 构建后的URL字符串
27
+ */
28
+ declare function buildUrl(parts: {
29
+ protocol?: string;
30
+ host?: string;
31
+ pathname?: string;
32
+ search?: string;
33
+ hash?: string;
34
+ }): string;
35
+ /**
36
+ * 获取查询参数
37
+ * @param url - URL字符串,默认为当前页面URL
38
+ * @returns 查询参数对象
39
+ */
40
+ declare function getQueryParams(url?: string): Record<string, string>;
41
+ /**
42
+ * 设置查询参数
43
+ * @param url - URL字符串
44
+ * @param params - 查询参数对象
45
+ * @returns 设置后的URL字符串
46
+ */
47
+ declare function setQueryParams(url: string, params: Record<string, string | number | boolean>): string;
48
+ /**
49
+ * 移除查询参数
50
+ * @param url - URL字符串
51
+ * @param keys - 要移除的查询参数键数组
52
+ * @returns 移除后的URL字符串
53
+ */
54
+ declare function removeQueryParams(url: string, keys: string[]): string;
55
+ /**
56
+ * 更新查询参数
57
+ * @param url - URL字符串
58
+ * @param params - 要更新的查询参数对象
59
+ * @returns 更新后的URL字符串
60
+ */
61
+ declare function updateQueryParams(url: string, params: Record<string, string | number | boolean | null>): string;
62
+ /**
63
+ * 判断是否为绝对URL
64
+ * @param url - URL字符串
65
+ * @returns 是否为绝对URL
66
+ */
67
+ declare function isAbsoluteUrl(url: string): boolean;
68
+ /**
69
+ * URL拼接
70
+ * @param baseUrl - 基础URL
71
+ * @param ...paths - 路径片段
72
+ * @returns 拼接后的URL
73
+ */
74
+ declare function joinUrl(baseUrl: string, ...paths: string[]): string;
75
+ /**
76
+ * URL标准化
77
+ * @param url - URL字符串
78
+ * @returns 标准化后的URL
79
+ */
80
+ declare function normalizeUrl(url: string): string;
81
+
82
+ export { type ParsedUrl, buildUrl, getQueryParams, isAbsoluteUrl, joinUrl, normalizeUrl, parseUrl, removeQueryParams, setQueryParams, updateQueryParams };
package/dist/url.js ADDED
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ var chunkKGFTD255_js = require('./chunk-KGFTD255.js');
4
+
5
+
6
+
7
+ Object.defineProperty(exports, "buildUrl", {
8
+ enumerable: true,
9
+ get: function () { return chunkKGFTD255_js.buildUrl; }
10
+ });
11
+ Object.defineProperty(exports, "getQueryParams", {
12
+ enumerable: true,
13
+ get: function () { return chunkKGFTD255_js.getQueryParams; }
14
+ });
15
+ Object.defineProperty(exports, "isAbsoluteUrl", {
16
+ enumerable: true,
17
+ get: function () { return chunkKGFTD255_js.isAbsoluteUrl; }
18
+ });
19
+ Object.defineProperty(exports, "joinUrl", {
20
+ enumerable: true,
21
+ get: function () { return chunkKGFTD255_js.joinUrl; }
22
+ });
23
+ Object.defineProperty(exports, "normalizeUrl", {
24
+ enumerable: true,
25
+ get: function () { return chunkKGFTD255_js.normalizeUrl; }
26
+ });
27
+ Object.defineProperty(exports, "parseUrl", {
28
+ enumerable: true,
29
+ get: function () { return chunkKGFTD255_js.parseUrl; }
30
+ });
31
+ Object.defineProperty(exports, "removeQueryParams", {
32
+ enumerable: true,
33
+ get: function () { return chunkKGFTD255_js.removeQueryParams; }
34
+ });
35
+ Object.defineProperty(exports, "setQueryParams", {
36
+ enumerable: true,
37
+ get: function () { return chunkKGFTD255_js.setQueryParams; }
38
+ });
39
+ Object.defineProperty(exports, "updateQueryParams", {
40
+ enumerable: true,
41
+ get: function () { return chunkKGFTD255_js.updateQueryParams; }
42
+ });
43
+ //# sourceMappingURL=url.js.map
44
+ //# sourceMappingURL=url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"url.js"}
package/dist/url.mjs ADDED
@@ -0,0 +1,3 @@
1
+ export { buildUrl, getQueryParams, isAbsoluteUrl, joinUrl, normalizeUrl, parseUrl, removeQueryParams, setQueryParams, updateQueryParams } from './chunk-YXM6Q4JS.mjs';
2
+ //# sourceMappingURL=url.mjs.map
3
+ //# sourceMappingURL=url.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"url.mjs"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * 验证工具函数
3
+ */
4
+ /**
5
+ * 验证邮箱格式
6
+ * @param email - 邮箱地址
7
+ * @returns 是否为有效邮箱
8
+ */
9
+ declare function isValidEmail(email: string): boolean;
10
+ /**
11
+ * 验证手机号格式(中国大陆)
12
+ * @param phone - 手机号
13
+ * @returns 是否为有效手机号
14
+ */
15
+ declare function isValidPhone(phone: string): boolean;
16
+ /**
17
+ * 验证URL格式
18
+ * @param url - URL地址
19
+ * @returns 是否为有效URL
20
+ */
21
+ declare function isValidUrl(url: string): boolean;
22
+ /**
23
+ * 验证身份证号格式(中国大陆18位)
24
+ * @param idCard - 身份证号
25
+ * @returns 是否为有效身份证号
26
+ */
27
+ declare function isValidIdCard(idCard: string): boolean;
28
+ /**
29
+ * 验证是否为空值
30
+ * @param value - 待验证的值
31
+ * @returns 是否为空
32
+ */
33
+ declare function isEmpty(value: unknown): boolean;
34
+ /**
35
+ * 验证UUID格式
36
+ * @param uuid - UUID字符串
37
+ * @returns 是否为有效UUID
38
+ */
39
+ declare function isValidUUID(uuid: string): boolean;
40
+ /**
41
+ * 验证IP地址格式(IPv4)
42
+ * @param ip - IP地址
43
+ * @returns 是否为有效IP地址
44
+ */
45
+ declare function isValidIP(ip: string): boolean;
46
+ /**
47
+ * 验证域名格式
48
+ * @param domain - 域名
49
+ * @returns 是否为有效域名
50
+ */
51
+ declare function isValidDomain(domain: string): boolean;
52
+ /**
53
+ * 验证十六进制颜色格式
54
+ * @param color - 颜色值
55
+ * @returns 是否为有效十六进制颜色
56
+ */
57
+ declare function isValidHexColor(color: string): boolean;
58
+ /**
59
+ * 验证JSON字符串格式
60
+ * @param json - JSON字符串
61
+ * @returns 是否为有效JSON
62
+ */
63
+ declare function isValidJSON(json: string): boolean;
64
+ /**
65
+ * 验证是否为数字
66
+ * @param value - 待验证的值
67
+ * @returns 是否为数字
68
+ */
69
+ declare function isNumeric(value: unknown): boolean;
70
+ /**
71
+ * 验证是否为整数
72
+ * @param value - 待验证的值
73
+ * @returns 是否为整数
74
+ */
75
+ declare function isInteger(value: unknown): boolean;
76
+ /**
77
+ * 验证是否为浮点数
78
+ * @param value - 待验证的值
79
+ * @returns 是否为浮点数
80
+ */
81
+ declare function isFloat(value: unknown): boolean;
82
+
83
+ export { isEmpty, isFloat, isInteger, isNumeric, isValidDomain, isValidEmail, isValidHexColor, isValidIP, isValidIdCard, isValidJSON, isValidPhone, isValidUUID, isValidUrl };
@@ -0,0 +1,83 @@
1
+ /**
2
+ * 验证工具函数
3
+ */
4
+ /**
5
+ * 验证邮箱格式
6
+ * @param email - 邮箱地址
7
+ * @returns 是否为有效邮箱
8
+ */
9
+ declare function isValidEmail(email: string): boolean;
10
+ /**
11
+ * 验证手机号格式(中国大陆)
12
+ * @param phone - 手机号
13
+ * @returns 是否为有效手机号
14
+ */
15
+ declare function isValidPhone(phone: string): boolean;
16
+ /**
17
+ * 验证URL格式
18
+ * @param url - URL地址
19
+ * @returns 是否为有效URL
20
+ */
21
+ declare function isValidUrl(url: string): boolean;
22
+ /**
23
+ * 验证身份证号格式(中国大陆18位)
24
+ * @param idCard - 身份证号
25
+ * @returns 是否为有效身份证号
26
+ */
27
+ declare function isValidIdCard(idCard: string): boolean;
28
+ /**
29
+ * 验证是否为空值
30
+ * @param value - 待验证的值
31
+ * @returns 是否为空
32
+ */
33
+ declare function isEmpty(value: unknown): boolean;
34
+ /**
35
+ * 验证UUID格式
36
+ * @param uuid - UUID字符串
37
+ * @returns 是否为有效UUID
38
+ */
39
+ declare function isValidUUID(uuid: string): boolean;
40
+ /**
41
+ * 验证IP地址格式(IPv4)
42
+ * @param ip - IP地址
43
+ * @returns 是否为有效IP地址
44
+ */
45
+ declare function isValidIP(ip: string): boolean;
46
+ /**
47
+ * 验证域名格式
48
+ * @param domain - 域名
49
+ * @returns 是否为有效域名
50
+ */
51
+ declare function isValidDomain(domain: string): boolean;
52
+ /**
53
+ * 验证十六进制颜色格式
54
+ * @param color - 颜色值
55
+ * @returns 是否为有效十六进制颜色
56
+ */
57
+ declare function isValidHexColor(color: string): boolean;
58
+ /**
59
+ * 验证JSON字符串格式
60
+ * @param json - JSON字符串
61
+ * @returns 是否为有效JSON
62
+ */
63
+ declare function isValidJSON(json: string): boolean;
64
+ /**
65
+ * 验证是否为数字
66
+ * @param value - 待验证的值
67
+ * @returns 是否为数字
68
+ */
69
+ declare function isNumeric(value: unknown): boolean;
70
+ /**
71
+ * 验证是否为整数
72
+ * @param value - 待验证的值
73
+ * @returns 是否为整数
74
+ */
75
+ declare function isInteger(value: unknown): boolean;
76
+ /**
77
+ * 验证是否为浮点数
78
+ * @param value - 待验证的值
79
+ * @returns 是否为浮点数
80
+ */
81
+ declare function isFloat(value: unknown): boolean;
82
+
83
+ export { isEmpty, isFloat, isInteger, isNumeric, isValidDomain, isValidEmail, isValidHexColor, isValidIP, isValidIdCard, isValidJSON, isValidPhone, isValidUUID, isValidUrl };
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ var chunkTQN37HIN_js = require('./chunk-TQN37HIN.js');
4
+
5
+
6
+
7
+ Object.defineProperty(exports, "isEmpty", {
8
+ enumerable: true,
9
+ get: function () { return chunkTQN37HIN_js.isEmpty; }
10
+ });
11
+ Object.defineProperty(exports, "isFloat", {
12
+ enumerable: true,
13
+ get: function () { return chunkTQN37HIN_js.isFloat; }
14
+ });
15
+ Object.defineProperty(exports, "isInteger", {
16
+ enumerable: true,
17
+ get: function () { return chunkTQN37HIN_js.isInteger; }
18
+ });
19
+ Object.defineProperty(exports, "isNumeric", {
20
+ enumerable: true,
21
+ get: function () { return chunkTQN37HIN_js.isNumeric; }
22
+ });
23
+ Object.defineProperty(exports, "isValidDomain", {
24
+ enumerable: true,
25
+ get: function () { return chunkTQN37HIN_js.isValidDomain; }
26
+ });
27
+ Object.defineProperty(exports, "isValidEmail", {
28
+ enumerable: true,
29
+ get: function () { return chunkTQN37HIN_js.isValidEmail; }
30
+ });
31
+ Object.defineProperty(exports, "isValidHexColor", {
32
+ enumerable: true,
33
+ get: function () { return chunkTQN37HIN_js.isValidHexColor; }
34
+ });
35
+ Object.defineProperty(exports, "isValidIP", {
36
+ enumerable: true,
37
+ get: function () { return chunkTQN37HIN_js.isValidIP; }
38
+ });
39
+ Object.defineProperty(exports, "isValidIdCard", {
40
+ enumerable: true,
41
+ get: function () { return chunkTQN37HIN_js.isValidIdCard; }
42
+ });
43
+ Object.defineProperty(exports, "isValidJSON", {
44
+ enumerable: true,
45
+ get: function () { return chunkTQN37HIN_js.isValidJSON; }
46
+ });
47
+ Object.defineProperty(exports, "isValidPhone", {
48
+ enumerable: true,
49
+ get: function () { return chunkTQN37HIN_js.isValidPhone; }
50
+ });
51
+ Object.defineProperty(exports, "isValidUUID", {
52
+ enumerable: true,
53
+ get: function () { return chunkTQN37HIN_js.isValidUUID; }
54
+ });
55
+ Object.defineProperty(exports, "isValidUrl", {
56
+ enumerable: true,
57
+ get: function () { return chunkTQN37HIN_js.isValidUrl; }
58
+ });
59
+ //# sourceMappingURL=validation.js.map
60
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"validation.js"}
@@ -0,0 +1,3 @@
1
+ export { isEmpty, isFloat, isInteger, isNumeric, isValidDomain, isValidEmail, isValidHexColor, isValidIP, isValidIdCard, isValidJSON, isValidPhone, isValidUUID, isValidUrl } from './chunk-NSSDYX2U.mjs';
2
+ //# sourceMappingURL=validation.mjs.map
3
+ //# sourceMappingURL=validation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"validation.mjs"}