@ivujs/i-utils 1.1.17 → 2.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 (204) hide show
  1. package/README.md +96 -30
  2. package/dist/cjs/ID-card/index.cjs +87 -0
  3. package/dist/cjs/array/index.cjs +470 -0
  4. package/dist/cjs/clipboard/index.cjs +128 -0
  5. package/dist/cjs/color/index.cjs +193 -0
  6. package/dist/cjs/constants/date.cjs +178 -0
  7. package/dist/cjs/constants/id-card.cjs +52 -0
  8. package/dist/cjs/constants/keycode.cjs +117 -0
  9. package/dist/cjs/constants/lang.cjs +13 -0
  10. package/dist/cjs/constants/math.cjs +13 -0
  11. package/dist/cjs/constants/regexp.cjs +53 -0
  12. package/dist/cjs/constants/sort.cjs +15 -0
  13. package/dist/cjs/cookie/index.cjs +70 -0
  14. package/dist/cjs/crypto/aes/aes.cjs +480 -0
  15. package/dist/cjs/crypto/aes/index.cjs +27 -0
  16. package/dist/cjs/crypto/base32/base32.cjs +357 -0
  17. package/dist/cjs/crypto/base32/index.cjs +41 -0
  18. package/dist/cjs/crypto/base64/base64.cjs +348 -0
  19. package/dist/cjs/crypto/base64/index.cjs +59 -0
  20. package/dist/cjs/crypto/des/des.cjs +257 -0
  21. package/dist/cjs/crypto/des/index.cjs +28 -0
  22. package/dist/cjs/crypto/md5/index.cjs +24 -0
  23. package/dist/cjs/crypto/md5/md5.cjs +897 -0
  24. package/dist/cjs/crypto/sha/sha1/index.cjs +24 -0
  25. package/dist/cjs/crypto/sha/sha1/sha1.cjs +529 -0
  26. package/dist/cjs/crypto/sha/sha256/index.cjs +43 -0
  27. package/dist/cjs/crypto/sha/sha256/sha256.cjs +595 -0
  28. package/dist/cjs/crypto/sha/sha3/index.cjs +41 -0
  29. package/dist/cjs/crypto/sha/sha3/sha3.cjs +624 -0
  30. package/dist/cjs/crypto/sha/sha512/index.cjs +81 -0
  31. package/dist/cjs/crypto/sha/sha512/sha512.cjs +950 -0
  32. package/dist/cjs/crypto/sm/lib/asn1.cjs +149 -0
  33. package/dist/cjs/crypto/sm/lib/ec.cjs +315 -0
  34. package/dist/cjs/crypto/sm/lib/jsbn.cjs +1608 -0
  35. package/dist/cjs/crypto/sm/lib/sm3.cjs +158 -0
  36. package/dist/cjs/crypto/sm/lib/utils.cjs +170 -0
  37. package/dist/cjs/crypto/sm/sm2/index.cjs +112 -0
  38. package/dist/cjs/crypto/sm/sm2/sm2.cjs +231 -0
  39. package/dist/cjs/crypto/sm/sm3/index.cjs +15 -0
  40. package/dist/cjs/crypto/sm/sm3/sm3.cjs +93 -0
  41. package/dist/cjs/crypto/sm/sm4/index.cjs +27 -0
  42. package/dist/cjs/crypto/sm/sm4/sm4.cjs +327 -0
  43. package/dist/cjs/crypto/tea/index.cjs +25 -0
  44. package/dist/cjs/crypto/tea/tea.cjs +187 -0
  45. package/dist/cjs/date/index.cjs +1266 -0
  46. package/dist/cjs/desensitized/index.cjs +75 -0
  47. package/dist/cjs/device/index.cjs +151 -0
  48. package/dist/cjs/dom/index.cjs +129 -0
  49. package/dist/cjs/file/index.cjs +333 -0
  50. package/dist/cjs/function/index.cjs +69 -0
  51. package/dist/cjs/index.cjs +402 -7
  52. package/dist/cjs/keycode/index.cjs +33 -0
  53. package/dist/cjs/math/index.cjs +278 -0
  54. package/dist/cjs/number/index.cjs +31 -0
  55. package/dist/cjs/object/index.cjs +272 -0
  56. package/dist/cjs/pagination/index.cjs +131 -0
  57. package/dist/cjs/random/index.cjs +24 -0
  58. package/dist/cjs/regexp/index.cjs +100 -0
  59. package/dist/cjs/storage/index.cjs +11 -0
  60. package/dist/cjs/storage/localStorage.cjs +37 -0
  61. package/dist/cjs/storage/sessionStorage.cjs +37 -0
  62. package/dist/cjs/string/index.cjs +358 -0
  63. package/dist/cjs/url/index.cjs +258 -0
  64. package/dist/cjs/validate/index.cjs +468 -0
  65. package/dist/cjs/weapp/index.cjs +142 -0
  66. package/dist/es/ID-card/index.d.ts +31 -0
  67. package/dist/es/ID-card/index.mjs +81 -0
  68. package/dist/es/array/index.d.ts +203 -0
  69. package/dist/es/array/index.mjs +441 -0
  70. package/dist/es/clipboard/index.d.ts +29 -0
  71. package/dist/es/clipboard/index.mjs +122 -0
  72. package/dist/es/color/index.d.ts +52 -0
  73. package/dist/es/color/index.mjs +183 -0
  74. package/dist/es/constants/date.d.ts +174 -0
  75. package/dist/es/constants/date.mjs +176 -0
  76. package/dist/es/constants/id-card.d.ts +43 -0
  77. package/dist/es/constants/id-card.mjs +50 -0
  78. package/dist/es/constants/index.d.ts +7 -0
  79. package/dist/es/constants/keycode.d.ts +103 -0
  80. package/dist/es/constants/keycode.mjs +115 -0
  81. package/dist/es/constants/lang.d.ts +4 -0
  82. package/dist/es/constants/lang.mjs +11 -0
  83. package/dist/es/constants/math.d.ts +4 -0
  84. package/dist/es/constants/math.mjs +11 -0
  85. package/dist/es/constants/regexp.d.ts +24 -0
  86. package/dist/es/constants/regexp.mjs +51 -0
  87. package/dist/es/constants/sort.d.ts +5 -0
  88. package/dist/es/constants/sort.mjs +13 -0
  89. package/dist/es/cookie/index.d.ts +29 -0
  90. package/dist/es/cookie/index.mjs +64 -0
  91. package/dist/es/crypto/aes/aes.d.ts +156 -0
  92. package/dist/es/crypto/aes/aes.mjs +478 -0
  93. package/dist/es/crypto/aes/index.d.ts +16 -0
  94. package/dist/es/crypto/aes/index.mjs +24 -0
  95. package/dist/es/crypto/base32/base32.d.ts +3 -0
  96. package/dist/es/crypto/base32/base32.mjs +353 -0
  97. package/dist/es/crypto/base32/index.d.ts +24 -0
  98. package/dist/es/crypto/base32/index.mjs +36 -0
  99. package/dist/es/crypto/base64/base64.d.ts +5 -0
  100. package/dist/es/crypto/base64/base64.mjs +342 -0
  101. package/dist/es/crypto/base64/index.d.ts +36 -0
  102. package/dist/es/crypto/base64/index.mjs +52 -0
  103. package/dist/es/crypto/des/des.d.ts +52 -0
  104. package/dist/es/crypto/des/des.mjs +255 -0
  105. package/dist/es/crypto/des/index.d.ts +14 -0
  106. package/dist/es/crypto/des/index.mjs +25 -0
  107. package/dist/es/crypto/index.d.ts +8 -0
  108. package/dist/es/crypto/md5/index.d.ts +13 -0
  109. package/dist/es/crypto/md5/index.mjs +21 -0
  110. package/dist/es/crypto/md5/md5.d.ts +144 -0
  111. package/dist/es/crypto/md5/md5.mjs +894 -0
  112. package/dist/es/crypto/sha/index.d.ts +4 -0
  113. package/dist/es/crypto/sha/sha1/index.d.ts +13 -0
  114. package/dist/es/crypto/sha/sha1/index.mjs +21 -0
  115. package/dist/es/crypto/sha/sha1/sha1.d.ts +2 -0
  116. package/dist/es/crypto/sha/sha1/sha1.mjs +526 -0
  117. package/dist/es/crypto/sha/sha256/index.d.ts +26 -0
  118. package/dist/es/crypto/sha/sha256/index.mjs +38 -0
  119. package/dist/es/crypto/sha/sha256/sha256.d.ts +4 -0
  120. package/dist/es/crypto/sha/sha256/sha256.mjs +590 -0
  121. package/dist/es/crypto/sha/sha3/index.d.ts +24 -0
  122. package/dist/es/crypto/sha/sha3/index.mjs +36 -0
  123. package/dist/es/crypto/sha/sha3/sha3.d.ts +4 -0
  124. package/dist/es/crypto/sha/sha3/sha3.mjs +619 -0
  125. package/dist/es/crypto/sha/sha512/index.d.ts +52 -0
  126. package/dist/es/crypto/sha/sha512/index.mjs +72 -0
  127. package/dist/es/crypto/sha/sha512/sha512.d.ts +8 -0
  128. package/dist/es/crypto/sha/sha512/sha512.mjs +941 -0
  129. package/dist/es/crypto/sm/index.d.ts +3 -0
  130. package/dist/es/crypto/sm/lib/asn1.d.ts +12 -0
  131. package/dist/es/crypto/sm/lib/asn1.mjs +146 -0
  132. package/dist/es/crypto/sm/lib/ec.d.ts +126 -0
  133. package/dist/es/crypto/sm/lib/ec.mjs +312 -0
  134. package/dist/es/crypto/sm/lib/jsbn.d.ts +198 -0
  135. package/dist/es/crypto/sm/lib/jsbn.mjs +1605 -0
  136. package/dist/es/crypto/sm/lib/sm3.d.ts +5 -0
  137. package/dist/es/crypto/sm/lib/sm3.mjs +155 -0
  138. package/dist/es/crypto/sm/lib/utils.d.ts +53 -0
  139. package/dist/es/crypto/sm/lib/utils.mjs +158 -0
  140. package/dist/es/crypto/sm/sm2/index.d.ts +71 -0
  141. package/dist/es/crypto/sm/sm2/index.mjs +101 -0
  142. package/dist/es/crypto/sm/sm2/sm2.d.ts +34 -0
  143. package/dist/es/crypto/sm/sm2/sm2.mjs +220 -0
  144. package/dist/es/crypto/sm/sm3/index.d.ts +7 -0
  145. package/dist/es/crypto/sm/sm3/index.mjs +13 -0
  146. package/dist/es/crypto/sm/sm3/sm3.d.ts +1 -0
  147. package/dist/es/crypto/sm/sm3/sm3.mjs +91 -0
  148. package/dist/es/crypto/sm/sm4/index.d.ts +16 -0
  149. package/dist/es/crypto/sm/sm4/index.mjs +24 -0
  150. package/dist/es/crypto/sm/sm4/sm4.d.ts +2 -0
  151. package/dist/es/crypto/sm/sm4/sm4.mjs +324 -0
  152. package/dist/es/crypto/tea/index.d.ts +14 -0
  153. package/dist/es/crypto/tea/index.mjs +22 -0
  154. package/dist/es/crypto/tea/tea.d.ts +69 -0
  155. package/dist/es/crypto/tea/tea.mjs +185 -0
  156. package/dist/es/date/index.d.ts +547 -0
  157. package/dist/es/date/index.mjs +1179 -0
  158. package/dist/es/desensitized/index.d.ts +38 -0
  159. package/dist/es/desensitized/index.mjs +69 -0
  160. package/dist/es/device/index.d.ts +67 -0
  161. package/dist/es/device/index.mjs +137 -0
  162. package/dist/es/dom/index.d.ts +57 -0
  163. package/dist/es/dom/index.mjs +119 -0
  164. package/dist/es/file/index.d.ts +93 -0
  165. package/dist/es/file/index.mjs +317 -0
  166. package/dist/es/function/index.d.ts +23 -0
  167. package/dist/es/function/index.mjs +65 -0
  168. package/dist/es/index.d.ts +26 -1
  169. package/dist/es/index.mjs +57 -4
  170. package/dist/es/keycode/index.d.ts +12 -0
  171. package/dist/es/keycode/index.mjs +30 -0
  172. package/dist/es/math/index.d.ts +66 -0
  173. package/dist/es/math/index.mjs +268 -0
  174. package/dist/es/number/index.d.ts +14 -0
  175. package/dist/es/number/index.mjs +28 -0
  176. package/dist/es/object/index.d.ts +83 -0
  177. package/dist/es/object/index.mjs +259 -0
  178. package/dist/es/pagination/index.d.ts +34 -0
  179. package/dist/es/pagination/index.mjs +125 -0
  180. package/dist/es/random/index.d.ts +15 -0
  181. package/dist/es/random/index.mjs +21 -0
  182. package/dist/es/regexp/index.d.ts +63 -0
  183. package/dist/es/regexp/index.mjs +89 -0
  184. package/dist/es/storage/index.d.ts +7 -0
  185. package/dist/es/storage/index.mjs +9 -0
  186. package/dist/es/storage/localStorage.d.ts +21 -0
  187. package/dist/es/storage/localStorage.mjs +32 -0
  188. package/dist/es/storage/sessionStorage.d.ts +21 -0
  189. package/dist/es/storage/sessionStorage.mjs +32 -0
  190. package/dist/es/string/index.d.ts +121 -0
  191. package/dist/es/string/index.mjs +339 -0
  192. package/dist/es/url/index.d.ts +118 -0
  193. package/dist/es/url/index.mjs +240 -0
  194. package/dist/es/validate/index.d.ts +228 -0
  195. package/dist/es/validate/index.mjs +431 -0
  196. package/dist/es/weapp/index.d.ts +57 -0
  197. package/dist/es/weapp/index.mjs +131 -0
  198. package/dist/index.d.ts +2857 -17
  199. package/dist/lib/index.full.umd.js +14238 -31
  200. package/dist/lib/index.full.umd.min.js +64 -2
  201. package/dist/lib/index.full.umd.min.js.map +1 -1
  202. package/dist/resolver/auto-imports.cjs +337 -1
  203. package/dist/resolver/auto-imports.mjs +337 -1
  204. package/package.json +90 -91
@@ -0,0 +1,43 @@
1
+ export namespace ID_CARD {
2
+ let PROVINCE: {
3
+ 11: string;
4
+ 12: string;
5
+ 13: string;
6
+ 14: string;
7
+ 15: string;
8
+ 21: string;
9
+ 22: string;
10
+ 23: string;
11
+ 31: string;
12
+ 32: string;
13
+ 33: string;
14
+ 34: string;
15
+ 35: string;
16
+ 36: string;
17
+ 37: string;
18
+ 41: string;
19
+ 42: string;
20
+ 43: string;
21
+ 44: string;
22
+ 45: string;
23
+ 46: string;
24
+ 50: string;
25
+ 51: string;
26
+ 52: string;
27
+ 53: string;
28
+ 54: string;
29
+ 61: string;
30
+ 62: string;
31
+ 63: string;
32
+ 64: string;
33
+ 65: string;
34
+ 71: string;
35
+ 81: string;
36
+ 82: string;
37
+ 91: string;
38
+ };
39
+ namespace SEX {
40
+ let MAN: string;
41
+ let WOMAN: string;
42
+ }
43
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * 身份证号
3
+ */
4
+ const ID_CARD = {
5
+ // 身份证号对应的省
6
+ PROVINCE: {
7
+ 11: "北京",
8
+ 12: "天津",
9
+ 13: "河北",
10
+ 14: "山西",
11
+ 15: "内蒙古",
12
+ 21: "辽宁",
13
+ 22: "吉林",
14
+ 23: "黑龙江",
15
+ 31: "上海",
16
+ 32: "江苏",
17
+ 33: "浙江",
18
+ 34: "安徽",
19
+ 35: "福建",
20
+ 36: "江西",
21
+ 37: "山东",
22
+ 41: "河南",
23
+ 42: "湖北",
24
+ 43: "湖南",
25
+ 44: "广东",
26
+ 45: "广西",
27
+ 46: "海南",
28
+ 50: "重庆",
29
+ 51: "四川",
30
+ 52: "贵州",
31
+ 53: "云南",
32
+ 54: "西藏",
33
+ 61: "陕西",
34
+ 62: "甘肃",
35
+ 63: "青海",
36
+ 64: "宁夏",
37
+ 65: "新疆",
38
+ 71: "台湾",
39
+ 81: "香港",
40
+ 82: "澳门",
41
+ 91: "国外",
42
+ },
43
+ // 性别
44
+ SEX: {
45
+ MAN: "男",
46
+ WOMAN: "女",
47
+ },
48
+ };
49
+
50
+ export { ID_CARD };
@@ -0,0 +1,7 @@
1
+ export * from "./sort.js";
2
+ export * from "./math.js";
3
+ export * from "./lang.js";
4
+ export * from "./regexp.js";
5
+ export * from "./date.js";
6
+ export * from "./keycode.js";
7
+ export * from "./id-card.js";
@@ -0,0 +1,103 @@
1
+ export const KEYCODE: {
2
+ 8: string;
3
+ 9: string;
4
+ 13: string;
5
+ 16: string;
6
+ 17: string;
7
+ 18: string;
8
+ 19: string;
9
+ 20: string;
10
+ 27: string;
11
+ 32: string;
12
+ 33: string;
13
+ 34: string;
14
+ 35: string;
15
+ 36: string;
16
+ 37: string;
17
+ 38: string;
18
+ 39: string;
19
+ 40: string;
20
+ 42: string;
21
+ 45: string;
22
+ 46: string;
23
+ 48: string;
24
+ 49: string;
25
+ 50: string;
26
+ 51: string;
27
+ 52: string;
28
+ 53: string;
29
+ 54: string;
30
+ 55: string;
31
+ 56: string;
32
+ 57: string;
33
+ 65: string;
34
+ 66: string;
35
+ 67: string;
36
+ 68: string;
37
+ 69: string;
38
+ 70: string;
39
+ 71: string;
40
+ 72: string;
41
+ 73: string;
42
+ 74: string;
43
+ 75: string;
44
+ 76: string;
45
+ 77: string;
46
+ 78: string;
47
+ 79: string;
48
+ 80: string;
49
+ 81: string;
50
+ 82: string;
51
+ 83: string;
52
+ 84: string;
53
+ 85: string;
54
+ 86: string;
55
+ 87: string;
56
+ 88: string;
57
+ 89: string;
58
+ 90: string;
59
+ 91: string;
60
+ 93: string;
61
+ 96: string;
62
+ 97: string;
63
+ 98: string;
64
+ 99: string;
65
+ 100: string;
66
+ 101: string;
67
+ 102: string;
68
+ 103: string;
69
+ 104: string;
70
+ 105: string;
71
+ 106: string;
72
+ 107: string;
73
+ 109: string;
74
+ 110: string;
75
+ 111: string;
76
+ 112: string;
77
+ 113: string;
78
+ 114: string;
79
+ 115: string;
80
+ 116: string;
81
+ 117: string;
82
+ 118: string;
83
+ 119: string;
84
+ 120: string;
85
+ 121: string;
86
+ 122: string;
87
+ 123: string;
88
+ 144: string;
89
+ 145: string;
90
+ 182: string;
91
+ 183: string;
92
+ 186: string;
93
+ 187: string;
94
+ 188: string;
95
+ 189: string;
96
+ 190: string;
97
+ 191: string;
98
+ 192: string;
99
+ 219: string;
100
+ 220: string;
101
+ 221: string;
102
+ 222: string;
103
+ };
@@ -0,0 +1,115 @@
1
+ /*
2
+ * 键盘码
3
+ */
4
+ const KEYCODE = {
5
+ // 字符键
6
+ 8: "Backspace",
7
+ 9: "Tab",
8
+ 13: "Enter",
9
+ 16: "Shift",
10
+ 17: "Ctrl",
11
+ 18: "Alt",
12
+ 19: "Pause",
13
+ 20: "Caps Lock",
14
+ 27: "Escape",
15
+ 32: "Space",
16
+ 33: "Page Up",
17
+ 34: "Page Down",
18
+ 35: "End",
19
+ 36: "Home",
20
+ 37: "Left",
21
+ 38: "Up",
22
+ 39: "Right",
23
+ 40: "Down",
24
+ 42: "Print Screen",
25
+ 45: "Insert",
26
+ 46: "Delete",
27
+ // 数字键
28
+ 48: "0",
29
+ 49: "1",
30
+ 50: "2",
31
+ 51: "3",
32
+ 52: "4",
33
+ 53: "5",
34
+ 54: "6",
35
+ 55: "7",
36
+ 56: "8",
37
+ 57: "9",
38
+ // 字母键
39
+ 65: "A",
40
+ 66: "B",
41
+ 67: "C",
42
+ 68: "D",
43
+ 69: "E",
44
+ 70: "F",
45
+ 71: "G",
46
+ 72: "H",
47
+ 73: "I",
48
+ 74: "J",
49
+ 75: "K",
50
+ 76: "L",
51
+ 77: "M",
52
+ 78: "N",
53
+ 79: "O",
54
+ 80: "P",
55
+ 81: "Q",
56
+ 82: "R",
57
+ 83: "S",
58
+ 84: "T",
59
+ 85: "U",
60
+ 86: "V",
61
+ 87: "W",
62
+ 88: "X",
63
+ 89: "Y",
64
+ 90: "Z",
65
+ // window
66
+ 91: "Windows",
67
+ 93: "Right Click",
68
+ // Numpad
69
+ 96: "Numpad 0",
70
+ 97: "Numpad 1",
71
+ 98: "Numpad 2",
72
+ 99: "Numpad 3",
73
+ 100: "Numpad 4",
74
+ 101: "Numpad 5",
75
+ 102: "Numpad 6",
76
+ 103: "Numpad 7",
77
+ 104: "Numpad 8",
78
+ 105: "Numpad 9",
79
+ 106: "Numpad *",
80
+ 107: "Numpad +",
81
+ 109: "Numpad -",
82
+ 110: "Numpad .",
83
+ 111: "Numpad /",
84
+ // F功能键
85
+ 112: "F1",
86
+ 113: "F2",
87
+ 114: "F3",
88
+ 115: "F4",
89
+ 116: "F5",
90
+ 117: "F6",
91
+ 118: "F7",
92
+ 119: "F8",
93
+ 120: "F9",
94
+ 121: "F10",
95
+ 122: "F11",
96
+ 123: "F12",
97
+ // 特殊符号
98
+ 144: "Num Lock",
99
+ 145: "Scroll Lock",
100
+ 182: "My Computer",
101
+ 183: "My Calculator",
102
+ 186: ";",
103
+ 187: "=",
104
+ 188: ",",
105
+ 189: "-",
106
+ 190: ".",
107
+ 191: "/",
108
+ 192: "`",
109
+ 219: "[",
110
+ 220: "\\",
111
+ 221: "]",
112
+ 222: "'",
113
+ };
114
+
115
+ export { KEYCODE };
@@ -0,0 +1,4 @@
1
+ export namespace LANG {
2
+ let ZH: string;
3
+ let EN: string;
4
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 语言
3
+ */
4
+ const LANG = {
5
+ // 中文
6
+ ZH: "zh",
7
+ // 英文
8
+ EN: "en",
9
+ };
10
+
11
+ export { LANG };
@@ -0,0 +1,4 @@
1
+ export namespace MATH {
2
+ let ROUND: number;
3
+ let ROUND_FLOOR: number;
4
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 数学
3
+ */
4
+ const MATH = {
5
+ // 正常四舍五入,如:1.354保留两位是1.35;1.355保留两位是1.36;
6
+ ROUND: 0,
7
+ // 向下舍出,如:1.354保留两位是1.35;1.355保留两位是1.35;
8
+ ROUND_FLOOR: 1,
9
+ };
10
+
11
+ export { MATH };
@@ -0,0 +1,24 @@
1
+ export namespace REGEXP {
2
+ let CH: RegExp;
3
+ let EN: RegExp;
4
+ let LOWER_CASE: RegExp;
5
+ let UPPER_CASE: RegExp;
6
+ let CH_NAME: RegExp;
7
+ let EN_NAME: RegExp;
8
+ let NUMBER: RegExp;
9
+ let INTEGER: RegExp;
10
+ let DECIMAL: RegExp;
11
+ let INT_OR_FLOAT: RegExp;
12
+ let MOBILE: RegExp;
13
+ let PHONE: RegExp;
14
+ let EMAIL: RegExp;
15
+ let ID_CARD: RegExp;
16
+ let ID_CARD15: RegExp;
17
+ let ID_CARD18: RegExp;
18
+ let BANK_CARD: RegExp;
19
+ let POST_CODE: RegExp;
20
+ let URL: RegExp;
21
+ let IP: RegExp;
22
+ let IP6: RegExp;
23
+ let EXTERNAL: RegExp;
24
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * 正则
3
+ */
4
+ const REGEXP = {
5
+ // 中文汉字
6
+ CH: /^[\u4E00-\u9FA5]+$/,
7
+ // 英文字母
8
+ EN: /^[a-zA-Z]$/,
9
+ // 小写字母
10
+ LOWER_CASE: /^[a-z]+$/,
11
+ // 大写字母
12
+ UPPER_CASE: /^[A-Z]+$/,
13
+ // 中文姓名,2-16位
14
+ CH_NAME: /^[\u4e00-\u9fa5·]{2,16}$/,
15
+ // 英文姓名,0-20位
16
+ EN_NAME: /(^[a-zA-Z][a-zA-Z\s]{0,20}[a-zA-Z]$)/,
17
+ // 数字,包含正数和负数
18
+ NUMBER: /^([-+])?\d+(\.\d+)?$/,
19
+ // 整数,包含:0,正整数和负整数
20
+ INTEGER: /^(0|[1-9][0-9]*|-[1-9][0-9]*)$/,
21
+ // 小数,包含正小数和负小数
22
+ DECIMAL: /^\d+\.\d+$/,
23
+ // 正整数或者保留两位小数
24
+ INT_OR_FLOAT: /(^[1-9][0-9]*$)|(^[1-9][0-9]*\.[0-9]{1,2}$)|(^0\.[0-9]{1,2}$)|(^0$)/,
25
+ // 手机号码,支持+86
26
+ MOBILE: /^(?:(?:\+|00)86)?1[1-9]\d{9}$/,
27
+ // 固定电话号码,比如:0755-1111111
28
+ PHONE: /^(?:(?:\d{3}-)?\d{8}|^(?:\d{4}-)?\d{7,8})(?:-\d+)?$/,
29
+ // 邮箱
30
+ EMAIL: /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/,
31
+ // 一代15位和二代18位身份证
32
+ 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
+ // 仅校验一代15位身份证
34
+ ID_CARD15: /(^\d{8}(0\d|10|11|12)([0-2]\d|30|31)\d{3}$)/,
35
+ // 仅校验二代18位身份证
36
+ ID_CARD18: /(^\d{6}(18|19|20)\d{2}(0[1-9]|10|11|12)([0-2]\d|30|31)\d{3}(\d|X|x)$)/,
37
+ // 银行卡号
38
+ BANK_CARD: /^[1-9]\d{9,29}$/,
39
+ // 邮政编码
40
+ POST_CODE: /^(0[1-7]|1[0-356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[0-5]|8[013-6])\d{4}$/,
41
+ // url地址,可以获取到主机地址、主机名、端口号、协议、查询参数、hash等信息c
42
+ URL: /^(?:(ftp|https?|ftps):\/\/)?((?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+(?:[a-zA-Z]{2,6})?)?(?::(\d+))?(?:\/([^\?#]*))?(?:\?([^#]*))?(?:#(.*))?$/,
43
+ // ip地址
44
+ 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
+ // 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]))$/,
47
+ // 是外链,http,https,mail,tel电话
48
+ EXTERNAL: /^(http?:|https?:|mailto:|tel:)/,
49
+ };
50
+
51
+ export { REGEXP };
@@ -0,0 +1,5 @@
1
+ export namespace SORT {
2
+ let DESC: number;
3
+ let ASC: number;
4
+ let RANDOM: number;
5
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * 排序
3
+ */
4
+ const SORT = {
5
+ // 降序
6
+ DESC: 0,
7
+ // 升序
8
+ ASC: 1,
9
+ // 随机排序
10
+ RANDOM: 2,
11
+ };
12
+
13
+ export { SORT };
@@ -0,0 +1,29 @@
1
+ /**
2
+ * 浏览器是否支持 Cookie
3
+ * @returns {Boolean} 返回true和false
4
+ */
5
+ export function isSupportCookie(): boolean;
6
+ /**
7
+ * 通过name获取cookie
8
+ * @param {String} name 参数name
9
+ * @returns {String} 返回获取的值
10
+ */
11
+ export function getCookie(name: string): string;
12
+ /**
13
+ * 通过name设置cookie
14
+ * 注:timestamp参数不填,则默认为session级别,浏览器关闭即cookie过期
15
+ * @param {String} name 参数name
16
+ * @param {String} value 设置的value
17
+ * @param {Number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
18
+ */
19
+ export function setCookie(name: string, value: string, timestamp?: number): void;
20
+ /**
21
+ * 通过name删除cookie
22
+ * @param {String} name 参数name
23
+ */
24
+ export function removeCookie(name: string): void;
25
+ /**
26
+ * 清空当前站点域名的cookie
27
+ * @param {String} domain 域名地址,默认是当前站点域名
28
+ */
29
+ export function clearCookie(domain?: string): void;
@@ -0,0 +1,64 @@
1
+ import { isEmpty } from '../validate/index.mjs';
2
+
3
+ /**
4
+ * 浏览器是否支持 Cookie
5
+ * @returns {Boolean} 返回true和false
6
+ */
7
+ function isSupportCookie() {
8
+ return window.navigator.cookieEnabled;
9
+ }
10
+ /* cookie存储 */
11
+ /**
12
+ * 通过name获取cookie
13
+ * @param {String} name 参数name
14
+ * @returns {String} 返回获取的值
15
+ */
16
+ function getCookie(name) {
17
+ if (typeof document == "undefined")
18
+ return "";
19
+ // 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
+ if (tempArr[0] === name) {
24
+ return decodeURIComponent(tempArr[1]);
25
+ }
26
+ }
27
+ return "";
28
+ }
29
+ /**
30
+ * 通过name设置cookie
31
+ * 注:timestamp参数不填,则默认为session级别,浏览器关闭即cookie过期
32
+ * @param {String} name 参数name
33
+ * @param {String} value 设置的value
34
+ * @param {Number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
35
+ */
36
+ function setCookie(name, value, timestamp = 24 * 60 * 60 * 1000) {
37
+ if (typeof document == "undefined")
38
+ return;
39
+ document.cookie = name + "=" + value + ";expires=" + new Date(Date.now() + timestamp);
40
+ }
41
+ /**
42
+ * 通过name删除cookie
43
+ * @param {String} name 参数name
44
+ */
45
+ function removeCookie(name) {
46
+ if (isEmpty(name))
47
+ return;
48
+ setCookie(name, "", -1);
49
+ }
50
+ /**
51
+ * 清空当前站点域名的cookie
52
+ * @param {String} domain 域名地址,默认是当前站点域名
53
+ */
54
+ function clearCookie(domain = document.domain) {
55
+ let names = document.cookie.match(/[^ =;]+(?==)/g);
56
+ if (names) {
57
+ for (let i = names.length; i--;) {
58
+ document.cookie =
59
+ names[i] + "=0;path=/;" + domain ? "domain=" + domain + ";" : "" + "expires=" + new Date(0).toUTCString();
60
+ }
61
+ }
62
+ }
63
+
64
+ export { clearCookie, getCookie, isSupportCookie, removeCookie, setCookie };