element-less 0.0.67 → 0.0.69

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 (36) hide show
  1. package/custom/data-modal/index.d.ts +4 -4
  2. package/custom/data-modal/src/dataModal.vue.d.ts +1 -1
  3. package/custom/dynamic/designerView/src/fieldPicker.vue.d.ts +2 -0
  4. package/element-less.cjs +1 -1
  5. package/element-less.iife.js +1 -1
  6. package/element-less.js +1 -1
  7. package/element-less.umd.cjs +1 -1
  8. package/elementui/cascader/index.d.ts +36 -8
  9. package/elementui/cascader/src/cascader.vue.d.ts +14 -2
  10. package/elementui/select/index.d.ts +4 -4
  11. package/elementui/select/src/select.vue.d.ts +1 -1
  12. package/elementui/tree/index.d.ts +4 -4
  13. package/elementui/tree/src/tree.vue.d.ts +1 -1
  14. package/elementui/tree-select/index.d.ts +4 -4
  15. package/elementui/tree-select/src/treeSelect.vue.d.ts +1 -1
  16. package/elementui/upload/index.d.ts +4 -4
  17. package/elementui/upload/src/upload.vue.d.ts +1 -1
  18. package/index-DqhHTsHe.cjs +1 -0
  19. package/{index-0bMe833F.js → index-_NmrAw-e.js} +300 -33
  20. package/{inner-BU0ghsCk.cjs → inner-CzNTDijK.cjs} +1 -1
  21. package/{inner-DLy3GSYM.js → inner-c32GSLul.js} +1 -1
  22. package/{innerItem-C7lmc_rr.cjs → innerItem-Ct5Ckcbw.cjs} +1 -1
  23. package/{innerItem-DghmopSK.js → innerItem-DU40XfAJ.js} +1 -1
  24. package/{mode-csharp-DeSzug7R.js → mode-csharp-BOa7PnjW.js} +1 -1
  25. package/{mode-csharp-v1w5Y7pJ.cjs → mode-csharp-CuNXmvyE.cjs} +1 -1
  26. package/{mode-css-DlOYj8_Q.js → mode-css-CIRwr__W.js} +1 -1
  27. package/{mode-css-swaaKdmw.cjs → mode-css-DiFYgdWg.cjs} +1 -1
  28. package/{mode-javascript-0snmn4EJ.cjs → mode-javascript-D8gqFAdA.cjs} +1 -1
  29. package/{mode-javascript-Uc61t92C.js → mode-javascript-cKgW4Fbi.js} +1 -1
  30. package/{mode-json-Bv08Ewma.js → mode-json-B8PST1D1.js} +1 -1
  31. package/{mode-json-B1fWqeH1.cjs → mode-json-CC3Ebsc1.cjs} +1 -1
  32. package/{mode-mysql-BCslcP33.js → mode-mysql-DdaLezhw.js} +1 -1
  33. package/{mode-mysql-CUNhvYot.cjs → mode-mysql-dH39eh73.cjs} +1 -1
  34. package/package.json +1 -1
  35. package/style.css +1 -1
  36. package/index-HzZewaBA.cjs +0 -1
@@ -31814,6 +31814,8 @@ function useTree(props2 = {}, dataTree, defaultEmits, componentName) {
31814
31814
  const optionData = ref([]);
31815
31815
  const options2 = ref([]);
31816
31816
  const selectValue = ref([]);
31817
+ const prevCascaderValue = ref([]);
31818
+ let cascadeNormalizing = false;
31817
31819
  const selectOptionData = ref([]);
31818
31820
  const remoteLoading = ref(false);
31819
31821
  const defaultExpandedKeys = ref([]);
@@ -32219,6 +32221,19 @@ function useTree(props2 = {}, dataTree, defaultEmits, componentName) {
32219
32221
  if (value === void 0) {
32220
32222
  value = "";
32221
32223
  }
32224
+ if (props2.multiple && props2.checkStrictly && (props2.checkWithParent || props2.unCheckWithchild) && !cascadeNormalizing) {
32225
+ const arr = Array.isArray(value) ? value : [];
32226
+ const normalized = normalizeCascaderCascade(arr);
32227
+ prevCascaderValue.value = normalized;
32228
+ if (!sameCascaderValueSet(normalized, arr)) {
32229
+ cascadeNormalizing = true;
32230
+ selectValue.value = normalized;
32231
+ cascadeNormalizing = false;
32232
+ return;
32233
+ }
32234
+ } else if (props2.multiple && props2.checkStrictly) {
32235
+ prevCascaderValue.value = Array.isArray(value) ? [...value] : [];
32236
+ }
32222
32237
  if (!value || value.length == 0) {
32223
32238
  returnModelValue("");
32224
32239
  if (initSelect.value) {
@@ -32328,6 +32343,76 @@ function useTree(props2 = {}, dataTree, defaultEmits, componentName) {
32328
32343
  function findParentData(parentID) {
32329
32344
  return optionData.value.find((ele) => ele[currIdField.value] == parentID);
32330
32345
  }
32346
+ function collectAncestorValues(value, acc = []) {
32347
+ const node = optionData.value.find((e) => e[props2.valueField] == value);
32348
+ if (!node) return acc;
32349
+ const parent = findParentData(node[props2.parentIdField]);
32350
+ if (parent) {
32351
+ acc.push(parent[props2.valueField]);
32352
+ collectAncestorValues(parent[props2.valueField], acc);
32353
+ }
32354
+ return acc;
32355
+ }
32356
+ function collectDescendantValues(value, acc = []) {
32357
+ const node = optionData.value.find((e) => e[props2.valueField] == value);
32358
+ if (!node) return acc;
32359
+ optionData.value.filter((e) => e[props2.parentIdField] == node[currIdField.value]).forEach((child) => {
32360
+ acc.push(child[props2.valueField]);
32361
+ collectDescendantValues(child[props2.valueField], acc);
32362
+ });
32363
+ return acc;
32364
+ }
32365
+ function normalizeCascaderFlat(value) {
32366
+ const set = new Set(value);
32367
+ const prev = prevCascaderValue.value;
32368
+ if (props2.checkWithParent) {
32369
+ value.filter((v) => prev.indexOf(v) === -1).forEach((v) => collectAncestorValues(v).forEach((a) => set.add(a)));
32370
+ }
32371
+ if (props2.unCheckWithchild) {
32372
+ prev.filter((v) => value.indexOf(v) === -1).forEach((v) => collectDescendantValues(v).forEach((d) => set.delete(d)));
32373
+ }
32374
+ return Array.from(set);
32375
+ }
32376
+ function pathKey(p) {
32377
+ return Array.isArray(p) ? p.join(props2.valueSeparator) : String(p);
32378
+ }
32379
+ function normalizeCascaderPath(value) {
32380
+ const prev = prevCascaderValue.value;
32381
+ const prevKeys = prev.map(pathKey);
32382
+ const map2 = /* @__PURE__ */ new Map();
32383
+ value.forEach((p) => map2.set(pathKey(p), p));
32384
+ if (props2.checkWithParent) {
32385
+ value.filter((p) => prevKeys.indexOf(pathKey(p)) === -1).forEach((p) => {
32386
+ for (let i = 1; i < p.length; i++) {
32387
+ const prefix = p.slice(0, i);
32388
+ map2.set(pathKey(prefix), prefix);
32389
+ }
32390
+ });
32391
+ }
32392
+ if (props2.unCheckWithchild) {
32393
+ const valueKeys = value.map(pathKey);
32394
+ prev.filter((p) => valueKeys.indexOf(pathKey(p)) === -1).forEach((removed) => {
32395
+ const rk = pathKey(removed);
32396
+ Array.from(map2.keys()).forEach((k) => {
32397
+ const p = map2.get(k);
32398
+ if (Array.isArray(p) && p.length > removed.length && pathKey(p.slice(0, removed.length)) === rk) {
32399
+ map2.delete(k);
32400
+ }
32401
+ });
32402
+ });
32403
+ }
32404
+ return Array.from(map2.values());
32405
+ }
32406
+ function normalizeCascaderCascade(value) {
32407
+ if (!props2.multiple || !props2.checkStrictly) return value;
32408
+ if (!props2.checkWithParent && !props2.unCheckWithchild) return value;
32409
+ return props2.emitPath ? normalizeCascaderPath(value) : normalizeCascaderFlat(value);
32410
+ }
32411
+ function sameCascaderValueSet(a, b) {
32412
+ if (a.length !== b.length) return false;
32413
+ const kb = b.map(pathKey);
32414
+ return a.every((p) => kb.indexOf(pathKey(p)) > -1);
32415
+ }
32331
32416
  function unCheckChild(parentID) {
32332
32417
  optionData.value.filter((ele) => ele[props2.parentIdField] == parentID).forEach((ele) => {
32333
32418
  if (dataTree.value.getCheckedKeys().indexOf(ele[currIdField.value]) > -1) {
@@ -32700,7 +32785,8 @@ const _sfc_main$2q = /* @__PURE__ */ defineComponent({
32700
32785
  nodeSource: "currNode",
32701
32786
  fieldCode: childPath,
32702
32787
  componentType: af.componentType || "",
32703
- componentOptions: af.componentOptions || null
32788
+ componentOptions: af.componentOptions || null,
32789
+ multiple: !!af.multiple
32704
32790
  } : null;
32705
32791
  }).filter(Boolean);
32706
32792
  if (nameMatch || children.length > 0) {
@@ -32717,7 +32803,8 @@ const _sfc_main$2q = /* @__PURE__ */ defineComponent({
32717
32803
  nodeSource: "currNode",
32718
32804
  fieldCode: f.keyCode,
32719
32805
  componentType: f.componentType || "",
32720
- componentOptions: f.componentOptions || null
32806
+ componentOptions: f.componentOptions || null,
32807
+ multiple: !!f.multiple
32721
32808
  });
32722
32809
  }
32723
32810
  }
@@ -32735,7 +32822,8 @@ const _sfc_main$2q = /* @__PURE__ */ defineComponent({
32735
32822
  nodeSource: "parentNode",
32736
32823
  fieldCode: f.keyCode,
32737
32824
  componentType: f.componentType || "",
32738
- componentOptions: f.componentOptions || null
32825
+ componentOptions: f.componentOptions || null,
32826
+ multiple: !!f.multiple
32739
32827
  }));
32740
32828
  });
32741
32829
  const globalDataItems = computed(() => {
@@ -32767,7 +32855,8 @@ const _sfc_main$2q = /* @__PURE__ */ defineComponent({
32767
32855
  nodeSource: "rootNode",
32768
32856
  fieldCode: fullPath,
32769
32857
  componentType: f.componentType || "",
32770
- componentOptions: f.componentOptions || null
32858
+ componentOptions: f.componentOptions || null,
32859
+ multiple: !!f.multiple
32771
32860
  });
32772
32861
  }
32773
32862
  } else {
@@ -32781,7 +32870,8 @@ const _sfc_main$2q = /* @__PURE__ */ defineComponent({
32781
32870
  nodeSource: "rootNode",
32782
32871
  fieldCode: f.keyCode,
32783
32872
  componentType: f.componentType || "",
32784
- componentOptions: f.componentOptions || null
32873
+ componentOptions: f.componentOptions || null,
32874
+ multiple: !!f.multiple
32785
32875
  });
32786
32876
  }
32787
32877
  }
@@ -33048,7 +33138,7 @@ const _sfc_main$2q = /* @__PURE__ */ defineComponent({
33048
33138
  };
33049
33139
  }
33050
33140
  });
33051
- const FieldPicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$2q, [["__scopeId", "data-v-1ddf1c52"]]);
33141
+ const FieldPicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$2q, [["__scopeId", "data-v-f7844c2e"]]);
33052
33142
  const _hoisted_1$1q = { class: "condition-builder-trigger" };
33053
33143
  const _hoisted_2$z = { class: "cb-dialog-body" };
33054
33144
  const _hoisted_3$q = { class: "cb-header" };
@@ -33110,12 +33200,24 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33110
33200
  { value: "!=", label: "不等于" }
33111
33201
  ],
33112
33202
  Array: [
33203
+ { value: "contains", label: "包含" },
33204
+ { value: "notContains", label: "不包含" },
33113
33205
  { value: "empty", label: "为空" },
33114
33206
  { value: "notEmpty", label: "不为空" }
33115
33207
  ]
33116
33208
  };
33117
33209
  const DEFAULT_OPS = OPERATORS.String;
33210
+ const MULTI_OPS = [
33211
+ { value: "contains", label: "包含" },
33212
+ { value: "notContains", label: "不包含" },
33213
+ { value: "empty", label: "为空" },
33214
+ { value: "notEmpty", label: "不为空" }
33215
+ ];
33216
+ function isMultiSelect(cond) {
33217
+ return !!cond.multiple;
33218
+ }
33118
33219
  function getOperators(cond) {
33220
+ if (isMultiSelect(cond)) return MULTI_OPS;
33119
33221
  return OPERATORS[cond.dataTypeName] || DEFAULT_OPS;
33120
33222
  }
33121
33223
  const allFieldOptions = computed(() => {
@@ -33130,7 +33232,8 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33130
33232
  nodeSource: "currNode",
33131
33233
  fieldCode: f.keyCode,
33132
33234
  componentType: f.componentType || "",
33133
- componentOptions: f.componentOptions || null
33235
+ componentOptions: f.componentOptions || null,
33236
+ multiple: !!f.multiple
33134
33237
  })),
33135
33238
  ...parentFieldsList.map((f) => ({
33136
33239
  value: `parent:${f.keyCode}`,
@@ -33139,7 +33242,8 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33139
33242
  nodeSource: "parentNode",
33140
33243
  fieldCode: f.keyCode,
33141
33244
  componentType: f.componentType || "",
33142
- componentOptions: f.componentOptions || null
33245
+ componentOptions: f.componentOptions || null,
33246
+ multiple: !!f.multiple
33143
33247
  })),
33144
33248
  ...allFormFields.value.map((f) => {
33145
33249
  const pathParts = [...f.containerPath || [], f.keyCode];
@@ -33151,7 +33255,8 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33151
33255
  nodeSource: "rootNode",
33152
33256
  fieldCode: fullPath,
33153
33257
  componentType: f.componentType || "",
33154
- componentOptions: f.componentOptions || null
33258
+ componentOptions: f.componentOptions || null,
33259
+ multiple: !!f.multiple
33155
33260
  };
33156
33261
  }),
33157
33262
  ...gdOpts
@@ -33177,6 +33282,11 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33177
33282
  const ref2 = getFieldRef(c);
33178
33283
  if (c.operator === "empty") return `!${ref2}`;
33179
33284
  if (c.operator === "notEmpty") return `!!${ref2}`;
33285
+ if (c.operator === "contains" || c.operator === "notContains") {
33286
+ const item = c.dataTypeName === "Number" ? c.value ?? 0 : JSON.stringify(String(c.value ?? ""));
33287
+ const expr = `(',' + (${ref2} ?? '') + ',').includes(',' + ${item} + ',')`;
33288
+ return c.operator === "contains" ? expr : `!${expr}`;
33289
+ }
33180
33290
  const val = c.dataTypeName === "Number" ? c.value ?? 0 : JSON.stringify(c.value ?? "");
33181
33291
  return `${ref2} ${c.operator} ${val}`;
33182
33292
  });
@@ -33186,8 +33296,40 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33186
33296
  return acc + sep + p;
33187
33297
  }, "");
33188
33298
  }
33299
+ function parseLiteral(raw) {
33300
+ let val = raw.trim();
33301
+ if (val.startsWith("'") && val.endsWith("'") || val.startsWith('"') && val.endsWith('"')) val = val.slice(1, -1);
33302
+ else if (val === "true") val = true;
33303
+ else if (val === "false") val = false;
33304
+ else if (!isNaN(Number(val))) val = Number(val);
33305
+ return val;
33306
+ }
33189
33307
  function parseSingleCondition(part) {
33190
33308
  const s = part.trim();
33309
+ const includesM = s.match(/^(!?)\(','\s*\+\s*\((.+?)\s*\?\?\s*''\)\s*\+\s*','\)\.includes\(','\s*\+\s*(.+?)\s*\+\s*','\)$/);
33310
+ if (includesM) {
33311
+ const operator = includesM[1] === "!" ? "notContains" : "contains";
33312
+ const refStr = includesM[2].trim();
33313
+ const value = parseLiteral(includesM[3]);
33314
+ const nestedRef = refStr.match(new RegExp(`^${nodePattern}\\['([^']+)'\\]\\?\\.value\\?\\.\\['([^']+)'\\]\\?\\.value$`));
33315
+ if (nestedRef) {
33316
+ const nodeSource = nestedRef[1];
33317
+ const fieldCode = `${nestedRef[2]}.${nestedRef[3]}`;
33318
+ return { fieldCode, fieldName: fieldCode, dataTypeName: "String", operator, value, logicOp: "AND", nodeSource, multiple: true };
33319
+ }
33320
+ const singleRef = refStr.match(new RegExp(`^${nodePattern}\\['([^']+)'\\]\\?\\.value$`));
33321
+ if (singleRef) {
33322
+ const nodeSource = singleRef[1];
33323
+ const f = nodeSource === "currNode" ? siblingFields.value.find((f2) => f2.keyCode === singleRef[2]) : null;
33324
+ return { fieldCode: singleRef[2], fieldName: (f == null ? void 0 : f.keyName) || singleRef[2], dataTypeName: (f == null ? void 0 : f.dataTypeName) || "String", operator, value, logicOp: "AND", nodeSource, multiple: true };
33325
+ }
33326
+ const gdRef = refStr.match(/^globalData\.(.+)$/);
33327
+ if (gdRef) {
33328
+ const f = findGlobalDataOption(gdRef[1]);
33329
+ return { fieldCode: gdRef[1], fieldName: (f == null ? void 0 : f.label) || gdRef[1], dataTypeName: (f == null ? void 0 : f.dataTypeName) || "String", operator, value, logicOp: "AND", nodeSource: "globalData", multiple: true };
33330
+ }
33331
+ return null;
33332
+ }
33191
33333
  const nestedNotEmptyM = s.match(new RegExp(`^!!${nodePattern}\\['([^']+)'\\]\\?\\.value\\?\\.\\['([^']+)'\\]\\?\\.value$`));
33192
33334
  if (nestedNotEmptyM) {
33193
33335
  const nodeSource = nestedNotEmptyM[1];
@@ -33328,16 +33470,18 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33328
33470
  }
33329
33471
  function addCondition() {
33330
33472
  const defaultOpt = allFieldOptions.value[0];
33331
- localConditions.value.push({
33332
- fieldCode: (defaultOpt == null ? void 0 : defaultOpt.fieldCode) || "",
33333
- fieldName: (defaultOpt == null ? void 0 : defaultOpt.label) || "",
33334
- dataTypeName: (defaultOpt == null ? void 0 : defaultOpt.dataTypeName) || "String",
33473
+ const cond = {
33474
+ fieldCode: "",
33475
+ fieldName: "",
33476
+ dataTypeName: "String",
33335
33477
  operator: "==",
33336
33478
  value: "",
33337
33479
  logicOp: "AND",
33338
- nodeSource: (defaultOpt == null ? void 0 : defaultOpt.nodeSource) || "currNode",
33339
- _combined: (defaultOpt == null ? void 0 : defaultOpt.value) || ""
33340
- });
33480
+ nodeSource: "currNode",
33481
+ _combined: ""
33482
+ };
33483
+ if (defaultOpt) applyFieldSelect(cond, defaultOpt);
33484
+ localConditions.value.push(cond);
33341
33485
  }
33342
33486
  function removeCondition(i) {
33343
33487
  localConditions.value.splice(i, 1);
@@ -33364,6 +33508,7 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33364
33508
  cond.dataTypeName = opt.dataTypeName || "String";
33365
33509
  cond.componentType = opt.componentType || "";
33366
33510
  cond.componentOptions = opt.componentOptions || null;
33511
+ cond.multiple = !!opt.multiple;
33367
33512
  cond.value = "";
33368
33513
  const ops = getOperators(cond);
33369
33514
  if (!ops.find((o) => o.value === cond.operator)) cond.operator = ops[0].value;
@@ -33375,6 +33520,7 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33375
33520
  cond.dataTypeName = field.dataTypeName || cond.dataTypeName;
33376
33521
  cond.componentType = field.componentType || "";
33377
33522
  cond.componentOptions = field.componentOptions || null;
33523
+ cond.multiple = !!field.multiple;
33378
33524
  }
33379
33525
  }
33380
33526
  function clearCondition() {
@@ -33794,7 +33940,7 @@ const _sfc_main$2p = /* @__PURE__ */ defineComponent({
33794
33940
  };
33795
33941
  }
33796
33942
  });
33797
- const ConditionBuilderVue = /* @__PURE__ */ _export_sfc$1(_sfc_main$2p, [["__scopeId", "data-v-0b3e6aff"]]);
33943
+ const ConditionBuilderVue = /* @__PURE__ */ _export_sfc$1(_sfc_main$2p, [["__scopeId", "data-v-3580b83f"]]);
33798
33944
  const _hoisted_1$1p = { class: "expr-input-wrapper" };
33799
33945
  const _hoisted_2$y = {
33800
33946
  key: 0,
@@ -43516,6 +43662,20 @@ const cascaderProps = buildProps({
43516
43662
  * @description 是否严格的遵守父子节点不互相关联
43517
43663
  */
43518
43664
  checkStrictly: Boolean,
43665
+ /**
43666
+ * @description 选择节点并且勾选父节点(仅 multiple + checkStrictly + 非 emitPath 生效)
43667
+ */
43668
+ checkWithParent: {
43669
+ type: Boolean,
43670
+ default: false
43671
+ },
43672
+ /**
43673
+ * @description 取消选择并且取消子节点(仅 multiple + checkStrictly + 非 emitPath 生效)
43674
+ */
43675
+ unCheckWithchild: {
43676
+ type: Boolean,
43677
+ default: false
43678
+ },
43519
43679
  /**
43520
43680
  * @description 次级菜单的展开方式
43521
43681
  */
@@ -70753,6 +70913,97 @@ const property_cascader = [
70753
70913
  "arrayConfig": {}
70754
70914
  }
70755
70915
  },
70916
+ {
70917
+ "keyID": "id_3564",
70918
+ "keyName": "栅格行",
70919
+ "keyCode": "",
70920
+ "children": [
70921
+ {
70922
+ "keyID": "id_3565",
70923
+ "keyName": "勾选节点后父节点也会勾选",
70924
+ "keyCode": "checkWithParent",
70925
+ "children": [],
70926
+ "dataType": "Bool",
70927
+ "arrayDataType": "",
70928
+ "componentTypeLabel": "开关",
70929
+ "componentType": "Switch",
70930
+ "icon": "switch-one",
70931
+ "slots": [],
70932
+ "config": {
70933
+ "formConfig": {
70934
+ "labelWidth": "",
70935
+ "suffixContent": "",
70936
+ "requiredMessage": "",
70937
+ "re_required": "",
70938
+ "tip": "仅多选 + 选择任意一级时生效",
70939
+ "tipPosition": "left",
70940
+ "validType": "",
70941
+ "validMessage": "",
70942
+ "validExpression": "",
70943
+ "validMethod": ""
70944
+ },
70945
+ "baseConfig": {
70946
+ "active-value": true,
70947
+ "inactive-value": false
70948
+ },
70949
+ "advancedConfig": {},
70950
+ "arrayConfig": {}
70951
+ },
70952
+ "defaultValue": false
70953
+ },
70954
+ {
70955
+ "keyID": "id_3566",
70956
+ "keyName": "取消节点后子节点也会取消",
70957
+ "keyCode": "unCheckWithchild",
70958
+ "children": [],
70959
+ "dataType": "Bool",
70960
+ "arrayDataType": "",
70961
+ "componentTypeLabel": "开关",
70962
+ "componentType": "Switch",
70963
+ "icon": "switch-one",
70964
+ "slots": [],
70965
+ "config": {
70966
+ "formConfig": {
70967
+ "labelWidth": "",
70968
+ "suffixContent": "",
70969
+ "requiredMessage": "",
70970
+ "re_required": "",
70971
+ "tip": "仅多选 + 选择任意一级时生效",
70972
+ "tipPosition": "left",
70973
+ "validType": "",
70974
+ "validMessage": "",
70975
+ "validExpression": "",
70976
+ "validMethod": ""
70977
+ },
70978
+ "baseConfig": {
70979
+ "active-value": true,
70980
+ "inactive-value": false
70981
+ },
70982
+ "advancedConfig": {},
70983
+ "arrayConfig": {}
70984
+ },
70985
+ "defaultValue": false
70986
+ }
70987
+ ],
70988
+ "dataType": "None",
70989
+ "arrayDataType": "",
70990
+ "componentTypeLabel": "栅格行",
70991
+ "componentType": "Row",
70992
+ "icon": "layout-two",
70993
+ "slots": [],
70994
+ "config": {
70995
+ "formConfig": {},
70996
+ "baseConfig": {
70997
+ "gutter": 10,
70998
+ "span": 12,
70999
+ "justify": "start",
71000
+ "align": "",
71001
+ "tag": "div"
71002
+ },
71003
+ "advancedConfig": {},
71004
+ "arrayConfig": {}
71005
+ }
71006
+ },
70756
71007
  {
70757
71008
  "keyID": "id_4862",
70758
71009
  "keyName": "栅格行",
@@ -73341,7 +73592,7 @@ const _sfc_main$1m = /* @__PURE__ */ defineComponent({
73341
73592
  emits: /* @__PURE__ */ mergeModels(["removeItem"], ["update:children"]),
73342
73593
  setup(__props, { emit: __emit }) {
73343
73594
  const DynamicDesignerInnerItem = defineAsyncComponent(() => {
73344
- return import("./innerItem-DghmopSK.js");
73595
+ return import("./innerItem-DU40XfAJ.js");
73345
73596
  });
73346
73597
  const { getValue: getValue2 } = useProps();
73347
73598
  const tagID = getValue2("tagID");
@@ -74059,6 +74310,12 @@ const _sfc_main$1l = /* @__PURE__ */ defineComponent({
74059
74310
  return props2.visibleFields.includes(field);
74060
74311
  }
74061
74312
  const SELECT_TYPES_DESIGNER = ["Select", "Radio", "Checkbox"];
74313
+ function isMultiSelectFieldDesigner(item, typeName) {
74314
+ var _a, _b;
74315
+ if (typeName === "Checkbox") return true;
74316
+ if (typeName === "Select") return ((_b = (_a = item.config) == null ? void 0 : _a.baseConfig) == null ? void 0 : _b.multiple) === true;
74317
+ return false;
74318
+ }
74062
74319
  function resolveTypeName(dataType) {
74063
74320
  var _a;
74064
74321
  return ((_a = currDynamicDataType.value.find((dt2) => dt2.value === dataType)) == null ? void 0 : _a.type) || dataType || "";
@@ -74085,7 +74342,8 @@ const _sfc_main$1l = /* @__PURE__ */ defineComponent({
74085
74342
  containerPath,
74086
74343
  containerKeyNames,
74087
74344
  componentType: typeName,
74088
- componentOptions: SELECT_TYPES_DESIGNER.includes(typeName) ? ((_b = (_a = item.config) == null ? void 0 : _a.baseConfig) == null ? void 0 : _b.data) || null : null
74345
+ componentOptions: SELECT_TYPES_DESIGNER.includes(typeName) ? ((_b = (_a = item.config) == null ? void 0 : _a.baseConfig) == null ? void 0 : _b.data) || null : null,
74346
+ multiple: isMultiSelectFieldDesigner(item, typeName)
74089
74347
  });
74090
74348
  }
74091
74349
  if (!isArrayContainer) {
@@ -74122,7 +74380,8 @@ const _sfc_main$1l = /* @__PURE__ */ defineComponent({
74122
74380
  keyName: item.keyName,
74123
74381
  dataTypeName: dataTypeName || "String",
74124
74382
  componentType: typeName,
74125
- componentOptions: SELECT_TYPES_DESIGNER.includes(typeName) ? ((_b = (_a = item.config) == null ? void 0 : _a.baseConfig) == null ? void 0 : _b.data) || null : null
74383
+ componentOptions: SELECT_TYPES_DESIGNER.includes(typeName) ? ((_b = (_a = item.config) == null ? void 0 : _a.baseConfig) == null ? void 0 : _b.data) || null : null,
74384
+ multiple: isMultiSelectFieldDesigner(item, typeName)
74126
74385
  };
74127
74386
  }
74128
74387
  initData();
@@ -74214,7 +74473,7 @@ const _sfc_main$1l = /* @__PURE__ */ defineComponent({
74214
74473
  };
74215
74474
  }
74216
74475
  });
74217
- const Designer = /* @__PURE__ */ _export_sfc$1(_sfc_main$1l, [["__scopeId", "data-v-7bf90ef8"]]);
74476
+ const Designer = /* @__PURE__ */ _export_sfc$1(_sfc_main$1l, [["__scopeId", "data-v-1112b724"]]);
74218
74477
  const ElsDynamicDesigner = withInstall$1(Designer);
74219
74478
  const renderProps = buildProps({
74220
74479
  ...formItemProps$1,
@@ -74313,10 +74572,10 @@ const _sfc_main$1k = /* @__PURE__ */ defineComponent({
74313
74572
  emits: ["update:modelValue"],
74314
74573
  setup(__props, { expose: __expose, emit: __emit }) {
74315
74574
  const DynamicRenderInner = defineAsyncComponent(() => {
74316
- return import("./inner-DLy3GSYM.js").then((n) => n.i);
74575
+ return import("./inner-c32GSLul.js").then((n) => n.i);
74317
74576
  });
74318
74577
  const DynamicRenderForm = defineAsyncComponent(() => {
74319
- return import("./inner-DLy3GSYM.js").then((n) => n.f);
74578
+ return import("./inner-c32GSLul.js").then((n) => n.f);
74320
74579
  });
74321
74580
  const props2 = __props;
74322
74581
  const { getValue: getValue2, setValue, formNodeProps } = useProps(props2);
@@ -74546,10 +74805,10 @@ const _sfc_main$1j = /* @__PURE__ */ defineComponent({
74546
74805
  emits: ["update:modelValue"],
74547
74806
  setup(__props, { expose: __expose, emit: __emit }) {
74548
74807
  const DynamicRenderInnerAsync = defineAsyncComponent(() => {
74549
- return import("./inner-DLy3GSYM.js").then((n) => n.i);
74808
+ return import("./inner-c32GSLul.js").then((n) => n.i);
74550
74809
  });
74551
74810
  const DynamicRenderFormAsync = defineAsyncComponent(() => {
74552
- return import("./inner-DLy3GSYM.js").then((n) => n.f);
74811
+ return import("./inner-c32GSLul.js").then((n) => n.f);
74553
74812
  });
74554
74813
  const props2 = __props;
74555
74814
  const { getValue: getValue2, setValue, formNodeProps } = useProps(props2);
@@ -78313,7 +78572,8 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
78313
78572
  containerPath,
78314
78573
  containerKeyNames,
78315
78574
  componentType: typeName,
78316
- componentOptions: SELECT_TYPES_FIELD.includes(typeName) ? ((_c = (_b2 = item.config) == null ? void 0 : _b2.baseConfig) == null ? void 0 : _c.data) || null : null
78575
+ componentOptions: SELECT_TYPES_FIELD.includes(typeName) ? ((_c = (_b2 = item.config) == null ? void 0 : _b2.baseConfig) == null ? void 0 : _c.data) || null : null,
78576
+ multiple: isMultiSelectField(item, typeName)
78317
78577
  });
78318
78578
  }
78319
78579
  if (!isArrayContainer) {
@@ -78346,6 +78606,12 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
78346
78606
  return traverse(renderData.value);
78347
78607
  }
78348
78608
  const SELECT_TYPES_FIELD = ["Select", "Radio", "Checkbox"];
78609
+ function isMultiSelectField(item, typeName) {
78610
+ var _a2, _b2;
78611
+ if (typeName === "Checkbox") return true;
78612
+ if (typeName === "Select") return ((_b2 = (_a2 = item.config) == null ? void 0 : _a2.baseConfig) == null ? void 0 : _b2.multiple) === true;
78613
+ return false;
78614
+ }
78349
78615
  function toFieldItem(item) {
78350
78616
  var _a2, _b2;
78351
78617
  const typeName = item.componentTypeName || item.componentType || "";
@@ -78354,7 +78620,8 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
78354
78620
  keyName: item.keyName,
78355
78621
  dataTypeName: item.dataTypeName,
78356
78622
  componentType: typeName,
78357
- componentOptions: SELECT_TYPES_FIELD.includes(typeName) ? ((_b2 = (_a2 = item.config) == null ? void 0 : _a2.baseConfig) == null ? void 0 : _b2.data) || null : null
78623
+ componentOptions: SELECT_TYPES_FIELD.includes(typeName) ? ((_b2 = (_a2 = item.config) == null ? void 0 : _a2.baseConfig) == null ? void 0 : _b2.data) || null : null,
78624
+ multiple: isMultiSelectField(item, typeName)
78358
78625
  };
78359
78626
  }
78360
78627
  function isFormField(item) {
@@ -79447,7 +79714,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
79447
79714
  };
79448
79715
  }
79449
79716
  });
79450
- const DesignerView = /* @__PURE__ */ _export_sfc$1(_sfc_main$u, [["__scopeId", "data-v-db97206d"]]);
79717
+ const DesignerView = /* @__PURE__ */ _export_sfc$1(_sfc_main$u, [["__scopeId", "data-v-97b12b59"]]);
79451
79718
  const ElsDesignerView = withInstall$1(DesignerView);
79452
79719
  (function(Prism2) {
79453
79720
  var string = /(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;
@@ -80186,31 +80453,31 @@ let AceEditor$1 = class AceEditor extends TBaseFormItem {
80186
80453
  __publicField(this, "editor", ref());
80187
80454
  onMounted(() => {
80188
80455
  if (props2.language === "json") {
80189
- const currModule = import("./mode-json-Bv08Ewma.js").then((n) => n.m);
80456
+ const currModule = import("./mode-json-B8PST1D1.js").then((n) => n.m);
80190
80457
  currModule.then((res) => {
80191
80458
  ace.config.setModuleUrl("ace/mode/json", res);
80192
80459
  this.init();
80193
80460
  });
80194
80461
  } else if (props2.language === "javascript") {
80195
- const currModule = import("./mode-javascript-Uc61t92C.js").then((n) => n.m);
80462
+ const currModule = import("./mode-javascript-cKgW4Fbi.js").then((n) => n.m);
80196
80463
  currModule.then((res) => {
80197
80464
  ace.config.setModuleUrl("ace/mode/javascript", res);
80198
80465
  this.init();
80199
80466
  });
80200
80467
  } else if (props2.language === "csharp") {
80201
- const currModule = import("./mode-csharp-DeSzug7R.js").then((n) => n.m);
80468
+ const currModule = import("./mode-csharp-BOa7PnjW.js").then((n) => n.m);
80202
80469
  currModule.then((res) => {
80203
80470
  ace.config.setModuleUrl("ace/mode/csharp", res);
80204
80471
  this.init();
80205
80472
  });
80206
80473
  } else if (props2.language === "mysql") {
80207
- const currModule = import("./mode-mysql-BCslcP33.js").then((n) => n.m);
80474
+ const currModule = import("./mode-mysql-DdaLezhw.js").then((n) => n.m);
80208
80475
  currModule.then((res) => {
80209
80476
  ace.config.setModuleUrl("ace/mode/mysql", res);
80210
80477
  this.init();
80211
80478
  });
80212
80479
  } else if (props2.language === "css") {
80213
- const currModule = import("./mode-css-DlOYj8_Q.js").then((n) => n.m);
80480
+ const currModule = import("./mode-css-CIRwr__W.js").then((n) => n.m);
80214
80481
  currModule.then((res) => {
80215
80482
  ace.config.setModuleUrl("ace/mode/css", res);
80216
80483
  this.init();