@ivujs/i-utils 2.0.0 → 2.1.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 (228) 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/constants/date.cjs +55 -1
  7. package/dist/cjs/constants/id-card.cjs +42 -1
  8. package/dist/cjs/constants/keycode.cjs +117 -2
  9. package/dist/cjs/constants/lang.cjs +7 -1
  10. package/dist/cjs/constants/math.cjs +9 -1
  11. package/dist/cjs/constants/regexp.cjs +33 -10
  12. package/dist/cjs/constants/sort.cjs +10 -1
  13. package/dist/cjs/cookie/index.cjs +16 -13
  14. package/dist/cjs/crypto/base64/base64.cjs +398 -206
  15. package/dist/cjs/crypto/base64/index.cjs +58 -35
  16. package/dist/cjs/crypto/md5/index.cjs +33 -8
  17. package/dist/cjs/crypto/md5/md5.cjs +298 -844
  18. package/dist/cjs/crypto/sha256/index.cjs +95 -0
  19. package/dist/cjs/crypto/sha256/sha256.cjs +557 -0
  20. package/dist/cjs/crypto/sm3/index.cjs +27 -0
  21. package/dist/cjs/crypto/sm3/sm3.cjs +200 -0
  22. package/dist/cjs/crypto/sm4/index.cjs +101 -0
  23. package/dist/cjs/crypto/sm4/sm4.cjs +498 -0
  24. package/dist/cjs/date/index.cjs +420 -340
  25. package/dist/cjs/desensitized/index.cjs +21 -18
  26. package/dist/cjs/device/index.cjs +33 -30
  27. package/dist/cjs/dom/index.cjs +26 -23
  28. package/dist/cjs/file/index.cjs +51 -41
  29. package/dist/cjs/function/index.cjs +22 -19
  30. package/dist/cjs/id/index.cjs +6 -2
  31. package/dist/cjs/index.cjs +110 -127
  32. package/dist/cjs/keycode/index.cjs +9 -12
  33. package/dist/cjs/math/index.cjs +113 -81
  34. package/dist/cjs/number/index.cjs +10 -7
  35. package/dist/cjs/object/index.cjs +77 -30
  36. package/dist/cjs/pagination/index.cjs +25 -10
  37. package/dist/cjs/random/index.cjs +8 -5
  38. package/dist/cjs/regexp/index.cjs +23 -20
  39. package/dist/cjs/storage/index.cjs +4 -1
  40. package/dist/cjs/storage/localStorage.cjs +5 -5
  41. package/dist/cjs/storage/sessionStorage.cjs +6 -6
  42. package/dist/cjs/string/index.cjs +66 -63
  43. package/dist/cjs/url/index.cjs +83 -80
  44. package/dist/cjs/validate/index.cjs +122 -106
  45. package/dist/es/ID-card/index.d.ts +19 -14
  46. package/dist/es/ID-card/index.mjs +22 -14
  47. package/dist/es/array/index.d.ts +56 -50
  48. package/dist/es/array/index.mjs +40 -34
  49. package/dist/es/clipboard/index.d.ts +10 -7
  50. package/dist/es/clipboard/index.mjs +14 -10
  51. package/dist/es/color/index.d.ts +28 -25
  52. package/dist/es/color/index.mjs +73 -59
  53. package/dist/es/constants/date.d.ts +58 -174
  54. package/dist/es/constants/date.mjs +55 -1
  55. package/dist/es/constants/id-card.d.ts +45 -43
  56. package/dist/es/constants/id-card.mjs +42 -1
  57. package/dist/es/constants/index.d.ts +11 -7
  58. package/dist/es/constants/keycode.d.ts +119 -103
  59. package/dist/es/constants/keycode.mjs +117 -2
  60. package/dist/es/constants/lang.d.ts +10 -4
  61. package/dist/es/constants/lang.mjs +7 -1
  62. package/dist/es/constants/math.d.ts +12 -4
  63. package/dist/es/constants/math.mjs +9 -1
  64. package/dist/es/constants/regexp.d.ts +27 -24
  65. package/dist/es/constants/regexp.mjs +33 -10
  66. package/dist/es/constants/sort.d.ts +13 -5
  67. package/dist/es/constants/sort.mjs +10 -1
  68. package/dist/es/cookie/index.d.ts +13 -13
  69. package/dist/es/cookie/index.mjs +16 -13
  70. package/dist/es/crypto/base64/base64.d.ts +8 -5
  71. package/dist/es/crypto/base64/base64.mjs +393 -204
  72. package/dist/es/crypto/base64/index.d.ts +41 -24
  73. package/dist/es/crypto/base64/index.mjs +53 -32
  74. package/dist/es/crypto/index.d.ts +8 -8
  75. package/dist/es/crypto/md5/index.d.ts +20 -7
  76. package/dist/es/crypto/md5/index.mjs +32 -9
  77. package/dist/es/crypto/md5/md5.d.ts +9 -142
  78. package/dist/es/crypto/md5/md5.mjs +299 -844
  79. package/dist/es/crypto/sha256/index.d.ts +52 -0
  80. package/dist/es/crypto/sha256/index.mjs +86 -0
  81. package/dist/es/crypto/sha256/sha256.d.ts +82 -0
  82. package/dist/es/crypto/sha256/sha256.mjs +548 -0
  83. package/dist/es/crypto/sm3/index.d.ts +13 -0
  84. package/dist/es/crypto/sm3/index.mjs +24 -0
  85. package/dist/es/crypto/sm3/sm3.d.ts +3 -0
  86. package/dist/es/crypto/sm3/sm3.mjs +197 -0
  87. package/dist/es/crypto/sm4/index.d.ts +56 -0
  88. package/dist/es/crypto/sm4/index.mjs +95 -0
  89. package/dist/es/crypto/sm4/sm4.d.ts +48 -0
  90. package/dist/es/crypto/sm4/sm4.mjs +490 -0
  91. package/dist/es/date/index.d.ts +269 -179
  92. package/dist/es/date/index.mjs +417 -340
  93. package/dist/es/desensitized/index.d.ts +26 -23
  94. package/dist/es/desensitized/index.mjs +21 -18
  95. package/dist/es/device/index.d.ts +31 -25
  96. package/dist/es/device/index.mjs +33 -30
  97. package/dist/es/dom/index.d.ts +32 -29
  98. package/dist/es/dom/index.mjs +26 -23
  99. package/dist/es/file/index.d.ts +30 -30
  100. package/dist/es/file/index.mjs +51 -41
  101. package/dist/es/function/index.d.ts +10 -7
  102. package/dist/es/function/index.mjs +22 -19
  103. package/dist/es/id/index.d.ts +3 -0
  104. package/dist/es/id/index.mjs +6 -2
  105. package/dist/es/index.d.ts +24 -25
  106. package/dist/es/index.mjs +6 -23
  107. package/dist/es/keycode/index.d.ts +6 -6
  108. package/dist/es/keycode/index.mjs +9 -12
  109. package/dist/es/math/index.d.ts +37 -37
  110. package/dist/es/math/index.mjs +113 -81
  111. package/dist/es/number/index.d.ts +7 -7
  112. package/dist/es/number/index.mjs +10 -7
  113. package/dist/es/object/index.d.ts +20 -19
  114. package/dist/es/object/index.mjs +77 -30
  115. package/dist/es/pagination/index.d.ts +39 -6
  116. package/dist/es/pagination/index.mjs +25 -10
  117. package/dist/es/random/index.d.ts +10 -7
  118. package/dist/es/random/index.mjs +8 -5
  119. package/dist/es/regexp/index.d.ts +30 -30
  120. package/dist/es/regexp/index.mjs +23 -20
  121. package/dist/es/storage/index.d.ts +10 -4
  122. package/dist/es/storage/index.mjs +4 -1
  123. package/dist/es/storage/localStorage.d.ts +9 -9
  124. package/dist/es/storage/localStorage.mjs +5 -5
  125. package/dist/es/storage/sessionStorage.d.ts +9 -9
  126. package/dist/es/storage/sessionStorage.mjs +6 -6
  127. package/dist/es/string/index.d.ts +62 -59
  128. package/dist/es/string/index.mjs +66 -63
  129. package/dist/es/url/index.d.ts +65 -65
  130. package/dist/es/url/index.mjs +83 -80
  131. package/dist/es/validate/index.d.ts +83 -80
  132. package/dist/es/validate/index.mjs +122 -106
  133. package/dist/index.d.ts +2643 -2803
  134. package/dist/lib/index.full.umd.js +3609 -9494
  135. package/dist/lib/index.full.umd.min.js +2 -64
  136. package/dist/lib/index.full.umd.min.js.map +1 -1
  137. package/dist/resolver/auto-imports.cjs +40 -31
  138. package/dist/resolver/auto-imports.mjs +40 -31
  139. package/dist/resolver/index.cjs +1 -2
  140. package/dist/resolver/index.d.ts +1 -1
  141. package/dist/resolver/index.mjs +1 -2
  142. package/package.json +96 -90
  143. package/dist/cjs/crypto/aes/aes.cjs +0 -480
  144. package/dist/cjs/crypto/aes/index.cjs +0 -27
  145. package/dist/cjs/crypto/base32/base32.cjs +0 -357
  146. package/dist/cjs/crypto/base32/index.cjs +0 -41
  147. package/dist/cjs/crypto/des/des.cjs +0 -257
  148. package/dist/cjs/crypto/des/index.cjs +0 -28
  149. package/dist/cjs/crypto/sha/sha1/index.cjs +0 -24
  150. package/dist/cjs/crypto/sha/sha1/sha1.cjs +0 -529
  151. package/dist/cjs/crypto/sha/sha256/index.cjs +0 -43
  152. package/dist/cjs/crypto/sha/sha256/sha256.cjs +0 -595
  153. package/dist/cjs/crypto/sha/sha3/index.cjs +0 -41
  154. package/dist/cjs/crypto/sha/sha3/sha3.cjs +0 -624
  155. package/dist/cjs/crypto/sha/sha512/index.cjs +0 -81
  156. package/dist/cjs/crypto/sha/sha512/sha512.cjs +0 -950
  157. package/dist/cjs/crypto/sm/lib/asn1.cjs +0 -149
  158. package/dist/cjs/crypto/sm/lib/ec.cjs +0 -315
  159. package/dist/cjs/crypto/sm/lib/jsbn.cjs +0 -1608
  160. package/dist/cjs/crypto/sm/lib/sm3.cjs +0 -158
  161. package/dist/cjs/crypto/sm/lib/utils.cjs +0 -170
  162. package/dist/cjs/crypto/sm/sm2/index.cjs +0 -112
  163. package/dist/cjs/crypto/sm/sm2/sm2.cjs +0 -231
  164. package/dist/cjs/crypto/sm/sm3/index.cjs +0 -15
  165. package/dist/cjs/crypto/sm/sm3/sm3.cjs +0 -93
  166. package/dist/cjs/crypto/sm/sm4/index.cjs +0 -27
  167. package/dist/cjs/crypto/sm/sm4/sm4.cjs +0 -327
  168. package/dist/cjs/crypto/tea/index.cjs +0 -25
  169. package/dist/cjs/crypto/tea/tea.cjs +0 -187
  170. package/dist/cjs/weapp/index.cjs +0 -142
  171. package/dist/es/crypto/aes/aes.d.ts +0 -156
  172. package/dist/es/crypto/aes/aes.mjs +0 -478
  173. package/dist/es/crypto/aes/index.d.ts +0 -16
  174. package/dist/es/crypto/aes/index.mjs +0 -24
  175. package/dist/es/crypto/base32/base32.d.ts +0 -3
  176. package/dist/es/crypto/base32/base32.mjs +0 -353
  177. package/dist/es/crypto/base32/index.d.ts +0 -24
  178. package/dist/es/crypto/base32/index.mjs +0 -36
  179. package/dist/es/crypto/des/des.d.ts +0 -52
  180. package/dist/es/crypto/des/des.mjs +0 -255
  181. package/dist/es/crypto/des/index.d.ts +0 -14
  182. package/dist/es/crypto/des/index.mjs +0 -25
  183. package/dist/es/crypto/sha/index.d.ts +0 -4
  184. package/dist/es/crypto/sha/sha1/index.d.ts +0 -13
  185. package/dist/es/crypto/sha/sha1/index.mjs +0 -21
  186. package/dist/es/crypto/sha/sha1/sha1.d.ts +0 -2
  187. package/dist/es/crypto/sha/sha1/sha1.mjs +0 -526
  188. package/dist/es/crypto/sha/sha256/index.d.ts +0 -26
  189. package/dist/es/crypto/sha/sha256/index.mjs +0 -38
  190. package/dist/es/crypto/sha/sha256/sha256.d.ts +0 -4
  191. package/dist/es/crypto/sha/sha256/sha256.mjs +0 -590
  192. package/dist/es/crypto/sha/sha3/index.d.ts +0 -24
  193. package/dist/es/crypto/sha/sha3/index.mjs +0 -36
  194. package/dist/es/crypto/sha/sha3/sha3.d.ts +0 -4
  195. package/dist/es/crypto/sha/sha3/sha3.mjs +0 -619
  196. package/dist/es/crypto/sha/sha512/index.d.ts +0 -52
  197. package/dist/es/crypto/sha/sha512/index.mjs +0 -72
  198. package/dist/es/crypto/sha/sha512/sha512.d.ts +0 -8
  199. package/dist/es/crypto/sha/sha512/sha512.mjs +0 -941
  200. package/dist/es/crypto/sm/index.d.ts +0 -3
  201. package/dist/es/crypto/sm/lib/asn1.d.ts +0 -12
  202. package/dist/es/crypto/sm/lib/asn1.mjs +0 -146
  203. package/dist/es/crypto/sm/lib/ec.d.ts +0 -126
  204. package/dist/es/crypto/sm/lib/ec.mjs +0 -312
  205. package/dist/es/crypto/sm/lib/jsbn.d.ts +0 -198
  206. package/dist/es/crypto/sm/lib/jsbn.mjs +0 -1605
  207. package/dist/es/crypto/sm/lib/sm3.d.ts +0 -5
  208. package/dist/es/crypto/sm/lib/sm3.mjs +0 -155
  209. package/dist/es/crypto/sm/lib/utils.d.ts +0 -53
  210. package/dist/es/crypto/sm/lib/utils.mjs +0 -158
  211. package/dist/es/crypto/sm/sm2/index.d.ts +0 -71
  212. package/dist/es/crypto/sm/sm2/index.mjs +0 -101
  213. package/dist/es/crypto/sm/sm2/sm2.d.ts +0 -34
  214. package/dist/es/crypto/sm/sm2/sm2.mjs +0 -220
  215. package/dist/es/crypto/sm/sm3/index.d.ts +0 -7
  216. package/dist/es/crypto/sm/sm3/index.mjs +0 -13
  217. package/dist/es/crypto/sm/sm3/sm3.d.ts +0 -1
  218. package/dist/es/crypto/sm/sm3/sm3.mjs +0 -91
  219. package/dist/es/crypto/sm/sm4/index.d.ts +0 -16
  220. package/dist/es/crypto/sm/sm4/index.mjs +0 -24
  221. package/dist/es/crypto/sm/sm4/sm4.d.ts +0 -2
  222. package/dist/es/crypto/sm/sm4/sm4.mjs +0 -324
  223. package/dist/es/crypto/tea/index.d.ts +0 -14
  224. package/dist/es/crypto/tea/index.mjs +0 -22
  225. package/dist/es/crypto/tea/tea.d.ts +0 -69
  226. package/dist/es/crypto/tea/tea.mjs +0 -185
  227. package/dist/es/weapp/index.d.ts +0 -57
  228. package/dist/es/weapp/index.mjs +0 -131
@@ -1,25 +1,48 @@
1
1
  /**
2
- * 正则
2
+ * 正则表达式相关常量配置(全局只读)
3
+ *
4
+ * CH: 中文汉字
5
+ * EN: 英文字母
6
+ * LOWER_CASE: 小写字母
7
+ * UPPER_CASE: 大写字母
8
+ * CH_NAME: 中文姓名(2-16位)
9
+ * EN_NAME: 英文姓名(1-20位)
10
+ * NUMBER: 数字(包含正数和负数)
11
+ * INTEGER: 整数(包含:0,正整数和负整数)
12
+ * DECIMAL: 小数(包含正小数和负小数)
13
+ * INT_OR_FLOAT: 正整数或者保留两位小数
14
+ * MOBILE: 手机号码(支持+86)
15
+ * PHONE: 固定电话号码(比如:0755-1111111)
16
+ * EMAIL: 邮箱
17
+ * ID_CARD: 一代15位或二代18位身份证
18
+ * ID_CARD15: 仅校验一代15位身份证
19
+ * ID_CARD18: 仅校验二代18位身份证
20
+ * BANK_CARD: 银行卡号
21
+ * POST_CODE: 邮政编码
22
+ * URL: url地址(可获取主机地址、主机名、端口号、协议、查询参数、hash等信息)
23
+ * IP: ip地址
24
+ * IP6: IPv6地址
25
+ * EXTERNAL: 外链(http、https、mail、tel电话)
3
26
  */
4
27
  const REGEXP = {
5
28
  // 中文汉字
6
29
  CH: /^[\u4E00-\u9FA5]+$/,
7
- // 英文字母
8
- EN: /^[a-zA-Z]$/,
30
+ // 英文字母,1个以上
31
+ EN: /^[a-zA-Z]+$/,
9
32
  // 小写字母
10
33
  LOWER_CASE: /^[a-z]+$/,
11
34
  // 大写字母
12
35
  UPPER_CASE: /^[A-Z]+$/,
13
- // 中文姓名,2-16
36
+ // 中文姓名,2-16位(支持少数民族姓名间隔符「·」)
14
37
  CH_NAME: /^[\u4e00-\u9fa5·]{2,16}$/,
15
- // 英文姓名,0-20位
16
- EN_NAME: /(^[a-zA-Z][a-zA-Z\s]{0,20}[a-zA-Z]$)/,
38
+ // 英文姓名,1-20位
39
+ EN_NAME: /^[a-zA-Z\s]{1,20}$/,
17
40
  // 数字,包含正数和负数
18
41
  NUMBER: /^([-+])?\d+(\.\d+)?$/,
19
42
  // 整数,包含:0,正整数和负整数
20
43
  INTEGER: /^(0|[1-9][0-9]*|-[1-9][0-9]*)$/,
21
44
  // 小数,包含正小数和负小数
22
- DECIMAL: /^\d+\.\d+$/,
45
+ DECIMAL: /^([-+])?\d+\.\d+$/,
23
46
  // 正整数或者保留两位小数
24
47
  INT_OR_FLOAT: /(^[1-9][0-9]*$)|(^[1-9][0-9]*\.[0-9]{1,2}$)|(^0\.[0-9]{1,2}$)|(^0$)/,
25
48
  // 手机号码,支持+86
@@ -28,7 +51,7 @@ const REGEXP = {
28
51
  PHONE: /^(?:(?:\d{3}-)?\d{8}|^(?:\d{4}-)?\d{7,8})(?:-\d+)?$/,
29
52
  // 邮箱
30
53
  EMAIL: /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/,
31
- // 一代15位和二代18位身份证
54
+ // 一代15位或二代18位身份证
32
55
  ID_CARD: /(^\d{8}(0\d|10|11|12)([0-2]\d|30|31)\d{3}$)|(^\d{6}(18|19|20)\d{2}(0[1-9]|10|11|12)([0-2]\d|30|31)\d{3}(\d|X|x)$)/,
33
56
  // 仅校验一代15位身份证
34
57
  ID_CARD15: /(^\d{8}(0\d|10|11|12)([0-2]\d|30|31)\d{3}$)/,
@@ -43,9 +66,9 @@ const REGEXP = {
43
66
  // ip地址
44
67
  IP: /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
45
68
  // IPv6地址
46
- IP6: /^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,
69
+ IP6: /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|::([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}|[0-9a-fA-F]{1,4}::([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})$/i,
47
70
  // 是外链,http,https,mail,tel电话
48
- EXTERNAL: /^(http?:|https?:|mailto:|tel:)/,
71
+ EXTERNAL: /^(http:|https:|ftp:|ftps:|mailto:|tel:)/i,
49
72
  };
50
73
 
51
74
  export { REGEXP };
@@ -1,5 +1,13 @@
1
- export namespace SORT {
2
- let DESC: number;
3
- let ASC: number;
4
- let RANDOM: number;
5
- }
1
+ /**
2
+ * 排序相关常量配置(全局只读)
3
+ *
4
+ * DESC: 降序
5
+ * - 取值:0
6
+ *
7
+ * ASC: 升序
8
+ * - 取值:1
9
+ *
10
+ * RANDOM: 随机排序
11
+ * - 取值:2
12
+ */
13
+ export declare const SORT: Record<string, number>;
@@ -1,5 +1,14 @@
1
1
  /**
2
- * 排序
2
+ * 排序相关常量配置(全局只读)
3
+ *
4
+ * DESC: 降序
5
+ * - 取值:0
6
+ *
7
+ * ASC: 升序
8
+ * - 取值:1
9
+ *
10
+ * RANDOM: 随机排序
11
+ * - 取值:2
3
12
  */
4
13
  const SORT = {
5
14
  // 降序
@@ -1,29 +1,29 @@
1
1
  /**
2
2
  * 浏览器是否支持 Cookie
3
- * @returns {Boolean} 返回true和false
3
+ * @returns {boolean} 返回true和false
4
4
  */
5
- export function isSupportCookie(): boolean;
5
+ export declare function isSupportCookie(): boolean;
6
6
  /**
7
7
  * 通过name获取cookie
8
- * @param {String} name 参数name
9
- * @returns {String} 返回获取的值
8
+ * @param {string} name 参数name
9
+ * @returns {string} 返回获取的值
10
10
  */
11
- export function getCookie(name: string): string;
11
+ export declare function getCookie(name: string): string;
12
12
  /**
13
13
  * 通过name设置cookie
14
14
  * 注:timestamp参数不填,则默认为session级别,浏览器关闭即cookie过期
15
- * @param {String} name 参数name
16
- * @param {String} value 设置的value
17
- * @param {Number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
15
+ * @param {string} name 参数name
16
+ * @param {string} value 设置的value
17
+ * @param {number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
18
18
  */
19
- export function setCookie(name: string, value: string, timestamp?: number): void;
19
+ export declare function setCookie(name: string, value: string, timestamp?: number): void;
20
20
  /**
21
21
  * 通过name删除cookie
22
- * @param {String} name 参数name
22
+ * @param {string} name 参数name
23
23
  */
24
- export function removeCookie(name: string): void;
24
+ export declare function removeCookie(name: string): void;
25
25
  /**
26
26
  * 清空当前站点域名的cookie
27
- * @param {String} domain 域名地址,默认是当前站点域名
27
+ * @param {string} domain 域名地址,默认是当前站点域名
28
28
  */
29
- export function clearCookie(domain?: string): void;
29
+ export declare function clearCookie(domain?: string): void;
@@ -1,8 +1,11 @@
1
1
  import { isEmpty } from '../validate/index.mjs';
2
2
 
3
+ /**
4
+ * @module 浏览器Cookie
5
+ */
3
6
  /**
4
7
  * 浏览器是否支持 Cookie
5
- * @returns {Boolean} 返回true和false
8
+ * @returns {boolean} 返回true和false
6
9
  */
7
10
  function isSupportCookie() {
8
11
  return window.navigator.cookieEnabled;
@@ -10,16 +13,16 @@ function isSupportCookie() {
10
13
  /* cookie存储 */
11
14
  /**
12
15
  * 通过name获取cookie
13
- * @param {String} name 参数name
14
- * @returns {String} 返回获取的值
16
+ * @param {string} name 参数name
17
+ * @returns {string} 返回获取的值
15
18
  */
16
19
  function getCookie(name) {
17
20
  if (typeof document == "undefined")
18
21
  return "";
19
22
  // cookie中每个分号后面是有个空格的,需要替换掉
20
- let arr = document.cookie ? document.cookie.replace(/\s/g, "").split(";") : [];
21
- for (let i in arr) {
22
- let tempArr = arr[i].split("=");
23
+ const arr = document.cookie ? document.cookie.replace(/\s/g, "").split(";") : [];
24
+ for (const i in arr) {
25
+ const tempArr = arr[i].split("=");
23
26
  if (tempArr[0] === name) {
24
27
  return decodeURIComponent(tempArr[1]);
25
28
  }
@@ -29,9 +32,9 @@ function getCookie(name) {
29
32
  /**
30
33
  * 通过name设置cookie
31
34
  * 注:timestamp参数不填,则默认为session级别,浏览器关闭即cookie过期
32
- * @param {String} name 参数name
33
- * @param {String} value 设置的value
34
- * @param {Number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
35
+ * @param {string} name 参数name
36
+ * @param {string} value 设置的value
37
+ * @param {number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
35
38
  */
36
39
  function setCookie(name, value, timestamp = 24 * 60 * 60 * 1000) {
37
40
  if (typeof document == "undefined")
@@ -40,7 +43,7 @@ function setCookie(name, value, timestamp = 24 * 60 * 60 * 1000) {
40
43
  }
41
44
  /**
42
45
  * 通过name删除cookie
43
- * @param {String} name 参数name
46
+ * @param {string} name 参数name
44
47
  */
45
48
  function removeCookie(name) {
46
49
  if (isEmpty(name))
@@ -49,11 +52,11 @@ function removeCookie(name) {
49
52
  }
50
53
  /**
51
54
  * 清空当前站点域名的cookie
52
- * @param {String} domain 域名地址,默认是当前站点域名
55
+ * @param {string} domain 域名地址,默认是当前站点域名
53
56
  */
54
57
  function clearCookie(domain = document.domain) {
55
- let names = document.cookie.match(/[^ =;]+(?==)/g);
56
- if (names) {
58
+ const names = document.cookie.match(/[^ =;]+(?==)/g) || [];
59
+ if (names && names.length > 0) {
57
60
  for (let i = names.length; i--;) {
58
61
  document.cookie =
59
62
  names[i] + "=0;path=/;" + domain ? "domain=" + domain + ";" : "" + "expires=" + new Date(0).toUTCString();
@@ -1,5 +1,8 @@
1
- export function utf8Encode(str: any): any;
2
- export function utf8Decode(base64Str: any): any;
3
- export function encode(str: any, asciiOnly: any): any;
4
- export function decode(base64Str: any, asciiOnly: any): any;
5
- export function decodeAsBytes(base64Str: any): number[];
1
+ export function fromUint8Array(uint8Array: Uint8Array, urlSafe?: boolean): string;
2
+ export function toUint8Array(base64Str: string, urlSafe?: boolean): Uint8Array;
3
+ export function fromHex(hexStr: string, urlSafe?: boolean): string;
4
+ export function toHex(base64Str: string, urlSafe?: boolean): string;
5
+ export function encode(data: string | number[] | Uint8Array | ArrayBuffer, urlSafe?: boolean): string;
6
+ export function decode(base64Str: string): string;
7
+ export function encodeURI(data: string | number[] | Uint8Array | ArrayBuffer): string;
8
+ export function decodeURI(base64Str: string): string;