@farris/ui-vue 1.6.5-beta.7 → 1.6.5-beta.8

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 (194) hide show
  1. package/components/accordion/index.esm.js +65 -65
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +28 -29
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/button-edit/index.esm.js +521 -517
  6. package/components/button-edit/index.umd.cjs +1 -1
  7. package/components/calendar/index.esm.js +134 -134
  8. package/components/calendar/index.umd.cjs +1 -1
  9. package/components/capsule/index.esm.js +192 -192
  10. package/components/capsule/index.umd.cjs +1 -1
  11. package/components/code-editor/index.esm.js +8 -8
  12. package/components/code-editor/index.umd.cjs +3 -3
  13. package/components/collection-property-editor/index.esm.js +72 -72
  14. package/components/collection-property-editor/index.umd.cjs +1 -1
  15. package/components/color-picker/index.esm.js +291 -289
  16. package/components/color-picker/index.umd.cjs +1 -1
  17. package/components/combo-list/index.esm.js +163 -157
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +113 -112
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/common/index.esm.js +3 -1
  22. package/components/common/index.umd.cjs +1 -1
  23. package/components/component/index.esm.js +10 -10
  24. package/components/component/index.umd.cjs +1 -1
  25. package/components/condition/index.esm.js +1122 -1121
  26. package/components/condition/index.umd.cjs +1 -1
  27. package/components/content-container/index.esm.js +190 -190
  28. package/components/content-container/index.umd.cjs +1 -1
  29. package/components/data-view/index.esm.js +2693 -2693
  30. package/components/data-view/index.umd.cjs +1 -1
  31. package/components/date-picker/index.esm.js +1604 -1601
  32. package/components/date-picker/index.umd.cjs +1 -1
  33. package/components/designer-canvas/index.esm.js +1082 -1079
  34. package/components/designer-canvas/index.umd.cjs +1 -1
  35. package/components/discussion-editor/index.esm.js +973 -1040
  36. package/components/discussion-editor/index.umd.cjs +6 -6
  37. package/components/dropdown/index.esm.js +335 -330
  38. package/components/dropdown/index.umd.cjs +2 -2
  39. package/components/dynamic-form/index.esm.js +8 -8
  40. package/components/dynamic-form/index.umd.cjs +1 -1
  41. package/components/dynamic-resolver/index.esm.js +6 -6
  42. package/components/dynamic-resolver/index.umd.cjs +1 -1
  43. package/components/dynamic-view/index.esm.js +344 -344
  44. package/components/dynamic-view/index.umd.cjs +1 -1
  45. package/components/events-editor/index.esm.js +8 -8
  46. package/components/events-editor/index.umd.cjs +3 -3
  47. package/components/expression-editor/index.esm.js +1470 -1460
  48. package/components/expression-editor/index.umd.cjs +3 -3
  49. package/components/fieldset/index.esm.js +55 -55
  50. package/components/fieldset/index.umd.cjs +1 -1
  51. package/components/filter-bar/index.esm.js +853 -843
  52. package/components/filter-bar/index.umd.cjs +1 -1
  53. package/components/filter-condition-editor/index.esm.js +922 -911
  54. package/components/filter-condition-editor/index.umd.cjs +3 -3
  55. package/components/flow-canvas/index.esm.js +12 -12
  56. package/components/flow-canvas/index.umd.cjs +1 -1
  57. package/components/html-template/index.esm.js +164 -164
  58. package/components/html-template/index.umd.cjs +1 -1
  59. package/components/image-cropper/index.esm.js +198 -198
  60. package/components/image-cropper/index.umd.cjs +1 -1
  61. package/components/json-editor/index.esm.js +64 -64
  62. package/components/json-editor/index.umd.cjs +1 -1
  63. package/components/language-textbox/index.esm.js +140 -140
  64. package/components/language-textbox/index.umd.cjs +1 -1
  65. package/components/layout/index.esm.js +111 -111
  66. package/components/layout/index.umd.cjs +1 -1
  67. package/components/list-nav/index.esm.js +90 -90
  68. package/components/list-nav/index.umd.cjs +1 -1
  69. package/components/list-view/index.esm.js +104 -108
  70. package/components/list-view/index.umd.cjs +3 -3
  71. package/components/locale/index.esm.js +833 -901
  72. package/components/locale/index.umd.cjs +6 -6
  73. package/components/lookup/index.esm.js +1352 -1351
  74. package/components/lookup/index.umd.cjs +1 -1
  75. package/components/mapping-editor/index.esm.js +1311 -1307
  76. package/components/mapping-editor/index.umd.cjs +1 -1
  77. package/components/menu-lookup/index.esm.js +1059 -1127
  78. package/components/menu-lookup/index.umd.cjs +6 -6
  79. package/components/message-box/index.esm.js +7 -7
  80. package/components/message-box/index.umd.cjs +1 -1
  81. package/components/modal/index.esm.js +9 -9
  82. package/components/modal/index.umd.cjs +1 -1
  83. package/components/nav/index.esm.js +106 -106
  84. package/components/nav/index.umd.cjs +1 -1
  85. package/components/number-range/index.esm.js +326 -326
  86. package/components/number-range/index.umd.cjs +1 -1
  87. package/components/number-spinner/index.esm.js +168 -167
  88. package/components/number-spinner/index.umd.cjs +1 -1
  89. package/components/order/index.esm.js +739 -737
  90. package/components/order/index.umd.cjs +4 -4
  91. package/components/page-footer/index.esm.js +94 -94
  92. package/components/page-footer/index.umd.cjs +1 -1
  93. package/components/page-header/index.esm.js +942 -939
  94. package/components/page-header/index.umd.cjs +1 -1
  95. package/components/pagination/index.esm.js +82 -82
  96. package/components/pagination/index.umd.cjs +1 -1
  97. package/components/popover/index.esm.js +1 -1
  98. package/components/popover/index.umd.cjs +1 -1
  99. package/components/progress/index.esm.js +113 -113
  100. package/components/progress/index.umd.cjs +2 -2
  101. package/components/property-editor/index.esm.js +151 -150
  102. package/components/property-editor/index.umd.cjs +1 -1
  103. package/components/property-panel/index.esm.js +565 -565
  104. package/components/property-panel/index.umd.cjs +2 -2
  105. package/components/query-solution/index.esm.js +4142 -4190
  106. package/components/query-solution/index.umd.cjs +6 -6
  107. package/components/radio-button/index.esm.js +182 -182
  108. package/components/radio-button/index.umd.cjs +1 -1
  109. package/components/rate/index.esm.js +106 -106
  110. package/components/rate/index.umd.cjs +1 -1
  111. package/components/response-layout/index.esm.js +409 -409
  112. package/components/response-layout/index.umd.cjs +1 -1
  113. package/components/response-layout-editor/index.esm.js +1488 -1478
  114. package/components/response-layout-editor/index.umd.cjs +1 -1
  115. package/components/response-toolbar/index.esm.js +779 -776
  116. package/components/response-toolbar/index.umd.cjs +1 -1
  117. package/components/schema-selector/index.esm.js +1765 -1762
  118. package/components/schema-selector/index.umd.cjs +5 -5
  119. package/components/search-box/index.esm.js +114 -114
  120. package/components/search-box/index.umd.cjs +1 -1
  121. package/components/section/index.esm.js +1184 -1181
  122. package/components/section/index.umd.cjs +1 -1
  123. package/components/smoke-detector/index.esm.js +163 -163
  124. package/components/smoke-detector/index.umd.cjs +1 -1
  125. package/components/sort-condition-editor/index.esm.js +927 -916
  126. package/components/sort-condition-editor/index.umd.cjs +3 -3
  127. package/components/splitter/index.esm.js +3 -3
  128. package/components/splitter/index.umd.cjs +1 -1
  129. package/components/step/index.esm.js +133 -133
  130. package/components/step/index.umd.cjs +1 -1
  131. package/components/switch/index.esm.js +76 -72
  132. package/components/switch/index.umd.cjs +1 -1
  133. package/components/tabs/index.esm.js +1527 -1524
  134. package/components/tabs/index.umd.cjs +2 -2
  135. package/components/tags/index.esm.js +93 -93
  136. package/components/tags/index.umd.cjs +1 -1
  137. package/components/text/index.esm.js +138 -138
  138. package/components/text/index.umd.cjs +1 -1
  139. package/components/textarea/index.esm.js +361 -361
  140. package/components/textarea/index.umd.cjs +2 -2
  141. package/components/tooltip/index.esm.js +173 -171
  142. package/components/tooltip/index.umd.cjs +1 -1
  143. package/components/transfer/index.esm.js +130 -134
  144. package/components/transfer/index.umd.cjs +4 -4
  145. package/components/tree-grid/index.esm.js +25 -25
  146. package/components/tree-grid/index.umd.cjs +1 -1
  147. package/components/tree-view/index.esm.js +1746 -1743
  148. package/components/tree-view/index.umd.cjs +1 -1
  149. package/components/uploader/index.esm.js +170 -170
  150. package/components/uploader/index.umd.cjs +2 -2
  151. package/components/verify-detail/index.esm.js +196 -196
  152. package/components/verify-detail/index.umd.cjs +1 -1
  153. package/components/video/index.esm.js +8 -8
  154. package/components/video/index.umd.cjs +1 -1
  155. package/components/weather/index.esm.js +9 -9
  156. package/components/weather/index.umd.cjs +2 -2
  157. package/farris.all.esm.js +16987 -17002
  158. package/farris.all.umd.cjs +27 -27
  159. package/package.json +1 -1
  160. package/types/lookup/src/composition/use-dialog.d.ts +2 -0
  161. package/types/lookup/src/composition/use-input-change.d.ts +1 -0
  162. package/components/time-picker/index.css +0 -1
  163. package/components/time-picker/index.esm.js +0 -9793
  164. package/components/time-picker/index.umd.cjs +0 -1
  165. package/components/time-picker/package.json +0 -8
  166. package/components/time-picker/style.js +0 -6
  167. package/designer/button-edit/index.css +0 -1
  168. package/designer/button-edit/index.esm.js +0 -4856
  169. package/designer/button-edit/index.umd.cjs +0 -1
  170. package/designer/checkbox/index.esm.js +0 -250
  171. package/designer/checkbox/index.umd.cjs +0 -1
  172. package/designer/checkbox-group/index.esm.js +0 -377
  173. package/designer/checkbox-group/index.umd.cjs +0 -1
  174. package/designer/data-grid/index.css +0 -1
  175. package/designer/data-grid/index.esm.js +0 -15413
  176. package/designer/data-grid/index.umd.cjs +0 -23
  177. package/designer/data-view/index.esm.js +0 -854
  178. package/designer/data-view/index.umd.cjs +0 -38
  179. package/designer/drawer/index.css +0 -1
  180. package/designer/drawer/index.esm.js +0 -525
  181. package/designer/drawer/index.umd.cjs +0 -1
  182. package/designer/farris-designer.all.esm.js +0 -22320
  183. package/designer/farris-designer.all.umd.cjs +0 -34
  184. package/designer/index.css +0 -1
  185. package/designer/input-group/index.esm.js +0 -1098
  186. package/designer/input-group/index.umd.cjs +0 -1
  187. package/designer/list-view/index.css +0 -1
  188. package/designer/list-view/index.esm.js +0 -4675
  189. package/designer/list-view/index.umd.cjs +0 -40
  190. package/designer/radio-group/index.css +0 -1
  191. package/designer/radio-group/index.esm.js +0 -6980
  192. package/designer/radio-group/index.umd.cjs +0 -1
  193. package/designer/tree-grid/index.esm.js +0 -1099
  194. package/designer/tree-grid/index.umd.cjs +0 -1
@@ -1,8 +1,8 @@
1
1
  var ge = Object.defineProperty;
2
2
  var ve = (t, e, n) => e in t ? ge(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3
- var I = (t, e, n) => ve(t, typeof e != "symbol" ? e + "" : e, n);
3
+ var F = (t, e, n) => ve(t, typeof e != "symbol" ? e + "" : e, n);
4
4
  import { ref as B, computed as D, defineComponent as Z, createVNode as T, inject as W, onMounted as be } from "vue";
5
- import { isPlainObject as J, cloneDeep as G } from "lodash-es";
5
+ import { cloneDeep as G, isPlainObject as J } from "lodash-es";
6
6
  import { UseTemplateDragAndDropRules as he, useDragulaCommonRule as ye, DgControl as j, useDesignerComponent as Ce } from "../designer-canvas/index.esm.js";
7
7
  import { FormBindingType as Q } from "../property-panel/index.esm.js";
8
8
  import { useDesignerRules as X } from "../dynamic-form/index.esm.js";
@@ -83,7 +83,7 @@ function H(t, e) {
83
83
  }
84
84
  return { getSchemaByType: s, resolveSchemaWithDefaultValue: u, resolveSchemaToProps: c, mappingSchemaToProps: g, setDesignerContext: m };
85
85
  }
86
- const K = {}, ee = {}, { resolveSchemaWithDefaultValue: we, resolveSchemaToProps: xe, mappingSchemaToProps: Ee } = H(K, ee);
86
+ const K = {}, ee = {}, { getSchemaByType: wt, resolveSchemaWithDefaultValue: we, resolveSchemaToProps: xe, mappingSchemaToProps: Ee, setDesignerContext: xt } = H(K, ee);
87
87
  function Me(t = {}) {
88
88
  function e(u, m, a, p) {
89
89
  if (typeof a == "number")
@@ -138,14 +138,14 @@ function Me(t = {}) {
138
138
  }
139
139
  return { parseValueSchema: c };
140
140
  }
141
- const Fe = {
141
+ const Se = {
142
142
  convertTo: (t, e, n, r) => {
143
143
  t.appearance || (t.appearance = {}), t.appearance[e] = n;
144
144
  },
145
145
  convertFrom: (t, e, n) => t.appearance ? t.appearance[e] : t[e]
146
- }, Ie = {
146
+ }, Fe = {
147
147
  convertFrom: (t, e, n) => t.buttons && t.buttons.length ? `共 ${t.buttons.length} 项` : "无"
148
- }, Se = {
148
+ }, Ie = {
149
149
  convertTo: (t, e, n, r) => {
150
150
  t.editor && (t.editor[e] = n);
151
151
  },
@@ -203,12 +203,12 @@ const Fe = {
203
203
  const r = t.editor && t.editor[e] ? t.editor[e] : t[e];
204
204
  return ((o = z[r]) == null ? void 0 : o.name) || r;
205
205
  }
206
- }, Ve = {
206
+ }, Pe = {
207
207
  convertTo: (t, e, n, r) => {
208
208
  t[e] = t[e];
209
209
  },
210
210
  convertFrom: (t, e, n) => t.editor ? n.getRealEditorType(t.editor.type) : ""
211
- }, Pe = {
211
+ }, Ve = {
212
212
  convertTo: (t, e, n, r) => {
213
213
  (t.type === "data-grid-column" || t.type === "tree-grid-column") && (t.formatter ? t.formatter[e] = n : t.formatter = {
214
214
  [e]: n
@@ -381,13 +381,13 @@ const Fe = {
381
381
  };
382
382
  function te(t, e, n) {
383
383
  const r = /* @__PURE__ */ new Map([
384
- ["/converter/appearance.converter", Fe],
385
- ["/converter/buttons.converter", Ie],
386
- ["/converter/property-editor.converter", Se],
384
+ ["/converter/appearance.converter", Se],
385
+ ["/converter/buttons.converter", Fe],
386
+ ["/converter/property-editor.converter", Ie],
387
387
  ["/converter/items-count.converter", Ae],
388
388
  ["/converter/type.converter", Te],
389
- ["/converter/change-editor.converter", Ve],
390
- ["/converter/change-formatter.converter", Pe],
389
+ ["/converter/change-editor.converter", Pe],
390
+ ["/converter/change-formatter.converter", Ve],
391
391
  ["/converter/column-command.converter", ke],
392
392
  ["/converter/column-option.converter", Ne],
393
393
  ["/converter/summary.converter", Oe],
@@ -442,14 +442,14 @@ function te(t, e, n) {
442
442
  }
443
443
  function m(l, d, v, f, h, x = "", w = "") {
444
444
  return Object.keys(l).map((C) => {
445
- const M = B(1), F = C, b = l[C], S = Object.keys(b), R = b.title, P = b.type, k = o.get(P) || { type: "input-group", enableClear: !1 }, V = b.editor ? Object.assign({}, k, b.editor) : Object.assign({}, k), U = g(S, b, d), $ = c(S, b, d);
446
- V.readonly = V.readonly === void 0 ? $() : V.readonly;
445
+ const M = B(1), S = C, b = l[C], I = Object.keys(b), R = b.title, V = b.type, k = o.get(V) || { type: "input-group", enableClear: !1 }, P = b.editor ? Object.assign({}, k, b.editor) : Object.assign({}, k), U = g(I, b, d), $ = c(I, b, d);
446
+ P.readonly = P.readonly === void 0 ? $() : P.readonly;
447
447
  const A = b.type === "cascade" ? m(b.properties, d, v, f, h, x, w) : [], le = !0;
448
448
  let N = u(b, w);
449
449
  const ce = D({
450
450
  get() {
451
451
  if (M.value) {
452
- if (["class", "style"].find((me) => me === F) && !N && (N = r.get("/converter/appearance.converter") || null), N && N.convertFrom)
452
+ if (["class", "style"].find((me) => me === S) && !N && (N = r.get("/converter/appearance.converter") || null), N && N.convertFrom)
453
453
  return N.convertFrom(v, C, h, x);
454
454
  const O = v[C];
455
455
  return Object.prototype.hasOwnProperty.call(b, "defaultValue") && (O === void 0 || typeof O == "string" && O === "") ? b.type === "boolean" ? b.defaultValue : b.defaultValue || "" : O;
@@ -459,8 +459,8 @@ function te(t, e, n) {
459
459
  set(O) {
460
460
  M.value += 1, N && N.convertTo ? (N.convertTo(f, C, O, h, x), N.convertTo(v, C, O, h, x)) : (f[C] = O, v[C] = O);
461
461
  }
462
- }), { refreshPanelAfterChanged: ue, description: de, isExpand: fe, parentPropertyID: pe } = b, _ = { propertyID: F, propertyName: R, propertyType: P, propertyValue: ce, editor: V, visible: U, readonly: $, cascadeConfig: A, hideCascadeTitle: le, refreshPanelAfterChanged: ue, description: de, isExpand: fe, parentPropertyID: pe };
463
- return d[F] = _, _;
462
+ }), { refreshPanelAfterChanged: ue, description: de, isExpand: fe, parentPropertyID: pe } = b, _ = { propertyID: S, propertyName: R, propertyType: V, propertyValue: ce, editor: P, visible: U, readonly: $, cascadeConfig: A, hideCascadeTitle: le, refreshPanelAfterChanged: ue, description: de, isExpand: fe, parentPropertyID: pe };
463
+ return d[S] = _, _;
464
464
  });
465
465
  }
466
466
  function a(l, d, v = {}) {
@@ -471,13 +471,13 @@ function te(t, e, n) {
471
471
  }) : [];
472
472
  }
473
473
  function p(l, d, v, f, h = "") {
474
- const x = d.$ref.schema, w = d.$ref.converter, E = v[x], C = E.type, M = n(E), F = {}, b = t[C];
474
+ const x = d.$ref.schema, w = d.$ref.converter, E = v[x], C = E.type, M = n(E), S = {}, b = t[C];
475
475
  if (b && b.categories) {
476
- const S = b.categories[l], R = S == null ? void 0 : S.title;
477
- w && Object.keys(S.properties).forEach((V) => {
478
- S.properties[V].$converter = w;
476
+ const I = b.categories[l], R = I == null ? void 0 : I.title;
477
+ w && Object.keys(I.properties).forEach((P) => {
478
+ I.properties[P].$converter = w;
479
479
  });
480
- const P = (S == null ? void 0 : S.properties) || {}, k = m(P, F, M, E, f, h);
480
+ const V = (I == null ? void 0 : I.properties) || {}, k = m(V, S, M, E, f, h);
481
481
  return { categoryId: l, categoryName: R, properties: k };
482
482
  }
483
483
  return { categoryId: l, categoryName: "", properties: [] };
@@ -487,14 +487,14 @@ function te(t, e, n) {
487
487
  let C = h || t[x];
488
488
  if (C && Object.keys(C).length === 0 && v && v.getPropConfig && (C = v.getPropConfig(f)), C && C.categories) {
489
489
  const M = [];
490
- return Object.keys(C.categories).map((F) => {
491
- const b = C.categories[F];
490
+ return Object.keys(C.categories).map((S) => {
491
+ const b = C.categories[S];
492
492
  if (b.$ref) {
493
- M.push(p(F, b, l, d, f));
493
+ M.push(p(S, b, l, d, f));
494
494
  return;
495
495
  }
496
- const S = b == null ? void 0 : b.title, R = b == null ? void 0 : b.tabId, P = b == null ? void 0 : b.tabName, k = b == null ? void 0 : b.hide, V = b == null ? void 0 : b.hideTitle, U = m(b.properties || {}, E, w, l, d, f, b.$converter), { setPropertyRelates: $ } = b, A = b == null ? void 0 : b.parentPropertyID;
497
- M.push({ categoryId: F, categoryName: S, tabId: R, tabName: P, hide: k, properties: U, hideTitle: V, setPropertyRelates: $, parentPropertyID: A });
496
+ const I = b == null ? void 0 : b.title, R = b == null ? void 0 : b.tabId, V = b == null ? void 0 : b.tabName, k = b == null ? void 0 : b.hide, P = b == null ? void 0 : b.hideTitle, U = m(b.properties || {}, E, w, l, d, f, b.$converter), { setPropertyRelates: $ } = b, A = b == null ? void 0 : b.parentPropertyID;
497
+ M.push({ categoryId: S, categoryName: I, tabId: R, tabName: V, hide: k, properties: U, hideTitle: P, setPropertyRelates: $, parentPropertyID: A });
498
498
  }), M;
499
499
  }
500
500
  return [];
@@ -507,7 +507,7 @@ function te(t, e, n) {
507
507
  }
508
508
  const ne = {}, re = {};
509
509
  te(ne, re, we);
510
- const oe = {}, ie = {}, { resolveSchemaWithDefaultValue: We } = H(oe, ie), se = {}, ae = {};
510
+ const oe = {}, ie = {}, { getSchemaByType: Et, resolveSchemaWithDefaultValue: We, resolveSchemaToProps: Mt, mappingSchemaToProps: St, setDesignerContext: Ft } = H(oe, ie), se = {}, ae = {};
511
511
  te(se, ae, We);
512
512
  function Je(t, e, n = /* @__PURE__ */ new Map(), r = (i, g, c, u) => g, o = {}, s = (i) => i) {
513
513
  return K[e.title] = e, ee[e.title] = r, ne[e.title] = o, re[e.title] = s, oe[e.title] = e, ie[e.title] = r, se[e.title] = o, ae[e.title] = s, (i = {}, g = !0) => {
@@ -660,7 +660,7 @@ function ct(t) {
660
660
  }
661
661
  class ut {
662
662
  constructor(e) {
663
- I(this, "sessionVariables", [
663
+ F(this, "sessionVariables", [
664
664
  {
665
665
  key: "CurrentSysOrgName",
666
666
  name: "当前组织Name",
@@ -697,7 +697,7 @@ class ut {
697
697
  description: "当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"
698
698
  }
699
699
  ]);
700
- I(this, "expressionNames", {
700
+ F(this, "expressionNames", {
701
701
  compute: "计算表达式",
702
702
  dependency: "依赖表达式",
703
703
  validate: "验证表达式",
@@ -706,7 +706,7 @@ class ut {
706
706
  readonly: "只读表达式",
707
707
  required: "必填表达式"
708
708
  });
709
- I(this, "getExpressionConverter", (e, n) => ({
709
+ F(this, "getExpressionConverter", (e, n) => ({
710
710
  convertFrom: (r, o, s, i) => {
711
711
  const g = s.getExpressionRuleValue(e, n || o);
712
712
  return g && g.value || "";
@@ -927,19 +927,19 @@ class ut {
927
927
  }
928
928
  class dt {
929
929
  constructor(e, n) {
930
- I(this, "componentId");
931
- I(this, "viewModelId");
932
- I(this, "eventsEditorUtils");
933
- I(this, "formSchemaUtils");
934
- I(this, "formMetadataConverter");
935
- I(this, "designViewModelUtils");
936
- I(this, "designViewModelField");
937
- I(this, "controlCreatorUtils");
938
- I(this, "designerHostService");
939
- I(this, "designerContext");
940
- I(this, "schemaService", null);
941
- I(this, "metadataService", null);
942
- I(this, "propertyConfig", {
930
+ F(this, "componentId");
931
+ F(this, "viewModelId");
932
+ F(this, "eventsEditorUtils");
933
+ F(this, "formSchemaUtils");
934
+ F(this, "formMetadataConverter");
935
+ F(this, "designViewModelUtils");
936
+ F(this, "designViewModelField");
937
+ F(this, "controlCreatorUtils");
938
+ F(this, "designerHostService");
939
+ F(this, "designerContext");
940
+ F(this, "schemaService", null);
941
+ F(this, "metadataService", null);
942
+ F(this, "propertyConfig", {
943
943
  type: "object",
944
944
  categories: {}
945
945
  });
@@ -1267,8 +1267,8 @@ function pt(t, e) {
1267
1267
  const { sourceElement: h } = f, { componentInstance: x } = h, w = e == null ? void 0 : e.formSchemaUtils;
1268
1268
  if (!w)
1269
1269
  return !0;
1270
- const E = w.getComponentById(x.value.belongedComponentId), C = w.getViewModelById(E.viewModel), M = w.getComponentById(t.componentInstance.value.belongedComponentId), F = w.getViewModelById(M.viewModel);
1271
- return C != null && C.id && (F != null && F.id) && C.id !== F.id ? C.bindTo === F.bindTo : !0;
1270
+ const E = w.getComponentById(x.value.belongedComponentId), C = w.getViewModelById(E.viewModel), M = w.getComponentById(t.componentInstance.value.belongedComponentId), S = w.getViewModelById(M.viewModel);
1271
+ return C != null && C.id && (S != null && S.id) && C.id !== S.id ? C.bindTo === S.bindTo : !0;
1272
1272
  }
1273
1273
  function m(f) {
1274
1274
  const { bindingTargetId: h } = f;
@@ -1287,16 +1287,16 @@ function pt(t, e) {
1287
1287
  return new ft(f, e).getPropertyConfig(o);
1288
1288
  }
1289
1289
  function l(f) {
1290
- var F, b, S, R, P;
1290
+ var S, b, I, R, V;
1291
1291
  if (!e)
1292
1292
  return;
1293
1293
  const { formSchemaUtils: h, designViewModelUtils: x } = e, w = f.componentInstance, E = w.value.parent, C = h.getComponentById(w.value.belongedComponentId), M = x.getDgViewModel(C.viewModel);
1294
- switch (E && ((F = E.schema) == null ? void 0 : F.type)) {
1294
+ switch (E && ((S = E.schema) == null ? void 0 : S.type)) {
1295
1295
  case j.fieldset.type:
1296
1296
  case j["response-form"].type:
1297
1297
  case j["response-layout-item"].type: {
1298
- const k = { groupId: o.id, groupName: o.title }, V = (S = (b = w.value.schema) == null ? void 0 : b.binding) == null ? void 0 : S.type, U = (P = (R = w.value.schema) == null ? void 0 : R.binding) == null ? void 0 : P.field;
1299
- switch (V) {
1298
+ const k = { groupId: o.id, groupName: o.title }, P = (I = (b = w.value.schema) == null ? void 0 : b.binding) == null ? void 0 : I.type, U = (V = (R = w.value.schema) == null ? void 0 : R.binding) == null ? void 0 : V.field;
1299
+ switch (P) {
1300
1300
  case Q.Form: {
1301
1301
  M.changeField(U, k);
1302
1302
  break;
@@ -1325,8 +1325,8 @@ function pt(t, e) {
1325
1325
  if (f.componentCategory === "input") {
1326
1326
  const { label: C } = f;
1327
1327
  let M;
1328
- const F = e == null ? void 0 : e.controlCreatorUtils;
1329
- (x = f.bindingSourceContext) != null && x.entityFieldNode ? M = F.setFormFieldProperty((w = f.bindingSourceContext) == null ? void 0 : w.entityFieldNode, h == null ? void 0 : h.type) : (M = F.createFormGroupWithoutField(h == null ? void 0 : h.type), M.label = C);
1328
+ const S = e == null ? void 0 : e.controlCreatorUtils;
1329
+ (x = f.bindingSourceContext) != null && x.entityFieldNode ? M = S.setFormFieldProperty((w = f.bindingSourceContext) == null ? void 0 : w.entityFieldNode, h == null ? void 0 : h.type) : (M = S.createFormGroupWithoutField(h == null ? void 0 : h.type), M.label = C);
1330
1330
  const b = X(t, e);
1331
1331
  return b.resolveFormGroupAppearance(M), b.syncFieldToViewModel(f, (E = M.editor) == null ? void 0 : E.type, o.id, o.title), M;
1332
1332
  }
@@ -1396,7 +1396,7 @@ const mt = /* @__PURE__ */ Z({
1396
1396
  style: a.value
1397
1397
  }, [e.slots.default && e.slots.default()])]);
1398
1398
  }
1399
- }), wt = {
1399
+ }), It = {
1400
1400
  install(t) {
1401
1401
  t.component(q.name, q);
1402
1402
  },
@@ -1409,7 +1409,7 @@ const mt = /* @__PURE__ */ Z({
1409
1409
  };
1410
1410
  export {
1411
1411
  q as Fieldset,
1412
- wt as default,
1412
+ It as default,
1413
1413
  it as fieldsetDesignerProps,
1414
1414
  L as fieldsetProps,
1415
1415
  Y as propsResolver
@@ -1 +1 @@
1
- (function(S,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("vue"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js"),require("../dynamic-form/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../designer-canvas/index.umd.js","../property-panel/index.umd.js","../dynamic-form/index.umd.js"],h):(S=typeof globalThis<"u"?globalThis:S||self,h(S.fieldset={},S.Vue,S.LodashES,S.designerCanvas,S.propertyPanel,S.dynamicForm))})(this,function(S,h,P,j,L,W){"use strict";var Ke=Object.defineProperty;var et=(S,h,P)=>h in S?Ke(S,h,{enumerable:!0,configurable:!0,writable:!0,value:P}):S[h]=P;var I=(S,h,P)=>et(S,typeof h!="symbol"?h+"":h,P);function J(t,e){let n;function r(a){const{properties:p,title:C,ignore:c}=a,u=c&&Array.isArray(c),v=Object.keys(p).reduce((f,y)=>((!u||!c.find(M=>M===y))&&(f[y]=p[y].type==="object"&&p[y].properties?r(p[y]):P.cloneDeep(p[y].default)),f),{});if(C&&(!u||!c.find(f=>f==="id"))){const f=C.toLowerCase().replace(/-/g,"_");v.id=`${f}_${Math.random().toString().slice(2,6)}`}return v}function o(a){const{properties:p,title:C,required:c}=a;if(c&&Array.isArray(c)){const u=c.reduce((v,f)=>(v[f]=p[f].type==="object"&&p[f].properties?r(p[f]):P.cloneDeep(p[f].default),v),{});if(C&&c.find(v=>v==="id")){const v=C.toLowerCase().replace(/-/g,"_");u.id=`${v}_${Math.random().toString().slice(2,6)}`}return u}return{type:C}}function s(a,p={},C){const c=t[a];if(c){let u=o(c);const v=e[a];return u=v?v({getSchemaByType:s},u,p,C):u,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(u),u}return null}function i(a,p){const C=r(p);return Object.keys(C).reduce((c,u)=>(Object.prototype.hasOwnProperty.call(a,u)&&(c[u]&&P.isPlainObject(c[u])&&P.isPlainObject(a[u]||!a[u])?Object.assign(c[u],a[u]||{}):c[u]=a[u]),c),C),C}function g(a,p){return Object.keys(a).filter(c=>a[c]!=null).reduce((c,u)=>{if(p.has(u)){const v=p.get(u);if(typeof v=="string")c[v]=a[u];else{const f=v(u,a[u],a);Object.assign(c,f)}}else c[u]=a[u];return c},{})}function l(a,p,C=new Map){const c=i(a,p);return g(c,C)}function d(a){var C;const p=a.type;if(p){const c=t[p];if(!c)return a;const u=i(a,c),v=((C=a.editor)==null?void 0:C.type)||"";if(v){const f=t[v],y=i(a.editor,f);u.editor=y}return u}return a}function m(a){n=a}return{getSchemaByType:s,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:l,mappingSchemaToProps:g,setDesignerContext:m}}const Q={},X={},{resolveSchemaWithDefaultValue:ie,resolveSchemaToProps:se,mappingSchemaToProps:ae}=J(Q,X);function ce(t={}){function e(d,m,a,p){if(typeof a=="number")return p[d].length===a;if(typeof a=="object"){const C=Object.keys(a)[0],c=a[C];if(C==="not")return Number(p[d].length)!==Number(c);if(C==="moreThan")return Number(p[d].length)>=Number(c);if(C==="lessThan")return Number(p[d].length)<=Number(c)}return!1}function n(d,m,a,p){return p[d]&&p[d].propertyValue&&String(p[d].propertyValue.value)===String(a)}const r=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((d,m)=>(d.set(m,t[m]),d),r);function o(d,m){const a=d;return typeof m=="number"?[{target:a,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:a,operator:"getProperty",param:d,value:!!m}]:typeof m=="object"?Object.keys(m).map(p=>{if(p==="length")return{target:a,operator:"length",param:null,value:m[p]};const C=p,c=m[p];return{target:a,operator:"getProperty",param:C,value:c}}):[]}function s(d){return Object.keys(d).reduce((a,p)=>{const C=o(p,d[p]);return a.push(...C),a},[])}function i(d,m){if(r.has(d.operator)){const a=r.get(d.operator);return a&&a(d.target,d.param,d.value,m)||!1}return!1}function g(d,m){return s(d).reduce((C,c)=>C&&i(c,m),!0)}function l(d,m){const a=Object.keys(d),p=a.includes("allOf"),C=a.includes("anyOf"),c=p||C,f=(c?d[c?p?"allOf":"anyOf":"allOf"]:[d]).map(M=>g(M,m));return p?!f.includes(!1):f.includes(!0)}return{parseValueSchema:l}}const le={convertTo:(t,e,n,r)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},de={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},ue={convertTo:(t,e,n,r)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},G={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},fe={convertFrom:(t,e,n)=>{var o;const r=t.editor&&t.editor[e]?t.editor[e]:t[e];return((o=G[r])==null?void 0:o.name)||r}},pe={convertTo:(t,e,n,r)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},me={convertTo:(t,e,n,r)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t.formatter?t.formatter[e]=n:t.formatter={[e]:n})},convertFrom:(t,e,n)=>{if(t.formatter){if(e==="trueText")return t.formatter.trueText;if(e==="falseText")return t.formatter.falseText;if(e==="prefix")return t.formatter.prefix;if(e==="suffix")return t.formatter.suffix;if(e==="precision")return t.formatter.precision;if(e==="decimal")return t.formatter.decimal;if(e==="thousand")return t.formatter.thousand;if(e==="dateFormat")return t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none"}return"none"}},ge={convertTo:(t,e,n,r)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enable"&&n&&(t.command.commands||(t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(t,e,n)=>t.command&&e==="enable"?t.command.enable:""},ve={convertTo:(t,e,n,r)=>{t.column?t.column[e]=n:t.column={[e]:n},e==="fitColumns"&&n&&(t.column.fitMode||(t.column.fitMode="average"))},convertFrom:(t,e,n)=>{if(t.column){if(e==="fitColumns")return t.column.fitColumns;if(e==="fitMode")return t.column.fitMode}return""}},be={convertTo:(t,e,n,r)=>{t.summary?t.summary[e]=n:t.summary={[e]:n},e==="enable"&&n&&(t.summary?t.summary.groupFields||(t.summary.groupFields=[]):t.summary={enable:n,groupFields:[]})},convertFrom:(t,e,n)=>t.summary&&e==="enable"?t.summary.enable:t.type==="data-grid-column"?t.enableSummary===void 0?!1:t.enableSummary:""},ye={convertTo:(t,e,n,r)=>{t.group?t.group[e]=n:t.group={[e]:n},e==="enable"&&n&&(t.group?t.group.groupFields||(t.group.groupFields=[]):t.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(t,e,n)=>{if(t.group){if(e==="enable")return t.group.enable;if(e==="showSummary")return t.group.showSummary}}},he={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const r=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=r.bindingField,t.binding.field=r.id,t.binding.fullPath=r.path,t.path=r.bindingPath}}},Ce={convertTo:(t,e,n,r)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},we={convertTo:(t,e,n,r)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},xe={convertTo:(t,e,n,r)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>{var r,o;return e==="showCheckbox"?(r=t.selection)!=null&&r.multiSelect?!0:(o=t.selection)==null?void 0:o.showCheckbox:t.selection?t.selection[e]:t[e]}},Me={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},Ee={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},Fe={convertTo:(t,e,n,r)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},Se={convertFrom:(t,e,n)=>{var r,o;return(r=t.formatter)!=null&&r.data&&e==="formatterEnumData"&&!t.formatterEnumData?(o=t.formatter)==null?void 0:o.data:t.formatterEnumData}},Ve={convertTo:(t,e,n,r)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var r,o;if(e==="mode")return((r=t.sort)==null?void 0:r.mode)||"client";if(e==="multiSort")return!!((o=t.sort)!=null&&o.multiSort)}},Ie={convertTo:(t,e,n,r)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var r;if(e==="mode")return((r=t.filter)==null?void 0:r.mode)||"client"}},Te={convertTo:(t,e,n,r)=>{t.rowOption?t.rowOption[e]=n:t.rowOption={[e]:n}},convertFrom:(t,e,n)=>{if(t.rowOption){if(e==="customRowStyle")return t.rowOption.customRowStyle;if(e==="customCellStyle")return t.rowOption.customCellStyle}return""}};function Y(t,e,n){const r=new Map([["/converter/appearance.converter",le],["/converter/buttons.converter",de],["/converter/property-editor.converter",ue],["/converter/items-count.converter",Me],["/converter/type.converter",fe],["/converter/change-editor.converter",pe],["/converter/change-formatter.converter",me],["/converter/column-command.converter",ge],["/converter/column-option.converter",ve],["/converter/summary.converter",be],["/converter/group.converter",ye],["/converter/form-group-label.converter",Ee],["/converter/field-selector.converter",he],["/converter/pagination.converter",Ce],["/converter/row-number.converter",we],["/converter/grid-selection.converter",xe],["/converter/size.converter",Fe],["/converter/change-formatter-enum.converter",Se],["/converter/grid-sort.converter",Ve],["/converter/grid-filter.converter",Ie],["/converter/row-option.converter",Te]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),s=ce();function i(c,u){return()=>s.parseValueSchema(c,u)}function g(c,u,v){return c.includes("visible")&&u.visible!==void 0?typeof u.visible=="boolean"?()=>!!u.visible:u.visible===void 0?!0:i(u.visible,v):()=>!0}function l(c,u,v){return c.includes("readonly")&&u.readonly!==void 0?typeof u.readonly=="boolean"?()=>!!u.readonly:i(u.readonly,v):()=>!1}function d(c,u){const v=c.$converter||u;return typeof v=="string"&&v&&r.has(v)?r.get(v)||null:v||null}function m(c,u,v,f,y,M="",x=""){return Object.keys(c).map(w=>{const F=h.ref(1),V=w,b=c[w],T=Object.keys(b),U=b.title,k=b.type,O=o.get(k)||{type:"input-group",enableClear:!1},N=b.editor?Object.assign({},O,b.editor):Object.assign({},O),D=g(T,b,u),q=l(T,b,u);N.readonly=N.readonly===void 0?q():N.readonly;const _=b.type==="cascade"?m(b.properties,u,v,f,y,M,x):[],We=!0;let R=d(b,x);const Je=h.computed({get(){if(F.value){if(["class","style"].find(He=>He===V)&&!R&&(R=r.get("/converter/appearance.converter")||null),R&&R.convertFrom)return R.convertFrom(v,w,y,M);const B=v[w];return Object.prototype.hasOwnProperty.call(b,"defaultValue")&&(B===void 0||typeof B=="string"&&B==="")?b.type==="boolean"?b.defaultValue:b.defaultValue||"":B}return null},set(B){F.value+=1,R&&R.convertTo?(R.convertTo(f,w,B,y,M),R.convertTo(v,w,B,y,M)):(f[w]=B,v[w]=B)}}),{refreshPanelAfterChanged:Qe,description:Xe,isExpand:Ye,parentPropertyID:Ze}=b,oe={propertyID:V,propertyName:U,propertyType:k,propertyValue:Je,editor:N,visible:D,readonly:q,cascadeConfig:_,hideCascadeTitle:We,refreshPanelAfterChanged:Qe,description:Xe,isExpand:Ye,parentPropertyID:Ze};return u[V]=oe,oe})}function a(c,u,v={}){const f={},y=t[c];return y&&y.categories?Object.keys(y.categories).map(x=>{const E=y.categories[x],w=E==null?void 0:E.title,F=m(E.properties||{},f,{},v,u);return{categoryId:x,categoryName:w,properties:F}}):[]}function p(c,u,v,f,y=""){const M=u.$ref.schema,x=u.$ref.converter,E=v[M],w=E.type,F=n(E),V={},b=t[w];if(b&&b.categories){const T=b.categories[c],U=T==null?void 0:T.title;x&&Object.keys(T.properties).forEach(N=>{T.properties[N].$converter=x});const k=(T==null?void 0:T.properties)||{},O=m(k,V,F,E,f,y);return{categoryId:c,categoryName:U,properties:O}}return{categoryId:c,categoryName:"",properties:[]}}function C(c,u,v,f,y){const M=c.type,x=n(c),E={};let w=y||t[M];if(w&&Object.keys(w).length===0&&v&&v.getPropConfig&&(w=v.getPropConfig(f)),w&&w.categories){const F=[];return Object.keys(w.categories).map(V=>{const b=w.categories[V];if(b.$ref){F.push(p(V,b,c,u,f));return}const T=b==null?void 0:b.title,U=b==null?void 0:b.tabId,k=b==null?void 0:b.tabName,O=b==null?void 0:b.hide,N=b==null?void 0:b.hideTitle,D=m(b.properties||{},E,x,c,u,f,b.$converter),{setPropertyRelates:q}=b,_=b==null?void 0:b.parentPropertyID;F.push({categoryId:V,categoryName:T,tabId:U,tabName:k,hide:O,properties:D,hideTitle:N,setPropertyRelates:q,parentPropertyID:_})}),F}return[]}return{getPropertyConfigBySchema:C,getPropertyConfigByType:a,propertyConverterMap:r}}const Z={},H={};Y(Z,H,ie);const K={},ee={},{resolveSchemaWithDefaultValue:Pe}=J(K,ee),te={},ne={};Y(te,ne,Pe);function Ne(t,e,n=new Map,r=(i,g,l,d)=>g,o={},s=i=>i){return Q[e.title]=e,X[e.title]=r,Z[e.title]=o,H[e.title]=s,K[e.title]=e,ee[e.title]=r,te[e.title]=o,ne[e.title]=s,(i={},g=!0)=>{if(!g)return ae(i,n);const l=se(i,e,n),d=Object.keys(t).reduce((m,a)=>(m[a]=t[a].default,m),{});return Object.assign(d,l)}}function ke(t,e){return{customClass:e.class,customStyle:e.style}}const Oe=new Map([["appearance",ke]]),Re={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/fieldset.schema.json",title:"fieldset",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a fieldset",type:"string"},type:{description:"The type string of fieldset component",type:"string",default:"fieldset"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},title:{description:"The title for a fieldset",type:"string"},contents:{description:"",type:"array",default:[]}},required:["id","type","contents"]};function Be(t,e,n){return Object.assign(e,{appearance:{class:"col-12 px-0"},title:"分组标题"}),e}const $={customClass:{type:String,default:""},customStyle:{type:String,default:""},title:{type:String,default:""}},re=Object.assign({},$,{componentId:{type:String,default:""}}),z=Ne($,Re,Oe,Be),A=h.defineComponent({name:"FFieldset",props:$,emits:[],setup(t,e){const n=h.ref(!0);function r(g,l){g&&l&&l.split(" ").reduce((m,a)=>(m[a]=!0,m),g)}const o=h.computed(()=>{const g={"f-section-formgroup":!0,"f-state-collapse":!n.value};return r(g,t.customClass),g}),s=h.computed(()=>({btn:!0,"f-btn-mx":!0,"f-btn-collapse-expand":!0,"f-state-expand":n.value}));function i(){n.value=!n.value}return()=>h.createVNode("fieldset",{class:o.value,style:t.customStyle},[h.createVNode("legend",{class:"f-section-formgroup-legend"},[h.createVNode("div",{class:"f-header"},[h.createVNode("div",{class:"f-title",onClick:i},[t.title]),h.createVNode("div",{class:"f-toolbar",onClick:i},[h.createVNode("button",{class:s.value},null)])])]),h.createVNode("div",{class:"f-section-formgroup-inputs"},[e.slots.default&&e.slots.default()])])}}),Ue=h.ref(0);function je(){Ue.value++}const De=h.ref(0);function $e(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function r(l,d=""){return{path:d+l.code,field:l.id,fullPath:l.code}}function o(l,d=""){return e.getViewModelById(l).states.map(a=>r(a,d))}function s(l){const d=e.getRootViewModelId(),m=o(l);if(l===d)return m;const a=o(d,"root-component.");return[...m,...a]}function i(l){return l.binding&&l.binding.path||l.id||""}function g(){return n&&n.getRenderStates()||[]}return{getVariables:s,getControlName:i,getStateMachines:g}}class Ae{constructor(e){I(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);I(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});I(this,"getExpressionConverter",(e,n)=>({convertFrom:(r,o,s,i)=>{const g=s.getExpressionRuleValue(e,n||o);return g&&g.value||""},convertTo:(r,o,s,i,g)=>{var l;if(o==="dataPicking"&&(s!=null&&s.target)){const d=`${s.target}_dataPicking`;((l=s.rules)==null?void 0:l.some(a=>a.id===d&&a.value))?r.dictPickingExpressionId=d:delete r.dictPickingExpressionId}i.updateExpression(s)}}));this.formSchemaService=e}getExpressionRule(e,n){const r=this.formSchemaService.getExpressions();if(!r)return"";const o=r.find(i=>i.target===e);if(!o)return"";const s=o.rules.find(i=>i.type===n);return s||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const n=this.formSchemaService.getRootViewModelId(),r=this.formSchemaService.getViewModelById(n);if(!r||!r.states||r.states.length===0)return[];const o=[];return r.states.forEach(s=>{o.push({key:s.code,name:s.name,description:s.name,category:s.category})}),o}createTreeNode(e,n,r="label"){return{id:e.id,name:e.name,bindingPath:e[r],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const r=[];return e==null||e.forEach(o=>{var g;const s=this.createTreeNode(o,n);let i=[];(g=o.type)!=null&&g.fields&&(i=this.buildEntityFieldsTreeData(o.type.fields,[...n,o.label])),r.push({data:s,children:i,expanded:!0})}),r}buildChildEntityTreeData(e=null,n){const r=[];return e==null||e.forEach(o=>{var l,d;const s=this.createTreeNode(o,n);s.type="entity";const i=this.buildEntityFieldsTreeData((l=o.type)==null?void 0:l.fields,[...n,o.label]),g=this.buildChildEntityTreeData((d=o.type)==null?void 0:d.entities,[...n,o.label]);g!=null&&g.length&&(i==null||i.push(...g)),r.push({data:s,children:i||[],expanded:!0})}),r}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const r=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),o=this.buildChildEntityTreeData(n.type.entities,[n.code]);return o!=null&&o.length&&(r==null||r.push(...o)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:r||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,r){const o=r==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,n),i=this.getEntitiesAndVariables(),g={message:["validate","required","dataPicking"].includes(n)&&s?s.message:"",...i};return s.messageType!=null&&(g.messageType=s.messageType),g}buildRule(e,n,r,o){const{expression:s,message:i,messageType:g}=n,l={id:`${e}_${r}`,type:r,value:s};return(r==="validate"||r==="dataPicking"||r==="required")&&(l.message=i),r==="dataPicking"&&(l.messageType=g),r==="validate"&&o&&(l.elementId=o),l}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,r,o){const s=n==="Field"?e.binding.field:e.id,i=this.buildRule(s,r,o,e.type==="form-group"?e.id:"");let l=this.getExpressionData().find(m=>m.targetType===n&&m.target===s);const d=m=>m.value.trim()==="";if(l){const m=l.rules.find(a=>a.id===i.id);if(m)d(i)?l.rules=l.rules.filter(a=>a.id!==i.id):(Object.assign(m,i),o==="validate"&&e.type==="form-group"&&(m.elementId=e.id));else{if(d(i))return null;l.rules=l.rules||[],l.rules.push(i)}}else{if(d(i))return null;l={target:`${s}`,rules:[i],targetType:n}}return l}getExpressionEditorOptions(e,n,r,o){return r.reduce((s,i)=>{var l,d;const g=n==="Field"?(l=e==null?void 0:e.binding)==null?void 0:l.field:e.id;return s[i]={hide:n==="Field"?!!((d=e==null?void 0:e.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[i],type:"string",$converter:this.getExpressionConverter(g),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[i]}编辑器`,showMessage:i==="validate"||i==="dataPicking"||i==="required",showMessageType:i==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,i,n),onSubmitModal:m=>{const a=this.updateExpression(e,n,m,i);if(o){const p=this.buildRule(g,m,i);o(p)}return a}}},s},{})}getExpressionInfo(e,n,r){const o=n==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,r),i={value:s&&s.value,targetId:o,targetType:n,expressionType:r};return s&&s.message&&(i.message=s.message),i}getExpressionConfig(e,n,r=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,r,o)}}}getExpressionOptions(e,n,r){const o=this.getExpressionInfo(e,n,r);return{dialogTitle:`${this.expressionNames[r]}编辑器`,singleExpand:!1,showMessage:r==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,r,n),expressionInfo:o}}}class qe{constructor(e,n){I(this,"componentId");I(this,"viewModelId");I(this,"eventsEditorUtils");I(this,"formSchemaUtils");I(this,"formMetadataConverter");I(this,"designViewModelUtils");I(this,"designViewModelField");I(this,"controlCreatorUtils");I(this,"designerHostService");I(this,"designerContext");I(this,"schemaService",null);I(this,"metadataService",null);I(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService,this.schemaService=n.schemaService,this.designerContext=n.designerContext}getFormDesignerInstance(){var e,n;return(n=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:n.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var r;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(s=>s.id===n)}e.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:G[e.type]&&G[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},r){const o={title:"外观",description:"Appearance"},s={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const i in n)s[i]=Object.assign(s[i]||{},n[i]);return{...o,properties:{...s},setPropertyRelates(i,g){if(i){switch(i&&i.propertyID){case"class":case"style":{De.value++;break}}r&&r(i,e,g)}}}}getPropertyEditorParams(e,n=[],r="visible",o={},s={},i=""){const{getVariables:g,getControlName:l,getStateMachines:d}=$e(this.designerHostService),m=this.getRealTargetType(e),a=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],p={type:"property-editor",propertyTypes:a};return a.map(C=>{switch(C){case"Const":Object.assign(p,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":p.expressionConfig=this.getExpressionOptions(e,m,i||r);break;case"StateMachine":p.stateMachines=d();break;case"Variable":Object.assign(p,{controlName:l(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:g(this.viewModelId),onBeforeOpenVariables:c=>{c.value=g(this.viewModelId)}},s);break}}),p}getVisibleProperty(e,n=""){var s;let r=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?r=["Const","Expression"]:n==="form-group"&&!((s=e.binding)!=null&&s.field)&&(r=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,r,"visible")}}}getBehaviorConfig(e,n="",r={},o){const s={title:"行为",description:""},i=this.getVisibleProperty(e,n);for(const l in r)i[l]=Object.assign(i[l]||{},r[l]);const g=this;return{...s,properties:{...i},setPropertyRelates(l,d){if(l){switch(l.propertyID){case"disabled":case"readonly":case"visible":g.afterMutilEditorChanged(e,l);break}o&&o(l,d)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const r=n&&n.parent&&n.parent.schema;if(!r)return;const o=r.contents.findIndex(i=>i.id===e),s=P.cloneDeep(r.contents[o]);r.contents.splice(o,1),r.contents.splice(o,0,s),je()}addNewVariableToViewModel(e,n){const r=e.propertyValue;if(!(r&&typeof r=="object")||!(r.type==="Variable"&&r.isNewVariable))return;const i={id:r.field,category:"locale",code:r.fullPath,name:r.fullPath,type:r.newVariableType||"String"};delete r.newVariableType,delete r.isNewVariable,this.formSchemaUtils.getVariableByCode(i.code)||this.formSchemaUtils.getViewModelById(n).states.push(i)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:s,expressionInfo:i}=n,{targetId:g,targetType:l,expressionType:d,value:m,message:a}=i,p=this.formSchemaUtils.getModule();p.expressions=p.expressions||[];const{expressions:C}=p;let c=C.find(v=>v.target===g);c||(c={target:g,rules:[],targetType:l},C.push(c));const u=c.rules.find(v=>v.type===d);if(u)u.value=m,u.message=a;else{const v={id:s,type:d,value:m,message:a};c.rules.push(v)}delete n.expressionInfo}clearExpression(e,n){const r=e.propertyValue;if(r&&r.type==="Expression")return;const s=e.propertyID,i=this.formSchemaUtils.getExpressions(),g=n.binding?n.binding.field:n.id,l=i.find(d=>d.target===g);!l||!l.rules||(l.rules=l.rules.filter(d=>d.type!==s))}getExpressionOptions(e,n,r){return new Ae(this.formSchemaUtils).getExpressionOptions(e,n,r)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const n={};return n[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:r=>{var o;((o=r.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(r)}}},n}}class Ge extends qe{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e),this.propertyConfig}getAppearanceProperties(e){const n=this;return this.getAppearanceConfig(e,{title:{title:"标题",type:"string",description:"标题"}},(o,s,i)=>{switch(o&&o.propertyID){case"title":{o.needRefreshControlTree=!0,n.changeGroupNameInViewModel(s.id,o.propertyValue);break}}})}changeGroupNameInViewModel(e,n){var s;const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r&&r.changeGroupName(e,n);const o=this.formSchemaUtils.getViewModelById(this.viewModelId);(s=o==null?void 0:o.fields)!=null&&s.length&&o.fields.forEach(i=>{i.groupId===e&&(i.groupName=n)})}}function ze(t,e){const n=new j.UseTemplateDragAndDropRules,{canAccept:r}=n.getTemplateRule(t,e),o=t.schema;function s(){return"f-section-formgroup"}function i(){return!0}function g(){return!0}function l(){return!1}function d(f){const{sourceElement:y}=f,{componentInstance:M}=y,x=e==null?void 0:e.formSchemaUtils;if(!x)return!0;const E=x.getComponentById(M.value.belongedComponentId),w=x.getViewModelById(E.viewModel),F=x.getComponentById(t.componentInstance.value.belongedComponentId),V=x.getViewModelById(F.viewModel);return w!=null&&w.id&&(V!=null&&V.id)&&w.id!==V.id?w.bindTo===V.bindTo:!0}function m(f){const{bindingTargetId:y}=f;if(!e)return;const{formSchemaUtils:M,schemaService:x}=e,E=M.getComponentById(t.componentInstance.value.belongedComponentId),w=x.getFieldByIDAndVMID(y,E.viewModel);return!!(w!=null&&w.schemaField)}function a(f){return f.sourceType==="control"&&f.componentCategory==="input"?!0:f.sourceType==="move"&&f.componentType==="form-group"?d(f):f.sourceType==="field"&&f.componentCategory==="input"?m(f):!1}function p(f){return!(!j.useDragulaCommonRule().basalDragulaRuleForContainer(f,e)||!r||!a(f))}function C(f){return new Ge(f,e).getPropertyConfig(o)}function c(f){var V,b,T,U,k;if(!e)return;const{formSchemaUtils:y,designViewModelUtils:M}=e,x=f.componentInstance,E=x.value.parent,w=y.getComponentById(x.value.belongedComponentId),F=M.getDgViewModel(w.viewModel);switch(E&&((V=E.schema)==null?void 0:V.type)){case j.DgControl.fieldset.type:case j.DgControl["response-form"].type:case j.DgControl["response-layout-item"].type:{const O={groupId:o.id,groupName:o.title},N=(T=(b=x.value.schema)==null?void 0:b.binding)==null?void 0:T.type,D=(k=(U=x.value.schema)==null?void 0:U.binding)==null?void 0:k.field;switch(N){case L.FormBindingType.Form:{F.changeField(D,O);break}case L.FormBindingType.Variable:{y.modifyViewModelFieldById(w.viewModel,D,O,!0);break}}break}}}function u(f){if(!f||!f.componentInstance||!e)return;const y=f.componentInstance,M=y.value.schema;if(!M.binding||!M.binding.field)return;c(f);const{formSchemaUtils:x}=e,E=x.getViewModelIdByComponentId(y.value.belongedComponentId),w=x.getViewModelIdByComponentId(t.componentInstance.value.belongedComponentId);E!==w&&W.useDesignerRules(t,e).moveInputBetweenComponent(f)}function v(f,y){var M,x,E;if(f.componentCategory==="input"){const{label:w}=f;let F;const V=e==null?void 0:e.controlCreatorUtils;(M=f.bindingSourceContext)!=null&&M.entityFieldNode?F=V.setFormFieldProperty((x=f.bindingSourceContext)==null?void 0:x.entityFieldNode,y==null?void 0:y.type):(F=V.createFormGroupWithoutField(y==null?void 0:y.type),F.label=w);const b=W.useDesignerRules(t,e);return b.resolveFormGroupAppearance(F),b.syncFieldToViewModel(f,(E=F.editor)==null?void 0:E.type,o.id,o.title),F}return y}return{canAccepts:p,hideNestedPaddingInDesginerView:l,getPropsConfig:C,checkCanDeleteComponent:i,checkCanMoveComponent:g,onAcceptMovedChildElement:u,onResolveNewComponentSchema:v,getDesignerClass:s}}const _e=h.defineComponent({name:"FFieldsetDesign",props:re,emits:[],setup(t,e){const n=h.ref(),r=h.ref(),o=h.inject("design-item-context"),s=h.inject("designer-host-service"),i=ze(o,s),g=j.useDesignerComponent(r,o,i);e.expose(g.value),h.onMounted(()=>{r.value.componentInstance=g});const l=h.ref(!0);function d(c,u){c&&u&&u.split(" ").reduce((f,y)=>(f[y]=!0,f),c)}const m=h.computed(()=>{const c={"f-section-formgroup":!0,"f-state-collapse":!l.value};return d(c,t.customClass),c}),a=h.computed(()=>({display:l.value?"flex":"none","flex-wrap":"wrap"})),p=h.computed(()=>({btn:!0,"f-btn-mx":!0,"f-btn-collapse-expand":!0,"f-state-expand":l.value}));function C(){l.value=!l.value}return()=>h.createVNode("fieldset",{class:m.value,ref:n},[h.createVNode("legend",{class:"f-section-formgroup-legend"},[h.createVNode("div",{class:"f-header"},[h.createVNode("div",{class:"f-title",onClick:C},[t.title]),h.createVNode("div",{class:"f-toolbar",onClick:C},[h.createVNode("button",{class:p.value},null)])])]),h.createVNode("div",{"data-dragref":`${o.schema.id}-container`,ref:r,class:"f-section-formgroup-inputs drag-container",style:a.value},[e.slots.default&&e.slots.default()])])}}),Le={install(t){t.component(A.name,A)},register(t,e,n,r){t.fieldset=A,e.fieldset=z},registerDesigner(t,e,n){t.fieldset=_e,e.fieldset=z}};S.Fieldset=A,S.default=Le,S.fieldsetDesignerProps=re,S.fieldsetProps=$,S.propsResolver=z,Object.defineProperties(S,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(F,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("vue"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js"),require("../dynamic-form/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../designer-canvas/index.umd.js","../property-panel/index.umd.js","../dynamic-form/index.umd.js"],h):(F=typeof globalThis<"u"?globalThis:F||self,h(F.fieldset={},F.Vue,F.LodashES,F.designerCanvas,F.propertyPanel,F.dynamicForm))})(this,function(F,h,P,U,L,W){"use strict";var Ke=Object.defineProperty;var et=(F,h,P)=>h in F?Ke(F,h,{enumerable:!0,configurable:!0,writable:!0,value:P}):F[h]=P;var I=(F,h,P)=>et(F,typeof h!="symbol"?h+"":h,P);function J(t,e){let n;function r(a){const{properties:p,title:C,ignore:c}=a,u=c&&Array.isArray(c),v=Object.keys(p).reduce((f,y)=>((!u||!c.find(M=>M===y))&&(f[y]=p[y].type==="object"&&p[y].properties?r(p[y]):P.cloneDeep(p[y].default)),f),{});if(C&&(!u||!c.find(f=>f==="id"))){const f=C.toLowerCase().replace(/-/g,"_");v.id=`${f}_${Math.random().toString().slice(2,6)}`}return v}function o(a){const{properties:p,title:C,required:c}=a;if(c&&Array.isArray(c)){const u=c.reduce((v,f)=>(v[f]=p[f].type==="object"&&p[f].properties?r(p[f]):P.cloneDeep(p[f].default),v),{});if(C&&c.find(v=>v==="id")){const v=C.toLowerCase().replace(/-/g,"_");u.id=`${v}_${Math.random().toString().slice(2,6)}`}return u}return{type:C}}function s(a,p={},C){const c=t[a];if(c){let u=o(c);const v=e[a];return u=v?v({getSchemaByType:s},u,p,C):u,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(u),u}return null}function i(a,p){const C=r(p);return Object.keys(C).reduce((c,u)=>(Object.prototype.hasOwnProperty.call(a,u)&&(c[u]&&P.isPlainObject(c[u])&&P.isPlainObject(a[u]||!a[u])?Object.assign(c[u],a[u]||{}):c[u]=a[u]),c),C),C}function g(a,p){return Object.keys(a).filter(c=>a[c]!=null).reduce((c,u)=>{if(p.has(u)){const v=p.get(u);if(typeof v=="string")c[v]=a[u];else{const f=v(u,a[u],a);Object.assign(c,f)}}else c[u]=a[u];return c},{})}function l(a,p,C=new Map){const c=i(a,p);return g(c,C)}function d(a){var C;const p=a.type;if(p){const c=t[p];if(!c)return a;const u=i(a,c),v=((C=a.editor)==null?void 0:C.type)||"";if(v){const f=t[v],y=i(a.editor,f);u.editor=y}return u}return a}function m(a){n=a}return{getSchemaByType:s,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:l,mappingSchemaToProps:g,setDesignerContext:m}}const Q={},X={},{getSchemaByType:tt,resolveSchemaWithDefaultValue:ie,resolveSchemaToProps:se,mappingSchemaToProps:ae,setDesignerContext:nt}=J(Q,X);function ce(t={}){function e(d,m,a,p){if(typeof a=="number")return p[d].length===a;if(typeof a=="object"){const C=Object.keys(a)[0],c=a[C];if(C==="not")return Number(p[d].length)!==Number(c);if(C==="moreThan")return Number(p[d].length)>=Number(c);if(C==="lessThan")return Number(p[d].length)<=Number(c)}return!1}function n(d,m,a,p){return p[d]&&p[d].propertyValue&&String(p[d].propertyValue.value)===String(a)}const r=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((d,m)=>(d.set(m,t[m]),d),r);function o(d,m){const a=d;return typeof m=="number"?[{target:a,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:a,operator:"getProperty",param:d,value:!!m}]:typeof m=="object"?Object.keys(m).map(p=>{if(p==="length")return{target:a,operator:"length",param:null,value:m[p]};const C=p,c=m[p];return{target:a,operator:"getProperty",param:C,value:c}}):[]}function s(d){return Object.keys(d).reduce((a,p)=>{const C=o(p,d[p]);return a.push(...C),a},[])}function i(d,m){if(r.has(d.operator)){const a=r.get(d.operator);return a&&a(d.target,d.param,d.value,m)||!1}return!1}function g(d,m){return s(d).reduce((C,c)=>C&&i(c,m),!0)}function l(d,m){const a=Object.keys(d),p=a.includes("allOf"),C=a.includes("anyOf"),c=p||C,f=(c?d[c?p?"allOf":"anyOf":"allOf"]:[d]).map(M=>g(M,m));return p?!f.includes(!1):f.includes(!0)}return{parseValueSchema:l}}const le={convertTo:(t,e,n,r)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},de={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},ue={convertTo:(t,e,n,r)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},G={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},fe={convertFrom:(t,e,n)=>{var o;const r=t.editor&&t.editor[e]?t.editor[e]:t[e];return((o=G[r])==null?void 0:o.name)||r}},pe={convertTo:(t,e,n,r)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},me={convertTo:(t,e,n,r)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t.formatter?t.formatter[e]=n:t.formatter={[e]:n})},convertFrom:(t,e,n)=>{if(t.formatter){if(e==="trueText")return t.formatter.trueText;if(e==="falseText")return t.formatter.falseText;if(e==="prefix")return t.formatter.prefix;if(e==="suffix")return t.formatter.suffix;if(e==="precision")return t.formatter.precision;if(e==="decimal")return t.formatter.decimal;if(e==="thousand")return t.formatter.thousand;if(e==="dateFormat")return t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none"}return"none"}},ge={convertTo:(t,e,n,r)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enable"&&n&&(t.command.commands||(t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(t,e,n)=>t.command&&e==="enable"?t.command.enable:""},ve={convertTo:(t,e,n,r)=>{t.column?t.column[e]=n:t.column={[e]:n},e==="fitColumns"&&n&&(t.column.fitMode||(t.column.fitMode="average"))},convertFrom:(t,e,n)=>{if(t.column){if(e==="fitColumns")return t.column.fitColumns;if(e==="fitMode")return t.column.fitMode}return""}},be={convertTo:(t,e,n,r)=>{t.summary?t.summary[e]=n:t.summary={[e]:n},e==="enable"&&n&&(t.summary?t.summary.groupFields||(t.summary.groupFields=[]):t.summary={enable:n,groupFields:[]})},convertFrom:(t,e,n)=>t.summary&&e==="enable"?t.summary.enable:t.type==="data-grid-column"?t.enableSummary===void 0?!1:t.enableSummary:""},ye={convertTo:(t,e,n,r)=>{t.group?t.group[e]=n:t.group={[e]:n},e==="enable"&&n&&(t.group?t.group.groupFields||(t.group.groupFields=[]):t.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(t,e,n)=>{if(t.group){if(e==="enable")return t.group.enable;if(e==="showSummary")return t.group.showSummary}}},he={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const r=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=r.bindingField,t.binding.field=r.id,t.binding.fullPath=r.path,t.path=r.bindingPath}}},Ce={convertTo:(t,e,n,r)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},we={convertTo:(t,e,n,r)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},xe={convertTo:(t,e,n,r)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>{var r,o;return e==="showCheckbox"?(r=t.selection)!=null&&r.multiSelect?!0:(o=t.selection)==null?void 0:o.showCheckbox:t.selection?t.selection[e]:t[e]}},Me={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},Ee={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},Se={convertTo:(t,e,n,r)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},Fe={convertFrom:(t,e,n)=>{var r,o;return(r=t.formatter)!=null&&r.data&&e==="formatterEnumData"&&!t.formatterEnumData?(o=t.formatter)==null?void 0:o.data:t.formatterEnumData}},Ve={convertTo:(t,e,n,r)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var r,o;if(e==="mode")return((r=t.sort)==null?void 0:r.mode)||"client";if(e==="multiSort")return!!((o=t.sort)!=null&&o.multiSort)}},Ie={convertTo:(t,e,n,r)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var r;if(e==="mode")return((r=t.filter)==null?void 0:r.mode)||"client"}},Te={convertTo:(t,e,n,r)=>{t.rowOption?t.rowOption[e]=n:t.rowOption={[e]:n}},convertFrom:(t,e,n)=>{if(t.rowOption){if(e==="customRowStyle")return t.rowOption.customRowStyle;if(e==="customCellStyle")return t.rowOption.customCellStyle}return""}};function Y(t,e,n){const r=new Map([["/converter/appearance.converter",le],["/converter/buttons.converter",de],["/converter/property-editor.converter",ue],["/converter/items-count.converter",Me],["/converter/type.converter",fe],["/converter/change-editor.converter",pe],["/converter/change-formatter.converter",me],["/converter/column-command.converter",ge],["/converter/column-option.converter",ve],["/converter/summary.converter",be],["/converter/group.converter",ye],["/converter/form-group-label.converter",Ee],["/converter/field-selector.converter",he],["/converter/pagination.converter",Ce],["/converter/row-number.converter",we],["/converter/grid-selection.converter",xe],["/converter/size.converter",Se],["/converter/change-formatter-enum.converter",Fe],["/converter/grid-sort.converter",Ve],["/converter/grid-filter.converter",Ie],["/converter/row-option.converter",Te]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),s=ce();function i(c,u){return()=>s.parseValueSchema(c,u)}function g(c,u,v){return c.includes("visible")&&u.visible!==void 0?typeof u.visible=="boolean"?()=>!!u.visible:u.visible===void 0?!0:i(u.visible,v):()=>!0}function l(c,u,v){return c.includes("readonly")&&u.readonly!==void 0?typeof u.readonly=="boolean"?()=>!!u.readonly:i(u.readonly,v):()=>!1}function d(c,u){const v=c.$converter||u;return typeof v=="string"&&v&&r.has(v)?r.get(v)||null:v||null}function m(c,u,v,f,y,M="",x=""){return Object.keys(c).map(w=>{const S=h.ref(1),V=w,b=c[w],T=Object.keys(b),D=b.title,k=b.type,O=o.get(k)||{type:"input-group",enableClear:!1},N=b.editor?Object.assign({},O,b.editor):Object.assign({},O),j=g(T,b,u),q=l(T,b,u);N.readonly=N.readonly===void 0?q():N.readonly;const _=b.type==="cascade"?m(b.properties,u,v,f,y,M,x):[],We=!0;let R=d(b,x);const Je=h.computed({get(){if(S.value){if(["class","style"].find(He=>He===V)&&!R&&(R=r.get("/converter/appearance.converter")||null),R&&R.convertFrom)return R.convertFrom(v,w,y,M);const B=v[w];return Object.prototype.hasOwnProperty.call(b,"defaultValue")&&(B===void 0||typeof B=="string"&&B==="")?b.type==="boolean"?b.defaultValue:b.defaultValue||"":B}return null},set(B){S.value+=1,R&&R.convertTo?(R.convertTo(f,w,B,y,M),R.convertTo(v,w,B,y,M)):(f[w]=B,v[w]=B)}}),{refreshPanelAfterChanged:Qe,description:Xe,isExpand:Ye,parentPropertyID:Ze}=b,oe={propertyID:V,propertyName:D,propertyType:k,propertyValue:Je,editor:N,visible:j,readonly:q,cascadeConfig:_,hideCascadeTitle:We,refreshPanelAfterChanged:Qe,description:Xe,isExpand:Ye,parentPropertyID:Ze};return u[V]=oe,oe})}function a(c,u,v={}){const f={},y=t[c];return y&&y.categories?Object.keys(y.categories).map(x=>{const E=y.categories[x],w=E==null?void 0:E.title,S=m(E.properties||{},f,{},v,u);return{categoryId:x,categoryName:w,properties:S}}):[]}function p(c,u,v,f,y=""){const M=u.$ref.schema,x=u.$ref.converter,E=v[M],w=E.type,S=n(E),V={},b=t[w];if(b&&b.categories){const T=b.categories[c],D=T==null?void 0:T.title;x&&Object.keys(T.properties).forEach(N=>{T.properties[N].$converter=x});const k=(T==null?void 0:T.properties)||{},O=m(k,V,S,E,f,y);return{categoryId:c,categoryName:D,properties:O}}return{categoryId:c,categoryName:"",properties:[]}}function C(c,u,v,f,y){const M=c.type,x=n(c),E={};let w=y||t[M];if(w&&Object.keys(w).length===0&&v&&v.getPropConfig&&(w=v.getPropConfig(f)),w&&w.categories){const S=[];return Object.keys(w.categories).map(V=>{const b=w.categories[V];if(b.$ref){S.push(p(V,b,c,u,f));return}const T=b==null?void 0:b.title,D=b==null?void 0:b.tabId,k=b==null?void 0:b.tabName,O=b==null?void 0:b.hide,N=b==null?void 0:b.hideTitle,j=m(b.properties||{},E,x,c,u,f,b.$converter),{setPropertyRelates:q}=b,_=b==null?void 0:b.parentPropertyID;S.push({categoryId:V,categoryName:T,tabId:D,tabName:k,hide:O,properties:j,hideTitle:N,setPropertyRelates:q,parentPropertyID:_})}),S}return[]}return{getPropertyConfigBySchema:C,getPropertyConfigByType:a,propertyConverterMap:r}}const Z={},H={};Y(Z,H,ie);const K={},ee={},{getSchemaByType:rt,resolveSchemaWithDefaultValue:Pe,resolveSchemaToProps:ot,mappingSchemaToProps:it,setDesignerContext:st}=J(K,ee),te={},ne={};Y(te,ne,Pe);function Ne(t,e,n=new Map,r=(i,g,l,d)=>g,o={},s=i=>i){return Q[e.title]=e,X[e.title]=r,Z[e.title]=o,H[e.title]=s,K[e.title]=e,ee[e.title]=r,te[e.title]=o,ne[e.title]=s,(i={},g=!0)=>{if(!g)return ae(i,n);const l=se(i,e,n),d=Object.keys(t).reduce((m,a)=>(m[a]=t[a].default,m),{});return Object.assign(d,l)}}function ke(t,e){return{customClass:e.class,customStyle:e.style}}const Oe=new Map([["appearance",ke]]),Re={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/fieldset.schema.json",title:"fieldset",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a fieldset",type:"string"},type:{description:"The type string of fieldset component",type:"string",default:"fieldset"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},title:{description:"The title for a fieldset",type:"string"},contents:{description:"",type:"array",default:[]}},required:["id","type","contents"]};function Be(t,e,n){return Object.assign(e,{appearance:{class:"col-12 px-0"},title:"分组标题"}),e}const $={customClass:{type:String,default:""},customStyle:{type:String,default:""},title:{type:String,default:""}},re=Object.assign({},$,{componentId:{type:String,default:""}}),z=Ne($,Re,Oe,Be),A=h.defineComponent({name:"FFieldset",props:$,emits:[],setup(t,e){const n=h.ref(!0);function r(g,l){g&&l&&l.split(" ").reduce((m,a)=>(m[a]=!0,m),g)}const o=h.computed(()=>{const g={"f-section-formgroup":!0,"f-state-collapse":!n.value};return r(g,t.customClass),g}),s=h.computed(()=>({btn:!0,"f-btn-mx":!0,"f-btn-collapse-expand":!0,"f-state-expand":n.value}));function i(){n.value=!n.value}return()=>h.createVNode("fieldset",{class:o.value,style:t.customStyle},[h.createVNode("legend",{class:"f-section-formgroup-legend"},[h.createVNode("div",{class:"f-header"},[h.createVNode("div",{class:"f-title",onClick:i},[t.title]),h.createVNode("div",{class:"f-toolbar",onClick:i},[h.createVNode("button",{class:s.value},null)])])]),h.createVNode("div",{class:"f-section-formgroup-inputs"},[e.slots.default&&e.slots.default()])])}}),De=h.ref(0);function Ue(){De.value++}const je=h.ref(0);function $e(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function r(l,d=""){return{path:d+l.code,field:l.id,fullPath:l.code}}function o(l,d=""){return e.getViewModelById(l).states.map(a=>r(a,d))}function s(l){const d=e.getRootViewModelId(),m=o(l);if(l===d)return m;const a=o(d,"root-component.");return[...m,...a]}function i(l){return l.binding&&l.binding.path||l.id||""}function g(){return n&&n.getRenderStates()||[]}return{getVariables:s,getControlName:i,getStateMachines:g}}class Ae{constructor(e){I(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);I(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});I(this,"getExpressionConverter",(e,n)=>({convertFrom:(r,o,s,i)=>{const g=s.getExpressionRuleValue(e,n||o);return g&&g.value||""},convertTo:(r,o,s,i,g)=>{var l;if(o==="dataPicking"&&(s!=null&&s.target)){const d=`${s.target}_dataPicking`;((l=s.rules)==null?void 0:l.some(a=>a.id===d&&a.value))?r.dictPickingExpressionId=d:delete r.dictPickingExpressionId}i.updateExpression(s)}}));this.formSchemaService=e}getExpressionRule(e,n){const r=this.formSchemaService.getExpressions();if(!r)return"";const o=r.find(i=>i.target===e);if(!o)return"";const s=o.rules.find(i=>i.type===n);return s||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const n=this.formSchemaService.getRootViewModelId(),r=this.formSchemaService.getViewModelById(n);if(!r||!r.states||r.states.length===0)return[];const o=[];return r.states.forEach(s=>{o.push({key:s.code,name:s.name,description:s.name,category:s.category})}),o}createTreeNode(e,n,r="label"){return{id:e.id,name:e.name,bindingPath:e[r],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const r=[];return e==null||e.forEach(o=>{var g;const s=this.createTreeNode(o,n);let i=[];(g=o.type)!=null&&g.fields&&(i=this.buildEntityFieldsTreeData(o.type.fields,[...n,o.label])),r.push({data:s,children:i,expanded:!0})}),r}buildChildEntityTreeData(e=null,n){const r=[];return e==null||e.forEach(o=>{var l,d;const s=this.createTreeNode(o,n);s.type="entity";const i=this.buildEntityFieldsTreeData((l=o.type)==null?void 0:l.fields,[...n,o.label]),g=this.buildChildEntityTreeData((d=o.type)==null?void 0:d.entities,[...n,o.label]);g!=null&&g.length&&(i==null||i.push(...g)),r.push({data:s,children:i||[],expanded:!0})}),r}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const r=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),o=this.buildChildEntityTreeData(n.type.entities,[n.code]);return o!=null&&o.length&&(r==null||r.push(...o)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:r||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,r){const o=r==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,n),i=this.getEntitiesAndVariables(),g={message:["validate","required","dataPicking"].includes(n)&&s?s.message:"",...i};return s.messageType!=null&&(g.messageType=s.messageType),g}buildRule(e,n,r,o){const{expression:s,message:i,messageType:g}=n,l={id:`${e}_${r}`,type:r,value:s};return(r==="validate"||r==="dataPicking"||r==="required")&&(l.message=i),r==="dataPicking"&&(l.messageType=g),r==="validate"&&o&&(l.elementId=o),l}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,r,o){const s=n==="Field"?e.binding.field:e.id,i=this.buildRule(s,r,o,e.type==="form-group"?e.id:"");let l=this.getExpressionData().find(m=>m.targetType===n&&m.target===s);const d=m=>m.value.trim()==="";if(l){const m=l.rules.find(a=>a.id===i.id);if(m)d(i)?l.rules=l.rules.filter(a=>a.id!==i.id):(Object.assign(m,i),o==="validate"&&e.type==="form-group"&&(m.elementId=e.id));else{if(d(i))return null;l.rules=l.rules||[],l.rules.push(i)}}else{if(d(i))return null;l={target:`${s}`,rules:[i],targetType:n}}return l}getExpressionEditorOptions(e,n,r,o){return r.reduce((s,i)=>{var l,d;const g=n==="Field"?(l=e==null?void 0:e.binding)==null?void 0:l.field:e.id;return s[i]={hide:n==="Field"?!!((d=e==null?void 0:e.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[i],type:"string",$converter:this.getExpressionConverter(g),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[i]}编辑器`,showMessage:i==="validate"||i==="dataPicking"||i==="required",showMessageType:i==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,i,n),onSubmitModal:m=>{const a=this.updateExpression(e,n,m,i);if(o){const p=this.buildRule(g,m,i);o(p)}return a}}},s},{})}getExpressionInfo(e,n,r){const o=n==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,r),i={value:s&&s.value,targetId:o,targetType:n,expressionType:r};return s&&s.message&&(i.message=s.message),i}getExpressionConfig(e,n,r=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,r,o)}}}getExpressionOptions(e,n,r){const o=this.getExpressionInfo(e,n,r);return{dialogTitle:`${this.expressionNames[r]}编辑器`,singleExpand:!1,showMessage:r==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,r,n),expressionInfo:o}}}class qe{constructor(e,n){I(this,"componentId");I(this,"viewModelId");I(this,"eventsEditorUtils");I(this,"formSchemaUtils");I(this,"formMetadataConverter");I(this,"designViewModelUtils");I(this,"designViewModelField");I(this,"controlCreatorUtils");I(this,"designerHostService");I(this,"designerContext");I(this,"schemaService",null);I(this,"metadataService",null);I(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService,this.schemaService=n.schemaService,this.designerContext=n.designerContext}getFormDesignerInstance(){var e,n;return(n=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:n.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var r;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(s=>s.id===n)}e.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:G[e.type]&&G[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},r){const o={title:"外观",description:"Appearance"},s={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const i in n)s[i]=Object.assign(s[i]||{},n[i]);return{...o,properties:{...s},setPropertyRelates(i,g){if(i){switch(i&&i.propertyID){case"class":case"style":{je.value++;break}}r&&r(i,e,g)}}}}getPropertyEditorParams(e,n=[],r="visible",o={},s={},i=""){const{getVariables:g,getControlName:l,getStateMachines:d}=$e(this.designerHostService),m=this.getRealTargetType(e),a=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],p={type:"property-editor",propertyTypes:a};return a.map(C=>{switch(C){case"Const":Object.assign(p,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":p.expressionConfig=this.getExpressionOptions(e,m,i||r);break;case"StateMachine":p.stateMachines=d();break;case"Variable":Object.assign(p,{controlName:l(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:g(this.viewModelId),onBeforeOpenVariables:c=>{c.value=g(this.viewModelId)}},s);break}}),p}getVisibleProperty(e,n=""){var s;let r=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?r=["Const","Expression"]:n==="form-group"&&!((s=e.binding)!=null&&s.field)&&(r=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,r,"visible")}}}getBehaviorConfig(e,n="",r={},o){const s={title:"行为",description:""},i=this.getVisibleProperty(e,n);for(const l in r)i[l]=Object.assign(i[l]||{},r[l]);const g=this;return{...s,properties:{...i},setPropertyRelates(l,d){if(l){switch(l.propertyID){case"disabled":case"readonly":case"visible":g.afterMutilEditorChanged(e,l);break}o&&o(l,d)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const r=n&&n.parent&&n.parent.schema;if(!r)return;const o=r.contents.findIndex(i=>i.id===e),s=P.cloneDeep(r.contents[o]);r.contents.splice(o,1),r.contents.splice(o,0,s),Ue()}addNewVariableToViewModel(e,n){const r=e.propertyValue;if(!(r&&typeof r=="object")||!(r.type==="Variable"&&r.isNewVariable))return;const i={id:r.field,category:"locale",code:r.fullPath,name:r.fullPath,type:r.newVariableType||"String"};delete r.newVariableType,delete r.isNewVariable,this.formSchemaUtils.getVariableByCode(i.code)||this.formSchemaUtils.getViewModelById(n).states.push(i)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:s,expressionInfo:i}=n,{targetId:g,targetType:l,expressionType:d,value:m,message:a}=i,p=this.formSchemaUtils.getModule();p.expressions=p.expressions||[];const{expressions:C}=p;let c=C.find(v=>v.target===g);c||(c={target:g,rules:[],targetType:l},C.push(c));const u=c.rules.find(v=>v.type===d);if(u)u.value=m,u.message=a;else{const v={id:s,type:d,value:m,message:a};c.rules.push(v)}delete n.expressionInfo}clearExpression(e,n){const r=e.propertyValue;if(r&&r.type==="Expression")return;const s=e.propertyID,i=this.formSchemaUtils.getExpressions(),g=n.binding?n.binding.field:n.id,l=i.find(d=>d.target===g);!l||!l.rules||(l.rules=l.rules.filter(d=>d.type!==s))}getExpressionOptions(e,n,r){return new Ae(this.formSchemaUtils).getExpressionOptions(e,n,r)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const n={};return n[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:r=>{var o;((o=r.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(r)}}},n}}class Ge extends qe{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e),this.propertyConfig}getAppearanceProperties(e){const n=this;return this.getAppearanceConfig(e,{title:{title:"标题",type:"string",description:"标题"}},(o,s,i)=>{switch(o&&o.propertyID){case"title":{o.needRefreshControlTree=!0,n.changeGroupNameInViewModel(s.id,o.propertyValue);break}}})}changeGroupNameInViewModel(e,n){var s;const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r&&r.changeGroupName(e,n);const o=this.formSchemaUtils.getViewModelById(this.viewModelId);(s=o==null?void 0:o.fields)!=null&&s.length&&o.fields.forEach(i=>{i.groupId===e&&(i.groupName=n)})}}function ze(t,e){const n=new U.UseTemplateDragAndDropRules,{canAccept:r}=n.getTemplateRule(t,e),o=t.schema;function s(){return"f-section-formgroup"}function i(){return!0}function g(){return!0}function l(){return!1}function d(f){const{sourceElement:y}=f,{componentInstance:M}=y,x=e==null?void 0:e.formSchemaUtils;if(!x)return!0;const E=x.getComponentById(M.value.belongedComponentId),w=x.getViewModelById(E.viewModel),S=x.getComponentById(t.componentInstance.value.belongedComponentId),V=x.getViewModelById(S.viewModel);return w!=null&&w.id&&(V!=null&&V.id)&&w.id!==V.id?w.bindTo===V.bindTo:!0}function m(f){const{bindingTargetId:y}=f;if(!e)return;const{formSchemaUtils:M,schemaService:x}=e,E=M.getComponentById(t.componentInstance.value.belongedComponentId),w=x.getFieldByIDAndVMID(y,E.viewModel);return!!(w!=null&&w.schemaField)}function a(f){return f.sourceType==="control"&&f.componentCategory==="input"?!0:f.sourceType==="move"&&f.componentType==="form-group"?d(f):f.sourceType==="field"&&f.componentCategory==="input"?m(f):!1}function p(f){return!(!U.useDragulaCommonRule().basalDragulaRuleForContainer(f,e)||!r||!a(f))}function C(f){return new Ge(f,e).getPropertyConfig(o)}function c(f){var V,b,T,D,k;if(!e)return;const{formSchemaUtils:y,designViewModelUtils:M}=e,x=f.componentInstance,E=x.value.parent,w=y.getComponentById(x.value.belongedComponentId),S=M.getDgViewModel(w.viewModel);switch(E&&((V=E.schema)==null?void 0:V.type)){case U.DgControl.fieldset.type:case U.DgControl["response-form"].type:case U.DgControl["response-layout-item"].type:{const O={groupId:o.id,groupName:o.title},N=(T=(b=x.value.schema)==null?void 0:b.binding)==null?void 0:T.type,j=(k=(D=x.value.schema)==null?void 0:D.binding)==null?void 0:k.field;switch(N){case L.FormBindingType.Form:{S.changeField(j,O);break}case L.FormBindingType.Variable:{y.modifyViewModelFieldById(w.viewModel,j,O,!0);break}}break}}}function u(f){if(!f||!f.componentInstance||!e)return;const y=f.componentInstance,M=y.value.schema;if(!M.binding||!M.binding.field)return;c(f);const{formSchemaUtils:x}=e,E=x.getViewModelIdByComponentId(y.value.belongedComponentId),w=x.getViewModelIdByComponentId(t.componentInstance.value.belongedComponentId);E!==w&&W.useDesignerRules(t,e).moveInputBetweenComponent(f)}function v(f,y){var M,x,E;if(f.componentCategory==="input"){const{label:w}=f;let S;const V=e==null?void 0:e.controlCreatorUtils;(M=f.bindingSourceContext)!=null&&M.entityFieldNode?S=V.setFormFieldProperty((x=f.bindingSourceContext)==null?void 0:x.entityFieldNode,y==null?void 0:y.type):(S=V.createFormGroupWithoutField(y==null?void 0:y.type),S.label=w);const b=W.useDesignerRules(t,e);return b.resolveFormGroupAppearance(S),b.syncFieldToViewModel(f,(E=S.editor)==null?void 0:E.type,o.id,o.title),S}return y}return{canAccepts:p,hideNestedPaddingInDesginerView:l,getPropsConfig:C,checkCanDeleteComponent:i,checkCanMoveComponent:g,onAcceptMovedChildElement:u,onResolveNewComponentSchema:v,getDesignerClass:s}}const _e=h.defineComponent({name:"FFieldsetDesign",props:re,emits:[],setup(t,e){const n=h.ref(),r=h.ref(),o=h.inject("design-item-context"),s=h.inject("designer-host-service"),i=ze(o,s),g=U.useDesignerComponent(r,o,i);e.expose(g.value),h.onMounted(()=>{r.value.componentInstance=g});const l=h.ref(!0);function d(c,u){c&&u&&u.split(" ").reduce((f,y)=>(f[y]=!0,f),c)}const m=h.computed(()=>{const c={"f-section-formgroup":!0,"f-state-collapse":!l.value};return d(c,t.customClass),c}),a=h.computed(()=>({display:l.value?"flex":"none","flex-wrap":"wrap"})),p=h.computed(()=>({btn:!0,"f-btn-mx":!0,"f-btn-collapse-expand":!0,"f-state-expand":l.value}));function C(){l.value=!l.value}return()=>h.createVNode("fieldset",{class:m.value,ref:n},[h.createVNode("legend",{class:"f-section-formgroup-legend"},[h.createVNode("div",{class:"f-header"},[h.createVNode("div",{class:"f-title",onClick:C},[t.title]),h.createVNode("div",{class:"f-toolbar",onClick:C},[h.createVNode("button",{class:p.value},null)])])]),h.createVNode("div",{"data-dragref":`${o.schema.id}-container`,ref:r,class:"f-section-formgroup-inputs drag-container",style:a.value},[e.slots.default&&e.slots.default()])])}}),Le={install(t){t.component(A.name,A)},register(t,e,n,r){t.fieldset=A,e.fieldset=z},registerDesigner(t,e,n){t.fieldset=_e,e.fieldset=z}};F.Fieldset=A,F.default=Le,F.fieldsetDesignerProps=re,F.fieldsetProps=$,F.propsResolver=z,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});