bm-admin-ui 1.2.36-alpha → 1.2.38-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 (75) 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/edit-form/index.d.ts +4 -4
  8. package/es/components/edit-form/src/edit-form.vue.d.ts +4 -4
  9. package/es/components/feedback/index.d.ts +12 -12
  10. package/es/components/feedback/src/bmAlert.vue.d.ts +6 -6
  11. package/es/components/feedback/src/bmModal.vue.d.ts +6 -6
  12. package/es/components/flow-designer/src/bm-nodes/BmConditionNode.vue.d.ts +8 -8
  13. package/es/components/form-create/index.js +144 -60
  14. package/es/components/form-designer/index.js +2 -20
  15. package/es/components/input-tags-display/index.js +10 -5
  16. package/es/components/search-filter/src/form-select-all.vue.d.ts +6 -6
  17. package/es/components/search-filter/src/search-reset-btn.vue.d.ts +3 -3
  18. package/es/components/select-all/index.d.ts +6 -6
  19. package/es/components/select-all/src/selectAll.vue.d.ts +6 -6
  20. package/es/components/staffs-selector/index.d.ts +8 -8
  21. package/es/components/staffs-selector/src/staffs-selector.vue.d.ts +8 -8
  22. package/es/components/videoView/index.d.ts +1 -1
  23. package/es/components/videoView/src/videoView.vue.d.ts +1 -1
  24. package/lib/components/attachment/index.d.ts +3 -3
  25. package/lib/components/attachment/src/attachment.vue.d.ts +3 -3
  26. package/lib/components/breadcrumb/index.d.ts +7 -7
  27. package/lib/components/breadcrumb/src/breadcrumb.vue.d.ts +7 -7
  28. package/lib/components/button/index.d.ts +6 -6
  29. package/lib/components/button/src/button.vue.d.ts +6 -6
  30. package/lib/components/edit-form/index.d.ts +4 -4
  31. package/lib/components/edit-form/src/edit-form.vue.d.ts +4 -4
  32. package/lib/components/feedback/index.d.ts +12 -12
  33. package/lib/components/feedback/src/bmAlert.vue.d.ts +6 -6
  34. package/lib/components/feedback/src/bmModal.vue.d.ts +6 -6
  35. package/lib/components/flow-designer/src/bm-nodes/BmConditionNode.vue.d.ts +8 -8
  36. package/lib/components/form-create/index.js +141 -57
  37. package/lib/components/form-designer/index.js +2 -20
  38. package/lib/components/input-tags-display/index.js +9 -4
  39. package/lib/components/search-filter/src/form-select-all.vue.d.ts +6 -6
  40. package/lib/components/search-filter/src/search-reset-btn.vue.d.ts +3 -3
  41. package/lib/components/select-all/index.d.ts +6 -6
  42. package/lib/components/select-all/src/selectAll.vue.d.ts +6 -6
  43. package/lib/components/staffs-selector/index.d.ts +8 -8
  44. package/lib/components/staffs-selector/src/staffs-selector.vue.d.ts +8 -8
  45. package/lib/components/videoView/index.d.ts +1 -1
  46. package/lib/components/videoView/src/videoView.vue.d.ts +1 -1
  47. package/package.json +1 -1
  48. package/theme-chalk/index.css +1 -1
  49. package/theme-chalk/input-tags-display.css +1 -1
  50. package/types/components/attachment/index.d.ts +3 -3
  51. package/types/components/attachment/src/attachment.vue.d.ts +3 -3
  52. package/types/components/breadcrumb/index.d.ts +7 -7
  53. package/types/components/breadcrumb/src/breadcrumb.vue.d.ts +7 -7
  54. package/types/components/button/index.d.ts +6 -6
  55. package/types/components/button/src/button.vue.d.ts +6 -6
  56. package/types/components/edit-form/index.d.ts +4 -4
  57. package/types/components/edit-form/src/edit-form.vue.d.ts +4 -4
  58. package/types/components/feedback/index.d.ts +12 -12
  59. package/types/components/feedback/src/bmAlert.vue.d.ts +6 -6
  60. package/types/components/feedback/src/bmModal.vue.d.ts +6 -6
  61. package/types/components/flow-designer/src/bm-nodes/BmConditionNode.vue.d.ts +8 -8
  62. package/types/components/search-filter/src/form-select-all.vue.d.ts +6 -6
  63. package/types/components/search-filter/src/search-reset-btn.vue.d.ts +3 -3
  64. package/types/components/select-all/index.d.ts +6 -6
  65. package/types/components/select-all/src/selectAll.vue.d.ts +6 -6
  66. package/types/components/staffs-selector/index.d.ts +8 -8
  67. package/types/components/staffs-selector/src/staffs-selector.vue.d.ts +8 -8
  68. package/types/components/videoView/index.d.ts +1 -1
  69. package/types/components/videoView/src/videoView.vue.d.ts +1 -1
  70. package/es/components/staffs-selector/src/autoTooltip.vue.d.ts +0 -26
  71. package/es/components/staffs-selector/src/virtualScroll.vue.d.ts +0 -69
  72. package/lib/components/staffs-selector/src/autoTooltip.vue.d.ts +0 -26
  73. package/lib/components/staffs-selector/src/virtualScroll.vue.d.ts +0 -69
  74. package/types/components/staffs-selector/src/autoTooltip.vue.d.ts +0 -26
  75. package/types/components/staffs-selector/src/virtualScroll.vue.d.ts +0 -69
@@ -89,7 +89,7 @@ var input = {
89
89
  field,
90
90
  title: data.title.title,
91
91
  headerClassName: data.effect.required ? 'is-required' : '',
92
- minWidth: data.config.fieldRatio,
92
+ width: data.config.fieldRatio,
93
93
  slots: {
94
94
  default({ row }) {
95
95
  return vue.h(antDesignVue.Input, {
@@ -165,7 +165,7 @@ var textarea = {
165
165
  field,
166
166
  title: data.title.title,
167
167
  headerClassName: data.effect.required ? 'is-required' : '',
168
- minWidth: data.config.fieldRatio,
168
+ width: data.config.fieldRatio,
169
169
  slots: {
170
170
  default({ row }) {
171
171
  return vue.h(antDesignVue.Input, {
@@ -230,7 +230,7 @@ var numInput = {
230
230
  field,
231
231
  title: data.title.title,
232
232
  headerClassName: data.effect.required ? 'is-required' : '',
233
- minWidth: data.config.fieldRatio,
233
+ width: data.config.fieldRatio,
234
234
  slots: {
235
235
  default({ row }) {
236
236
  return vue.h(antDesignVue.InputNumber, {
@@ -367,7 +367,7 @@ var radio = {
367
367
  field,
368
368
  title: data.title.title,
369
369
  headerClassName: data.effect.required ? 'is-required' : '',
370
- minWidth: data.config.fieldRatio,
370
+ width: data.config.fieldRatio,
371
371
  slots: {
372
372
  default({ row }) {
373
373
  return vue.h(antDesignVue.Select, {
@@ -396,7 +396,7 @@ var checkbox = {
396
396
  type: data.type,
397
397
  field: data.field,
398
398
  title: data.title.title,
399
- props: Object.assign({ placeholder: data.props.placeholder, allowClear: true, maxTagCount: data.props.maxTagCount, maxTagPlaceholder: data.props.maxTagPlaceholder }, extraProps),
399
+ props: Object.assign({ placeholder: data.props.placeholder, allowClear: true, showArrow: true, maxTagCount: data.props.maxTagCount, maxTagPlaceholder: data.props.maxTagPlaceholder }, extraProps),
400
400
  options: data.options,
401
401
  effect: {
402
402
  required: data.effect.required && (((_a = data.effect) === null || _a === void 0 ? void 0 : _a.requiredTip) || '请选择'),
@@ -416,7 +416,7 @@ var checkbox = {
416
416
  type: data.type,
417
417
  field: data.field,
418
418
  title: data.title.title,
419
- props: Object.assign({ placeholder: data.props.placeholder, allowClear: true, maxTagCount: data.props.maxTagCount, maxTagPlaceholder: data.props.maxTagPlaceholder }, extraProps),
419
+ props: Object.assign({ placeholder: data.props.placeholder, allowClear: true, showArrow: true, maxTagCount: data.props.maxTagCount, maxTagPlaceholder: data.props.maxTagPlaceholder }, extraProps),
420
420
  options: data.options,
421
421
  effect: {
422
422
  required: data.effect.required && (((_a = data.effect) === null || _a === void 0 ? void 0 : _a.requiredTip) || '请选择'),
@@ -433,7 +433,7 @@ var checkbox = {
433
433
  field,
434
434
  title: data.title.title,
435
435
  headerClassName: data.effect.required ? 'is-required' : '',
436
- minWidth: data.config.fieldRatio,
436
+ width: data.config.fieldRatio,
437
437
  slots: {
438
438
  default({ row }) {
439
439
  return vue.h(antDesignVue.Select, {
@@ -442,6 +442,7 @@ var checkbox = {
442
442
  options: data.options,
443
443
  mode: 'multiple',
444
444
  allowClear: true,
445
+ showArrow: true,
445
446
  maxTagCount: data.props.maxTagCount,
446
447
  maxTagPlaceholder: data.props.maxTagPlaceholder,
447
448
  getPopupContainer: getContainer,
@@ -521,7 +522,7 @@ var date = {
521
522
  field,
522
523
  title: data.title.title,
523
524
  headerClassName: data.effect.required ? 'is-required' : '',
524
- minWidth: data.config.fieldRatio,
525
+ width: data.config.fieldRatio,
525
526
  slots: {
526
527
  default({ row }) {
527
528
  return vue.h(antDesignVue.DatePicker, {
@@ -606,7 +607,7 @@ var dateRange = {
606
607
  field,
607
608
  title: data.title.title,
608
609
  headerClassName: data.effect.required ? 'is-required' : '',
609
- minWidth: data.config.fieldRatio,
610
+ width: data.config.fieldRatio,
610
611
  slots: {
611
612
  default({ row }) {
612
613
  return vue.h(antDesignVue.RangePicker, {
@@ -797,6 +798,8 @@ var file = {
797
798
  extraProps: {
798
799
  maxSize: 20,
799
800
  tips: '单个附件大小需≤20M',
801
+ maxCount: 1,
802
+ hideDisabledBtn: false,
800
803
  },
801
804
  defaultList: data.value,
802
805
  uploadRequest(inject, file) {
@@ -809,14 +812,8 @@ var file = {
809
812
  {
810
813
  required: data.effect.required,
811
814
  type: 'array',
812
- min: data.effect.required ? 1 : 0,
813
815
  message: ((_a = data.effect) === null || _a === void 0 ? void 0 : _a.requiredTip) || '请上传附件',
814
816
  },
815
- {
816
- type: 'array',
817
- len: 1,
818
- message: '附件数量不能超过1个',
819
- },
820
817
  ],
821
818
  inject: true,
822
819
  on: {
@@ -844,6 +841,8 @@ var file = {
844
841
  extraProps: {
845
842
  maxSize: 20,
846
843
  tips: '单个附件大小需≤20M',
844
+ maxCount: 1,
845
+ hideDisabledBtn: false,
847
846
  },
848
847
  defaultList: data.value,
849
848
  uploadRequest(inject, file) {
@@ -856,14 +855,8 @@ var file = {
856
855
  {
857
856
  required: data.effect.required,
858
857
  type: 'array',
859
- min: data.effect.required ? 1 : 0,
860
858
  message: ((_a = data.effect) === null || _a === void 0 ? void 0 : _a.requiredTip) || '请上传附件',
861
859
  },
862
- {
863
- type: 'array',
864
- len: 1,
865
- message: '附件数量不能超过1个',
866
- },
867
860
  ],
868
861
  inject: true,
869
862
  on: {
@@ -1049,7 +1042,7 @@ var people = {
1049
1042
  field,
1050
1043
  title: data.title.title,
1051
1044
  headerClassName: data.effect.required ? 'is-required' : '',
1052
- minWidth: data.config.fieldRatio,
1045
+ width: data.config.fieldRatio,
1053
1046
  slots: {
1054
1047
  default({ row }) {
1055
1048
  var _a;
@@ -1077,7 +1070,7 @@ var people = {
1077
1070
 
1078
1071
  const _hoisted_1$7 = ["onClick"];
1079
1072
  const _hoisted_2$7 = ["onClick"];
1080
- const _hoisted_3$6 = { class: "box" };
1073
+ const _hoisted_3$5 = { class: "box" };
1081
1074
  const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1082
1075
  __name: "temp-content",
1083
1076
  props: ["content", "preview"],
@@ -1136,7 +1129,7 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
1136
1129
  class: "bm-fc-rect-wrapper",
1137
1130
  onClick: vue.withModifiers(triggerPreview, ["self"])
1138
1131
  }, [
1139
- vue.createElementVNode("div", _hoisted_3$6, [
1132
+ vue.createElementVNode("div", _hoisted_3$5, [
1140
1133
  vue.createElementVNode("div", {
1141
1134
  class: "bm-fc-rect-outer",
1142
1135
  style: vue.normalizeStyle(
@@ -1161,7 +1154,7 @@ var TempContent = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__file", "temp-con
1161
1154
 
1162
1155
  const _hoisted_1$6 = { class: "bm-fc-select-material-temp__content__item-info" };
1163
1156
  const _hoisted_2$6 = { class: "bm-fc-select-material-temp__content__item-info__cover" };
1164
- const _hoisted_3$5 = ["src"];
1157
+ const _hoisted_3$4 = ["src"];
1165
1158
  const _hoisted_4$4 = ["onClick"];
1166
1159
  const _hoisted_5$4 = {
1167
1160
  key: 1,
@@ -1367,7 +1360,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
1367
1360
  class: "bm-fc-select-material-temp__content__item-info__cover__img",
1368
1361
  src: item.coverPlanUrl,
1369
1362
  alt: ""
1370
- }, null, 8, _hoisted_3$5)) : (vue.openBlock(), vue.createBlock(TempContent, {
1363
+ }, null, 8, _hoisted_3$4)) : (vue.openBlock(), vue.createBlock(TempContent, {
1371
1364
  key: 1,
1372
1365
  content: item.htmlContent
1373
1366
  }, null, 8, ["content"]))
@@ -18811,7 +18804,7 @@ var ShopInput = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__file", "shop-input
18811
18804
 
18812
18805
  const _hoisted_1$5 = { class: "bm-dc-table-widget" };
18813
18806
  const _hoisted_2$5 = { class: "bm-dc-table-widget__title" };
18814
- const _hoisted_3$4 = { class: "bm-dc-table-widget__title-samll" };
18807
+ const _hoisted_3$3 = { class: "bm-dc-table-widget__title-samll" };
18815
18808
  const _hoisted_4$3 = {
18816
18809
  key: 0,
18817
18810
  class: "bm-dc-table-widget__top-bar"
@@ -18923,10 +18916,17 @@ const _sfc_main$7 = vue.defineComponent({
18923
18916
  });
18924
18917
  data.forEach((row) => {
18925
18918
  Object.keys(cache).forEach((key) => {
18926
- if (!isNaN(row[key]))
18927
- cache[key].count += row[key];
18919
+ let tempValue = row[key];
18920
+ if (![null, void 0, ""].includes(tempValue)) {
18921
+ tempValue = Number(tempValue);
18922
+ if (!isNaN(tempValue))
18923
+ cache[key].count += tempValue;
18924
+ }
18928
18925
  });
18929
18926
  });
18927
+ Object.keys(cache).forEach((key) => {
18928
+ cache[key].count = Number(cache[key].count.toFixed(4));
18929
+ });
18930
18930
  if (props.rule.config.showTotal) {
18931
18931
  cache = {
18932
18932
  _total: { title: "\u884C\u6570", count: data?.length || 0 },
@@ -18996,7 +18996,7 @@ const _sfc_main$7 = vue.defineComponent({
18996
18996
  pre.push({
18997
18997
  field: childField,
18998
18998
  title,
18999
- minWidth: "140px",
18999
+ width: "140px",
19000
19000
  slots: {
19001
19001
  default({ row }) {
19002
19002
  if (row?.[childField]) {
@@ -19043,11 +19043,19 @@ const _sfc_main$7 = vue.defineComponent({
19043
19043
  return pre;
19044
19044
  }, [])
19045
19045
  );
19046
+ columns.push({
19047
+ field: "_empty",
19048
+ title: " ",
19049
+ showOverflow: false,
19050
+ showHeaderOverflow: false,
19051
+ minWidth: 1,
19052
+ resizable: false
19053
+ });
19046
19054
  if (!props.hidden)
19047
19055
  columns.push({
19048
19056
  field: oper,
19049
19057
  title: "\u64CD\u4F5C",
19050
- minWidth: isProductCenter.value ? "110px" : "140px",
19058
+ width: isProductCenter.value ? "110px" : "140px",
19051
19059
  fixed: "right",
19052
19060
  slots: {
19053
19061
  default: "floatHandle"
@@ -19090,6 +19098,9 @@ const _sfc_main$7 = vue.defineComponent({
19090
19098
  let baseTitle = mainName;
19091
19099
  if (rule.name === "product") {
19092
19100
  baseTitle = `\u5546\u54C1\u7F16\u7801-${mainName}`;
19101
+ if (isProductCenter.value) {
19102
+ baseTitle = `\u5546\u54C1\u7F16\u53F7-${mainName}`;
19103
+ }
19093
19104
  if (isProductCenterSuit.value && rule.field === "productCode") {
19094
19105
  baseTitle = "\u5546\u54C1\u7F16\u53F7";
19095
19106
  }
@@ -19106,7 +19117,7 @@ const _sfc_main$7 = vue.defineComponent({
19106
19117
  field,
19107
19118
  title: getBaseTitle(),
19108
19119
  headerClassName: rule.effect.required ? "is-required" : "",
19109
- minWidth: "140px",
19120
+ width: "140px",
19110
19121
  slots: {
19111
19122
  default: rule.field
19112
19123
  }
@@ -19118,7 +19129,7 @@ const _sfc_main$7 = vue.defineComponent({
19118
19129
  columns2.push({
19119
19130
  field: childField,
19120
19131
  title: `${item.label}-${mainName}`,
19121
- minWidth: "140px",
19132
+ width: "140px",
19122
19133
  slots: {
19123
19134
  default({ row }) {
19124
19135
  if (item.value === "\u5546\u54C1\u56FE\u7247" && row[childField]) {
@@ -19144,6 +19155,9 @@ const _sfc_main$7 = vue.defineComponent({
19144
19155
  ]
19145
19156
  );
19146
19157
  }
19158
+ if (row[childField]) {
19159
+ return vue.h(components.BmOverTooltips, { title: row[childField] }, []);
19160
+ }
19147
19161
  return vue.h(
19148
19162
  "div",
19149
19163
  {
@@ -19151,10 +19165,10 @@ const _sfc_main$7 = vue.defineComponent({
19151
19165
  color: "#9393A3"
19152
19166
  },
19153
19167
  class: {
19154
- "bm-fc-placeholder": !row[childField]
19168
+ "bm-fc-placeholder": true
19155
19169
  }
19156
19170
  },
19157
- [row[childField] || "\u7CFB\u7EDF\u81EA\u52A8\u83B7\u53D6"]
19171
+ ["\u7CFB\u7EDF\u81EA\u52A8\u83B7\u53D6"]
19158
19172
  );
19159
19173
  }
19160
19174
  }
@@ -19243,11 +19257,45 @@ const _sfc_main$7 = vue.defineComponent({
19243
19257
  }
19244
19258
  }
19245
19259
  function handleExport() {
19260
+ let data2 = xGrid.value.data;
19261
+ let res = [];
19262
+ data2?.forEach((row, i) => {
19263
+ const obj = {};
19264
+ for (let item of Object.entries(row)) {
19265
+ if (Object.prototype.toString.call(item[1]) === "[object Array]") {
19266
+ let temp = item[1]?.map((x) => x.name || x.categoryName || x)?.filter((x) => x)?.join(",");
19267
+ obj[item?.[0]] = temp;
19268
+ } else if (Object.prototype.toString.call(item[1]) === "[object Object]") {
19269
+ obj[item[0]] = item[1]?.name;
19270
+ } else {
19271
+ obj[item[0]] = item[1];
19272
+ }
19273
+ }
19274
+ res[i] = { ...res[i], ...obj };
19275
+ });
19276
+ buttonLoading.value.export = true;
19246
19277
  xGrid.value.exportData({
19247
19278
  mode: "all",
19248
19279
  columnFilterMethod({ column }) {
19249
19280
  return isValidColumn(column);
19250
- }
19281
+ },
19282
+ beforeExportMethod({ options }) {
19283
+ const headRow = {};
19284
+ const col = options?.columns?.map((col2) => ({
19285
+ [col2.field]: col2.title
19286
+ }));
19287
+ col.forEach((x) => {
19288
+ Object.assign(headRow, x);
19289
+ });
19290
+ res.unshift(headRow);
19291
+ console.log("data", res);
19292
+ },
19293
+ original: true,
19294
+ isHeader: false,
19295
+ data: res,
19296
+ filename: `${dayjs__default["default"]().format("YYYYMMDD")}`
19297
+ }).finally(() => {
19298
+ buttonLoading.value.export = false;
19251
19299
  });
19252
19300
  }
19253
19301
  function emitChange() {
@@ -19332,8 +19380,13 @@ const _sfc_main$7 = vue.defineComponent({
19332
19380
  });
19333
19381
  result.length && validate(result).then((result2) => {
19334
19382
  data.splice(0, data.length, ...result2);
19383
+ antDesignVue.message.success("\u5BFC\u5165\u6210\u529F");
19335
19384
  }).catch((error) => {
19336
- antDesignVue.message.error("\u5B58\u5728\u9519\u8BEF\u6570\u636E\uFF0C\u5BFC\u5165\u5931\u8D25");
19385
+ if (typeof error === "string") {
19386
+ antDesignVue.message.error("\u5B58\u5728\u9519\u8BEF\u6570\u636E\uFF0C\u5BFC\u5165\u5931\u8D25\uFF1A" + error);
19387
+ } else {
19388
+ antDesignVue.message.error("\u5B58\u5728\u9519\u8BEF\u6570\u636E\uFF0C\u5BFC\u5165\u5931\u8D25");
19389
+ }
19337
19390
  console.log("---------------");
19338
19391
  console.log(error);
19339
19392
  console.log("---------------");
@@ -19343,7 +19396,7 @@ const _sfc_main$7 = vue.defineComponent({
19343
19396
  file && reader.readAsText(file, "GB2312");
19344
19397
  }
19345
19398
  function isValidColumn(c) {
19346
- return c.type !== "checkbox" && c.type !== "seq" && c.field !== oper;
19399
+ return c.type !== "checkbox" && c.type !== "seq" && c.field !== oper && c.field !== "_empty";
19347
19400
  }
19348
19401
  function parseCsv(result) {
19349
19402
  let data2 = [];
@@ -19354,22 +19407,34 @@ const _sfc_main$7 = vue.defineComponent({
19354
19407
  if (columnArr.length !== columns.filter((c) => isValidColumn(c)).length) {
19355
19408
  antDesignVue.message.error("\u5BFC\u5165\u7684\u6A21\u677F\u51FA\u9519");
19356
19409
  } else {
19357
- data2 = rows.slice(1).filter((item) => item).map(
19358
- (item) => item.includes(" ") ? item.split(" ") : item.split(",")
19359
- );
19410
+ data2 = rows.slice(1).filter((item) => item).map((item) => {
19411
+ let sonList = item.includes(" ") ? item.split(" ") : item.split(",");
19412
+ sonList = (sonList || []).map((sonItem) => {
19413
+ return sonItem === "" ? void 0 : sonItem;
19414
+ });
19415
+ return sonList;
19416
+ });
19360
19417
  }
19361
19418
  }
19362
19419
  return data2;
19363
19420
  }
19421
+ const parseMap = {
19422
+ product: "\u5546\u54C1\u7F16\u53F7",
19423
+ customer: "\u5BA2\u6237\u7F16\u53F7",
19424
+ shop: "\u5E97\u94FA\u7F16\u53F7",
19425
+ materialTemp: "\u7D20\u6750\u6A21\u677F",
19426
+ materialType: "\u7D20\u6750\u7C7B\u578B"
19427
+ };
19364
19428
  async function validate(rowData) {
19365
19429
  let error = "";
19366
19430
  const validColumns2 = columns.filter((c) => isValidColumn(c));
19367
19431
  for (const row of rowData) {
19368
- for (const { field } of validColumns2) {
19432
+ for (const curColumn of validColumns2) {
19433
+ const field = curColumn.field;
19369
19434
  const rule = childRulesMap.value[`${field}`];
19370
- const title = rule?.title?.title;
19371
19435
  if (!rule)
19372
19436
  continue;
19437
+ const title = rule?.title?.title || curColumn.title || parseMap[rule.name] || "";
19373
19438
  const fieldNames = props.extraConfig[rule.name]?.fieldNames;
19374
19439
  let value = row[`${field}`] || "";
19375
19440
  const txtFormatFn = rule.config?.txtFormatFn;
@@ -19527,6 +19592,9 @@ const _sfc_main$7 = vue.defineComponent({
19527
19592
  [fieldNames.value]: shopInfo.shopCode,
19528
19593
  [fieldNames.label]: shopInfo.shopName
19529
19594
  };
19595
+ if (isProductCenter.value) {
19596
+ handleShopOption(shopInfo, rule, row);
19597
+ }
19530
19598
  } else {
19531
19599
  error = `${title}\u67E5\u8BE2\u7684\u5E97\u94FA\u4E0D\u5B58\u5728`;
19532
19600
  break;
@@ -19609,6 +19677,9 @@ const _sfc_main$7 = vue.defineComponent({
19609
19677
  deep: true
19610
19678
  }
19611
19679
  );
19680
+ const buttonLoading = vue.ref({
19681
+ export: false
19682
+ });
19612
19683
  const buttonLoadingForProductCenter = vue.ref({
19613
19684
  export: false,
19614
19685
  download: false,
@@ -19742,7 +19813,7 @@ const _sfc_main$7 = vue.defineComponent({
19742
19813
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [
19743
19814
  vue.createElementVNode("div", _hoisted_2$5, [
19744
19815
  vue.createTextVNode(vue.toDisplayString(__props.rule.title.title) + " ", 1),
19745
- vue.createElementVNode("span", _hoisted_3$4, vue.toDisplayString(vue.unref(countText)), 1),
19816
+ vue.createElementVNode("span", _hoisted_3$3, vue.toDisplayString(vue.unref(countText)), 1),
19746
19817
  vue.createCommentVNode(" \u5546\u54C1\u4E2D\u5FC3\u5B9A\u5236 \u6309\u94AE "),
19747
19818
  vue.unref(isProductCenter) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$3, [
19748
19819
  !__props.hidden ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
@@ -19817,13 +19888,14 @@ const _sfc_main$7 = vue.defineComponent({
19817
19888
  vue.unref(exportFeature) ? (vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Button), {
19818
19889
  key: 0,
19819
19890
  disabled: __props.disabled,
19891
+ loading: buttonLoading.value.export,
19820
19892
  onClick: handleExport
19821
19893
  }, {
19822
19894
  default: vue.withCtx(() => [
19823
19895
  vue.createTextVNode("\u5BFC\u51FA")
19824
19896
  ]),
19825
19897
  _: 1
19826
- }, 8, ["disabled"])) : vue.createCommentVNode("v-if", true),
19898
+ }, 8, ["disabled", "loading"])) : vue.createCommentVNode("v-if", true),
19827
19899
  vue.createTextVNode("\xA0 "),
19828
19900
  vue.unref(importFeature) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
19829
19901
  vue.createElementVNode("input", {
@@ -19875,6 +19947,18 @@ const _sfc_main$7 = vue.defineComponent({
19875
19947
  ]),
19876
19948
  _: 1
19877
19949
  }, 8, ["disabled"])
19950
+ ], 64)) : vue.unref(tableConfig).isActivityCheckFlag ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
19951
+ vue.createCommentVNode(" \u6D3B\u52A8\u5BA1\u6838\u9875 \u53EA\u5C55\u793A\u5BFC\u51FA\u6309\u94AE "),
19952
+ vue.unref(exportFeature) ? (vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Button), {
19953
+ key: 0,
19954
+ loading: buttonLoading.value.export,
19955
+ onClick: handleExport
19956
+ }, {
19957
+ default: vue.withCtx(() => [
19958
+ vue.createTextVNode("\u5BFC\u51FA")
19959
+ ]),
19960
+ _: 1
19961
+ }, 8, ["loading"])) : vue.createCommentVNode("v-if", true)
19878
19962
  ], 64)) : vue.createCommentVNode("v-if", true)
19879
19963
  ]))
19880
19964
  ]),
@@ -19941,8 +20025,9 @@ const _sfc_main$7 = vue.defineComponent({
19941
20025
  value: row[item.field],
19942
20026
  fetch: __props.extraConfig?.shop,
19943
20027
  "data-filtering": item?.config?.dataFiltering,
20028
+ disabled: item.disabled,
19944
20029
  onChange: ($event) => handleShopOption($event, item, row)
19945
- }, null, 8, ["value", "fetch", "data-filtering", "onChange"])
20030
+ }, null, 8, ["value", "fetch", "data-filtering", "disabled", "onChange"])
19946
20031
  ])
19947
20032
  };
19948
20033
  }),
@@ -19974,7 +20059,7 @@ var TableWidget = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__file", "table-wi
19974
20059
 
19975
20060
  const _hoisted_1$4 = /* @__PURE__ */ vue.createElementVNode("span", { class: "bm-fc-form-item-label is-required" }, "\u7D20\u6750\u6A21\u677F\uFF1A", -1);
19976
20061
  const _hoisted_2$4 = { key: 0 };
19977
- const _hoisted_3$3 = /* @__PURE__ */ vue.createElementVNode("span", { class: "bm-fc-form-item-label" }, "\u7D20\u6750\u7C7B\u578B\uFF1A", -1);
20062
+ const _hoisted_3$2 = /* @__PURE__ */ vue.createElementVNode("span", { class: "bm-fc-form-item-label" }, "\u7D20\u6750\u7C7B\u578B\uFF1A", -1);
19978
20063
  const _hoisted_4$2 = {
19979
20064
  key: 1,
19980
20065
  class: "bm-fc-placeholder"
@@ -20366,7 +20451,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
20366
20451
  default: vue.withCtx(() => [
20367
20452
  vue.createVNode(vue.unref(antDesignVue.Col), null, {
20368
20453
  default: vue.withCtx(() => [
20369
- _hoisted_3$3
20454
+ _hoisted_3$2
20370
20455
  ]),
20371
20456
  _: 1
20372
20457
  }),
@@ -20627,8 +20712,7 @@ var materialTemp = {
20627
20712
  };
20628
20713
 
20629
20714
  const _hoisted_1$3 = { class: "bm-fc-form-item-label" };
20630
- const _hoisted_2$3 = ["src"];
20631
- const _hoisted_3$2 = {
20715
+ const _hoisted_2$3 = {
20632
20716
  key: 1,
20633
20717
  class: "bm-fc-placeholder"
20634
20718
  };
@@ -20802,16 +20886,16 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
20802
20886
  }, {
20803
20887
  default: vue.withCtx(() => [
20804
20888
  getValue(field.value) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
20805
- field.value === "\u5546\u54C1\u56FE\u7247" ? (vue.openBlock(), vue.createElementBlock("img", {
20889
+ field.value === "\u5546\u54C1\u56FE\u7247" ? (vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Image), {
20806
20890
  key: 0,
20807
20891
  class: "bm-fc-form-item__img",
20808
20892
  src: __props.extraConfig.common.previewImg(getValue(field.value))
20809
- }, null, 8, _hoisted_2$3)) : field.value === "\u5546\u54C1\u5355\u4F4D" ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
20893
+ }, null, 8, ["src"])) : field.value === "\u5546\u54C1\u5355\u4F4D" ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
20810
20894
  vue.createTextVNode(vue.toDisplayString(unitMap[getValue(field.value)] || getValue(field.value)), 1)
20811
20895
  ], 64)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
20812
20896
  vue.createTextVNode(vue.toDisplayString(getValue(field.value)), 1)
20813
20897
  ], 64))
20814
- ], 64)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$2, "\u7CFB\u7EDF\u81EA\u52A8\u83B7\u53D6"))
20898
+ ], 64)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$3, "\u7CFB\u7EDF\u81EA\u52A8\u83B7\u53D6"))
20815
20899
  ]),
20816
20900
  _: 2
20817
20901
  }, 1024)
@@ -21057,7 +21141,7 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
21057
21141
  value: __props.formCreateInject?.rule?.value?.value || __props.value?.value || null,
21058
21142
  placeholder: "\u8BF7\u9009\u62E9",
21059
21143
  "show-search": "",
21060
- "show-arrow": false,
21144
+ "show-arrow": true,
21061
21145
  "default-active-first-option": false,
21062
21146
  "filter-option": false,
21063
21147
  "not-found-content": null,
@@ -21191,7 +21275,7 @@ var shop = {
21191
21275
  field,
21192
21276
  title: data.title.title,
21193
21277
  headerClassName: data.effect.required ? 'is-required' : '',
21194
- minWidth: '138px',
21278
+ width: '138px',
21195
21279
  slots: {
21196
21280
  default({ row }) {
21197
21281
  var _a;
@@ -21369,7 +21453,7 @@ var materialType = {
21369
21453
  field,
21370
21454
  title: '素材类型',
21371
21455
  headerClassName: data.effect.required ? 'is-required' : '',
21372
- minWidth: '138px',
21456
+ width: '138px',
21373
21457
  slots: {
21374
21458
  default({ row }) {
21375
21459
  return vue.h(materialType$1, {
@@ -21521,7 +21605,7 @@ var department = {
21521
21605
  field,
21522
21606
  title: data.title.title,
21523
21607
  headerClassName: data.effect.required ? 'is-required' : '',
21524
- minWidth: data.config.fieldRatio,
21608
+ width: data.config.fieldRatio,
21525
21609
  slots: {
21526
21610
  default({ row }) {
21527
21611
  var _a;
@@ -3282,20 +3282,7 @@ var shop = {
3282
3282
  label: '店铺名称',
3283
3283
  },
3284
3284
  ],
3285
- options: [
3286
- {
3287
- value: '店铺所属平台',
3288
- label: '店铺所属平台',
3289
- },
3290
- {
3291
- value: '渠道',
3292
- label: '渠道',
3293
- },
3294
- {
3295
- value: '渠道类别',
3296
- label: '渠道类别',
3297
- },
3298
- ],
3285
+ options: [],
3299
3286
  },
3300
3287
  effect: {
3301
3288
  required: true,
@@ -3725,11 +3712,6 @@ function pushTableWidgets(key, config) {
3725
3712
  function pushRowWidgets(key) {
3726
3713
  widgetNamesRowAccept.push(key);
3727
3714
  }
3728
- function removeTableWidgets(key) {
3729
- console.warn('be cautious to use removeTableWidgets,avoid error');
3730
- if (tableWidgetsProxy[key])
3731
- delete tableWidgetsProxy[key];
3732
- }
3733
3715
  const rules = {
3734
3716
  [row.name]: row,
3735
3717
  [input.name]: input,
@@ -3998,7 +3980,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
3998
3980
  }
3999
3981
  });
4000
3982
  })();
4001
- typeof props.addWidgetFunc === "function" && props.addWidgetFunc(pushRuleWidgets, pushRowWidgets, pushTableWidgets, removeTableWidgets);
3983
+ typeof props.addWidgetFunc === "function" && props.addWidgetFunc(pushRuleWidgets, pushRowWidgets, pushTableWidgets);
4002
3984
  const activeKey = vue.ref("controlLibrary");
4003
3985
  const widgetFormRules = vue.reactive([]);
4004
3986
  const activeRule = vue.ref({});
@@ -24,7 +24,7 @@ var _export_sfc = (sfc, props) => {
24
24
  };
25
25
 
26
26
  const _sfc_main = vue.defineComponent({
27
- components: { ToolTip: ToolTip__default["default"], CloseCircleFilled: iconsVue.CloseCircleFilled, Button: Button__default["default"], Tag: Tag__default["default"] },
27
+ components: { ToolTip: ToolTip__default["default"], CloseCircleFilled: iconsVue.CloseCircleFilled, DownOutlined: iconsVue.DownOutlined, Button: Button__default["default"], Tag: Tag__default["default"] },
28
28
  props: {
29
29
  disabled: {
30
30
  type: Boolean,
@@ -140,12 +140,14 @@ const _hoisted_3 = { class: "pop-seleted" };
140
140
  const _hoisted_4 = { class: "pop-seleted-title" };
141
141
  const _hoisted_5 = { key: 1 };
142
142
  const _hoisted_6 = { key: 2 };
143
- const _hoisted_7 = /* @__PURE__ */ vue.createElementVNode("div", null, null, -1);
143
+ const _hoisted_7 = { class: "selector-input-arrow" };
144
+ const _hoisted_8 = /* @__PURE__ */ vue.createElementVNode("div", null, null, -1);
144
145
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
145
146
  const _component_Tag = vue.resolveComponent("Tag");
146
147
  const _component_CloseCircleFilled = vue.resolveComponent("CloseCircleFilled");
147
148
  const _component_ToolTip = vue.resolveComponent("ToolTip");
148
149
  const _component_Button = vue.resolveComponent("Button");
150
+ const _component_DownOutlined = vue.resolveComponent("DownOutlined");
149
151
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
150
152
  _ctx.list && _ctx.list.length ? (vue.openBlock(), vue.createElementBlock("div", {
151
153
  key: 0,
@@ -224,9 +226,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
224
226
  vue.createElementVNode("div", {
225
227
  class: vue.normalizeClass(["selector-empty-input", { "empty-disabled": _ctx.disabled }]),
226
228
  onClick: _cache[5] || (_cache[5] = vue.withModifiers((...args) => _ctx.toAddTags && _ctx.toAddTags(...args), ["stop"]))
227
- }, " \xA0\xA0" + vue.toDisplayString(_ctx.placeholder), 3)
229
+ }, " \xA0\xA0" + vue.toDisplayString(_ctx.placeholder), 3),
230
+ vue.createElementVNode("div", _hoisted_7, [
231
+ vue.createVNode(_component_DownOutlined)
232
+ ])
228
233
  ])) : vue.createCommentVNode("v-if", true),
229
- _hoisted_7
234
+ _hoisted_8
230
235
  ]);
231
236
  }
232
237
  var InputTagsDisplay = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "input-tags-display.vue"]]);