bm-admin-ui 1.0.92-alpha → 1.0.94-alpha

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 (97) hide show
  1. package/es/components/attachment/index.d.ts +3 -3
  2. package/es/components/attachment/src/attachment.vue.d.ts +3 -3
  3. package/es/components/breadcrumb/index.d.ts +7 -7
  4. package/es/components/breadcrumb/src/breadcrumb.vue.d.ts +7 -7
  5. package/es/components/button/index.d.ts +6 -6
  6. package/es/components/button/src/button.vue.d.ts +6 -6
  7. package/es/components/cascader/index.js +2 -2
  8. package/es/components/edit-form/index.d.ts +4 -4
  9. package/es/components/edit-form/src/edit-form.vue.d.ts +4 -4
  10. package/es/components/feedback/index.d.ts +12 -12
  11. package/es/components/feedback/src/bmAlert.vue.d.ts +6 -6
  12. package/es/components/feedback/src/bmModal.vue.d.ts +6 -6
  13. package/es/components/float-table/index.d.ts +2 -2
  14. package/es/components/float-table/src/float-table.vue.d.ts +2 -2
  15. package/es/components/flow-designer/src/bm-nodes/BmConditionNode.vue.d.ts +8 -8
  16. package/es/components/form-create/index.js +389 -98
  17. package/es/components/form-designer/index.js +201 -148
  18. package/es/components/search-filter/index.d.ts +28 -0
  19. package/es/components/search-filter/index.js +70 -17
  20. package/es/components/search-filter/src/form-select-all.vue.d.ts +21 -6
  21. package/es/components/search-filter/src/search-filter.d.ts +16 -0
  22. package/es/components/search-filter/src/search-filter.vue.d.ts +28 -0
  23. package/es/components/search-filter/src/search-reset-btn.vue.d.ts +29 -3
  24. package/es/components/select-all/index.d.ts +8 -6
  25. package/es/components/select-all/index.js +33 -15
  26. package/es/components/select-all/src/selectAll.vue.d.ts +8 -6
  27. package/es/components/staffs-selector/index.d.ts +12 -12
  28. package/es/components/staffs-selector/src/departmentCmp.vue.d.ts +2 -2
  29. package/es/components/staffs-selector/src/multipleCmp.vue.d.ts +2 -2
  30. package/es/components/staffs-selector/src/staffs-selector.vue.d.ts +12 -12
  31. package/es/components/videoView/index.d.ts +1 -1
  32. package/es/components/videoView/src/videoView.vue.d.ts +1 -1
  33. package/es/utils/uniqueId.js +2 -2
  34. package/lib/components/attachment/index.d.ts +3 -3
  35. package/lib/components/attachment/src/attachment.vue.d.ts +3 -3
  36. package/lib/components/breadcrumb/index.d.ts +7 -7
  37. package/lib/components/breadcrumb/src/breadcrumb.vue.d.ts +7 -7
  38. package/lib/components/button/index.d.ts +6 -6
  39. package/lib/components/button/src/button.vue.d.ts +6 -6
  40. package/lib/components/cascader/index.js +2 -2
  41. package/lib/components/edit-form/index.d.ts +4 -4
  42. package/lib/components/edit-form/src/edit-form.vue.d.ts +4 -4
  43. package/lib/components/feedback/index.d.ts +12 -12
  44. package/lib/components/feedback/src/bmAlert.vue.d.ts +6 -6
  45. package/lib/components/feedback/src/bmModal.vue.d.ts +6 -6
  46. package/lib/components/float-table/index.d.ts +2 -2
  47. package/lib/components/float-table/src/float-table.vue.d.ts +2 -2
  48. package/lib/components/flow-designer/src/bm-nodes/BmConditionNode.vue.d.ts +8 -8
  49. package/lib/components/form-create/index.js +389 -98
  50. package/lib/components/form-designer/index.js +195 -142
  51. package/lib/components/search-filter/index.d.ts +28 -0
  52. package/lib/components/search-filter/index.js +71 -17
  53. package/lib/components/search-filter/src/form-select-all.vue.d.ts +21 -6
  54. package/lib/components/search-filter/src/search-filter.d.ts +16 -0
  55. package/lib/components/search-filter/src/search-filter.vue.d.ts +28 -0
  56. package/lib/components/search-filter/src/search-reset-btn.vue.d.ts +29 -3
  57. package/lib/components/select-all/index.d.ts +8 -6
  58. package/lib/components/select-all/index.js +32 -14
  59. package/lib/components/select-all/src/selectAll.vue.d.ts +8 -6
  60. package/lib/components/staffs-selector/index.d.ts +12 -12
  61. package/lib/components/staffs-selector/src/departmentCmp.vue.d.ts +2 -2
  62. package/lib/components/staffs-selector/src/multipleCmp.vue.d.ts +2 -2
  63. package/lib/components/staffs-selector/src/staffs-selector.vue.d.ts +12 -12
  64. package/lib/components/videoView/index.d.ts +1 -1
  65. package/lib/components/videoView/src/videoView.vue.d.ts +1 -1
  66. package/lib/utils/uniqueId.js +2 -2
  67. package/package.json +1 -1
  68. package/theme-chalk/form-designer.css +1 -1
  69. package/theme-chalk/index.css +1 -1
  70. package/theme-chalk/select-all.css +1 -1
  71. package/types/components/attachment/index.d.ts +3 -3
  72. package/types/components/attachment/src/attachment.vue.d.ts +3 -3
  73. package/types/components/breadcrumb/index.d.ts +7 -7
  74. package/types/components/breadcrumb/src/breadcrumb.vue.d.ts +7 -7
  75. package/types/components/button/index.d.ts +6 -6
  76. package/types/components/button/src/button.vue.d.ts +6 -6
  77. package/types/components/edit-form/index.d.ts +4 -4
  78. package/types/components/edit-form/src/edit-form.vue.d.ts +4 -4
  79. package/types/components/feedback/index.d.ts +12 -12
  80. package/types/components/feedback/src/bmAlert.vue.d.ts +6 -6
  81. package/types/components/feedback/src/bmModal.vue.d.ts +6 -6
  82. package/types/components/float-table/index.d.ts +2 -2
  83. package/types/components/float-table/src/float-table.vue.d.ts +2 -2
  84. package/types/components/flow-designer/src/bm-nodes/BmConditionNode.vue.d.ts +8 -8
  85. package/types/components/search-filter/index.d.ts +28 -0
  86. package/types/components/search-filter/src/form-select-all.vue.d.ts +21 -6
  87. package/types/components/search-filter/src/search-filter.d.ts +16 -0
  88. package/types/components/search-filter/src/search-filter.vue.d.ts +28 -0
  89. package/types/components/search-filter/src/search-reset-btn.vue.d.ts +29 -3
  90. package/types/components/select-all/index.d.ts +8 -6
  91. package/types/components/select-all/src/selectAll.vue.d.ts +8 -6
  92. package/types/components/staffs-selector/index.d.ts +12 -12
  93. package/types/components/staffs-selector/src/departmentCmp.vue.d.ts +2 -2
  94. package/types/components/staffs-selector/src/multipleCmp.vue.d.ts +2 -2
  95. package/types/components/staffs-selector/src/staffs-selector.vue.d.ts +12 -12
  96. package/types/components/videoView/index.d.ts +1 -1
  97. package/types/components/videoView/src/videoView.vue.d.ts +1 -1
@@ -78,7 +78,7 @@ var _export_sfc = (sfc, props) => {
78
78
  return target;
79
79
  };
80
80
 
81
- const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
81
+ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
82
82
  __name: "widget-instruction",
83
83
  props: ["rule"],
84
84
  setup(__props) {
@@ -89,13 +89,13 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
89
89
  };
90
90
  }
91
91
  });
92
- var WidgetInstruction = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__file", "widget-instruction.vue"]]);
92
+ var WidgetInstruction = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__file", "widget-instruction.vue"]]);
93
93
 
94
94
  const _hoisted_1$f = {
95
95
  key: 2,
96
96
  class: "bm-drag-tool-mask"
97
97
  };
98
- const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
98
+ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
99
99
  __name: "drag-tool",
100
100
  props: ["rule", "activeRuleField", "parentRule"],
101
101
  emits: [
@@ -236,16 +236,16 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
236
236
  ]),
237
237
  _: 1
238
238
  }, 512), [
239
- [vue.vShow, __props.rule.config.isHover || vue.unref(isActive)]
239
+ [vue.vShow, !__props.rule.config?.immutable && (__props.rule.config.isHover || vue.unref(isActive))]
240
240
  ])
241
241
  ], 34);
242
242
  };
243
243
  }
244
244
  });
245
- var DragTool = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__file", "drag-tool.vue"]]);
245
+ var DragTool = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__file", "drag-tool.vue"]]);
246
246
 
247
247
  const _hoisted_1$e = { class: "bm-drag-placeholder" };
248
- const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
248
+ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
249
249
  __name: "drag-placeholder",
250
250
  props: {},
251
251
  setup(__props) {
@@ -254,14 +254,14 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
254
254
  };
255
255
  }
256
256
  });
257
- var DragPlaceholder = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__file", "drag-placeholder.vue"]]);
257
+ var DragPlaceholder = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__file", "drag-placeholder.vue"]]);
258
258
 
259
259
  const _hoisted_1$d = { class: "bm-widget-row-wrap" };
260
260
  const _hoisted_2$a = {
261
261
  key: 0,
262
262
  class: "bm-widget-row-tip"
263
263
  };
264
- const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
264
+ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
265
265
  __name: "widget-row",
266
266
  props: ["activeRuleField", "formCreateInject"],
267
267
  emits: [
@@ -366,7 +366,7 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
366
366
  };
367
367
  }
368
368
  });
369
- var WidgetRow = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__file", "widget-row.vue"]]);
369
+ var WidgetRow = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__file", "widget-row.vue"]]);
370
370
 
371
371
  const label$h = '分栏';
372
372
  const fieldsMap$h = {
@@ -712,10 +712,14 @@ var numInput = {
712
712
  placeholder: '请输入',
713
713
  },
714
714
  config: {
715
+ format: '',
715
716
  propsFields: Object.values(fieldsMap$e),
716
717
  },
717
718
  style: {
718
719
  width: '100%',
720
+ overflow: 'hidden',
721
+ textOverflow: 'ellipsis',
722
+ marginBottom: '0',
719
723
  },
720
724
  };
721
725
  },
@@ -804,7 +808,7 @@ const _hoisted_2$9 = {
804
808
  key: 0,
805
809
  class: "bm-handle-options__error-tip"
806
810
  };
807
- const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
811
+ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
808
812
  __name: "handle-options",
809
813
  props: ["options", "disabled"],
810
814
  emits: ["setValue"],
@@ -975,7 +979,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
975
979
  };
976
980
  }
977
981
  });
978
- var HandleOptionsCom = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__file", "handle-options.vue"]]);
982
+ var HandleOptionsCom = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__file", "handle-options.vue"]]);
979
983
 
980
984
  const label$d = '单选框';
981
985
  const ruleType$1 = {
@@ -1256,7 +1260,7 @@ var checkbox = {
1256
1260
  };
1257
1261
 
1258
1262
  const _hoisted_1$b = { class: "bm-default-date" };
1259
- const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
1263
+ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1260
1264
  __name: "default-date",
1261
1265
  props: [
1262
1266
  "defaultRadioValue",
@@ -1345,7 +1349,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
1345
1349
  };
1346
1350
  }
1347
1351
  });
1348
- var DefaultDate = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__file", "default-date.vue"]]);
1352
+ var DefaultDate = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__file", "default-date.vue"]]);
1349
1353
 
1350
1354
  const label$b = '日期';
1351
1355
  const fieldsMap$b = {
@@ -1825,7 +1829,7 @@ var picture = {
1825
1829
 
1826
1830
  const _hoisted_1$a = { class: "bm-widget-table-wrap" };
1827
1831
  const _hoisted_2$8 = { class: "bm-widget-table-top-bar" };
1828
- const _hoisted_3$5 = { class: "bm-widget-table-outer" };
1832
+ const _hoisted_3$6 = { class: "bm-widget-table-outer" };
1829
1833
  const _hoisted_4$4 = { class: "bm-widget-table" };
1830
1834
  const _hoisted_5$1 = {
1831
1835
  key: 0,
@@ -1853,7 +1857,7 @@ const _hoisted_15 = { class: "bm-widget-table__operateColumn__content" };
1853
1857
  const _hoisted_16 = /* @__PURE__ */ vue.createElementVNode("a", null, "\u590D\u5236", -1);
1854
1858
  const _hoisted_17 = /* @__PURE__ */ vue.createElementVNode("span", null, null, -1);
1855
1859
  const _hoisted_18 = /* @__PURE__ */ vue.createElementVNode("a", null, "\u5220\u9664", -1);
1856
- const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1860
+ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
1857
1861
  __name: "widget-table",
1858
1862
  props: ["formCreateInject", "activeRuleField"],
1859
1863
  emits: [
@@ -1870,6 +1874,7 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1870
1874
  const childRules = vue.computed(() => tableRule.value.config.childRules);
1871
1875
  const showDelete = vue.computed(() => showFeature("delete"));
1872
1876
  const showImport = vue.computed(() => showFeature("import"));
1877
+ const showExport = vue.computed(() => showFeature("export"));
1873
1878
  const showCopy = vue.computed(() => showFeature("copy"));
1874
1879
  function showFeature(featureId) {
1875
1880
  return tableRule.value.config.tableAdvancedFeatures.includes(featureId);
@@ -1887,6 +1892,8 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1887
1892
  emits("set-active-rule", rule, tableRule.value);
1888
1893
  }
1889
1894
  function handleClick(element) {
1895
+ if (element?.config.immutable)
1896
+ return;
1890
1897
  emitSetActiveRuleEvt(element);
1891
1898
  }
1892
1899
  function handleUpdate({ newIndex }) {
@@ -1927,9 +1934,15 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1927
1934
  vue.createTextVNode(" \u4E0B\u8F7D\u5BFC\u5165\u6A21\u677F ")
1928
1935
  ]),
1929
1936
  _: 1
1937
+ })) : vue.createCommentVNode("v-if", true),
1938
+ vue.unref(showExport) ? (vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Button), { key: 3 }, {
1939
+ default: vue.withCtx(() => [
1940
+ vue.createTextVNode(" \u5BFC\u51FA ")
1941
+ ]),
1942
+ _: 1
1930
1943
  })) : vue.createCommentVNode("v-if", true)
1931
1944
  ]),
1932
- vue.createElementVNode("div", _hoisted_3$5, [
1945
+ vue.createElementVNode("div", _hoisted_3$6, [
1933
1946
  vue.createElementVNode("div", {
1934
1947
  class: "bm-widget-table-inner",
1935
1948
  style: vue.normalizeStyle({
@@ -2015,7 +2028,7 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
2015
2028
  };
2016
2029
  }
2017
2030
  });
2018
- var WidgetTable = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__file", "widget-table.vue"]]);
2031
+ var WidgetTable = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__file", "widget-table.vue"]]);
2019
2032
 
2020
2033
  const label$7 = '表格';
2021
2034
  const fieldsMap$7 = {
@@ -2051,7 +2064,7 @@ var table = {
2051
2064
  },
2052
2065
  config: {
2053
2066
  childRules,
2054
- tableAdvancedFeatures: ['copy', 'delete', 'import'],
2067
+ tableAdvancedFeatures: ['copy', 'delete', 'import', 'export'],
2055
2068
  propsFields: Object.values(fieldsMap$7),
2056
2069
  },
2057
2070
  emit: [
@@ -2120,6 +2133,10 @@ var table = {
2120
2133
  value: 'import',
2121
2134
  label: '批量导入',
2122
2135
  },
2136
+ {
2137
+ value: 'export',
2138
+ label: '导出',
2139
+ },
2123
2140
  ],
2124
2141
  className: 'bfd-sider-right__form__table-checkbox',
2125
2142
  },
@@ -2454,9 +2471,9 @@ var department = {
2454
2471
 
2455
2472
  const _hoisted_1$9 = { style: { "margin-top": "16px", "line-height": "32px" } };
2456
2473
  const _hoisted_2$7 = { style: { "float": "right" } };
2457
- const _hoisted_3$4 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bm-material-temp__table-tip" }, "\u7CFB\u7EDF\u81EA\u52A8\u83B7\u53D6\u8868\u683C\u5B57\u6BB5", -1);
2474
+ const _hoisted_3$5 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bm-material-temp__table-tip" }, "\u7CFB\u7EDF\u81EA\u52A8\u83B7\u53D6\u8868\u683C\u5B57\u6BB5", -1);
2458
2475
  const _hoisted_4$3 = { class: "bm-material-temp__add" };
2459
- const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
2476
+ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
2460
2477
  __name: "widget-material-temp",
2461
2478
  props: ["formCreateInject"],
2462
2479
  setup(__props) {
@@ -2628,7 +2645,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
2628
2645
  })
2629
2646
  ])
2630
2647
  ]),
2631
- _hoisted_3$4
2648
+ _hoisted_3$5
2632
2649
  ]),
2633
2650
  _: 2
2634
2651
  }, 1032, ["tab"]);
@@ -2639,11 +2656,11 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
2639
2656
  };
2640
2657
  }
2641
2658
  });
2642
- var WidgetMaterialTemp = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__file", "widget-material-temp.vue"]]);
2659
+ var WidgetMaterialTemp = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__file", "widget-material-temp.vue"]]);
2643
2660
 
2644
2661
  const _hoisted_1$8 = { class: "bm-use-instruction" };
2645
2662
  const _hoisted_2$6 = { class: "bm-use-instruction__title" };
2646
- const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
2663
+ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
2647
2664
  __name: "use-instruction",
2648
2665
  setup(__props) {
2649
2666
  return (_ctx, _cache) => {
@@ -2657,7 +2674,7 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
2657
2674
  };
2658
2675
  }
2659
2676
  });
2660
- var UseInstruction = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__file", "use-instruction.vue"]]);
2677
+ var UseInstruction = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__file", "use-instruction.vue"]]);
2661
2678
 
2662
2679
  const label$3 = '素材模板';
2663
2680
  const fieldsMap$3 = {
@@ -2777,9 +2794,9 @@ var materialTemp = {
2777
2794
 
2778
2795
  const _hoisted_1$7 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bm-product-info-item__title" }, "\u5546\u54C1\u7F16\u53F7", -1);
2779
2796
  const _hoisted_2$5 = { class: "bm-product-info-item__content" };
2780
- const _hoisted_3$3 = { class: "bm-product-info-item__title" };
2797
+ const _hoisted_3$4 = { class: "bm-product-info-item__title" };
2781
2798
  const _hoisted_4$2 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bm-product-info-item__content" }, "\u7CFB\u7EDF\u81EA\u52A8\u5E26\u51FA", -1);
2782
- const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
2799
+ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
2783
2800
  __name: "product-info",
2784
2801
  props: ["formCreateInject"],
2785
2802
  setup(__props) {
@@ -2812,7 +2829,7 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
2812
2829
  span: 12
2813
2830
  }, {
2814
2831
  default: vue.withCtx(() => [
2815
- vue.createElementVNode("div", _hoisted_3$3, vue.toDisplayString(item.label), 1),
2832
+ vue.createElementVNode("div", _hoisted_3$4, vue.toDisplayString(item.label), 1),
2816
2833
  _hoisted_4$2
2817
2834
  ]),
2818
2835
  _: 2
@@ -2824,90 +2841,70 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
2824
2841
  };
2825
2842
  }
2826
2843
  });
2827
- var ProductInfo = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__file", "product-info.vue"]]);
2844
+ var ProductInfo = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__file", "product-info.vue"]]);
2828
2845
 
2829
- const _hoisted_1$6 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bm-associated-fields-item" }, [
2830
- /* @__PURE__ */ vue.createElementVNode("span", { class: "bm-associated-fields-item__content" }, "\u5546\u54C1\u7F16\u53F7")
2831
- ], -1);
2846
+ const _hoisted_1$6 = { class: "bm-associated-fields-item__content" };
2832
2847
  const _hoisted_2$4 = { class: "bm-associated-fields-item__content" };
2833
- const _hoisted_3$2 = { style: { "text-align": "right", "margin": "6px 0 4px", "padding-right": "8px" } };
2834
- const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
2835
- __name: "associated-fields",
2836
- props: ["associatedFields"],
2848
+ const _hoisted_3$3 = { style: { "text-align": "right", "margin": "6px 0 4px", "padding-right": "8px" } };
2849
+ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
2850
+ __name: "pure-associated-fields",
2851
+ props: ["associatedFields", "options", "defaultOptions"],
2837
2852
  emits: ["change"],
2838
2853
  setup(__props, { emit: emits }) {
2839
2854
  const props = __props;
2840
2855
  const visible = vue.ref(false);
2841
2856
  const checkList = vue.ref([]);
2842
- const options = [
2843
- {
2844
- value: "\u5546\u54C1\u540D\u79F0",
2845
- label: "\u5546\u54C1\u540D\u79F0"
2846
- },
2847
- {
2848
- value: "\u5546\u54C1\u7B80\u79F0",
2849
- label: "\u5546\u54C1\u7B80\u79F0"
2850
- },
2851
- {
2852
- value: "\u5546\u54C1\u56FE\u7247",
2853
- label: "\u5546\u54C1\u56FE\u7247"
2854
- },
2855
- {
2856
- value: "\u5EFA\u8BAE\u96F6\u552E\u4EF7",
2857
- label: "\u5EFA\u8BAE\u96F6\u552E\u4EF7"
2858
- },
2859
- {
2860
- value: "\u5546\u54C1\u7BB1\u89C4",
2861
- label: "\u5546\u54C1\u7BB1\u89C4"
2862
- },
2863
- {
2864
- value: "\u5546\u54C1\u5355\u4F4D",
2865
- label: "\u5546\u54C1\u5355\u4F4D"
2866
- }
2867
- ];
2868
- function emitChangeEvt() {
2869
- emits(
2870
- "change",
2871
- options.filter((op) => checkList.value.includes(op.value))
2872
- );
2873
- }
2874
2857
  function handOk() {
2875
2858
  visible.value = false;
2876
2859
  emitChangeEvt();
2877
2860
  }
2878
2861
  function init() {
2879
- checkList.value = props.associatedFields.map((item) => item.value);
2862
+ checkList.value = props.associatedFields?.map((item) => item.value);
2880
2863
  }
2881
- function visibleChange(visible2) {
2882
- if (visible2) {
2883
- init();
2884
- }
2864
+ function emitChangeEvt() {
2865
+ emits(
2866
+ "change",
2867
+ props.options.filter((op) => checkList.value.includes(op.value))
2868
+ );
2885
2869
  }
2886
2870
  function handleDel(value) {
2887
2871
  checkList.value = checkList.value.filter((cl) => cl !== value);
2888
2872
  emitChangeEvt();
2889
2873
  }
2890
2874
  init();
2875
+ function visibleChange(visible2) {
2876
+ if (visible2) {
2877
+ init();
2878
+ }
2879
+ }
2891
2880
  vue.watch(visible, (val) => {
2892
2881
  visibleChange(val);
2893
2882
  });
2894
2883
  return (_ctx, _cache) => {
2895
2884
  const _component_Delete = vue.resolveComponent("Delete");
2896
2885
  return vue.openBlock(), vue.createElementBlock("div", null, [
2897
- _hoisted_1$6,
2886
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.defaultOptions, (option) => {
2887
+ return vue.openBlock(), vue.createElementBlock("div", {
2888
+ key: `defaultOption${option?.value}`,
2889
+ class: "bm-associated-fields-item"
2890
+ }, [
2891
+ vue.createElementVNode("span", _hoisted_1$6, vue.toDisplayString(option?.label), 1)
2892
+ ]);
2893
+ }), 128)),
2898
2894
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.associatedFields, (item) => {
2899
2895
  return vue.openBlock(), vue.createElementBlock("div", {
2900
2896
  key: item.value,
2901
2897
  class: "bm-associated-fields-item"
2902
2898
  }, [
2903
- vue.createElementVNode("span", _hoisted_2$4, vue.toDisplayString(item.label), 1),
2899
+ vue.createElementVNode("span", _hoisted_2$4, vue.toDisplayString(item?.label), 1),
2904
2900
  vue.createVNode(_component_Delete, {
2905
2901
  class: "bm-associated-fields-item__icon",
2906
2902
  onClick: ($event) => handleDel(item.value)
2907
2903
  }, null, 8, ["onClick"])
2908
2904
  ]);
2909
2905
  }), 128)),
2910
- vue.createVNode(vue.unref(antDesignVue.Dropdown), {
2906
+ __props.options?.length ? (vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Dropdown), {
2907
+ key: 0,
2911
2908
  visible: visible.value,
2912
2909
  "onUpdate:visible": _cache[2] || (_cache[2] = ($event) => visible.value = $event),
2913
2910
  trigger: ["click"]
@@ -2923,8 +2920,8 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
2923
2920
  style: { "width": "100%" }
2924
2921
  }, {
2925
2922
  default: vue.withCtx(() => [
2926
- (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, vue.renderList(options, (item) => {
2927
- return vue.createVNode(vue.unref(antDesignVue.MenuItem), {
2923
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.options, (item) => {
2924
+ return vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.MenuItem), {
2928
2925
  key: item.value
2929
2926
  }, {
2930
2927
  default: vue.withCtx(() => [
@@ -2940,7 +2937,7 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
2940
2937
  ]),
2941
2938
  _: 2
2942
2939
  }, 1024);
2943
- }), 64))
2940
+ }), 128))
2944
2941
  ]),
2945
2942
  _: 1
2946
2943
  }, 8, ["value"])
@@ -2948,7 +2945,7 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
2948
2945
  _: 1
2949
2946
  }),
2950
2947
  vue.createVNode(vue.unref(antDesignVue.Divider), { style: { "margin": "0" } }),
2951
- vue.createElementVNode("div", _hoisted_3$2, [
2948
+ vue.createElementVNode("div", _hoisted_3$3, [
2952
2949
  vue.createVNode(vue.unref(antDesignVue.Button), {
2953
2950
  onClick: _cache[1] || (_cache[1] = ($event) => visible.value = false)
2954
2951
  }, {
@@ -2973,28 +2970,25 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
2973
2970
  })
2974
2971
  ]),
2975
2972
  default: vue.withCtx(() => [
2976
- vue.createVNode(vue.unref(antDesignVue.Button), {
2977
- style: { "margin-top": "8px" },
2978
- block: ""
2979
- }, {
2973
+ vue.createVNode(vue.unref(antDesignVue.Button), { style: { "margin-top": "8px" } }, {
2980
2974
  default: vue.withCtx(() => [
2981
2975
  vue.createVNode(vue.unref(iconsVue.PlusOutlined)),
2982
- vue.createTextVNode(" \u6DFB\u52A0\u5B50\u5B57\u6BB5 ")
2976
+ vue.createTextVNode("\u6DFB\u52A0\u5B50\u5B57\u6BB5")
2983
2977
  ]),
2984
2978
  _: 1
2985
2979
  })
2986
2980
  ]),
2987
2981
  _: 1
2988
- }, 8, ["visible"])
2982
+ }, 8, ["visible"])) : vue.createCommentVNode("v-if", true)
2989
2983
  ]);
2990
2984
  };
2991
2985
  }
2992
2986
  });
2993
- var AssociatedFields = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__file", "associated-fields.vue"]]);
2987
+ var pureAssociatedFields = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__file", "pure-associated-fields.vue"]]);
2994
2988
 
2995
2989
  const _hoisted_1$5 = /* @__PURE__ */ vue.createElementVNode("div", { style: { "margin": "18px 0 6px" } }, "\u4EC5\u83B7\u53D6", -1);
2996
2990
  const _hoisted_2$3 = /* @__PURE__ */ vue.createElementVNode("div", { style: { "margin-top": "7px" } }, "\u4E2D\u53EF\u5206\u9500\u7684\u5546\u54C1\u6570\u636E", -1);
2997
- const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
2991
+ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
2998
2992
  __name: "shop-data-filter",
2999
2993
  props: ["widgetFormRules", "defaultSelectValue"],
3000
2994
  emits: ["change"],
@@ -3088,7 +3082,7 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
3088
3082
  };
3089
3083
  }
3090
3084
  });
3091
- var ShopDataFilter = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__file", "shop-data-filter.vue"]]);
3085
+ var ShopDataFilter = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__file", "shop-data-filter.vue"]]);
3092
3086
 
3093
3087
  const label$2 = '商品';
3094
3088
  const fieldsMap$2 = {
@@ -3127,12 +3121,44 @@ var product = {
3127
3121
  props(rule, parentRule, widgetFormRules) {
3128
3122
  return [
3129
3123
  {
3130
- type: 'AssociatedFields',
3131
- component: AssociatedFields,
3124
+ type: 'pureAssociatedFields',
3125
+ component: pureAssociatedFields,
3132
3126
  title: '关联字段',
3133
3127
  field: fieldsMap$2['config.associatedFields'],
3134
3128
  props: {
3135
3129
  associatedFields: rule.config.associatedFields,
3130
+ defaultOptions: [
3131
+ {
3132
+ value: '商品编号',
3133
+ label: '商品编号',
3134
+ },
3135
+ ],
3136
+ options: [
3137
+ {
3138
+ value: '商品名称',
3139
+ label: '商品名称',
3140
+ },
3141
+ {
3142
+ value: '商品简称',
3143
+ label: '商品简称',
3144
+ },
3145
+ {
3146
+ value: '商品图片',
3147
+ label: '商品图片',
3148
+ },
3149
+ {
3150
+ value: '建议零售价',
3151
+ label: '建议零售价',
3152
+ },
3153
+ {
3154
+ value: '商品箱规',
3155
+ label: '商品箱规',
3156
+ },
3157
+ {
3158
+ value: '商品单位',
3159
+ label: '商品单位',
3160
+ },
3161
+ ],
3136
3162
  },
3137
3163
  effect: {
3138
3164
  required: true,
@@ -3194,33 +3220,6 @@ var product = {
3194
3220
  },
3195
3221
  };
3196
3222
 
3197
- const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
3198
- __name: "shop-associated-fields",
3199
- setup(__props) {
3200
- const associatedFields = [
3201
- {
3202
- value: "\u5E97\u94FA\u7F16\u53F7",
3203
- label: "\u5E97\u94FA\u7F16\u53F7"
3204
- },
3205
- {
3206
- value: "\u5E97\u94FA\u540D\u79F0",
3207
- label: "\u5E97\u94FA\u540D\u79F0"
3208
- }
3209
- ];
3210
- return (_ctx, _cache) => {
3211
- return vue.openBlock(), vue.createElementBlock("div", null, [
3212
- (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, vue.renderList(associatedFields, (item) => {
3213
- return vue.createElementVNode("span", {
3214
- key: item.value,
3215
- class: "bm-shop-associated-fields-item"
3216
- }, vue.toDisplayString(item.label), 1);
3217
- }), 64))
3218
- ]);
3219
- };
3220
- }
3221
- });
3222
- var ShopAssociatedFields = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__file", "shop-associated-fields.vue"]]);
3223
-
3224
3223
  let i = 0;
3225
3224
  const label$1 = '店铺';
3226
3225
  const fieldsMap$1 = {
@@ -3260,13 +3259,37 @@ var shop = {
3260
3259
  props(rule, parentRule) {
3261
3260
  return [
3262
3261
  {
3263
- type: 'ShopAssociatedFields',
3264
- component: ShopAssociatedFields,
3262
+ type: 'pureAssociatedFields',
3263
+ component: pureAssociatedFields,
3265
3264
  title: '关联字段',
3266
3265
  field: 'config.associatedFields',
3266
+ props: {
3267
+ associatedFields: rule.config.associatedFields,
3268
+ defaultOptions: [
3269
+ {
3270
+ value: '店铺编号',
3271
+ label: '店铺编号',
3272
+ },
3273
+ {
3274
+ value: '店铺名称',
3275
+ label: '店铺名称',
3276
+ },
3277
+ ],
3278
+ options: [],
3279
+ },
3267
3280
  effect: {
3268
3281
  required: true,
3269
3282
  },
3283
+ inject: true,
3284
+ on: {
3285
+ change({ api, self }, list) {
3286
+ api.emit('change', self.field, list, self, api, true);
3287
+ self.props.associatedFields = list;
3288
+ nextTick(() => {
3289
+ api.refresh();
3290
+ });
3291
+ },
3292
+ },
3270
3293
  },
3271
3294
  {
3272
3295
  type: 'checkbox',
@@ -3315,8 +3338,8 @@ var shop = {
3315
3338
  required: rule.effect.required,
3316
3339
  },
3317
3340
  config: {
3318
- dataFiltering: rule.config.dataFiltering,
3319
3341
  isMain: rule.config.isMain,
3342
+ associatedFields: rule.config.associatedFields,
3320
3343
  },
3321
3344
  };
3322
3345
  },
@@ -3499,7 +3522,7 @@ const _hoisted_1$4 = {
3499
3522
  xmlns: "http://www.w3.org/2000/svg"
3500
3523
  };
3501
3524
  const _hoisted_2$2 = /* @__PURE__ */ vue.createStaticVNode('<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g transform="translate(-826.000000, -249.000000)"><g transform="translate(667.000000, 71.000000)"><g transform="translate(159.000000, 178.000000)"><path d="M2,0 L197,0 C198.104569,-6.46995335e-16 199,0.8954305 199,2 L199,105 C199,106.104569 198.104569,107 197,107 L2,107 C0.8954305,107 1.3527075e-16,106.104569 0,105 L0,2 C-1.3527075e-16,0.8954305 0.8954305,2.02906125e-16 2,0 Z" fill="#F9FBFF"></path><path d="M41,6 C41.5522847,6 42,6.44771525 42,7 L42,100 C42,100.552285 41.5522847,101 41,101 L7,101 C6.44771525,101 6,100.552285 6,100 L6,7 C6,6.44771525 6.44771525,6 7,6 L41,6 Z M192,6 C192.552285,6 193,6.44771525 193,7 L193,100 C193,100.552285 192.552285,101 192,101 L159,101 C158.447715,101 158,100.552285 158,100 L158,7 C158,6.44771525 158.447715,6 159,6 L192,6 Z M151,35 C151.552285,35 152,35.4477153 152,36 L152,100 C152,100.552285 151.552285,101 151,101 L49,101 C48.4477153,101 48,100.552285 48,100 L48,36 C48,35.4477153 48.4477153,35 49,35 L151,35 Z M151,6 C151.552285,6 152,6.44771525 152,7 L152,30 C152,30.5522847 151.552285,31 151,31 L49,31 C48.4477153,31 48,30.5522847 48,30 L48,7 C48,6.44771525 48.4477153,6 49,6 L151,6 Z" fill="#EFF3FF"></path><rect stroke="#8FAAFF" fill="#D0DCFF" x="12.5" y="17.5" width="23" height="13" rx="0.5"></rect><rect fill="#E4E8F7" x="12" y="47" width="24" height="14" rx="0.5"></rect><rect fill="#E4E8F7" x="12" y="75" width="24" height="14" rx="0.5"></rect><use stroke="#AEC2FF" mask="url(#mask-2)" stroke-width="2" fill-opacity="0.26" fill="#AFC3FF" stroke-dasharray="2" xlink:href="#path-1"></use><path d="M33.5,20 C35.9852814,20 38,22.0147186 38,24.5 C38,26.9852814 35.9852814,29 33.5,29 C31.0147186,29 29,26.9852814 29,24.5 C29,22.0147186 31.0147186,20 33.5,20 Z M33.5,22 C32.1192881,22 31,23.1192881 31,24.5 C31,25.8807119 32.1192881,27 33.5,27 C34.8807119,27 36,25.8807119 36,24.5 C36,23.1192881 34.8807119,22 33.5,22 Z" fill="#2F4EED"></path><circle fill="#F9FBFF" cx="33.5" cy="24.5" r="2.5"></circle><path d="M42.5,22 C65.8354499,22 85.7454723,36.6659986 93.5155164,57.2834451 L93.7801465,55.3991118 C93.8570096,54.8522019 94.3626777,54.4711537 94.9095876,54.5480169 C95.4564976,54.6248801 95.8375458,55.1305481 95.7606826,55.677458 L94.925644,61.6190665 C94.8487808,62.1659764 94.3431128,62.5470246 93.7962028,62.4701614 L93.7673315,62.4658857 C93.5875459,62.4468789 93.4107192,62.3789077 93.2577621,62.2594045 L88.5296976,58.5654356 C88.0944913,58.2254152 88.0173279,57.5969697 88.3573483,57.1617634 C88.6973688,56.7265571 89.3258142,56.6493937 89.7610205,56.9894141 L91.887337,58.6494477 C84.582156,38.4419045 65.2276218,24 42.5,24 C40.4254117,24 38.3789284,24.1203318 36.367149,24.3543965 L36.022518,22.3809268 C38.1466458,22.1293826 40.3082134,22 42.5,22 Z" fill="#2F4EED"></path></g></g></g></g>', 1);
3502
- const _hoisted_3$1 = [
3525
+ const _hoisted_3$2 = [
3503
3526
  _hoisted_2$2
3504
3527
  ];
3505
3528
  const _hoisted_4$1 = /* @__PURE__ */ vue.createElementVNode("div", { style: { "line-height": "20px", "margin-top": "12px", "color": "#505259" } }, " \u8BF7\u62D6\u62FD\u6216\u70B9\u51FB\u5DE6\u4FA7\u5B57\u6BB5\u521B\u5EFA\u8868\u5355 ", -1);
@@ -3509,7 +3532,7 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
3509
3532
  setup(__props) {
3510
3533
  return (_ctx, _cache) => {
3511
3534
  return vue.openBlock(), vue.createElementBlock("div", null, [
3512
- (vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$4, _hoisted_3$1)),
3535
+ (vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$4, _hoisted_3$2)),
3513
3536
  _hoisted_4$1
3514
3537
  ]);
3515
3538
  };
@@ -3534,6 +3557,18 @@ const formDesignerProps = {
3534
3557
  type: Boolean,
3535
3558
  default: false,
3536
3559
  },
3560
+ dragCheckFunc: {
3561
+ type: Function,
3562
+ default: (underlying_vm) => true,
3563
+ },
3564
+ formRulePipe: {
3565
+ type: Function,
3566
+ default: (obj) => obj,
3567
+ },
3568
+ addWidgetFunc: {
3569
+ type: Function,
3570
+ default: (pushRowWidget, pushTableWidgets) => null,
3571
+ },
3537
3572
  };
3538
3573
 
3539
3574
  const _hoisted_1$3 = {
@@ -3635,6 +3670,12 @@ const widgetNamesRowAccept = [
3635
3670
  shop.name,
3636
3671
  materialType.name,
3637
3672
  ];
3673
+ function pushTableWidgets(key, config) {
3674
+ widgetsTableAccept[key] = config;
3675
+ }
3676
+ function pushRowWidgets(key) {
3677
+ widgetNamesRowAccept.push(key);
3678
+ }
3638
3679
  var ruleList = {
3639
3680
  [row.name]: row,
3640
3681
  [input.name]: input,
@@ -3656,8 +3697,12 @@ var ruleList = {
3656
3697
  [materialType.name]: materialType,
3657
3698
  };
3658
3699
 
3659
- const _hoisted_1$1 = { class: "bm-table-column__main" };
3660
- const _hoisted_2$1 = { class: "bm-table-column-btn-wrap" };
3700
+ const _hoisted_1$1 = {
3701
+ class: "bm-table-column__main",
3702
+ style: { "margin-right": "0" }
3703
+ };
3704
+ const _hoisted_2$1 = { class: "bm-table-column__main" };
3705
+ const _hoisted_3$1 = { class: "bm-table-column-btn-wrap" };
3661
3706
  const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
3662
3707
  __name: "table-column",
3663
3708
  props: ["formCreateInject"],
@@ -3721,25 +3766,32 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
3721
3766
  align: "middle"
3722
3767
  }, {
3723
3768
  default: vue.withCtx(() => [
3724
- vue.createVNode(vue.unref(iconsVue.HolderOutlined), {
3725
- class: vue.normalizeClass([handleClass])
3726
- }, null, 8, ["class"]),
3727
- vue.createElementVNode("div", _hoisted_1$1, vue.toDisplayString(element.title.title), 1),
3728
- vue.createVNode(vue.unref(iconsVue.EditOutlined), {
3729
- class: "bm-table-column__icon is-edit",
3730
- onClick: ($event) => handleEdit(element)
3731
- }, null, 8, ["onClick"]),
3732
- vue.createVNode(_component_Delete, {
3733
- class: "bm-table-column__icon is-del",
3734
- onClick: ($event) => handleDelete(element, index)
3735
- }, null, 8, ["onClick"])
3769
+ element.config?.immutable ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
3770
+ vue.createVNode(vue.unref(iconsVue.HolderOutlined), {
3771
+ class: vue.normalizeClass([handleClass])
3772
+ }, null, 8, ["class"]),
3773
+ vue.createElementVNode("div", _hoisted_1$1, vue.toDisplayString(element.title.title), 1)
3774
+ ], 64)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
3775
+ vue.createVNode(vue.unref(iconsVue.HolderOutlined), {
3776
+ class: vue.normalizeClass([handleClass])
3777
+ }, null, 8, ["class"]),
3778
+ vue.createElementVNode("div", _hoisted_2$1, vue.toDisplayString(element.title.title), 1),
3779
+ vue.createVNode(vue.unref(iconsVue.EditOutlined), {
3780
+ class: "bm-table-column__icon is-edit",
3781
+ onClick: ($event) => handleEdit(element)
3782
+ }, null, 8, ["onClick"]),
3783
+ vue.createVNode(_component_Delete, {
3784
+ class: "bm-table-column__icon is-del",
3785
+ onClick: ($event) => handleDelete(element, index)
3786
+ }, null, 8, ["onClick"])
3787
+ ], 64))
3736
3788
  ]),
3737
3789
  _: 2
3738
3790
  }, 1024)
3739
3791
  ]),
3740
3792
  _: 1
3741
3793
  }, 8, ["list", "handle"]),
3742
- vue.createElementVNode("div", _hoisted_2$1, [
3794
+ vue.createElementVNode("div", _hoisted_3$1, [
3743
3795
  vue.createVNode(vue.unref(antDesignVue.FormItemRest), null, {
3744
3796
  default: vue.withCtx(() => [
3745
3797
  vue.createVNode(vue.unref(antDesignVue.Select), {
@@ -3849,7 +3901,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
3849
3901
  if (rule?.props?.type === "textarea" && parentType === WidgetType.TableWidget) {
3850
3902
  rule.props.autoSize = true;
3851
3903
  }
3852
- if (rule.config.config.name === "product" && parentType === WidgetType.TableWidget) {
3904
+ if (rule.config?.config?.name === "product" && parentType === WidgetType.TableWidget) {
3853
3905
  rule.title.title = "\u5546\u54C1\u7F16\u53F7";
3854
3906
  }
3855
3907
  }
@@ -3863,7 +3915,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
3863
3915
  people: "\u9664\u201C\u5FC5\u586B\u3001\u9009\u9879\u201D\u5185\u5BB9\u8BBE\u7F6E\u4E0D\u53EF\u4FEE\u6539\uFF0C\u5176\u4ED6\u4FE1\u606F\u53EF\u4FEE\u6539",
3864
3916
  department: "\u9664\u201C\u5FC5\u586B\u3001\u9009\u9879\u201D\u5185\u5BB9\u8BBE\u7F6E\u4E0D\u53EF\u4FEE\u6539\uFF0C\u5176\u4ED6\u4FE1\u606F\u53EF\u4FEE\u6539"
3865
3917
  };
3866
- const tabData = createTab();
3918
+ const tabData = typeof props.formRulePipe === "function" ? props.formRulePipe(createTab()) : [];
3919
+ typeof props.addWidgetFunc === "function" && props.addWidgetFunc(pushRowWidgets, pushTableWidgets);
3867
3920
  const activeKey = vue.ref("controlLibrary");
3868
3921
  const widgetFormRules = vue.reactive([]);
3869
3922
  const activeRule = vue.ref({});
@@ -3871,7 +3924,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
3871
3924
  const fApi = vue.ref();
3872
3925
  const activeParentRule = vue.ref();
3873
3926
  const menuList = vue.computed(
3874
- () => tabData.find((tab) => tab.key === activeKey.value).menuList
3927
+ () => tabData.find((tab) => tab.key === activeKey.value)?.menuList
3875
3928
  );
3876
3929
  const activeProps = vue.computed(() => cacheProps[activeRule.value.field]);
3877
3930
  const activeRuleInList = vue.computed(
@@ -3902,10 +3955,10 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
3902
3955
  }
3903
3956
  }
3904
3957
  function moveMenuItem(evt) {
3905
- return checkDragMove(evt);
3958
+ return props?.dragCheckFunc(evt?.dragged?._underlying_vm_) && checkDragMove(evt);
3906
3959
  }
3907
3960
  function moveFormItem(evt) {
3908
- return checkDragMove(evt);
3961
+ return props?.dragCheckFunc(evt?.dragged?._underlying_vm_) && checkDragMove(evt);
3909
3962
  }
3910
3963
  function handleMenuItemDragStart(evt) {
3911
3964
  const item = evt.item.children[0];