@dinert/element-plus 1.1.45 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +4 -2
  2. package/dist/element-plus.umd.js +2 -2
  3. package/dist/element-plus.umd.js.map +1 -1
  4. package/dist/style.css +1 -1
  5. package/es/node_modules/@element-plus/icons-vue/dist/index.mjs +22 -97
  6. package/es/node_modules/@element-plus/icons-vue/dist/index.mjs.map +1 -1
  7. package/es/packages/assets/scss/dinert-dialog.scss +81 -60
  8. package/es/packages/assets/scss/dinert-drawer.scss +69 -0
  9. package/es/packages/assets/scss/dinert-drawer.scss.mjs +2 -0
  10. package/es/packages/assets/scss/dinert-drawer.scss.mjs.map +1 -0
  11. package/es/packages/assets/scss/dinert-form.scss +65 -52
  12. package/es/packages/assets/scss/dinert-table-page.scss +11 -13
  13. package/es/packages/assets/scss/dinert-table.scss +100 -88
  14. package/es/packages/assets/scss/dinert-tooltip.scss +2 -3
  15. package/es/packages/components/dialog/src/index.mjs +112 -48
  16. package/es/packages/components/dialog/src/index.mjs.map +1 -1
  17. package/es/packages/components/drawer/index.mjs +10 -0
  18. package/es/packages/components/drawer/index.mjs.map +1 -0
  19. package/es/packages/components/drawer/src/index.mjs +88 -0
  20. package/es/packages/components/drawer/src/index.mjs.map +1 -0
  21. package/es/packages/components/form/src/cascader.mjs +30 -18
  22. package/es/packages/components/form/src/cascader.mjs.map +1 -1
  23. package/es/packages/components/form/src/checkbox.mjs +35 -20
  24. package/es/packages/components/form/src/checkbox.mjs.map +1 -1
  25. package/es/packages/components/form/src/date.mjs +35 -22
  26. package/es/packages/components/form/src/date.mjs.map +1 -1
  27. package/es/packages/components/form/src/form-item.mjs +384 -0
  28. package/es/packages/components/form/src/form-item.mjs.map +1 -0
  29. package/es/packages/components/form/src/index.mjs +48 -244
  30. package/es/packages/components/form/src/index.mjs.map +1 -1
  31. package/es/packages/components/form/src/input-autocomplete.mjs +22 -10
  32. package/es/packages/components/form/src/input-autocomplete.mjs.map +1 -1
  33. package/es/packages/components/form/src/input-number.mjs +22 -10
  34. package/es/packages/components/form/src/input-number.mjs.map +1 -1
  35. package/es/packages/components/form/src/input.mjs +29 -19
  36. package/es/packages/components/form/src/input.mjs.map +1 -1
  37. package/es/packages/components/form/src/radio.mjs +28 -13
  38. package/es/packages/components/form/src/radio.mjs.map +1 -1
  39. package/es/packages/components/form/src/rate.mjs +22 -10
  40. package/es/packages/components/form/src/rate.mjs.map +1 -1
  41. package/es/packages/components/form/src/select-v2.mjs +22 -10
  42. package/es/packages/components/form/src/select-v2.mjs.map +1 -1
  43. package/es/packages/components/form/src/select.mjs +24 -10
  44. package/es/packages/components/form/src/select.mjs.map +1 -1
  45. package/es/packages/components/form/src/slider.mjs +22 -10
  46. package/es/packages/components/form/src/slider.mjs.map +1 -1
  47. package/es/packages/components/form/src/switch.mjs +24 -12
  48. package/es/packages/components/form/src/switch.mjs.map +1 -1
  49. package/es/packages/components/form/src/time-picker.mjs +22 -10
  50. package/es/packages/components/form/src/time-picker.mjs.map +1 -1
  51. package/es/packages/components/form/src/time-select.mjs +22 -10
  52. package/es/packages/components/form/src/time-select.mjs.map +1 -1
  53. package/es/packages/components/form/src/tree-select.mjs +28 -16
  54. package/es/packages/components/form/src/tree-select.mjs.map +1 -1
  55. package/es/packages/components/form/utils/index.mjs +35 -93
  56. package/es/packages/components/form/utils/index.mjs.map +1 -1
  57. package/es/packages/components/index.mjs +10 -10
  58. package/es/packages/components/table/hooks/index.mjs +9 -12
  59. package/es/packages/components/table/hooks/index.mjs.map +1 -1
  60. package/es/packages/components/table/src/index.mjs +130 -207
  61. package/es/packages/components/table/src/index.mjs.map +1 -1
  62. package/es/packages/components/table/src/recuve-table-column.mjs +69 -264
  63. package/es/packages/components/table/src/recuve-table-column.mjs.map +1 -1
  64. package/es/packages/components/table/src/table-column-control.mjs +60 -0
  65. package/es/packages/components/table/src/table-column-control.mjs.map +1 -0
  66. package/es/packages/components/table/src/table-column-operations.mjs +126 -0
  67. package/es/packages/components/table/src/table-column-operations.mjs.map +1 -0
  68. package/es/packages/components/table/src/table-header.mjs +128 -0
  69. package/es/packages/components/table/src/table-header.mjs.map +1 -0
  70. package/es/packages/components/table/src/table-setting-control.mjs +49 -0
  71. package/es/packages/components/table/src/table-setting-control.mjs.map +1 -0
  72. package/es/packages/components/table-page/src/index.mjs +10 -10
  73. package/es/packages/components/table-page/src/index.mjs.map +1 -1
  74. package/es/packages/hooks/TablePage/index.mjs +11 -10
  75. package/es/packages/hooks/TablePage/index.mjs.map +1 -1
  76. package/es/packages/index.mjs +8 -8
  77. package/es/packages/utils/tools.mjs +12 -13
  78. package/es/packages/utils/tools.mjs.map +1 -1
  79. package/es/src/components/drawer/index.d.ts +4 -0
  80. package/es/src/components/drawer/src/index.d.ts +3 -0
  81. package/es/src/components/drawer/types/index.d.ts +10 -0
  82. package/es/src/components/form/index.d.ts +62 -6
  83. package/es/src/components/form/src/cascader.d.ts +5 -2
  84. package/es/src/components/form/src/checkbox.d.ts +5 -2
  85. package/es/src/components/form/src/date.d.ts +5 -2
  86. package/es/src/components/form/src/form-item.d.ts +32 -0
  87. package/es/src/components/form/src/index.d.ts +63 -8
  88. package/es/src/components/form/src/input-autocomplete.d.ts +5 -2
  89. package/es/src/components/form/src/input-number.d.ts +5 -2
  90. package/es/src/components/form/src/input.d.ts +3 -1
  91. package/es/src/components/form/src/radio.d.ts +5 -2
  92. package/es/src/components/form/src/rate.d.ts +5 -2
  93. package/es/src/components/form/src/select-v2.d.ts +5 -2
  94. package/es/src/components/form/src/select.d.ts +5 -2
  95. package/es/src/components/form/src/slider.d.ts +5 -2
  96. package/es/src/components/form/src/switch.d.ts +5 -2
  97. package/es/src/components/form/src/time-picker.d.ts +5 -2
  98. package/es/src/components/form/src/time-select.d.ts +5 -2
  99. package/es/src/components/form/src/tree-select.d.ts +5 -2
  100. package/es/src/components/form/types/components.d.ts +1 -2
  101. package/es/src/components/form/types/index.d.ts +77 -18
  102. package/es/src/components/form/utils/index.d.ts +2 -1
  103. package/es/src/components/index.d.ts +2 -2
  104. package/es/src/components/table/index.d.ts +8 -13
  105. package/es/src/components/table/src/index.d.ts +8 -13
  106. package/es/src/components/table/src/recuve-table-column.d.ts +3 -4
  107. package/es/src/components/table/src/table-column-control.d.ts +20 -0
  108. package/es/src/components/table/src/table-column-operations.d.ts +41 -0
  109. package/es/src/components/table/src/table-header.d.ts +88 -0
  110. package/es/src/components/table/src/table-setting-control.d.ts +55 -0
  111. package/es/src/components/table/types/index.d.ts +15 -14
  112. package/es/src/components/table-page/index.d.ts +143 -41
  113. package/es/src/components/table-page/src/index.d.ts +143 -41
  114. package/es/src/hooks/TablePage/index.d.ts +1 -1
  115. package/es/src/views/test-tsx-table/index.d.ts +6 -0
  116. package/es/style.css +1 -1
  117. package/lib/index.js +2 -2
  118. package/lib/index.js.map +1 -1
  119. package/lib/src/components/drawer/index.d.ts +4 -0
  120. package/lib/src/components/drawer/src/index.d.ts +3 -0
  121. package/lib/src/components/drawer/types/index.d.ts +10 -0
  122. package/lib/src/components/form/index.d.ts +62 -6
  123. package/lib/src/components/form/src/cascader.d.ts +5 -2
  124. package/lib/src/components/form/src/checkbox.d.ts +5 -2
  125. package/lib/src/components/form/src/date.d.ts +5 -2
  126. package/lib/src/components/form/src/form-item.d.ts +32 -0
  127. package/lib/src/components/form/src/index.d.ts +63 -8
  128. package/lib/src/components/form/src/input-autocomplete.d.ts +5 -2
  129. package/lib/src/components/form/src/input-number.d.ts +5 -2
  130. package/lib/src/components/form/src/input.d.ts +3 -1
  131. package/lib/src/components/form/src/radio.d.ts +5 -2
  132. package/lib/src/components/form/src/rate.d.ts +5 -2
  133. package/lib/src/components/form/src/select-v2.d.ts +5 -2
  134. package/lib/src/components/form/src/select.d.ts +5 -2
  135. package/lib/src/components/form/src/slider.d.ts +5 -2
  136. package/lib/src/components/form/src/switch.d.ts +5 -2
  137. package/lib/src/components/form/src/time-picker.d.ts +5 -2
  138. package/lib/src/components/form/src/time-select.d.ts +5 -2
  139. package/lib/src/components/form/src/tree-select.d.ts +5 -2
  140. package/lib/src/components/form/types/components.d.ts +1 -2
  141. package/lib/src/components/form/types/index.d.ts +77 -18
  142. package/lib/src/components/form/utils/index.d.ts +2 -1
  143. package/lib/src/components/index.d.ts +2 -2
  144. package/lib/src/components/table/index.d.ts +8 -13
  145. package/lib/src/components/table/src/index.d.ts +8 -13
  146. package/lib/src/components/table/src/recuve-table-column.d.ts +3 -4
  147. package/lib/src/components/table/src/table-column-control.d.ts +20 -0
  148. package/lib/src/components/table/src/table-column-operations.d.ts +41 -0
  149. package/lib/src/components/table/src/table-header.d.ts +88 -0
  150. package/lib/src/components/table/src/table-setting-control.d.ts +55 -0
  151. package/lib/src/components/table/types/index.d.ts +15 -14
  152. package/lib/src/components/table-page/index.d.ts +143 -41
  153. package/lib/src/components/table-page/src/index.d.ts +143 -41
  154. package/lib/src/hooks/TablePage/index.d.ts +1 -1
  155. package/lib/src/views/test-tsx-table/index.d.ts +6 -0
  156. package/lib/style.css +1 -1
  157. package/package.json +2 -1
  158. package/es/packages/assets/scss/dinert-tooltip.scss.mjs +0 -2
  159. package/es/packages/assets/scss/dinert-tooltip.scss.mjs.map +0 -1
  160. package/es/packages/components/tooltip/index.mjs +0 -10
  161. package/es/packages/components/tooltip/index.mjs.map +0 -1
  162. package/es/packages/components/tooltip/src/index.mjs +0 -54
  163. package/es/packages/components/tooltip/src/index.mjs.map +0 -1
  164. package/es/src/components/tooltip/index.d.ts +0 -51
  165. package/es/src/components/tooltip/src/index.d.ts +0 -50
  166. package/es/src/components/tooltip/types/index.d.ts +0 -10
  167. package/lib/src/components/tooltip/index.d.ts +0 -51
  168. package/lib/src/components/tooltip/src/index.d.ts +0 -50
  169. package/lib/src/components/tooltip/types/index.d.ts +0 -10
@@ -0,0 +1,384 @@
1
+ import { defineComponent as ue, ref as Z, onBeforeUpdate as de, computed as he, createVNode as b, resolveComponent as j, mergeProps as te, isVNode as pe } from "vue";
2
+ import g from "lodash";
3
+ import { resolveProp as m, customPlaceholder as ye, getSpanValue as ve, formItemSlot as d } from "../utils/index.mjs";
4
+ import { dataTransformRod as ie } from "../../../utils/tools.mjs";
5
+ import me from "./input.mjs";
6
+ import be from "./input-number.mjs";
7
+ import ge from "./input-autocomplete.mjs";
8
+ import _e from "./select.mjs";
9
+ import Ce from "./select-v2.mjs";
10
+ import ke from "./switch.mjs";
11
+ import p from "./date.mjs";
12
+ import ae from "./radio.mjs";
13
+ import Se from "./tree-select.mjs";
14
+ import we from "./rate.mjs";
15
+ import fe from "./checkbox.mjs";
16
+ import Fe from "./cascader.mjs";
17
+ import Le from "./slider.mjs";
18
+ import $e from "./time-picker.mjs";
19
+ import Te from "./time-select.mjs";
20
+ function Ie(e) {
21
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !pe(e);
22
+ }
23
+ const xe = {
24
+ input: me,
25
+ textarea: me,
26
+ "input-number": be,
27
+ "input-autocomplete": ge,
28
+ select: _e,
29
+ "select-v2": Ce,
30
+ switch: ke,
31
+ date: p,
32
+ datetime: p,
33
+ dates: p,
34
+ week: p,
35
+ month: p,
36
+ year: p,
37
+ years: p,
38
+ datetimerange: p,
39
+ daterange: p,
40
+ monthrange: p,
41
+ yearrange: p,
42
+ radio: ae,
43
+ "radio-button": ae,
44
+ "tree-select": Se,
45
+ rate: we,
46
+ checkbox: fe,
47
+ "checkbox-button": fe,
48
+ cascader: Fe,
49
+ slider: Le,
50
+ "time-picker": $e,
51
+ "time-select": Te
52
+ }, qe = {
53
+ input: ["prefix", "suffix", "prepend", "append"],
54
+ "input-number": ["decrease-icon", "increase-icon", "prefix", "suffix"],
55
+ "input-autocomplete": ["prefix", "suffix", "prepend", "append", "loading"],
56
+ select: ["header", "footer", "prefix", "empty", "tag", "loading", "label"],
57
+ "select-v2": ["header", "footer", "prefix", "empty", "tag", "loading", "label", "default"],
58
+ switch: ["active-action", "inactive-action"],
59
+ date: ["range-separator", "prev-month", "next-month", "prev-year", "next-year"],
60
+ cascader: ["empty"]
61
+ // 其他组件继续补充
62
+ };
63
+ function oe(e, h, y = "", t = {}) {
64
+ const n = [];
65
+ return Object.keys(h).forEach((a) => {
66
+ const s = h[a], f = y ? `${y}.${a}` : a;
67
+ if (s.type === "array") {
68
+ const K = g.get(e, f) || [];
69
+ console.log(s, "itemmmmmmmm"), K.forEach((v, c) => {
70
+ const l = `${f}[${c}]`;
71
+ n.push({
72
+ ...s,
73
+ currentData: {
74
+ index: c,
75
+ ...v
76
+ },
77
+ // key 使用 id 保证稳定
78
+ key: v[s.rowKey || "id"] ? `${f}-${v[s.rowKey || "id"]}` : `${f}-${c}`,
79
+ // prop 必须和 model 一致
80
+ prop: l,
81
+ children: s.children ? oe(e, s.children, l, {
82
+ index: c,
83
+ ...v
84
+ }) : []
85
+ });
86
+ });
87
+ return;
88
+ }
89
+ if (s.children) {
90
+ n.push({
91
+ ...s,
92
+ currentData: t,
93
+ key: f,
94
+ prop: f,
95
+ children: oe(e, s.children, f, t)
96
+ });
97
+ return;
98
+ }
99
+ n.push({
100
+ ...s,
101
+ currentData: t,
102
+ key: f,
103
+ prop: f,
104
+ refreshKey: f
105
+ });
106
+ }), n;
107
+ }
108
+ const Xe = /* @__PURE__ */ ue({
109
+ name: "dinert-form-item",
110
+ props: {
111
+ form: {
112
+ type: Object,
113
+ default: () => ({})
114
+ }
115
+ },
116
+ setup(e, {
117
+ emit: h,
118
+ slots: y
119
+ }) {
120
+ const t = Z(null), n = Z(!1), a = Z(""), s = Z({}), f = (l, u) => {
121
+ s.value[l] = u;
122
+ };
123
+ de(() => {
124
+ s.value = {};
125
+ });
126
+ const K = (l, {
127
+ resultVal: u,
128
+ showValue: x,
129
+ showContent: C
130
+ }) => {
131
+ var O, $, q, A, G, V, k, D, S;
132
+ t.value = s.value[l.key];
133
+ const i = t.value;
134
+ let o = null, r = g.isArray(u) ? u.join(",") : u;
135
+ r = typeof r == "number" ? r + "" : r;
136
+ const L = y[d(l.key)], _ = g.isFunction((O = t.value) == null ? void 0 : O.querySelector) && (($ = t.value) == null ? void 0 : $.querySelector(".slot-tooltip"));
137
+ if (L && _)
138
+ o = _, (o == null ? void 0 : o.scrollHeight) > (o == null ? void 0 : o.clientHeight) && r && (a.value = _.innerText, n.value = !0);
139
+ else if (x || C || C === !1)
140
+ o = t.value, (o == null ? void 0 : o.scrollHeight) > (o == null ? void 0 : o.clientHeight) && r && (a.value = r, n.value = !0);
141
+ else if (i && !L) {
142
+ if (["input"].includes(l.type))
143
+ o = i.inputRef.ref;
144
+ else if (["input-number"].includes(l.type))
145
+ o = i.$el.querySelector(".el-input__inner");
146
+ else if (["select"].includes(l.type))
147
+ o = i.selectRef.$el.querySelector(".el-select__selected-item.el-select__placeholder"), (q = l.options) != null && q.multiple && r && (a.value = r, n.value = !0);
148
+ else if (["select-v2"].includes(l.type))
149
+ o = i.selectV2Ref.$el.querySelector(".el-select__selected-item.el-select__placeholder"), (A = l.options) != null && A.multiple && r && (a.value = r, n.value = !0);
150
+ else if (["datetime", "date", "dates", "week", "month", "year", "years", "datetimerange", "daterange", "monthrange", "yearrange"].includes(l.type))
151
+ l.type.includes("range") ? o = (G = i.$el) == null ? void 0 : G.querySelector(".el-range-input") : o = (V = i.$el) == null ? void 0 : V.querySelector(".el-input__inner");
152
+ else if (["cascader"].includes(l.type)) {
153
+ o = (k = i.$el) == null ? void 0 : k.querySelector(".el-input__inner");
154
+ const w = i.cascaderRef.cascaderPanelRef.checkedNodes;
155
+ w != null && w.length && (r = w[0].text, (S = (D = l.options) == null ? void 0 : D.props) != null && S.multiple && (r = w.map((R) => R.text).join(","), a.value = r, n.value = !0));
156
+ }
157
+ (o == null ? void 0 : o.scrollWidth) > (o == null ? void 0 : o.clientWidth) && r && (a.value = r, n.value = !0);
158
+ }
159
+ }, v = (l) => {
160
+ t.value = null, n.value = !1;
161
+ };
162
+ return {
163
+ schemaTree: he(() => {
164
+ const l = oe(e.form.model, e.form.formItem), u = (x) => {
165
+ var i;
166
+ const C = [];
167
+ for (let o = 0; o < x.length; o++) {
168
+ const r = x[o], L = {
169
+ ...r,
170
+ index: o
171
+ }, _ = g.isFunction(e.form.vif) ? e.form.vif(e.form.model, L) : e.form.vif;
172
+ if (((g.isFunction(r.vif) ? r.vif(e.form.model, L) : r.vif) ?? _ ?? !0) === !1)
173
+ continue;
174
+ const $ = {
175
+ ...r
176
+ };
177
+ (i = r.children) != null && i.length && ($.children = u(r.children)), C.push($);
178
+ }
179
+ return C.sort((o, r) => (o.sort ?? 1 / 0) - (r.sort ?? 1 / 0)), C;
180
+ };
181
+ return u(l);
182
+ }),
183
+ formTypeRef: s,
184
+ tempRef: t,
185
+ setFormTypeRefs: f,
186
+ tooltipContent: a,
187
+ isTooltip: n,
188
+ onFormItemMouseenter: K,
189
+ onFormItemMouseleave: v
190
+ };
191
+ },
192
+ methods: {
193
+ renderNode(e, h) {
194
+ var y;
195
+ if ((y = e.children) != null && y.length) {
196
+ let t;
197
+ return b(j("el-col"), {
198
+ key: e.key
199
+ }, {
200
+ default: () => [b(j("el-row"), e.row, Ie(t = e.children.map((n, a) => this.renderNode(n, a))) ? t : {
201
+ default: () => [t]
202
+ })]
203
+ });
204
+ }
205
+ return this.renderField(e, h);
206
+ },
207
+ renderField(e, h) {
208
+ var w;
209
+ const y = {}, t = {
210
+ ...e,
211
+ index: h
212
+ }, n = m(e.show, this.form.model, t) ?? !0, a = (w = e.options) == null ? void 0 : w.placeholder, s = m(e.label, this.form.model, t), f = a || ye(s, e.type);
213
+ n || (y.display = "none");
214
+ const K = m(this.form.showValue, this.form.model, t), v = m(e.showValue, this.form.model, t), c = v === void 0 ? v || K : v, l = m(this.form.required, this.form.model, t), u = m(e.required, this.form.model, t), x = u === void 0 ? u || l : u, C = m(this.form.colLayout, this.form.model, t), i = m(e.colLayout, this.form.model, t), o = i === void 0 ? i || C : i;
215
+ let r = e.rules || [];
216
+ r = x ? [{
217
+ required: !0,
218
+ trigger: ["blur", "change"],
219
+ message: f
220
+ }].concat(r) : r, r = c ? [] : r;
221
+ const L = m(this.form.disabled, this.form.model, t), _ = m(e == null ? void 0 : e.disabled, this.form.model, t), O = _ === void 0 ? _ || L : _, $ = m(this.form.showContent, this.form.model, t), q = m(e.showContent, this.form.model, t), A = q === void 0 ? q || $ : q, G = m(this.form.isTooltip, this.form.model, t), V = m(e.isTooltip, this.form.model, t);
222
+ let k = V === void 0 ? V || G : V;
223
+ k = k === void 0 ? !0 : k;
224
+ const D = this.form.errData || ie(null), S = g.get(this.form.model, e.key);
225
+ let E = ve(S, e);
226
+ if (c) {
227
+ const R = g.isFunction(this.form.valueFormatter) ? this.form.valueFormatter(S, this.form.model, {
228
+ ...e,
229
+ index: h
230
+ }) : this.form.valueFormatter, N = g.isFunction(e.valueFormatter) ? e.valueFormatter(S, this.form.model, {
231
+ ...e,
232
+ index: h
233
+ }) : e.valueFormatter, T = N === void 0 ? N || R : N;
234
+ T !== void 0 && (E = T);
235
+ }
236
+ return b(j("el-col"), te({
237
+ style: y,
238
+ class: [e.type, e.key],
239
+ key: e.refreshKey
240
+ }, {
241
+ // xl: 3, // ≥1920px
242
+ // lg: 4, // ≥1200px
243
+ // md: 8, // ≥992px
244
+ // sm: 12, // ≥768px
245
+ // xs: 24, // <768px
246
+ ...this.form.colLayout,
247
+ ...o
248
+ }), {
249
+ default: () => {
250
+ var R, N;
251
+ return [this.$slots[d(e.key, "col_")] ? (N = (R = this.$slots)[d(e.key, "col_")]) == null ? void 0 : N.call(R, {
252
+ ...e,
253
+ model: this.form.model
254
+ }) : b(j("el-form-item"), te({
255
+ key: e.refreshKey,
256
+ prop: e.prop,
257
+ class: [e.labelWrap ? "label-wrap" : "", c ? "show-value" : ""]
258
+ }, {
259
+ ...e,
260
+ rules: r,
261
+ required: void 0,
262
+ label: void 0
263
+ }, {
264
+ onMouseenter: () => {
265
+ k && this.onFormItemMouseenter(e, {
266
+ resultVal: E,
267
+ showValue: c,
268
+ showContent: A
269
+ });
270
+ },
271
+ onMouseleave: () => {
272
+ k && this.onFormItemMouseleave(e);
273
+ }
274
+ }), {
275
+ label: () => {
276
+ var Q, H, W, B, U, z;
277
+ const T = m(this.form.showLabel, this.form.model, t), I = m(e.showLabel, this.form.model, t);
278
+ if ((I === void 0 ? I || T : I) === !1)
279
+ return null;
280
+ let M = null;
281
+ this.$slots[d(e.key, "formItem_label_")] ? M = (H = (Q = this.$slots)[d(e.key, "formItem_label_")]) == null ? void 0 : H.call(Q, {
282
+ ...t,
283
+ model: this.form.model
284
+ }) : M = s;
285
+ const P = (B = (W = this.$slots)[d(e.key, "formItem_label_before_")]) == null ? void 0 : B.call(W, {
286
+ ...t,
287
+ model: this.form.model
288
+ }), ee = (z = (U = this.$slots)[d(e.key, "formItem_label_after_")]) == null ? void 0 : z.call(U, {
289
+ ...t,
290
+ model: this.form.model
291
+ });
292
+ return [P, M, ee];
293
+ },
294
+ // eslint-disable-next-line max-statements
295
+ default: () => {
296
+ var H, W, B, U, z, re;
297
+ if (A === !1)
298
+ return null;
299
+ let T = 3, I = {};
300
+ if (c) {
301
+ const F = g.isFunction(this.form.limitLine) ? this.form.limitLine(S, this.form.model, t) : this.form.limitLine, X = g.isFunction(e.limitLine) ? e.limitLine(S, this.form.model, t) : e.limitLine;
302
+ T = X === void 0 ? X || F : X, I = {
303
+ "--limit-line": T
304
+ };
305
+ }
306
+ const J = ie(E), M = xe[e.type];
307
+ let P = b("div", {
308
+ ref: (F) => this.setFormTypeRefs(e.key, F),
309
+ style: I,
310
+ class: ["el-form-item__content-text", J === D ? "empty-value" : ""]
311
+ }, [J]);
312
+ if (this.$slots[d(e.key)])
313
+ P = b("div", {
314
+ ref: (F) => this.setFormTypeRefs(e.key, F),
315
+ style: I,
316
+ class: ["el-form-item__content-slot", J === D ? "empty-value" : ""]
317
+ }, [(W = (H = this.$slots)[d(e.key)]) == null ? void 0 : W.call(H, {
318
+ ...e,
319
+ model: this.form.model
320
+ })]);
321
+ else {
322
+ if (c)
323
+ return P;
324
+ {
325
+ const F = {};
326
+ (qe[e.type] || []).forEach((Y) => {
327
+ const le = d(e.key) + "_" + Y;
328
+ this.$slots[le] && (F[Y] = (ce) => {
329
+ var se, ne;
330
+ return (ne = (se = this.$slots)[le]) == null ? void 0 : ne.call(se, {
331
+ ...e,
332
+ ...ce
333
+ });
334
+ });
335
+ }), P = M ? b(M, {
336
+ form: this.form,
337
+ formItem: {
338
+ ...e,
339
+ options: {
340
+ ...e.options,
341
+ disabled: O,
342
+ placeholder: f
343
+ }
344
+ },
345
+ onEnterSearch: () => {
346
+ this.$emit("SearchFn");
347
+ },
348
+ ref: (Y) => this.setFormTypeRefs(e.key, Y)
349
+ }, F) : b("div", null, [E]);
350
+ }
351
+ }
352
+ const ee = (U = (B = this.$slots)[d("before_" + e.key)]) == null ? void 0 : U.call(B, {
353
+ ...e,
354
+ model: this.form.model
355
+ }), Q = (re = (z = this.$slots)[d("after_" + e.key)]) == null ? void 0 : re.call(z, {
356
+ ...e,
357
+ model: this.form.model
358
+ });
359
+ return [ee, P, Q];
360
+ }
361
+ })];
362
+ }
363
+ });
364
+ }
365
+ },
366
+ render() {
367
+ return b(j("el-row"), te(this.form.row, {
368
+ class: "dinert-form-left"
369
+ }), {
370
+ default: () => [b(j("el-tooltip"), {
371
+ placement: "top",
372
+ content: this.tooltipContent,
373
+ "virtual-triggering": !0,
374
+ "virtual-ref": this.tempRef,
375
+ trigger: "contextmenu",
376
+ visible: this.isTooltip
377
+ }, null), this.schemaTree.map((e, h) => this.renderNode(e, h))]
378
+ });
379
+ }
380
+ });
381
+ export {
382
+ Xe as default
383
+ };
384
+ //# sourceMappingURL=form-item.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-item.mjs","sources":["../../../../../packages/components/form/src/form-item.tsx"],"sourcesContent":["/* eslint-disable max-statements */\nimport {PropType, computed, defineComponent, onBeforeUpdate, ref} from 'vue'\nimport type {RewriteFormProps, CustomFormItemProps} from '@packages/components/form/types'\nimport lodash from 'lodash'\nimport {getSpanValue, formItemSlot, customPlaceholder, resolveProp} from '@packages/components/form/utils'\nimport {dataTransformRod} from '@packages/utils/tools'\nimport CustomInput from './input'\nimport CustomInputNumber from './input-number'\nimport CustomInputAutocomplete from './input-autocomplete'\nimport CustomSelect from './select'\nimport CustomSelectV2 from './select-v2'\nimport CustomSwitch from './switch'\nimport CustomDate from './date'\nimport CustomRadio from './radio'\nimport CustomSelectTree from './tree-select'\nimport CustomRate from './rate'\nimport CustomCheckbox from './checkbox'\nimport CustomCascader from './cascader'\nimport CustomSlider from './slider'\nimport CustomTimePicker from './time-picker'\nimport CustomTimeSelect from './time-select'\n\n\nconst COMPONENT_MAP: Record<string, any> = {\n input: CustomInput,\n textarea: CustomInput,\n 'input-number': CustomInputNumber,\n 'input-autocomplete': CustomInputAutocomplete,\n select: CustomSelect,\n 'select-v2': CustomSelectV2,\n switch: CustomSwitch,\n date: CustomDate,\n datetime: CustomDate,\n dates: CustomDate,\n week: CustomDate,\n month: CustomDate,\n year: CustomDate,\n years: CustomDate,\n datetimerange: CustomDate,\n daterange: CustomDate,\n monthrange: CustomDate,\n yearrange: CustomDate,\n radio: CustomRadio,\n 'radio-button': CustomRadio,\n 'tree-select': CustomSelectTree,\n rate: CustomRate,\n checkbox: CustomCheckbox,\n 'checkbox-button': CustomCheckbox,\n cascader: CustomCascader,\n slider: CustomSlider,\n 'time-picker': CustomTimePicker,\n 'time-select': CustomTimeSelect\n}\n\nconst SLOT_MAP: Record<string, string[]> = {\n 'input': ['prefix', 'suffix', 'prepend', 'append'],\n 'input-number': ['decrease-icon', 'increase-icon', 'prefix', 'suffix'],\n 'input-autocomplete': ['prefix', 'suffix', 'prepend', 'append', 'loading'],\n 'select': ['header', 'footer', 'prefix', 'empty', 'tag', 'loading', 'label'],\n 'select-v2': ['header', 'footer', 'prefix', 'empty', 'tag', 'loading', 'label', 'default'],\n 'switch': ['active-action', 'inactive-action'],\n 'date': ['range-separator', 'prev-month', 'next-month', 'prev-year', 'next-year'],\n 'cascader': ['empty'],\n // 其他组件继续补充\n}\n\nfunction parseSchema(model: any, schema: any, parentPath = '', currentData = {}) {\n const result: any[] = []\n\n Object.keys(schema).forEach(key => {\n const item = schema[key]\n const path = parentPath ? `${parentPath}.${key}` : key\n\n // 数组\n if (item.type === 'array') {\n const list = lodash.get(model, path) || []\n console.log(item, 'itemmmmmmmm')\n\n list.forEach((row: any, index: number) => {\n const currentPath = `${path}[${index}]`\n\n result.push({\n ...item,\n currentData: {index, ...row},\n\n // key 使用 id 保证稳定\n key: row[item.rowKey || 'id'] ? `${path}-${row[item.rowKey || 'id']}` : `${path}-${index}`,\n\n // prop 必须和 model 一致\n prop: currentPath,\n\n children: item.children\n ? parseSchema(\n model,\n item.children,\n currentPath,\n {index, ...row}\n )\n : []\n })\n })\n\n return\n }\n\n // children\n if (item.children) {\n result.push({\n ...item,\n currentData,\n key: path,\n prop: path,\n children: parseSchema(model, item.children, path, currentData)\n })\n return\n }\n\n // 普通字段\n result.push({\n ...item,\n currentData,\n key: path,\n prop: path,\n refreshKey: path\n })\n })\n\n return result\n}\n\n// 展开还是收起状态\nexport default defineComponent({\n name: 'dinert-form-item',\n props: {\n form: {\n type: Object as PropType<RewriteFormProps>,\n default: () => ({})\n },\n\n },\n setup(props, {emit, slots}) {\n\n const tempRef = ref<any>(null)\n const isTooltip = ref(false)\n const tooltipContent = ref('')\n const formTypeRef = ref<any>({})\n const setFormTypeRefs = (type: string, el: any) => {\n formTypeRef.value[type] = el\n }\n\n onBeforeUpdate(() => {\n formTypeRef.value = {}\n })\n\n // eslint-disable-next-line max-statements\n const onFormItemMouseenter = (item: CustomFormItemProps, {resultVal, showValue, showContent}: {resultVal: any, showValue: any, showContent: any}) => {\n\n tempRef.value = formTypeRef.value[item.key]\n const customRef = tempRef.value\n let coRef = null as any\n\n let newVal = lodash.isArray(resultVal) ? resultVal.join(',') : resultVal\n newVal = typeof newVal === 'number' ? newVal + '' : newVal\n\n const slot = slots[formItemSlot(item.key)]\n\n\n const slotTooltipDom = lodash.isFunction(tempRef.value?.querySelector) && tempRef.value?.querySelector('.slot-tooltip')\n\n if (slot && slotTooltipDom) {\n coRef = slotTooltipDom\n\n if (coRef?.scrollHeight > coRef?.clientHeight && newVal) {\n tooltipContent.value = slotTooltipDom.innerText\n isTooltip.value = true\n }\n\n } else if (showValue || showContent || showContent === false) {\n coRef = tempRef.value\n\n if (coRef?.scrollHeight > coRef?.clientHeight && newVal) {\n tooltipContent.value = newVal\n isTooltip.value = true\n }\n\n } else if (customRef && !slot) {\n if (['input'].includes(item.type)) {\n coRef = customRef.inputRef.ref\n } else if (['input-number'].includes(item.type)) {\n coRef = customRef.$el.querySelector('.el-input__inner')\n } else if (['select'].includes(item.type)) {\n coRef = customRef.selectRef.$el.querySelector('.el-select__selected-item.el-select__placeholder')\n if (item.options?.multiple && newVal) {\n tooltipContent.value = newVal\n isTooltip.value = true\n }\n } else if (['select-v2'].includes(item.type)) {\n coRef = customRef.selectV2Ref.$el.querySelector('.el-select__selected-item.el-select__placeholder')\n if (item.options?.multiple && newVal) {\n tooltipContent.value = newVal\n isTooltip.value = true\n }\n } else if (['datetime',\n 'date',\n 'dates',\n 'week',\n 'month',\n 'year',\n 'years',\n 'datetimerange',\n 'daterange',\n 'monthrange',\n 'yearrange'].includes(item.type)) {\n\n if (item.type.includes('range')) {\n coRef = customRef.$el?.querySelector('.el-range-input')\n } else {\n coRef = customRef.$el?.querySelector('.el-input__inner')\n }\n } else if (['cascader'].includes(item.type)) {\n coRef = customRef.$el?.querySelector('.el-input__inner')\n const cascaderRef = customRef.cascaderRef\n const nodes = cascaderRef.cascaderPanelRef.checkedNodes\n\n if (nodes?.length) {\n newVal = nodes[0].text\n if (item.options?.props?.multiple) {\n newVal = nodes.map((item: any) => item.text).join(',')\n tooltipContent.value = newVal\n isTooltip.value = true\n }\n }\n\n }\n\n if (coRef?.scrollWidth > coRef?.clientWidth && newVal) {\n tooltipContent.value = newVal\n isTooltip.value = true\n }\n\n }\n\n\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const onFormItemMouseleave = (_item: CustomFormItemProps) => {\n tempRef.value = null\n isTooltip.value = false\n }\n\n const schemaTree = computed(() => {\n const tree = parseSchema(props.form.model, props.form.formItem)\n\n const walk = (list: any[]) => {\n const result: any[] = []\n\n for (let i = 0; i < list.length; i++) {\n const item = list[i]\n\n const ctx = {...item, index: i}\n\n const formVif = lodash.isFunction(props.form.vif)\n ? props.form.vif(props.form.model, ctx)\n : props.form.vif\n\n const itemVif = lodash.isFunction(item.vif)\n ? item.vif(props.form.model, ctx)\n : item.vif\n\n if ((itemVif ?? formVif ?? true) === false) {continue}\n\n const node = {...item}\n\n if (item.children?.length) {\n node.children = walk(item.children)\n }\n\n result.push(node)\n }\n\n // 最后统一排序\n result.sort((a, b) => (a.sort ?? Infinity) - (b.sort ?? Infinity))\n\n return result\n }\n\n return walk(tree)\n })\n\n\n return {\n schemaTree,\n formTypeRef,\n tempRef,\n setFormTypeRefs,\n tooltipContent,\n isTooltip,\n\n onFormItemMouseenter,\n onFormItemMouseleave,\n }\n },\n methods: {\n renderNode(item: any, index: number) {\n if (item.children?.length) {\n return (<el-col key={item.key}><el-row {...item.row}>{item.children.map((child: any, i: number) => this.renderNode(child, i))}</el-row></el-col>)\n }\n return this.renderField(item, index)\n },\n\n renderField(item: CustomFormItemProps, index: number) {\n const style: any = {}\n\n const ctx = {...item, index}\n\n\n // 处理show\n const show = resolveProp(item.show, this.form.model, ctx) ?? true\n\n\n const isCustomPlaceholder = item.options?.placeholder\n const itemLabel = resolveProp(item.label, this.form.model, ctx)\n const placeholder = isCustomPlaceholder || customPlaceholder(itemLabel, item.type)\n\n\n if (!show) {\n style.display = 'none'\n }\n\n // 处理是否显示直接显示组件的值\n const formShowValue = resolveProp(this.form.showValue, this.form.model, ctx)\n const itemShowValue = resolveProp(item.showValue, this.form.model, ctx)\n const showValue = itemShowValue === undefined ? itemShowValue || formShowValue : itemShowValue\n\n // 处理是否必填\n const formRequired = resolveProp(this.form.required, this.form.model, ctx)\n const itemRequired = resolveProp(item.required, this.form.model, ctx)\n const required = itemRequired === undefined ? itemRequired || formRequired : itemRequired\n\n // 处理colLayout\n const formColLayout = resolveProp(this.form.colLayout, this.form.model, ctx)\n const itemColLayout = resolveProp(item.colLayout, this.form.model, ctx)\n const colLayout = itemColLayout === undefined ? itemColLayout || formColLayout : itemColLayout\n\n let rules = item.rules || []\n rules = required ? [{required: true, trigger: ['blur', 'change'], message: placeholder}].concat(rules) : rules\n rules = showValue ? [] : rules\n\n // 处理disabled\n const formDisabled = resolveProp(this.form.disabled, this.form.model, ctx)\n const itemDisabled = resolveProp(item?.disabled, this.form.model, ctx)\n const disabled = itemDisabled === undefined ? itemDisabled || formDisabled : itemDisabled\n\n // 处理是否显示内容\n const formShowContent = resolveProp(this.form.showContent, this.form.model, ctx)\n const itemShowContent = resolveProp(item.showContent, this.form.model, ctx)\n const showContent = itemShowContent === undefined ? itemShowContent || formShowContent : itemShowContent\n\n // 处理是否显示直接显示组件的值\n const formIsTooltip = resolveProp(this.form.isTooltip, this.form.model, ctx)\n const itemIsTooltip = resolveProp(item.isTooltip, this.form.model, ctx)\n let isTooltip = itemIsTooltip === undefined ? itemIsTooltip || formIsTooltip : itemIsTooltip\n isTooltip = isTooltip === undefined ? true : isTooltip\n\n // 处理显示值\n const errData = this.form.errData || dataTransformRod(null)\n const getValue = lodash.get(this.form.model, item.key)\n let resultVal = getSpanValue(getValue, item)\n if (showValue) {\n // 处理格式化内容\n const formFormatter = lodash.isFunction(this.form.valueFormatter) ? this.form.valueFormatter(getValue, this.form.model, {...item, index}) : this.form.valueFormatter\n const itemFormatter = lodash.isFunction(item.valueFormatter) ? item.valueFormatter(getValue, this.form.model, {...item, index}) : item.valueFormatter\n const formatter = itemFormatter === undefined ? itemFormatter || formFormatter : itemFormatter\n if (formatter !== undefined) {\n resultVal = formatter\n }\n\n }\n\n return (\n <el-col\n style= {style}\n class={[item.type, item.key]}\n key={item.refreshKey}\n {\n ...{\n // xl: 3, // ≥1920px\n // lg: 4, // ≥1200px\n // md: 8, // ≥992px\n // sm: 12, // ≥768px\n // xs: 24, // <768px\n ...this.form.colLayout,\n ...colLayout\n }\n }\n >{\n this.$slots[formItemSlot(item.key, 'col_')] ? this.$slots[formItemSlot(item.key, 'col_')]?.({...item, model: this.form.model})\n : <el-form-item\n key={item.refreshKey}\n prop={item.prop}\n class={[item.labelWrap ? 'label-wrap' : '', showValue ? 'show-value' : '']}\n {...{\n ...item,\n rules: rules,\n required: undefined,\n label: undefined\n }}\n onMouseenter={() => {\n isTooltip && this.onFormItemMouseenter(item, {resultVal, showValue, showContent})\n }}\n onMouseleave={() => {\n isTooltip && this.onFormItemMouseleave(item)\n }}\n v-slots={{\n label: () => {\n\n // 处理是否显示label\n const formShowLabel = resolveProp(this.form.showLabel, this.form.model, ctx)\n const itemShowLabel = resolveProp(item.showLabel, this.form.model, ctx)\n const showLabel = itemShowLabel === undefined ? itemShowLabel || formShowLabel : itemShowLabel\n\n if (showLabel === false) {\n return null\n }\n\n let labelComponent = null as any\n if (this.$slots[formItemSlot(item.key, 'formItem_label_')]) {\n labelComponent = this.$slots[formItemSlot(item.key, 'formItem_label_')]?.({...ctx, model: this.form.model})\n } else {\n labelComponent = itemLabel\n }\n const formItemLabelBefore = this.$slots[formItemSlot(item.key, 'formItem_label_before_')]?.({...ctx, model: this.form.model})\n const formItemLabelAfter = this.$slots[formItemSlot(item.key, 'formItem_label_after_')]?.({...ctx, model: this.form.model})\n\n return [formItemLabelBefore, labelComponent, formItemLabelAfter]\n },\n // eslint-disable-next-line max-statements\n default: () => {\n if (showContent === false) {\n return null\n }\n\n let limitLine = 3 as any\n let componentResultStyle = {} as any\n if (showValue) {\n // 处理显示值的行数\n const formLimitLine = lodash.isFunction(this.form.limitLine) ? this.form.limitLine(getValue, this.form.model, ctx) : this.form.limitLine\n const itemLimitLine = lodash.isFunction(item.limitLine) ? item.limitLine(getValue, this.form.model, ctx) : item.limitLine\n limitLine = itemLimitLine === undefined ? itemLimitLine || formLimitLine : itemLimitLine\n componentResultStyle = {'--limit-line': limitLine}\n }\n\n\n const trueResultVal = dataTransformRod(resultVal)\n const Comp = COMPONENT_MAP[item.type]\n let componentResult = <div\n ref={el => this.setFormTypeRefs(item.key, el)} style={componentResultStyle}\n class={['el-form-item__content-text', trueResultVal === errData ? 'empty-value' : '']}>{trueResultVal}</div>\n\n if (this.$slots[formItemSlot(item.key)]) {\n componentResult = (<div ref={el => this.setFormTypeRefs(item.key, el)}\n style={componentResultStyle}\n class={['el-form-item__content-slot', trueResultVal === errData ? 'empty-value' : '']}>\n {this.$slots[formItemSlot(item.key)]?.({...item, model: this.form.model})}</div>)\n } else if (showValue) {\n return componentResult\n } else {\n const slots: Record<string, any> = {}\n const slotKeys = SLOT_MAP[item.type] || []\n slotKeys.forEach(key => {\n const fullSlotName = formItemSlot(item.key) + '_' + key\n if (this.$slots[fullSlotName]) {\n slots[key] = (args: any) => this.$slots[fullSlotName]?.({...item, ...args})\n }\n })\n componentResult = Comp ? <Comp\n form={this.form}\n formItem={{\n ...item,\n options: {\n ...item.options,\n disabled,\n placeholder\n }\n\n }}\n v-slots={slots}\n onEnterSearch={() => {\n this.$emit('SearchFn')\n }}\n ref={el => this.setFormTypeRefs(item.key, el)}\n /> : <div>{resultVal}</div>\n }\n\n const beforeComponent = this.$slots[formItemSlot('before_' + item.key)]?.({...item, model: this.form.model})\n const afterComponent = this.$slots[formItemSlot('after_' + item.key)]?.({...item, model: this.form.model})\n\n return [beforeComponent, componentResult, afterComponent]\n }\n }}\n >\n </el-form-item>\n }\n </el-col>\n )\n },\n },\n\n render() {\n return (\n <el-row {...this.form.row} class=\"dinert-form-left\">\n <el-tooltip\n placement=\"top\"\n content={this.tooltipContent}\n virtual-triggering\n virtual-ref={this.tempRef}\n trigger=\"contextmenu\"\n visible={this.isTooltip}\n />\n {\n this.schemaTree.map((item: CustomFormItemProps, index: number) => {\n return (this.renderNode(item, index))\n })\n }\n </el-row>\n )\n }\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","COMPONENT_MAP","input","CustomInput","textarea","CustomInputNumber","CustomInputAutocomplete","select","CustomSelect","CustomSelectV2","switch","CustomSwitch","date","CustomDate","datetime","dates","week","month","year","years","datetimerange","daterange","monthrange","yearrange","radio","CustomRadio","CustomSelectTree","rate","CustomRate","checkbox","CustomCheckbox","cascader","CustomCascader","slider","CustomSlider","CustomTimePicker","CustomTimeSelect","SLOT_MAP","parseSchema","model","schema","parentPath","currentData","result","keys","forEach","key","item","path","type","list","lodash","get","console","log","row","index","currentPath","push","rowKey","prop","children","refreshKey","defineComponent","name","props","form","default","setup","emit","slots","tempRef","ref","isTooltip","tooltipContent","formTypeRef","setFormTypeRefs","el","value","onBeforeUpdate","onFormItemMouseenter","resultVal","showValue","showContent","customRef","coRef","newVal","isArray","join","slot","formItemSlot","slotTooltipDom","isFunction","querySelector","scrollHeight","clientHeight","innerText","includes","inputRef","$el","selectRef","options","multiple","selectV2Ref","nodes","cascaderRef","cascaderPanelRef","checkedNodes","length","text","map","scrollWidth","clientWidth","onFormItemMouseleave","_item","schemaTree","computed","tree","formItem","walk","i","ctx","formVif","vif","node","sort","a","b","Infinity","methods","renderNode","_slot","_createVNode","_resolveComponent","child","renderField","style","show","resolveProp","isCustomPlaceholder","placeholder","itemLabel","label","customPlaceholder","display","formShowValue","itemShowValue","undefined","formRequired","required","itemRequired","formColLayout","colLayout","itemColLayout","rules","trigger","message","concat","formDisabled","disabled","itemDisabled","formShowContent","itemShowContent","formIsTooltip","itemIsTooltip","errData","dataTransformRod","getValue","getSpanValue","formFormatter","valueFormatter","itemFormatter","formatter","_mergeProps","$slots","_b","_a","labelWrap","onMouseenter","onMouseleave","formShowLabel","showLabel","itemShowLabel","labelComponent","formItemLabelBefore","_d","_c","formItemLabelAfter","_f","_e","limitLine","componentResultStyle","formLimitLine","itemLimitLine","trueResultVal","Comp","componentResult","slotKeys","fullSlotName","args","onEnterSearch","$emit","beforeComponent","afterComponent","render"],"mappings":"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"}