@ivujs/i-utils 2.0.0 → 2.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 (214) hide show
  1. package/README.md +40 -42
  2. package/dist/cjs/ID-card/index.cjs +21 -13
  3. package/dist/cjs/array/index.cjs +40 -34
  4. package/dist/cjs/clipboard/index.cjs +14 -10
  5. package/dist/cjs/color/index.cjs +73 -59
  6. package/dist/cjs/cookie/index.cjs +16 -13
  7. package/dist/cjs/crypto/base64/base64.cjs +398 -206
  8. package/dist/cjs/crypto/base64/index.cjs +58 -35
  9. package/dist/cjs/crypto/md5/index.cjs +33 -8
  10. package/dist/cjs/crypto/md5/md5.cjs +298 -844
  11. package/dist/cjs/crypto/sha256/index.cjs +95 -0
  12. package/dist/cjs/crypto/sha256/sha256.cjs +557 -0
  13. package/dist/cjs/crypto/sm3/index.cjs +27 -0
  14. package/dist/cjs/crypto/sm3/sm3.cjs +200 -0
  15. package/dist/cjs/crypto/sm4/index.cjs +101 -0
  16. package/dist/cjs/crypto/sm4/sm4.cjs +498 -0
  17. package/dist/cjs/date/index.cjs +379 -335
  18. package/dist/cjs/desensitized/index.cjs +21 -18
  19. package/dist/cjs/device/index.cjs +33 -30
  20. package/dist/cjs/dom/index.cjs +26 -23
  21. package/dist/cjs/file/index.cjs +51 -41
  22. package/dist/cjs/function/index.cjs +22 -19
  23. package/dist/cjs/id/index.cjs +6 -2
  24. package/dist/cjs/index.cjs +108 -127
  25. package/dist/cjs/keycode/index.cjs +9 -12
  26. package/dist/cjs/math/index.cjs +113 -81
  27. package/dist/cjs/number/index.cjs +10 -7
  28. package/dist/cjs/object/index.cjs +77 -30
  29. package/dist/cjs/pagination/index.cjs +25 -10
  30. package/dist/cjs/random/index.cjs +8 -5
  31. package/dist/cjs/regexp/index.cjs +23 -20
  32. package/dist/cjs/storage/index.cjs +4 -1
  33. package/dist/cjs/storage/localStorage.cjs +5 -5
  34. package/dist/cjs/storage/sessionStorage.cjs +6 -6
  35. package/dist/cjs/string/index.cjs +66 -63
  36. package/dist/cjs/url/index.cjs +83 -80
  37. package/dist/cjs/validate/index.cjs +122 -106
  38. package/dist/es/ID-card/index.d.ts +19 -14
  39. package/dist/es/ID-card/index.mjs +22 -14
  40. package/dist/es/array/index.d.ts +56 -50
  41. package/dist/es/array/index.mjs +40 -34
  42. package/dist/es/clipboard/index.d.ts +10 -7
  43. package/dist/es/clipboard/index.mjs +14 -10
  44. package/dist/es/color/index.d.ts +28 -25
  45. package/dist/es/color/index.mjs +73 -59
  46. package/dist/es/constants/date.d.ts +4 -174
  47. package/dist/es/constants/id-card.d.ts +4 -43
  48. package/dist/es/constants/index.d.ts +11 -7
  49. package/dist/es/constants/keycode.d.ts +1 -103
  50. package/dist/es/constants/lang.d.ts +4 -4
  51. package/dist/es/constants/math.d.ts +4 -4
  52. package/dist/es/constants/regexp.d.ts +4 -24
  53. package/dist/es/constants/sort.d.ts +4 -5
  54. package/dist/es/cookie/index.d.ts +13 -13
  55. package/dist/es/cookie/index.mjs +16 -13
  56. package/dist/es/crypto/base64/base64.d.ts +8 -5
  57. package/dist/es/crypto/base64/base64.mjs +393 -204
  58. package/dist/es/crypto/base64/index.d.ts +41 -24
  59. package/dist/es/crypto/base64/index.mjs +53 -32
  60. package/dist/es/crypto/index.d.ts +8 -8
  61. package/dist/es/crypto/md5/index.d.ts +20 -7
  62. package/dist/es/crypto/md5/index.mjs +32 -9
  63. package/dist/es/crypto/md5/md5.d.ts +9 -142
  64. package/dist/es/crypto/md5/md5.mjs +299 -844
  65. package/dist/es/crypto/sha256/index.d.ts +52 -0
  66. package/dist/es/crypto/sha256/index.mjs +86 -0
  67. package/dist/es/crypto/sha256/sha256.d.ts +82 -0
  68. package/dist/es/crypto/sha256/sha256.mjs +548 -0
  69. package/dist/es/crypto/sm3/index.d.ts +13 -0
  70. package/dist/es/crypto/sm3/index.mjs +24 -0
  71. package/dist/es/crypto/sm3/sm3.d.ts +3 -0
  72. package/dist/es/crypto/sm3/sm3.mjs +197 -0
  73. package/dist/es/crypto/sm4/index.d.ts +56 -0
  74. package/dist/es/crypto/sm4/index.mjs +95 -0
  75. package/dist/es/crypto/sm4/sm4.d.ts +48 -0
  76. package/dist/es/crypto/sm4/sm4.mjs +490 -0
  77. package/dist/es/date/index.d.ts +236 -175
  78. package/dist/es/date/index.mjs +378 -335
  79. package/dist/es/desensitized/index.d.ts +26 -23
  80. package/dist/es/desensitized/index.mjs +21 -18
  81. package/dist/es/device/index.d.ts +31 -25
  82. package/dist/es/device/index.mjs +33 -30
  83. package/dist/es/dom/index.d.ts +32 -29
  84. package/dist/es/dom/index.mjs +26 -23
  85. package/dist/es/file/index.d.ts +30 -30
  86. package/dist/es/file/index.mjs +51 -41
  87. package/dist/es/function/index.d.ts +10 -7
  88. package/dist/es/function/index.mjs +22 -19
  89. package/dist/es/id/index.d.ts +3 -0
  90. package/dist/es/id/index.mjs +6 -2
  91. package/dist/es/index.d.ts +24 -25
  92. package/dist/es/index.mjs +6 -23
  93. package/dist/es/keycode/index.d.ts +6 -6
  94. package/dist/es/keycode/index.mjs +9 -12
  95. package/dist/es/math/index.d.ts +37 -37
  96. package/dist/es/math/index.mjs +113 -81
  97. package/dist/es/number/index.d.ts +7 -7
  98. package/dist/es/number/index.mjs +10 -7
  99. package/dist/es/object/index.d.ts +20 -19
  100. package/dist/es/object/index.mjs +77 -30
  101. package/dist/es/pagination/index.d.ts +39 -6
  102. package/dist/es/pagination/index.mjs +25 -10
  103. package/dist/es/random/index.d.ts +10 -7
  104. package/dist/es/random/index.mjs +8 -5
  105. package/dist/es/regexp/index.d.ts +30 -30
  106. package/dist/es/regexp/index.mjs +23 -20
  107. package/dist/es/storage/index.d.ts +10 -4
  108. package/dist/es/storage/index.mjs +4 -1
  109. package/dist/es/storage/localStorage.d.ts +9 -9
  110. package/dist/es/storage/localStorage.mjs +5 -5
  111. package/dist/es/storage/sessionStorage.d.ts +9 -9
  112. package/dist/es/storage/sessionStorage.mjs +6 -6
  113. package/dist/es/string/index.d.ts +62 -59
  114. package/dist/es/string/index.mjs +66 -63
  115. package/dist/es/url/index.d.ts +65 -65
  116. package/dist/es/url/index.mjs +83 -80
  117. package/dist/es/validate/index.d.ts +83 -80
  118. package/dist/es/validate/index.mjs +122 -106
  119. package/dist/index.d.ts +2355 -2803
  120. package/dist/lib/index.full.umd.js +3297 -9474
  121. package/dist/lib/index.full.umd.min.js +2 -64
  122. package/dist/lib/index.full.umd.min.js.map +1 -1
  123. package/dist/resolver/auto-imports.cjs +38 -31
  124. package/dist/resolver/auto-imports.mjs +38 -31
  125. package/dist/resolver/index.cjs +1 -2
  126. package/dist/resolver/index.d.ts +1 -1
  127. package/dist/resolver/index.mjs +1 -2
  128. package/package.json +96 -90
  129. package/dist/cjs/crypto/aes/aes.cjs +0 -480
  130. package/dist/cjs/crypto/aes/index.cjs +0 -27
  131. package/dist/cjs/crypto/base32/base32.cjs +0 -357
  132. package/dist/cjs/crypto/base32/index.cjs +0 -41
  133. package/dist/cjs/crypto/des/des.cjs +0 -257
  134. package/dist/cjs/crypto/des/index.cjs +0 -28
  135. package/dist/cjs/crypto/sha/sha1/index.cjs +0 -24
  136. package/dist/cjs/crypto/sha/sha1/sha1.cjs +0 -529
  137. package/dist/cjs/crypto/sha/sha256/index.cjs +0 -43
  138. package/dist/cjs/crypto/sha/sha256/sha256.cjs +0 -595
  139. package/dist/cjs/crypto/sha/sha3/index.cjs +0 -41
  140. package/dist/cjs/crypto/sha/sha3/sha3.cjs +0 -624
  141. package/dist/cjs/crypto/sha/sha512/index.cjs +0 -81
  142. package/dist/cjs/crypto/sha/sha512/sha512.cjs +0 -950
  143. package/dist/cjs/crypto/sm/lib/asn1.cjs +0 -149
  144. package/dist/cjs/crypto/sm/lib/ec.cjs +0 -315
  145. package/dist/cjs/crypto/sm/lib/jsbn.cjs +0 -1608
  146. package/dist/cjs/crypto/sm/lib/sm3.cjs +0 -158
  147. package/dist/cjs/crypto/sm/lib/utils.cjs +0 -170
  148. package/dist/cjs/crypto/sm/sm2/index.cjs +0 -112
  149. package/dist/cjs/crypto/sm/sm2/sm2.cjs +0 -231
  150. package/dist/cjs/crypto/sm/sm3/index.cjs +0 -15
  151. package/dist/cjs/crypto/sm/sm3/sm3.cjs +0 -93
  152. package/dist/cjs/crypto/sm/sm4/index.cjs +0 -27
  153. package/dist/cjs/crypto/sm/sm4/sm4.cjs +0 -327
  154. package/dist/cjs/crypto/tea/index.cjs +0 -25
  155. package/dist/cjs/crypto/tea/tea.cjs +0 -187
  156. package/dist/cjs/weapp/index.cjs +0 -142
  157. package/dist/es/crypto/aes/aes.d.ts +0 -156
  158. package/dist/es/crypto/aes/aes.mjs +0 -478
  159. package/dist/es/crypto/aes/index.d.ts +0 -16
  160. package/dist/es/crypto/aes/index.mjs +0 -24
  161. package/dist/es/crypto/base32/base32.d.ts +0 -3
  162. package/dist/es/crypto/base32/base32.mjs +0 -353
  163. package/dist/es/crypto/base32/index.d.ts +0 -24
  164. package/dist/es/crypto/base32/index.mjs +0 -36
  165. package/dist/es/crypto/des/des.d.ts +0 -52
  166. package/dist/es/crypto/des/des.mjs +0 -255
  167. package/dist/es/crypto/des/index.d.ts +0 -14
  168. package/dist/es/crypto/des/index.mjs +0 -25
  169. package/dist/es/crypto/sha/index.d.ts +0 -4
  170. package/dist/es/crypto/sha/sha1/index.d.ts +0 -13
  171. package/dist/es/crypto/sha/sha1/index.mjs +0 -21
  172. package/dist/es/crypto/sha/sha1/sha1.d.ts +0 -2
  173. package/dist/es/crypto/sha/sha1/sha1.mjs +0 -526
  174. package/dist/es/crypto/sha/sha256/index.d.ts +0 -26
  175. package/dist/es/crypto/sha/sha256/index.mjs +0 -38
  176. package/dist/es/crypto/sha/sha256/sha256.d.ts +0 -4
  177. package/dist/es/crypto/sha/sha256/sha256.mjs +0 -590
  178. package/dist/es/crypto/sha/sha3/index.d.ts +0 -24
  179. package/dist/es/crypto/sha/sha3/index.mjs +0 -36
  180. package/dist/es/crypto/sha/sha3/sha3.d.ts +0 -4
  181. package/dist/es/crypto/sha/sha3/sha3.mjs +0 -619
  182. package/dist/es/crypto/sha/sha512/index.d.ts +0 -52
  183. package/dist/es/crypto/sha/sha512/index.mjs +0 -72
  184. package/dist/es/crypto/sha/sha512/sha512.d.ts +0 -8
  185. package/dist/es/crypto/sha/sha512/sha512.mjs +0 -941
  186. package/dist/es/crypto/sm/index.d.ts +0 -3
  187. package/dist/es/crypto/sm/lib/asn1.d.ts +0 -12
  188. package/dist/es/crypto/sm/lib/asn1.mjs +0 -146
  189. package/dist/es/crypto/sm/lib/ec.d.ts +0 -126
  190. package/dist/es/crypto/sm/lib/ec.mjs +0 -312
  191. package/dist/es/crypto/sm/lib/jsbn.d.ts +0 -198
  192. package/dist/es/crypto/sm/lib/jsbn.mjs +0 -1605
  193. package/dist/es/crypto/sm/lib/sm3.d.ts +0 -5
  194. package/dist/es/crypto/sm/lib/sm3.mjs +0 -155
  195. package/dist/es/crypto/sm/lib/utils.d.ts +0 -53
  196. package/dist/es/crypto/sm/lib/utils.mjs +0 -158
  197. package/dist/es/crypto/sm/sm2/index.d.ts +0 -71
  198. package/dist/es/crypto/sm/sm2/index.mjs +0 -101
  199. package/dist/es/crypto/sm/sm2/sm2.d.ts +0 -34
  200. package/dist/es/crypto/sm/sm2/sm2.mjs +0 -220
  201. package/dist/es/crypto/sm/sm3/index.d.ts +0 -7
  202. package/dist/es/crypto/sm/sm3/index.mjs +0 -13
  203. package/dist/es/crypto/sm/sm3/sm3.d.ts +0 -1
  204. package/dist/es/crypto/sm/sm3/sm3.mjs +0 -91
  205. package/dist/es/crypto/sm/sm4/index.d.ts +0 -16
  206. package/dist/es/crypto/sm/sm4/index.mjs +0 -24
  207. package/dist/es/crypto/sm/sm4/sm4.d.ts +0 -2
  208. package/dist/es/crypto/sm/sm4/sm4.mjs +0 -324
  209. package/dist/es/crypto/tea/index.d.ts +0 -14
  210. package/dist/es/crypto/tea/index.mjs +0 -22
  211. package/dist/es/crypto/tea/tea.d.ts +0 -69
  212. package/dist/es/crypto/tea/tea.mjs +0 -185
  213. package/dist/es/weapp/index.d.ts +0 -57
  214. package/dist/es/weapp/index.mjs +0 -131
@@ -1,36 +1,53 @@
1
1
  /**
2
- * base64 加密
3
- * @param {String} str 字符串
4
- * @returns {String} 返回加密后的字符串
2
+ * Base64编码
3
+ * @param str 待编码的UTF8字符串
4
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
5
+ * @returns Base64字符串
5
6
  */
6
- export function encode(str: string): string;
7
+ export declare function base64Encode(str: string, urlSafe?: boolean): string;
7
8
  /**
8
- * base64 解密
9
- * @param {String} str 字符串
10
- * @returns {String} 返回解密后的字符串
9
+ * Base64解码
10
+ * @param str 待解码的Base64字符串
11
+ * @returns 解码后的UTF8字符串
11
12
  */
12
- export function decode(str: string): string;
13
+ export declare function base64Decode(str: string): string;
13
14
  /**
14
- * base64 utf8加密
15
- * @param {String} str 字符串
16
- * @returns {String} 返回加密后的字符串
15
+ * URL安全Base64编码
16
+ * @param str 待编码的UTF8字符串
17
+ * @returns URL安全的Base64字符串
17
18
  */
18
- export function utf8Encode(str: string): string;
19
+ export declare function base64EncodeURI(str: string): string;
19
20
  /**
20
- * base64 utf8解密
21
- * @param {String} str 字符串
22
- * @returns {String} 返回解密后的字符串
21
+ * URL安全Base64解码
22
+ * @param str 待解码的URL安全Base64字符串
23
+ * @returns 解码后的UTF8字符串
23
24
  */
24
- export function utf8Decode(str: string): string;
25
+ export declare function base64DecodeURI(str: string): string;
25
26
  /**
26
- * base64 加密字节数组
27
- * @param {Array} array 数组
28
- * @returns {String} 返回加密后的字符串
27
+ * Uint8Array转Base64字符串
28
+ * @param uint8Array 待编码的字节数组
29
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
30
+ * @returns Base64字符串
29
31
  */
30
- export function encodeAsBytes(array: any[]): string;
32
+ export declare function base64FromUint8Array(uint8Array: Uint8Array, urlSafe?: boolean): string;
31
33
  /**
32
- * base64 解密字节数组
33
- * @param {String} str 字符串
34
- * @returns {Array} 返回解密后的字节数组
34
+ * Base64字符串转Uint8Array
35
+ * @param base64Str 待解码的Base64字符串
36
+ * @param urlSafe 是否为URL安全的Base64(默认false)
37
+ * @returns 解码后的字节数组
35
38
  */
36
- export function decodeAsBytes(str: string): any[];
39
+ export declare function base64ToUint8Array(base64Str: string, urlSafe?: boolean): Uint8Array;
40
+ /**
41
+ * 十六进制字符串转Base64字符串
42
+ * @param hexStr 待编码的十六进制字符串
43
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
44
+ * @returns Base64字符串
45
+ */
46
+ export declare function base64FromHex(hexStr: string, urlSafe?: boolean): string;
47
+ /**
48
+ * Base64字符串转十六进制字符串
49
+ * @param base64Str 待解码的Base64字符串
50
+ * @param urlSafe 是否为URL安全的Base64(默认false)
51
+ * @returns 解码后的十六进制字符串
52
+ */
53
+ export declare function base64ToHex(base64Str: string, urlSafe?: boolean): string;
@@ -1,52 +1,73 @@
1
- import { encode as encode$1, decode as decode$1, utf8Encode as utf8Encode$1, utf8Decode as utf8Decode$1, decodeAsBytes as decodeAsBytes$1 } from './base64.mjs';
1
+ import { encode, decode, encodeURI, decodeURI, fromUint8Array, toUint8Array, fromHex, toHex } from './base64.mjs';
2
2
 
3
3
  /**
4
- * base64 加密
5
- * @param {String} str 字符串
6
- * @returns {String} 返回加密后的字符串
4
+ * Base64编码
5
+ * @param str 待编码的UTF8字符串
6
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
7
+ * @returns Base64字符串
7
8
  */
8
- function encode(str) {
9
- return encode$1(str);
9
+ function base64Encode(str, urlSafe = false) {
10
+ return encode(str, urlSafe);
10
11
  }
11
12
  /**
12
- * base64 解密
13
- * @param {String} str 字符串
14
- * @returns {String} 返回解密后的字符串
13
+ * Base64解码
14
+ * @param str 待解码的Base64字符串
15
+ * @returns 解码后的UTF8字符串
15
16
  */
16
- function decode(str) {
17
- return decode$1(str);
17
+ function base64Decode(str) {
18
+ return decode(str);
18
19
  }
19
20
  /**
20
- * base64 utf8加密
21
- * @param {String} str 字符串
22
- * @returns {String} 返回加密后的字符串
21
+ * URL安全Base64编码
22
+ * @param str 待编码的UTF8字符串
23
+ * @returns URL安全的Base64字符串
23
24
  */
24
- function utf8Encode(str) {
25
- return utf8Encode$1(str);
25
+ function base64EncodeURI(str) {
26
+ return encodeURI(str);
26
27
  }
27
28
  /**
28
- * base64 utf8解密
29
- * @param {String} str 字符串
30
- * @returns {String} 返回解密后的字符串
29
+ * URL安全Base64解码
30
+ * @param str 待解码的URL安全Base64字符串
31
+ * @returns 解码后的UTF8字符串
31
32
  */
32
- function utf8Decode(str) {
33
- return utf8Decode$1(str);
33
+ function base64DecodeURI(str) {
34
+ return decodeURI(str);
34
35
  }
35
36
  /**
36
- * base64 加密字节数组
37
- * @param {Array} array 数组
38
- * @returns {String} 返回加密后的字符串
37
+ * Uint8Array转Base64字符串
38
+ * @param uint8Array 待编码的字节数组
39
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
40
+ * @returns Base64字符串
39
41
  */
40
- function encodeAsBytes(array) {
41
- return encode$1(array);
42
+ function base64FromUint8Array(uint8Array, urlSafe = false) {
43
+ return fromUint8Array(uint8Array, urlSafe);
42
44
  }
43
45
  /**
44
- * base64 解密字节数组
45
- * @param {String} str 字符串
46
- * @returns {Array} 返回解密后的字节数组
46
+ * Base64字符串转Uint8Array
47
+ * @param base64Str 待解码的Base64字符串
48
+ * @param urlSafe 是否为URL安全的Base64(默认false)
49
+ * @returns 解码后的字节数组
47
50
  */
48
- function decodeAsBytes(str) {
49
- return decodeAsBytes$1(str);
51
+ function base64ToUint8Array(base64Str, urlSafe = false) {
52
+ return toUint8Array(base64Str, urlSafe);
53
+ }
54
+ /**
55
+ * 十六进制字符串转Base64字符串
56
+ * @param hexStr 待编码的十六进制字符串
57
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
58
+ * @returns Base64字符串
59
+ */
60
+ function base64FromHex(hexStr, urlSafe = false) {
61
+ return fromHex(hexStr, urlSafe);
62
+ }
63
+ /**
64
+ * Base64字符串转十六进制字符串
65
+ * @param base64Str 待解码的Base64字符串
66
+ * @param urlSafe 是否为URL安全的Base64(默认false)
67
+ * @returns 解码后的十六进制字符串
68
+ */
69
+ function base64ToHex(base64Str, urlSafe = false) {
70
+ return toHex(base64Str, urlSafe);
50
71
  }
51
72
 
52
- export { decode, decodeAsBytes, encode, encodeAsBytes, utf8Decode, utf8Encode };
73
+ export { base64Decode, base64DecodeURI, base64Encode, base64EncodeURI, base64FromHex, base64FromUint8Array, base64ToHex, base64ToUint8Array };
@@ -1,8 +1,8 @@
1
- export * as base64 from "./base64/index.js";
2
- export * as base32 from "./base32/index.js";
3
- export * from "./md5/index.js";
4
- export * from "./sha/index.js";
5
- export * from "./sm/index.js";
6
- export * as aes from "./aes/index.js";
7
- export * as des from "./des/index.js";
8
- export * as tea from "./tea/index.js";
1
+ /**
2
+ * @module 加解密算法
3
+ */
4
+ export * from "./base64";
5
+ export * from "./md5";
6
+ export * from "./sha256";
7
+ export * from "./sm3";
8
+ export * from "./sm4";
@@ -1,13 +1,26 @@
1
1
  /**
2
2
  * md5 加密
3
- * @param {String} str 字符串
4
- * @returns {string} 返回加密后的字符串
3
+ * @param {string} str 字符串
4
+ * @returns {string} 返回加密后的十六进制字符串
5
5
  */
6
- export function md5(str: string): string;
6
+ export declare function md5(str: string): string;
7
+ /**
8
+ * md5 加密
9
+ * @param {string} str 字符串
10
+ * @returns {*} 返回加密后的二进制原始值
11
+ */
12
+ export declare function md5Raw(str: string): any;
13
+ /**
14
+ * md5_hmac 加密
15
+ * @param {string} str 字符串
16
+ * @param {string} key 秘钥
17
+ * @returns {string} 返回加密后的十六进制字符串
18
+ */
19
+ export declare function md5Hmac(str: string, key: string): string;
7
20
  /**
8
21
  * md5_hmac 加密
9
- * @param {String} str 字符串
10
- * @param {String} key 秘钥
11
- * @returns {string} 返回加密后的字符串
22
+ * @param {string} str 字符串
23
+ * @param {string} key 秘钥
24
+ * @returns {string} 返回加密后的二进制原始值
12
25
  */
13
- export function md5_hmac(str: string, key: string): string;
26
+ export declare function md5HmacRaw(str: string, key: string): any;
@@ -1,21 +1,44 @@
1
- import { md5 as md5$1, md5_hmac as md5_hmac$1 } from './md5.mjs';
1
+ import { md5 as md5$1 } from './md5.mjs';
2
2
 
3
3
  /**
4
4
  * md5 加密
5
- * @param {String} str 字符串
6
- * @returns {string} 返回加密后的字符串
5
+ * @param {string} str 字符串
6
+ * @returns {string} 返回加密后的十六进制字符串
7
7
  */
8
8
  function md5(str) {
9
9
  return md5$1(str);
10
10
  }
11
+ /**
12
+ * md5 加密
13
+ * @param {string} str 字符串
14
+ * @returns {*} 返回加密后的二进制原始值
15
+ */
16
+ function md5Raw(str) {
17
+ return md5$1(str, undefined, true);
18
+ }
19
+ /**
20
+ * md5_hmac 加密
21
+ * @param {string} str 字符串
22
+ * @param {string} key 秘钥
23
+ * @returns {string} 返回加密后的十六进制字符串
24
+ */
25
+ function md5Hmac(str, key) {
26
+ if (!str || !key) {
27
+ throw new Error("Missing str or key");
28
+ }
29
+ return md5$1(str, key, false);
30
+ }
11
31
  /**
12
32
  * md5_hmac 加密
13
- * @param {String} str 字符串
14
- * @param {String} key 秘钥
15
- * @returns {string} 返回加密后的字符串
33
+ * @param {string} str 字符串
34
+ * @param {string} key 秘钥
35
+ * @returns {string} 返回加密后的二进制原始值
16
36
  */
17
- function md5_hmac(str, key) {
18
- return md5_hmac$1(key, str);
37
+ function md5HmacRaw(str, key) {
38
+ if (!str || !key) {
39
+ throw new Error("Missing str or key");
40
+ }
41
+ return md5$1(str, key, true);
19
42
  }
20
43
 
21
- export { md5, md5_hmac };
44
+ export { md5, md5Hmac, md5HmacRaw, md5Raw };
@@ -1,144 +1,11 @@
1
- export const md5: Md5;
2
- export const md5_hmac: HmacMd5;
3
1
  /**
4
- * Md5 class
5
- * @class Md5
6
- * @description This is internal class.
7
- * @see {@link md5.create}
2
+ * Calculates MD5 value for a given string.
3
+ * If a key is provided, calculates the HMAC-MD5 value.
4
+ * Returns a Hex encoded string unless the raw argument is given.
5
+ *
6
+ * @param {string} string Input string
7
+ * @param {string} [key] HMAC key
8
+ * @param {boolean} [raw] Raw output switch
9
+ * @returns {string} MD5 output
8
10
  */
9
- declare function Md5(sharedMemory: any): void;
10
- declare class Md5 {
11
- /**
12
- * Md5 class
13
- * @class Md5
14
- * @description This is internal class.
15
- * @see {@link md5.create}
16
- */
17
- constructor(sharedMemory: any);
18
- blocks: any[] | Uint32Array<ArrayBuffer>;
19
- buffer8: any;
20
- h0: number;
21
- h1: number;
22
- h2: number;
23
- h3: number;
24
- start: number;
25
- bytes: number;
26
- hBytes: number;
27
- finalized: boolean;
28
- hashed: boolean;
29
- first: boolean;
30
- /**
31
- * @method update
32
- * @memberof Md5
33
- * @instance
34
- * @description Update hash
35
- * @param {String|Array|Uint8Array|ArrayBuffer} message message to hash
36
- * @returns {Md5} Md5 object.
37
- * @see {@link md5.update}
38
- */
39
- update(message: string | any[] | Uint8Array | ArrayBuffer): Md5;
40
- lastByteIndex: number | undefined;
41
- finalize(): void;
42
- hash(): void;
43
- /**
44
- * @method hex
45
- * @memberof Md5
46
- * @instance
47
- * @description Output hash as hex string
48
- * @returns {String} Hex string
49
- * @see {@link md5.hex}
50
- * @example
51
- * hash.hex();
52
- */
53
- hex(): string;
54
- /**
55
- * @method toString
56
- * @memberof Md5
57
- * @instance
58
- * @description Output hash as hex string
59
- * @returns {String} Hex string
60
- * @see {@link md5.hex}
61
- * @example
62
- * hash.toString();
63
- */
64
- toString: any;
65
- /**
66
- * @method digest
67
- * @memberof Md5
68
- * @instance
69
- * @description Output hash as bytes array
70
- * @returns {Array} Bytes array
71
- * @see {@link md5.digest}
72
- * @example
73
- * hash.digest();
74
- */
75
- digest(): any[];
76
- /**
77
- * @method array
78
- * @memberof Md5
79
- * @instance
80
- * @description Output hash as bytes array
81
- * @returns {Array} Bytes array
82
- * @see {@link md5.array}
83
- * @example
84
- * hash.array();
85
- */
86
- array: any;
87
- /**
88
- * @method arrayBuffer
89
- * @memberof Md5
90
- * @instance
91
- * @description Output hash as ArrayBuffer
92
- * @returns {ArrayBuffer} ArrayBuffer
93
- * @see {@link md5.arrayBuffer}
94
- * @example
95
- * hash.arrayBuffer();
96
- */
97
- arrayBuffer(): ArrayBuffer;
98
- /**
99
- * @method buffer
100
- * @deprecated This maybe confuse with Buffer in node.js. Please use arrayBuffer instead.
101
- * @memberof Md5
102
- * @instance
103
- * @description Output hash as ArrayBuffer
104
- * @returns {ArrayBuffer} ArrayBuffer
105
- * @see {@link md5.buffer}
106
- * @example
107
- * hash.buffer();
108
- */
109
- buffer: any;
110
- /**
111
- * @method base64
112
- * @memberof Md5
113
- * @instance
114
- * @description Output hash as base64 string
115
- * @returns {String} base64 string
116
- * @see {@link md5.base64}
117
- * @example
118
- * hash.base64();
119
- */
120
- base64(): string;
121
- }
122
- /**
123
- * HmacMd5 class
124
- * @class HmacMd5
125
- * @extends Md5
126
- * @description This is internal class.
127
- * @see {@link md5.hmac.create}
128
- */
129
- declare function HmacMd5(key: any, sharedMemory: any): void;
130
- declare class HmacMd5 {
131
- /**
132
- * HmacMd5 class
133
- * @class HmacMd5
134
- * @extends Md5
135
- * @description This is internal class.
136
- * @see {@link md5.hmac.create}
137
- */
138
- constructor(key: any, sharedMemory: any);
139
- oKeyPad: number[];
140
- inner: boolean;
141
- sharedMemory: any;
142
- finalize(): void;
143
- }
144
- export {};
11
+ export function md5(string: string, key?: string, raw?: boolean): string;