x-next 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/_hooks/use-form-item.d.ts +5 -0
  3. package/dist/_hooks/use-picker-focus.d.ts +17 -0
  4. package/dist/components/_components/feedback-icon/index.vue.d.ts +4 -4
  5. package/dist/components/_components/picker/input-range.vue.d.ts +10 -6
  6. package/dist/components/_components/picker/input.vue.d.ts +9 -5
  7. package/dist/components/alert/Alert.vue.d.ts +5 -5
  8. package/dist/components/alert/index.d.ts +10 -10
  9. package/dist/components/date-picker/DatePanel.vue.d.ts +5 -0
  10. package/dist/components/date-picker/DatePicker.vue.d.ts +36 -16
  11. package/dist/components/date-picker/index.d.ts +77 -33
  12. package/dist/components/dialog/Dialog.d.ts +1 -1
  13. package/dist/components/dialog/index.d.ts +3 -3
  14. package/dist/components/drawer/index.d.ts +3 -3
  15. package/dist/components/drawer/src/Drawer.vue.d.ts +1 -1
  16. package/dist/components/dropdown/Dropdown.vue.d.ts +30 -4
  17. package/dist/components/dropdown/DropdownButton.vue.d.ts +31 -5
  18. package/dist/components/dropdown/DropdownOption.vue.d.ts +2 -0
  19. package/dist/components/dropdown/DropdownSubmenu.vue.d.ts +162 -5
  20. package/dist/components/dropdown/context.d.ts +14 -1
  21. package/dist/components/dropdown/dropdown-panel.vue.d.ts +7 -1
  22. package/dist/components/dropdown/index.d.ts +610 -28
  23. package/dist/components/dropdown/use-keyboard.d.ts +10 -0
  24. package/dist/components/form/FormItem.vue.d.ts +12 -4
  25. package/dist/components/form/context.d.ts +6 -0
  26. package/dist/components/form/form-item-label.vue.d.ts +4 -4
  27. package/dist/components/form/form-item-message.vue.d.ts +2 -0
  28. package/dist/components/form/index.d.ts +30 -8
  29. package/dist/components/form/interface.d.ts +2 -2
  30. package/dist/components/form-input/InputPassword.vue.d.ts +20 -2
  31. package/dist/components/form-input/index.d.ts +22 -4
  32. package/dist/components/form-select/Select.d.ts +3 -3
  33. package/dist/components/form-select/hooks/use-select.d.ts +2 -1
  34. package/dist/components/form-select/index.d.ts +6 -6
  35. package/dist/components/form-slider/Slider.vue.d.ts +10 -3
  36. package/dist/components/form-slider/index.d.ts +26 -6
  37. package/dist/components/form-slider/slider-button.vue.d.ts +4 -3
  38. package/dist/components/form-switch/Switch.vue.d.ts +2 -1
  39. package/dist/components/form-switch/index.d.ts +5 -2
  40. package/dist/components/form-textarea/Textarea.vue.d.ts +2 -2
  41. package/dist/components/form-textarea/index.d.ts +5 -5
  42. package/dist/components/image/Image.vue.d.ts +10 -9
  43. package/dist/components/image/ImagePreview.vue.d.ts +8 -7
  44. package/dist/components/image/ImagePreviewAction.d.ts +3 -3
  45. package/dist/components/image/ImagePreviewGroup.vue.d.ts +8 -7
  46. package/dist/components/image/index.d.ts +59 -52
  47. package/dist/components/image/preview-arrow.vue.d.ts +2 -2
  48. package/dist/components/image/preview-toolbar.vue.d.ts +3 -3
  49. package/dist/components/layout/LayoutSidebar.vue.d.ts +2 -2
  50. package/dist/components/layout/index.d.ts +4 -4
  51. package/dist/components/link/Link.vue.d.ts +2 -2
  52. package/dist/components/link/index.d.ts +4 -4
  53. package/dist/components/menu/Menu.d.ts +2 -2
  54. package/dist/components/menu/base-menu.vue.d.ts +2 -2
  55. package/dist/components/menu/index.d.ts +4 -4
  56. package/dist/components/menu/sub-menu-pop.vue.d.ts +5 -5
  57. package/dist/components/message/index.d.ts +17 -17
  58. package/dist/components/message/message.vue.d.ts +8 -8
  59. package/dist/components/notification/Notification.d.ts +1 -1
  60. package/dist/components/notification/index.d.ts +3 -3
  61. package/dist/components/pagination/page-item-ellipsis.vue.d.ts +1 -1
  62. package/dist/components/pagination/page-item-step.vue.d.ts +2 -2
  63. package/dist/components/pagination/page-options.vue.d.ts +6 -6
  64. package/dist/components/popconfirm/src/popup.vue.d.ts +1 -1
  65. package/dist/components/popover/Popover.d.ts +1 -1
  66. package/dist/components/popover/index.d.ts +3 -3
  67. package/dist/components/popup/Popup.d.ts +1 -1
  68. package/dist/components/popup/index.d.ts +3 -3
  69. package/dist/components/progress/Progress.vue.d.ts +4 -4
  70. package/dist/components/progress/circle.vue.d.ts +2 -2
  71. package/dist/components/progress/index.d.ts +8 -8
  72. package/dist/components/progress/line.vue.d.ts +1 -1
  73. package/dist/components/progress/steps.vue.d.ts +1 -1
  74. package/dist/components/steps/Step.vue.d.ts +2 -2
  75. package/dist/components/steps/index.d.ts +4 -4
  76. package/dist/components/tabs/Tabs.d.ts +1 -1
  77. package/dist/components/tabs/index.d.ts +3 -3
  78. package/dist/components/tabs/tabs-tab.vue.d.ts +1 -1
  79. package/dist/components/tag/Tag.vue.d.ts +2 -2
  80. package/dist/components/tag/index.d.ts +4 -4
  81. package/dist/components/time-picker/TimeColumn.vue.d.ts +3 -0
  82. package/dist/components/time-picker/TimePanel.vue.d.ts +3 -0
  83. package/dist/components/time-picker/TimePicker.vue.d.ts +33 -17
  84. package/dist/components/time-picker/index.d.ts +73 -36
  85. package/dist/components/time-range-selector/TimeRangeSelector.vue.d.ts +8 -0
  86. package/dist/components/time-range-selector/index.d.ts +22 -0
  87. package/dist/components/tooltip/Tooltip.vue.d.ts +1 -1
  88. package/dist/components/tooltip/index.d.ts +3 -3
  89. package/dist/components/trigger/Trigger.d.ts +1 -1
  90. package/dist/components/trigger/index.d.ts +3 -3
  91. package/dist/es/_hooks/use-form-item.js +36 -10
  92. package/dist/es/_hooks/use-overflow.js +45 -40
  93. package/dist/es/_hooks/use-picker-focus.js +57 -0
  94. package/dist/es/_utils/constant.js +17 -5
  95. package/dist/es/components/_components/picker/input-range.vue.js +45 -55
  96. package/dist/es/components/_components/picker/input-range.vue2.js +105 -70
  97. package/dist/es/components/_components/picker/input.vue.js +22 -25
  98. package/dist/es/components/_components/picker/input.vue2.js +58 -43
  99. package/dist/es/components/_components/select-view/select-view.js +61 -66
  100. package/dist/es/components/date-picker/DatePanel.vue.js +102 -94
  101. package/dist/es/components/date-picker/DatePanel.vue2.js +97 -44
  102. package/dist/es/components/date-picker/DatePicker.vue.js +71 -58
  103. package/dist/es/components/date-picker/DatePicker.vue2.js +285 -231
  104. package/dist/es/components/dialog/Dialog.js +159 -128
  105. package/dist/es/components/dropdown/Dropdown.vue.js +18 -15
  106. package/dist/es/components/dropdown/Dropdown.vue2.js +52 -31
  107. package/dist/es/components/dropdown/DropdownOption.vue.js +22 -21
  108. package/dist/es/components/dropdown/DropdownOption.vue2.js +23 -19
  109. package/dist/es/components/dropdown/DropdownSubmenu.vue.js +49 -36
  110. package/dist/es/components/dropdown/DropdownSubmenu.vue2.js +45 -24
  111. package/dist/es/components/dropdown/context.js +3 -2
  112. package/dist/es/components/dropdown/dropdown-panel.vue.js +24 -21
  113. package/dist/es/components/dropdown/dropdown-panel.vue2.js +83 -31
  114. package/dist/es/components/dropdown/use-keyboard.js +45 -0
  115. package/dist/es/components/form/Form.vue2.js +113 -101
  116. package/dist/es/components/form/FormItem.vue.js +26 -22
  117. package/dist/es/components/form/FormItem.vue2.js +162 -125
  118. package/dist/es/components/form/form-item-message.vue.js +31 -24
  119. package/dist/es/components/form/form-item-message.vue2.js +4 -2
  120. package/dist/es/components/form-checkbox/Checkbox.js +80 -76
  121. package/dist/es/components/form-checkbox/CheckboxGroup.js +43 -38
  122. package/dist/es/components/form-input/Input.js +83 -79
  123. package/dist/es/components/form-input/InputPassword.vue.js +19 -16
  124. package/dist/es/components/form-input/InputPassword.vue2.js +39 -29
  125. package/dist/es/components/form-input/InputSearch.js +47 -37
  126. package/dist/es/components/form-input-number/InputNumber.js +134 -133
  127. package/dist/es/components/form-input-tag/InputTag.js +173 -162
  128. package/dist/es/components/form-radio/Radio.js +74 -71
  129. package/dist/es/components/form-radio/RadioGroup.js +55 -49
  130. package/dist/es/components/form-select/Select.js +116 -114
  131. package/dist/es/components/form-select/hooks/use-select.js +128 -128
  132. package/dist/es/components/form-slider/Slider.vue.js +28 -28
  133. package/dist/es/components/form-slider/Slider.vue2.js +139 -132
  134. package/dist/es/components/form-slider/slider-button.vue.js +6 -6
  135. package/dist/es/components/form-slider/slider-button.vue2.js +39 -34
  136. package/dist/es/components/form-switch/Switch.vue.js +9 -9
  137. package/dist/es/components/form-switch/Switch.vue2.js +81 -74
  138. package/dist/es/components/form-textarea/Textarea.vue2.js +123 -108
  139. package/dist/es/components/image/Image.vue2.js +77 -76
  140. package/dist/es/components/image/ImagePreview.vue.js +13 -12
  141. package/dist/es/components/image/ImagePreview.vue2.js +141 -136
  142. package/dist/es/components/image/ImagePreviewGroup.vue.js +1 -1
  143. package/dist/es/components/image/ImagePreviewGroup.vue2.js +82 -83
  144. package/dist/es/components/rate/Rate.js +106 -103
  145. package/dist/es/components/time-picker/TimeColumn.vue.js +34 -23
  146. package/dist/es/components/time-picker/TimeColumn.vue2.js +37 -28
  147. package/dist/es/components/time-picker/TimePicker.vue.js +83 -64
  148. package/dist/es/components/time-picker/TimePicker.vue2.js +192 -156
  149. package/dist/es/components/time-range-selector/TimeRangeSelector.vue.js +327 -193
  150. package/dist/es/locale/en-US.js +6 -0
  151. package/dist/es/locale/zh-CN.js +6 -0
  152. package/dist/es/style.css +1 -1
  153. package/dist/icons/_self/down.d.ts +1 -1
  154. package/dist/icons/_self/dropdown/more.d.ts +1 -1
  155. package/dist/icons/_self/empty-better.d.ts +1 -1
  156. package/dist/icons/_self/empty.d.ts +1 -1
  157. package/dist/icons/_self/eye-invisible.d.ts +1 -1
  158. package/dist/icons/_self/eye.d.ts +1 -1
  159. package/dist/icons/_self/full-screen.d.ts +1 -1
  160. package/dist/icons/_self/left.d.ts +1 -1
  161. package/dist/icons/_self/menu/down.d.ts +1 -1
  162. package/dist/icons/_self/minus.d.ts +1 -1
  163. package/dist/icons/_self/more-dot.d.ts +1 -1
  164. package/dist/icons/_self/next.d.ts +1 -1
  165. package/dist/icons/_self/original-size.d.ts +1 -1
  166. package/dist/icons/_self/plus.d.ts +1 -1
  167. package/dist/icons/_self/prev.d.ts +1 -1
  168. package/dist/icons/_self/question-message.d.ts +1 -1
  169. package/dist/icons/_self/right.d.ts +1 -1
  170. package/dist/icons/_self/rotate-left.d.ts +1 -1
  171. package/dist/icons/_self/rotate-right.d.ts +1 -1
  172. package/dist/icons/_self/search.d.ts +1 -1
  173. package/dist/icons/_self/up.d.ts +1 -1
  174. package/dist/icons/_self/zoom-in.d.ts +1 -1
  175. package/dist/icons/_self/zoom-out.d.ts +1 -1
  176. package/dist/icons/_ui/alone-left.d.ts +1 -1
  177. package/dist/icons/_ui/alone-margin-left.d.ts +1 -1
  178. package/dist/icons/_ui/alone-margin-right.d.ts +1 -1
  179. package/dist/icons/_ui/alone-right.d.ts +1 -1
  180. package/dist/icons/_ui/calendar.d.ts +1 -1
  181. package/dist/icons/_ui/time.d.ts +1 -1
  182. package/dist/icons/animation/animation-loading.d.ts +1 -1
  183. package/dist/icons/default/check-circle-fill.d.ts +1 -1
  184. package/dist/icons/default/check.d.ts +1 -1
  185. package/dist/icons/default/close-circle-fill.d.ts +1 -1
  186. package/dist/icons/default/close.d.ts +1 -1
  187. package/dist/icons/default/exclamation-circle-fill.d.ts +1 -1
  188. package/dist/icons/default/exclamation.d.ts +1 -1
  189. package/dist/icons/default/filter.d.ts +1 -1
  190. package/dist/icons/default/info-circle-fill.d.ts +1 -1
  191. package/dist/icons/default/link.d.ts +1 -1
  192. package/dist/icons/default/logo-simple.d.ts +1 -1
  193. package/dist/icons/default/minus-circle-fill.d.ts +1 -1
  194. package/dist/icons/icon.d.ts +2 -2
  195. package/dist/icons/index.d.ts +3 -3
  196. package/dist/index.cjs +4 -4
  197. package/dist/index.d.ts +1 -1
  198. package/dist/index.umd.js +4 -4
  199. package/dist/locale/interface.d.ts +6 -0
  200. package/dist/style/base.css +1 -1
  201. package/dist/style/date-picker.css +1 -1
  202. package/dist/style/form.css +1 -1
  203. package/dist/style/image.css +1 -1
  204. package/dist/style/time-range-selector.css +1 -1
  205. package/dist/style.css +1 -1
  206. package/package.json +2 -2
@@ -1,21 +1,21 @@
1
- import { defineComponent as te, toRefs as A, inject as W, computed as o, ref as F, reactive as g, nextTick as C, provide as ae, toRef as oe, onMounted as se, onBeforeUnmount as ie, watch as re } from "vue";
2
- import { Schema as ne } from "../../node_modules/.pnpm/b-validate@1.5.3/node_modules/b-validate/es/index.js";
3
- import { formInjectionKey as ue, formItemInjectionKey as E } from "./context.js";
4
- import { Col as de, Row as ce } from "../grid/index.js";
5
- import fe from "./form-item-label.vue.js";
6
- import me from "./form-item-message.vue.js";
7
- import { getValueByPath as h, setValueByPath as x } from "../../_utils/get-value-by-path.js";
8
- import { getFormElementId as ve, getFinalValidateStatus as be, getFinalValidateMessage as ge } from "./utils.js";
9
- import { getClassNameMixin as ye } from "../../_utils/config.js";
10
- import { useLocale as pe } from "../../locale/index.js";
11
- import { deepClone as w } from "../../_utils/helpers.js";
12
- const Ve = te({
1
+ import { defineComponent as be, toRefs as H, inject as U, computed as i, ref as R, reactive as F, useId as me, nextTick as q, provide as ye, toRef as Se, onMounted as he, onBeforeUnmount as Fe, watch as pe } from "vue";
2
+ import { Schema as we } from "../../node_modules/.pnpm/b-validate@1.5.3/node_modules/b-validate/es/index.js";
3
+ import { formInjectionKey as Be, formItemInjectionKey as G } from "./context.js";
4
+ import { Col as Pe, Row as je } from "../grid/index.js";
5
+ import Ce from "./form-item-label.vue.js";
6
+ import Le from "./form-item-message.vue.js";
7
+ import { getValueByPath as A, setValueByPath as J } from "../../_utils/get-value-by-path.js";
8
+ import { getFormElementId as Re, getFinalValidateStatus as qe, getFinalValidateMessage as Ae } from "./utils.js";
9
+ import { getClassNameMixin as Ve } from "../../_utils/config.js";
10
+ import { useLocale as Me } from "../../locale/index.js";
11
+ import { deepClone as V } from "../../_utils/helpers.js";
12
+ const He = be({
13
13
  name: "FormItem",
14
14
  components: {
15
- XRow: ce,
16
- XCol: de,
17
- FormItemLabel: fe,
18
- FormItemMessage: me
15
+ XRow: je,
16
+ XCol: Pe,
17
+ FormItemLabel: Ce,
18
+ FormItemMessage: Le
19
19
  },
20
20
  props: {
21
21
  /**
@@ -228,182 +228,219 @@ const Ve = te({
228
228
  * @en Extra content
229
229
  * @slot extra
230
230
  */
231
- setup(t) {
232
- const i = ye("form--item"), { field: s } = A(t), l = W(ue, {}), { autoLabelWidth: T, layout: _ } = A(l), { locale: N } = pe(), $ = o(() => {
233
- const e = { ...t.labelColProps ?? l.labelColProps };
234
- return t.labelColFlex ? e.flex = t.labelColFlex : l.autoLabelWidth && (e.flex = `${l.maxLabelWidth}px`), e;
235
- }), B = o(() => {
231
+ setup(a, { slots: B }) {
232
+ const r = Ve("form--item"), { field: s } = H(a), l = U(Be, {}), { autoLabelWidth: Q, layout: Y } = H(l), { locale: Z } = Me(), x = i(() => {
233
+ const e = { ...a.labelColProps ?? l.labelColProps };
234
+ return a.labelColFlex ? e.flex = a.labelColFlex : l.autoLabelWidth && (e.flex = `${l.maxLabelWidth}px`), e;
235
+ }), M = i(() => {
236
236
  const e = {
237
- ...t.wrapperColProps ?? l.wrapperColProps
237
+ ...a.wrapperColProps ?? l.wrapperColProps
238
238
  };
239
- return s.value && (e.id = ve(l.id, s.value)), (t.labelColFlex || l.autoLabelWidth) && (e.flex = "auto"), e;
240
- }), z = o(() => t.labelColStyle ?? l.labelColStyle), D = o(() => t.wrapperColStyle ?? l.wrapperColStyle), P = F(w(h(l.model, t.field))), j = g({}), R = g({}), L = o(() => be(j)), K = o(() => ge(R)), c = F(!1), X = o(() => h(l.model, t.field)), q = o(() => !!(t.disabled ?? (l == null ? void 0 : l.disabled))), f = o(() => t.validateStatus ?? L.value), v = o(() => f.value === "error"), I = o(() => {
239
+ return s.value && (e.id = Re(l.id, s.value)), (a.labelColFlex || l.autoLabelWidth) && (e.flex = "auto"), e;
240
+ }), ee = i(() => a.labelColStyle ?? l.labelColStyle), le = i(() => a.wrapperColStyle ?? l.wrapperColStyle), O = R(V(A(l.model, a.field))), W = F({}), $ = F({}), P = i(() => qe(W)), j = i(() => Ae($)), g = R(!1);
241
+ let b = 0, E = !1;
242
+ const ae = i(() => A(l.model, a.field)), k = i(() => !!(a.disabled ?? (l == null ? void 0 : l.disabled))), m = i(() => a.validateStatus ?? P.value), c = i(() => m.value === "error"), T = i(() => {
241
243
  var n;
242
244
  const e = [].concat(
243
- t.rules ?? ((n = l == null ? void 0 : l.rules) == null ? void 0 : n[t.field]) ?? []
244
- ), a = e.some((S) => S.required);
245
- return t.required && !a ? [{ required: !0 }].concat(e) : e;
246
- }), H = o(() => I.value.some((e) => e.required)), y = t.noStyle ? W(E, void 0) : void 0, u = (e, { status: a, message: n }) => {
247
- j[e] = a, R[e] = n, t.noStyle && (y == null || y.updateValidateState(e, { status: a, message: n }));
248
- }, U = o(
249
- () => t.feedback && f.value ? f.value : void 0
250
- ), m = () => {
251
- if (c.value)
245
+ a.rules ?? ((n = l == null ? void 0 : l.rules) == null ? void 0 : n[a.field]) ?? []
246
+ ), t = e.some((d) => d.required);
247
+ return a.required && !t ? [{ required: !0 }].concat(e) : e;
248
+ }), _ = i(() => T.value.some((e) => e.required)), o = a.noStyle ? U(G, void 0) : void 0, C = `x-form-item-${me()}`, L = `${C}-message`, z = `${C}-extra`, y = F(/* @__PURE__ */ new Map()), te = (e, t, n) => {
249
+ var w;
250
+ const d = y.get(e);
251
+ (!d || d.id !== t || d.labelable !== n) && y.set(e, { id: t, labelable: n }), a.noStyle && ((w = o == null ? void 0 : o.registerControl) == null || w.call(o, e, t, n));
252
+ }, oe = (e) => {
253
+ var t;
254
+ y.delete(e), a.noStyle && ((t = o == null ? void 0 : o.unregisterControl) == null || t.call(o, e));
255
+ }, I = i(
256
+ () => {
257
+ var e;
258
+ return a.noStyle ? o == null ? void 0 : o.labelId : !a.hideLabel && (a.label || B.label) ? String(((e = a.labelAttrs) == null ? void 0 : e.id) ?? `${C}-label`) : void 0;
259
+ }
260
+ ), ie = i(
261
+ () => a.noStyle ? o == null ? void 0 : o.describedBy : [
262
+ c.value && j.value.length || a.help || B.help ? L : "",
263
+ a.extra || B.extra ? z : ""
264
+ ].filter(Boolean).join(" ") || void 0
265
+ ), se = i(() => {
266
+ const e = y.size === 1 ? [...y.values()][0] : void 0;
267
+ return {
268
+ id: I.value,
269
+ for: e != null && e.labelable ? e.id : void 0,
270
+ ...a.labelAttrs
271
+ };
272
+ }), v = (e, { status: t, message: n }) => {
273
+ W[e] = t, $[e] = n, a.noStyle && (o == null || o.updateValidateState(e, { status: t, message: n }));
274
+ }, ne = i(
275
+ () => a.feedback && m.value ? m.value : void 0
276
+ ), S = () => {
277
+ if (g.value)
252
278
  return Promise.resolve();
253
- const e = I.value;
279
+ const e = T.value;
254
280
  if (!s.value || e.length === 0)
255
- return L.value && p(), Promise.resolve();
256
- const a = s.value, n = X.value;
257
- u(a, {
258
- status: "",
281
+ return P.value && h(), Promise.resolve();
282
+ const t = s.value, n = ae.value, d = ++b;
283
+ v(t, {
284
+ status: "validating",
259
285
  message: ""
260
286
  });
261
- const S = new ne(
287
+ const w = new we(
262
288
  {
263
- [a]: e.map(({ ...d }) => (!d.type && !d.validator && (d.type = "string"), d))
289
+ [t]: e.map(({ ...f }) => (!f.type && !f.validator && (f.type = "string"), f))
264
290
  },
265
291
  {
266
292
  ignoreEmptyString: !0,
267
- validateMessages: N.value.validateMessages
293
+ validateMessages: Z.value.validateMessages
268
294
  }
269
295
  );
270
- return new Promise((d) => {
271
- S.validate({ [a]: n }, (r) => {
272
- const M = !!(r != null && r[a]);
273
- u(a, {
274
- status: M ? "error" : "",
275
- message: (r == null ? void 0 : r[a].message) ?? ""
296
+ return new Promise((f) => {
297
+ w.validate({ [t]: n }, (u) => {
298
+ const X = !!(u != null && u[t]);
299
+ !E && d === b && t === s.value && v(t, {
300
+ status: X ? "error" : "",
301
+ message: (u == null ? void 0 : u[t].message) ?? ""
276
302
  });
277
- const le = M ? {
278
- label: t.label,
279
- field: s.value,
280
- value: r[a].value,
281
- type: r[a].type,
282
- isRequiredError: !!r[a].requiredError,
283
- message: r[a].message
303
+ const ge = X ? {
304
+ label: a.label,
305
+ field: t,
306
+ value: u[t].value,
307
+ type: u[t].type,
308
+ isRequiredError: !!u[t].requiredError,
309
+ message: u[t].message
284
310
  } : void 0;
285
- d(le);
311
+ f(ge);
286
312
  });
287
313
  });
288
- }, G = o(
289
- () => [].concat(t.validateTrigger)
290
- ), J = o(
291
- () => G.value.reduce((e, a) => {
292
- switch (a) {
314
+ }, re = i(
315
+ () => [].concat(a.validateTrigger)
316
+ ), ue = i(
317
+ () => re.value.reduce((e, t) => {
318
+ switch (t) {
293
319
  case "change":
294
320
  return e.onChange = () => {
295
- m();
321
+ S();
296
322
  }, e;
297
323
  case "input":
298
324
  return e.onInput = () => {
299
- C(() => {
300
- m();
325
+ q(() => {
326
+ S();
301
327
  });
302
328
  }, e;
303
329
  case "focus":
304
330
  return e.onFocus = () => {
305
- m();
331
+ S();
306
332
  }, e;
307
333
  case "blur":
308
334
  return e.onBlur = () => {
309
- m();
335
+ S();
310
336
  }, e;
311
337
  default:
312
338
  return e;
313
339
  }
314
340
  }, {})
315
341
  );
316
- ae(
317
- E,
318
- g({
319
- eventHandlers: J,
320
- size: l && oe(l, "size"),
321
- disabled: q,
322
- error: v,
323
- feedback: U,
324
- updateValidateState: u
342
+ ye(
343
+ G,
344
+ F({
345
+ eventHandlers: ue,
346
+ size: l && Se(l, "size"),
347
+ disabled: k,
348
+ error: c,
349
+ feedback: ne,
350
+ labelId: I,
351
+ describedBy: ie,
352
+ errorId: i(
353
+ () => a.noStyle ? o == null ? void 0 : o.errorId : c.value && j.value.length ? L : void 0
354
+ ),
355
+ required: _,
356
+ registerControl: te,
357
+ unregisterControl: oe,
358
+ updateValidateState: v
325
359
  })
326
360
  );
327
- const p = () => {
328
- s.value && u(s.value, {
361
+ const h = () => {
362
+ b++, s.value && v(s.value, {
329
363
  status: "",
330
364
  message: ""
331
365
  });
332
- }, Q = (e) => {
333
- u(e, {
366
+ }, de = (e) => {
367
+ v(e, {
334
368
  status: "",
335
369
  message: ""
336
370
  });
337
- }, O = g({
371
+ }, N = F({
338
372
  field: s,
339
- disabled: q,
340
- error: v,
341
- validate: m,
342
- clearValidate: p,
373
+ disabled: k,
374
+ error: c,
375
+ validate: S,
376
+ clearValidate: h,
343
377
  resetField: () => {
344
- p(), c.value = !0, l != null && l.model && s.value && x(l.model, s.value, w(P.value)), C(() => {
345
- c.value = !1;
378
+ h(), g.value = !0, l != null && l.model && s.value && J(l.model, s.value, V(O.value)), q(() => {
379
+ g.value = !1;
346
380
  });
347
381
  },
348
382
  setField: (e) => {
349
- s.value && (c.value = !0, "value" in e && (l != null && l.model) && s.value && x(l.model, s.value, e.value), ("status" in e || "message" in e) && u(s.value, {
383
+ s.value && (b++, g.value = !0, "value" in e && (l != null && l.model) && s.value && J(l.model, s.value, e.value), "status" in e || "message" in e ? v(s.value, {
350
384
  status: e.status ?? "",
351
385
  message: e.message ?? ""
352
- }), C(() => {
353
- c.value = !1;
386
+ }) : P.value === "validating" && h(), q(() => {
387
+ g.value = !1;
354
388
  }));
355
389
  }
356
- }), b = F(!1), V = () => {
390
+ }), p = R(!1), D = () => {
357
391
  var e;
358
- s.value && !b.value && ((e = l.addField) == null || e.call(l, O), b.value = !0);
359
- }, k = () => {
392
+ s.value && !p.value && ((e = l.addField) == null || e.call(l, N), p.value = !0);
393
+ }, K = () => {
360
394
  var e;
361
- b.value && ((e = l.removeField) == null || e.call(l, O), b.value = !1);
395
+ p.value && ((e = l.removeField) == null || e.call(l, N), p.value = !1);
362
396
  };
363
- se(() => {
364
- V();
365
- }), ie(() => {
366
- k();
367
- }), re(s, (e, a) => {
368
- e !== a && (a && Q(a), P.value = w(h(l.model, e)), e ? V() : k());
397
+ he(() => {
398
+ D();
399
+ }), Fe(() => {
400
+ E = !0, h(), K();
401
+ }), pe(s, (e, t) => {
402
+ e !== t && (b++, t && de(t), K(), O.value = V(A(l.model, e)), e && D());
369
403
  });
370
- const Y = o(() => [
371
- i.block,
372
- i.modifier(`layout-${l.layout}`),
404
+ const ce = i(() => [
405
+ r.block,
406
+ r.modifier(`layout-${l.layout}`),
373
407
  {
374
- [i.modifier("error")]: v.value,
375
- [i.modifier(`status-${f.value}`)]: !!f.value
408
+ [r.modifier("error")]: c.value,
409
+ [r.modifier(`status-${m.value}`)]: !!m.value
376
410
  },
377
- t.rowClass
378
- ]), Z = o(() => [
379
- i.element("label-col"),
411
+ a.rowClass
412
+ ]), ve = i(() => [
413
+ r.element("label-col"),
380
414
  {
381
- [i.element("label-col-left")]: l.labelAlign === "left",
382
- [i.element("label-col-flex")]: l.autoLabelWidth || t.labelColFlex
415
+ [r.element("label-col-left")]: l.labelAlign === "left",
416
+ [r.element("label-col-flex")]: l.autoLabelWidth || a.labelColFlex
383
417
  }
384
- ]), ee = o(() => [
385
- i.element("wrapper-col"),
418
+ ]), fe = i(() => [
419
+ r.element("wrapper-col"),
386
420
  {
387
- [i.element("wrapper-col-flex")]: !B.value
421
+ [r.element("wrapper-col-flex")]: !M.value
388
422
  }
389
423
  ]);
390
424
  return {
391
- className: i,
392
- cls: Y,
393
- isRequired: H,
394
- isError: v,
395
- finalMessage: K,
396
- mergedLabelCol: $,
397
- mergedWrapperCol: B,
398
- labelColCls: Z,
399
- autoLabelWidth: T,
400
- layout: _,
401
- mergedLabelStyle: z,
402
- wrapperColCls: ee,
403
- mergedWrapperStyle: D
425
+ className: r,
426
+ cls: ce,
427
+ isRequired: _,
428
+ isError: c,
429
+ finalMessage: j,
430
+ mergedLabelCol: x,
431
+ mergedWrapperCol: M,
432
+ labelColCls: ve,
433
+ autoLabelWidth: Q,
434
+ layout: Y,
435
+ mergedLabelStyle: ee,
436
+ wrapperColCls: fe,
437
+ mergedWrapperStyle: le,
438
+ mergedLabelAttrs: se,
439
+ messageId: L,
440
+ extraId: z
404
441
  };
405
442
  }
406
443
  });
407
444
  export {
408
- Ve as default
445
+ He as default
409
446
  };
@@ -1,37 +1,44 @@
1
- import p from "./form-item-message.vue2.js";
2
- import { openBlock as r, createElementBlock as i, Fragment as c, renderList as d, createBlock as a, Transition as l, withCtx as t, createElementVNode as s, normalizeClass as n, toDisplayString as m, renderSlot as f, createTextVNode as k, createCommentVNode as u } from "vue";
3
- import h from "../../_virtual/_plugin-vue_export-helper.js";
4
- function N(e, $, b, g, y, B) {
5
- return e.error.length > 0 ? (r(!0), i(c, { key: 0 }, d(e.error, (o) => (r(), a(l, {
6
- key: o,
7
- name: "form-blink",
8
- appear: ""
9
- }, {
10
- default: t(() => [
11
- s("div", {
12
- role: "alert",
13
- class: n([e.className.block])
14
- }, m(o), 3)
15
- ]),
16
- _: 2
17
- }, 1024))), 128)) : e.help || e.$slots.help ? (r(), a(l, {
1
+ import m from "./form-item-message.vue2.js";
2
+ import { openBlock as r, createElementBlock as a, Fragment as p, renderList as c, createBlock as l, Transition as s, withCtx as t, createElementVNode as n, normalizeClass as i, toDisplayString as d, renderSlot as f, createTextVNode as h, createCommentVNode as k } from "vue";
3
+ import u from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const N = ["id"], $ = ["id"];
5
+ function b(e, g, y, v, B, C) {
6
+ return e.error.length > 0 ? (r(), a("div", {
7
+ key: 0,
8
+ id: e.id
9
+ }, [
10
+ (r(!0), a(p, null, c(e.error, (o) => (r(), l(s, {
11
+ key: o,
12
+ name: "form-blink",
13
+ appear: ""
14
+ }, {
15
+ default: t(() => [
16
+ n("div", {
17
+ role: "alert",
18
+ class: i([e.className.block])
19
+ }, d(o), 3)
20
+ ]),
21
+ _: 2
22
+ }, 1024))), 128))
23
+ ], 8, N)) : e.help || e.$slots.help ? (r(), l(s, {
18
24
  key: 1,
19
25
  name: "form-blink",
20
26
  appear: ""
21
27
  }, {
22
28
  default: t(() => [
23
- s("div", {
24
- class: n([e.className.block, e.className.modifier("help")])
29
+ n("div", {
30
+ id: e.id,
31
+ class: i([e.className.block, e.className.modifier("help")])
25
32
  }, [
26
33
  f(e.$slots, "help", {}, () => [
27
- k(m(e.help), 1)
34
+ h(d(e.help), 1)
28
35
  ])
29
- ], 2)
36
+ ], 10, $)
30
37
  ]),
31
38
  _: 3
32
- })) : u("", !0);
39
+ })) : k("", !0);
33
40
  }
34
- const E = /* @__PURE__ */ h(p, [["render", N]]);
41
+ const F = /* @__PURE__ */ u(m, [["render", b]]);
35
42
  export {
36
- E as default
43
+ F as default
37
44
  };
@@ -1,8 +1,10 @@
1
1
  import { defineComponent as e } from "vue";
2
2
  import { getClassNameMixin as r } from "../../_utils/config.js";
3
- const a = e({
3
+ const m = e({
4
4
  name: "FormItemMessage",
5
+ inheritAttrs: !1,
5
6
  props: {
7
+ id: String,
6
8
  error: {
7
9
  type: Array,
8
10
  default: () => []
@@ -16,5 +18,5 @@ const a = e({
16
18
  }
17
19
  });
18
20
  export {
19
- a as default
21
+ m as default
20
22
  };