@gct-paas/excel 0.1.18 → 0.1.20

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 (182) hide show
  1. package/dist/{VueVideoPlayer-D3u-ZHom.js → VueVideoPlayer-DePpm38H.js} +2 -2
  2. package/dist/{agg-design-D7CkIPCA.js → agg-design-hreKYp5a.js} +1 -1
  3. package/dist/{agg-props-DNNO9ucx.js → agg-props-CCDh2o6E.js} +1 -1
  4. package/dist/{agg-style-v_94dzX8.js → agg-style-Bh8vdJvs.js} +1 -1
  5. package/dist/{align-editor-COpCDpFf.js → align-editor-DpDuDOMr.js} +1 -1
  6. package/dist/{attach-fields-editor-o_7W-2sr.js → attach-fields-editor-BeGxW6de.js} +2 -2
  7. package/dist/{barcode-design-CvsGGAio.js → barcode-design-CFVTZNAy.js} +3 -2
  8. package/dist/base/index.es.js +63 -138
  9. package/dist/base-font-editor-laOkjBe1.js +119 -0
  10. package/dist/{boolean-design-Hc8Es5l1.js → boolean-design-DIlM9Nrt.js} +3 -2
  11. package/dist/{boolean-props-CGamLGXA.js → boolean-props-CGuFs72-.js} +3 -3
  12. package/dist/{boolean-style-m-WuSO6S.js → boolean-style-BUz6sBUN.js} +5 -4
  13. package/dist/cell-upload-Dw3t7ZKJ.js +33 -0
  14. package/dist/{date-range-editor-BZkhUU-x.js → date-range-editor-rXaru-8n.js} +3 -2
  15. package/dist/{date-time-design-B_oFOcft.js → date-time-design-HfjWK3SA.js} +1 -1
  16. package/dist/{date-time-props-hGnSGQKc.js → date-time-props-C_cG-6wI.js} +3 -3
  17. package/dist/{date-time-style-CGKG8i3K.js → date-time-style-BeCDP5TE.js} +1 -1
  18. package/dist/{decimal-design-B5Artgk6.js → decimal-design-DzLpjX9N.js} +7 -3
  19. package/dist/{decimal-display-mode-C4XUezoP.js → decimal-display-mode-BhD1cOOe.js} +3 -2
  20. package/dist/{decimal-props-Q37uOcWl.js → decimal-props-C6f22071.js} +5 -4
  21. package/dist/{decimal-style-C2CnGPVG.js → decimal-style-XN3rLM2j.js} +1 -1
  22. package/dist/{default-value-editor.vue_vue_type_script_setup_true_name_default-value-editor_lang-DTnbLBVW.js → default-value-editor.vue_vue_type_script_setup_true_name_default-value-editor_lang-CJC4kBNh.js} +3 -2
  23. package/dist/{diagonal-design-CyUvkcvp.js → diagonal-design-Dh0qhgSq.js} +2 -2
  24. package/dist/{double-design-D_ipWcRm.js → double-design-XHHlqmEp.js} +6 -3
  25. package/dist/{double-props-D4FGbfe2.js → double-props-Cvi36aBN.js} +4 -4
  26. package/dist/{double-style-BbD_6_Os.js → double-style-Dkoth54S.js} +1 -1
  27. package/dist/{document-sub-table-action-Cy6Rd8OS.js → dynamic-table-action-mGrBO_bn.js} +661 -553
  28. package/dist/{document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-OPdk2I5p.js} +366 -147
  29. package/dist/{edit.utils-CXmmCnxE-BK4QnSP-.js → edit.utils-CXmmCnxE-DeDBtyJd.js} +1 -1
  30. package/dist/{enum-design-lOufLU6Z.js → enum-design-CAOAFdI6.js} +13 -7
  31. package/dist/{enum-props-brKRP5Uz.js → enum-props-CBN-AvBS.js} +4 -4
  32. package/dist/{enum-style-BQQHkDUD.js → enum-style-cOiK44Ae.js} +37 -9
  33. package/dist/excel.css +1049 -407
  34. package/dist/{exceljs.min-CUwGyNAf.js → exceljs.min-pnja99MZ.js} +2 -2
  35. package/dist/{expression-design-BPEci3dg.js → expression-design-CqgcK8eO.js} +1 -1
  36. package/dist/{expression-props-Cvg-9V-B.js → expression-props-wXQOIrMY.js} +1 -1
  37. package/dist/{expression-style-Dv3Hl8lm.js → expression-style-BzavnOux.js} +1 -1
  38. package/dist/{file-design-BIzi6cpq.js → file-design-BSQknhnY.js} +1 -1
  39. package/dist/{file-props-oV2U7bpO.js → file-props-CwiuBVHW.js} +2 -2
  40. package/dist/{file-style-CZrxokgP.js → file-style-CG4a3THb.js} +1 -1
  41. package/dist/{font-editor-B41KgpWJ.js → font-editor--CgwL-wF.js} +3 -3
  42. package/dist/{form-annotation-controller-CdNmJKv-.js → form-annotation-controller-DDDyHAwe.js} +3 -2
  43. package/dist/{image-design-DMfBfSkD.js → image-design-CwPjfDxf.js} +2 -2
  44. package/dist/{image-design-C3FEtW6i.js → image-design-D1D0SN5W.js} +3 -2
  45. package/dist/{image-props-DPibJk7n.js → image-props-C4E9gMsG.js} +1 -1
  46. package/dist/{image-style-DLudd5Vt.js → image-style-CIb1mi13.js} +1 -1
  47. package/dist/{index-B1r6-Uxf.js → index-0mxMA4vZ.js} +2 -1
  48. package/dist/{index-B7lz2J6V.js → index-A2MbCZtS.js} +10 -3
  49. package/dist/{index-DJIzgsog.js → index-B2ZNkbGm.js} +2 -1
  50. package/dist/{index-rXMzwu77.js → index-B2tFXR--.js} +5 -2
  51. package/dist/{index-Cp7mC3Qt.js → index-B7DDYlzm.js} +2 -1
  52. package/dist/{index-BiNVmD5v.js → index-BAlLZmfu.js} +2 -1
  53. package/dist/{index-yih5hGsL.js → index-BG_CEaW0.js} +3537 -2743
  54. package/dist/{index-B8ey1U_N.js → index-BJYSmTeW.js} +2 -1
  55. package/dist/{index-D7fFpHaN.js → index-BKoXo3Ha.js} +2 -1
  56. package/dist/{index-oSIIidoF.js → index-BSHUFede.js} +2 -1
  57. package/dist/{index-C5bYd42n.js → index-Bi4hE4Ye.js} +3 -2
  58. package/dist/{index-vZZ5q2xJ.js → index-BneV2tbp.js} +2 -1
  59. package/dist/{index-D0YZX_c7.js → index-ByTKu8n6.js} +2 -1
  60. package/dist/{index-DHVK-P9J.js → index-CGSTq7zN.js} +2 -1
  61. package/dist/{index-DFoELlwd.js → index-CIl6oWcB.js} +2 -1
  62. package/dist/{index-I_FRG0Ho.js → index-CKqLoN9r.js} +2 -1
  63. package/dist/{index-CtiiIgjs.js → index-CWpratsK.js} +50 -106
  64. package/dist/{index-B1CG-75q.js → index-CcmNFTia.js} +3 -2
  65. package/dist/{index-BgZkpQKh.js → index-CeMBvNee.js} +2 -1
  66. package/dist/{index-BOis3jsA.js → index-Cgka0WmQ.js} +4 -1
  67. package/dist/{index-CUIGN7Rt.js → index-D0XkCn_x.js} +2 -1
  68. package/dist/{index-DsNRjyQD.js → index-D0n65ya-.js} +2 -1
  69. package/dist/{index-DAqYc474.js → index-D9tUJAeF.js} +2 -1
  70. package/dist/{index-Cjz0GLDq.js → index-DLoQlQk6.js} +3 -2
  71. package/dist/{index-DDpNgyvD.js → index-DOj318_B.js} +3 -2
  72. package/dist/{index-DPQkm6_v.js → index-Dl2FIifp.js} +2 -1
  73. package/dist/{index-Bppcm2iQ.js → index-Drf0Arr4.js} +2 -1
  74. package/dist/{index-Bvjplnz_.js → index-HHF5iK-6.js} +6 -1
  75. package/dist/{index-B8wKNUsK.js → index-Hg59RKKE.js} +2 -1
  76. package/dist/{index-BZ1jj7Nu.js → index-PMDIMwwL.js} +2 -1
  77. package/dist/{index-DH_EZe8p.js → index-PWmkKVZV.js} +2 -1
  78. package/dist/{index-CkYbgRrH.js → index-UUDS4nmS.js} +2 -1
  79. package/dist/{index-Cn_c3-eW.js → index-ZrNXSw4w.js} +2 -1
  80. package/dist/index.es.js +44 -44
  81. package/dist/{integer-design-DhkNa9IA.js → integer-design-Cy9c0fzI.js} +6 -3
  82. package/dist/{integer-props-c_aQpjaT.js → integer-props-DFDOIb2a.js} +5 -4
  83. package/dist/{integer-style-CS5v7Bhq.js → integer-style-CfIX5ReH.js} +1 -1
  84. package/dist/{mb-render-Cs7LUxzk.js → mb-render-D_uumPQr.js} +1 -1
  85. package/dist/{number-input-ex-CwKIHfk1.js → number-input-ex-CWci0pCj.js} +12 -4
  86. package/dist/{org-props-BcbW62Jg.js → org-props-B5dk289u.js} +3 -2
  87. package/dist/{org-style-Bk7mgML3.js → org-style-BoSDPuw9.js} +1 -1
  88. package/dist/{pagination-design-B1KyJUAG.js → pagination-design-Ci4wxUIk.js} +3 -2
  89. package/dist/paper-widget-design-BilYU9rh.js +4 -0
  90. package/dist/{qrcode-design-EafZURDZ.js → qrcode-design-CJ9R5DIn.js} +1 -1
  91. package/dist/ref-autofill-editor-B4KDvHhR.js +2334 -0
  92. package/dist/{ref-props-C95McyZp.js → ref-props-CwDGepT3.js} +17 -9
  93. package/dist/{ref-style-BxdvOF-4.js → ref-style-B35CsOQO.js} +1 -1
  94. package/dist/{regex-editor-BGukvOEI.js → regex-editor-CIVvr_Lx.js} +2 -2
  95. package/dist/{revo-grid.entry-BeRVTVKO.js → revo-grid.entry-DeWzC35s.js} +1 -1
  96. package/dist/{revogr-attribution_7.entry-CHtbU2lV.js → revogr-attribution_7.entry-BJZ-twfj.js} +3 -3
  97. package/dist/{revogr-clipboard_3.entry-DnvQ-Rl7.js → revogr-clipboard_3.entry-DkgRA8qw.js} +2 -2
  98. package/dist/{revogr-data_4.entry-DLRSuaN8.js → revogr-data_4.entry-BZLzvcbo.js} +2 -2
  99. package/dist/{revogr-filter-panel.entry-BDkhY-74.js → revogr-filter-panel.entry-zGvhshno.js} +1 -1
  100. package/dist/{select-render-type-editor.vue_vue_type_script_setup_true_lang-ChESg_eM.js → select-render-type-editor.vue_vue_type_script_setup_true_lang-Asn5-ZRz.js} +3 -2
  101. package/dist/{serialnumber-design-CRaym9J-.js → serialnumber-design-CYFU5TVt.js} +1 -1
  102. package/dist/shared/index.es.js +16 -16
  103. package/dist/{signature-design-BJHfLDNV.js → signature-design-Cwi0cZOI.js} +5 -2
  104. package/dist/{signature-props-B9hfppHh.js → signature-props-cQRB8U8x.js} +3 -3
  105. package/dist/{signature-style-DM4rqHnN.js → signature-style-C90NsLxg.js} +1 -1
  106. package/dist/{single-field-drop-eClQhTSv.js → single-field-drop-BFhQs-3z.js} +2 -2
  107. package/dist/{size-editor-BjlCmEWf.js → size-editor-Dx3y_otg.js} +1 -1
  108. package/dist/src/nocode-base/src/components/border-td.vue.d.ts +1 -0
  109. package/dist/src/nocode-base/src/components/{document-quick-fill-modal.vue.d.ts → document-quick-fill/dynamic-quick-fill-modal.vue.d.ts} +1 -1
  110. package/dist/src/nocode-base/src/components/{document-quick-fillin.vue.d.ts → document-quick-fill/fixed-quick-fill-modal.vue.d.ts} +10 -4
  111. package/dist/src/nocode-base/src/components/document-quick-fill/quick-fill.util.d.ts +22 -0
  112. package/dist/src/nocode-base/src/components/document-sub-table-action/fixed-table-action.vue.d.ts +17 -0
  113. package/dist/src/nocode-base/src/components/index.d.ts +4 -3
  114. package/dist/src/nocode-base/src/hooks/material-consume/mc-render.d.ts +3 -1
  115. package/dist/src/nocode-base/src/hooks/useRenderPageFactory.d.ts +3 -0
  116. package/dist/src/nocode-base/src/types/common/base.d.ts +2 -0
  117. package/dist/src/nocode-base/src/types/fields/i-enum-select.d.ts +2 -0
  118. package/dist/src/nocode-base/src/types/fields/i-select.d.ts +4 -0
  119. package/dist/src/nocode-base/src/types/fields/i-trace.d.ts +7 -0
  120. package/dist/src/nocode-base/src/types/render/mc-render.d.ts +3 -1
  121. package/dist/src/nocode-base/src/types/render/sub-table-render.d.ts +3 -1
  122. package/dist/src/nocode-base/src/types/widgets/i-sub-table.d.ts +4 -0
  123. package/dist/src/nocode-web-render/src/hooks/userFormPrint.d.ts +2 -0
  124. package/dist/src/nocode-web-render/src/render/index.d.ts +2 -2
  125. package/dist/src/nocode-web-render/src/render/sub-table/common/scan-modal.vue.d.ts +3 -1
  126. package/dist/src/nocode-web-render/src/render/sub-table/common/sub-table-render.d.ts +3 -1
  127. package/dist/src/nocode-web-render/src/render/sub-table/material-consume/index.d.ts +1 -2
  128. package/dist/src/nocode-web-render/src/render/sub-table/material-consume/mc-web-render.d.ts +3 -1
  129. package/dist/src/online-form/src/utils/field.enum.d.ts +3 -2
  130. package/dist/src/online-form/src/views/__cell_widgets__/common/display-fields-editor/display-fields-editor.vue.d.ts +15 -0
  131. package/dist/src/online-form/src/views/__cell_widgets__/common/display-fields-editor/display-fields.util.d.ts +11 -0
  132. package/dist/src/online-form/src/views/__cell_widgets__/common/display-fields-editor/index.d.ts +3 -0
  133. package/dist/src/online-form/src/views/__cell_widgets__/common/quick-search-editor/index.d.ts +3 -0
  134. package/dist/src/online-form/src/views/__cell_widgets__/common/quick-search-editor/quick-search-editor.vue.d.ts +15 -0
  135. package/dist/src/online-form/src/views/__cell_widgets__/common/quick-search-editor/quick-search.util.d.ts +14 -0
  136. package/dist/src/online-form/src/views/designer/hooks/useAllSpreadSheets.d.ts +16 -0
  137. package/dist/src/online-form/src/views/designer/hooks/useSpreadSheet.d.ts +27 -2
  138. package/dist/src/{nocode-web-render/src/render/sub-table/material-consume/scan-modal.vue.d.ts → online-form/src/views/designer/modules/panel/comps/confirm-before-delete-config.vue.d.ts} +2 -4
  139. package/dist/src/online-form/src/views/designer/modules/panel/comps/quick-fill-config.vue.d.ts +9 -0
  140. package/dist/src/online-form/src/views/designer/modules/sheet/sheet-cell.vue.d.ts +1 -0
  141. package/dist/src/online-form/src/views/designer/types/index.d.ts +2 -0
  142. package/dist/src/online-form/src/views/render/__components__/_field_/_base_/common-select.util.d.ts +47 -0
  143. package/dist/src/shared/components/field-transfer/components/field-transfer-modal.vue.d.ts +30 -0
  144. package/dist/src/shared/components/field-transfer/components/modal-wrapper.vue.d.ts +65 -0
  145. package/dist/src/shared/components/field-transfer/hooks/useModelField.d.ts +169 -0
  146. package/dist/src/shared/components/field-transfer/hooks/useTreeData.d.ts +139 -0
  147. package/dist/src/shared/components/field-transfer/index.d.ts +21 -0
  148. package/dist/src/shared/components/field-transfer/useFieldTransfer.d.ts +47 -0
  149. package/dist/src/shared/components/field-transfer/utils/enum.d.ts +6 -0
  150. package/dist/src/shared/components/field-transfer/utils/i18n.d.ts +1 -0
  151. package/dist/src/shared/components/field-transfer/utils/tree-tool.d.ts +6 -0
  152. package/dist/{text-design-BGxM7gzI.js → text-design-TEheiKQx.js} +3 -2
  153. package/dist/{text-design-C3RhersV.js → text-design-jMPxIgZW.js} +10 -6
  154. package/dist/{text-props-CIpXslMv.js → text-props-CrkSvg6D.js} +5 -5
  155. package/dist/{text-style-BPjaT5Ic.js → text-style-DmwTt8KQ.js} +1 -1
  156. package/dist/{throttle-Cpk1LoGk-LNQ7rPwu.js → throttle-Cpk1LoGk-DTkhEkFR.js} +1 -1
  157. package/dist/{timediff-design-DqVuVrmx.js → timediff-design-D_if-K1S.js} +2 -1
  158. package/dist/{trace-design-IbjVLAhv.js → trace-design-oN7pgtab.js} +2 -2
  159. package/dist/{trace-props-C-F_eDG2.js → trace-props-BFnUk6kv.js} +24 -16
  160. package/dist/{trace-style-DRenZ1n1.js → trace-style-TNnFcvfw.js} +1 -1
  161. package/dist/{user-props-qQx7HZ7T.js → user-props-Ce-ilCmU.js} +3 -2
  162. package/dist/{user-style-BPFOx0xn.js → user-style-4rp0jKYP.js} +1 -1
  163. package/dist/{value-editor.vue_vue_type_style_index_0_lang-Crnt5d7x.js → value-editor.vue_vue_type_style_index_0_lang-DMuR0u4j.js} +3 -2
  164. package/dist/{version-select-BkZzH36D.js → version-select-DSFIlYgX.js} +2 -2
  165. package/dist/web-render/index.es.js +9 -9
  166. package/dist/{widget-barcode-CPZjarSa.js → widget-barcode-Du7LOaiy.js} +5 -4
  167. package/dist/{widget-diagonal-DebN3u9t.js → widget-diagonal-D-q7WK6T.js} +3 -3
  168. package/dist/{widget-image-BSMWxm9c.js → widget-image-Da5mvgMm.js} +5 -5
  169. package/dist/{widget-line-CyavTHOV.js → widget-line-oIFH8P04.js} +3 -2
  170. package/dist/{widget-pagination-ZCBdy6HQ.js → widget-pagination-CSonelt_.js} +6 -5
  171. package/dist/{widget-power-B1NFysHT.js → widget-power-CWczWA7K.js} +3 -3
  172. package/dist/{widget-qrcode-B0TTSoSK.js → widget-qrcode-MQ-cSphb.js} +4 -3
  173. package/dist/{widget-rangelimit-C_ureKDr.js → widget-rangelimit-CFDeRJIf.js} +3 -3
  174. package/dist/{widget-serialnumber-Dq15dHnk.js → widget-serialnumber-DlE2-jvp.js} +1 -1
  175. package/dist/{widget-text-B9EXKFiM.js → widget-text-B1SnpOGN.js} +5 -5
  176. package/dist/{widget-timediff-BhLrQuGb.js → widget-timediff-DeyJbqRE.js} +3 -2
  177. package/package.json +1 -1
  178. package/dist/base-font-editor-BmC423aB.js +0 -83
  179. package/dist/cell-upload-CiXVE0Ii.js +0 -25
  180. package/dist/paper-widget-design-Cp0ioo8c.js +0 -4
  181. package/dist/ref-autofill-editor-OtclaSqy.js +0 -673
  182. /package/dist/src/nocode-base/src/components/document-sub-table-action/{document-sub-table-action.vue.d.ts → dynamic-table-action.vue.d.ts} +0 -0
@@ -1,673 +0,0 @@
1
- import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, toRefs, ref, reactive, onMounted, createElementVNode, createTextVNode, toDisplayString, unref, createBlock, normalizeClass, createCommentVNode, withDirectives, vShow, h, mergeProps } from "vue";
2
- import { F as FIELD_TYPE, C as CreateType, i as api, I as FieldIconMap, g as SubTableType, _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
3
- import { u as useModelFields, l as SEARCH_TYPE, F as FormItem, i as draggableComponent, t as transformMappingField4Auto } from "./index-yih5hGsL.js";
4
- import { cloneDeep } from "lodash-es";
5
- import { useModal } from "@gct-paas/core";
6
- const _hoisted_1$2 = { class: "quick-search-editor" };
7
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
8
- __name: "quick-search-editor",
9
- props: {
10
- fieldMeta: {},
11
- searchField: {},
12
- disabled: { type: Boolean }
13
- },
14
- emits: ["update:searchField"],
15
- setup(__props, { emit: __emit }) {
16
- const { modelMetaMap } = useModelFields();
17
- const filterFields = [
18
- FIELD_TYPE.LONG_TEXT,
19
- FIELD_TYPE.TEXT,
20
- FIELD_TYPE.DECIMAL,
21
- FIELD_TYPE.DOUBLE,
22
- FIELD_TYPE.LONG,
23
- FIELD_TYPE.INTEGER
24
- ];
25
- const filterTypes = [CreateType.USER_DEFINED, CreateType.BUILTIN];
26
- const props = __props;
27
- const emit = __emit;
28
- const currentModelMeta = computed(() => {
29
- return modelMetaMap.value[props.fieldMeta.refModelKey];
30
- });
31
- const fieldOptions = computed(() => {
32
- return currentModelMeta.value?.fields?.filter((i) => {
33
- return checkKeyByList(i.type, filterFields) && checkKeyByList(i.createType, filterTypes);
34
- }).map((i) => {
35
- const exp = SEARCH_TYPE[i.type]?.noRangDefaultExp;
36
- return {
37
- name: i.name,
38
- key: exp ? i.key + "." + exp : i.key
39
- };
40
- });
41
- });
42
- const checkKeyByList = (key, filters) => {
43
- return !filters || filters.indexOf(key) > -1;
44
- };
45
- const value = computed({
46
- get() {
47
- return props.searchField || [];
48
- },
49
- set(v) {
50
- emit("update:searchField", v);
51
- }
52
- });
53
- return (_ctx, _cache) => {
54
- const _component_a_select = resolveComponent("a-select");
55
- return openBlock(), createElementBlock("div", _hoisted_1$2, [
56
- createVNode(FormItem, {
57
- inline: false,
58
- label: _ctx.$t("sys.pageDesigner.quickSearchFields")
59
- }, {
60
- default: withCtx(() => [
61
- createVNode(_component_a_select, {
62
- value: value.value,
63
- "onUpdate:value": _cache[0] || (_cache[0] = ($event) => value.value = $event),
64
- allowClear: "",
65
- mode: "multiple",
66
- maxTagCount: 5,
67
- maxTagTextLength: 6,
68
- fieldNames: { label: "name", value: "key" },
69
- optionFilterProp: "name",
70
- options: fieldOptions.value,
71
- size: "small",
72
- disabled: __props.disabled,
73
- placeholder: _ctx.$t("sys.inputText")
74
- }, null, 8, ["value", "options", "disabled", "placeholder"])
75
- ]),
76
- _: 1
77
- }, 8, ["label"])
78
- ]);
79
- };
80
- }
81
- });
82
- const _hoisted_1$1 = { class: "px-16px py-16px" };
83
- const _hoisted_2 = { class: "px24px mt20px" };
84
- const _hoisted_3 = { class: "text-[#8B8B8B]" };
85
- const _hoisted_4 = { class: "atuofill-field-icon" };
86
- const _hoisted_5 = { class: "form-table-label" };
87
- const _hoisted_6 = ["onClick"];
88
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
89
- __name: "autofill-rules-modal",
90
- props: {
91
- fieldMeta: {},
92
- rules: {}
93
- },
94
- emits: ["ok", "register"],
95
- setup(__props, { emit: __emit }) {
96
- const $t2 = window.$t;
97
- const { modelMetaMap, subTableFieldModel, getFieldMeta } = useModelFields();
98
- const props = __props;
99
- const {
100
- refModelKey,
101
- model: modelKey,
102
- fieldType,
103
- field: currentFieldKey
104
- } = toRefs(props.fieldMeta);
105
- const isSubTableTrigger = computed(
106
- () => !!(props.fieldMeta.subFieldKey || props.fieldMeta.subModelKey)
107
- );
108
- const refFieldName = computed(() => {
109
- return getFieldMeta(props.fieldMeta).name;
110
- });
111
- const autofillForm = ref();
112
- const formState = reactive({
113
- rules: [
114
- {
115
- fromField: void 0,
116
- toField: void 0
117
- }
118
- ]
119
- });
120
- const bindFiledList = ref([]);
121
- const allFieldInFormWithout = ref([]);
122
- const formModelName = ref("");
123
- ref($t2("sys.pageDesigner.addRule"));
124
- const excludeFieldType = [
125
- FIELD_TYPE.IMAGE,
126
- FIELD_TYPE.ATTACHMENT,
127
- FIELD_TYPE.SERIAL,
128
- FIELD_TYPE.MASTERSLAVE,
129
- FIELD_TYPE.ENUM,
130
- FIELD_TYPE.ENUM_MULTI,
131
- FIELD_TYPE.REF,
132
- FIELD_TYPE.REF_MULTI,
133
- FIELD_TYPE.RDO_REF,
134
- FIELD_TYPE.EXPRESSION,
135
- FIELD_TYPE.EXPRESSION_CONDITION,
136
- FIELD_TYPE.AGG,
137
- FIELD_TYPE.ESOP,
138
- FIELD_TYPE.TRANSACTION,
139
- FIELD_TYPE.LABEL_TEMPLATE,
140
- FIELD_TYPE.LABEL_TEMPLATE_REF,
141
- FIELD_TYPE.DOCUMENT_TEMPLATE,
142
- FIELD_TYPE.SERIALRULE,
143
- FIELD_TYPE.PRINTER,
144
- FIELD_TYPE.MESSAGE_TMPL,
145
- FIELD_TYPE.RANGE_USER,
146
- FIELD_TYPE.SIGNATURE,
147
- FIELD_TYPE.ONLINE_FORM_TEMPLATE,
148
- FIELD_TYPE.E_DHR_TEMPLATE,
149
- FIELD_TYPE.DATA_TABLE_FORMULA,
150
- FIELD_TYPE.READONLYCMP,
151
- FIELD_TYPE.BOOLEAN
152
- ];
153
- onMounted(async () => {
154
- const modelDetail = await api.apaas.modelMeta.getDetail({
155
- modelKey: modelKey.value
156
- });
157
- allFieldInFormWithout.value = modelDetail?.fieldMetaList?.filter((d) => d.createType !== "SYSTEM") || [];
158
- formModelName.value = modelDetail?.name || "";
159
- props.rules && onDataReceive({ rules: props.rules });
160
- });
161
- const fromFieldTreeData = computed(() => {
162
- const children = bindFiledList.value.filter((f) => f.key !== "id_").map((f) => ({
163
- ...f,
164
- value: f.key,
165
- label: f.name,
166
- type: f.type
167
- }));
168
- return [
169
- {
170
- value: "id_",
171
- label: refFieldName.value,
172
- type: fieldType.value,
173
- selectable: true,
174
- children
175
- }
176
- ];
177
- });
178
- const currentModelName = computed(() => {
179
- return modelMetaMap.value[modelKey.value]?.meta?.name || formModelName.value || "";
180
- });
181
- const filterCompatibleFields = (fromField, fieldList) => {
182
- if (!fromField) return [];
183
- if (fromField === "id_") {
184
- const sourceType = fieldType.value;
185
- const fieldConfig2 = transformMappingField4Auto(sourceType) ?? transformMappingField4Auto(FIELD_TYPE.REF);
186
- let list2 = fieldList.filter((v) => fieldConfig2?.filterArr?.includes(v.type));
187
- if (fieldConfig2?.equal !== void 0 && fieldConfig2?.equal) {
188
- list2 = list2.filter((i) => i.bindInfo === refModelKey.value);
189
- }
190
- return list2;
191
- }
192
- const record = bindFiledList.value.find((i) => i.key === fromField);
193
- if (record?.modelKey === "em_product" && record?.key === "uom_id_") {
194
- return fieldList.filter(
195
- (e) => [FIELD_TYPE.TEXT, FIELD_TYPE.LONG_TEXT, FIELD_TYPE.REF].includes(e.type)
196
- );
197
- }
198
- const fieldConfig = transformMappingField4Auto(record?.type);
199
- let list = fieldList.filter((v) => fieldConfig?.filterArr?.includes(v.type));
200
- if (fieldConfig?.equal !== void 0 && fieldConfig?.equal) {
201
- list = list.filter((i) => i.bindInfo === record?.bindInfo);
202
- }
203
- if ([FIELD_TYPE.TEXT, FIELD_TYPE.LONG_TEXT].includes(record?.type)) {
204
- list = list.filter((i) => !["ref_model_key_", "ref_field_key_"].includes(i.key));
205
- }
206
- return list;
207
- };
208
- const buildSubTableFieldValue = (fromSubTableField, fieldKey) => {
209
- return `${fromSubTableField}::${fieldKey}`;
210
- };
211
- const parseSubTableFieldValue = (value) => {
212
- const [fromSubTableField, fieldKey] = value.split("::");
213
- return { fromSubTableField, fieldKey };
214
- };
215
- const stripSubTableRuleFields = (rules) => {
216
- if (!isSubTableTrigger.value) return rules;
217
- return rules.map(({ fromSubTableField: _omit, ...rest }) => rest);
218
- };
219
- const selrender = (item) => {
220
- return () => h("span", { class: "atuofill-field-icon" }, [
221
- h("i", { class: ["iconfont", FieldIconMap[item.type] || "text"] }),
222
- item.name
223
- ]);
224
- };
225
- const filterOption = (input, option) => {
226
- return option.name?.includes(input?.trim());
227
- };
228
- const getTargetFieldOptions = (fromField) => {
229
- if (!fromField) return [];
230
- let fields = filterCompatibleFields(fromField, allFieldInFormWithout.value);
231
- if (fromField === "id_" && currentFieldKey.value) {
232
- fields = fields.filter((f) => f.key !== currentFieldKey.value);
233
- }
234
- return fields.map((f) => ({
235
- ...f,
236
- value: f.key,
237
- label: selrender(f)
238
- }));
239
- };
240
- const getTargetFieldValue = (element) => {
241
- if (!element.toField) return void 0;
242
- if (element.fromSubTableField) {
243
- return buildSubTableFieldValue(element.fromSubTableField, element.toField);
244
- }
245
- return element.toField;
246
- };
247
- const getTargetFieldTreeData = (fromField) => {
248
- if (!fromField) return [];
249
- let mainFields = filterCompatibleFields(fromField, allFieldInFormWithout.value);
250
- if (fromField === "id_" && currentFieldKey.value) {
251
- mainFields = mainFields.filter((f) => f.key !== currentFieldKey.value);
252
- }
253
- const treeData = [];
254
- if (mainFields.length) {
255
- treeData.push({
256
- value: `__main__${modelKey.value}`,
257
- label: currentModelName.value,
258
- selectable: false,
259
- children: mainFields.map((f) => ({
260
- ...f,
261
- value: f.key,
262
- label: f.name,
263
- type: f.type
264
- }))
265
- });
266
- }
267
- subTableFieldModel.value.forEach(({ field, model }) => {
268
- if (model.subModelType === SubTableType.STOCKTAKE || model.subModelType === SubTableType.ALLOCATE) {
269
- return;
270
- }
271
- const subModelFields = modelMetaMap.value[field.bindInfo]?.fields?.filter((d) => d.createType !== "SYSTEM") || [];
272
- const compatibleFields = filterCompatibleFields(fromField, subModelFields);
273
- if (!compatibleFields.length) return;
274
- treeData.push({
275
- value: `__sub__${field.key}`,
276
- label: `${model.name}(${getSubTableTypeLabel(model.subModelType)})`,
277
- selectable: false,
278
- children: compatibleFields.map((f) => ({
279
- ...f,
280
- value: buildSubTableFieldValue(field.key, f.key),
281
- label: f.name,
282
- type: f.type,
283
- fromSubTableField: field.key
284
- }))
285
- });
286
- });
287
- return treeData;
288
- };
289
- const getSubTableTypeLabel = (subModelType) => {
290
- const subTypeMap = {
291
- INSPECTION: "CHECK",
292
- MATERIAL_CONSUME: "MATERIAL_CONSUMPTION",
293
- PRODUCTION_CONTAINER_LIST_4_STERILIZATION: "STERILIZE_BATCH"
294
- };
295
- const subTableType = subTypeMap[subModelType || ""] || subModelType || "DEFAULT";
296
- return $t2(`sys.onlineForm.subTableType.${subTableType}`);
297
- };
298
- const onDataReceive = async ({ rules }) => {
299
- formState.rules = stripSubTableRuleFields(cloneDeep(rules));
300
- if (formState.rules?.length == 0) {
301
- formState.rules.push({
302
- fromField: void 0,
303
- toField: void 0
304
- });
305
- }
306
- const res = await api.apaas.modelMeta.getDetail({
307
- modelKey: refModelKey.value
308
- });
309
- bindFiledList.value = res?.fieldMetaList?.filter((d) => d.createType !== "SYSTEM")?.filter(
310
- (i) => i.modelKey === "em_product" && i.key === "uom_id_" || !excludeFieldType.includes(i.type)
311
- ) || [];
312
- };
313
- const removeRule = (index) => {
314
- formState.rules.splice(index, 1);
315
- };
316
- const addRule = () => {
317
- formState.rules.push({
318
- fromField: void 0,
319
- toField: void 0
320
- });
321
- };
322
- useModal(async () => {
323
- if (formState.rules.length > 1 || formState.rules[0].fromField || formState.rules[0].toField) {
324
- await autofillForm.value.validate();
325
- return {
326
- ok: true,
327
- data: stripSubTableRuleFields(formState.rules)
328
- };
329
- }
330
- });
331
- const handleFromChange = (element) => {
332
- element.toField = null;
333
- element.toFieldType = void 0;
334
- element.fromSubTableField = void 0;
335
- };
336
- const handleFlatTargetChange = (val, element) => {
337
- if (!val) {
338
- element.toField = void 0;
339
- element.toFieldType = void 0;
340
- element.fromSubTableField = void 0;
341
- return;
342
- }
343
- const record = allFieldInFormWithout.value.find((f) => f.key === val);
344
- element.toField = val;
345
- element.toFieldType = record?.type;
346
- element.fromSubTableField = void 0;
347
- };
348
- const handleTargetChange = (val, extra, element) => {
349
- if (!val) {
350
- element.toField = void 0;
351
- element.toFieldType = void 0;
352
- element.fromSubTableField = void 0;
353
- return;
354
- }
355
- if (String(val).includes("::")) {
356
- const { fromSubTableField, fieldKey } = parseSubTableFieldValue(String(val));
357
- const node2 = extra?.triggerNode?.props || extra?.triggerNode;
358
- const nodeProps2 = node2?.dataRef || node2;
359
- element.toField = fieldKey;
360
- element.fromSubTableField = fromSubTableField;
361
- element.toFieldType = nodeProps2?.type;
362
- return;
363
- }
364
- const node = extra?.triggerNode?.props || extra?.triggerNode;
365
- const nodeProps = node?.dataRef || node;
366
- element.toField = val;
367
- element.fromSubTableField = void 0;
368
- element.toFieldType = nodeProps?.type;
369
- };
370
- return (_ctx, _cache) => {
371
- const _component_a_button = resolveComponent("a-button");
372
- const _component_a_col = resolveComponent("a-col");
373
- const _component_a_row = resolveComponent("a-row");
374
- const _component_a_tree_select = resolveComponent("a-tree-select");
375
- const _component_a_form_item = resolveComponent("a-form-item");
376
- const _component_a_select = resolveComponent("a-select");
377
- const _component_a_form = resolveComponent("a-form");
378
- return openBlock(), createElementBlock("div", _hoisted_1$1, [
379
- createVNode(_component_a_button, {
380
- type: "link",
381
- onClick: addRule,
382
- class: "mv10px pl24px mt4px"
383
- }, {
384
- default: withCtx(() => [
385
- _cache[0] || (_cache[0] = createElementVNode("i", {
386
- class: "iconfont icon-chuangjian mr8px",
387
- style: { "vertical-align": "-1px" }
388
- }, null, -1)),
389
- createTextVNode(" " + toDisplayString(unref($t2)("sys.pageDesigner.fillRules")), 1)
390
- ]),
391
- _: 1
392
- }),
393
- createElementVNode("div", _hoisted_2, [
394
- createVNode(_component_a_row, {
395
- gutter: 4,
396
- style: { "margin-bottom": "4px", "padding": "0 10px" },
397
- class: "text-[#1A1D23]"
398
- }, {
399
- default: withCtx(() => [
400
- createVNode(_component_a_col, { span: 9 }, {
401
- default: withCtx(() => [
402
- createTextVNode(toDisplayString(unref($t2)("sys.pageDesigner.valueSource")), 1)
403
- ]),
404
- _: 1
405
- }),
406
- createVNode(_component_a_col, { span: 4 }),
407
- createVNode(_component_a_col, { span: 11 }, {
408
- default: withCtx(() => [
409
- createTextVNode(toDisplayString(unref($t2)("sys.pageDesigner.targetField")) + " ", 1),
410
- createElementVNode("span", _hoisted_3, " ( " + toDisplayString(unref($t2)("sys.pageDesigner.onlineFormFieldInForm")) + ") ", 1)
411
- ]),
412
- _: 1
413
- })
414
- ]),
415
- _: 1
416
- }),
417
- createVNode(_component_a_form, {
418
- ref_key: "autofillForm",
419
- ref: autofillForm,
420
- model: formState,
421
- "wrapper-col": { span: 24 },
422
- autocomplete: "off",
423
- "hide-required-mark": "",
424
- colon: false
425
- }, {
426
- default: withCtx(() => [
427
- createVNode(unref(draggableComponent), {
428
- list: formState.rules,
429
- handle: ".cursor-move",
430
- "drag-class": "drawing-drag",
431
- "item-key": "id"
432
- }, {
433
- item: withCtx(({ element, index }) => [
434
- (openBlock(), createBlock(_component_a_row, {
435
- gutter: 4,
436
- key: index,
437
- class: "rule-item"
438
- }, {
439
- default: withCtx(() => [
440
- createVNode(_component_a_col, { span: 9 }, {
441
- default: withCtx(() => [
442
- createVNode(_component_a_form_item, {
443
- label: "",
444
- name: ["rules", index, "fromField"],
445
- rules: [
446
- {
447
- required: true,
448
- message: unref($t2)("sys.chooseTextTip", {
449
- name: unref($t2)("sys.field")
450
- })
451
- }
452
- ]
453
- }, {
454
- default: withCtx(() => [
455
- createVNode(_component_a_tree_select, {
456
- value: element.fromField,
457
- "onUpdate:value": ($event) => element.fromField = $event,
458
- placeholder: unref($t2)("sys.chooseText") + unref($t2)("sys.field"),
459
- "show-search": "",
460
- "tree-default-expand-all": "",
461
- "allow-clear": "",
462
- "tree-node-filter-prop": "label",
463
- "dropdown-class-name": "gct-custom-select-dropdown autofill-from-field-tree",
464
- "tree-data": fromFieldTreeData.value,
465
- onChange: ($event) => handleFromChange(element)
466
- }, {
467
- title: withCtx((data) => [
468
- createElementVNode("span", _hoisted_4, [
469
- data.type ? (openBlock(), createElementBlock("i", {
470
- key: 0,
471
- class: normalizeClass(["iconfont", unref(FieldIconMap)[data.type] || "text"])
472
- }, null, 2)) : createCommentVNode("", true),
473
- createTextVNode(" " + toDisplayString(data.label), 1)
474
- ])
475
- ]),
476
- _: 1
477
- }, 8, ["value", "onUpdate:value", "placeholder", "tree-data", "onChange"])
478
- ]),
479
- _: 2
480
- }, 1032, ["name", "rules"])
481
- ]),
482
- _: 2
483
- }, 1024),
484
- createVNode(_component_a_col, { span: 4 }, {
485
- default: withCtx(() => [
486
- createElementVNode("span", _hoisted_5, toDisplayString(unref($t2)("sys.pageDesigner.valueFillTip")), 1)
487
- ]),
488
- _: 1
489
- }),
490
- createVNode(_component_a_col, { span: 10 }, {
491
- default: withCtx(() => [
492
- createVNode(_component_a_form_item, {
493
- label: "",
494
- name: ["rules", index, "toField"],
495
- rules: [
496
- {
497
- required: true,
498
- message: unref($t2)("sys.chooseTextTip", {
499
- name: unref($t2)("sys.field")
500
- })
501
- }
502
- ]
503
- }, {
504
- default: withCtx(() => [
505
- isSubTableTrigger.value ? (openBlock(), createBlock(_component_a_select, {
506
- key: 0,
507
- value: element.toField,
508
- "onUpdate:value": ($event) => element.toField = $event,
509
- placeholder: unref($t2)("sys.chooseText") + unref($t2)("sys.field"),
510
- "show-search": "",
511
- "allow-clear": "",
512
- "filter-option": filterOption,
513
- "option-label-prop": "label",
514
- "dropdown-class-name": "gct-custom-select-dropdown",
515
- options: getTargetFieldOptions(element.fromField),
516
- onChange: (val) => handleFlatTargetChange(val, element)
517
- }, null, 8, ["value", "onUpdate:value", "placeholder", "options", "onChange"])) : (openBlock(), createBlock(_component_a_tree_select, {
518
- key: 1,
519
- value: getTargetFieldValue(element),
520
- placeholder: unref($t2)("sys.chooseText") + unref($t2)("sys.field"),
521
- "show-search": "",
522
- "tree-default-expand-all": "",
523
- "allow-clear": "",
524
- "tree-node-filter-prop": "label",
525
- "dropdown-class-name": "gct-custom-select-dropdown autofill-to-field-tree",
526
- "tree-data": getTargetFieldTreeData(element.fromField),
527
- onChange: (val, _label, extra) => handleTargetChange(val, extra, element)
528
- }, {
529
- title: withCtx((data) => [
530
- createElementVNode("span", {
531
- class: normalizeClass([
532
- "atuofill-field-icon",
533
- { "text-[#8B8B8B]": data.selectable === false }
534
- ])
535
- }, [
536
- data.type ? (openBlock(), createElementBlock("i", {
537
- key: 0,
538
- class: normalizeClass(["iconfont", unref(FieldIconMap)[data.type] || "text"])
539
- }, null, 2)) : createCommentVNode("", true),
540
- createTextVNode(" " + toDisplayString(data.label), 1)
541
- ], 2)
542
- ]),
543
- _: 1
544
- }, 8, ["value", "placeholder", "tree-data", "onChange"]))
545
- ]),
546
- _: 2
547
- }, 1032, ["name", "rules"])
548
- ]),
549
- _: 2
550
- }, 1024),
551
- createVNode(_component_a_col, {
552
- span: 1,
553
- class: "rule-flex-col"
554
- }, {
555
- default: withCtx(() => [
556
- withDirectives(createElementVNode("i", {
557
- class: "iconfont icon-shanchu2 text-[#797A7D] error-gct-hover cursor-pointer",
558
- onClick: ($event) => removeRule(index)
559
- }, null, 8, _hoisted_6), [
560
- [vShow, formState.rules.length > 1]
561
- ])
562
- ]),
563
- _: 2
564
- }, 1024)
565
- ]),
566
- _: 2
567
- }, 1024))
568
- ]),
569
- _: 1
570
- }, 8, ["list"])
571
- ]),
572
- _: 1
573
- }, 8, ["model"])
574
- ])
575
- ]);
576
- };
577
- }
578
- });
579
- const AutofillRulesModal = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-ddb9f6cd"]]);
580
- const _hoisted_1 = { class: "inpt-box" };
581
- const _sfc_main = /* @__PURE__ */ defineComponent({
582
- __name: "ref-autofill-editor",
583
- props: {
584
- fieldMeta: {},
585
- autofillRules: {},
586
- enableAutofill: { type: Boolean },
587
- disabled: { type: Boolean }
588
- },
589
- emits: ["update:autofillRules", "update:enableAutofill"],
590
- setup(__props, { emit: __emit }) {
591
- const props = __props;
592
- const emit = __emit;
593
- const detail = computed({
594
- get() {
595
- return props.autofillRules;
596
- },
597
- set(v) {
598
- emit("update:autofillRules", v);
599
- }
600
- });
601
- const enabled = computed({
602
- get() {
603
- return props.enableAutofill ?? !!props.autofillRules?.length;
604
- },
605
- set(v) {
606
- emit("update:enableAutofill", v);
607
- }
608
- });
609
- const btnAttrs = computed(() => {
610
- return detail.value?.length ? { type: "primary", block: true } : { type: "primary", ghost: true, block: true };
611
- });
612
- const handleFilterClick = async () => {
613
- const result = await window.NocodeAdapter.utils.overlay.modal(
614
- AutofillRulesModal,
615
- {
616
- fieldMeta: props.fieldMeta,
617
- rules: detail.value
618
- },
619
- {
620
- title: !detail.value?.length ? $t("sys.pageDesigner.addRule") : $t("sys.pageDesigner.editRule"),
621
- centered: true,
622
- width: 640
623
- }
624
- );
625
- if (result.ok && result.data) {
626
- emit("update:autofillRules", cloneDeep(result.data));
627
- }
628
- };
629
- return (_ctx, _cache) => {
630
- const _component_a_switch = resolveComponent("a-switch");
631
- const _component_a_button = resolveComponent("a-button");
632
- return openBlock(), createElementBlock("div", {
633
- class: normalizeClass(["ref-autofill-editor", { "is-off": !enabled.value }])
634
- }, [
635
- createVNode(FormItem, {
636
- inline: false,
637
- label: _ctx.$t("sys.pageDesigner.dataFill")
638
- }, {
639
- extra: withCtx(() => [
640
- createVNode(_component_a_switch, {
641
- size: "small",
642
- checked: enabled.value,
643
- "onUpdate:checked": _cache[0] || (_cache[0] = ($event) => enabled.value = $event),
644
- disabled: __props.disabled
645
- }, null, 8, ["checked", "disabled"])
646
- ]),
647
- default: withCtx(() => [
648
- enabled.value ? (openBlock(), createElementBlock("div", {
649
- key: 0,
650
- class: "data-filter-box",
651
- onClick: handleFilterClick
652
- }, [
653
- createElementVNode("div", _hoisted_1, [
654
- createVNode(_component_a_button, mergeProps(btnAttrs.value, { disabled: __props.disabled }), {
655
- default: withCtx(() => [
656
- createTextVNode(toDisplayString(detail.value?.length ? _ctx.$t("sys.pageDesigner.editRule") : _ctx.$t("sys.pageDesigner.addRule")), 1)
657
- ]),
658
- _: 1
659
- }, 16, ["disabled"])
660
- ])
661
- ])) : createCommentVNode("", true)
662
- ]),
663
- _: 1
664
- }, 8, ["label"])
665
- ], 2);
666
- };
667
- }
668
- });
669
- const RefAutofillEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-63d8b3b0"]]);
670
- export {
671
- RefAutofillEditor as R,
672
- _sfc_main$2 as _
673
- };