@tendaui/react 1.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 (244) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -0
  3. package/es/_chunks/dep-0QH2Ee4R.js +34 -0
  4. package/es/_chunks/dep-0QH2Ee4R.js.map +1 -0
  5. package/es/_chunks/dep-B7HmDtze.js +199 -0
  6. package/es/_chunks/dep-B7HmDtze.js.map +1 -0
  7. package/es/_chunks/dep-BH5n5r1M.js +55 -0
  8. package/es/_chunks/dep-BH5n5r1M.js.map +1 -0
  9. package/es/_chunks/dep-BP0-apUT.js +9 -0
  10. package/es/_chunks/dep-BP0-apUT.js.map +1 -0
  11. package/es/_chunks/dep-C1XcmShP.js +18 -0
  12. package/es/_chunks/dep-C1XcmShP.js.map +1 -0
  13. package/es/_chunks/dep-C36au4Ip.js +104 -0
  14. package/es/_chunks/dep-C36au4Ip.js.map +1 -0
  15. package/es/_chunks/dep-CgyDw_YI.js +20 -0
  16. package/es/_chunks/dep-CgyDw_YI.js.map +1 -0
  17. package/es/_chunks/dep-CoIiHOgo.js +162 -0
  18. package/es/_chunks/dep-CoIiHOgo.js.map +1 -0
  19. package/es/_chunks/dep-Cwish4GD.js +29 -0
  20. package/es/_chunks/dep-Cwish4GD.js.map +1 -0
  21. package/es/_chunks/dep-CzLhKWCf.js +56 -0
  22. package/es/_chunks/dep-CzLhKWCf.js.map +1 -0
  23. package/es/_chunks/dep-D-UKOauR.js +12 -0
  24. package/es/_chunks/dep-D-UKOauR.js.map +1 -0
  25. package/es/_chunks/dep-D6YxJv-F.js +31 -0
  26. package/es/_chunks/dep-D6YxJv-F.js.map +1 -0
  27. package/es/_chunks/dep-D7LanWes.js +171 -0
  28. package/es/_chunks/dep-D7LanWes.js.map +1 -0
  29. package/es/_chunks/dep-D8jki30S.js +31 -0
  30. package/es/_chunks/dep-D8jki30S.js.map +1 -0
  31. package/es/_chunks/dep-DB5wmwh1.js +48 -0
  32. package/es/_chunks/dep-DB5wmwh1.js.map +1 -0
  33. package/es/_chunks/dep-DGvfel3I.js +16 -0
  34. package/es/_chunks/dep-DGvfel3I.js.map +1 -0
  35. package/es/_chunks/dep-DHWwZ2Nj.js +139 -0
  36. package/es/_chunks/dep-DHWwZ2Nj.js.map +1 -0
  37. package/es/_chunks/dep-DN7d1SzH.js +24 -0
  38. package/es/_chunks/dep-DN7d1SzH.js.map +1 -0
  39. package/es/_chunks/dep-DZ_0EvBk.js +440 -0
  40. package/es/_chunks/dep-DZ_0EvBk.js.map +1 -0
  41. package/es/_chunks/dep-Dk2xX8lh.js +691 -0
  42. package/es/_chunks/dep-Dk2xX8lh.js.map +1 -0
  43. package/es/_chunks/dep-DwWrhxkd.js +26 -0
  44. package/es/_chunks/dep-DwWrhxkd.js.map +1 -0
  45. package/es/_chunks/dep-EcrDKDlu.js +1677 -0
  46. package/es/_chunks/dep-EcrDKDlu.js.map +1 -0
  47. package/es/_chunks/dep-PPA-yoAy.js +16 -0
  48. package/es/_chunks/dep-PPA-yoAy.js.map +1 -0
  49. package/es/_chunks/dep-U1T8CQY9.js +4 -0
  50. package/es/_chunks/dep-U1T8CQY9.js.map +1 -0
  51. package/es/_chunks/dep-bWaVq_y3.js +14 -0
  52. package/es/_chunks/dep-bWaVq_y3.js.map +1 -0
  53. package/es/_chunks/dep-u1x3x6MJ.js +9 -0
  54. package/es/_chunks/dep-u1x3x6MJ.js.map +1 -0
  55. package/es/alert/Alert.js +153 -0
  56. package/es/alert/Alert.js.map +1 -0
  57. package/es/alert/index.js +23 -0
  58. package/es/alert/index.js.map +1 -0
  59. package/es/alert/style/css.js +1 -0
  60. package/es/alert/style/index.css +172 -0
  61. package/es/alert/style/index.js +2 -0
  62. package/es/alert/style/index.js.map +1 -0
  63. package/es/badge/Badge.js +81 -0
  64. package/es/badge/Badge.js.map +1 -0
  65. package/es/badge/index.js +15 -0
  66. package/es/badge/index.js.map +1 -0
  67. package/es/badge/style/css.js +1 -0
  68. package/es/badge/style/index.css +60 -0
  69. package/es/badge/style/index.js +2 -0
  70. package/es/badge/style/index.js.map +1 -0
  71. package/es/button/Button.js +94 -0
  72. package/es/button/Button.js.map +1 -0
  73. package/es/button/index.js +28 -0
  74. package/es/button/index.js.map +1 -0
  75. package/es/button/style/css.js +1 -0
  76. package/es/button/style/index.css +1206 -0
  77. package/es/button/style/index.js +2 -0
  78. package/es/button/style/index.js.map +1 -0
  79. package/es/checkbox/Checkbox.js +17 -0
  80. package/es/checkbox/Checkbox.js.map +1 -0
  81. package/es/checkbox/CheckboxGroup.js +17 -0
  82. package/es/checkbox/CheckboxGroup.js.map +1 -0
  83. package/es/checkbox/index.js +22 -0
  84. package/es/checkbox/index.js.map +1 -0
  85. package/es/checkbox/style/css.js +1 -0
  86. package/es/checkbox/style/index.css +151 -0
  87. package/es/checkbox/style/index.js +2 -0
  88. package/es/checkbox/style/index.js.map +1 -0
  89. package/es/common/Check.js +101 -0
  90. package/es/common/Check.js.map +1 -0
  91. package/es/common/FakeArrow.js +28 -0
  92. package/es/common/FakeArrow.js.map +1 -0
  93. package/es/common/PluginContainer.js +19 -0
  94. package/es/common/PluginContainer.js.map +1 -0
  95. package/es/common/Portal.js +53 -0
  96. package/es/common/Portal.js.map +1 -0
  97. package/es/config-provider/ConfigContext.js +17 -0
  98. package/es/config-provider/ConfigContext.js.map +1 -0
  99. package/es/config-provider/ConfigProvider.js +45 -0
  100. package/es/config-provider/ConfigProvider.js.map +1 -0
  101. package/es/config-provider/index.js +12 -0
  102. package/es/config-provider/index.js.map +1 -0
  103. package/es/dialog/Dialog.js +575 -0
  104. package/es/dialog/Dialog.js.map +1 -0
  105. package/es/dialog/DialogCard.js +28 -0
  106. package/es/dialog/DialogCard.js.map +1 -0
  107. package/es/dialog/index.js +44 -0
  108. package/es/dialog/index.js.map +1 -0
  109. package/es/dialog/plugin.js +199 -0
  110. package/es/dialog/plugin.js.map +1 -0
  111. package/es/dialog/style/css.js +1 -0
  112. package/es/dialog/style/index.css +510 -0
  113. package/es/dialog/style/index.js +2 -0
  114. package/es/dialog/style/index.js.map +1 -0
  115. package/es/form/Form.js +190 -0
  116. package/es/form/Form.js.map +1 -0
  117. package/es/form/FormContext.js +38 -0
  118. package/es/form/FormContext.js.map +1 -0
  119. package/es/form/FormItem.js +39 -0
  120. package/es/form/FormItem.js.map +1 -0
  121. package/es/form/FormList.js +306 -0
  122. package/es/form/FormList.js.map +1 -0
  123. package/es/form/hooks/useFormItemStyle.js +10 -0
  124. package/es/form/hooks/useFormItemStyle.js.map +1 -0
  125. package/es/form/hooks/useInstance.js +326 -0
  126. package/es/form/hooks/useInstance.js.map +1 -0
  127. package/es/form/index.js +47 -0
  128. package/es/form/index.js.map +1 -0
  129. package/es/form/style/css.js +1 -0
  130. package/es/form/style/index.css +296 -0
  131. package/es/form/style/index.js +2 -0
  132. package/es/form/style/index.js.map +1 -0
  133. package/es/form/utils/index.js +75 -0
  134. package/es/form/utils/index.js.map +1 -0
  135. package/es/hooks/useDragSorter.js +137 -0
  136. package/es/hooks/useDragSorter.js.map +1 -0
  137. package/es/index.js +103 -0
  138. package/es/index.js.map +1 -0
  139. package/es/input/Input.js +375 -0
  140. package/es/input/Input.js.map +1 -0
  141. package/es/input/InputGroup.js +23 -0
  142. package/es/input/InputGroup.js.map +1 -0
  143. package/es/input/index.js +23 -0
  144. package/es/input/index.js.map +1 -0
  145. package/es/input/style/css.js +1 -0
  146. package/es/input/style/index.css +450 -0
  147. package/es/input/style/index.js +2 -0
  148. package/es/input/style/index.js.map +1 -0
  149. package/es/loading/Gradient.js +86 -0
  150. package/es/loading/Gradient.js.map +1 -0
  151. package/es/loading/Loading.js +147 -0
  152. package/es/loading/Loading.js.map +1 -0
  153. package/es/loading/index.js +24 -0
  154. package/es/loading/index.js.map +1 -0
  155. package/es/loading/style/css.js +1 -0
  156. package/es/loading/style/index.css +191 -0
  157. package/es/loading/style/index.js +2 -0
  158. package/es/loading/style/index.js.map +1 -0
  159. package/es/myform/index.js +2 -0
  160. package/es/myform/index.js.map +1 -0
  161. package/es/notification/NotifyContainer.js +78 -0
  162. package/es/notification/NotifyContainer.js.map +1 -0
  163. package/es/notification/NotifyContext.js +149 -0
  164. package/es/notification/NotifyContext.js.map +1 -0
  165. package/es/notification/NotifyItem.js +150 -0
  166. package/es/notification/NotifyItem.js.map +1 -0
  167. package/es/notification/index.js +32 -0
  168. package/es/notification/index.js.map +1 -0
  169. package/es/notification/style/css.js +1 -0
  170. package/es/notification/style/index.css +142 -0
  171. package/es/notification/style/index.js +2 -0
  172. package/es/notification/style/index.js.map +1 -0
  173. package/es/popup/Popup.js +790 -0
  174. package/es/popup/Popup.js.map +1 -0
  175. package/es/popup/index.js +28 -0
  176. package/es/popup/index.js.map +1 -0
  177. package/es/popup/style/css.js +1 -0
  178. package/es/popup/style/index.css +186 -0
  179. package/es/popup/style/index.js +2 -0
  180. package/es/popup/style/index.js.map +1 -0
  181. package/es/portal/Portal.js +48 -0
  182. package/es/portal/Portal.js.map +1 -0
  183. package/es/portal/index.js +7 -0
  184. package/es/portal/index.js.map +1 -0
  185. package/es/select/Option.js +118 -0
  186. package/es/select/Option.js.map +1 -0
  187. package/es/select/OptionGroup.js +9 -0
  188. package/es/select/OptionGroup.js.map +1 -0
  189. package/es/select/PopupContent.js +16 -0
  190. package/es/select/PopupContent.js.map +1 -0
  191. package/es/select/Select.js +709 -0
  192. package/es/select/Select.js.map +1 -0
  193. package/es/select/index.js +66 -0
  194. package/es/select/index.js.map +1 -0
  195. package/es/select/style/css.js +1 -0
  196. package/es/select/style/index.css +437 -0
  197. package/es/select/style/index.js +2 -0
  198. package/es/select/style/index.js.map +1 -0
  199. package/es/select-input/SelectInput.js +202 -0
  200. package/es/select-input/SelectInput.js.map +1 -0
  201. package/es/select-input/hook/useMultiple.js +118 -0
  202. package/es/select-input/hook/useMultiple.js.map +1 -0
  203. package/es/select-input/hook/useSingle.js +105 -0
  204. package/es/select-input/hook/useSingle.js.map +1 -0
  205. package/es/select-input/index.js +51 -0
  206. package/es/select-input/index.js.map +1 -0
  207. package/es/select-input/style/css.js +1 -0
  208. package/es/select-input/style/index.css +0 -0
  209. package/es/select-input/style/index.js +2 -0
  210. package/es/select-input/style/index.js.map +1 -0
  211. package/es/space/index.js +2 -0
  212. package/es/space/index.js.map +1 -0
  213. package/es/style/index.css +490 -0
  214. package/es/style/index.js +2 -0
  215. package/es/style/index.js.map +1 -0
  216. package/es/switch/Switch.js +174 -0
  217. package/es/switch/Switch.js.map +1 -0
  218. package/es/switch/index.js +28 -0
  219. package/es/switch/index.js.map +1 -0
  220. package/es/switch/style/css.js +1 -0
  221. package/es/switch/style/index.css +239 -0
  222. package/es/switch/style/index.js +2 -0
  223. package/es/switch/style/index.js.map +1 -0
  224. package/es/tag/Tag.js +1312 -0
  225. package/es/tag/Tag.js.map +1 -0
  226. package/es/tag/index.js +21 -0
  227. package/es/tag/index.js.map +1 -0
  228. package/es/tag/style/css.js +1 -0
  229. package/es/tag/style/index.css +236 -0
  230. package/es/tag/style/index.js +2 -0
  231. package/es/tag/style/index.js.map +1 -0
  232. package/es/tag-input/TagInput.js +360 -0
  233. package/es/tag-input/TagInput.js.map +1 -0
  234. package/es/tag-input/hooks/useTagList.js +167 -0
  235. package/es/tag-input/hooks/useTagList.js.map +1 -0
  236. package/es/tag-input/index.js +35 -0
  237. package/es/tag-input/index.js.map +1 -0
  238. package/es/tag-input/style/css.js +1 -0
  239. package/es/tag-input/style/index.css +223 -0
  240. package/es/tag-input/style/index.js +2 -0
  241. package/es/tag-input/style/index.js.map +1 -0
  242. package/es/tag-input/useTagList.js +167 -0
  243. package/es/tag-input/useTagList.js.map +1 -0
  244. package/package.json +59 -0
@@ -0,0 +1,1677 @@
1
+ import { _ as _toConsumableArray } from './dep-CgyDw_YI.js';
2
+ import { _ as _typeof } from './dep-D-UKOauR.js';
3
+ import { g as getDefaultExportFromCjs, _ as _asyncToGenerator, a as _regeneratorRuntime } from './dep-DZ_0EvBk.js';
4
+ import { _ as _defineProperty } from './dep-Cwish4GD.js';
5
+ import { _ as _slicedToArray } from './dep-CzLhKWCf.js';
6
+ import React, { forwardRef, useState, useRef, useMemo, useEffect, useImperativeHandle } from 'react';
7
+ import { IconClose, IconCheckCircleStroked } from '@tendaui/icons';
8
+ import { isEmpty, isNumber, get, unset, flattenDeep, isEqual, set, isString, isObject, isFunction, merge as merge$1 } from 'lodash-es';
9
+ import { u as useConfig } from './dep-u1x3x6MJ.js';
10
+ import { u as useDefaultProps } from './dep-DGvfel3I.js';
11
+ import { u as useGlobalIcon } from './dep-bWaVq_y3.js';
12
+ import { u as useFormItemStyle, V as ValidateStatus } from './dep-C36au4Ip.js';
13
+ import { useFormContext, useFormListContext } from '../form/FormContext.js';
14
+ import { g as getCharacterLength } from './dep-DHWwZ2Nj.js';
15
+ import { H as HOOK_MARK } from './dep-D7LanWes.js';
16
+ import { C as Checkbox, a as CheckboxGroup } from './dep-B7HmDtze.js';
17
+ import TagInput from '../tag-input/TagInput.js';
18
+ import { calcFieldValue } from '../form/utils/index.js';
19
+
20
+ var formDefaultProps = {
21
+ colon: false,
22
+ disabled: void 0,
23
+ id: void 0,
24
+ labelAlign: "right",
25
+ labelWidth: "100px",
26
+ layout: "vertical",
27
+ preventSubmitDefault: true,
28
+ requiredMark: void 0,
29
+ resetType: "empty",
30
+ showErrorMessage: true,
31
+ statusIcon: void 0,
32
+ submitWithWarningMessage: false,
33
+ supportNumberKey: true
34
+ };
35
+ var formItemDefaultProps = {
36
+ label: "",
37
+ requiredMark: void 0,
38
+ shouldUpdate: false,
39
+ showErrorMessage: void 0,
40
+ statusIcon: void 0,
41
+ successBorder: false
42
+ };
43
+
44
+ var isDate$1 = {exports: {}};
45
+
46
+ var merge = {exports: {}};
47
+
48
+ var merge_1 = merge.exports;
49
+
50
+ var hasRequiredMerge;
51
+
52
+ function requireMerge () {
53
+ if (hasRequiredMerge) return merge.exports;
54
+ hasRequiredMerge = 1;
55
+ (function (module, exports) {
56
+ "use strict";
57
+
58
+ Object.defineProperty(exports, "__esModule", {
59
+ value: true
60
+ });
61
+ exports.default = merge;
62
+ function merge() {
63
+ var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
64
+ var defaults = arguments.length > 1 ? arguments[1] : undefined;
65
+ for (var key in defaults) {
66
+ if (typeof obj[key] === 'undefined') {
67
+ obj[key] = defaults[key];
68
+ }
69
+ }
70
+ return obj;
71
+ }
72
+ module.exports = exports.default;
73
+ module.exports.default = exports.default;
74
+ } (merge, merge.exports));
75
+ return merge.exports;
76
+ }
77
+
78
+ var isDate_1 = isDate$1.exports;
79
+
80
+ var hasRequiredIsDate;
81
+
82
+ function requireIsDate () {
83
+ if (hasRequiredIsDate) return isDate$1.exports;
84
+ hasRequiredIsDate = 1;
85
+ (function (module, exports) {
86
+ "use strict";
87
+
88
+ Object.defineProperty(exports, "__esModule", {
89
+ value: true
90
+ });
91
+ exports.default = isDate;
92
+ var _merge = _interopRequireDefault(/*@__PURE__*/ requireMerge());
93
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
94
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
95
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
96
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
97
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
98
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
99
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
100
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
101
+ var default_date_options = {
102
+ format: 'YYYY/MM/DD',
103
+ delimiters: ['/', '-'],
104
+ strictMode: false
105
+ };
106
+ function isValidFormat(format) {
107
+ return /(^(y{4}|y{2})[.\/-](m{1,2})[.\/-](d{1,2})$)|(^(m{1,2})[.\/-](d{1,2})[.\/-]((y{4}|y{2})$))|(^(d{1,2})[.\/-](m{1,2})[.\/-]((y{4}|y{2})$))/gi.test(format);
108
+ }
109
+ function zip(date, format) {
110
+ var zippedArr = [],
111
+ len = Math.max(date.length, format.length);
112
+ for (var i = 0; i < len; i++) {
113
+ zippedArr.push([date[i], format[i]]);
114
+ }
115
+ return zippedArr;
116
+ }
117
+ function isDate(input, options) {
118
+ if (typeof options === 'string') {
119
+ // Allow backward compatibility for old format isDate(input [, format])
120
+ options = (0, _merge.default)({
121
+ format: options
122
+ }, default_date_options);
123
+ } else {
124
+ options = (0, _merge.default)(options, default_date_options);
125
+ }
126
+ if (typeof input === 'string' && isValidFormat(options.format)) {
127
+ if (options.strictMode && input.length !== options.format.length) return false;
128
+ var formatDelimiter = options.delimiters.find(function (delimiter) {
129
+ return options.format.indexOf(delimiter) !== -1;
130
+ });
131
+ var dateDelimiter = options.strictMode ? formatDelimiter : options.delimiters.find(function (delimiter) {
132
+ return input.indexOf(delimiter) !== -1;
133
+ });
134
+ var dateAndFormat = zip(input.split(dateDelimiter), options.format.toLowerCase().split(formatDelimiter));
135
+ var dateObj = {};
136
+ var _iterator = _createForOfIteratorHelper(dateAndFormat),
137
+ _step;
138
+ try {
139
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
140
+ var _step$value = _slicedToArray(_step.value, 2),
141
+ dateWord = _step$value[0],
142
+ formatWord = _step$value[1];
143
+ if (!dateWord || !formatWord || dateWord.length !== formatWord.length) {
144
+ return false;
145
+ }
146
+ dateObj[formatWord.charAt(0)] = dateWord;
147
+ }
148
+ } catch (err) {
149
+ _iterator.e(err);
150
+ } finally {
151
+ _iterator.f();
152
+ }
153
+ var fullYear = dateObj.y;
154
+
155
+ // Check if the year starts with a hyphen
156
+ if (fullYear.startsWith('-')) {
157
+ return false; // Hyphen before year is not allowed
158
+ }
159
+ if (dateObj.y.length === 2) {
160
+ var parsedYear = parseInt(dateObj.y, 10);
161
+ if (isNaN(parsedYear)) {
162
+ return false;
163
+ }
164
+ var currentYearLastTwoDigits = new Date().getFullYear() % 100;
165
+ if (parsedYear < currentYearLastTwoDigits) {
166
+ fullYear = "20".concat(dateObj.y);
167
+ } else {
168
+ fullYear = "19".concat(dateObj.y);
169
+ }
170
+ }
171
+ var month = dateObj.m;
172
+ if (dateObj.m.length === 1) {
173
+ month = "0".concat(dateObj.m);
174
+ }
175
+ var day = dateObj.d;
176
+ if (dateObj.d.length === 1) {
177
+ day = "0".concat(dateObj.d);
178
+ }
179
+ return new Date("".concat(fullYear, "-").concat(month, "-").concat(day, "T00:00:00.000Z")).getUTCDate() === +dateObj.d;
180
+ }
181
+ if (!options.strictMode) {
182
+ return Object.prototype.toString.call(input) === '[object Date]' && isFinite(input);
183
+ }
184
+ return false;
185
+ }
186
+ module.exports = exports.default;
187
+ module.exports.default = exports.default;
188
+ } (isDate$1, isDate$1.exports));
189
+ return isDate$1.exports;
190
+ }
191
+
192
+ var isDateExports = requireIsDate();
193
+ var isDate = /*@__PURE__*/getDefaultExportFromCjs(isDateExports);
194
+
195
+ var isEmail$1 = {exports: {}};
196
+
197
+ var assertString = {exports: {}};
198
+
199
+ var assertString_1 = assertString.exports;
200
+
201
+ var hasRequiredAssertString;
202
+
203
+ function requireAssertString () {
204
+ if (hasRequiredAssertString) return assertString.exports;
205
+ hasRequiredAssertString = 1;
206
+ (function (module, exports) {
207
+ "use strict";
208
+
209
+ Object.defineProperty(exports, "__esModule", {
210
+ value: true
211
+ });
212
+ exports.default = assertString;
213
+ function assertString(input) {
214
+ if (input === undefined || input === null) throw new TypeError("Expected a string but received a ".concat(input));
215
+ if (input.constructor.name !== 'String') throw new TypeError("Expected a string but received a ".concat(input.constructor.name));
216
+ }
217
+ module.exports = exports.default;
218
+ module.exports.default = exports.default;
219
+ } (assertString, assertString.exports));
220
+ return assertString.exports;
221
+ }
222
+
223
+ var checkHost = {exports: {}};
224
+
225
+ var checkHost_1 = checkHost.exports;
226
+
227
+ var hasRequiredCheckHost;
228
+
229
+ function requireCheckHost () {
230
+ if (hasRequiredCheckHost) return checkHost.exports;
231
+ hasRequiredCheckHost = 1;
232
+ (function (module, exports) {
233
+ "use strict";
234
+
235
+ Object.defineProperty(exports, "__esModule", {
236
+ value: true
237
+ });
238
+ exports.default = checkHost;
239
+ function isRegExp(obj) {
240
+ return Object.prototype.toString.call(obj) === '[object RegExp]';
241
+ }
242
+ function checkHost(host, matches) {
243
+ for (var i = 0; i < matches.length; i++) {
244
+ var match = matches[i];
245
+ if (host === match || isRegExp(match) && match.test(host)) {
246
+ return true;
247
+ }
248
+ }
249
+ return false;
250
+ }
251
+ module.exports = exports.default;
252
+ module.exports.default = exports.default;
253
+ } (checkHost, checkHost.exports));
254
+ return checkHost.exports;
255
+ }
256
+
257
+ var isByteLength = {exports: {}};
258
+
259
+ var isByteLength_1 = isByteLength.exports;
260
+
261
+ var hasRequiredIsByteLength;
262
+
263
+ function requireIsByteLength () {
264
+ if (hasRequiredIsByteLength) return isByteLength.exports;
265
+ hasRequiredIsByteLength = 1;
266
+ (function (module, exports) {
267
+ "use strict";
268
+
269
+ Object.defineProperty(exports, "__esModule", {
270
+ value: true
271
+ });
272
+ exports.default = isByteLength;
273
+ var _assertString = _interopRequireDefault(/*@__PURE__*/ requireAssertString());
274
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
275
+ 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); }
276
+ /* eslint-disable prefer-rest-params */
277
+ function isByteLength(str, options) {
278
+ (0, _assertString.default)(str);
279
+ var min;
280
+ var max;
281
+ if (_typeof(options) === 'object') {
282
+ min = options.min || 0;
283
+ max = options.max;
284
+ } else {
285
+ // backwards compatibility: isByteLength(str, min [, max])
286
+ min = arguments[1];
287
+ max = arguments[2];
288
+ }
289
+ var len = encodeURI(str).split(/%..|./).length - 1;
290
+ return len >= min && (typeof max === 'undefined' || len <= max);
291
+ }
292
+ module.exports = exports.default;
293
+ module.exports.default = exports.default;
294
+ } (isByteLength, isByteLength.exports));
295
+ return isByteLength.exports;
296
+ }
297
+
298
+ var isFQDN = {exports: {}};
299
+
300
+ var isFQDN_1 = isFQDN.exports;
301
+
302
+ var hasRequiredIsFQDN;
303
+
304
+ function requireIsFQDN () {
305
+ if (hasRequiredIsFQDN) return isFQDN.exports;
306
+ hasRequiredIsFQDN = 1;
307
+ (function (module, exports) {
308
+ "use strict";
309
+
310
+ Object.defineProperty(exports, "__esModule", {
311
+ value: true
312
+ });
313
+ exports.default = isFQDN;
314
+ var _assertString = _interopRequireDefault(/*@__PURE__*/ requireAssertString());
315
+ var _merge = _interopRequireDefault(/*@__PURE__*/ requireMerge());
316
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
317
+ var default_fqdn_options = {
318
+ require_tld: true,
319
+ allow_underscores: false,
320
+ allow_trailing_dot: false,
321
+ allow_numeric_tld: false,
322
+ allow_wildcard: false,
323
+ ignore_max_length: false
324
+ };
325
+ function isFQDN(str, options) {
326
+ (0, _assertString.default)(str);
327
+ options = (0, _merge.default)(options, default_fqdn_options);
328
+
329
+ /* Remove the optional trailing dot before checking validity */
330
+ if (options.allow_trailing_dot && str[str.length - 1] === '.') {
331
+ str = str.substring(0, str.length - 1);
332
+ }
333
+
334
+ /* Remove the optional wildcard before checking validity */
335
+ if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
336
+ str = str.substring(2);
337
+ }
338
+ var parts = str.split('.');
339
+ var tld = parts[parts.length - 1];
340
+ if (options.require_tld) {
341
+ // disallow fqdns without tld
342
+ if (parts.length < 2) {
343
+ return false;
344
+ }
345
+ if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
346
+ return false;
347
+ }
348
+
349
+ // disallow spaces
350
+ if (/\s/.test(tld)) {
351
+ return false;
352
+ }
353
+ }
354
+
355
+ // reject numeric TLDs
356
+ if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
357
+ return false;
358
+ }
359
+ return parts.every(function (part) {
360
+ if (part.length > 63 && !options.ignore_max_length) {
361
+ return false;
362
+ }
363
+ if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
364
+ return false;
365
+ }
366
+
367
+ // disallow full-width chars
368
+ if (/[\uff01-\uff5e]/.test(part)) {
369
+ return false;
370
+ }
371
+
372
+ // disallow parts starting or ending with hyphen
373
+ if (/^-|-$/.test(part)) {
374
+ return false;
375
+ }
376
+ if (!options.allow_underscores && /_/.test(part)) {
377
+ return false;
378
+ }
379
+ return true;
380
+ });
381
+ }
382
+ module.exports = exports.default;
383
+ module.exports.default = exports.default;
384
+ } (isFQDN, isFQDN.exports));
385
+ return isFQDN.exports;
386
+ }
387
+
388
+ var isIP = {exports: {}};
389
+
390
+ var isIP_1 = isIP.exports;
391
+
392
+ var hasRequiredIsIP;
393
+
394
+ function requireIsIP () {
395
+ if (hasRequiredIsIP) return isIP.exports;
396
+ hasRequiredIsIP = 1;
397
+ (function (module, exports) {
398
+ "use strict";
399
+
400
+ Object.defineProperty(exports, "__esModule", {
401
+ value: true
402
+ });
403
+ exports.default = isIP;
404
+ var _assertString = _interopRequireDefault(/*@__PURE__*/ requireAssertString());
405
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
406
+ 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); }
407
+ /**
408
+ 11.3. Examples
409
+
410
+ The following addresses
411
+
412
+ fe80::1234 (on the 1st link of the node)
413
+ ff02::5678 (on the 5th link of the node)
414
+ ff08::9abc (on the 10th organization of the node)
415
+
416
+ would be represented as follows:
417
+
418
+ fe80::1234%1
419
+ ff02::5678%5
420
+ ff08::9abc%10
421
+
422
+ (Here we assume a natural translation from a zone index to the
423
+ <zone_id> part, where the Nth zone of any scope is translated into
424
+ "N".)
425
+
426
+ If we use interface names as <zone_id>, those addresses could also be
427
+ represented as follows:
428
+
429
+ fe80::1234%ne0
430
+ ff02::5678%pvc1.3
431
+ ff08::9abc%interface10
432
+
433
+ where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
434
+ to the 5th link, and "interface10" belongs to the 10th organization.
435
+ * * */
436
+ var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
437
+ var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
438
+ var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
439
+ var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
440
+ var IPv6AddressRegExp = new RegExp('^(' + "(?:".concat(IPv6SegmentFormat, ":){7}(?:").concat(IPv6SegmentFormat, "|:)|") + "(?:".concat(IPv6SegmentFormat, ":){6}(?:").concat(IPv4AddressFormat, "|:").concat(IPv6SegmentFormat, "|:)|") + "(?:".concat(IPv6SegmentFormat, ":){5}(?::").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,2}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){4}(?:(:").concat(IPv6SegmentFormat, "){0,1}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,3}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){3}(?:(:").concat(IPv6SegmentFormat, "){0,2}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,4}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){2}(?:(:").concat(IPv6SegmentFormat, "){0,3}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,5}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){1}(?:(:").concat(IPv6SegmentFormat, "){0,4}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,6}|:)|") + "(?::((?::".concat(IPv6SegmentFormat, "){0,5}:").concat(IPv4AddressFormat, "|(?::").concat(IPv6SegmentFormat, "){1,7}|:))") + ')(%[0-9a-zA-Z.]{1,})?$');
441
+ function isIP(ipAddress) {
442
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
443
+ (0, _assertString.default)(ipAddress);
444
+
445
+ // accessing 'arguments' for backwards compatibility: isIP(ipAddress [, version])
446
+ // eslint-disable-next-line prefer-rest-params
447
+ var version = (_typeof(options) === 'object' ? options.version : arguments[1]) || '';
448
+ if (!version) {
449
+ return isIP(ipAddress, {
450
+ version: 4
451
+ }) || isIP(ipAddress, {
452
+ version: 6
453
+ });
454
+ }
455
+ if (version.toString() === '4') {
456
+ return IPv4AddressRegExp.test(ipAddress);
457
+ }
458
+ if (version.toString() === '6') {
459
+ return IPv6AddressRegExp.test(ipAddress);
460
+ }
461
+ return false;
462
+ }
463
+ module.exports = exports.default;
464
+ module.exports.default = exports.default;
465
+ } (isIP, isIP.exports));
466
+ return isIP.exports;
467
+ }
468
+
469
+ var isEmail_1 = isEmail$1.exports;
470
+
471
+ var hasRequiredIsEmail;
472
+
473
+ function requireIsEmail () {
474
+ if (hasRequiredIsEmail) return isEmail$1.exports;
475
+ hasRequiredIsEmail = 1;
476
+ (function (module, exports) {
477
+ "use strict";
478
+
479
+ Object.defineProperty(exports, "__esModule", {
480
+ value: true
481
+ });
482
+ exports.default = isEmail;
483
+ var _assertString = _interopRequireDefault(/*@__PURE__*/ requireAssertString());
484
+ var _checkHost = _interopRequireDefault(/*@__PURE__*/ requireCheckHost());
485
+ var _isByteLength = _interopRequireDefault(/*@__PURE__*/ requireIsByteLength());
486
+ var _isFQDN = _interopRequireDefault(/*@__PURE__*/ requireIsFQDN());
487
+ var _isIP = _interopRequireDefault(/*@__PURE__*/ requireIsIP());
488
+ var _merge = _interopRequireDefault(/*@__PURE__*/ requireMerge());
489
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
490
+ var default_email_options = {
491
+ allow_display_name: false,
492
+ allow_underscores: false,
493
+ require_display_name: false,
494
+ allow_utf8_local_part: true,
495
+ require_tld: true,
496
+ blacklisted_chars: '',
497
+ ignore_max_length: false,
498
+ host_blacklist: [],
499
+ host_whitelist: []
500
+ };
501
+
502
+ /* eslint-disable max-len */
503
+ /* eslint-disable no-control-regex */
504
+ var splitNameAddress = /^([^\x00-\x1F\x7F-\x9F\cX]+)</i;
505
+ var emailUserPart = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i;
506
+ var gmailUserPart = /^[a-z\d]+$/;
507
+ var quotedEmailUser = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i;
508
+ var emailUserUtf8Part = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i;
509
+ var quotedEmailUserUtf8 = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i;
510
+ var defaultMaxEmailLength = 254;
511
+ /* eslint-enable max-len */
512
+ /* eslint-enable no-control-regex */
513
+
514
+ /**
515
+ * Validate display name according to the RFC2822: https://tools.ietf.org/html/rfc2822#appendix-A.1.2
516
+ * @param {String} display_name
517
+ */
518
+ function validateDisplayName(display_name) {
519
+ var display_name_without_quotes = display_name.replace(/^"(.+)"$/, '$1');
520
+ // display name with only spaces is not valid
521
+ if (!display_name_without_quotes.trim()) {
522
+ return false;
523
+ }
524
+
525
+ // check whether display name contains illegal character
526
+ var contains_illegal = /[\.";<>]/.test(display_name_without_quotes);
527
+ if (contains_illegal) {
528
+ // if contains illegal characters,
529
+ // must to be enclosed in double-quotes, otherwise it's not a valid display name
530
+ if (display_name_without_quotes === display_name) {
531
+ return false;
532
+ }
533
+
534
+ // the quotes in display name must start with character symbol \
535
+ var all_start_with_back_slash = display_name_without_quotes.split('"').length === display_name_without_quotes.split('\\"').length;
536
+ if (!all_start_with_back_slash) {
537
+ return false;
538
+ }
539
+ }
540
+ return true;
541
+ }
542
+ function isEmail(str, options) {
543
+ (0, _assertString.default)(str);
544
+ options = (0, _merge.default)(options, default_email_options);
545
+ if (options.require_display_name || options.allow_display_name) {
546
+ var display_email = str.match(splitNameAddress);
547
+ if (display_email) {
548
+ var display_name = display_email[1];
549
+
550
+ // Remove display name and angle brackets to get email address
551
+ // Can be done in the regex but will introduce a ReDOS (See #1597 for more info)
552
+ str = str.replace(display_name, '').replace(/(^<|>$)/g, '');
553
+
554
+ // sometimes need to trim the last space to get the display name
555
+ // because there may be a space between display name and email address
556
+ // eg. myname <address@gmail.com>
557
+ // the display name is `myname` instead of `myname `, so need to trim the last space
558
+ if (display_name.endsWith(' ')) {
559
+ display_name = display_name.slice(0, -1);
560
+ }
561
+ if (!validateDisplayName(display_name)) {
562
+ return false;
563
+ }
564
+ } else if (options.require_display_name) {
565
+ return false;
566
+ }
567
+ }
568
+ if (!options.ignore_max_length && str.length > defaultMaxEmailLength) {
569
+ return false;
570
+ }
571
+ var parts = str.split('@');
572
+ var domain = parts.pop();
573
+ var lower_domain = domain.toLowerCase();
574
+ if (options.host_blacklist.length > 0 && (0, _checkHost.default)(lower_domain, options.host_blacklist)) {
575
+ return false;
576
+ }
577
+ if (options.host_whitelist.length > 0 && !(0, _checkHost.default)(lower_domain, options.host_whitelist)) {
578
+ return false;
579
+ }
580
+ var user = parts.join('@');
581
+ if (options.domain_specific_validation && (lower_domain === 'gmail.com' || lower_domain === 'googlemail.com')) {
582
+ /*
583
+ Previously we removed dots for gmail addresses before validating.
584
+ This was removed because it allows `multiple..dots@gmail.com`
585
+ to be reported as valid, but it is not.
586
+ Gmail only normalizes single dots, removing them from here is pointless,
587
+ should be done in normalizeEmail
588
+ */
589
+ user = user.toLowerCase();
590
+
591
+ // Removing sub-address from username before gmail validation
592
+ var username = user.split('+')[0];
593
+
594
+ // Dots are not included in gmail length restriction
595
+ if (!(0, _isByteLength.default)(username.replace(/\./g, ''), {
596
+ min: 6,
597
+ max: 30
598
+ })) {
599
+ return false;
600
+ }
601
+ var _user_parts = username.split('.');
602
+ for (var i = 0; i < _user_parts.length; i++) {
603
+ if (!gmailUserPart.test(_user_parts[i])) {
604
+ return false;
605
+ }
606
+ }
607
+ }
608
+ if (options.ignore_max_length === false && (!(0, _isByteLength.default)(user, {
609
+ max: 64
610
+ }) || !(0, _isByteLength.default)(domain, {
611
+ max: 254
612
+ }))) {
613
+ return false;
614
+ }
615
+ if (!(0, _isFQDN.default)(domain, {
616
+ require_tld: options.require_tld,
617
+ ignore_max_length: options.ignore_max_length,
618
+ allow_underscores: options.allow_underscores
619
+ })) {
620
+ if (!options.allow_ip_domain) {
621
+ return false;
622
+ }
623
+ if (!(0, _isIP.default)(domain)) {
624
+ if (!domain.startsWith('[') || !domain.endsWith(']')) {
625
+ return false;
626
+ }
627
+ var noBracketdomain = domain.slice(1, -1);
628
+ if (noBracketdomain.length === 0 || !(0, _isIP.default)(noBracketdomain)) {
629
+ return false;
630
+ }
631
+ }
632
+ }
633
+ if (options.blacklisted_chars) {
634
+ if (user.search(new RegExp("[".concat(options.blacklisted_chars, "]+"), 'g')) !== -1) return false;
635
+ }
636
+ if (user[0] === '"' && user[user.length - 1] === '"') {
637
+ user = user.slice(1, user.length - 1);
638
+ return options.allow_utf8_local_part ? quotedEmailUserUtf8.test(user) : quotedEmailUser.test(user);
639
+ }
640
+ var pattern = options.allow_utf8_local_part ? emailUserUtf8Part : emailUserPart;
641
+ var user_parts = user.split('.');
642
+ for (var _i = 0; _i < user_parts.length; _i++) {
643
+ if (!pattern.test(user_parts[_i])) {
644
+ return false;
645
+ }
646
+ }
647
+ return true;
648
+ }
649
+ module.exports = exports.default;
650
+ module.exports.default = exports.default;
651
+ } (isEmail$1, isEmail$1.exports));
652
+ return isEmail$1.exports;
653
+ }
654
+
655
+ var isEmailExports = requireIsEmail();
656
+ var isEmail = /*@__PURE__*/getDefaultExportFromCjs(isEmailExports);
657
+
658
+ var isURL$1 = {exports: {}};
659
+
660
+ var includesString$1 = {exports: {}};
661
+
662
+ var includesString = includesString$1.exports;
663
+
664
+ var hasRequiredIncludesString;
665
+
666
+ function requireIncludesString () {
667
+ if (hasRequiredIncludesString) return includesString$1.exports;
668
+ hasRequiredIncludesString = 1;
669
+ (function (module, exports) {
670
+ "use strict";
671
+
672
+ Object.defineProperty(exports, "__esModule", {
673
+ value: true
674
+ });
675
+ exports.default = void 0;
676
+ var includes = function includes(str, val) {
677
+ return str.indexOf(val) !== -1;
678
+ };
679
+ var _default = exports.default = includes;
680
+ module.exports = exports.default;
681
+ module.exports.default = exports.default;
682
+ } (includesString$1, includesString$1.exports));
683
+ return includesString$1.exports;
684
+ }
685
+
686
+ var isURL_1 = isURL$1.exports;
687
+
688
+ var hasRequiredIsURL;
689
+
690
+ function requireIsURL () {
691
+ if (hasRequiredIsURL) return isURL$1.exports;
692
+ hasRequiredIsURL = 1;
693
+ (function (module, exports) {
694
+ "use strict";
695
+
696
+ Object.defineProperty(exports, "__esModule", {
697
+ value: true
698
+ });
699
+ exports.default = isURL;
700
+ var _assertString = _interopRequireDefault(/*@__PURE__*/ requireAssertString());
701
+ var _checkHost = _interopRequireDefault(/*@__PURE__*/ requireCheckHost());
702
+ var _includesString = _interopRequireDefault(/*@__PURE__*/ requireIncludesString());
703
+ var _isFQDN = _interopRequireDefault(/*@__PURE__*/ requireIsFQDN());
704
+ var _isIP = _interopRequireDefault(/*@__PURE__*/ requireIsIP());
705
+ var _merge = _interopRequireDefault(/*@__PURE__*/ requireMerge());
706
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
707
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
708
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
709
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
710
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
711
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
712
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
713
+ /*
714
+ options for isURL method
715
+
716
+ protocols - valid protocols can be modified with this option.
717
+ require_tld - If set to false isURL will not check if the URL's host includes a top-level domain.
718
+ require_protocol - if set to true isURL will return false if protocol is not present in the URL.
719
+ require_host - if set to false isURL will not check if host is present in the URL.
720
+ require_port - if set to true isURL will check if port is present in the URL.
721
+ require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option.
722
+ allow_underscores - if set to true, the validator will allow underscores in the URL.
723
+ host_whitelist - if set to an array of strings or regexp, and the domain matches none of the strings
724
+ defined in it, the validation fails.
725
+ host_blacklist - if set to an array of strings or regexp, and the domain matches any of the strings
726
+ defined in it, the validation fails.
727
+ allow_trailing_dot - if set to true, the validator will allow the domain to end with
728
+ a `.` character.
729
+ allow_protocol_relative_urls - if set to true protocol relative URLs will be allowed.
730
+ allow_fragments - if set to false isURL will return false if fragments are present.
731
+ allow_query_components - if set to false isURL will return false if query components are present.
732
+ disallow_auth - if set to true, the validator will fail if the URL contains an authentication
733
+ component, e.g. `http://username:password@example.com`
734
+ validate_length - if set to false isURL will skip string length validation. `max_allowed_length`
735
+ will be ignored if this is set as `false`.
736
+ max_allowed_length - if set, isURL will not allow URLs longer than the specified value (default is
737
+ 2084 that IE maximum URL length).
738
+
739
+ */
740
+
741
+ var default_url_options = {
742
+ protocols: ['http', 'https', 'ftp'],
743
+ require_tld: true,
744
+ require_protocol: false,
745
+ require_host: true,
746
+ require_port: false,
747
+ require_valid_protocol: true,
748
+ allow_underscores: false,
749
+ allow_trailing_dot: false,
750
+ allow_protocol_relative_urls: false,
751
+ allow_fragments: true,
752
+ allow_query_components: true,
753
+ validate_length: true,
754
+ max_allowed_length: 2084
755
+ };
756
+ var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
757
+ function isURL(url, options) {
758
+ (0, _assertString.default)(url);
759
+ if (!url || /[\s<>]/.test(url)) {
760
+ return false;
761
+ }
762
+ if (url.indexOf('mailto:') === 0) {
763
+ return false;
764
+ }
765
+ options = (0, _merge.default)(options, default_url_options);
766
+ if (options.validate_length && url.length > options.max_allowed_length) {
767
+ return false;
768
+ }
769
+ if (!options.allow_fragments && (0, _includesString.default)(url, '#')) {
770
+ return false;
771
+ }
772
+ if (!options.allow_query_components && ((0, _includesString.default)(url, '?') || (0, _includesString.default)(url, '&'))) {
773
+ return false;
774
+ }
775
+ var protocol, auth, host, hostname, port, port_str, split, ipv6;
776
+ split = url.split('#');
777
+ url = split.shift();
778
+ split = url.split('?');
779
+ url = split.shift();
780
+ split = url.split('://');
781
+ if (split.length > 1) {
782
+ protocol = split.shift().toLowerCase();
783
+ if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
784
+ return false;
785
+ }
786
+ } else if (options.require_protocol) {
787
+ return false;
788
+ } else if (url.slice(0, 2) === '//') {
789
+ if (!options.allow_protocol_relative_urls) {
790
+ return false;
791
+ }
792
+ split[0] = url.slice(2);
793
+ }
794
+ url = split.join('://');
795
+ if (url === '') {
796
+ return false;
797
+ }
798
+ split = url.split('/');
799
+ url = split.shift();
800
+ if (url === '' && !options.require_host) {
801
+ return true;
802
+ }
803
+ split = url.split('@');
804
+ if (split.length > 1) {
805
+ if (options.disallow_auth) {
806
+ return false;
807
+ }
808
+ if (split[0] === '') {
809
+ return false;
810
+ }
811
+ auth = split.shift();
812
+ if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
813
+ return false;
814
+ }
815
+ var _auth$split = auth.split(':'),
816
+ _auth$split2 = _slicedToArray(_auth$split, 2),
817
+ user = _auth$split2[0],
818
+ password = _auth$split2[1];
819
+ if (user === '' && password === '') {
820
+ return false;
821
+ }
822
+ }
823
+ hostname = split.join('@');
824
+ port_str = null;
825
+ ipv6 = null;
826
+ var ipv6_match = hostname.match(wrapped_ipv6);
827
+ if (ipv6_match) {
828
+ host = '';
829
+ ipv6 = ipv6_match[1];
830
+ port_str = ipv6_match[2] || null;
831
+ } else {
832
+ split = hostname.split(':');
833
+ host = split.shift();
834
+ if (split.length) {
835
+ port_str = split.join(':');
836
+ }
837
+ }
838
+ if (port_str !== null && port_str.length > 0) {
839
+ port = parseInt(port_str, 10);
840
+ if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
841
+ return false;
842
+ }
843
+ } else if (options.require_port) {
844
+ return false;
845
+ }
846
+ if (options.host_whitelist) {
847
+ return (0, _checkHost.default)(host, options.host_whitelist);
848
+ }
849
+ if (host === '' && !options.require_host) {
850
+ return true;
851
+ }
852
+ if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
853
+ return false;
854
+ }
855
+ host = host || ipv6;
856
+ if (options.host_blacklist && (0, _checkHost.default)(host, options.host_blacklist)) {
857
+ return false;
858
+ }
859
+ return true;
860
+ }
861
+ module.exports = exports.default;
862
+ module.exports.default = exports.default;
863
+ } (isURL$1, isURL$1.exports));
864
+ return isURL$1.exports;
865
+ }
866
+
867
+ var isURLExports = requireIsURL();
868
+ var isURL = /*@__PURE__*/getDefaultExportFromCjs(isURLExports);
869
+
870
+ function ownKeys$1(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; }
871
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
872
+ function isValueEmpty(val) {
873
+ var type = Object.prototype.toString.call(val);
874
+ var typeMap = {
875
+ Date: "[object Date]"
876
+ };
877
+ if (type === typeMap.Date) {
878
+ return false;
879
+ }
880
+ return _typeof(val) === "object" ? isEmpty(val) : ["", void 0, null].includes(val);
881
+ }
882
+ var compareValue = function compareValue(val, num, isMax) {
883
+ var compare = function compare(a, b) {
884
+ return isMax ? a <= b : a >= b;
885
+ };
886
+ if (isNumber(val)) return compare(val, num);
887
+ if (Array.isArray(val)) return compare(val.length, num);
888
+ var charLength = getCharacterLength(val);
889
+ return compare(typeof charLength === "number" ? charLength : charLength.length, num);
890
+ };
891
+ var VALIDATE_MAP = {
892
+ date: isDate,
893
+ url: isURL,
894
+ email: isEmail,
895
+ required: function required(val) {
896
+ return !isValueEmpty(val);
897
+ },
898
+ whitespace: function whitespace(val) {
899
+ return !(/^\s+$/.test(val) || val === "");
900
+ },
901
+ "boolean": function boolean(val) {
902
+ return typeof val === "boolean";
903
+ },
904
+ max: function max(val, num) {
905
+ return compareValue(val, num, true);
906
+ },
907
+ min: function min(val, num) {
908
+ return compareValue(val, num, false);
909
+ },
910
+ len: function len(val, num) {
911
+ return getCharacterLength(val) === num;
912
+ },
913
+ number: function number(val) {
914
+ return isNumber(val);
915
+ },
916
+ "enum": function _enum(val, strs) {
917
+ return strs.includes(val);
918
+ },
919
+ idcard: function idcard(val) {
920
+ return /^(\d{18,18}|\d{15,15}|\d{17,17}x)$/i.test(val);
921
+ },
922
+ telnumber: function telnumber(val) {
923
+ return /^1[3-9]\d{9}$/.test(val);
924
+ },
925
+ pattern: function pattern(val, regexp) {
926
+ return regexp.test(val);
927
+ },
928
+ // 自定义校验规则,可能是异步校验
929
+ validator: function validator(val, validate2) {
930
+ return validate2(val);
931
+ }
932
+ };
933
+ function validateOneRule(_x, _x2) {
934
+ return _validateOneRule.apply(this, arguments);
935
+ }
936
+ function _validateOneRule() {
937
+ _validateOneRule = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(value, rule) {
938
+ var validateResult, keys, vOptions, vValidateFun, i, key, validateRule;
939
+ return _regeneratorRuntime.wrap(function (_context) {
940
+ while (1) switch (_context.prev = _context.next) {
941
+ case 0:
942
+ validateResult = {
943
+ result: true
944
+ };
945
+ keys = Object.keys(rule);
946
+ i = 0;
947
+ case 1:
948
+ if (!(i < keys.length)) {
949
+ _context.next = 4;
950
+ break;
951
+ }
952
+ key = keys[i];
953
+ if (!(!rule.required && isValueEmpty(value) && !rule.validator)) {
954
+ _context.next = 2;
955
+ break;
956
+ }
957
+ return _context.abrupt("return", validateResult);
958
+ case 2:
959
+ validateRule = VALIDATE_MAP[key];
960
+ if (!(validateRule && ![void 0, null].includes(rule[key]))) {
961
+ _context.next = 3;
962
+ break;
963
+ }
964
+ vOptions = rule[key] === true ? void 0 : rule[key];
965
+ vValidateFun = validateRule;
966
+ return _context.abrupt("continue", 4);
967
+ case 3:
968
+ i++;
969
+ _context.next = 1;
970
+ break;
971
+ case 4:
972
+ if (!vValidateFun) {
973
+ _context.next = 7;
974
+ break;
975
+ }
976
+ _context.next = 5;
977
+ return vValidateFun(value, vOptions);
978
+ case 5:
979
+ validateResult = _context.sent;
980
+ if (!(typeof validateResult === "boolean")) {
981
+ _context.next = 6;
982
+ break;
983
+ }
984
+ return _context.abrupt("return", _objectSpread$1(_objectSpread$1({}, rule), {}, {
985
+ result: validateResult
986
+ }));
987
+ case 6:
988
+ if (!(_typeof(validateResult) === "object")) {
989
+ _context.next = 7;
990
+ break;
991
+ }
992
+ return _context.abrupt("return", validateResult);
993
+ case 7:
994
+ return _context.abrupt("return", validateResult);
995
+ case 8:
996
+ case "end":
997
+ return _context.stop();
998
+ }
999
+ }, _callee);
1000
+ }));
1001
+ return _validateOneRule.apply(this, arguments);
1002
+ }
1003
+ function validate(_x3, _x4) {
1004
+ return _validate.apply(this, arguments);
1005
+ }
1006
+ function _validate() {
1007
+ _validate = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(value, rules) {
1008
+ var all, r;
1009
+ return _regeneratorRuntime.wrap(function (_context2) {
1010
+ while (1) switch (_context2.prev = _context2.next) {
1011
+ case 0:
1012
+ all = rules.map(function (rule) {
1013
+ return validateOneRule(value, rule);
1014
+ });
1015
+ _context2.next = 1;
1016
+ return Promise.all(all);
1017
+ case 1:
1018
+ r = _context2.sent;
1019
+ return _context2.abrupt("return", r);
1020
+ case 2:
1021
+ case "end":
1022
+ return _context2.stop();
1023
+ }
1024
+ }, _callee2);
1025
+ }));
1026
+ return _validate.apply(this, arguments);
1027
+ }
1028
+ function parseMessage(template, options) {
1029
+ return template.replace(/\$\{\w+\}/g, function (str) {
1030
+ var key = str.slice(2, -1);
1031
+ return options[key];
1032
+ });
1033
+ }
1034
+
1035
+ var ctrlKeyMap = /* @__PURE__ */new Map();
1036
+ ctrlKeyMap.set(Checkbox, "checked");
1037
+ var initialDataMap = /* @__PURE__ */new Map();
1038
+ [
1039
+ // Tree,
1040
+ // Upload,
1041
+ // Transfer,
1042
+ TagInput,
1043
+ // RangeInput,
1044
+ CheckboxGroup
1045
+ // DateRangePicker,
1046
+ // TimeRangePicker,
1047
+ ].forEach(function (component) {
1048
+ initialDataMap.set(component, []);
1049
+ });
1050
+ [Checkbox].forEach(function (component) {
1051
+ initialDataMap.set(component, false);
1052
+ });
1053
+ function useFormItemInitialData(name) {
1054
+ var _useFormContext = useFormContext(),
1055
+ floatingFormDataRef = _useFormContext.floatingFormDataRef,
1056
+ formContextInitialData = _useFormContext.initialData;
1057
+ var _useFormListContext = useFormListContext(),
1058
+ formListName = _useFormListContext.name,
1059
+ formListInitialData = _useFormListContext.initialData;
1060
+ function getDefaultInitialData(_ref) {
1061
+ var children = _ref.children,
1062
+ initialData = _ref.initialData;
1063
+ if (name && floatingFormDataRef !== null && floatingFormDataRef !== void 0 && floatingFormDataRef.current && !isEmpty(floatingFormDataRef.current)) {
1064
+ var nameList = formListName ? [formListName, name].flat() : name;
1065
+ var defaultInitialData = get(floatingFormDataRef.current, nameList);
1066
+ if (typeof defaultInitialData !== "undefined") {
1067
+ setTimeout(function () {
1068
+ unset(floatingFormDataRef.current, nameList);
1069
+ }, 0);
1070
+ return defaultInitialData;
1071
+ }
1072
+ }
1073
+ if (typeof initialData !== "undefined") {
1074
+ return initialData;
1075
+ }
1076
+ if (name && formListInitialData.length) {
1077
+ var _defaultInitialData = get(formListInitialData, name);
1078
+ if (typeof _defaultInitialData !== "undefined") return _defaultInitialData;
1079
+ }
1080
+ if (name && formContextInitialData) {
1081
+ var _defaultInitialData2 = get(formContextInitialData, name);
1082
+ if (typeof _defaultInitialData2 !== "undefined") return _defaultInitialData2;
1083
+ }
1084
+ if (typeof children !== "function") {
1085
+ var childList = React.Children.toArray(children);
1086
+ var lastChild = childList[childList.length - 1];
1087
+ if (lastChild && /*#__PURE__*/React.isValidElement(lastChild)) {
1088
+ var _lastChild$props;
1089
+ var isMultiple = lastChild === null || lastChild === void 0 || (_lastChild$props = lastChild.props) === null || _lastChild$props === void 0 ? void 0 : _lastChild$props.multiple;
1090
+ return isMultiple ? [] : initialDataMap.get(lastChild.type);
1091
+ }
1092
+ }
1093
+ }
1094
+ return {
1095
+ getDefaultInitialData: getDefaultInitialData
1096
+ };
1097
+ }
1098
+
1099
+ 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; }
1100
+ 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; }
1101
+ var FormItem = /*#__PURE__*/forwardRef(function (originalProps, ref) {
1102
+ var _useConfig = useConfig(),
1103
+ classPrefix = _useConfig.classPrefix,
1104
+ globalFormConfig = _useConfig.form;
1105
+ useGlobalIcon({
1106
+ CheckCircleFilledIcon: IconCheckCircleStroked,
1107
+ CloseCircleFilledIcon: IconClose,
1108
+ ErrorCircleFilledIcon: IconClose
1109
+ });
1110
+ var _useFormContext = useFormContext(),
1111
+ form = _useFormContext.form,
1112
+ colon = _useFormContext.colon,
1113
+ layout = _useFormContext.layout,
1114
+ requiredMarkFromContext = _useFormContext.requiredMark,
1115
+ requiredMarkPosition = _useFormContext.requiredMarkPosition,
1116
+ labelAlignFromContext = _useFormContext.labelAlign,
1117
+ labelWidthFromContext = _useFormContext.labelWidth,
1118
+ showErrorMessageFromContext = _useFormContext.showErrorMessage,
1119
+ disabledFromContext = _useFormContext.disabled,
1120
+ resetTypeFromContext = _useFormContext.resetType,
1121
+ rulesFromContext = _useFormContext.rules,
1122
+ statusIconFromContext = _useFormContext.statusIcon,
1123
+ errorMessage = _useFormContext.errorMessage,
1124
+ formMapRef = _useFormContext.formMapRef,
1125
+ onFormItemValueChange = _useFormContext.onFormItemValueChange;
1126
+ var _useFormListContext = useFormListContext(),
1127
+ formListName = _useFormListContext.name,
1128
+ formListRules = _useFormListContext.rules,
1129
+ formListMapRef = _useFormListContext.formListMapRef,
1130
+ formOfFormList = _useFormListContext.form;
1131
+ var props = useDefaultProps(originalProps, formItemDefaultProps);
1132
+ var children = props.children,
1133
+ style = props.style,
1134
+ label = props.label,
1135
+ name = props.name,
1136
+ status = props.status,
1137
+ tips = props.tips,
1138
+ help = props.help,
1139
+ valueFormat = props.valueFormat,
1140
+ initialData = props.initialData,
1141
+ className = props.className,
1142
+ shouldUpdate = props.shouldUpdate,
1143
+ successBorder = props.successBorder,
1144
+ _props$statusIcon = props.statusIcon,
1145
+ statusIcon = _props$statusIcon === void 0 ? statusIconFromContext : _props$statusIcon,
1146
+ _props$rules = props.rules,
1147
+ innerRules = _props$rules === void 0 ? getInnerRules(name, rulesFromContext, formListName, formListRules) : _props$rules,
1148
+ _props$labelWidth = props.labelWidth,
1149
+ labelWidth = _props$labelWidth === void 0 ? labelWidthFromContext : _props$labelWidth,
1150
+ _props$labelAlign = props.labelAlign,
1151
+ labelAlign = _props$labelAlign === void 0 ? labelAlignFromContext : _props$labelAlign,
1152
+ _props$requiredMark = props.requiredMark,
1153
+ requiredMark = _props$requiredMark === void 0 ? requiredMarkFromContext : _props$requiredMark;
1154
+ var _useFormItemInitialDa = useFormItemInitialData(name),
1155
+ getDefaultInitialData = _useFormItemInitialDa.getDefaultInitialData;
1156
+ var _useState = useState({}),
1157
+ _useState2 = _slicedToArray(_useState, 2),
1158
+ forceUpdate = _useState2[1];
1159
+ var _useState3 = useState(void 0),
1160
+ _useState4 = _slicedToArray(_useState3, 2),
1161
+ freeShowErrorMessage = _useState4[0],
1162
+ setFreeShowErrorMessage = _useState4[1];
1163
+ var _useState5 = useState([]),
1164
+ _useState6 = _slicedToArray(_useState5, 2),
1165
+ errorList = _useState6[0],
1166
+ setErrorList = _useState6[1];
1167
+ var _useState7 = useState([]),
1168
+ _useState8 = _slicedToArray(_useState7, 2),
1169
+ successList = _useState8[0],
1170
+ setSuccessList = _useState8[1];
1171
+ var _useState9 = useState("validating"),
1172
+ _useState0 = _slicedToArray(_useState9, 2),
1173
+ verifyStatus = _useState0[0],
1174
+ setVerifyStatus = _useState0[1];
1175
+ var _useState1 = useState(false),
1176
+ _useState10 = _slicedToArray(_useState1, 2),
1177
+ resetValidating = _useState10[0],
1178
+ setResetValidating = _useState10[1];
1179
+ var _useState11 = useState(false),
1180
+ _useState12 = _slicedToArray(_useState11, 2),
1181
+ needResetField = _useState12[0],
1182
+ setNeedResetField = _useState12[1];
1183
+ var _useState13 = useState(function () {
1184
+ var fieldName = flattenDeep([formListName, name]);
1185
+ var storeValue = get(form === null || form === void 0 ? void 0 : form.store, fieldName);
1186
+ return storeValue !== null && storeValue !== void 0 ? storeValue : getDefaultInitialData({
1187
+ children: children,
1188
+ initialData: initialData
1189
+ });
1190
+ }),
1191
+ _useState14 = _slicedToArray(_useState13, 2),
1192
+ formValue = _useState14[0],
1193
+ setFormValue = _useState14[1];
1194
+ var formItemRef = useRef(null);
1195
+ var innerFormItemsRef = useRef([]);
1196
+ var shouldEmitChangeRef = useRef(false);
1197
+ var isUpdatedRef = useRef(false);
1198
+ var shouldValidate = useRef(false);
1199
+ var valueRef = useRef(formValue);
1200
+ var errorListMapRef = useRef(/* @__PURE__ */new Map());
1201
+ var isSameForm = useMemo(function () {
1202
+ return isEqual(form, formOfFormList);
1203
+ }, [form, formOfFormList]);
1204
+ var snakeName = [].concat(isSameForm ? formListName : void 0, name).filter(function (item) {
1205
+ return item !== void 0;
1206
+ }).toString();
1207
+ var errorMessages = useMemo(function () {
1208
+ return errorMessage !== null && errorMessage !== void 0 ? errorMessage : globalFormConfig.errorMessage;
1209
+ }, [errorMessage, globalFormConfig]);
1210
+ var showErrorMessage = useMemo(function () {
1211
+ if (typeof freeShowErrorMessage === "boolean") return freeShowErrorMessage;
1212
+ if (typeof props.showErrorMessage === "boolean") return props.showErrorMessage;
1213
+ return showErrorMessageFromContext;
1214
+ }, [freeShowErrorMessage, props.showErrorMessage, showErrorMessageFromContext]);
1215
+ var _useFormItemStyle = useFormItemStyle({
1216
+ className: className,
1217
+ help: help,
1218
+ tips: tips,
1219
+ snakeName: snakeName,
1220
+ status: status,
1221
+ successBorder: successBorder,
1222
+ errorList: errorList,
1223
+ successList: successList,
1224
+ layout: layout,
1225
+ verifyStatus: verifyStatus,
1226
+ label: label,
1227
+ labelWidth: labelWidth,
1228
+ labelAlign: labelAlign,
1229
+ requiredMark: requiredMark,
1230
+ requiredMarkPosition: requiredMarkPosition,
1231
+ showErrorMessage: showErrorMessage,
1232
+ innerRules: innerRules
1233
+ }),
1234
+ formItemClass = _useFormItemStyle.formItemClass,
1235
+ formItemLabelClass = _useFormItemStyle.formItemLabelClass,
1236
+ contentClass = _useFormItemStyle.contentClass,
1237
+ labelStyle = _useFormItemStyle.labelStyle,
1238
+ contentStyle = _useFormItemStyle.contentStyle,
1239
+ helpNode = _useFormItemStyle.helpNode,
1240
+ extraNode = _useFormItemStyle.extraNode;
1241
+ var updateFormValue = function updateFormValue(newVal) {
1242
+ var _form$getInternalHook, _form$getFieldsValue;
1243
+ var validate2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1244
+ var shouldEmitChange = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1245
+ var _ref = (form === null || form === void 0 || (_form$getInternalHook = form.getInternalHooks) === null || _form$getInternalHook === void 0 ? void 0 : _form$getInternalHook.call(form, HOOK_MARK)) || {},
1246
+ setPrevStore = _ref.setPrevStore;
1247
+ setPrevStore === null || setPrevStore === void 0 || setPrevStore(form === null || form === void 0 || (_form$getFieldsValue = form.getFieldsValue) === null || _form$getFieldsValue === void 0 ? void 0 : _form$getFieldsValue.call(form, true));
1248
+ shouldEmitChangeRef.current = shouldEmitChange;
1249
+ isUpdatedRef.current = true;
1250
+ shouldValidate.current = validate2;
1251
+ valueRef.current = newVal;
1252
+ var fieldName = [].concat(name);
1253
+ var fieldValue = formValue;
1254
+ if (formListName) {
1255
+ fieldName = [].concat(formListName, name);
1256
+ fieldValue = get(form === null || form === void 0 ? void 0 : form.store, fieldName);
1257
+ }
1258
+ fieldName = fieldName.filter(function (item) {
1259
+ return item !== void 0;
1260
+ });
1261
+ if (!fieldName) return;
1262
+ if (isEqual(fieldValue, newVal)) return;
1263
+ set(form === null || form === void 0 ? void 0 : form.store, fieldName, newVal);
1264
+ setFormValue(newVal);
1265
+ };
1266
+ function getInnerRules(name2, formRules, formListName2, formListRules2) {
1267
+ if (Array.isArray(name2)) {
1268
+ return get(formRules === null || formRules === void 0 ? void 0 : formRules[formListName2], name2) || get(formListRules2, name2) || get(formRules, name2.join(".")) || [];
1269
+ }
1270
+ return (formRules === null || formRules === void 0 ? void 0 : formRules[name2]) || formListRules2 || [];
1271
+ }
1272
+ var renderSuffixIcon = function renderSuffixIcon() {
1273
+ if (statusIcon === false) return null;
1274
+ var resultIcon = function resultIcon(iconSlot) {
1275
+ return /* @__PURE__ */React.createElement("span", {
1276
+ className: "".concat(classPrefix, "-form__status")
1277
+ }, iconSlot);
1278
+ };
1279
+ var getDefaultIcon = function getDefaultIcon() {
1280
+ var iconMap = {
1281
+ success: /* @__PURE__ */React.createElement(IconCheckCircleStroked, {
1282
+ size: "large"
1283
+ }),
1284
+ error: /* @__PURE__ */React.createElement(IconClose, {
1285
+ size: "large"
1286
+ }),
1287
+ warning: /* @__PURE__ */React.createElement(IconClose, {
1288
+ size: "large"
1289
+ })
1290
+ };
1291
+ if (verifyStatus === ValidateStatus.SUCCESS) {
1292
+ return resultIcon(iconMap[verifyStatus]);
1293
+ }
1294
+ if (errorList && errorList[0]) {
1295
+ var type = errorList[0].type || "error";
1296
+ return resultIcon(iconMap[type]);
1297
+ }
1298
+ return null;
1299
+ };
1300
+ if (/*#__PURE__*/React.isValidElement(statusIcon)) {
1301
+ return resultIcon(/*#__PURE__*/React.cloneElement(statusIcon, _objectSpread({
1302
+ style: {
1303
+ color: "unset"
1304
+ }
1305
+ }, statusIcon.props)));
1306
+ }
1307
+ if (statusIcon === true) {
1308
+ return getDefaultIcon();
1309
+ }
1310
+ return null;
1311
+ };
1312
+ function analysisValidateResult(_x) {
1313
+ return _analysisValidateResult.apply(this, arguments);
1314
+ }
1315
+ function _analysisValidateResult() {
1316
+ _analysisValidateResult = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(trigger) {
1317
+ var _result$rules;
1318
+ var result;
1319
+ return _regeneratorRuntime.wrap(function (_context) {
1320
+ while (1) switch (_context.prev = _context.next) {
1321
+ case 0:
1322
+ result = {
1323
+ successList: [],
1324
+ errorList: [],
1325
+ rules: [],
1326
+ resultList: [],
1327
+ allowSetValue: false
1328
+ };
1329
+ result.rules = trigger === "all" ? innerRules : innerRules.filter(function (item) {
1330
+ return (item.trigger || "change") === trigger;
1331
+ });
1332
+ if ((_result$rules = result.rules) !== null && _result$rules !== void 0 && _result$rules.length) {
1333
+ _context.next = 1;
1334
+ break;
1335
+ }
1336
+ setResetValidating(false);
1337
+ return _context.abrupt("return", result);
1338
+ case 1:
1339
+ result.allowSetValue = true;
1340
+ _context.next = 2;
1341
+ return validate(formValue, result.rules);
1342
+ case 2:
1343
+ result.resultList = _context.sent;
1344
+ result.errorList = result.resultList.filter(function (item) {
1345
+ return item.result !== true;
1346
+ }).map(function (item) {
1347
+ Object.keys(item).forEach(function (key) {
1348
+ if (!item.message && errorMessages[key]) {
1349
+ item.message = parseMessage(errorMessages[key], {
1350
+ validate: item[key],
1351
+ name: isString(label) ? label : String(name)
1352
+ });
1353
+ }
1354
+ });
1355
+ return item;
1356
+ });
1357
+ result.successList = result.resultList.filter(function (item) {
1358
+ return item.result === true && item.message && item.type === "success";
1359
+ });
1360
+ return _context.abrupt("return", result);
1361
+ case 3:
1362
+ case "end":
1363
+ return _context.stop();
1364
+ }
1365
+ }, _callee);
1366
+ }));
1367
+ return _analysisValidateResult.apply(this, arguments);
1368
+ }
1369
+ function validate$1() {
1370
+ return _validate.apply(this, arguments);
1371
+ }
1372
+ function _validate() {
1373
+ _validate = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
1374
+ var trigger,
1375
+ showErrorMessage2,
1376
+ _yield$analysisValida,
1377
+ innerSuccessList,
1378
+ innerErrorList,
1379
+ validateRules,
1380
+ resultList,
1381
+ allowSetValue,
1382
+ cacheErrorList,
1383
+ status2,
1384
+ _innerErrorList$,
1385
+ _cacheErrorList$,
1386
+ _args2 = arguments;
1387
+ return _regeneratorRuntime.wrap(function (_context2) {
1388
+ while (1) switch (_context2.prev = _context2.next) {
1389
+ case 0:
1390
+ trigger = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : "all";
1391
+ showErrorMessage2 = _args2.length > 1 ? _args2[1] : undefined;
1392
+ if (!innerFormItemsRef.current.length) {
1393
+ _context2.next = 1;
1394
+ break;
1395
+ }
1396
+ return _context2.abrupt("return", innerFormItemsRef.current.map(function (innerFormItem) {
1397
+ return innerFormItem === null || innerFormItem === void 0 ? void 0 : innerFormItem.validate(trigger, showErrorMessage2);
1398
+ }));
1399
+ case 1:
1400
+ setResetValidating(true);
1401
+ setFreeShowErrorMessage(showErrorMessage2);
1402
+ _context2.next = 2;
1403
+ return analysisValidateResult(trigger);
1404
+ case 2:
1405
+ _yield$analysisValida = _context2.sent;
1406
+ innerSuccessList = _yield$analysisValida.successList;
1407
+ innerErrorList = _yield$analysisValida.errorList;
1408
+ validateRules = _yield$analysisValida.rules;
1409
+ resultList = _yield$analysisValida.resultList;
1410
+ allowSetValue = _yield$analysisValida.allowSetValue;
1411
+ if (innerErrorList.length && trigger !== "all") {
1412
+ errorListMapRef.current.set(trigger, innerErrorList);
1413
+ } else {
1414
+ errorListMapRef.current["delete"](trigger);
1415
+ }
1416
+ if (!innerErrorList.length && trigger === "all") {
1417
+ errorListMapRef.current.clear();
1418
+ }
1419
+ cacheErrorList = _toConsumableArray(errorListMapRef.current.values()).flat();
1420
+ if (allowSetValue) {
1421
+ setSuccessList(innerSuccessList);
1422
+ setErrorList(cacheErrorList.length ? cacheErrorList : innerErrorList);
1423
+ }
1424
+ if (validateRules.length) {
1425
+ status2 = ValidateStatus.SUCCESS;
1426
+ if (innerErrorList.length || cacheErrorList.length) {
1427
+ status2 = (innerErrorList === null || innerErrorList === void 0 || (_innerErrorList$ = innerErrorList[0]) === null || _innerErrorList$ === void 0 ? void 0 : _innerErrorList$.type) || (cacheErrorList === null || cacheErrorList === void 0 || (_cacheErrorList$ = cacheErrorList[0]) === null || _cacheErrorList$ === void 0 ? void 0 : _cacheErrorList$.type) || ValidateStatus.ERROR;
1428
+ }
1429
+ setVerifyStatus(status2);
1430
+ } else {
1431
+ setVerifyStatus(ValidateStatus.VALIDATING);
1432
+ }
1433
+ if (needResetField) {
1434
+ resetHandler();
1435
+ }
1436
+ setResetValidating(false);
1437
+ return _context2.abrupt("return", _defineProperty({}, snakeName, innerErrorList.length === 0 ? true : resultList));
1438
+ case 3:
1439
+ case "end":
1440
+ return _context2.stop();
1441
+ }
1442
+ }, _callee2);
1443
+ }));
1444
+ return _validate.apply(this, arguments);
1445
+ }
1446
+ function validateOnly() {
1447
+ return _validateOnly.apply(this, arguments);
1448
+ }
1449
+ function _validateOnly() {
1450
+ _validateOnly = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
1451
+ var trigger,
1452
+ _yield$analysisValida2,
1453
+ innerErrorList,
1454
+ resultList,
1455
+ _args3 = arguments;
1456
+ return _regeneratorRuntime.wrap(function (_context3) {
1457
+ while (1) switch (_context3.prev = _context3.next) {
1458
+ case 0:
1459
+ trigger = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : "all";
1460
+ _context3.next = 1;
1461
+ return analysisValidateResult(trigger);
1462
+ case 1:
1463
+ _yield$analysisValida2 = _context3.sent;
1464
+ innerErrorList = _yield$analysisValida2.errorList;
1465
+ resultList = _yield$analysisValida2.resultList;
1466
+ return _context3.abrupt("return", _defineProperty({}, snakeName, innerErrorList.length === 0 ? true : resultList));
1467
+ case 2:
1468
+ case "end":
1469
+ return _context3.stop();
1470
+ }
1471
+ }, _callee3);
1472
+ }));
1473
+ return _validateOnly.apply(this, arguments);
1474
+ }
1475
+ function handleItemBlur() {
1476
+ var filterRules = innerRules.filter(function (item) {
1477
+ return item.trigger === "blur";
1478
+ });
1479
+ if (filterRules.length) {
1480
+ validate$1("blur");
1481
+ }
1482
+ }
1483
+ function getResetValue(resetType) {
1484
+ if (resetType === "initial") {
1485
+ return getDefaultInitialData({
1486
+ children: children,
1487
+ initialData: initialData
1488
+ });
1489
+ }
1490
+ var emptyValue;
1491
+ if (Array.isArray(formValue)) {
1492
+ emptyValue = [];
1493
+ } else if (isObject(formValue)) {
1494
+ emptyValue = {};
1495
+ } else if (isString(formValue)) {
1496
+ emptyValue = "";
1497
+ }
1498
+ return emptyValue;
1499
+ }
1500
+ function resetField(type) {
1501
+ if (typeof name === "undefined") return;
1502
+ var resetType = type || resetTypeFromContext;
1503
+ var resetValue = getResetValue(resetType);
1504
+ updateFormValue(resetValue, false);
1505
+ if (resetValidating) {
1506
+ setNeedResetField(true);
1507
+ } else {
1508
+ resetHandler();
1509
+ }
1510
+ }
1511
+ function resetHandler() {
1512
+ setNeedResetField(false);
1513
+ setErrorList([]);
1514
+ setSuccessList([]);
1515
+ setVerifyStatus(ValidateStatus.VALIDATING);
1516
+ }
1517
+ function setField(field) {
1518
+ var value = field.value,
1519
+ status2 = field.status,
1520
+ validateMessage = field.validateMessage;
1521
+ if (typeof status2 !== "undefined") {
1522
+ setErrorList(validateMessage ? [validateMessage] : []);
1523
+ setSuccessList(validateMessage ? [validateMessage] : []);
1524
+ setNeedResetField(false);
1525
+ setVerifyStatus(status2);
1526
+ }
1527
+ if (typeof value !== "undefined") {
1528
+ updateFormValue(value, typeof status2 === "undefined" ? true : false, true);
1529
+ }
1530
+ }
1531
+ function setValidateMessage(validateMessage) {
1532
+ var _validateMessage$;
1533
+ if (!validateMessage || !Array.isArray(validateMessage)) return;
1534
+ if (validateMessage.length === 0) {
1535
+ setErrorList([]);
1536
+ setVerifyStatus(ValidateStatus.SUCCESS);
1537
+ return;
1538
+ }
1539
+ setErrorList(validateMessage);
1540
+ var status2 = (validateMessage === null || validateMessage === void 0 || (_validateMessage$ = validateMessage[0]) === null || _validateMessage$ === void 0 ? void 0 : _validateMessage$.type) || ValidateStatus.ERROR;
1541
+ setVerifyStatus(status2);
1542
+ }
1543
+ function getValidateMessage() {
1544
+ return errorList;
1545
+ }
1546
+ useEffect(function () {
1547
+ var _form$getInternalHook2;
1548
+ if (!shouldUpdate || !form) return;
1549
+ var _ref2 = (form === null || form === void 0 || (_form$getInternalHook2 = form.getInternalHooks) === null || _form$getInternalHook2 === void 0 ? void 0 : _form$getInternalHook2.call(form, HOOK_MARK)) || {},
1550
+ getPrevStore = _ref2.getPrevStore,
1551
+ registerWatch = _ref2.registerWatch;
1552
+ var cancelRegister = registerWatch === null || registerWatch === void 0 ? void 0 : registerWatch(function () {
1553
+ var _form$getFieldsValue2;
1554
+ var currStore = (form === null || form === void 0 || (_form$getFieldsValue2 = form.getFieldsValue) === null || _form$getFieldsValue2 === void 0 ? void 0 : _form$getFieldsValue2.call(form, true)) || {};
1555
+ var updateFlag = shouldUpdate;
1556
+ if (isFunction(shouldUpdate)) updateFlag = shouldUpdate(getPrevStore === null || getPrevStore === void 0 ? void 0 : getPrevStore(), currStore);
1557
+ if (updateFlag) forceUpdate({});
1558
+ });
1559
+ return cancelRegister;
1560
+ }, [shouldUpdate, form]);
1561
+ useEffect(function () {
1562
+ if (typeof name === "undefined") return;
1563
+ if (formListName && isSameForm) {
1564
+ formListMapRef.current.set(name, formItemRef);
1565
+ return function () {
1566
+ formListMapRef.current["delete"](name);
1567
+ unset(form === null || form === void 0 ? void 0 : form.store, name);
1568
+ };
1569
+ }
1570
+ if (!formMapRef) return;
1571
+ formMapRef.current.set(name, formItemRef);
1572
+ return function () {
1573
+ formMapRef.current["delete"](name);
1574
+ unset(form === null || form === void 0 ? void 0 : form.store, name);
1575
+ };
1576
+ }, [snakeName, formListName]);
1577
+ useEffect(function () {
1578
+ var _form$getInternalHook3, _form$getInternalHook4;
1579
+ form === null || form === void 0 || (_form$getInternalHook3 = form.getInternalHooks) === null || _form$getInternalHook3 === void 0 || (_form$getInternalHook3 = _form$getInternalHook3.call(form, HOOK_MARK)) === null || _form$getInternalHook3 === void 0 || (_form$getInternalHook4 = _form$getInternalHook3.notifyWatch) === null || _form$getInternalHook4 === void 0 || _form$getInternalHook4.call(_form$getInternalHook3, name);
1580
+ if (!shouldValidate.current) return;
1581
+ if (typeof name !== "undefined" && shouldEmitChangeRef.current) {
1582
+ if (formListName && isSameForm) {
1583
+ var formListValue = merge$1([], calcFieldValue(name, formValue));
1584
+ var fieldValue = calcFieldValue(formListName, formListValue);
1585
+ onFormItemValueChange === null || onFormItemValueChange === void 0 || onFormItemValueChange(_objectSpread({}, fieldValue));
1586
+ } else {
1587
+ var _fieldValue = calcFieldValue(name, formValue);
1588
+ onFormItemValueChange === null || onFormItemValueChange === void 0 || onFormItemValueChange(_objectSpread({}, _fieldValue));
1589
+ }
1590
+ }
1591
+ var filterRules = innerRules.filter(function (item) {
1592
+ return (item.trigger || "change") === "change";
1593
+ });
1594
+ if (filterRules.length) {
1595
+ validate$1("change");
1596
+ }
1597
+ }, [formValue, snakeName]);
1598
+ var instance = {
1599
+ name: name,
1600
+ value: formValue,
1601
+ isUpdated: isUpdatedRef.current,
1602
+ getValue: function getValue() {
1603
+ return valueRef.current;
1604
+ },
1605
+ setValue: function setValue(newVal) {
1606
+ return updateFormValue(newVal, true, true);
1607
+ },
1608
+ setField: setField,
1609
+ validate: validate$1,
1610
+ validateOnly: validateOnly,
1611
+ resetField: resetField,
1612
+ setValidateMessage: setValidateMessage,
1613
+ getValidateMessage: getValidateMessage,
1614
+ resetValidate: resetHandler
1615
+ };
1616
+ useImperativeHandle(ref, function () {
1617
+ return instance;
1618
+ });
1619
+ useImperativeHandle(formItemRef, function () {
1620
+ return instance;
1621
+ });
1622
+ if (isFunction(children)) return children(form);
1623
+ return /* @__PURE__ */React.createElement("div", {
1624
+ className: formItemClass,
1625
+ style: style
1626
+ }, label && /* @__PURE__ */React.createElement("div", {
1627
+ className: formItemLabelClass,
1628
+ style: labelStyle
1629
+ }, /* @__PURE__ */React.createElement("label", {
1630
+ htmlFor: props === null || props === void 0 ? void 0 : props["for"]
1631
+ }, label), colon || "\uFF1A"), /* @__PURE__ */React.createElement("div", {
1632
+ className: contentClass(),
1633
+ style: contentStyle
1634
+ }, /* @__PURE__ */React.createElement("div", {
1635
+ className: "".concat(classPrefix, "-form__controls-content")
1636
+ }, React.Children.map(children, function (child, index) {
1637
+ if (!child) return null;
1638
+ var ctrlKey = "value";
1639
+ if (/*#__PURE__*/React.isValidElement(child)) {
1640
+ if (child.type === FormItem) {
1641
+ return /*#__PURE__*/React.cloneElement(child, {
1642
+ ref: function ref(el) {
1643
+ if (!el) return;
1644
+ innerFormItemsRef.current[index] = el;
1645
+ }
1646
+ });
1647
+ }
1648
+ if (_typeof(child.type) === "object") {
1649
+ ctrlKey = ctrlKeyMap.get(child.type) || "value";
1650
+ }
1651
+ var childProps = child.props;
1652
+ return /*#__PURE__*/React.cloneElement(child, _objectSpread(_objectSpread({
1653
+ disabled: disabledFromContext
1654
+ }, childProps), {}, _defineProperty(_defineProperty(_defineProperty({}, ctrlKey, formValue), "onChange", function onChange(value) {
1655
+ var _childProps$onChange, _childProps$onChange$;
1656
+ var newValue = valueFormat ? valueFormat(value) : value;
1657
+ updateFormValue(newValue, true, true);
1658
+ for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1659
+ args[_key - 1] = arguments[_key];
1660
+ }
1661
+ childProps === null || childProps === void 0 || (_childProps$onChange = childProps.onChange) === null || _childProps$onChange === void 0 || (_childProps$onChange$ = _childProps$onChange.call) === null || _childProps$onChange$ === void 0 || _childProps$onChange$.call.apply(_childProps$onChange$, [_childProps$onChange, null, value].concat(args));
1662
+ }), "onBlur", function onBlur(value) {
1663
+ var _childProps$onBlur, _childProps$onBlur$ca;
1664
+ handleItemBlur();
1665
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
1666
+ args[_key2 - 1] = arguments[_key2];
1667
+ }
1668
+ childProps === null || childProps === void 0 || (_childProps$onBlur = childProps.onBlur) === null || _childProps$onBlur === void 0 || (_childProps$onBlur$ca = _childProps$onBlur.call) === null || _childProps$onBlur$ca === void 0 || _childProps$onBlur$ca.call.apply(_childProps$onBlur$ca, [_childProps$onBlur, null, value].concat(args));
1669
+ })));
1670
+ }
1671
+ return child;
1672
+ }), renderSuffixIcon()), helpNode, extraNode));
1673
+ });
1674
+ FormItem.displayName = "FormItem";
1675
+
1676
+ export { FormItem as F, formDefaultProps as f };
1677
+ //# sourceMappingURL=dep-EcrDKDlu.js.map