auto-gen-crud 0.1.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 (62) hide show
  1. package/API.md +130 -0
  2. package/README.md +234 -0
  3. package/dist/adapters/ant-design-vue.d.ts +8 -0
  4. package/dist/adapters/element-plus.d.ts +8 -0
  5. package/dist/adapters/index.d.ts +4 -0
  6. package/dist/adapters/index.js +7 -0
  7. package/dist/adapters/index.js.map +1 -0
  8. package/dist/adapters/naive.d.ts +8 -0
  9. package/dist/adapters/types.d.ts +162 -0
  10. package/dist/components/AutoCrud.vue.d.ts +398 -0
  11. package/dist/components/CopyText.vue.d.ts +6 -0
  12. package/dist/components/CrudModal.vue.d.ts +47 -0
  13. package/dist/components/DecodeText.vue.d.ts +8 -0
  14. package/dist/components/DynamicForm.vue.d.ts +63 -0
  15. package/dist/components/DynamicFormItem.vue.d.ts +20 -0
  16. package/dist/components/DynamicTable.vue.d.ts +30 -0
  17. package/dist/context.d.ts +36 -0
  18. package/dist/core/date-format-utils.d.ts +8 -0
  19. package/dist/core/form-runtime-cache.d.ts +27 -0
  20. package/dist/core/form-utils.d.ts +51 -0
  21. package/dist/core/object-utils.d.ts +43 -0
  22. package/dist/core/table-utils.d.ts +19 -0
  23. package/dist/core/types.d.ts +443 -0
  24. package/dist/generator/fields.d.ts +27 -0
  25. package/dist/generator/index.d.ts +14 -0
  26. package/dist/generator/index.js +740 -0
  27. package/dist/generator/index.js.map +1 -0
  28. package/dist/generator/openapi.d.ts +10 -0
  29. package/dist/generator/operations.d.ts +8 -0
  30. package/dist/generator/schema.d.ts +32 -0
  31. package/dist/generator/string-utils.d.ts +11 -0
  32. package/dist/generator/templates.d.ts +6 -0
  33. package/dist/generator/types.d.ts +185 -0
  34. package/dist/generator/writer.d.ts +8 -0
  35. package/dist/hooks/index.d.ts +3 -0
  36. package/dist/hooks/index.js +7 -0
  37. package/dist/hooks/index.js.map +1 -0
  38. package/dist/hooks/useModalForm.d.ts +11 -0
  39. package/dist/hooks/useSearchForm.d.ts +10 -0
  40. package/dist/hooks/useTable.d.ts +11 -0
  41. package/dist/index-Dc-solHn.js +299 -0
  42. package/dist/index-Dc-solHn.js.map +1 -0
  43. package/dist/index.d.ts +12 -0
  44. package/dist/index.js +985 -0
  45. package/dist/index.js.map +1 -0
  46. package/dist/plugin.d.ts +17 -0
  47. package/dist/style.css +1 -0
  48. package/dist/useTable-BwDSqD1q.js +214 -0
  49. package/dist/useTable-BwDSqD1q.js.map +1 -0
  50. package/dist/utils/clipboard.d.ts +16 -0
  51. package/dist/utils/index.d.ts +4 -0
  52. package/dist/utils/index.js +532 -0
  53. package/dist/utils/index.js.map +1 -0
  54. package/dist/utils/message.d.ts +9 -0
  55. package/dist/utils/request.d.ts +8 -0
  56. package/dist/utils/sm4-core.d.ts +12 -0
  57. package/dist/utils/sm4.d.ts +29 -0
  58. package/docs/AI_AGENT_GUIDE.md +210 -0
  59. package/mcp/auto-crud-mcp.mjs +502 -0
  60. package/mcp/auto-gen-crud-mcp.mjs +586 -0
  61. package/package.json +93 -0
  62. package/skills/auto-gen-crud-agent/SKILL.md +114 -0
@@ -0,0 +1,532 @@
1
+ async function b(c) {
2
+ const u = c == null ? "" : String(c);
3
+ if (globalThis.navigator?.clipboard?.writeText) {
4
+ await globalThis.navigator.clipboard.writeText(u);
5
+ return;
6
+ }
7
+ if (typeof document > "u")
8
+ throw new Error("当前运行环境不支持剪贴板复制");
9
+ const s = document.createElement("textarea");
10
+ s.value = u, s.style.position = "fixed", s.style.opacity = "0", document.body.appendChild(s), s.select();
11
+ try {
12
+ document.execCommand("copy");
13
+ } finally {
14
+ document.body.removeChild(s);
15
+ }
16
+ }
17
+ function L(c, u, s) {
18
+ c.feedback[u]?.(s);
19
+ }
20
+ function P(c = "") {
21
+ return async function(s) {
22
+ const t = s.method || "GET", r = typeof window > "u" ? "http://localhost" : window.location.origin, n = new URL(`${c}${s.url}`, r);
23
+ Object.entries(s.params || {}).forEach(([i, a]) => {
24
+ a != null && n.searchParams.set(i, String(a));
25
+ });
26
+ const e = await fetch(n.toString(), {
27
+ method: t,
28
+ headers: {
29
+ "Content-Type": "application/json",
30
+ ...s.headers
31
+ },
32
+ body: t === "GET" ? void 0 : JSON.stringify(s.data ?? {})
33
+ });
34
+ if (!e.ok)
35
+ throw new Error(`请求失败:${e.status} ${e.statusText}`);
36
+ return await e.json();
37
+ };
38
+ }
39
+ var E, S;
40
+ function p() {
41
+ this.mode = 1, this.isPadding = !0, this.sk = new Array(32);
42
+ }
43
+ function w() {
44
+ this.SM4_ENCRYPT = 1, this.SM4_DECRYPT = 0;
45
+ var c = [
46
+ 214,
47
+ 144,
48
+ 233,
49
+ 254,
50
+ 204,
51
+ 225,
52
+ 61,
53
+ 183,
54
+ 22,
55
+ 182,
56
+ 20,
57
+ 194,
58
+ 40,
59
+ 251,
60
+ 44,
61
+ 5,
62
+ 43,
63
+ 103,
64
+ 154,
65
+ 118,
66
+ 42,
67
+ 190,
68
+ 4,
69
+ 195,
70
+ 170,
71
+ 68,
72
+ 19,
73
+ 38,
74
+ 73,
75
+ 134,
76
+ 6,
77
+ 153,
78
+ 156,
79
+ 66,
80
+ 80,
81
+ 244,
82
+ 145,
83
+ 239,
84
+ 152,
85
+ 122,
86
+ 51,
87
+ 84,
88
+ 11,
89
+ 67,
90
+ 237,
91
+ 207,
92
+ 172,
93
+ 98,
94
+ 228,
95
+ 179,
96
+ 28,
97
+ 169,
98
+ 201,
99
+ 8,
100
+ 232,
101
+ 149,
102
+ 128,
103
+ 223,
104
+ 148,
105
+ 250,
106
+ 117,
107
+ 143,
108
+ 63,
109
+ 166,
110
+ 71,
111
+ 7,
112
+ 167,
113
+ 252,
114
+ 243,
115
+ 115,
116
+ 23,
117
+ 186,
118
+ 131,
119
+ 89,
120
+ 60,
121
+ 25,
122
+ 230,
123
+ 133,
124
+ 79,
125
+ 168,
126
+ 104,
127
+ 107,
128
+ 129,
129
+ 178,
130
+ 113,
131
+ 100,
132
+ 218,
133
+ 139,
134
+ 248,
135
+ 235,
136
+ 15,
137
+ 75,
138
+ 112,
139
+ 86,
140
+ 157,
141
+ 53,
142
+ 30,
143
+ 36,
144
+ 14,
145
+ 94,
146
+ 99,
147
+ 88,
148
+ 209,
149
+ 162,
150
+ 37,
151
+ 34,
152
+ 124,
153
+ 59,
154
+ 1,
155
+ 33,
156
+ 120,
157
+ 135,
158
+ 212,
159
+ 0,
160
+ 70,
161
+ 87,
162
+ 159,
163
+ 211,
164
+ 39,
165
+ 82,
166
+ 76,
167
+ 54,
168
+ 2,
169
+ 231,
170
+ 160,
171
+ 196,
172
+ 200,
173
+ 158,
174
+ 234,
175
+ 191,
176
+ 138,
177
+ 210,
178
+ 64,
179
+ 199,
180
+ 56,
181
+ 181,
182
+ 163,
183
+ 247,
184
+ 242,
185
+ 206,
186
+ 249,
187
+ 97,
188
+ 21,
189
+ 161,
190
+ 224,
191
+ 174,
192
+ 93,
193
+ 164,
194
+ 155,
195
+ 52,
196
+ 26,
197
+ 85,
198
+ 173,
199
+ 147,
200
+ 50,
201
+ 48,
202
+ 245,
203
+ 140,
204
+ 177,
205
+ 227,
206
+ 29,
207
+ 246,
208
+ 226,
209
+ 46,
210
+ 130,
211
+ 102,
212
+ 202,
213
+ 96,
214
+ 192,
215
+ 41,
216
+ 35,
217
+ 171,
218
+ 13,
219
+ 83,
220
+ 78,
221
+ 111,
222
+ 213,
223
+ 219,
224
+ 55,
225
+ 69,
226
+ 222,
227
+ 253,
228
+ 142,
229
+ 47,
230
+ 3,
231
+ 255,
232
+ 106,
233
+ 114,
234
+ 109,
235
+ 108,
236
+ 91,
237
+ 81,
238
+ 141,
239
+ 27,
240
+ 175,
241
+ 146,
242
+ 187,
243
+ 221,
244
+ 188,
245
+ 127,
246
+ 17,
247
+ 217,
248
+ 92,
249
+ 65,
250
+ 31,
251
+ 16,
252
+ 90,
253
+ 216,
254
+ 10,
255
+ 193,
256
+ 49,
257
+ 136,
258
+ 165,
259
+ 205,
260
+ 123,
261
+ 189,
262
+ 45,
263
+ 116,
264
+ 208,
265
+ 18,
266
+ 184,
267
+ 229,
268
+ 180,
269
+ 176,
270
+ 137,
271
+ 105,
272
+ 151,
273
+ 74,
274
+ 12,
275
+ 150,
276
+ 119,
277
+ 126,
278
+ 101,
279
+ 185,
280
+ 241,
281
+ 9,
282
+ 197,
283
+ 110,
284
+ 198,
285
+ 132,
286
+ 24,
287
+ 240,
288
+ 125,
289
+ 236,
290
+ 58,
291
+ 220,
292
+ 77,
293
+ 32,
294
+ 121,
295
+ 238,
296
+ 95,
297
+ 62,
298
+ 215,
299
+ 203,
300
+ 57,
301
+ 72
302
+ ], u = [2746333894, 1453994832, 1736282519, 2993693404], s = [462357, 472066609, 943670861, 1415275113, 1886879365, 2358483617, 2830087869, 3301692121, 3773296373, 4228057617, 404694573, 876298825, 1347903077, 1819507329, 2291111581, 2762715833, 3234320085, 3705924337, 4177462797, 337322537, 808926789, 1280531041, 1752135293, 2223739545, 2695343797, 3166948049, 3638552301, 4110090761, 269950501, 741554753, 1213159005, 1684763257];
303
+ this.GET_ULONG_BE = function(t, r) {
304
+ return (255 & t[r]) << 24 | (255 & t[r + 1]) << 16 | (255 & t[r + 2]) << 8 | 255 & t[r + 3] & 4294967295;
305
+ }, this.PUT_ULONG_BE = function(t, r, n) {
306
+ var e = 255 & t >> 24, i = 255 & t >> 16, a = 255 & t >> 8, l = 255 & t;
307
+ r[n] = e > 128 ? e - 256 : e, r[n + 1] = i > 128 ? i - 256 : i, r[n + 2] = a > 128 ? a - 256 : a, r[n + 3] = l > 128 ? l - 256 : l;
308
+ }, this.SHL = function(t, r) {
309
+ return (4294967295 & t) << r;
310
+ }, this.ROTL = function(t, r) {
311
+ return this.SHL(t, r), this.SHL(t, r) | t >> 32 - r;
312
+ }, this.sm4Lt = function(t) {
313
+ var r, n = new Array(4), e = new Array(4);
314
+ return this.PUT_ULONG_BE(t, n, 0), e[0] = this.sm4Sbox(n[0]), e[1] = this.sm4Sbox(n[1]), e[2] = this.sm4Sbox(n[2]), e[3] = this.sm4Sbox(n[3]), (r = this.GET_ULONG_BE(e, 0)) ^ this.ROTL(r, 2) ^ this.ROTL(r, 10) ^ this.ROTL(r, 18) ^ this.ROTL(r, 24);
315
+ }, this.sm4F = function(t, r, n, e, i) {
316
+ return t ^ this.sm4Lt(r ^ n ^ e ^ i);
317
+ }, this.sm4CalciRK = function(t) {
318
+ var r, n = new Array(4), e = new Array(4);
319
+ return this.PUT_ULONG_BE(t, n, 0), e[0] = this.sm4Sbox(n[0]), e[1] = this.sm4Sbox(n[1]), e[2] = this.sm4Sbox(n[2]), e[3] = this.sm4Sbox(n[3]), (r = this.GET_ULONG_BE(e, 0)) ^ this.ROTL(r, 13) ^ this.ROTL(r, 23);
320
+ }, this.sm4Sbox = function(t) {
321
+ var r = c[255 & t];
322
+ return r > 128 ? r - 256 : r;
323
+ }, this.sm4_setkey_enc = function(t, r) {
324
+ return t == null ? (alert("ctx is null!"), !1) : r == null || r.length != 16 ? (alert("key error!"), !1) : (t.mode = this.SM4_ENCRYPT, void this.sm4_setkey(t.sk, r));
325
+ }, this.sm4_setkey_dec = function(t, r) {
326
+ r != null && r.length == 16 || Error("key error!"), t.mode = 0, this.sm4_setkey(t.sk, r), t.sk = t.sk.reverse();
327
+ }, this.sm4_setkey = function(t, r) {
328
+ var n = new Array(4), e = new Array(36), i = 0;
329
+ for (n[0] = this.GET_ULONG_BE(r, 0), n[1] = this.GET_ULONG_BE(r, 4), n[2] = this.GET_ULONG_BE(r, 8), n[3] = this.GET_ULONG_BE(r, 12), e[0] = n[0] ^ u[0], e[1] = n[1] ^ u[1], e[2] = n[2] ^ u[2], e[3] = n[3] ^ u[3], i = 0; i < 32; i++) e[i + 4] = e[i] ^ this.sm4CalciRK(e[i + 1] ^ e[i + 2] ^ e[i + 3] ^ s[i]), t[i] = e[i + 4];
330
+ }, this.padding = function(t, r) {
331
+ if (t == null) return null;
332
+ var n = null;
333
+ if (r == this.SM4_ENCRYPT) {
334
+ var e = parseInt(16 - t.length % 16);
335
+ n = t.slice(0);
336
+ for (var i = 0; i < e; i++) n[t.length + i] = e;
337
+ } else
338
+ e = t[t.length - 1], n = t.slice(0, t.length - e);
339
+ return n;
340
+ }, this.sm4_one_round = function(t, r, n) {
341
+ var e = 0, i = new Array(36);
342
+ for (i[0] = this.GET_ULONG_BE(r, 0), i[1] = this.GET_ULONG_BE(r, 4), i[2] = this.GET_ULONG_BE(r, 8), i[3] = this.GET_ULONG_BE(r, 12); e < 32; ) i[e + 4] = this.sm4F(i[e], i[e + 1], i[e + 2], i[e + 3], t[e]), e++;
343
+ this.PUT_ULONG_BE(i[35], n, 0), this.PUT_ULONG_BE(i[34], n, 4), this.PUT_ULONG_BE(i[33], n, 8), this.PUT_ULONG_BE(i[32], n, 12);
344
+ }, this.sm4_crypt_ecb = function(t, r) {
345
+ r == null && alert("input is null!"), t.isPadding && t.mode == this.SM4_ENCRYPT && (r = this.padding(r, this.SM4_ENCRYPT));
346
+ for (var n = 0, e = r.length, i = new Array(); e > 0; e -= 16) {
347
+ var a = new Array(16), l = r.slice(16 * n, 16 * (n + 1));
348
+ this.sm4_one_round(t.sk, l, a), i = i.concat(a), n++;
349
+ }
350
+ var d = i;
351
+ for (t.isPadding && t.mode == this.SM4_DECRYPT && (d = this.padding(d, this.SM4_DECRYPT)), n = 0; n < d.length; n++) d[n] < 0 && (d[n] = d[n] + 256);
352
+ return d;
353
+ }, this.sm4_crypt_cbc = function(t, r, n) {
354
+ r != null && r.length == 16 || alert("iv error!"), n == null && alert("input is null!"), t.isPadding && t.mode == this.SM4_ENCRYPT && (n = this.padding(n, this.SM4_ENCRYPT));
355
+ var e = 0, i = n.length, a = new Array();
356
+ if (t.mode == this.SM4_ENCRYPT)
357
+ for (var l = 0; i > 0; i -= 16) {
358
+ var d = new Array(16), v = new Array(16), o = n.slice(16 * l, 16 * (l + 1));
359
+ for (e = 0; e < 16; e++) d[e] = o[e] ^ r[e];
360
+ this.sm4_one_round(t.sk, d, v), r = v.slice(0, 16), a = a.concat(v), l++;
361
+ }
362
+ else {
363
+ var h = [];
364
+ for (l = 0; i > 0; i -= 16) {
365
+ for (d = new Array(16), v = new Array(16), h = (o = n.slice(16 * l, 16 * (l + 1))).slice(0, 16), this.sm4_one_round(t.sk, o, d), e = 0; e < 16; e++) v[e] = d[e] ^ r[e];
366
+ r = h.slice(0, 16), a = a.concat(v), l++;
367
+ }
368
+ }
369
+ var f = a;
370
+ for (t.isPadding && t.mode == this.SM4_DECRYPT && (f = this.padding(f, this.SM4_DECRYPT)), e = 0; e < f.length; e++) f[e] < 0 && (f[e] = f[e] + 256);
371
+ return f;
372
+ };
373
+ }
374
+ function A(c, u) {
375
+ this.secretKey = c, this.iv = u, this.hexString = !1, this.encryptData_ECB = function(s) {
376
+ try {
377
+ var t = new w(), r = new p();
378
+ r.isPadding = !0, r.mode = t.SM4_ENCRYPT;
379
+ var n = E(this.secretKey);
380
+ t.sm4_setkey_enc(r, n);
381
+ var e = t.sm4_crypt_ecb(r, E(s)), i = base64js.fromByteArray(e);
382
+ return i != null && i.trim().length > 0 && i.replace(/(\s*|\t|\r|\n)/g, ""), i;
383
+ } catch (a) {
384
+ return console.error(a), null;
385
+ }
386
+ }, this.decryptData_ECB = function(s) {
387
+ try {
388
+ var t = new w(), r = new p();
389
+ r.isPadding = !0, r.mode = t.SM4_ENCRYPT;
390
+ var n = E(this.secretKey);
391
+ t.sm4_setkey_dec(r, n);
392
+ var e = t.sm4_crypt_ecb(r, base64js.toByteArray(s));
393
+ return S(e);
394
+ } catch (i) {
395
+ return console.error(i), null;
396
+ }
397
+ }, this.encryptData_CBC = function(s) {
398
+ try {
399
+ var t = new w(), r = new p();
400
+ r.isPadding = !0, r.mode = t.SM4_ENCRYPT;
401
+ var n = E(this.secretKey), e = E(this.iv);
402
+ t.sm4_setkey_enc(r, n);
403
+ var i = t.sm4_crypt_cbc(r, e, E(s)), a = base64js.fromByteArray(i);
404
+ return a != null && a.trim().length > 0 && a.replace(/(\s*|\t|\r|\n)/g, ""), a;
405
+ } catch (l) {
406
+ return console.error(l), null;
407
+ }
408
+ }, this.decryptData_CBC = function(s) {
409
+ try {
410
+ var t = new w(), r = new p();
411
+ r.isPadding = !0, r.mode = t.SM4_ENCRYPT;
412
+ var n = E(this.secretKey), e = E(this.iv);
413
+ t.sm4_setkey_dec(r, n);
414
+ var i = t.sm4_crypt_cbc(r, e, base64js.toByteArray(s));
415
+ return S(i);
416
+ } catch (a) {
417
+ return console.error(a), null;
418
+ }
419
+ }, E = function(s) {
420
+ var t, r, n = new Array();
421
+ t = s.length;
422
+ for (var e = 0; e < t; e++) (r = s.charCodeAt(e)) >= 65536 && r <= 1114111 ? (n.push(r >> 18 & 7 | 240), n.push(r >> 12 & 63 | 128), n.push(r >> 6 & 63 | 128), n.push(63 & r | 128)) : r >= 2048 && r <= 65535 ? (n.push(r >> 12 & 15 | 224), n.push(r >> 6 & 63 | 128), n.push(63 & r | 128)) : r >= 128 && r <= 2047 ? (n.push(r >> 6 & 31 | 192), n.push(63 & r | 128)) : n.push(255 & r);
423
+ return n;
424
+ }, S = function(s) {
425
+ if (typeof s == "string") return s;
426
+ for (var t = "", r = s, n = 0; n < r.length; n++) {
427
+ var e = r[n].toString(2), i = e.match(/^1+?(?=0)/);
428
+ if (i && e.length == 8) {
429
+ for (var a = i[0].length, l = r[n].toString(2).slice(7 - a), d = 1; d < a; d++) l += r[d + n].toString(2).slice(2);
430
+ t += String.fromCharCode(parseInt(l, 2)), n += a - 1;
431
+ } else t += String.fromCharCode(r[n]);
432
+ }
433
+ return t;
434
+ };
435
+ }
436
+ (function(c) {
437
+ typeof exports == "object" && typeof module < "u" ? module.exports = c() : typeof define == "function" && define.amd ? define([], c) : (typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : this).base64js = c();
438
+ })(function() {
439
+ return (function c(u, s, t) {
440
+ function r(i, a) {
441
+ if (!s[i]) {
442
+ if (!u[i]) {
443
+ var l = typeof require == "function" && require;
444
+ if (!a && l) return l(i, !0);
445
+ if (n) return n(i, !0);
446
+ var d = new Error("Cannot find module '" + i + "'");
447
+ throw d.code = "MODULE_NOT_FOUND", d;
448
+ }
449
+ var v = s[i] = { exports: {} };
450
+ u[i][0].call(
451
+ v.exports,
452
+ function(o) {
453
+ return r(u[i][1][o] || o);
454
+ },
455
+ v,
456
+ v.exports,
457
+ c,
458
+ u,
459
+ s,
460
+ t
461
+ );
462
+ }
463
+ return s[i].exports;
464
+ }
465
+ for (var n = typeof require == "function" && require, e = 0; e < t.length; e++) r(t[e]);
466
+ return r;
467
+ })(
468
+ {
469
+ "/": [
470
+ function(c, u, s) {
471
+ s.byteLength = function(o) {
472
+ return 3 * o.length / 4 - l(o);
473
+ }, s.toByteArray = function(o) {
474
+ var h, f, m, _, y, C = o.length;
475
+ _ = l(o), y = new n(3 * C / 4 - _), f = _ > 0 ? C - 4 : C;
476
+ var g = 0;
477
+ for (h = 0; h < f; h += 4) m = r[o.charCodeAt(h)] << 18 | r[o.charCodeAt(h + 1)] << 12 | r[o.charCodeAt(h + 2)] << 6 | r[o.charCodeAt(h + 3)], y[g++] = m >> 16 & 255, y[g++] = m >> 8 & 255, y[g++] = 255 & m;
478
+ return _ === 2 ? (m = r[o.charCodeAt(h)] << 2 | r[o.charCodeAt(h + 1)] >> 4, y[g++] = 255 & m) : _ === 1 && (m = r[o.charCodeAt(h)] << 10 | r[o.charCodeAt(h + 1)] << 4 | r[o.charCodeAt(h + 2)] >> 2, y[g++] = m >> 8 & 255, y[g++] = 255 & m), y;
479
+ }, s.fromByteArray = function(o) {
480
+ for (var h, f = o.length, m = f % 3, _ = "", y = [], C = 16383, g = 0, T = f - m; g < T; g += C) y.push(v(o, g, g + C > T ? T : g + C));
481
+ return m === 1 ? (h = o[f - 1], _ += t[h >> 2], _ += t[h << 4 & 63], _ += "==") : m === 2 && (h = (o[f - 2] << 8) + o[f - 1], _ += t[h >> 10], _ += t[h >> 4 & 63], _ += t[h << 2 & 63], _ += "="), y.push(_), y.join("");
482
+ };
483
+ for (var t = [], r = [], n = typeof Uint8Array < "u" ? Uint8Array : Array, e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", i = 0, a = e.length; i < a; ++i) t[i] = e[i], r[e.charCodeAt(i)] = i;
484
+ function l(o) {
485
+ var h = o.length;
486
+ if (h % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4");
487
+ return o[h - 2] === "=" ? 2 : o[h - 1] === "=" ? 1 : 0;
488
+ }
489
+ function d(o) {
490
+ return t[o >> 18 & 63] + t[o >> 12 & 63] + t[o >> 6 & 63] + t[63 & o];
491
+ }
492
+ function v(o, h, f) {
493
+ for (var m, _ = [], y = h; y < f; y += 3) m = (o[y] << 16) + (o[y + 1] << 8) + o[y + 2], _.push(d(m));
494
+ return _.join("");
495
+ }
496
+ r[45] = 62, r[95] = 63;
497
+ },
498
+ {}
499
+ ]
500
+ },
501
+ {},
502
+ []
503
+ )("/");
504
+ });
505
+ function B(c) {
506
+ if (!c.key || c.key.length !== 16)
507
+ throw new Error("SM4 key 必须是 16 位字符串");
508
+ if (c.mode === "CBC" && (!c.iv || c.iv.length !== 16))
509
+ throw new Error("SM4 CBC 模式必须传入 16 位 iv");
510
+ }
511
+ function N(c, u) {
512
+ B(u);
513
+ const s = new A(u.key, u.iv), t = c == null ? "" : String(c), r = u.mode === "CBC" ? s.encryptData_CBC(t) : s.encryptData_ECB(t);
514
+ if (r === null)
515
+ throw new Error("SM4 加密失败,请检查 key、iv 和明文内容");
516
+ return r;
517
+ }
518
+ function G(c, u) {
519
+ B(u);
520
+ const s = new A(u.key, u.iv), t = c == null ? "" : String(c), r = u.mode === "CBC" ? s.decryptData_CBC(t) : s.decryptData_ECB(t);
521
+ if (r === null)
522
+ throw new Error("SM4 解密失败,请检查 key、iv 和密文内容");
523
+ return r;
524
+ }
525
+ export {
526
+ b as copyText,
527
+ P as createRequest,
528
+ L as showCrudMessage,
529
+ G as sm4Decrypt,
530
+ N as sm4Encrypt
531
+ };
532
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/utils/clipboard.ts","../../src/utils/message.ts","../../src/utils/request.ts","../../src/utils/sm4-core.js","../../src/utils/sm4.ts"],"sourcesContent":["export interface CopyTextOptions {\n /** 复制成功提示,组件层会用当前 UI 的 message 展示。 */\n successMessage?: string;\n /** 复制失败提示,组件层会用当前 UI 的 message 展示。 */\n errorMessage?: string;\n}\n\n/**\n * 复制文本到剪贴板。\n *\n * 实现策略:\n * 1. 优先使用现代浏览器的 `navigator.clipboard.writeText`。\n * 2. 如果当前环境不支持,则降级创建临时 textarea 执行复制命令。\n *\n * 这样新包不再依赖旧 `@libs/shared-components/CopyToClipboard`。\n */\nexport async function copyText(text: unknown): Promise<void> {\n const value = text === null || text === undefined ? \"\" : String(text);\n\n if (globalThis.navigator?.clipboard?.writeText) {\n await globalThis.navigator.clipboard.writeText(value);\n return;\n }\n\n if (typeof document === \"undefined\") {\n throw new Error(\"当前运行环境不支持剪贴板复制\");\n }\n\n const textarea = document.createElement(\"textarea\");\n textarea.value = value;\n textarea.style.position = \"fixed\";\n textarea.style.opacity = \"0\";\n document.body.appendChild(textarea);\n textarea.select();\n\n try {\n document.execCommand(\"copy\");\n } finally {\n document.body.removeChild(textarea);\n }\n}\n","import type { CrudUIAdapter } from \"../adapters/types\";\n\n/** 消息类型。 */\nexport type CrudMessageType = \"success\" | \"warning\" | \"error\";\n\n/**\n * 通过当前 UI Adapter 展示消息。\n *\n * 这样复制、解密等内部组件不需要知道当前项目使用 Element Plus、Naive UI 还是 Ant Design Vue。\n */\nexport function showCrudMessage(adapter: CrudUIAdapter, type: CrudMessageType, message: string): void {\n adapter.feedback[type]?.(message);\n}\n","import type { CrudRequestHandler, CrudRequestOptions } from \"../core/types\";\n\n/**\n * 创建一个轻量请求函数。\n *\n * 它只覆盖新包内部工具需要的基础能力,不试图替代业务项目里的完整 request 层。\n * 如果业务已有 axios/fetch 封装,推荐在 `createAutoCrud({ request })` 中注入自己的请求函数。\n */\nexport function createRequest(baseURL = \"\"): CrudRequestHandler {\n return async function request<T = unknown>(options: CrudRequestOptions): Promise<T> {\n const method = options.method || \"GET\";\n const origin = typeof window === \"undefined\" ? \"http://localhost\" : window.location.origin;\n const url = new URL(`${baseURL}${options.url}`, origin);\n\n Object.entries(options.params || {}).forEach(([key, value]) => {\n if (value !== undefined && value !== null) url.searchParams.set(key, String(value));\n });\n\n const response = await fetch(url.toString(), {\n method,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options.headers,\n },\n body: method === \"GET\" ? undefined : JSON.stringify(options.data ?? {}),\n });\n\n if (!response.ok) {\n throw new Error(`请求失败:${response.status} ${response.statusText}`);\n }\n\n return (await response.json()) as T;\n };\n}\n","var stringToByte,byteToString\n\nfunction SM4_Context() {\n ;(this.mode = 1), (this.isPadding = !0), (this.sk = new Array(32))\n}\nfunction SM4() {\n ;(this.SM4_ENCRYPT = 1), (this.SM4_DECRYPT = 0)\n var t = [\n 214,\n 144,\n 233,\n 254,\n 204,\n 225,\n 61,\n 183,\n 22,\n 182,\n 20,\n 194,\n 40,\n 251,\n 44,\n 5,\n 43,\n 103,\n 154,\n 118,\n 42,\n 190,\n 4,\n 195,\n 170,\n 68,\n 19,\n 38,\n 73,\n 134,\n 6,\n 153,\n 156,\n 66,\n 80,\n 244,\n 145,\n 239,\n 152,\n 122,\n 51,\n 84,\n 11,\n 67,\n 237,\n 207,\n 172,\n 98,\n 228,\n 179,\n 28,\n 169,\n 201,\n 8,\n 232,\n 149,\n 128,\n 223,\n 148,\n 250,\n 117,\n 143,\n 63,\n 166,\n 71,\n 7,\n 167,\n 252,\n 243,\n 115,\n 23,\n 186,\n 131,\n 89,\n 60,\n 25,\n 230,\n 133,\n 79,\n 168,\n 104,\n 107,\n 129,\n 178,\n 113,\n 100,\n 218,\n 139,\n 248,\n 235,\n 15,\n 75,\n 112,\n 86,\n 157,\n 53,\n 30,\n 36,\n 14,\n 94,\n 99,\n 88,\n 209,\n 162,\n 37,\n 34,\n 124,\n 59,\n 1,\n 33,\n 120,\n 135,\n 212,\n 0,\n 70,\n 87,\n 159,\n 211,\n 39,\n 82,\n 76,\n 54,\n 2,\n 231,\n 160,\n 196,\n 200,\n 158,\n 234,\n 191,\n 138,\n 210,\n 64,\n 199,\n 56,\n 181,\n 163,\n 247,\n 242,\n 206,\n 249,\n 97,\n 21,\n 161,\n 224,\n 174,\n 93,\n 164,\n 155,\n 52,\n 26,\n 85,\n 173,\n 147,\n 50,\n 48,\n 245,\n 140,\n 177,\n 227,\n 29,\n 246,\n 226,\n 46,\n 130,\n 102,\n 202,\n 96,\n 192,\n 41,\n 35,\n 171,\n 13,\n 83,\n 78,\n 111,\n 213,\n 219,\n 55,\n 69,\n 222,\n 253,\n 142,\n 47,\n 3,\n 255,\n 106,\n 114,\n 109,\n 108,\n 91,\n 81,\n 141,\n 27,\n 175,\n 146,\n 187,\n 221,\n 188,\n 127,\n 17,\n 217,\n 92,\n 65,\n 31,\n 16,\n 90,\n 216,\n 10,\n 193,\n 49,\n 136,\n 165,\n 205,\n 123,\n 189,\n 45,\n 116,\n 208,\n 18,\n 184,\n 229,\n 180,\n 176,\n 137,\n 105,\n 151,\n 74,\n 12,\n 150,\n 119,\n 126,\n 101,\n 185,\n 241,\n 9,\n 197,\n 110,\n 198,\n 132,\n 24,\n 240,\n 125,\n 236,\n 58,\n 220,\n 77,\n 32,\n 121,\n 238,\n 95,\n 62,\n 215,\n 203,\n 57,\n 72,\n ],\n r = [2746333894, 1453994832, 1736282519, 2993693404],\n e = [462357, 472066609, 943670861, 1415275113, 1886879365, 2358483617, 2830087869, 3301692121, 3773296373, 4228057617, 404694573, 876298825, 1347903077, 1819507329, 2291111581, 2762715833, 3234320085, 3705924337, 4177462797, 337322537, 808926789, 1280531041, 1752135293, 2223739545, 2695343797, 3166948049, 3638552301, 4110090761, 269950501, 741554753, 1213159005, 1684763257]\n ;(this.GET_ULONG_BE = function(t, r) {\n return ((255 & t[r]) << 24) | ((255 & t[r + 1]) << 16) | ((255 & t[r + 2]) << 8) | (255 & t[r + 3] & 4294967295)\n }),\n (this.PUT_ULONG_BE = function(t, r, e) {\n var n = 255 & (t >> 24),\n i = 255 & (t >> 16),\n s = 255 & (t >> 8),\n o = 255 & t\n ;(r[e] = n > 128 ? n - 256 : n), (r[e + 1] = i > 128 ? i - 256 : i), (r[e + 2] = s > 128 ? s - 256 : s), (r[e + 3] = o > 128 ? o - 256 : o)\n }),\n (this.SHL = function(t, r) {\n return (4294967295 & t) << r\n }),\n (this.ROTL = function(t, r) {\n this.SHL(t, r)\n return this.SHL(t, r) | (t >> (32 - r))\n }),\n (this.sm4Lt = function(t) {\n var r,\n e = new Array(4),\n n = new Array(4)\n return this.PUT_ULONG_BE(t, e, 0), (n[0] = this.sm4Sbox(e[0])), (n[1] = this.sm4Sbox(e[1])), (n[2] = this.sm4Sbox(e[2])), (n[3] = this.sm4Sbox(e[3])), (r = this.GET_ULONG_BE(n, 0)) ^ this.ROTL(r, 2) ^ this.ROTL(r, 10) ^ this.ROTL(r, 18) ^ this.ROTL(r, 24)\n }),\n (this.sm4F = function(t, r, e, n, i) {\n return t ^ this.sm4Lt(r ^ e ^ n ^ i)\n }),\n (this.sm4CalciRK = function(t) {\n var r,\n e = new Array(4),\n n = new Array(4)\n return this.PUT_ULONG_BE(t, e, 0), (n[0] = this.sm4Sbox(e[0])), (n[1] = this.sm4Sbox(e[1])), (n[2] = this.sm4Sbox(e[2])), (n[3] = this.sm4Sbox(e[3])), (r = this.GET_ULONG_BE(n, 0)) ^ this.ROTL(r, 13) ^ this.ROTL(r, 23)\n }),\n (this.sm4Sbox = function(r) {\n var e = t[255 & r]\n return e > 128 ? e - 256 : e\n }),\n (this.sm4_setkey_enc = function(t, r) {\n return null == t ? (alert('ctx is null!'), !1) : null == r || 16 != r.length ? (alert('key error!'), !1) : ((t.mode = this.SM4_ENCRYPT), void this.sm4_setkey(t.sk, r))\n }),\n (this.sm4_setkey_dec = function(t, r) {\n null == t && Error('ctx is null!'), (null != r && 16 == r.length) || Error('key error!')\n ;(t.mode = 0), this.sm4_setkey(t.sk, r), (t.sk = t.sk.reverse())\n }),\n (this.sm4_setkey = function(t, n) {\n var i = new Array(4),\n s = new Array(36),\n o = 0\n ;(i[0] = this.GET_ULONG_BE(n, 0)), (i[1] = this.GET_ULONG_BE(n, 4)), (i[2] = this.GET_ULONG_BE(n, 8)), (i[3] = this.GET_ULONG_BE(n, 12)), (s[0] = i[0] ^ r[0]), (s[1] = i[1] ^ r[1]), (s[2] = i[2] ^ r[2]), (s[3] = i[3] ^ r[3])\n for (o = 0; o < 32; o++) (s[o + 4] = s[o] ^ this.sm4CalciRK(s[o + 1] ^ s[o + 2] ^ s[o + 3] ^ e[o])), (t[o] = s[o + 4])\n }),\n (this.padding = function(t, r) {\n if (null == t) return null\n var e = null\n if (r == this.SM4_ENCRYPT) {\n var n = parseInt(16 - (t.length % 16))\n e = t.slice(0)\n for (var i = 0; i < n; i++) e[t.length + i] = n\n } else {\n n = t[t.length - 1]\n e = t.slice(0, t.length - n)\n }\n return e\n }),\n (this.sm4_one_round = function(t, r, e) {\n var n = 0,\n i = new Array(36)\n for (i[0] = this.GET_ULONG_BE(r, 0), i[1] = this.GET_ULONG_BE(r, 4), i[2] = this.GET_ULONG_BE(r, 8), i[3] = this.GET_ULONG_BE(r, 12); n < 32; ) (i[n + 4] = this.sm4F(i[n], i[n + 1], i[n + 2], i[n + 3], t[n])), n++\n this.PUT_ULONG_BE(i[35], e, 0), this.PUT_ULONG_BE(i[34], e, 4), this.PUT_ULONG_BE(i[33], e, 8), this.PUT_ULONG_BE(i[32], e, 12)\n }),\n (this.sm4_crypt_ecb = function(t, r) {\n null == r && alert('input is null!'), t.isPadding && t.mode == this.SM4_ENCRYPT && (r = this.padding(r, this.SM4_ENCRYPT))\n for (var e = 0, n = r.length, i = new Array(); n > 0; n -= 16) {\n var s = new Array(16),\n o = r.slice(16 * e, 16 * (e + 1))\n this.sm4_one_round(t.sk, o, s), (i = i.concat(s)), e++\n }\n var h = i\n t.isPadding && t.mode == this.SM4_DECRYPT && (h = this.padding(h, this.SM4_DECRYPT))\n for (e = 0; e < h.length; e++) h[e] < 0 && (h[e] = h[e] + 256)\n return h\n }),\n (this.sm4_crypt_cbc = function(t, r, e) {\n ;(null != r && 16 == r.length) || alert('iv error!'), null == e && alert('input is null!'), t.isPadding && t.mode == this.SM4_ENCRYPT && (e = this.padding(e, this.SM4_ENCRYPT))\n var n = 0,\n i = e.length,\n s = new Array()\n if (t.mode == this.SM4_ENCRYPT)\n for (var o = 0; i > 0; i -= 16) {\n var h = new Array(16),\n a = new Array(16),\n u = e.slice(16 * o, 16 * (o + 1))\n for (n = 0; n < 16; n++) h[n] = u[n] ^ r[n]\n this.sm4_one_round(t.sk, h, a), (r = a.slice(0, 16)), (s = s.concat(a)), o++\n }\n else {\n var c = []\n for (o = 0; i > 0; i -= 16) {\n ;(h = new Array(16)), (a = new Array(16))\n for (c = (u = e.slice(16 * o, 16 * (o + 1))).slice(0, 16), this.sm4_one_round(t.sk, u, h), n = 0; n < 16; n++) a[n] = h[n] ^ r[n]\n ;(r = c.slice(0, 16)), (s = s.concat(a)), o++\n }\n }\n var l = s\n t.isPadding && t.mode == this.SM4_DECRYPT && (l = this.padding(l, this.SM4_DECRYPT))\n for (n = 0; n < l.length; n++) l[n] < 0 && (l[n] = l[n] + 256)\n return l\n })\n}\nfunction SM4Util(t, r) {\n ;(this.secretKey = t),\n (this.iv = r),\n (this.hexString = !1),\n (this.encryptData_ECB = function(t) {\n try {\n var r = new SM4(),\n e = new SM4_Context()\n ;(e.isPadding = !0), (e.mode = r.SM4_ENCRYPT)\n var n = stringToByte(this.secretKey)\n r.sm4_setkey_enc(e, n)\n var i = r.sm4_crypt_ecb(e, stringToByte(t)),\n s = base64js.fromByteArray(i)\n return null != s && s.trim().length > 0 && s.replace(/(\\s*|\\t|\\r|\\n)/g, ''), s\n } catch (t) {\n return console.error(t), null\n }\n }),\n (this.decryptData_ECB = function(t) {\n try {\n var r = new SM4(),\n e = new SM4_Context()\n ;(e.isPadding = !0), (e.mode = r.SM4_ENCRYPT)\n var n = stringToByte(this.secretKey)\n r.sm4_setkey_dec(e, n)\n var i = r.sm4_crypt_ecb(e, base64js.toByteArray(t))\n return byteToString(i)\n } catch (t) {\n return console.error(t), null\n }\n }),\n (this.encryptData_CBC = function(t) {\n try {\n var r = new SM4(),\n e = new SM4_Context()\n ;(e.isPadding = !0), (e.mode = r.SM4_ENCRYPT)\n var n = stringToByte(this.secretKey),\n i = stringToByte(this.iv)\n r.sm4_setkey_enc(e, n)\n var s = r.sm4_crypt_cbc(e, i, stringToByte(t)),\n o = base64js.fromByteArray(s)\n return null != o && o.trim().length > 0 && o.replace(/(\\s*|\\t|\\r|\\n)/g, ''), o\n } catch (t) {\n return console.error(t), null\n }\n }),\n (this.decryptData_CBC = function(t) {\n try {\n var r = new SM4(),\n e = new SM4_Context()\n ;(e.isPadding = !0), (e.mode = r.SM4_ENCRYPT)\n var n = stringToByte(this.secretKey),\n i = stringToByte(this.iv)\n r.sm4_setkey_dec(e, n)\n var s = r.sm4_crypt_cbc(e, i, base64js.toByteArray(t))\n return byteToString(s)\n } catch (t) {\n return console.error(t), null\n }\n }),\n (stringToByte = function(t) {\n var r,\n e,\n n = new Array()\n r = t.length\n for (var i = 0; i < r; i++) (e = t.charCodeAt(i)) >= 65536 && e <= 1114111 ? (n.push(((e >> 18) & 7) | 240), n.push(((e >> 12) & 63) | 128), n.push(((e >> 6) & 63) | 128), n.push((63 & e) | 128)) : e >= 2048 && e <= 65535 ? (n.push(((e >> 12) & 15) | 224), n.push(((e >> 6) & 63) | 128), n.push((63 & e) | 128)) : e >= 128 && e <= 2047 ? (n.push(((e >> 6) & 31) | 192), n.push((63 & e) | 128)) : n.push(255 & e)\n return n\n }),\n (byteToString = function(t) {\n if ('string' == typeof t) return t\n for (var r = '', e = t, n = 0; n < e.length; n++) {\n var i = e[n].toString(2),\n s = i.match(/^1+?(?=0)/)\n if (s && 8 == i.length) {\n for (var o = s[0].length, h = e[n].toString(2).slice(7 - o), a = 1; a < o; a++) h += e[a + n].toString(2).slice(2)\n ;(r += String.fromCharCode(parseInt(h, 2))), (n += o - 1)\n } else r += String.fromCharCode(e[n])\n }\n return r\n })\n}\n!(function(t) {\n 'object' == typeof exports && 'undefined' != typeof module ? (module.exports = t()) : 'function' == typeof define && define.amd ? define([], t) : (('undefined' != typeof window ? window : 'undefined' != typeof global ? global : 'undefined' != typeof self ? self : this).base64js = t())\n})(function() {\n return (function t(r, e, n) {\n function i(o, h) {\n if (!e[o]) {\n if (!r[o]) {\n var a = 'function' == typeof require && require\n if (!h && a) return a(o, !0)\n if (s) return s(o, !0)\n var u = new Error(\"Cannot find module '\" + o + \"'\")\n throw ((u.code = 'MODULE_NOT_FOUND'), u)\n }\n var c = (e[o] = { exports: {} })\n r[o][0].call(\n c.exports,\n function(t) {\n return i(r[o][1][t] || t)\n },\n c,\n c.exports,\n t,\n r,\n e,\n n\n )\n }\n return e[o].exports\n }\n for (var s = 'function' == typeof require && require, o = 0; o < n.length; o++) i(n[o])\n return i\n })(\n {\n '/': [\n function(t, r, e) {\n ;(e.byteLength = function(t) {\n return (3 * t.length) / 4 - u(t)\n }),\n (e.toByteArray = function(t) {\n var r,\n e,\n n,\n o,\n h,\n a = t.length\n ;(o = u(t)), (h = new s((3 * a) / 4 - o)), (e = o > 0 ? a - 4 : a)\n var c = 0\n for (r = 0; r < e; r += 4) (n = (i[t.charCodeAt(r)] << 18) | (i[t.charCodeAt(r + 1)] << 12) | (i[t.charCodeAt(r + 2)] << 6) | i[t.charCodeAt(r + 3)]), (h[c++] = (n >> 16) & 255), (h[c++] = (n >> 8) & 255), (h[c++] = 255 & n)\n 2 === o ? ((n = (i[t.charCodeAt(r)] << 2) | (i[t.charCodeAt(r + 1)] >> 4)), (h[c++] = 255 & n)) : 1 === o && ((n = (i[t.charCodeAt(r)] << 10) | (i[t.charCodeAt(r + 1)] << 4) | (i[t.charCodeAt(r + 2)] >> 2)), (h[c++] = (n >> 8) & 255), (h[c++] = 255 & n))\n return h\n }),\n (e.fromByteArray = function(t) {\n for (var r, e = t.length, i = e % 3, s = '', o = [], h = 16383, a = 0, u = e - i; a < u; a += h) o.push(l(t, a, a + h > u ? u : a + h))\n 1 === i ? ((r = t[e - 1]), (s += n[r >> 2]), (s += n[(r << 4) & 63]), (s += '==')) : 2 === i && ((r = (t[e - 2] << 8) + t[e - 1]), (s += n[r >> 10]), (s += n[(r >> 4) & 63]), (s += n[(r << 2) & 63]), (s += '='))\n return o.push(s), o.join('')\n })\n for (var n = [], i = [], s = 'undefined' != typeof Uint8Array ? Uint8Array : Array, o = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/', h = 0, a = o.length; h < a; ++h) (n[h] = o[h]), (i[o.charCodeAt(h)] = h)\n function u(t) {\n var r = t.length\n if (r % 4 > 0) throw new Error('Invalid string. Length must be a multiple of 4')\n return '=' === t[r - 2] ? 2 : '=' === t[r - 1] ? 1 : 0\n }\n function c(t) {\n return n[(t >> 18) & 63] + n[(t >> 12) & 63] + n[(t >> 6) & 63] + n[63 & t]\n }\n function l(t, r, e) {\n for (var n, i = [], s = r; s < e; s += 3) (n = (t[s] << 16) + (t[s + 1] << 8) + t[s + 2]), i.push(c(n))\n return i.join('')\n }\n ;(i['-'.charCodeAt(0)] = 62), (i['_'.charCodeAt(0)] = 63)\n },\n {},\n ],\n },\n {},\n []\n )('/')\n})\n\nexport default SM4Util\n","import SM4Core from \"./sm4-core.js\";\n\n/** SM4 工作模式。 */\nexport type Sm4Mode = \"ECB\" | \"CBC\";\n\n/** SM4 工具配置。 */\nexport interface Sm4Options {\n /** 16 位密钥。旧工具里会通过业务端类型选择密钥,新包改为显式传入,避免绑定业务系统。 */\n key: string;\n /** CBC 模式需要的 16 位初始化向量。 */\n iv?: string;\n /** 加密模式,默认 ECB。 */\n mode?: Sm4Mode;\n}\n\ntype SM4CoreInstance = {\n encryptData_ECB: (text: string) => string | null;\n decryptData_ECB: (text: string) => string | null;\n encryptData_CBC: (text: string) => string | null;\n decryptData_CBC: (text: string) => string | null;\n};\n\ntype SM4CoreConstructor = new (key: string, iv?: string) => SM4CoreInstance;\n\n/**\n * 校验 SM4 密钥和 iv。\n *\n * SM4 的 key 和 CBC iv 都要求 16 位字符串。这里提前抛出中文错误,\n * 比底层算法里的 alert/console 更适合作为 npm 包 API。\n */\nfunction assertSm4Options(options: Sm4Options): void {\n if (!options.key || options.key.length !== 16) {\n throw new Error(\"SM4 key 必须是 16 位字符串\");\n }\n\n if (options.mode === \"CBC\" && (!options.iv || options.iv.length !== 16)) {\n throw new Error(\"SM4 CBC 模式必须传入 16 位 iv\");\n }\n}\n\n/**\n * SM4 加密。\n *\n * @example\n * ```ts\n * const text = sm4Encrypt(\"13800138000\", { key: \"1234567890abcdef\" });\n * ```\n */\nexport function sm4Encrypt(text: unknown, options: Sm4Options): string {\n assertSm4Options(options);\n const core = new (SM4Core as SM4CoreConstructor)(options.key, options.iv);\n const value = text === null || text === undefined ? \"\" : String(text);\n const result = options.mode === \"CBC\" ? core.encryptData_CBC(value) : core.encryptData_ECB(value);\n\n if (result === null) {\n throw new Error(\"SM4 加密失败,请检查 key、iv 和明文内容\");\n }\n\n return result;\n}\n\n/**\n * SM4 解密。\n *\n * @example\n * ```ts\n * const phone = sm4Decrypt(cipher, { key: \"1234567890abcdef\" });\n * ```\n */\nexport function sm4Decrypt(text: unknown, options: Sm4Options): string {\n assertSm4Options(options);\n const core = new (SM4Core as SM4CoreConstructor)(options.key, options.iv);\n const value = text === null || text === undefined ? \"\" : String(text);\n const result = options.mode === \"CBC\" ? core.decryptData_CBC(value) : core.decryptData_ECB(value);\n\n if (result === null) {\n throw new Error(\"SM4 解密失败,请检查 key、iv 和密文内容\");\n }\n\n return result;\n}\n"],"names":["copyText","text","value","textarea","showCrudMessage","adapter","type","message","createRequest","baseURL","options","method","origin","url","key","response","stringToByte","byteToString","SM4_Context","SM4","t","r","e","n","s","o","i","h","a","u","c","l","SM4Util","assertSm4Options","sm4Encrypt","core","SM4Core","result","sm4Decrypt"],"mappings":"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ACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,I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"}
@@ -0,0 +1,9 @@
1
+ import { CrudUIAdapter } from '../adapters/types';
2
+ /** 消息类型。 */
3
+ export type CrudMessageType = "success" | "warning" | "error";
4
+ /**
5
+ * 通过当前 UI Adapter 展示消息。
6
+ *
7
+ * 这样复制、解密等内部组件不需要知道当前项目使用 Element Plus、Naive UI 还是 Ant Design Vue。
8
+ */
9
+ export declare function showCrudMessage(adapter: CrudUIAdapter, type: CrudMessageType, message: string): void;
@@ -0,0 +1,8 @@
1
+ import { CrudRequestHandler } from '../core/types';
2
+ /**
3
+ * 创建一个轻量请求函数。
4
+ *
5
+ * 它只覆盖新包内部工具需要的基础能力,不试图替代业务项目里的完整 request 层。
6
+ * 如果业务已有 axios/fetch 封装,推荐在 `createAutoCrud({ request })` 中注入自己的请求函数。
7
+ */
8
+ export declare function createRequest(baseURL?: string): CrudRequestHandler;
@@ -0,0 +1,12 @@
1
+ export default SM4Util;
2
+ declare function SM4Util(t: any, r: any): void;
3
+ declare class SM4Util {
4
+ constructor(t: any, r: any);
5
+ secretKey: any;
6
+ iv: any;
7
+ hexString: boolean;
8
+ encryptData_ECB: (t: any) => any;
9
+ decryptData_ECB: (t: any) => any;
10
+ encryptData_CBC: (t: any) => any;
11
+ decryptData_CBC: (t: any) => any;
12
+ }
@@ -0,0 +1,29 @@
1
+ /** SM4 工作模式。 */
2
+ export type Sm4Mode = "ECB" | "CBC";
3
+ /** SM4 工具配置。 */
4
+ export interface Sm4Options {
5
+ /** 16 位密钥。旧工具里会通过业务端类型选择密钥,新包改为显式传入,避免绑定业务系统。 */
6
+ key: string;
7
+ /** CBC 模式需要的 16 位初始化向量。 */
8
+ iv?: string;
9
+ /** 加密模式,默认 ECB。 */
10
+ mode?: Sm4Mode;
11
+ }
12
+ /**
13
+ * SM4 加密。
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * const text = sm4Encrypt("13800138000", { key: "1234567890abcdef" });
18
+ * ```
19
+ */
20
+ export declare function sm4Encrypt(text: unknown, options: Sm4Options): string;
21
+ /**
22
+ * SM4 解密。
23
+ *
24
+ * @example
25
+ * ```ts
26
+ * const phone = sm4Decrypt(cipher, { key: "1234567890abcdef" });
27
+ * ```
28
+ */
29
+ export declare function sm4Decrypt(text: unknown, options: Sm4Options): string;