@tiny-codes/react-easy 1.0.3 → 1.0.4

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 (96) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/es/components/BreakLines/index.js +43 -26
  3. package/es/components/BreakLines/index.js.map +1 -1
  4. package/es/components/ConfigProvider/context.js +3 -3
  5. package/es/components/ConfigProvider/context.js.map +1 -1
  6. package/es/components/ConfigProvider/index.js +37 -35
  7. package/es/components/ConfigProvider/index.js.map +1 -1
  8. package/es/components/ConfirmAction/index.d.ts +74 -6
  9. package/es/components/ConfirmAction/index.js +210 -104
  10. package/es/components/ConfirmAction/index.js.map +1 -1
  11. package/es/components/DeleteConfirmAction/index.js +22 -20
  12. package/es/components/DeleteConfirmAction/index.js.map +1 -1
  13. package/es/components/ModalAction/index.d.ts +45 -5
  14. package/es/components/ModalAction/index.js +393 -209
  15. package/es/components/ModalAction/index.js.map +1 -1
  16. package/es/components/index.js +10 -8
  17. package/es/components/index.js.map +1 -1
  18. package/es/hooks/index.js +4 -4
  19. package/es/hooks/index.js.map +1 -1
  20. package/es/hooks/useContextValidator.js +7 -12
  21. package/es/hooks/useContextValidator.js.map +1 -1
  22. package/es/hooks/useLocalizedText.js +6 -4
  23. package/es/hooks/useLocalizedText.js.map +1 -1
  24. package/es/hooks/useRefFunction.js +13 -6
  25. package/es/hooks/useRefFunction.js.map +1 -1
  26. package/es/hooks/useT.js +11 -8
  27. package/es/hooks/useT.js.map +1 -1
  28. package/es/hooks/useValidator.js +7 -4
  29. package/es/hooks/useValidator.js.map +1 -1
  30. package/es/hooks/useValidatorBuilder.js +146 -117
  31. package/es/hooks/useValidatorBuilder.js.map +1 -1
  32. package/es/hooks/useValidators.js +94 -58
  33. package/es/hooks/useValidators.js.map +1 -1
  34. package/es/index.js +2 -2
  35. package/es/index.js.map +1 -1
  36. package/es/locales/index.js +19 -13
  37. package/es/locales/index.js.map +1 -1
  38. package/es/locales/langs/en-US.js +20 -20
  39. package/es/locales/langs/en-US.js.map +1 -1
  40. package/es/locales/langs/en.js +1 -1
  41. package/es/locales/langs/en.js.map +1 -1
  42. package/es/locales/langs/zh-CN.js +20 -20
  43. package/es/locales/langs/zh-CN.js.map +1 -1
  44. package/es/utils/index.js +1 -1
  45. package/es/utils/index.js.map +1 -1
  46. package/lib/components/BreakLines/index.js +50 -37
  47. package/lib/components/BreakLines/index.js.map +7 -1
  48. package/lib/components/ConfigProvider/context.js +35 -6
  49. package/lib/components/ConfigProvider/context.js.map +7 -1
  50. package/lib/components/ConfigProvider/index.js +56 -42
  51. package/lib/components/ConfigProvider/index.js.map +7 -1
  52. package/lib/components/ConfirmAction/index.d.ts +74 -6
  53. package/lib/components/ConfirmAction/index.js +194 -138
  54. package/lib/components/ConfirmAction/index.js.map +7 -1
  55. package/lib/components/DeleteConfirmAction/index.js +50 -51
  56. package/lib/components/DeleteConfirmAction/index.js.map +7 -1
  57. package/lib/components/ModalAction/index.d.ts +45 -5
  58. package/lib/components/ModalAction/index.js +303 -243
  59. package/lib/components/ModalAction/index.js.map +7 -1
  60. package/lib/components/index.js +63 -11
  61. package/lib/components/index.js.map +7 -1
  62. package/lib/hooks/index.js +49 -5
  63. package/lib/hooks/index.js.map +7 -1
  64. package/lib/hooks/useContextValidator.js +47 -11
  65. package/lib/hooks/useContextValidator.js.map +7 -1
  66. package/lib/hooks/useLocalizedText.js +41 -15
  67. package/lib/hooks/useLocalizedText.js.map +7 -1
  68. package/lib/hooks/useRefFunction.js +34 -21
  69. package/lib/hooks/useRefFunction.js.map +7 -1
  70. package/lib/hooks/useT.js +43 -11
  71. package/lib/hooks/useT.js.map +7 -1
  72. package/lib/hooks/useValidator.js +41 -12
  73. package/lib/hooks/useValidator.js.map +7 -1
  74. package/lib/hooks/useValidatorBuilder.js +149 -132
  75. package/lib/hooks/useValidatorBuilder.js.map +7 -1
  76. package/lib/hooks/useValidators.js +104 -67
  77. package/lib/hooks/useValidators.js.map +7 -1
  78. package/lib/index.js +26 -3
  79. package/lib/index.js.map +7 -1
  80. package/lib/locales/index.js +58 -15
  81. package/lib/locales/index.js.map +7 -1
  82. package/lib/locales/langs/en-US.js +46 -22
  83. package/lib/locales/langs/en-US.js.map +7 -1
  84. package/lib/locales/langs/en.js +37 -3
  85. package/lib/locales/langs/en.js.map +7 -1
  86. package/lib/locales/langs/zh-CN.js +46 -22
  87. package/lib/locales/langs/zh-CN.js.map +7 -1
  88. package/lib/utils/index.js +1 -2
  89. package/lib/utils/index.js.map +7 -1
  90. package/package.json +14 -15
  91. package/es/hooks/useValidateContext.d.ts +0 -2
  92. package/es/hooks/useValidateContext.js +0 -16
  93. package/es/hooks/useValidateContext.js.map +0 -1
  94. package/lib/hooks/useValidateContext.d.ts +0 -2
  95. package/lib/hooks/useValidateContext.js +0 -16
  96. package/lib/hooks/useValidateContext.js.map +0 -1
@@ -1,139 +1,168 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
7
  import { useMemo } from 'react';
2
8
  import escape from 'escape-string-regexp';
3
- import useT from './useT';
4
- const nameSeparator = 'validation.rule.buildRule.token.separator';
9
+ import useT from "./useT";
10
+ var nameSeparator = 'validation.rule.buildRule.token.separator';
11
+
5
12
  /**
6
13
  * **EN:** Get a validation rule builder to build validation rules
7
14
  *
8
15
  * **CN:** 获取一个校验规则生成器,用来构建校验规则
9
16
  */
10
- const useValidatorBuilder = () => {
11
- const t = useT();
12
- return useMemo(() => (props) => buildRule(Object.assign(Object.assign({}, props), { t })), [t]);
17
+ var useValidatorBuilder = function useValidatorBuilder() {
18
+ var t = useT();
19
+ return useMemo(function () {
20
+ return function (props) {
21
+ return buildRule(_objectSpread(_objectSpread({}, props), {}, {
22
+ t: t
23
+ }));
24
+ };
25
+ }, [t]);
13
26
  };
27
+
14
28
  /**
15
29
  * **EN:** Build regular expression rules dynamically, compatible with ant-design rules
16
30
  *
17
31
  * **CN:** 动态构建正则表达式规则,与 ant-design 的规则兼容
18
32
  */
19
33
  function buildRule(options) {
20
- var _a, _b;
21
- const { allowed, startsWith, flags, t } = options;
22
- if (!Object.values(allowed).some((v) => v === true)) {
23
- throw new Error(t('validation.rule.buildRule.includeMandatory'));
34
+ var allowed = options.allowed,
35
+ startsWith = options.startsWith,
36
+ flags = options.flags,
37
+ t = options.t;
38
+ if (!Object.values(allowed).some(function (v) {
39
+ return v === true;
40
+ })) {
41
+ throw new Error(t('validation.rule.buildRule.includeMandatory'));
42
+ }
43
+ var symbols = [];
44
+ var messages = [];
45
+ symbols.push("^");
46
+
47
+ // Process startsWith rules
48
+ if (startsWith) {
49
+ var meta = buildRuleMeta({
50
+ flags: startsWith,
51
+ t: t
52
+ });
53
+ symbols.push("[".concat(meta.symbols.join(''), "]"));
54
+ messages.push(t('validation.rule.buildRule.startsWithFormat', {
55
+ prefix: meta.messages.join(t(nameSeparator))
56
+ }));
57
+ }
58
+
59
+ // Process allowed rules
60
+ {
61
+ var _allowed$min, _allowed$max;
62
+ var _meta = buildRuleMeta({
63
+ flags: allowed,
64
+ t: t
65
+ });
66
+ var min = (_allowed$min = allowed.min) !== null && _allowed$min !== void 0 ? _allowed$min : 0;
67
+ var max = (_allowed$max = allowed.max) !== null && _allowed$max !== void 0 ? _allowed$max : 0; // 0 means unlimited
68
+
69
+ // If there is startWith in the regular expression, the limited data amount needs to be reduced by 1
70
+ var cMin = min && startsWith ? min - 1 : min;
71
+ var cMax = max && startsWith ? max - 1 : max;
72
+ symbols.push("[".concat(_meta.symbols.join(''), "]{").concat(cMin, ",").concat(cMax || '', "}"));
73
+ if (_meta.messages.length === 0) {
74
+ messages.unshift("");
75
+ } else if (_meta.messages.length === 1) {
76
+ messages.unshift("".concat(_meta.messages.join(t(nameSeparator))));
77
+ } else {
78
+ messages.unshift("".concat(_meta.messages.join(t(nameSeparator))));
24
79
  }
25
- const symbols = [];
26
- const messages = [];
27
- symbols.push(`^`);
28
- // Process startsWith rules
29
- if (startsWith) {
30
- const meta = buildRuleMeta({
31
- flags: startsWith,
32
- t,
33
- });
34
- symbols.push(`[${meta.symbols.join('')}]`);
35
- messages.push(t('validation.rule.buildRule.startsWithFormat', {
36
- prefix: meta.messages.join(t(nameSeparator)),
80
+ if (min && max) {
81
+ messages.push(t('validation.rule.buildRule.rangeLength', {
82
+ min: min,
83
+ max: max
84
+ }));
85
+ } else {
86
+ if (min > 1) {
87
+ messages.push(t('validation.rule.buildRule.minLength', {
88
+ min: min
37
89
  }));
90
+ }
91
+ if (max) {
92
+ messages.push(t('validation.rule.buildRule.maxLength', {
93
+ max: max
94
+ }));
95
+ }
38
96
  }
39
- // Process allowed rules
40
- {
41
- const meta = buildRuleMeta({ flags: allowed, t });
42
- const min = (_a = allowed.min) !== null && _a !== void 0 ? _a : 0;
43
- const max = (_b = allowed.max) !== null && _b !== void 0 ? _b : 0; // 0 means unlimited
44
- // If there is startWith in the regular expression, the limited data amount needs to be reduced by 1
45
- const cMin = min && startsWith ? min - 1 : min;
46
- const cMax = max && startsWith ? max - 1 : max;
47
- symbols.push(`[${meta.symbols.join('')}]{${cMin},${cMax || ''}}`);
48
- if (meta.messages.length === 0) {
49
- messages.unshift(``);
50
- }
51
- else if (meta.messages.length === 1) {
52
- messages.unshift(`${meta.messages.join(t(nameSeparator))}`);
53
- }
54
- else {
55
- messages.unshift(`${meta.messages.join(t(nameSeparator))}`);
56
- }
57
- if (min && max) {
58
- messages.push(t('validation.rule.buildRule.rangeLength', {
59
- min,
60
- max,
61
- }));
62
- }
63
- else {
64
- if (min > 1) {
65
- messages.push(t('validation.rule.buildRule.minLength', { min }));
66
- }
67
- if (max) {
68
- messages.push(t('validation.rule.buildRule.maxLength', { max }));
69
- }
70
- }
71
- }
72
- symbols.push(`$`);
73
- let message = messages.join('');
74
- if (message.startsWith(t(nameSeparator))) {
75
- message = message.slice(1);
76
- }
77
- return {
78
- pattern: new RegExp(symbols.join(''), flags),
79
- message: t('validation.rule.buildRule.messageFormat', { content: message }),
80
- allowedOptions: allowed,
81
- startsWithOptions: startsWith,
82
- flags,
83
- };
97
+ }
98
+ symbols.push("$");
99
+ var message = messages.join('');
100
+ if (message.startsWith(t(nameSeparator))) {
101
+ message = message.slice(1);
102
+ }
103
+ return {
104
+ pattern: new RegExp(symbols.join(''), flags),
105
+ message: t('validation.rule.buildRule.messageFormat', {
106
+ content: message
107
+ }),
108
+ allowedOptions: allowed,
109
+ startsWithOptions: startsWith,
110
+ flags: flags
111
+ };
84
112
  }
85
113
  function buildRuleMeta(options) {
86
- const { flags, t } = options;
87
- const symbols = [];
88
- const messages = [];
89
- if (flags.chineseCharacter) {
90
- // Chinese characters
91
- symbols.push(`\u4e00-\u9fa5`);
92
- messages.push(t('validation.rule.buildRule.token.chinese'));
93
- }
94
- if (flags.chinesePunctuation) {
95
- // Chinese punctuation
96
- symbols.push(`\u3000-\u301e`);
97
- symbols.push(`\u3021-\u303f`);
98
- symbols.push(`\uff00-\uffef`);
99
- messages.push(t('validation.rule.buildRule.token.chinesePunctuation'));
100
- }
101
- if (flags.letter) {
102
- symbols.push(`a-zA-Z`);
103
- messages.push(t('validation.rule.buildRule.token.letter'));
104
- }
105
- else if (flags.lowerLetter) {
106
- symbols.push(`a-z`);
107
- messages.push(t('validation.rule.buildRule.token.lowerLetter'));
108
- }
109
- else if (flags.upperLetter) {
110
- symbols.push(`A-Z`);
111
- messages.push(t('validation.rule.buildRule.token.upperLetter'));
112
- }
113
- if (flags.number) {
114
- symbols.push(`0-9`);
115
- messages.push(t('validation.rule.buildRule.token.number'));
116
- }
117
- const excludeSpecials = [];
118
- if (flags.hyphen) {
119
- symbols.push(`\\-`);
120
- messages.push(`-`);
121
- excludeSpecials.push('-');
122
- }
123
- if (flags.underscore) {
124
- symbols.push(`_`);
125
- messages.push(`_`);
126
- excludeSpecials.push('_');
127
- }
128
- if (flags.special) {
129
- const specials = flags.special.filter((v) => !excludeSpecials.includes(v));
130
- symbols.push(escape(specials.join('')));
131
- messages.push(specials.join(t(nameSeparator)));
132
- }
133
- return {
134
- symbols,
135
- messages,
136
- };
114
+ var flags = options.flags,
115
+ t = options.t;
116
+ var symbols = [];
117
+ var messages = [];
118
+ if (flags.chineseCharacter) {
119
+ // Chinese characters
120
+ symbols.push("\u4E00-\u9FA5");
121
+ messages.push(t('validation.rule.buildRule.token.chinese'));
122
+ }
123
+ if (flags.chinesePunctuation) {
124
+ // Chinese punctuation
125
+ symbols.push("\u3000-\u301E");
126
+ symbols.push("\u3021-\u303F");
127
+ symbols.push("\uFF00-\uFFEF");
128
+ messages.push(t('validation.rule.buildRule.token.chinesePunctuation'));
129
+ }
130
+ if (flags.letter) {
131
+ symbols.push("a-zA-Z");
132
+ messages.push(t('validation.rule.buildRule.token.letter'));
133
+ } else if (flags.lowerLetter) {
134
+ symbols.push("a-z");
135
+ messages.push(t('validation.rule.buildRule.token.lowerLetter'));
136
+ } else if (flags.upperLetter) {
137
+ symbols.push("A-Z");
138
+ messages.push(t('validation.rule.buildRule.token.upperLetter'));
139
+ }
140
+ if (flags.number) {
141
+ symbols.push("0-9");
142
+ messages.push(t('validation.rule.buildRule.token.number'));
143
+ }
144
+ var excludeSpecials = [];
145
+ if (flags.hyphen) {
146
+ symbols.push("\\-");
147
+ messages.push("-");
148
+ excludeSpecials.push('-');
149
+ }
150
+ if (flags.underscore) {
151
+ symbols.push("_");
152
+ messages.push("_");
153
+ excludeSpecials.push('_');
154
+ }
155
+ if (flags.special) {
156
+ var specials = flags.special.filter(function (v) {
157
+ return !excludeSpecials.includes(v);
158
+ });
159
+ symbols.push(escape(specials.join('')));
160
+ messages.push(specials.join(t(nameSeparator)));
161
+ }
162
+ return {
163
+ symbols: symbols,
164
+ messages: messages
165
+ };
137
166
  }
138
167
  export default useValidatorBuilder;
139
168
  //# sourceMappingURL=useValidatorBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useValidatorBuilder.js","sourceRoot":"","sources":["../../src/hooks/useValidatorBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"names":["useMemo","escape","useT","nameSeparator","useValidatorBuilder","t","props","buildRule","_objectSpread","options","allowed","startsWith","flags","Object","values","some","v","Error","symbols","messages","push","meta","buildRuleMeta","concat","join","prefix","_allowed$min","_allowed$max","min","max","cMin","cMax","length","unshift","message","slice","pattern","RegExp","content","allowedOptions","startsWithOptions","chineseCharacter","chinesePunctuation","letter","lowerLetter","upperLetter","number","excludeSpecials","hyphen","underscore","special","specials","filter","includes"],"sources":["../../src/hooks/useValidatorBuilder.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport escape from 'escape-string-regexp';\nimport useT from './useT';\n\nconst nameSeparator = 'validation.rule.buildRule.token.separator';\n\n/**\n * **EN:** Get a validation rule builder to build validation rules\n *\n * **CN:** 获取一个校验规则生成器,用来构建校验规则\n */\nconst useValidatorBuilder = () => {\n const t = useT();\n return useMemo(() => (props: BuilderOptions) => buildRule({ ...props, t }), [t]);\n};\n\n/**\n * **EN:** Build regular expression rules dynamically, compatible with ant-design rules\n *\n * **CN:** 动态构建正则表达式规则,与 ant-design 的规则兼容\n */\nfunction buildRule(\n options: BuilderOptions & {\n /**\n * **EN:** Internationalization function\n *\n * **CN:** 国际化函数\n */\n t: ReturnType<typeof useT>;\n }\n): ValidatorRule {\n const { allowed, startsWith, flags, t } = options;\n if (!Object.values(allowed).some((v) => v === true)) {\n throw new Error(t('validation.rule.buildRule.includeMandatory'));\n }\n\n const symbols: string[] = [];\n const messages: string[] = [];\n symbols.push(`^`);\n\n // Process startsWith rules\n if (startsWith) {\n const meta = buildRuleMeta({\n flags: startsWith,\n t,\n });\n symbols.push(`[${meta.symbols.join('')}]`);\n messages.push(\n t('validation.rule.buildRule.startsWithFormat', {\n prefix: meta.messages.join(t(nameSeparator)),\n })\n );\n }\n\n // Process allowed rules\n {\n const meta = buildRuleMeta({ flags: allowed, t });\n\n const min = allowed.min ?? 0;\n const max = allowed.max ?? 0; // 0 means unlimited\n\n // If there is startWith in the regular expression, the limited data amount needs to be reduced by 1\n const cMin = min && startsWith ? min - 1 : min;\n const cMax = max && startsWith ? max - 1 : max;\n\n symbols.push(`[${meta.symbols.join('')}]{${cMin},${cMax || ''}}`);\n if (meta.messages.length === 0) {\n messages.unshift(``);\n } else if (meta.messages.length === 1) {\n messages.unshift(`${meta.messages.join(t(nameSeparator))}`);\n } else {\n messages.unshift(`${meta.messages.join(t(nameSeparator))}`);\n }\n if (min && max) {\n messages.push(\n t('validation.rule.buildRule.rangeLength', {\n min,\n max,\n })\n );\n } else {\n if (min > 1) {\n messages.push(t('validation.rule.buildRule.minLength', { min }));\n }\n if (max) {\n messages.push(t('validation.rule.buildRule.maxLength', { max }));\n }\n }\n }\n symbols.push(`$`);\n\n let message = messages.join('');\n if (message.startsWith(t(nameSeparator))) {\n message = message.slice(1);\n }\n return {\n pattern: new RegExp(symbols.join(''), flags),\n message: t('validation.rule.buildRule.messageFormat', { content: message }),\n allowedOptions: allowed,\n startsWithOptions: startsWith,\n flags,\n };\n}\n\nfunction buildRuleMeta(options: { flags: RuleRegExpFlags; t: ReturnType<typeof useT> }): RuleMeta {\n const { flags, t } = options;\n const symbols: string[] = [];\n const messages: string[] = [];\n if (flags.chineseCharacter) {\n // Chinese characters\n symbols.push(`\\u4e00-\\u9fa5`);\n messages.push(t('validation.rule.buildRule.token.chinese'));\n }\n if (flags.chinesePunctuation) {\n // Chinese punctuation\n symbols.push(`\\u3000-\\u301e`);\n symbols.push(`\\u3021-\\u303f`);\n symbols.push(`\\uff00-\\uffef`);\n messages.push(t('validation.rule.buildRule.token.chinesePunctuation'));\n }\n if (flags.letter) {\n symbols.push(`a-zA-Z`);\n messages.push(t('validation.rule.buildRule.token.letter'));\n } else if (flags.lowerLetter) {\n symbols.push(`a-z`);\n messages.push(t('validation.rule.buildRule.token.lowerLetter'));\n } else if (flags.upperLetter) {\n symbols.push(`A-Z`);\n messages.push(t('validation.rule.buildRule.token.upperLetter'));\n }\n if (flags.number) {\n symbols.push(`0-9`);\n messages.push(t('validation.rule.buildRule.token.number'));\n }\n const excludeSpecials: string[] = [];\n if (flags.hyphen) {\n symbols.push(`\\\\-`);\n messages.push(`-`);\n excludeSpecials.push('-');\n }\n if (flags.underscore) {\n symbols.push(`_`);\n messages.push(`_`);\n excludeSpecials.push('_');\n }\n if (flags.special) {\n const specials = flags.special.filter((v) => !excludeSpecials.includes(v));\n symbols.push(escape(specials.join('')));\n messages.push(specials.join(t(nameSeparator)));\n }\n return {\n symbols,\n messages,\n };\n}\n\nexport interface BuilderOptions {\n /**\n * **EN:** The rule of allowed characters\n *\n * **CN:** 允许字符的规则\n */\n allowed: RuleRegExpFlags;\n /**\n * **EN:** The rule of the starting character\n *\n * **CN:** 开头字符的规则\n */\n startsWith?: Omit<RuleRegExpFlags, 'min' | 'max'>;\n /**\n * **EN:** Regular expression flags\n *\n * **CN:** 正则表达式的标志\n */\n flags?: string;\n}\n\nexport interface RuleRegExpFlags {\n /**\n * **EN:** Include lowercase and uppercase Latin characters. If set to true, `lowerLetter` and\n * `upperLetter` option are not effective\n *\n * **CN:**: 包含大小写拉丁字符。如果设置为true,则`lowerLetter`和`upperLetter`属性不生效\n */\n\n letter?: boolean;\n /**\n * **EN:** Include lowercase English letters\n *\n * **CN:**: 包含小写英文字符\n */\n lowerLetter?: boolean;\n /**\n * **EN:** Include uppercase English letters\n *\n * **CN:**: 包含大写英文字符\n */\n upperLetter?: boolean;\n /**\n * **EN:** Include Chinese characters\n *\n * **CN:** 包含中文字符\n */\n chineseCharacter?: boolean;\n /**\n * **EN:** Include Chinese (full-width) punctuation\n *\n * **CN:** 包含中文(全角)标点符号\n */\n chinesePunctuation?: boolean;\n /**\n * **EN:** Include numbers\n *\n * **CN:** 包含数字\n */\n number?: boolean;\n /**\n * **EN:** Include hyphens (-)\n *\n * **CN:** 包含连字符(-)\n */\n hyphen?: boolean;\n /**\n * **EN:** Include underscores (_)\n *\n * **CN:** 包含下划线(_)\n */\n underscore?: boolean;\n /**\n * **EN:** Include specified special characters\n *\n * **CN:** 包含指定的特殊字符\n */\n special?: string[];\n /**\n * **EN:** Minimum number of characters\n *\n * **CN:** 最小字符数量\n *\n * @default 1\n */\n min?: number;\n /**\n * **EN:** Maximum number of characters\n *\n * **CN:** 最大字符数量\n */\n max?: number;\n}\n\nexport type StartsWithRegExpFlags = RuleRegExpFlags;\n\nexport interface ValidatorRule extends Validator {\n /**\n * **EN:** The options of allowed characters\n *\n * **CN:** 允许字符的规则设置\n */\n allowedOptions: RuleRegExpFlags;\n /**\n * **EN:** The options of the starting character\n *\n * **CN:** 开头字符的规则设置\n */\n startsWithOptions?: StartsWithRegExpFlags;\n /**\n * **EN:** Regular expression flags\n *\n * **CN:** 正则表达式的标志\n */\n flags?: string;\n}\n\ninterface RuleMeta {\n symbols: string[];\n messages: string[];\n}\n\nexport interface Validator {\n /**\n * **EN:** Regular expression for verification\n *\n * **CN:** 校验正则表达式\n */\n pattern: RegExp;\n /**\n * **EN:** Prompt message when verification fails\n *\n * **CN:** 校验失败时的提示信息\n */\n message: string;\n}\n\nexport default useValidatorBuilder;\n"],"mappings":";;;;;;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,OAAOC,MAAM,MAAM,sBAAsB;AACzC,OAAOC,IAAI;AAEX,IAAMC,aAAa,GAAG,2CAA2C;;AAEjE;AACA;AACA;AACA;AACA;AACA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EAChC,IAAMC,CAAC,GAAGH,IAAI,CAAC,CAAC;EAChB,OAAOF,OAAO,CAAC;IAAA,OAAM,UAACM,KAAqB;MAAA,OAAKC,SAAS,CAAAC,aAAA,CAAAA,aAAA,KAAMF,KAAK;QAAED,CAAC,EAADA;MAAC,EAAE,CAAC;IAAA;EAAA,GAAE,CAACA,CAAC,CAAC,CAAC;AAClF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,SAASE,SAASA,CAChBE,OAOC,EACc;EACf,IAAQC,OAAO,GAA2BD,OAAO,CAAzCC,OAAO;IAAEC,UAAU,GAAeF,OAAO,CAAhCE,UAAU;IAAEC,KAAK,GAAQH,OAAO,CAApBG,KAAK;IAAEP,CAAC,GAAKI,OAAO,CAAbJ,CAAC;EACrC,IAAI,CAACQ,MAAM,CAACC,MAAM,CAACJ,OAAO,CAAC,CAACK,IAAI,CAAC,UAACC,CAAC;IAAA,OAAKA,CAAC,KAAK,IAAI;EAAA,EAAC,EAAE;IACnD,MAAM,IAAIC,KAAK,CAACZ,CAAC,CAAC,4CAA4C,CAAC,CAAC;EAClE;EAEA,IAAMa,OAAiB,GAAG,EAAE;EAC5B,IAAMC,QAAkB,GAAG,EAAE;EAC7BD,OAAO,CAACE,IAAI,IAAI,CAAC;;EAEjB;EACA,IAAIT,UAAU,EAAE;IACd,IAAMU,IAAI,GAAGC,aAAa,CAAC;MACzBV,KAAK,EAAED,UAAU;MACjBN,CAAC,EAADA;IACF,CAAC,CAAC;IACFa,OAAO,CAACE,IAAI,KAAAG,MAAA,CAAKF,IAAI,CAACH,OAAO,CAACM,IAAI,CAAC,EAAE,CAAC,MAAG,CAAC;IAC1CL,QAAQ,CAACC,IAAI,CACXf,CAAC,CAAC,4CAA4C,EAAE;MAC9CoB,MAAM,EAAEJ,IAAI,CAACF,QAAQ,CAACK,IAAI,CAACnB,CAAC,CAACF,aAAa,CAAC;IAC7C,CAAC,CACH,CAAC;EACH;;EAEA;EACA;IAAA,IAAAuB,YAAA,EAAAC,YAAA;IACE,IAAMN,KAAI,GAAGC,aAAa,CAAC;MAAEV,KAAK,EAAEF,OAAO;MAAEL,CAAC,EAADA;IAAE,CAAC,CAAC;IAEjD,IAAMuB,GAAG,IAAAF,YAAA,GAAGhB,OAAO,CAACkB,GAAG,cAAAF,YAAA,cAAAA,YAAA,GAAI,CAAC;IAC5B,IAAMG,GAAG,IAAAF,YAAA,GAAGjB,OAAO,CAACmB,GAAG,cAAAF,YAAA,cAAAA,YAAA,GAAI,CAAC,CAAC,CAAC;;IAE9B;IACA,IAAMG,IAAI,GAAGF,GAAG,IAAIjB,UAAU,GAAGiB,GAAG,GAAG,CAAC,GAAGA,GAAG;IAC9C,IAAMG,IAAI,GAAGF,GAAG,IAAIlB,UAAU,GAAGkB,GAAG,GAAG,CAAC,GAAGA,GAAG;IAE9CX,OAAO,CAACE,IAAI,KAAAG,MAAA,CAAKF,KAAI,CAACH,OAAO,CAACM,IAAI,CAAC,EAAE,CAAC,QAAAD,MAAA,CAAKO,IAAI,OAAAP,MAAA,CAAIQ,IAAI,IAAI,EAAE,MAAG,CAAC;IACjE,IAAIV,KAAI,CAACF,QAAQ,CAACa,MAAM,KAAK,CAAC,EAAE;MAC9Bb,QAAQ,CAACc,OAAO,GAAG,CAAC;IACtB,CAAC,MAAM,IAAIZ,KAAI,CAACF,QAAQ,CAACa,MAAM,KAAK,CAAC,EAAE;MACrCb,QAAQ,CAACc,OAAO,IAAAV,MAAA,CAAIF,KAAI,CAACF,QAAQ,CAACK,IAAI,CAACnB,CAAC,CAACF,aAAa,CAAC,CAAC,CAAE,CAAC;IAC7D,CAAC,MAAM;MACLgB,QAAQ,CAACc,OAAO,IAAAV,MAAA,CAAIF,KAAI,CAACF,QAAQ,CAACK,IAAI,CAACnB,CAAC,CAACF,aAAa,CAAC,CAAC,CAAE,CAAC;IAC7D;IACA,IAAIyB,GAAG,IAAIC,GAAG,EAAE;MACdV,QAAQ,CAACC,IAAI,CACXf,CAAC,CAAC,uCAAuC,EAAE;QACzCuB,GAAG,EAAHA,GAAG;QACHC,GAAG,EAAHA;MACF,CAAC,CACH,CAAC;IACH,CAAC,MAAM;MACL,IAAID,GAAG,GAAG,CAAC,EAAE;QACXT,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,qCAAqC,EAAE;UAAEuB,GAAG,EAAHA;QAAI,CAAC,CAAC,CAAC;MAClE;MACA,IAAIC,GAAG,EAAE;QACPV,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,qCAAqC,EAAE;UAAEwB,GAAG,EAAHA;QAAI,CAAC,CAAC,CAAC;MAClE;IACF;EACF;EACAX,OAAO,CAACE,IAAI,IAAI,CAAC;EAEjB,IAAIc,OAAO,GAAGf,QAAQ,CAACK,IAAI,CAAC,EAAE,CAAC;EAC/B,IAAIU,OAAO,CAACvB,UAAU,CAACN,CAAC,CAACF,aAAa,CAAC,CAAC,EAAE;IACxC+B,OAAO,GAAGA,OAAO,CAACC,KAAK,CAAC,CAAC,CAAC;EAC5B;EACA,OAAO;IACLC,OAAO,EAAE,IAAIC,MAAM,CAACnB,OAAO,CAACM,IAAI,CAAC,EAAE,CAAC,EAAEZ,KAAK,CAAC;IAC5CsB,OAAO,EAAE7B,CAAC,CAAC,yCAAyC,EAAE;MAAEiC,OAAO,EAAEJ;IAAQ,CAAC,CAAC;IAC3EK,cAAc,EAAE7B,OAAO;IACvB8B,iBAAiB,EAAE7B,UAAU;IAC7BC,KAAK,EAALA;EACF,CAAC;AACH;AAEA,SAASU,aAAaA,CAACb,OAA+D,EAAY;EAChG,IAAQG,KAAK,GAAQH,OAAO,CAApBG,KAAK;IAAEP,CAAC,GAAKI,OAAO,CAAbJ,CAAC;EAChB,IAAMa,OAAiB,GAAG,EAAE;EAC5B,IAAMC,QAAkB,GAAG,EAAE;EAC7B,IAAIP,KAAK,CAAC6B,gBAAgB,EAAE;IAC1B;IACAvB,OAAO,CAACE,IAAI,gBAAgB,CAAC;IAC7BD,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,yCAAyC,CAAC,CAAC;EAC7D;EACA,IAAIO,KAAK,CAAC8B,kBAAkB,EAAE;IAC5B;IACAxB,OAAO,CAACE,IAAI,gBAAgB,CAAC;IAC7BF,OAAO,CAACE,IAAI,gBAAgB,CAAC;IAC7BF,OAAO,CAACE,IAAI,gBAAgB,CAAC;IAC7BD,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,oDAAoD,CAAC,CAAC;EACxE;EACA,IAAIO,KAAK,CAAC+B,MAAM,EAAE;IAChBzB,OAAO,CAACE,IAAI,SAAS,CAAC;IACtBD,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,wCAAwC,CAAC,CAAC;EAC5D,CAAC,MAAM,IAAIO,KAAK,CAACgC,WAAW,EAAE;IAC5B1B,OAAO,CAACE,IAAI,MAAM,CAAC;IACnBD,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,6CAA6C,CAAC,CAAC;EACjE,CAAC,MAAM,IAAIO,KAAK,CAACiC,WAAW,EAAE;IAC5B3B,OAAO,CAACE,IAAI,MAAM,CAAC;IACnBD,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,6CAA6C,CAAC,CAAC;EACjE;EACA,IAAIO,KAAK,CAACkC,MAAM,EAAE;IAChB5B,OAAO,CAACE,IAAI,MAAM,CAAC;IACnBD,QAAQ,CAACC,IAAI,CAACf,CAAC,CAAC,wCAAwC,CAAC,CAAC;EAC5D;EACA,IAAM0C,eAAyB,GAAG,EAAE;EACpC,IAAInC,KAAK,CAACoC,MAAM,EAAE;IAChB9B,OAAO,CAACE,IAAI,MAAM,CAAC;IACnBD,QAAQ,CAACC,IAAI,IAAI,CAAC;IAClB2B,eAAe,CAAC3B,IAAI,CAAC,GAAG,CAAC;EAC3B;EACA,IAAIR,KAAK,CAACqC,UAAU,EAAE;IACpB/B,OAAO,CAACE,IAAI,IAAI,CAAC;IACjBD,QAAQ,CAACC,IAAI,IAAI,CAAC;IAClB2B,eAAe,CAAC3B,IAAI,CAAC,GAAG,CAAC;EAC3B;EACA,IAAIR,KAAK,CAACsC,OAAO,EAAE;IACjB,IAAMC,QAAQ,GAAGvC,KAAK,CAACsC,OAAO,CAACE,MAAM,CAAC,UAACpC,CAAC;MAAA,OAAK,CAAC+B,eAAe,CAACM,QAAQ,CAACrC,CAAC,CAAC;IAAA,EAAC;IAC1EE,OAAO,CAACE,IAAI,CAACnB,MAAM,CAACkD,QAAQ,CAAC3B,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvCL,QAAQ,CAACC,IAAI,CAAC+B,QAAQ,CAAC3B,IAAI,CAACnB,CAAC,CAACF,aAAa,CAAC,CAAC,CAAC;EAChD;EACA,OAAO;IACLe,OAAO,EAAPA,OAAO;IACPC,QAAQ,EAARA;EACF,CAAC;AACH;AA2IA,eAAef,mBAAmB"}
@@ -1,68 +1,104 @@
1
1
  import { useMemo } from 'react';
2
- import useRefFunction from './useRefFunction';
3
- import useT from './useT';
4
- import useValidatorBuilder from './useValidatorBuilder';
2
+ import useRefFunction from "./useRefFunction";
3
+ import useT from "./useT";
4
+ import useValidatorBuilder from "./useValidatorBuilder";
5
+
5
6
  /**
6
7
  * **EN:** Get built-in validation rules, used to verify common data formats, compatible with
7
8
  * ant-design rules
8
9
  *
9
10
  * **CN:** 获取内置的校验规则,用于校验常见的数据格式,与 ant-design 的规则兼容
10
11
  */
11
- const useValidators = () => {
12
- const t = useT();
13
- const build = useValidatorBuilder();
14
- const codeWithMax = useRefFunction((max) => build({
15
- allowed: { letter: true, number: true, underscore: true, max },
16
- startsWith: { letter: true },
17
- }));
18
- const nameWithMax = useRefFunction((max) => build({
19
- allowed: { letter: true, number: true, hyphen: true, underscore: true, chineseCharacter: true, max },
20
- startsWith: { chineseCharacter: true, letter: true },
21
- }));
22
- const strongNameWithMax = useRefFunction((max) => build({
23
- allowed: { letter: true, number: true, hyphen: true, underscore: true, chineseCharacter: true, max },
24
- startsWith: { chineseCharacter: true, letter: true },
25
- }));
26
- return useMemo(() => ({
27
- number: {
28
- pattern: /^\d+$/,
29
- message: t('validation.rule.number.message'),
30
- },
31
- floatNumber: {
32
- pattern: /^-?\d+(\.\d+)?$/,
33
- message: t('validation.rule.floatNumber.message'),
34
- },
35
- email: {
36
- pattern: /^[A-Za-z0-9_\u4e00-\u9fa5-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/,
37
- message: t('validation.rule.email.message'),
38
- },
39
- ip: {
40
- pattern: /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
41
- message: t('validation.rule.ip.message'),
42
- },
43
- cnMobile: {
44
- pattern: /^(?:\+86\s*)?1[23456789]\d{9}$/,
45
- message: t('validation.rule.mobile.message'),
46
- },
47
- password: {
48
- pattern: /^(?![\d]+$)(?![a-z]+$)(?![A-Z]+$)(?![!@#$%^&*~()-+`_=|\\{};:'"/,.<>?]+$)[\da-zA-z!@#$%^&*~()-+`_=|\\{};:'"/,.<>?]{8,16}$/,
49
- message: 'validation.rule.password.message',
50
- },
51
- code: codeWithMax(undefined),
52
- codeMax20: codeWithMax(20),
53
- codeMax64: codeWithMax(64),
54
- codeMax128: codeWithMax(128),
55
- codeWithMax,
56
- name: nameWithMax(undefined),
57
- nameMax20: nameWithMax(20),
58
- nameMax64: nameWithMax(64),
59
- nameMax128: nameWithMax(128),
60
- nameWithMax,
61
- strongName: strongNameWithMax(undefined),
62
- strongNameMax64: strongNameWithMax(64),
63
- strongNameMax128: strongNameWithMax(128),
64
- strongNameWithMax,
65
- }), [codeWithMax, nameWithMax, strongNameWithMax, t]);
12
+ var useValidators = function useValidators() {
13
+ var t = useT();
14
+ var build = useValidatorBuilder();
15
+ var codeWithMax = useRefFunction(function (max) {
16
+ return build({
17
+ allowed: {
18
+ letter: true,
19
+ number: true,
20
+ underscore: true,
21
+ max: max
22
+ },
23
+ startsWith: {
24
+ letter: true
25
+ }
26
+ });
27
+ });
28
+ var nameWithMax = useRefFunction(function (max) {
29
+ return build({
30
+ allowed: {
31
+ letter: true,
32
+ number: true,
33
+ hyphen: true,
34
+ underscore: true,
35
+ chineseCharacter: true,
36
+ max: max
37
+ },
38
+ startsWith: {
39
+ chineseCharacter: true,
40
+ letter: true
41
+ }
42
+ });
43
+ });
44
+ var strongNameWithMax = useRefFunction(function (max) {
45
+ return build({
46
+ allowed: {
47
+ letter: true,
48
+ number: true,
49
+ hyphen: true,
50
+ underscore: true,
51
+ chineseCharacter: true,
52
+ max: max
53
+ },
54
+ startsWith: {
55
+ chineseCharacter: true,
56
+ letter: true
57
+ }
58
+ });
59
+ });
60
+ return useMemo(function () {
61
+ return {
62
+ number: {
63
+ pattern: /^\d+$/,
64
+ message: t('validation.rule.number.message')
65
+ },
66
+ floatNumber: {
67
+ pattern: /^-?\d+(\.\d+)?$/,
68
+ message: t('validation.rule.floatNumber.message')
69
+ },
70
+ email: {
71
+ pattern: /^[A-Za-z0-9_\u4e00-\u9fa5-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/,
72
+ message: t('validation.rule.email.message')
73
+ },
74
+ ip: {
75
+ pattern: /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
76
+ message: t('validation.rule.ip.message')
77
+ },
78
+ cnMobile: {
79
+ pattern: /^(?:\+86\s*)?1[23456789]\d{9}$/,
80
+ message: t('validation.rule.mobile.message')
81
+ },
82
+ password: {
83
+ pattern: /^(?![\d]+$)(?![a-z]+$)(?![A-Z]+$)(?![!@#$%^&*~()-+`_=|\\{};:'"/,.<>?]+$)[\da-zA-z!@#$%^&*~()-+`_=|\\{};:'"/,.<>?]{8,16}$/,
84
+ message: 'validation.rule.password.message'
85
+ },
86
+ code: codeWithMax(undefined),
87
+ codeMax20: codeWithMax(20),
88
+ codeMax64: codeWithMax(64),
89
+ codeMax128: codeWithMax(128),
90
+ codeWithMax: codeWithMax,
91
+ name: nameWithMax(undefined),
92
+ nameMax20: nameWithMax(20),
93
+ nameMax64: nameWithMax(64),
94
+ nameMax128: nameWithMax(128),
95
+ nameWithMax: nameWithMax,
96
+ strongName: strongNameWithMax(undefined),
97
+ strongNameMax64: strongNameWithMax(64),
98
+ strongNameMax128: strongNameWithMax(128),
99
+ strongNameWithMax: strongNameWithMax
100
+ };
101
+ }, [codeWithMax, nameWithMax, strongNameWithMax, t]);
66
102
  };
67
103
  export default useValidators;
68
104
  //# sourceMappingURL=useValidators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useValidators.js","sourceRoot":"","sources":["../../src/hooks/useValidators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"names":["useMemo","useRefFunction","useT","useValidatorBuilder","useValidators","t","build","codeWithMax","max","allowed","letter","number","underscore","startsWith","nameWithMax","hyphen","chineseCharacter","strongNameWithMax","pattern","message","floatNumber","email","ip","cnMobile","password","code","undefined","codeMax20","codeMax64","codeMax128","name","nameMax20","nameMax64","nameMax128","strongName","strongNameMax64","strongNameMax128"],"sources":["../../src/hooks/useValidators.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport useRefFunction from './useRefFunction';\nimport useT from './useT';\nimport useValidatorBuilder, { type Validator, type ValidatorRule } from './useValidatorBuilder';\n\n/**\n * **EN:** Get built-in validation rules, used to verify common data formats, compatible with\n * ant-design rules\n *\n * **CN:** 获取内置的校验规则,用于校验常见的数据格式,与 ant-design 的规则兼容\n */\nconst useValidators = (): ValidatorRuleMap => {\n const t = useT();\n const build = useValidatorBuilder();\n\n const codeWithMax = useRefFunction((max?: number) =>\n build({\n allowed: { letter: true, number: true, underscore: true, max },\n startsWith: { letter: true },\n })\n );\n const nameWithMax = useRefFunction((max?: number) =>\n build({\n allowed: { letter: true, number: true, hyphen: true, underscore: true, chineseCharacter: true, max },\n startsWith: { chineseCharacter: true, letter: true },\n })\n );\n const strongNameWithMax = useRefFunction((max?: number) =>\n build({\n allowed: { letter: true, number: true, hyphen: true, underscore: true, chineseCharacter: true, max },\n startsWith: { chineseCharacter: true, letter: true },\n })\n );\n\n return useMemo<ValidatorRuleMap>(\n () => ({\n number: {\n pattern: /^\\d+$/,\n message: t('validation.rule.number.message'),\n },\n floatNumber: {\n pattern: /^-?\\d+(\\.\\d+)?$/,\n message: t('validation.rule.floatNumber.message'),\n },\n email: {\n pattern: /^[A-Za-z0-9_\\u4e00-\\u9fa5-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$/,\n message: t('validation.rule.email.message'),\n },\n ip: {\n pattern: /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,\n message: t('validation.rule.ip.message'),\n },\n cnMobile: {\n pattern: /^(?:\\+86\\s*)?1[23456789]\\d{9}$/,\n message: t('validation.rule.mobile.message'),\n },\n password: {\n pattern:\n /^(?![\\d]+$)(?![a-z]+$)(?![A-Z]+$)(?![!@#$%^&*~()-+`_=|\\\\{};:'\"/,.<>?]+$)[\\da-zA-z!@#$%^&*~()-+`_=|\\\\{};:'\"/,.<>?]{8,16}$/,\n message: 'validation.rule.password.message',\n },\n\n code: codeWithMax(undefined),\n codeMax20: codeWithMax(20),\n codeMax64: codeWithMax(64),\n codeMax128: codeWithMax(128),\n codeWithMax,\n\n name: nameWithMax(undefined),\n nameMax20: nameWithMax(20),\n nameMax64: nameWithMax(64),\n nameMax128: nameWithMax(128),\n nameWithMax,\n\n strongName: strongNameWithMax(undefined),\n strongNameMax64: strongNameWithMax(64),\n strongNameMax128: strongNameWithMax(128),\n strongNameWithMax,\n }),\n [codeWithMax, nameWithMax, strongNameWithMax, t]\n );\n};\n\nexport interface ValidatorRuleMap {\n /**\n * **EN:** Number\n *\n * **CN:** 数字\n */\n number: Validator;\n /**\n * **EN:** Floating point number\n *\n * **CN:** 浮点数\n */\n floatNumber: Validator;\n /**\n * **EN:** Email address regular expression (supports Chinese names)\n *\n * **CN:** 邮箱正则表达式(支持中文名称)\n */\n email: Validator;\n /**\n * **EN:** IP address regular expression\n *\n * **CN:** ip地址正则表达式\n */\n ip: Validator;\n /**\n * **EN:** Chine mobile phone number regular expression. If this rule does not meet the\n * requirements, please use the `useValidator` method to customize the rule.\n *\n * **CN:** 中国手机号正则表达式。如果这个规则不满足需求,请使用 `useValidator` 方法自定义规则。\n */\n cnMobile: Validator;\n /**\n * **EN:** Default password verification rule: 8-16 digit password, at least two of numbers,\n * letters, and symbols. If this rule does not meet the requirements, please use the\n * `useValidator` method to customize the rule.\n *\n * **CN:** 默认密码验证规则:8-16位密码,数字、字母、符号至少包含两种。如果这个规则不满足需求,请使用 `useValidator` 方法自定义规则。\n */\n password: Validator;\n\n /**\n * **EN:** Used to verify the code rule: letters, numbers, _, starting with a letter, no limit on\n * the number of characters\n *\n * **CN:** 用于校验编码的规则:字母、数字、_,以字母开头,不限制字符数量\n */\n code: ValidatorRule;\n /**\n * **EN:** Used to verify the code rule: letters, numbers, _, starting with a letter, up to 20\n * characters\n *\n * **CN:** 用于校验编码的规则:字母、数字、_,以字母开头,最多20个字符\n */\n codeMax20: ValidatorRule;\n /**\n * **EN:** Used to verify the code rule: letters, numbers, _, starting with a letter, up to 64\n * characters\n *\n * **CN:** 用于校验编码的规则:字母、数字、_,以字母开头,最多64个字符\n */\n codeMax64: ValidatorRule;\n /**\n * **EN:** Used to verify the code rule: letters, numbers, _, starting with a letter, up to 128\n * characters\n *\n * **CN:** 用于校验编码的规则:字母、数字、_,以字母开头,最多128个字符\n */\n codeMax128: ValidatorRule;\n /**\n * **EN:** Used to verify the code rule: letters, numbers, _, starting with a letter, up to {max}\n * characters\n *\n * **CN:** 用于校验名称的规则,可以自定义最大字符数:字母、汉字、数字、-、_,以汉字、字母开头,{max}字符以内\n */\n codeWithMax: (max?: number) => ValidatorRule;\n\n /**\n * **EN:** Used to verify the name rule: letters, Chinese characters, numbers, -, _, up to 20\n * characters\n *\n * **CN:** 用于校验名称的规则:字母、汉字、数字、-、_,最多20个字符,\n */\n name: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule: letters, Chinese characters, numbers, -, _, up to 64\n *\n * **CN:** 用于校验名称的规则:字母、汉字、数字、-、_,不限制字符数量\n */\n nameMax20: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule: letters, Chinese characters, numbers, -, _, up to 64\n * characters\n *\n * **CN:** 用于校验名称的规则:字母、汉字、数字、-、_,最多64个字符\n */\n nameMax64: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule: letters, Chinese characters, numbers, -, _, up to 128\n * characters\n *\n * **CN:** 用于校验名称的规则:字母、汉字、数字、-、_,最多128个字符\n */\n nameMax128: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule: letters, Chinese characters, numbers, -, _, up to {max}\n * characters\n *\n * **CN:** 用于校验名称的规则,可以自定义最大字符数:字母、汉字、数字、-、_,以汉字、字母开头,{max}字符以内\n */\n nameWithMax: (max?: number) => ValidatorRule;\n\n /**\n * **EN:** Used to verify the name rule, but it needs to start with Chinese characters or letters:\n * letters, Chinese characters, numbers, -, _, starting with Chinese characters or letters\n *\n * **CN:** 用于校验名称的规则,但需要以汉字或字母开头:字母、汉字、数字、-、_,以汉字、字母开头\n */\n strongName: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule, but it needs to start with Chinese characters or letters:\n * letters, Chinese characters, numbers, -, _, starting with Chinese characters or letters, up to\n * 64 characters\n *\n * **CN:** 用于校验名称的规则,但需要以汉字或字母开头:字母、汉字、数字、-、_,以汉字、字母开头,最多64个字符\n */\n strongNameMax64: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule, but it needs to start with Chinese characters or letters:\n * letters, Chinese characters, numbers, -, _, starting with Chinese characters or letters, up to\n * 128 characters\n *\n * **CN:** 用于校验名称的规则,但需要以汉字或字母开头:字母、汉字、数字、-、_,以汉字、字母开头,最多128个字符\n */\n strongNameMax128: ValidatorRule;\n /**\n * **EN:** Used to verify the name rule, but it needs to start with Chinese characters or letters:\n * letters, Chinese characters, numbers, -, _, starting with Chinese characters or letters, up to\n * {max} characters\n *\n * **CN:** 用于校验名称的规则,但需要以汉字或字母开头:字母、汉字、数字、-、_,以汉字、字母开头,{max}字符以内\n */\n strongNameWithMax: (max?: number) => ValidatorRule;\n}\n\nexport default useValidators;\n"],"mappings":"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"}
package/es/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export * from './components';
2
- export * from './hooks';
1
+ export * from "./components";
2
+ export * from "./hooks";
3
3
  //# sourceMappingURL=index.js.map
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"names":[],"sources":["../src/index.ts"],"sourcesContent":["export * from './components';\nexport * from './hooks';\n"],"mappings":"AAAA;AACA"}
@@ -1,19 +1,25 @@
1
1
  import { createInstance } from 'i18next';
2
- import enUS from './langs/en-US';
3
- import zhCN from './langs/zh-CN';
4
- export const langs = ['en', 'en-US', 'zh-CN'];
5
- export const resources = {
6
- en: { translation: enUS },
7
- 'en-US': { translation: enUS },
8
- 'zh-CN': { translation: zhCN },
2
+ import enUS from "./langs/en-US";
3
+ import zhCN from "./langs/zh-CN";
4
+ export var langs = ['en', 'en-US', 'zh-CN'];
5
+ export var resources = {
6
+ en: {
7
+ translation: enUS
8
+ },
9
+ 'en-US': {
10
+ translation: enUS
11
+ },
12
+ 'zh-CN': {
13
+ translation: zhCN
14
+ }
9
15
  };
10
- const reactEasyI18n = createInstance({});
16
+ var reactEasyI18n = createInstance({});
11
17
  reactEasyI18n.init({
12
- lng: 'en',
13
- resources,
14
- });
15
- export const t = ((...args) => {
16
- return reactEasyI18n.t(...args);
18
+ lng: 'en',
19
+ resources: resources
17
20
  });
21
+ export var t = function t() {
22
+ return reactEasyI18n.t.apply(reactEasyI18n, arguments);
23
+ };
18
24
  export default reactEasyI18n;
19
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/locales/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAa,MAAM,SAAS,CAAC;AACpD,OAAO,IAAI,MAAM,eAAe,CAAC;AACjC,OAAO,IAAI,MAAM,eAAe,CAAC;AAEjC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAIvD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;IACzB,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;IAC9B,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;CACtB,CAAC;AAEX,MAAM,aAAa,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;AAEzC,aAAa,CAAC,IAAI,CAAC;IACjB,GAAG,EAAE,IAAI;IACT,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,CAAC,GAAc,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE;IACvC,OAAO,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAClC,CAAC,CAAc,CAAC;AAEhB,eAAe,aAAa,CAAC"}
1
+ {"version":3,"names":["createInstance","enUS","zhCN","langs","resources","en","translation","reactEasyI18n","init","lng","t","apply","arguments"],"sources":["../../src/locales/index.ts"],"sourcesContent":["import { createInstance, type i18n } from 'i18next';\nimport enUS from './langs/en-US';\nimport zhCN from './langs/zh-CN';\n\nexport const langs = ['en', 'en-US', 'zh-CN'] as const;\n\nexport type Langs = (typeof langs)[number];\n\nexport const resources = {\n en: { translation: enUS },\n 'en-US': { translation: enUS },\n 'zh-CN': { translation: zhCN },\n} as const;\n\nconst reactEasyI18n: i18n = createInstance({});\n\nreactEasyI18n.init({\n lng: 'en',\n resources,\n});\n\nexport const t: i18n['t'] = ((...args) => {\n return reactEasyI18n.t(...args);\n}) as i18n['t'];\n\nexport default reactEasyI18n;\n"],"mappings":"AAAA,SAASA,cAAc,QAAmB,SAAS;AACnD,OAAOC,IAAI;AACX,OAAOC,IAAI;AAEX,OAAO,IAAMC,KAAK,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAU;AAItD,OAAO,IAAMC,SAAS,GAAG;EACvBC,EAAE,EAAE;IAAEC,WAAW,EAAEL;EAAK,CAAC;EACzB,OAAO,EAAE;IAAEK,WAAW,EAAEL;EAAK,CAAC;EAC9B,OAAO,EAAE;IAAEK,WAAW,EAAEJ;EAAK;AAC/B,CAAU;AAEV,IAAMK,aAAmB,GAAGP,cAAc,CAAC,CAAC,CAAC,CAAC;AAE9CO,aAAa,CAACC,IAAI,CAAC;EACjBC,GAAG,EAAE,IAAI;EACTL,SAAS,EAATA;AACF,CAAC,CAAC;AAEF,OAAO,IAAMM,CAAY,GAAI,SAAhBA,CAAYA,CAAA,EAAiB;EACxC,OAAOH,aAAa,CAACG,CAAC,CAAAC,KAAA,CAAfJ,aAAa,EAAAK,SAAU,CAAC;AACjC,CAAe;AAEf,eAAeL,aAAa"}