@silver-formily/element-plus 2.3.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/esm/__builtins__/index.mjs +20 -19
  2. package/esm/__builtins__/shared/index.mjs +11 -10
  3. package/esm/__builtins__/shared/transform-component.d.ts +1 -1
  4. package/esm/__builtins__/shared/utils.d.ts +1 -0
  5. package/esm/__builtins__/shared/utils.mjs +22 -18
  6. package/esm/__builtins__/shared/utils.mjs.map +1 -1
  7. package/esm/array-base/index.mjs +27 -27
  8. package/esm/array-base/index.mjs.map +1 -1
  9. package/esm/array-base/symbols.mjs +1 -1
  10. package/esm/array-base/symbols.mjs.map +1 -1
  11. package/esm/array-base/utils.d.ts +0 -1
  12. package/esm/array-base/utils.mjs +27 -35
  13. package/esm/array-base/utils.mjs.map +1 -1
  14. package/esm/array-cards/index.mjs +1 -1
  15. package/esm/array-cards/index.mjs.map +1 -1
  16. package/esm/array-collapse/index.mjs +2 -5
  17. package/esm/array-collapse/index.mjs.map +1 -1
  18. package/esm/array-items/index.mjs +1 -1
  19. package/esm/array-list-tabs/index.mjs +9 -9
  20. package/esm/array-table/index.mjs +7 -9
  21. package/esm/array-table/index.mjs.map +1 -1
  22. package/esm/array-tabs/index.mjs +1 -2
  23. package/esm/array-tabs/index.mjs.map +1 -1
  24. package/esm/autocomplete/autocomplete.d.ts +16 -16
  25. package/esm/autocomplete/index.d.ts +8 -8
  26. package/esm/autocomplete/index.mjs +2 -2
  27. package/esm/autocomplete/index.mjs.map +1 -1
  28. package/esm/cascader/index.mjs +2 -2
  29. package/esm/checkbox/index.d.ts +27 -27
  30. package/esm/checkbox/index.mjs +7 -12
  31. package/esm/checkbox/index.mjs.map +1 -1
  32. package/esm/editable/editable.d.ts +14 -12
  33. package/esm/editable/index.d.ts +7 -6
  34. package/esm/editable/index.mjs +57 -61
  35. package/esm/editable/index.mjs.map +1 -1
  36. package/esm/env.d.d.ts +1 -0
  37. package/esm/form/form.mjs +5 -5
  38. package/esm/form-button-group/form-button-group.d.ts +9 -0
  39. package/esm/form-button-group/index.d.ts +15 -0
  40. package/esm/form-button-group/index.mjs +33 -25
  41. package/esm/form-button-group/index.mjs.map +1 -1
  42. package/esm/form-collapse/index.mjs +1 -1
  43. package/esm/form-collapse/utils.mjs +0 -2
  44. package/esm/form-collapse/utils.mjs.map +1 -1
  45. package/esm/form-dialog/index.mjs +63 -70
  46. package/esm/form-dialog/index.mjs.map +1 -1
  47. package/esm/form-drawer/index.mjs +62 -69
  48. package/esm/form-drawer/index.mjs.map +1 -1
  49. package/esm/form-grid/form-grid.d.ts +2 -2
  50. package/esm/form-grid/hooks.d.ts +1 -2
  51. package/esm/form-grid/hooks.mjs +4 -11
  52. package/esm/form-grid/hooks.mjs.map +1 -1
  53. package/esm/form-grid/index.mjs +38 -35
  54. package/esm/form-grid/index.mjs.map +1 -1
  55. package/esm/form-item/index.d.ts +1 -0
  56. package/esm/form-item/index.mjs +102 -107
  57. package/esm/form-item/index.mjs.map +1 -1
  58. package/esm/form-item/types.d.ts +12 -6
  59. package/esm/form-layout/form-layout.mjs +2 -2
  60. package/esm/form-layout/utils.mjs +24 -24
  61. package/esm/form-layout/utils.mjs.map +1 -1
  62. package/esm/form-step/index.mjs +2 -2
  63. package/esm/form-step/utils.mjs +0 -3
  64. package/esm/form-step/utils.mjs.map +1 -1
  65. package/esm/form-tab/hooks.d.ts +2 -1
  66. package/esm/form-tab/hooks.mjs +13 -20
  67. package/esm/form-tab/hooks.mjs.map +1 -1
  68. package/esm/form-tab/index.mjs +38 -39
  69. package/esm/form-tab/index.mjs.map +1 -1
  70. package/esm/index.d.ts +2 -0
  71. package/esm/index.mjs +62 -58
  72. package/esm/index.mjs.map +1 -1
  73. package/esm/input/index.mjs +2 -2
  74. package/esm/input-number/index.d.ts +15 -15
  75. package/esm/input-tag/index.mjs +2 -2
  76. package/esm/mention/index.mjs +2 -2
  77. package/esm/pagination/pagination.mjs +1 -1
  78. package/esm/pagination/pagination.mjs.map +1 -1
  79. package/esm/preview-text/index.mjs +33 -42
  80. package/esm/preview-text/index.mjs.map +1 -1
  81. package/esm/preview-text/utils.mjs +1 -1
  82. package/esm/preview-text/utils.mjs.map +1 -1
  83. package/esm/query-form/default-components.d.ts +5 -0
  84. package/esm/query-form/default-components.mjs +47 -0
  85. package/esm/query-form/default-components.mjs.map +1 -0
  86. package/esm/query-form/hooks.d.ts +25 -0
  87. package/esm/query-form/hooks.mjs +29 -0
  88. package/esm/query-form/hooks.mjs.map +1 -0
  89. package/esm/query-form/index.d.ts +117 -0
  90. package/esm/query-form/index.mjs +331 -0
  91. package/esm/query-form/index.mjs.map +1 -0
  92. package/esm/query-form/query-form-light.d.ts +27 -0
  93. package/esm/query-form/query-form.d.ts +52 -0
  94. package/esm/query-form/types.d.ts +44 -0
  95. package/esm/query-form/types.mjs +2 -0
  96. package/esm/query-form/types.mjs.map +1 -0
  97. package/esm/query-form-item/index.d.ts +151 -0
  98. package/esm/query-form-item/index.mjs +181 -0
  99. package/esm/query-form-item/index.mjs.map +1 -0
  100. package/esm/query-form-item/query-form-item.d.ts +96 -0
  101. package/esm/query-form-item/types.d.ts +46 -0
  102. package/esm/query-form-item/types.mjs +2 -0
  103. package/esm/query-form-item/types.mjs.map +1 -0
  104. package/esm/radio/index.d.ts +18 -18
  105. package/esm/radio/index.mjs +7 -12
  106. package/esm/radio/index.mjs.map +1 -1
  107. package/esm/reset/index.mjs +2 -2
  108. package/esm/segmented/index.mjs +2 -2
  109. package/esm/select/index.d.ts +16 -16
  110. package/esm/select/index.mjs +1 -1
  111. package/esm/select-table/index.d.ts +6 -6
  112. package/esm/select-table/index.mjs +22 -24
  113. package/esm/select-table/index.mjs.map +1 -1
  114. package/esm/select-table/select-table.d.ts +2 -2
  115. package/esm/shared/overlay-elements.mjs +14 -11
  116. package/esm/shared/overlay-elements.mjs.map +1 -1
  117. package/esm/styles/form-button-group/index.css +1 -1
  118. package/esm/styles/form-grid/index.css +1 -1
  119. package/esm/styles/form-item/index.css +1 -1
  120. package/esm/styles/query-form/index.css +1 -0
  121. package/esm/styles/query-form-item/index.css +1 -0
  122. package/esm/submit/index.mjs +3 -3
  123. package/esm/submit/index.mjs.map +1 -1
  124. package/esm/switch/index.d.ts +9 -9
  125. package/esm/time-select/index.d.ts +12 -12
  126. package/esm/transfer/index.d.ts +12 -12
  127. package/esm/tree/index.mjs +3 -3
  128. package/esm/tree/utils.mjs +0 -2
  129. package/esm/tree/utils.mjs.map +1 -1
  130. package/esm/tree-select/index.mjs +2 -2
  131. package/esm/upload/index.d.ts +12 -12
  132. package/esm/upload/index.mjs +3 -3
  133. package/esm/upload/upload.d.ts +24 -24
  134. package/esm/vendor/icon.mjs.map +1 -1
  135. package/esm/vendor/lodash.mjs +777 -663
  136. package/esm/vendor/lodash.mjs.map +1 -1
  137. package/esm/vendor/runtime.mjs +23 -29
  138. package/esm/vendor/runtime.mjs.map +1 -1
  139. package/esm/vendor/shared.esm-bundler.mjs +2 -7
  140. package/esm/vendor/shared.esm-bundler.mjs.map +1 -1
  141. package/esm/vendor/sizes.mjs.map +1 -1
  142. package/esm/vendor/types.mjs +5 -5
  143. package/esm/vendor/types.mjs.map +1 -1
  144. package/package.json +89 -115
  145. package/LICENSE +0 -21
@@ -1,30 +1,31 @@
1
- import { isVoidField as de } from "@formily/core";
2
- import { useField as ce, connect as fe, mapProps as ve } from "@silver-formily/vue";
3
- import { defineComponent as pe, useSlots as me, computed as i, ref as b, reactive as be, watch as ye, provide as D, createElementBlock as n, openBlock as a, unref as l, normalizeClass as u, createBlock as f, createCommentVNode as c, createElementVNode as h, resolveDynamicComponent as g, normalizeStyle as W, withCtx as m, isVNode as x, createVNode as _, toDisplayString as y, Fragment as C, createTextVNode as R, renderSlot as G, TransitionGroup as ke } from "vue";
4
- import { InfoFilled as ge, CircleClose as Se, CircleCheck as he, Warning as xe } from "@element-plus/icons-vue";
5
- import { isValid as v, isArr as _e } from "@formily/shared";
6
- import { useResizeObserver as Ce } from "@vueuse/core";
7
- import { useNamespace as Ie, useFormSize as $e, useId as we, formItemContextKey as We, ElTooltip as E, ElIcon as K } from "element-plus";
8
- import { FORM_LAYOUT_PROPS_KEYS as Fe, useFormLayout as Ae, formLayoutShallowContext as Le } from "../form-layout/utils.mjs";
9
- import { p as ze } from "../vendor/lodash.mjs";
10
- import { i as Be, a as Te, d as Re } from "../vendor/types.mjs";
11
- import { i as Ee } from "../vendor/shared.esm-bundler.mjs";
12
- import { stylePrefix as Ve } from "../__builtins__/configs/index.mjs";
13
- import { getFeedbackMessage as Pe, determineFeedbackStatus as Ne } from "./utils.mjs";
14
- import { composeExport as Oe } from "../__builtins__/shared/utils.mjs";
15
- import '../styles/form-item/index.css';const qe = "utils/dom/style";
16
- function U(s, p = "px") {
17
- if (!s && s !== 0) return "";
18
- if (Be(s) || Te(s))
19
- return `${s}${p}`;
20
- if (Ee(s))
21
- return s;
22
- Re(qe, "binding value must be a string or number");
1
+ import { isVoidField as ce } from "@formily/core";
2
+ import { useField as fe, connect as ve, mapProps as pe } from "@silver-formily/vue";
3
+ import { defineComponent as me, useSlots as be, computed as s, ref as b, reactive as ye, watch as ke, provide as D, openBlock as a, createElementBlock as n, unref as l, normalizeClass as u, createBlock as f, resolveDynamicComponent as g, normalizeStyle as F, withCtx as m, isVNode as h, createVNode as x, createElementVNode as C, toDisplayString as y, Fragment as I, createTextVNode as R, createCommentVNode as c, renderSlot as G, TransitionGroup as ge } from "vue";
4
+ import { InfoFilled as Se, CircleClose as he, CircleCheck as xe, Warning as Ce } from "@element-plus/icons-vue";
5
+ import { isValid as v, isArr as Ie } from "@formily/shared";
6
+ import { useResizeObserver as _e } from "@vueuse/core";
7
+ import { useNamespace as $e, useFormSize as we, useId as Fe, formItemContextKey as We, ElTooltip as E, ElIcon as K } from "element-plus";
8
+ import { FORM_LAYOUT_PROPS_KEYS as Ae, useFormLayout as Le, formLayoutShallowContext as ze } from "../form-layout/utils.mjs";
9
+ import { p as Be } from "../vendor/lodash.mjs";
10
+ import { i as Te, a as Re, d as Ee } from "../vendor/types.mjs";
11
+ import { a as Ve } from "../vendor/shared.esm-bundler.mjs";
12
+ import { stylePrefix as Pe } from "../__builtins__/configs/index.mjs";
13
+ import { getFeedbackMessage as Ne, determineFeedbackStatus as Oe } from "./utils.mjs";
14
+ import { composeExport as qe } from "../__builtins__/shared/utils.mjs";
15
+ import '../styles/form-item/index.css';const Me = "utils/dom/style";
16
+ function U(i, p = "px") {
17
+ if (!i && i !== 0) return "";
18
+ if (Te(i) || Re(i))
19
+ return `${i}${p}`;
20
+ if (Ve(i))
21
+ return i;
22
+ Ee(Me, "binding value must be a string or number");
23
23
  }
24
- const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
24
+ const je = ["role", "aria-labelledby"], Y = /* @__PURE__ */ me({
25
25
  name: "FFormItem",
26
26
  __name: "form-item",
27
27
  props: {
28
+ internalFormItemClass: {},
28
29
  label: {},
29
30
  for: {},
30
31
  tooltip: {},
@@ -48,96 +49,90 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
48
49
  feedbackLayout: {},
49
50
  tooltipLayout: {}
50
51
  },
51
- setup(s, { expose: p }) {
52
- const e = s, F = me(), o = Ie("form-item"), d = `${Ve}-form-item`, H = i(
52
+ setup(i, { expose: p }) {
53
+ const e = i, W = be(), o = $e("form-item"), d = `${Pe}-form-item`, H = s(() => e.internalFormItemClass || o.b()), J = s(
53
54
  () => Object.fromEntries(
54
- Object.entries(ze(e, Fe)).filter(([r, w]) => v(w))
55
+ Object.entries(Be(e, Ae)).filter(([r, w]) => v(w))
55
56
  )
56
- ), J = Ae(), t = i(() => Object.assign({
57
+ ), Q = Le(), t = s(() => Object.assign({
57
58
  colon: !0,
58
59
  feedbackLayout: "loose",
59
60
  fullness: !1,
60
61
  labelWrap: !1
61
- }, J.value, H.value)), V = ce(), Q = $e(void 0, { formItem: !1 }), P = i(() => v(t.value.size) ? t.value.size : Q.value), A = we().value, k = b([]), N = b(""), O = b(), S = b(), q = b();
62
+ }, Q.value, J.value)), V = fe(), X = we(void 0, { formItem: !1 }), P = s(() => v(t.value.size) ? t.value.size : X.value), A = Fe().value, k = b([]), N = b(""), O = b(), S = b(), q = b();
62
63
  p({
63
64
  feedbackTooltipRef: q
64
65
  });
65
- const I = i(
66
- () => t.value.layout === "vertical" || _e(t.value.layout) && t.value.layout.includes("vertical") ? "top" : t.value.labelAlign ?? "right"
67
- ), X = i(() => {
68
- if (I.value === "top")
66
+ const _ = s(
67
+ () => t.value.layout === "vertical" || Ie(t.value.layout) && t.value.layout.includes("vertical") ? "top" : t.value.labelAlign ?? "right"
68
+ ), Z = s(() => {
69
+ if (_.value === "top")
69
70
  return {};
70
71
  const r = U(t.value.labelWidth || "");
71
72
  return r ? { width: r } : {};
72
- }), Z = i(() => {
73
+ }), ee = s(() => {
73
74
  const r = U(t.value?.wrapperWidth || "");
74
75
  return r ? { width: r, flex: "unset" } : {};
75
- }), ee = i(() => ({
76
+ }), te = s(() => ({
76
77
  justifyContent: t.value?.wrapperAlign === "right" && "flex-end"
77
- })), te = i(
78
+ })), ae = s(
78
79
  () => e.asterisk && V.value?.pattern !== "readPretty"
79
- ), ae = i(() => [
80
- o.b(),
80
+ ), le = s(() => [
81
+ H.value,
81
82
  o.m(P.value || "default"),
82
83
  o.is(e.feedbackStatus),
83
84
  o.is("validating", N.value === "validating"),
84
85
  o.is("success", N.value === "success"),
85
- o.is("required", te.value || e.asterisk),
86
+ o.is("required", ae.value || e.asterisk),
86
87
  o.is("no-asterisk", t.value?.hideRequiredAsterisk),
87
88
  o.is(t.value.feedbackLayout),
88
89
  t.value?.requireAsteriskPosition === "right" ? "asterisk-right" : "asterisk-left",
89
90
  {
90
91
  [o.m("feedback")]: t.value?.statusIcon,
91
- [o.m(`label-${I.value}`)]: I.value
92
+ [o.m(`label-${_.value}`)]: _.value
92
93
  }
93
- ]), M = i(() => [
94
+ ]), M = s(() => [
94
95
  `${d}-feedback`,
95
96
  o.is(e.feedbackStatus),
96
97
  o.is("loose", t.value.feedbackLayout === "loose")
97
- ]), L = i(() => e.label !== "" && v(e.label) || v(F.label)), z = i(() => e.for || (k.value.length === 1 ? k.value[0] : void 0)), B = i(() => !z.value && L.value);
98
- async function le() {
98
+ ]), L = s(() => e.label !== "" && v(e.label) || v(W.label)), z = s(() => e.for || (k.value.length === 1 ? k.value[0] : void 0)), B = s(() => !z.value && L.value);
99
+ async function oe() {
99
100
  return !0;
100
101
  }
101
- /* istanbul ignore next -- @preserve */
102
- const oe = () => {
103
- };
104
- /* istanbul ignore next -- @preserve */
105
- const re = async () => {
106
- };
107
- /* istanbul ignore next -- @preserve */
108
- const se = () => {
109
- }, ie = (r) => {
110
- /* istanbul ignore else -- @preserve */
111
- k.value.includes(r) || k.value.push(r);
102
+ const re = () => {
103
+ }, se = async () => {
104
+ }, ie = () => {
112
105
  }, ne = (r) => {
106
+ k.value.includes(r) || k.value.push(r);
107
+ }, ue = (r) => {
113
108
  k.value = k.value.filter((w) => w !== r);
114
109
  }, j = b(!1);
115
- Ce(S, () => {
110
+ _e(S, () => {
116
111
  j.value = S.value?.scrollWidth > S.value?.clientWidth;
117
112
  });
118
- const T = i(() => j.value && !t.value.labelWrap), ue = b(""), $ = be({
113
+ const T = s(() => j.value && !t.value.labelWrap), de = b(""), $ = ye({
119
114
  $el: O,
120
115
  labelWidth: t.value?.labelWidth,
121
116
  size: P,
122
- validateState: ue.value,
117
+ validateState: de.value,
123
118
  labelId: A,
124
119
  inputIds: k,
125
120
  isGroup: B,
126
121
  hasLabel: L,
127
- addInputId: ie,
128
- removeInputId: ne,
129
- resetField: re,
130
- clearValidate: oe,
131
- validate: le,
132
- labelPosition: I,
122
+ addInputId: ne,
123
+ removeInputId: ue,
124
+ resetField: se,
125
+ clearValidate: re,
126
+ validate: oe,
127
+ labelPosition: _,
133
128
  inlineMessage: !0,
134
129
  showMessage: !0,
135
130
  fieldValue: V.value?.value,
136
131
  validateMessage: "",
137
132
  propString: "",
138
- setInitialValue: se
133
+ setInitialValue: ie
139
134
  });
140
- return ye(() => e.feedbackStatus, (r) => {
135
+ return ke(() => e.feedbackStatus, (r) => {
141
136
  if (r === "pending") {
142
137
  $.validateState = "validating";
143
138
  return;
@@ -149,13 +144,13 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
149
144
  $.validateState = r;
150
145
  }, {
151
146
  immediate: !0
152
- }), D(Le, b({
147
+ }), D(ze, b({
153
148
  ...v(t.value.size) && { size: t.value.size },
154
149
  ...v(t.value.colon) && { colon: t.value.colon }
155
150
  })), D(We, $), (r, w) => (a(), n("div", {
156
151
  ref_key: "formItemRef",
157
152
  ref: O,
158
- class: u([d, t.value.labelWrap && "is-warp", ...ae.value]),
153
+ class: u([d, t.value.labelWrap && "is-warp", ...le.value]),
159
154
  role: B.value ? "group" : void 0,
160
155
  "aria-labelledby": B.value ? l(A) : void 0
161
156
  }, [
@@ -164,37 +159,37 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
164
159
  id: l(A),
165
160
  for: z.value,
166
161
  class: u([l(o).e("label"), l(v)(t.value.labelCol) && `${d}-col-${t.value.labelCol}`]),
167
- style: W(X.value)
162
+ style: F(Z.value)
168
163
  }, {
169
164
  default: m(() => [
170
- x(e.label) ? (a(), f(g(e.label), { key: 0 })) : (a(), n("div", {
165
+ h(e.label) ? (a(), f(g(e.label), { key: 0 })) : (a(), n("div", {
171
166
  key: 1,
172
167
  class: u(`${d}-label__wrapper`)
173
168
  }, [
174
- _(l(E), {
169
+ x(l(E), {
175
170
  disabled: !T.value && t.value.tooltipLayout !== "text"
176
171
  }, {
177
172
  content: m(() => [
178
- x(e.tooltip) ? (a(), f(g(e.tooltip), { key: 0 })) : (a(), n("div", {
173
+ h(e.tooltip) ? (a(), f(g(e.tooltip), { key: 0 })) : (a(), n("div", {
179
174
  key: 1,
180
- style: W(`width: ${S.value?.clientWidth ?? 0}px;`)
175
+ style: F(`width: ${S.value?.clientWidth ?? 0}px;`)
181
176
  }, [
182
- T.value ? (a(), n(C, { key: 0 }, [
177
+ T.value ? (a(), n(I, { key: 0 }, [
183
178
  R(y(e.label), 1)
184
179
  ], 64)) : c("", !0),
185
- t.value.tooltipLayout === "text" ? (a(), n(C, { key: 1 }, [
180
+ t.value.tooltipLayout === "text" ? (a(), n(I, { key: 1 }, [
186
181
  R(y(e.tooltip), 1)
187
182
  ], 64)) : c("", !0)
188
183
  ], 4))
189
184
  ]),
190
185
  default: m(() => [
191
- h("span", {
186
+ C("span", {
192
187
  class: u({
193
188
  [`${d}-label-content`]: !0,
194
189
  "is-tooltip": T.value || e.tooltip && t.value.tooltipLayout === "text"
195
190
  })
196
191
  }, [
197
- h("span", {
192
+ C("span", {
198
193
  ref_key: "labelRef",
199
194
  ref: S
200
195
  }, y(e.label), 513)
@@ -207,11 +202,11 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
207
202
  content: e.tooltip
208
203
  }, {
209
204
  default: m(() => [
210
- _(l(K), {
205
+ x(l(K), {
211
206
  class: u(`${d}-label-tooltip`)
212
207
  }, {
213
208
  default: m(() => [
214
- _(l(ge))
209
+ x(l(Se))
215
210
  ]),
216
211
  _: 1
217
212
  }, 8, ["class"])
@@ -226,26 +221,26 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
226
221
  ]),
227
222
  _: 1
228
223
  }, 8, ["id", "for", "class", "style"])) : c("", !0),
229
- h("div", {
224
+ C("div", {
230
225
  class: u([
231
226
  `${d}-content__wrapper`,
232
227
  l(v)(t.value.wrapperCol) && `${d}-col-${t.value.wrapperCol}`
233
228
  ]),
234
- style: W(ee.value)
229
+ style: F(te.value)
235
230
  }, [
236
- l(v)(e.addonBefore) ? (a(), n(C, { key: 0 }, [
237
- x(e.addonBefore) ? (a(), f(g(e.addonBefore), { key: 0 })) : (a(), n("div", {
231
+ l(v)(e.addonBefore) ? (a(), n(I, { key: 0 }, [
232
+ h(e.addonBefore) ? (a(), f(g(e.addonBefore), { key: 0 })) : (a(), n("div", {
238
233
  key: 1,
239
234
  class: u(`${d}-addon-before`)
240
235
  }, y(e.addonBefore), 3))
241
236
  ], 64)) : c("", !0),
242
- h("div", {
237
+ C("div", {
243
238
  class: u([
244
239
  l(o).e("content"),
245
240
  t.value.fullness && "is-fullness",
246
241
  l(o).is("addon-after", !!e.addonAfter)
247
242
  ]),
248
- style: W(Z.value)
243
+ style: F(ee.value)
249
244
  }, [
250
245
  t.value.feedbackLayout === "popover" ? (a(), f(l(E), {
251
246
  key: 0,
@@ -259,14 +254,14 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
259
254
  G(r.$slots, "default")
260
255
  ]),
261
256
  content: m(() => [
262
- h("div", {
257
+ C("div", {
263
258
  class: u([...M.value, l(o).is("tooltip")])
264
259
  }, [
265
- _(l(K), null, {
260
+ x(l(K), null, {
266
261
  default: m(() => [
267
- e.feedbackStatus === "error" ? (a(), f(l(Se), { key: 0 })) : c("", !0),
268
- e.feedbackStatus === "success" ? (a(), f(l(he), { key: 1 })) : c("", !0),
269
- e.feedbackStatus === "warning" ? (a(), f(l(xe), { key: 2 })) : c("", !0)
262
+ e.feedbackStatus === "error" ? (a(), f(l(he), { key: 0 })) : c("", !0),
263
+ e.feedbackStatus === "success" ? (a(), f(l(xe), { key: 1 })) : c("", !0),
264
+ e.feedbackStatus === "warning" ? (a(), f(l(Ce), { key: 2 })) : c("", !0)
270
265
  ]),
271
266
  _: 1
272
267
  }),
@@ -275,7 +270,7 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
275
270
  ]),
276
271
  _: 3
277
272
  }, 8, ["visible"])) : G(r.$slots, "default", { key: 1 }),
278
- _(ke, {
273
+ x(ge, {
279
274
  name: `${l(o).namespace.value}-zoom-in-top`
280
275
  }, {
281
276
  default: m(() => [
@@ -283,8 +278,8 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
283
278
  key: 0,
284
279
  class: u(M.value)
285
280
  }, y(e.feedbackText), 3)) : c("", !0),
286
- l(v)(e.extra) ? (a(), n(C, { key: 1 }, [
287
- x(e.extra) ? (a(), f(g(e.extra), { key: 0 })) : (a(), n("div", {
281
+ l(v)(e.extra) ? (a(), n(I, { key: 1 }, [
282
+ h(e.extra) ? (a(), f(g(e.extra), { key: 0 })) : (a(), n("div", {
288
283
  key: 1,
289
284
  class: u(`${d}-extra`)
290
285
  }, y(e.extra), 3))
@@ -293,45 +288,45 @@ const Me = ["role", "aria-labelledby"], Y = /* @__PURE__ */ pe({
293
288
  _: 1
294
289
  }, 8, ["name"])
295
290
  ], 6),
296
- l(v)(e.addonAfter) ? (a(), n(C, { key: 1 }, [
297
- x(e.addonAfter) ? (a(), f(g(e.addonAfter), { key: 0 })) : (a(), n("div", {
291
+ l(v)(e.addonAfter) ? (a(), n(I, { key: 1 }, [
292
+ h(e.addonAfter) ? (a(), f(g(e.addonAfter), { key: 0 })) : (a(), n("div", {
298
293
  key: 1,
299
294
  class: u(`${d}-addon-after`)
300
295
  }, y(e.addonAfter), 3))
301
296
  ], 64)) : c("", !0)
302
297
  ], 6)
303
- ], 10, Me));
298
+ ], 10, je));
304
299
  }
305
300
  });
306
- function je(s, p) {
307
- if (de(p) || !p)
308
- return s;
309
- const e = Pe(p), F = Ne(p), o = "asterisk" in s ? s.asterisk : p.required && p.pattern !== "readPretty";
301
+ function De(i, p) {
302
+ if (ce(p) || !p)
303
+ return i;
304
+ const e = Ne(p), W = Oe(p), o = "asterisk" in i ? i.asterisk : p.required && p.pattern !== "readPretty";
310
305
  return {
311
- ...s,
306
+ ...i,
312
307
  feedbackText: e,
313
- feedbackStatus: F,
308
+ feedbackStatus: W,
314
309
  asterisk: o
315
310
  };
316
311
  }
317
- const De = fe(
312
+ const Ge = ve(
318
313
  Y,
319
- ve(
314
+ pe(
320
315
  {
321
316
  validateStatus: !0,
322
317
  title: "label",
323
318
  required: !0,
324
319
  description: "extra"
325
320
  },
326
- je
321
+ De
327
322
  )
328
- ), rt = Oe(De, {
323
+ ), st = qe(Ge, {
329
324
  BaseItem: Y
330
325
  });
331
326
  export {
332
327
  Y as FormBaseItem,
333
- rt as FormItem,
334
- rt as default,
335
- je as fieldFeedbackMapper
328
+ st as FormItem,
329
+ st as default,
330
+ De as fieldFeedbackMapper
336
331
  };
337
332
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../node_modules/.pnpm/element-plus@2.13.2_vue@3.5.22_typescript@5.9.3_/node_modules/element-plus/es/utils/dom/style.mjs","../../src/form-item/form-item.vue","../../src/form-item/index.ts"],"sourcesContent":["import { isNumber, isStringNumber } from '../types.mjs';\nimport { isClient } from '@vueuse/core';\nimport { isString, camelize, isObject } from '@vue/shared';\nimport { entriesOf, keysOf } from '../objects.mjs';\nimport { debugWarn } from '../error.mjs';\n\nconst SCOPE = \"utils/dom/style\";\nconst classNameToArray = (cls = \"\") => cls.split(\" \").filter((item) => !!item.trim());\nconst hasClass = (el, cls) => {\n if (!el || !cls) return false;\n if (cls.includes(\" \")) throw new Error(\"className should not contain space.\");\n return el.classList.contains(cls);\n};\nconst addClass = (el, cls) => {\n if (!el || !cls.trim()) return;\n el.classList.add(...classNameToArray(cls));\n};\nconst removeClass = (el, cls) => {\n if (!el || !cls.trim()) return;\n el.classList.remove(...classNameToArray(cls));\n};\nconst getStyle = (element, styleName) => {\n var _a;\n if (!isClient || !element || !styleName) return \"\";\n let key = camelize(styleName);\n if (key === \"float\") key = \"cssFloat\";\n try {\n const style = element.style[key];\n if (style) return style;\n const computed = (_a = document.defaultView) == null ? void 0 : _a.getComputedStyle(element, \"\");\n return computed ? computed[key] : \"\";\n } catch (e) {\n return element.style[key];\n }\n};\nconst setStyle = (element, styleName, value) => {\n if (!element || !styleName) return;\n if (isObject(styleName)) {\n entriesOf(styleName).forEach(\n ([prop, value2]) => setStyle(element, prop, value2)\n );\n } else {\n const key = camelize(styleName);\n element.style[key] = value;\n }\n};\nconst removeStyle = (element, style) => {\n if (!element || !style) return;\n if (isObject(style)) {\n keysOf(style).forEach((prop) => removeStyle(element, prop));\n } else {\n setStyle(element, style, \"\");\n }\n};\nfunction addUnit(value, defaultUnit = \"px\") {\n if (!value && value !== 0) return \"\";\n if (isNumber(value) || isStringNumber(value)) {\n return `${value}${defaultUnit}`;\n } else if (isString(value)) {\n return value;\n }\n debugWarn(SCOPE, \"binding value must be a string or number\");\n}\n\nexport { addClass, addUnit, classNameToArray, getStyle, hasClass, removeClass, removeStyle, setStyle };\n//# sourceMappingURL=style.mjs.map\n","<script lang=\"ts\" setup>\r\nimport type { Field } from '@formily/core'\r\nimport type {\r\n FormItemContext,\r\n FormItemValidateState,\r\n FormValidationResult,\r\n TooltipInstance,\r\n} from 'element-plus'\r\nimport type { ICalculatedFormLayoutProps } from 'src/form-layout/types'\r\nimport type { CSSProperties } from 'vue'\r\nimport type { IFormItemProps } from './types'\r\nimport { CircleCheck, CircleClose, InfoFilled, Warning } from '@element-plus/icons-vue'\r\nimport { isArr, isValid } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { useResizeObserver } from '@vueuse/core'\r\nimport { ElIcon, ElTooltip, formItemContextKey, useFormSize, useId, useNamespace } from 'element-plus'\r\nimport { addUnit } from 'element-plus/es/utils/index'\r\nimport { pick } from 'lodash-es'\r\nimport { computed, isVNode, provide, reactive, ref, useSlots, watch } from 'vue'\r\nimport { stylePrefix } from '../__builtins__'\r\nimport { FORM_LAYOUT_PROPS_KEYS, formLayoutShallowContext, useFormLayout } from '../form-layout/utils'\r\n\r\ndefineOptions({\r\n name: 'FFormItem',\r\n})\r\nconst props = withDefaults(defineProps<IFormItemProps>(), {\r\n asterisk: undefined,\r\n colon: undefined,\r\n labelWrap: undefined,\r\n fullness: undefined,\r\n})\r\nconst slots = useSlots()\r\nconst ns = useNamespace('form-item')\r\nconst prefixCls = `${stylePrefix}-form-item`\r\nconst formItemConfig = computed<Partial<ICalculatedFormLayoutProps>>(() =>\r\n Object.fromEntries(\r\n Object.entries(pick(props, FORM_LAYOUT_PROPS_KEYS))\r\n .filter(([_, value]) => isValid(value)),\r\n ),\r\n)\r\nconst formlayoutConfig = useFormLayout()\r\nconst formlayout = computed(() => Object.assign({\r\n colon: true,\r\n feedbackLayout: 'loose',\r\n fullness: false,\r\n labelWrap: false,\r\n}, formlayoutConfig.value, formItemConfig.value))\r\nconst field = useField<Field>()\r\n\r\nconst inheritedSize = useFormSize(undefined, { formItem: false })\r\nconst formItemSize = computed(() => {\r\n if (isValid(formlayout.value.size)) {\r\n return formlayout.value.size\r\n }\r\n return inheritedSize.value\r\n})\r\n\r\nconst labelId = useId().value\r\nconst inputIds = ref<string[]>([])\r\n\r\nconst validateState = ref<FormItemValidateState>('')\r\nconst formItemRef = ref<HTMLDivElement>()\r\nconst labelRef = ref<HTMLElement>()\r\nconst feedbackTooltipRef = ref<TooltipInstance>()\r\ndefineExpose({\r\n feedbackTooltipRef,\r\n})\r\n\r\nconst labelPosition = computed(\r\n () => {\r\n if (formlayout.value.layout === 'vertical' || (isArr(formlayout.value.layout) && formlayout.value.layout.includes('vertical' as any))) {\r\n return 'top'\r\n }\r\n return formlayout.value.labelAlign ?? 'right'\r\n },\r\n)\r\n\r\nconst labelStyle = computed<CSSProperties>(() => {\r\n if (labelPosition.value === 'top') {\r\n return {}\r\n }\r\n\r\n const labelWidth = addUnit(formlayout.value.labelWidth || '')\r\n if (labelWidth)\r\n return { width: labelWidth }\r\n return {}\r\n})\r\n\r\nconst contentStyle = computed<CSSProperties>(() => {\r\n const contentWidth = addUnit(formlayout.value?.wrapperWidth || '')\r\n if (contentWidth)\r\n return { width: contentWidth, flex: 'unset' }\r\n return {}\r\n})\r\n\r\nconst contentWrapperStyle = computed<CSSProperties>(() => {\r\n return {\r\n justifyContent: formlayout.value?.wrapperAlign === 'right' && 'flex-end',\r\n }\r\n})\r\n\r\nconst isRequired = computed(() =>\r\n props.asterisk && field.value?.pattern !== 'readPretty',\r\n)\r\n\r\nconst formItemClasses = computed(() => [\r\n ns.b(),\r\n ns.m(formItemSize.value || 'default'),\r\n ns.is(props.feedbackStatus),\r\n ns.is('validating', validateState.value === 'validating'),\r\n ns.is('success', validateState.value === 'success'),\r\n ns.is('required', isRequired.value || props.asterisk),\r\n ns.is('no-asterisk', formlayout.value?.hideRequiredAsterisk),\r\n ns.is(formlayout.value.feedbackLayout),\r\n formlayout.value?.requireAsteriskPosition === 'right'\r\n ? 'asterisk-right'\r\n : 'asterisk-left',\r\n {\r\n [ns.m('feedback')]: formlayout.value?.statusIcon,\r\n [ns.m(`label-${labelPosition.value}`)]: labelPosition.value,\r\n },\r\n])\r\n\r\nconst validateClasses = computed(() => [\r\n `${prefixCls}-feedback`,\r\n ns.is(props.feedbackStatus),\r\n ns.is('loose', formlayout.value.feedbackLayout === 'loose'),\r\n])\r\n\r\nconst hasLabel = computed<boolean>(() => {\r\n return (props.label !== '' && isValid(props.label)) || isValid(slots.label)\r\n})\r\n\r\nconst labelFor = computed<string | undefined>(() => {\r\n return (\r\n props.for || (inputIds.value.length === 1 ? inputIds.value[0] : undefined)\r\n )\r\n})\r\n\r\nconst isGroup = computed<boolean>(() => {\r\n return !labelFor.value && hasLabel.value\r\n})\r\n\r\nasync function validate(): FormValidationResult {\r\n return true\r\n}\r\n/* istanbul ignore next -- @preserve */\r\nconst clearValidate: FormItemContext['clearValidate'] = () => {}\r\n/* istanbul ignore next -- @preserve */\r\nconst resetField: FormItemContext['resetField'] = async () => {}\r\n/* istanbul ignore next -- @preserve */\r\nconst setInitialValue: FormItemContext['setInitialValue'] = () => {}\r\n\r\nconst addInputId: FormItemContext['addInputId'] = (id: string) => {\r\n /* istanbul ignore else -- @preserve */\r\n if (!inputIds.value.includes(id)) {\r\n inputIds.value.push(id)\r\n }\r\n}\r\n\r\nconst removeInputId: FormItemContext['removeInputId'] = (id: string) => {\r\n inputIds.value = inputIds.value.filter(listId => listId !== id)\r\n}\r\n\r\nconst isEllipsisActive = ref(false)\r\nuseResizeObserver(labelRef, () => {\r\n isEllipsisActive.value = labelRef.value?.scrollWidth > labelRef.value?.clientWidth\r\n})\r\nconst isEllipsis = computed(() => {\r\n return isEllipsisActive.value && !formlayout.value.labelWrap\r\n})\r\n\r\n// HACK computed无法监听到props.feedbackStatus的变化\r\nconst _validateState = ref<FormItemValidateState>('')\r\nconst context: FormItemContext = reactive({\r\n $el: formItemRef,\r\n labelWidth: formlayout.value?.labelWidth,\r\n size: formItemSize,\r\n validateState: _validateState.value,\r\n labelId,\r\n inputIds,\r\n isGroup,\r\n hasLabel,\r\n addInputId,\r\n removeInputId,\r\n resetField,\r\n clearValidate,\r\n validate,\r\n labelPosition,\r\n inlineMessage: true,\r\n showMessage: true,\r\n fieldValue: field.value?.value,\r\n validateMessage: '',\r\n propString: '',\r\n setInitialValue,\r\n})\r\nwatch(() => props.feedbackStatus, (val) => {\r\n if (val === 'pending') {\r\n context.validateState = 'validating'\r\n return\r\n }\r\n if (val === 'warning') {\r\n context.validateState = ''\r\n return\r\n }\r\n context.validateState = val\r\n}, {\r\n immediate: true,\r\n})\r\n\r\nprovide(formLayoutShallowContext, ref({\r\n ...(isValid(formlayout.value.size) && { size: formlayout.value.size }),\r\n ...(isValid(formlayout.value.colon) && { colon: formlayout.value.colon }),\r\n}))\r\nprovide(formItemContextKey, context)\r\n</script>\r\n\r\n<template>\r\n <div\r\n ref=\"formItemRef\" :class=\"[prefixCls, formlayout.labelWrap && 'is-warp', ...formItemClasses]\"\r\n :role=\"isGroup ? 'group' : undefined\" :aria-labelledby=\"isGroup ? labelId : undefined\"\r\n >\r\n <component\r\n :is=\"labelFor ? 'label' : 'div'\" v-if=\"hasLabel\" :id=\"labelId\" :for=\"labelFor\"\r\n :class=\"[ns.e('label'), isValid(formlayout.labelCol) && `${prefixCls}-col-${formlayout.labelCol}`]\"\r\n :style=\"labelStyle\"\r\n >\r\n <!-- label -->\r\n <template v-if=\"isVNode(props.label)\">\r\n <component :is=\"props.label\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-label__wrapper`\">\r\n <ElTooltip :disabled=\"!isEllipsis && formlayout.tooltipLayout !== 'text'\">\r\n <span\r\n :class=\"{\r\n [`${prefixCls}-label-content`]: true,\r\n ['is-tooltip']: isEllipsis || (props.tooltip && formlayout.tooltipLayout === 'text'),\r\n }\"\r\n >\r\n <span ref=\"labelRef\">{{ props.label }}</span>\r\n </span>\r\n <template #content>\r\n <template v-if=\"isVNode(props.tooltip)\">\r\n <component :is=\"props.tooltip\" />\r\n </template>\r\n <div v-else :style=\"`width: ${labelRef?.clientWidth ?? 0}px;`\">\r\n <template v-if=\"isEllipsis\">\r\n {{ props.label }}\r\n </template>\r\n <template v-if=\"formlayout.tooltipLayout === 'text'\">\r\n {{ props.tooltip }}\r\n </template>\r\n </div>\r\n </template>\r\n </ElTooltip>\r\n <ElTooltip v-if=\"props.tooltip && formlayout.tooltipLayout !== 'text'\" :content=\"props.tooltip\">\r\n <ElIcon :class=\"`${prefixCls}-label-tooltip`\">\r\n <InfoFilled />\r\n </ElIcon>\r\n </ElTooltip>\r\n <span v-if=\"formlayout.colon\" :class=\"`${prefixCls}-colon`\">:</span>\r\n </div>\r\n </component>\r\n <!-- content -->\r\n <div\r\n :class=\"[\r\n `${prefixCls}-content__wrapper`,\r\n isValid(formlayout.wrapperCol) && `${prefixCls}-col-${formlayout.wrapperCol}`,\r\n ]\"\r\n :style=\"contentWrapperStyle\"\r\n >\r\n <template v-if=\"isValid(props.addonBefore)\">\r\n <template v-if=\"isVNode(props.addonBefore)\">\r\n <component :is=\"props.addonBefore\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-addon-before`\">\r\n {{ props.addonBefore }}\r\n </div>\r\n </template>\r\n <div\r\n :class=\"[\r\n ns.e('content'),\r\n formlayout.fullness && 'is-fullness',\r\n ns.is('addon-after', !!props.addonAfter),\r\n ]\" :style=\"contentStyle\"\r\n >\r\n <ElTooltip\r\n v-if=\"formlayout.feedbackLayout === 'popover'\"\r\n ref=\"feedbackTooltipRef\"\r\n :visible=\"!!props.feedbackText\"\r\n effect=\"light\"\r\n :offset=\"6\"\r\n >\r\n <template #default>\r\n <slot />\r\n </template>\r\n <template #content>\r\n <div :class=\"[...validateClasses, ns.is('tooltip')]\">\r\n <ElIcon>\r\n <CircleClose v-if=\"props.feedbackStatus === 'error'\" />\r\n <CircleCheck v-if=\"props.feedbackStatus === 'success'\" />\r\n <Warning v-if=\"props.feedbackStatus === 'warning'\" />\r\n </ElIcon>\r\n {{ props.feedbackText }}\r\n </div>\r\n </template>\r\n </ElTooltip>\r\n <slot v-else />\r\n <TransitionGroup :name=\"`${ns.namespace.value}-zoom-in-top`\">\r\n <div v-if=\"props.feedbackText && formlayout.feedbackLayout !== 'popover'\" :class=\"validateClasses\">\r\n {{ props.feedbackText }}\r\n </div>\r\n <template v-if=\"isValid(props.extra)\">\r\n <template v-if=\"isVNode(props.extra)\">\r\n <component :is=\"props.extra\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-extra`\">\r\n {{ props.extra }}\r\n </div>\r\n </template>\r\n </TransitionGroup>\r\n </div>\r\n <template v-if=\"isValid(props.addonAfter)\">\r\n <template v-if=\"isVNode(props.addonAfter)\">\r\n <component :is=\"props.addonAfter\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-addon-after`\">\r\n {{ props.addonAfter }}\r\n </div>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n","import { isVoidField } from '@formily/core'\r\nimport { connect, mapProps } from '@silver-formily/vue'\r\nimport { composeExport } from '../__builtins__'\r\nimport FormBaseItem from './form-item.vue'\r\nimport { determineFeedbackStatus, getFeedbackMessage } from './utils'\r\nimport './style.scss'\r\n\r\nexport function fieldFeedbackMapper(props, field) {\r\n if (isVoidField(field) || !field) {\r\n return props\r\n }\r\n\r\n const feedbackText = getFeedbackMessage(field)\r\n const feedbackStatus = determineFeedbackStatus(field)\r\n const asterisk = 'asterisk' in props\r\n ? props.asterisk\r\n : field.required && field.pattern !== 'readPretty'\r\n\r\n return {\r\n ...props,\r\n feedbackText,\r\n feedbackStatus,\r\n asterisk,\r\n }\r\n}\r\n\r\nconst Item = connect<typeof FormBaseItem>(\r\n FormBaseItem,\r\n mapProps(\r\n {\r\n validateStatus: true,\r\n title: 'label',\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n ),\r\n)\r\n\r\nexport const FormItem = composeExport(Item, {\r\n BaseItem: FormBaseItem,\r\n})\r\n\r\nexport default FormItem\r\n\r\nexport { default as FormBaseItem } from './form-item.vue'\r\n"],"names":["SCOPE","addUnit","value","defaultUnit","isNumber","isStringNumber","isString","debugWarn","props","__props","slots","useSlots","ns","useNamespace","prefixCls","stylePrefix","formItemConfig","computed","pick","FORM_LAYOUT_PROPS_KEYS","_","isValid","formlayoutConfig","useFormLayout","formlayout","field","useField","inheritedSize","useFormSize","formItemSize","labelId","useId","inputIds","ref","validateState","formItemRef","labelRef","feedbackTooltipRef","__expose","labelPosition","isArr","labelStyle","labelWidth","contentStyle","contentWidth","contentWrapperStyle","isRequired","formItemClasses","validateClasses","hasLabel","labelFor","isGroup","validate","clearValidate","resetField","setInitialValue","addInputId","id","removeInputId","listId","isEllipsisActive","useResizeObserver","isEllipsis","_validateState","context","reactive","watch","val","provide","formLayoutShallowContext","formItemContextKey","_createElementBlock","_unref","_openBlock","_createBlock","_resolveDynamicComponent","_normalizeClass","isVNode","_createVNode","ElTooltip","_normalizeStyle","_Fragment","_createTextVNode","_toDisplayString","_createElementVNode","ElIcon","InfoFilled","_renderSlot","_ctx","CircleClose","CircleCheck","Warning","_TransitionGroup","fieldFeedbackMapper","isVoidField","feedbackText","getFeedbackMessage","feedbackStatus","determineFeedbackStatus","asterisk","Item","connect","FormBaseItem","mapProps","FormItem","composeExport"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../node_modules/.pnpm/element-plus@2.13.2_vue@3.5.28_typescript@5.9.2_/node_modules/element-plus/es/utils/dom/style.mjs","../../src/form-item/form-item.vue","../../src/form-item/index.ts"],"sourcesContent":["import { isNumber, isStringNumber } from '../types.mjs';\nimport { isClient } from '@vueuse/core';\nimport { isString, camelize, isObject } from '@vue/shared';\nimport { entriesOf, keysOf } from '../objects.mjs';\nimport { debugWarn } from '../error.mjs';\n\nconst SCOPE = \"utils/dom/style\";\nconst classNameToArray = (cls = \"\") => cls.split(\" \").filter((item) => !!item.trim());\nconst hasClass = (el, cls) => {\n if (!el || !cls) return false;\n if (cls.includes(\" \")) throw new Error(\"className should not contain space.\");\n return el.classList.contains(cls);\n};\nconst addClass = (el, cls) => {\n if (!el || !cls.trim()) return;\n el.classList.add(...classNameToArray(cls));\n};\nconst removeClass = (el, cls) => {\n if (!el || !cls.trim()) return;\n el.classList.remove(...classNameToArray(cls));\n};\nconst getStyle = (element, styleName) => {\n var _a;\n if (!isClient || !element || !styleName) return \"\";\n let key = camelize(styleName);\n if (key === \"float\") key = \"cssFloat\";\n try {\n const style = element.style[key];\n if (style) return style;\n const computed = (_a = document.defaultView) == null ? void 0 : _a.getComputedStyle(element, \"\");\n return computed ? computed[key] : \"\";\n } catch (e) {\n return element.style[key];\n }\n};\nconst setStyle = (element, styleName, value) => {\n if (!element || !styleName) return;\n if (isObject(styleName)) {\n entriesOf(styleName).forEach(\n ([prop, value2]) => setStyle(element, prop, value2)\n );\n } else {\n const key = camelize(styleName);\n element.style[key] = value;\n }\n};\nconst removeStyle = (element, style) => {\n if (!element || !style) return;\n if (isObject(style)) {\n keysOf(style).forEach((prop) => removeStyle(element, prop));\n } else {\n setStyle(element, style, \"\");\n }\n};\nfunction addUnit(value, defaultUnit = \"px\") {\n if (!value && value !== 0) return \"\";\n if (isNumber(value) || isStringNumber(value)) {\n return `${value}${defaultUnit}`;\n } else if (isString(value)) {\n return value;\n }\n debugWarn(SCOPE, \"binding value must be a string or number\");\n}\n\nexport { addClass, addUnit, classNameToArray, getStyle, hasClass, removeClass, removeStyle, setStyle };\n//# sourceMappingURL=style.mjs.map\n","<script lang=\"ts\" setup>\r\nimport type { Field } from '@formily/core'\r\nimport type {\r\n FormItemContext,\r\n FormItemValidateState,\r\n FormValidationResult,\r\n TooltipInstance,\r\n} from 'element-plus'\r\nimport type { ICalculatedFormLayoutProps } from 'src/form-layout/types'\r\nimport type { CSSProperties } from 'vue'\r\nimport type { IFormItemProps } from './types'\r\nimport { CircleCheck, CircleClose, InfoFilled, Warning } from '@element-plus/icons-vue'\r\nimport { isArr, isValid } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { useResizeObserver } from '@vueuse/core'\r\nimport { ElIcon, ElTooltip, formItemContextKey, useFormSize, useId, useNamespace } from 'element-plus'\r\nimport { addUnit } from 'element-plus/es/utils/index'\r\nimport { pick } from 'lodash-es'\r\nimport { computed, isVNode, provide, reactive, ref, useSlots, watch } from 'vue'\r\nimport { stylePrefix } from '../__builtins__'\r\nimport { FORM_LAYOUT_PROPS_KEYS, formLayoutShallowContext, useFormLayout } from '../form-layout/utils'\r\n\r\ndefineOptions({\r\n name: 'FFormItem',\r\n})\r\nconst props = withDefaults(defineProps<IFormItemProps>(), {\r\n asterisk: undefined,\r\n colon: undefined,\r\n labelWrap: undefined,\r\n fullness: undefined,\r\n})\r\nconst slots = useSlots()\r\nconst ns = useNamespace('form-item')\r\nconst prefixCls = `${stylePrefix}-form-item`\r\nconst rootFormItemClass = computed(() => props.internalFormItemClass || ns.b())\r\nconst formItemConfig = computed<Partial<ICalculatedFormLayoutProps>>(() =>\r\n Object.fromEntries(\r\n Object.entries(pick(props, FORM_LAYOUT_PROPS_KEYS))\r\n .filter(([_, value]) => isValid(value)),\r\n ),\r\n)\r\nconst formlayoutConfig = useFormLayout()\r\nconst formlayout = computed(() => Object.assign({\r\n colon: true,\r\n feedbackLayout: 'loose',\r\n fullness: false,\r\n labelWrap: false,\r\n}, formlayoutConfig.value, formItemConfig.value))\r\nconst field = useField<Field>()\r\n\r\nconst inheritedSize = useFormSize(undefined, { formItem: false })\r\nconst formItemSize = computed(() => {\r\n if (isValid(formlayout.value.size)) {\r\n return formlayout.value.size\r\n }\r\n return inheritedSize.value\r\n})\r\n\r\nconst labelId = useId().value\r\nconst inputIds = ref<string[]>([])\r\n\r\nconst validateState = ref<FormItemValidateState>('')\r\nconst formItemRef = ref<HTMLDivElement>()\r\nconst labelRef = ref<HTMLElement>()\r\nconst feedbackTooltipRef = ref<TooltipInstance>()\r\ndefineExpose({\r\n feedbackTooltipRef,\r\n})\r\n\r\nconst labelPosition = computed(\r\n () => {\r\n if (formlayout.value.layout === 'vertical' || (isArr(formlayout.value.layout) && formlayout.value.layout.includes('vertical' as any))) {\r\n return 'top'\r\n }\r\n return formlayout.value.labelAlign ?? 'right'\r\n },\r\n)\r\n\r\nconst labelStyle = computed<CSSProperties>(() => {\r\n if (labelPosition.value === 'top') {\r\n return {}\r\n }\r\n\r\n const labelWidth = addUnit(formlayout.value.labelWidth || '')\r\n if (labelWidth)\r\n return { width: labelWidth }\r\n return {}\r\n})\r\n\r\nconst contentStyle = computed<CSSProperties>(() => {\r\n const contentWidth = addUnit(formlayout.value?.wrapperWidth || '')\r\n if (contentWidth)\r\n return { width: contentWidth, flex: 'unset' }\r\n return {}\r\n})\r\n\r\nconst contentWrapperStyle = computed<CSSProperties>(() => {\r\n return {\r\n justifyContent: formlayout.value?.wrapperAlign === 'right' && 'flex-end',\r\n }\r\n})\r\n\r\nconst isRequired = computed(() =>\r\n props.asterisk && field.value?.pattern !== 'readPretty',\r\n)\r\n\r\nconst formItemClasses = computed(() => [\r\n rootFormItemClass.value,\r\n ns.m(formItemSize.value || 'default'),\r\n ns.is(props.feedbackStatus),\r\n ns.is('validating', validateState.value === 'validating'),\r\n ns.is('success', validateState.value === 'success'),\r\n ns.is('required', isRequired.value || props.asterisk),\r\n ns.is('no-asterisk', formlayout.value?.hideRequiredAsterisk),\r\n ns.is(formlayout.value.feedbackLayout),\r\n formlayout.value?.requireAsteriskPosition === 'right'\r\n ? 'asterisk-right'\r\n : 'asterisk-left',\r\n {\r\n [ns.m('feedback')]: formlayout.value?.statusIcon,\r\n [ns.m(`label-${labelPosition.value}`)]: labelPosition.value,\r\n },\r\n])\r\n\r\nconst validateClasses = computed(() => [\r\n `${prefixCls}-feedback`,\r\n ns.is(props.feedbackStatus),\r\n ns.is('loose', formlayout.value.feedbackLayout === 'loose'),\r\n])\r\n\r\nconst hasLabel = computed<boolean>(() => {\r\n return (props.label !== '' && isValid(props.label)) || isValid(slots.label)\r\n})\r\n\r\nconst labelFor = computed<string | undefined>(() => {\r\n return (\r\n props.for || (inputIds.value.length === 1 ? inputIds.value[0] : undefined)\r\n )\r\n})\r\n\r\nconst isGroup = computed<boolean>(() => {\r\n return !labelFor.value && hasLabel.value\r\n})\r\n\r\nasync function validate(): FormValidationResult {\r\n return true\r\n}\r\n/* istanbul ignore next -- @preserve */\r\nconst clearValidate: FormItemContext['clearValidate'] = () => {}\r\n/* istanbul ignore next -- @preserve */\r\nconst resetField: FormItemContext['resetField'] = async () => {}\r\n/* istanbul ignore next -- @preserve */\r\nconst setInitialValue: FormItemContext['setInitialValue'] = () => {}\r\n\r\nconst addInputId: FormItemContext['addInputId'] = (id: string) => {\r\n /* istanbul ignore else -- @preserve */\r\n if (!inputIds.value.includes(id)) {\r\n inputIds.value.push(id)\r\n }\r\n}\r\n\r\nconst removeInputId: FormItemContext['removeInputId'] = (id: string) => {\r\n inputIds.value = inputIds.value.filter(listId => listId !== id)\r\n}\r\n\r\nconst isEllipsisActive = ref(false)\r\nuseResizeObserver(labelRef, () => {\r\n isEllipsisActive.value = labelRef.value?.scrollWidth > labelRef.value?.clientWidth\r\n})\r\nconst isEllipsis = computed(() => {\r\n return isEllipsisActive.value && !formlayout.value.labelWrap\r\n})\r\n\r\n// HACK computed无法监听到props.feedbackStatus的变化\r\nconst _validateState = ref<FormItemValidateState>('')\r\nconst context: FormItemContext = reactive({\r\n $el: formItemRef,\r\n labelWidth: formlayout.value?.labelWidth,\r\n size: formItemSize,\r\n validateState: _validateState.value,\r\n labelId,\r\n inputIds,\r\n isGroup,\r\n hasLabel,\r\n addInputId,\r\n removeInputId,\r\n resetField,\r\n clearValidate,\r\n validate,\r\n labelPosition,\r\n inlineMessage: true,\r\n showMessage: true,\r\n fieldValue: field.value?.value,\r\n validateMessage: '',\r\n propString: '',\r\n setInitialValue,\r\n})\r\nwatch(() => props.feedbackStatus, (val) => {\r\n if (val === 'pending') {\r\n context.validateState = 'validating'\r\n return\r\n }\r\n if (val === 'warning') {\r\n context.validateState = ''\r\n return\r\n }\r\n context.validateState = val\r\n}, {\r\n immediate: true,\r\n})\r\n\r\nprovide(formLayoutShallowContext, ref({\r\n ...(isValid(formlayout.value.size) && { size: formlayout.value.size }),\r\n ...(isValid(formlayout.value.colon) && { colon: formlayout.value.colon }),\r\n}))\r\nprovide(formItemContextKey, context)\r\n</script>\r\n\r\n<template>\r\n <div\r\n ref=\"formItemRef\" :class=\"[prefixCls, formlayout.labelWrap && 'is-warp', ...formItemClasses]\"\r\n :role=\"isGroup ? 'group' : undefined\" :aria-labelledby=\"isGroup ? labelId : undefined\"\r\n >\r\n <component\r\n :is=\"labelFor ? 'label' : 'div'\" v-if=\"hasLabel\" :id=\"labelId\" :for=\"labelFor\"\r\n :class=\"[ns.e('label'), isValid(formlayout.labelCol) && `${prefixCls}-col-${formlayout.labelCol}`]\"\r\n :style=\"labelStyle\"\r\n >\r\n <!-- label -->\r\n <template v-if=\"isVNode(props.label)\">\r\n <component :is=\"props.label\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-label__wrapper`\">\r\n <ElTooltip :disabled=\"!isEllipsis && formlayout.tooltipLayout !== 'text'\">\r\n <span\r\n :class=\"{\r\n [`${prefixCls}-label-content`]: true,\r\n ['is-tooltip']: isEllipsis || (props.tooltip && formlayout.tooltipLayout === 'text'),\r\n }\"\r\n >\r\n <span ref=\"labelRef\">{{ props.label }}</span>\r\n </span>\r\n <template #content>\r\n <template v-if=\"isVNode(props.tooltip)\">\r\n <component :is=\"props.tooltip\" />\r\n </template>\r\n <div v-else :style=\"`width: ${labelRef?.clientWidth ?? 0}px;`\">\r\n <template v-if=\"isEllipsis\">\r\n {{ props.label }}\r\n </template>\r\n <template v-if=\"formlayout.tooltipLayout === 'text'\">\r\n {{ props.tooltip }}\r\n </template>\r\n </div>\r\n </template>\r\n </ElTooltip>\r\n <ElTooltip v-if=\"props.tooltip && formlayout.tooltipLayout !== 'text'\" :content=\"props.tooltip\">\r\n <ElIcon :class=\"`${prefixCls}-label-tooltip`\">\r\n <InfoFilled />\r\n </ElIcon>\r\n </ElTooltip>\r\n <span v-if=\"formlayout.colon\" :class=\"`${prefixCls}-colon`\">:</span>\r\n </div>\r\n </component>\r\n <!-- content -->\r\n <div\r\n :class=\"[\r\n `${prefixCls}-content__wrapper`,\r\n isValid(formlayout.wrapperCol) && `${prefixCls}-col-${formlayout.wrapperCol}`,\r\n ]\"\r\n :style=\"contentWrapperStyle\"\r\n >\r\n <template v-if=\"isValid(props.addonBefore)\">\r\n <template v-if=\"isVNode(props.addonBefore)\">\r\n <component :is=\"props.addonBefore\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-addon-before`\">\r\n {{ props.addonBefore }}\r\n </div>\r\n </template>\r\n <div\r\n :class=\"[\r\n ns.e('content'),\r\n formlayout.fullness && 'is-fullness',\r\n ns.is('addon-after', !!props.addonAfter),\r\n ]\" :style=\"contentStyle\"\r\n >\r\n <ElTooltip\r\n v-if=\"formlayout.feedbackLayout === 'popover'\"\r\n ref=\"feedbackTooltipRef\"\r\n :visible=\"!!props.feedbackText\"\r\n effect=\"light\"\r\n :offset=\"6\"\r\n >\r\n <template #default>\r\n <slot />\r\n </template>\r\n <template #content>\r\n <div :class=\"[...validateClasses, ns.is('tooltip')]\">\r\n <ElIcon>\r\n <CircleClose v-if=\"props.feedbackStatus === 'error'\" />\r\n <CircleCheck v-if=\"props.feedbackStatus === 'success'\" />\r\n <Warning v-if=\"props.feedbackStatus === 'warning'\" />\r\n </ElIcon>\r\n {{ props.feedbackText }}\r\n </div>\r\n </template>\r\n </ElTooltip>\r\n <slot v-else />\r\n <TransitionGroup :name=\"`${ns.namespace.value}-zoom-in-top`\">\r\n <div v-if=\"props.feedbackText && formlayout.feedbackLayout !== 'popover'\" :class=\"validateClasses\">\r\n {{ props.feedbackText }}\r\n </div>\r\n <template v-if=\"isValid(props.extra)\">\r\n <template v-if=\"isVNode(props.extra)\">\r\n <component :is=\"props.extra\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-extra`\">\r\n {{ props.extra }}\r\n </div>\r\n </template>\r\n </TransitionGroup>\r\n </div>\r\n <template v-if=\"isValid(props.addonAfter)\">\r\n <template v-if=\"isVNode(props.addonAfter)\">\r\n <component :is=\"props.addonAfter\" />\r\n </template>\r\n <div v-else :class=\"`${prefixCls}-addon-after`\">\r\n {{ props.addonAfter }}\r\n </div>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n","import { isVoidField } from '@formily/core'\r\nimport { connect, mapProps } from '@silver-formily/vue'\r\nimport { composeExport } from '../__builtins__'\r\nimport FormBaseItem from './form-item.vue'\r\nimport { determineFeedbackStatus, getFeedbackMessage } from './utils'\r\nimport './style.scss'\r\n\r\nexport function fieldFeedbackMapper(props, field) {\r\n if (isVoidField(field) || !field) {\r\n return props\r\n }\r\n\r\n const feedbackText = getFeedbackMessage(field)\r\n const feedbackStatus = determineFeedbackStatus(field)\r\n const asterisk = 'asterisk' in props\r\n ? props.asterisk\r\n : field.required && field.pattern !== 'readPretty'\r\n\r\n return {\r\n ...props,\r\n feedbackText,\r\n feedbackStatus,\r\n asterisk,\r\n }\r\n}\r\n\r\nconst Item = connect<typeof FormBaseItem>(\r\n FormBaseItem,\r\n mapProps(\r\n {\r\n validateStatus: true,\r\n title: 'label',\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n ),\r\n)\r\n\r\nexport const FormItem = composeExport(Item, {\r\n BaseItem: FormBaseItem,\r\n})\r\n\r\nexport default FormItem\r\n\r\nexport { default as FormBaseItem } from './form-item.vue'\r\nexport type { IFormItemProps } from './types'\r\n"],"names":["SCOPE","addUnit","value","defaultUnit","isNumber","isStringNumber","isString","debugWarn","props","__props","slots","useSlots","ns","useNamespace","prefixCls","stylePrefix","rootFormItemClass","computed","formItemConfig","pick","FORM_LAYOUT_PROPS_KEYS","_","isValid","formlayoutConfig","useFormLayout","formlayout","field","useField","inheritedSize","useFormSize","formItemSize","labelId","useId","inputIds","ref","validateState","formItemRef","labelRef","feedbackTooltipRef","__expose","labelPosition","isArr","labelStyle","labelWidth","contentStyle","contentWidth","contentWrapperStyle","isRequired","formItemClasses","validateClasses","hasLabel","labelFor","isGroup","validate","clearValidate","resetField","setInitialValue","addInputId","id","removeInputId","listId","isEllipsisActive","useResizeObserver","isEllipsis","_validateState","context","reactive","watch","val","provide","formLayoutShallowContext","formItemContextKey","_createElementBlock","_unref","_openBlock","_createBlock","_resolveDynamicComponent","_normalizeClass","isVNode","_createVNode","ElTooltip","_normalizeStyle","_Fragment","_createTextVNode","_toDisplayString","_createElementVNode","ElIcon","InfoFilled","_renderSlot","_ctx","CircleClose","CircleCheck","Warning","_TransitionGroup","fieldFeedbackMapper","isVoidField","feedbackText","getFeedbackMessage","feedbackStatus","determineFeedbackStatus","asterisk","Item","connect","FormBaseItem","mapProps","FormItem","composeExport"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,11 +1,17 @@
1
+ import { VNode } from 'vue';
2
+ export type FormItemContent = string | VNode;
1
3
  export interface IFormItemProps {
2
- label?: string;
4
+ /**
5
+ * Internal: override Element Plus root class for isolated scenes (e.g. QueryFormItem).
6
+ */
7
+ internalFormItemClass?: string;
8
+ label?: FormItemContent;
3
9
  for?: string;
4
- tooltip?: string;
5
- addonBefore?: string;
6
- addonAfter?: string;
7
- extra?: string;
8
- feedbackText?: string;
10
+ tooltip?: FormItemContent;
11
+ addonBefore?: FormItemContent;
12
+ addonAfter?: FormItemContent;
13
+ extra?: FormItemContent;
14
+ feedbackText?: FormItemContent;
9
15
  feedbackStatus?: 'error' | 'warning' | 'success' | 'pending';
10
16
  asterisk?: boolean;
11
17
  colon?: boolean;
@@ -1,4 +1,4 @@
1
- import { defineComponent as A, ref as l, computed as d, provide as e, watch as x, reactive as B, toRef as t, createBlock as P, openBlock as g, resolveDynamicComponent as I, mergeProps as b, unref as F, withModifiers as R, withCtx as _, renderSlot as q } from "vue";
1
+ import { defineComponent as A, ref as l, computed as d, provide as e, watch as x, reactive as B, toRef as t, openBlock as P, createBlock as g, resolveDynamicComponent as I, mergeProps as b, unref as F, withModifiers as R, withCtx as _, renderSlot as q } from "vue";
2
2
  import { isValid as z, isEmpty as D } from "@formily/shared";
3
3
  import { useThrottleFn as T } from "@vueuse/core";
4
4
  import { useId as M, formContextKey as S } from "element-plus";
@@ -59,7 +59,7 @@ const Y = /* @__PURE__ */ A({
59
59
  hideRequiredAsterisk: t(o, "hideRequiredAsterisk"),
60
60
  requireAsteriskPosition: t(o, "requireAsteriskPosition")
61
61
  });
62
- return e(S, w), (i, m) => (g(), P(I(o.tag), b({
62
+ return e(S, w), (i, m) => (P(), g(I(o.tag), b({
63
63
  id: L.value,
64
64
  ref_key: "rootHTMLRef",
65
65
  ref: n,