@gct-paas/excel 0.1.16 → 0.1.18

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 (192) hide show
  1. package/dist/{BaseComponent-DJNL1tGs.js → BaseComponent-xTm5lvAr.js} +1 -0
  2. package/dist/{VueVideoPlayer-Db7qcsRE.js → VueVideoPlayer-D3u-ZHom.js} +2 -2
  3. package/dist/{agg-design-BjqRVeg1.js → agg-design-D7CkIPCA.js} +1 -1
  4. package/dist/{agg-props-CrdosdGr.js → agg-props-DNNO9ucx.js} +1 -1
  5. package/dist/{agg-style-CfZoOE-b.js → agg-style-v_94dzX8.js} +1 -1
  6. package/dist/{align-editor-BaNT0jhx.js → align-editor-COpCDpFf.js} +1 -1
  7. package/dist/{attach-fields-editor-CThobu8X.js → attach-fields-editor-o_7W-2sr.js} +2 -2
  8. package/dist/{barcode-design-CHjIeaiJ.js → barcode-design-CvsGGAio.js} +2 -2
  9. package/dist/base/index.es.js +347 -53
  10. package/dist/{base-font-editor-BiSPxwVH.js → base-font-editor-BmC423aB.js} +2 -2
  11. package/dist/{boolean-design-BYAdX-h5.js → boolean-design-Hc8Es5l1.js} +2 -2
  12. package/dist/{boolean-props-jKvjhdlG.js → boolean-props-CGamLGXA.js} +3 -3
  13. package/dist/{boolean-style-RsMRzVBL.js → boolean-style-m-WuSO6S.js} +4 -4
  14. package/dist/{cell-upload-JxFLM1bV.js → cell-upload-CiXVE0Ii.js} +2 -2
  15. package/dist/date-range-editor-BZkhUU-x.js +470 -0
  16. package/dist/{date-time-design-Du8pmDo-.js → date-time-design-B_oFOcft.js} +1 -1
  17. package/dist/date-time-props-hGnSGQKc.js +105 -0
  18. package/dist/{date-time-style-DSEnmxAE.js → date-time-style-CGKG8i3K.js} +1 -1
  19. package/dist/{decimal-design-C2GbzP9k.js → decimal-design-B5Artgk6.js} +1 -1
  20. package/dist/{decimal-display-mode-CagizhJW.js → decimal-display-mode-C4XUezoP.js} +2 -2
  21. package/dist/{decimal-props-CGLqWy8I.js → decimal-props-Q37uOcWl.js} +4 -4
  22. package/dist/{decimal-style-6j22QKYO.js → decimal-style-C2CnGPVG.js} +1 -1
  23. package/dist/{default-value-editor.vue_vue_type_script_setup_true_name_default-value-editor_lang-C5K6qhB-.js → default-value-editor.vue_vue_type_script_setup_true_name_default-value-editor_lang-DTnbLBVW.js} +109 -39
  24. package/dist/{diagonal-design-Cq3oxdHe.js → diagonal-design-CyUvkcvp.js} +2 -2
  25. package/dist/{document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js → document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js} +2295 -1388
  26. package/dist/{document-sub-table-action-rz6gyez5.js → document-sub-table-action-Cy6Rd8OS.js} +384 -193
  27. package/dist/{double-design-CyXEqcV7.js → double-design-D_ipWcRm.js} +1 -1
  28. package/dist/{double-props-DaJoio1W.js → double-props-D4FGbfe2.js} +4 -4
  29. package/dist/{double-style-B4lIth-J.js → double-style-BbD_6_Os.js} +1 -1
  30. package/dist/{edit.utils-CXmmCnxE-DW8ClKe9.js → edit.utils-CXmmCnxE-BK4QnSP-.js} +1 -1
  31. package/dist/{enum-design-DSx09tOO.js → enum-design-lOufLU6Z.js} +2 -2
  32. package/dist/{enum-props-CJNuQLJ_.js → enum-props-brKRP5Uz.js} +4 -4
  33. package/dist/{enum-style-5N5xmgRJ.js → enum-style-BQQHkDUD.js} +2 -2
  34. package/dist/excel.css +943 -440
  35. package/dist/{exceljs.min-D9gV8q6H.js → exceljs.min-CUwGyNAf.js} +2 -2
  36. package/dist/{expression-design-BJDbafot.js → expression-design-BPEci3dg.js} +1 -1
  37. package/dist/{expression-props-BpHbrsle.js → expression-props-Cvg-9V-B.js} +1 -1
  38. package/dist/{expression-style-qPh81w7Q.js → expression-style-Dv3Hl8lm.js} +1 -1
  39. package/dist/{file-design-B7si04Bi.js → file-design-BIzi6cpq.js} +1 -1
  40. package/dist/{file-props-DTtOnHQy.js → file-props-oV2U7bpO.js} +2 -2
  41. package/dist/{file-style-C6KW_szu.js → file-style-CZrxokgP.js} +1 -1
  42. package/dist/{font-editor-DgGgvmB2.js → font-editor-B41KgpWJ.js} +3 -3
  43. package/dist/{form-annotation-controller-KcMm2QYA.js → form-annotation-controller-CdNmJKv-.js} +87 -31
  44. package/dist/{image-design-B92Xkcf-.js → image-design-C3FEtW6i.js} +2 -2
  45. package/dist/{image-design-CCfpT4Rp.js → image-design-DMfBfSkD.js} +2 -2
  46. package/dist/{image-props-DZgfzMta.js → image-props-DPibJk7n.js} +1 -1
  47. package/dist/{image-style-DX6Q_gF4.js → image-style-DLudd5Vt.js} +1 -1
  48. package/dist/{index-Bnbl3VER.js → index-B1CG-75q.js} +2 -2
  49. package/dist/{index-tbaOl7Nd.js → index-B1r6-Uxf.js} +1 -1
  50. package/dist/{index-bvhV6lsn.js → index-B7lz2J6V.js} +14 -7
  51. package/dist/{index-DRd2oRK1.js → index-B8ey1U_N.js} +2 -2
  52. package/dist/{index-BXMOCfWv.js → index-B8wKNUsK.js} +2 -2
  53. package/dist/{index-DzIKEtWw.js → index-BOis3jsA.js} +1 -1
  54. package/dist/{index-BYl8cK0A.js → index-BZ1jj7Nu.js} +1 -1
  55. package/dist/{index-DsASTvC2.js → index-BgZkpQKh.js} +1 -1
  56. package/dist/{index-Bg-x1hF6.js → index-BiNVmD5v.js} +2 -2
  57. package/dist/{index-BEBKoAOg.js → index-Bppcm2iQ.js} +2 -2
  58. package/dist/{index-Dsj3FuVs.js → index-Bvjplnz_.js} +2 -2
  59. package/dist/{index-DgHRTRH5.js → index-C5bYd42n.js} +2 -2
  60. package/dist/{index-BzhFcvnJ.js → index-CUIGN7Rt.js} +2 -2
  61. package/dist/{index-B2iip4UC.js → index-Cjz0GLDq.js} +2 -2
  62. package/dist/{index-DOFSbVSN.js → index-CkYbgRrH.js} +1 -1
  63. package/dist/{index-BB5uSbo3.js → index-Cn_c3-eW.js} +1 -1
  64. package/dist/{index-Be7TFwwX.js → index-Cp7mC3Qt.js} +4 -2
  65. package/dist/{index-DFgGQBCZ.js → index-CtiiIgjs.js} +2 -2
  66. package/dist/{index-D6diRqWG.js → index-D0YZX_c7.js} +2 -2
  67. package/dist/{index-DRKvAxuA.js → index-D7fFpHaN.js} +1 -1
  68. package/dist/{index-C8qPy1oW.js → index-DAqYc474.js} +2 -2
  69. package/dist/{index-p-Q3DQmv.js → index-DDpNgyvD.js} +3 -3
  70. package/dist/{index-IUYnmIJe.js → index-DFoELlwd.js} +1 -1
  71. package/dist/{index-DJISlRXi.js → index-DHVK-P9J.js} +4 -2
  72. package/dist/{index-BhzF0Rp3.js → index-DH_EZe8p.js} +4 -3
  73. package/dist/{index-CIoB2iny.js → index-DJIzgsog.js} +1 -1
  74. package/dist/{index-Doxcf2Zs.js → index-DPQkm6_v.js} +2 -2
  75. package/dist/{index-CtTSTTkq.js → index-DsNRjyQD.js} +2 -2
  76. package/dist/{index-Da7W9uBC.js → index-I_FRG0Ho.js} +2 -2
  77. package/dist/{index-CmaPtyCh.js → index-oSIIidoF.js} +4 -2
  78. package/dist/{index-rn6aiccW.js → index-rXMzwu77.js} +3 -3
  79. package/dist/{index-XbgrTOMF.js → index-vZZ5q2xJ.js} +1 -1
  80. package/dist/{index-Cw_YFCZT.js → index-yih5hGsL.js} +1467 -1345
  81. package/dist/index.es.js +6 -5
  82. package/dist/{integer-design-CPzJPZon.js → integer-design-DhkNa9IA.js} +1 -1
  83. package/dist/{integer-props-deCDvNET.js → integer-props-c_aQpjaT.js} +4 -4
  84. package/dist/{integer-style-DwZIRXEW.js → integer-style-CS5v7Bhq.js} +1 -1
  85. package/dist/{mb-render-Bejyn-ep.js → mb-render-Cs7LUxzk.js} +1 -1
  86. package/dist/{number-input-ex-CgwOH18n.js → number-input-ex-CwKIHfk1.js} +1 -1
  87. package/dist/{org-props-BeFVQ-QY.js → org-props-BcbW62Jg.js} +2 -2
  88. package/dist/{org-style-CLVWLtyd.js → org-style-Bk7mgML3.js} +1 -1
  89. package/dist/{pagination-design-CT0EQmxW.js → pagination-design-B1KyJUAG.js} +2 -2
  90. package/dist/paper-widget-design-Cp0ioo8c.js +4 -0
  91. package/dist/{qrcode-design-CjOkp2xa.js → qrcode-design-EafZURDZ.js} +1 -1
  92. package/dist/{ref-autofill-editor-B2KcQvyt.js → ref-autofill-editor-OtclaSqy.js} +2 -2
  93. package/dist/{ref-props-DPnt_pys.js → ref-props-C95McyZp.js} +3 -3
  94. package/dist/{ref-style-D0XKTtP1.js → ref-style-BxdvOF-4.js} +1 -1
  95. package/dist/regex-editor-BGukvOEI.js +796 -0
  96. package/dist/{revo-grid.entry-ztDhASK3.js → revo-grid.entry-BeRVTVKO.js} +1 -1
  97. package/dist/{revogr-attribution_7.entry-BtXV91vv.js → revogr-attribution_7.entry-CHtbU2lV.js} +3 -3
  98. package/dist/{revogr-clipboard_3.entry-DXpq4oNb.js → revogr-clipboard_3.entry-DnvQ-Rl7.js} +2 -2
  99. package/dist/{revogr-data_4.entry-WA1PNcGb.js → revogr-data_4.entry-DLRSuaN8.js} +2 -2
  100. package/dist/{revogr-filter-panel.entry-unpVAD7l.js → revogr-filter-panel.entry-BDkhY-74.js} +1 -1
  101. package/dist/{select-render-type-editor.vue_vue_type_script_setup_true_lang-CqaEwsvS.js → select-render-type-editor.vue_vue_type_script_setup_true_lang-ChESg_eM.js} +2 -2
  102. package/dist/{serialnumber-design-ClArHZWU.js → serialnumber-design-CRaym9J-.js} +1 -1
  103. package/dist/shared/index.es.js +16 -16
  104. package/dist/{signature-design-Cg2Ejj3g.js → signature-design-BJHfLDNV.js} +1 -1
  105. package/dist/{signature-props-CNuLBWtc.js → signature-props-B9hfppHh.js} +3 -3
  106. package/dist/{signature-style-DtlZdeFB.js → signature-style-DM4rqHnN.js} +1 -1
  107. package/dist/{single-field-drop-COLR9RIu.js → single-field-drop-eClQhTSv.js} +2 -2
  108. package/dist/{size-editor-DyGGEX3s.js → size-editor-BjlCmEWf.js} +1 -1
  109. package/dist/src/adapter/index.d.ts +1 -0
  110. package/dist/src/adapter/setup.d.ts +1 -1
  111. package/dist/src/nocode-base/src/_utils_/uuid.d.ts +6 -1
  112. package/dist/src/nocode-base/src/constant/index.d.ts +11 -0
  113. package/dist/src/nocode-base/src/hooks/annotation/collect-annotation-items.d.ts +15 -0
  114. package/dist/src/nocode-base/src/hooks/annotation/form-annotation-controller.d.ts +5 -2
  115. package/dist/src/nocode-base/src/hooks/annotation/form-change-row.d.ts +60 -0
  116. package/dist/src/nocode-base/src/hooks/annotation/index.d.ts +2 -0
  117. package/dist/src/nocode-base/src/hooks/app-info/index.d.ts +2 -2
  118. package/dist/src/nocode-base/src/hooks/index.d.ts +2 -1
  119. package/dist/src/nocode-base/src/hooks/model-relation/index.d.ts +1 -1
  120. package/dist/src/nocode-base/src/hooks/service-util/sn-rule.d.ts +1 -1
  121. package/dist/src/nocode-base/src/hooks/useFormHook.d.ts +1 -1
  122. package/dist/src/nocode-base/src/hooks/useRenderData.d.ts +4 -2
  123. package/dist/src/nocode-base/src/hooks/useRenderPageFactory.d.ts +36 -4
  124. package/dist/src/nocode-base/src/hooks/useValidator.d.ts +6 -6
  125. package/dist/src/nocode-base/src/hooks/validation/admission.d.ts +19 -0
  126. package/dist/src/nocode-base/src/hooks/validation/attach.d.ts +24 -0
  127. package/dist/src/nocode-base/src/hooks/validation/createValidateFactory.d.ts +35 -0
  128. package/dist/src/nocode-base/src/hooks/validation/formRulesStore.d.ts +15 -0
  129. package/dist/src/nocode-base/src/hooks/validation/merge.d.ts +24 -0
  130. package/dist/src/nocode-base/src/hooks/validation/runValidation.d.ts +17 -0
  131. package/dist/src/nocode-base/src/hooks/validation/scheduler.d.ts +12 -0
  132. package/dist/src/nocode-base/src/hooks/validation/types.d.ts +44 -0
  133. package/dist/src/nocode-base/src/hooks/validation/useFormValidator.d.ts +39 -0
  134. package/dist/src/nocode-base/src/hooks/validation/utils.d.ts +24 -0
  135. package/dist/src/nocode-base/src/hooks/validation/waitForSettle.d.ts +17 -0
  136. package/dist/src/nocode-base/src/interface/render.d.ts +1 -1
  137. package/dist/src/nocode-base/src/types/common/base.d.ts +14 -2
  138. package/dist/src/nocode-base/src/types/fields/i-datepicker.d.ts +5 -1
  139. package/dist/src/nocode-base/src/types/fields/i-datetimepicker.d.ts +5 -1
  140. package/dist/src/nocode-base/src/types/fields/i-inputdouble.d.ts +5 -1
  141. package/dist/src/nocode-base/src/types/fields/i-inputnumber.d.ts +5 -1
  142. package/dist/src/nocode-base/src/types/fields/i-trace.d.ts +27 -1
  143. package/dist/src/nocode-base/src/types/widgets/i-paper.d.ts +2 -0
  144. package/dist/src/online-form/src/components/version-diff/index/types.d.ts +2 -0
  145. package/dist/src/online-form/src/views/__cell_widgets__/common/keep-exception-highlight-editor/keep-exception-highlight-editor.vue.d.ts +10 -0
  146. package/dist/src/online-form/src/views/__cell_widgets__/common/regex-editor/common-regex-api.d.ts +11 -0
  147. package/dist/src/online-form/src/views/__cell_widgets__/common/regex-editor/editor.d.ts +8 -0
  148. package/dist/src/online-form/src/views/designer/hooks/useAllSpreadSheets.d.ts +12 -0
  149. package/dist/src/online-form/src/views/designer/hooks/useModelFields.d.ts +1 -1
  150. package/dist/src/online-form/src/views/designer/hooks/useSpreadSheet.d.ts +16 -0
  151. package/dist/src/online-form/src/views/designer/modules/panel/comps/signature-config/field-tree-select.vue.d.ts +2 -2
  152. package/dist/src/online-form/src/views/designer/modules/panel/panel-data-init-config/common/add-builtin-param/add-builtin-param-select.vue.d.ts +2 -2
  153. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/form-field-tree-select.vue.d.ts +2 -2
  154. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/material-rdo-select.vue.d.ts +2 -2
  155. package/dist/src/online-form/src/views/designer/types/index.d.ts +2 -0
  156. package/dist/src/online-form/src/views/designer/utils/xlsx-parser.d.ts +3 -0
  157. package/dist/src/online-form/src/views/render/__components__/_common_/widget-component.vue.d.ts +3 -1
  158. package/dist/src/shared/components/DoubleInput/double-input.vue.d.ts +5 -0
  159. package/dist/src/shared/components/rdo-tree-select/rdo-tree-select.vue.d.ts +2 -2
  160. package/dist/src/shared/utils/host-api.d.ts +3 -11
  161. package/dist/{text-design-DjJS6aM4.js → text-design-BGxM7gzI.js} +2 -2
  162. package/dist/{text-design-490okDpw.js → text-design-C3RhersV.js} +2 -2
  163. package/dist/{text-props-Dh4S3iN0.js → text-props-CIpXslMv.js} +21 -252
  164. package/dist/{text-style-BGeNrOMv.js → text-style-BPjaT5Ic.js} +1 -1
  165. package/dist/{throttle-Cpk1LoGk-BWXeZXFZ.js → throttle-Cpk1LoGk-LNQ7rPwu.js} +1 -1
  166. package/dist/{timediff-design-DEh9xNVa.js → timediff-design-DqVuVrmx.js} +1 -1
  167. package/dist/{trace-design-Dk0irY70.js → trace-design-IbjVLAhv.js} +2 -2
  168. package/dist/{trace-props-DRBrPqIq.js → trace-props-C-F_eDG2.js} +53 -16
  169. package/dist/{trace-style-6lXlaJ2o.js → trace-style-DRenZ1n1.js} +1 -1
  170. package/dist/{user-props-yasRJPzM.js → user-props-qQx7HZ7T.js} +2 -2
  171. package/dist/{user-style-dkDUDf63.js → user-style-BPFOx0xn.js} +1 -1
  172. package/dist/{value-editor.vue_vue_type_style_index_0_lang-8rhhfLv7.js → value-editor.vue_vue_type_style_index_0_lang-Crnt5d7x.js} +2 -2
  173. package/dist/{version-select-dvsx-Ifv.js → version-select-BkZzH36D.js} +1 -1
  174. package/dist/web-render/index.es.js +4 -4
  175. package/dist/{widget-barcode-BfzXe5MQ.js → widget-barcode-CPZjarSa.js} +4 -4
  176. package/dist/{widget-diagonal-R5qdvCvE.js → widget-diagonal-DebN3u9t.js} +3 -3
  177. package/dist/{widget-image-C0zAtiuf.js → widget-image-BSMWxm9c.js} +5 -5
  178. package/dist/{widget-line-z4TTPDkL.js → widget-line-CyavTHOV.js} +2 -2
  179. package/dist/{widget-pagination-CeO9pmmu.js → widget-pagination-ZCBdy6HQ.js} +5 -5
  180. package/dist/{widget-power-CP1DLxkZ.js → widget-power-B1NFysHT.js} +3 -3
  181. package/dist/{widget-qrcode-Boz_t9l9.js → widget-qrcode-B0TTSoSK.js} +3 -3
  182. package/dist/{widget-rangelimit-B9kRG_Fa.js → widget-rangelimit-C_ureKDr.js} +3 -3
  183. package/dist/{widget-serialnumber-BBUxx4nB.js → widget-serialnumber-Dq15dHnk.js} +1 -1
  184. package/dist/{widget-text-qvLZssGe.js → widget-text-B9EXKFiM.js} +5 -5
  185. package/dist/{widget-timediff-BBmssjfJ.js → widget-timediff-BhLrQuGb.js} +2 -2
  186. package/package.json +1 -1
  187. package/dist/date-format-editor-BZ89hVjL.js +0 -240
  188. package/dist/date-time-props-BWvuzNXX.js +0 -265
  189. package/dist/paper-widget-design-DKBVqvH3.js +0 -4
  190. package/dist/src/nocode-base/src/hooks/form-model/fetcher.d.ts +0 -40
  191. package/dist/src/nocode-base/src/interface/data.d.ts +0 -47
  192. package/dist/src/nocode-base/src/interface/util.d.ts +0 -108
@@ -22,6 +22,7 @@ class BaseComponent {
22
22
  field_readonly: false,
23
23
  required: get(data.info, "required", false),
24
24
  disabled: get(data.info, "disabled", false),
25
+ keepExceptionHighlight: get(data.info, "keepExceptionHighlight"),
25
26
  nullValSymbol: get(data.info, "emptySymbol"),
26
27
  cmpWidth: get(data.info, "compWidth", 75),
27
28
  cmpHeight: get(data.info, "compHeight", 30),
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, toRaw, shallowRef, computed, ref, readonly, onMounted, watch, normalizeClass, onBeforeUnmount, h as h$1, watchEffect, unref, createVNode, reactive } from "vue";
2
- import { k as commonjsGlobal, l as getDefaultExportFromCjs } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
3
- import { v as require$$0 } from "./index-DFgGQBCZ.js";
2
+ import { k as commonjsGlobal, l as getDefaultExportFromCjs } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
3
+ import { v as require$$0 } from "./index-CtiiIgjs.js";
4
4
  var window_1;
5
5
  var hasRequiredWindow;
6
6
  function requireWindow() {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, openBlock, createElementBlock, toDisplayString } from "vue";
2
- import { u as useModelFields } from "./index-Cw_YFCZT.js";
2
+ import { u as useModelFields } from "./index-yih5hGsL.js";
3
3
  const _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "agg-design",
5
5
  props: {
@@ -1,5 +1,5 @@
1
1
  import { openBlock, createElementBlock } from "vue";
2
- import { _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
2
+ import { _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
3
3
  const _sfc_main = {};
4
4
  function _sfc_render(_ctx, _cache) {
5
5
  return openBlock(), createElementBlock("div");
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, openBlock, createBlock } from "vue";
2
- import { B as BaseFontEditor } from "./base-font-editor-BiSPxwVH.js";
2
+ import { B as BaseFontEditor } from "./base-font-editor-BmC423aB.js";
3
3
  const _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "agg-style",
5
5
  props: {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, Fragment, renderList, normalizeClass, createVNode, withCtx, createElementVNode, createTextVNode, toDisplayString } from "vue";
2
- import { _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
2
+ import { _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
3
3
  const _hoisted_1 = { class: "align-group-box" };
4
4
  const _hoisted_2 = ["onClick"];
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, computed, openBlock, createBlock, unref, normalizeClass } from "vue";
2
2
  import { message } from "ant-design-vue";
3
- import { F as FIELD_TYPE, E as useNamespace, _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
4
- import { u as useModelFields, b as useDrop, T as TransferType, c as getFieldIcon, M as MultipleDrop, d as FieldConfig } from "./index-Cw_YFCZT.js";
3
+ import { F as FIELD_TYPE, E as useNamespace, _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
4
+ import { u as useModelFields, b as useDrop, T as TransferType, c as getFieldIcon, M as MultipleDrop, d as FieldConfig } from "./index-yih5hGsL.js";
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "attach-fields-editor",
7
7
  props: {
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, ref, computed, watch, openBlock, createElementBlock, normalizeStyle, normalizeClass, createElementVNode, toDisplayString, createCommentVNode } from "vue";
2
2
  import { pick } from "lodash-es";
3
- import { f as useSpreadSheet, u as useModelFields, n as loadBwip } from "./index-Cw_YFCZT.js";
4
- import { m as PaperWidgeValueType, _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
3
+ import { f as useSpreadSheet, u as useModelFields, n as loadBwip } from "./index-yih5hGsL.js";
4
+ import { m as PaperWidgeValueType, _ as _export_sfc } from "./document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
5
5
  import "dayjs";
6
6
  const _hoisted_1 = { class: "wrapper" };
7
7
  const _hoisted_2 = {
@@ -1,12 +1,12 @@
1
- import { aw as fetchHistoryConsume, ax as isBomGranted, F as FIELD_TYPE, i as api, ao as getParseRuleInfo, ap as getParseRuleValue, ay as calcFillData, az as extractKeywordFromQueryData, t as FormTypeEnum, aA as transformUtils, g as SubTableType, al as NCB_PROVIDE, aB as clearFormRules, aC as baseDataUtils, aq as RenderModeEnum, e as ComponentTypeEnum, aD as validate, aE as calcUtils, a2 as CheckDsTypeEnum, ah as renderUtils, H as PlatformEnum, aF as uuid2, aG as normalizeToArray, aH as safeParseArray, aI as BpmnNodeTypeEnum, aJ as mergeByMultiKey, av as useNocodeEmitter, a1 as EntityModelCategoryEnum, aK as getSubTableQuickFillInfo, h as CellType, _ as _export_sfc } from "../document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
2
- import { a5, a7, aj, w, aL, aM, B, aN, J, aO, aP, aQ, ai, ak, a6, a3, a4, K, aR, as, N, aS, $, a9, v, M, L, aT, aU, O, b, P, a0, a, m, a8, aV, ag, z, x, y, A, aW, T, V, W, aX, aY, aZ, a_, a$, b0, b1, b2, b3, b4, am, an, b5, ad, b6, ac, aa, u, ae, af, ar, ab } from "../document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-Bbu6cwRC.js";
3
- import { M as MaterialConsumptionPatternEnum, g as MaterialConsumeTableController, S as SubTableCore, h as SubTableActionMenuTypeEnum, i as getMenuByAction, j as SubTableActionEnum, k as getCopySubMenu, l as getInsertSubMenu, m as useMaterialBalance, n as commonUtils, o as DocumentQuickFillModal } from "../document-sub-table-action-rz6gyez5.js";
4
- import { B as B2, p, D, _, q, e, f, F, r, d, a as a2, b as b7, s, u as u2, c } from "../document-sub-table-action-rz6gyez5.js";
1
+ import { av as fetchHistoryConsume, aw as isBomGranted, F as FIELD_TYPE, i as api, am as getParseRuleInfo, an as getParseRuleValue, ax as calcFillData, ay as extractKeywordFromQueryData, t as FormTypeEnum, az as transformUtils, g as SubTableType, aj as NCB_PROVIDE, aA as settleAndValidateDisplay, aB as unregisterValidationContext, aC as clearFormRules, aD as registerValidationContext, e as ComponentTypeEnum, aq as RenderModeEnum, aE as requestFullValidation, aF as requestDisplayValidation, aG as closeValidatorPopovers, aH as baseDataUtils, aI as getRawFormRuleMeta, aJ as enrichFormChangeRowDetails, aK as settleAfterModeSwitch, aL as calcUtils, a2 as CheckDsTypeEnum, ag as renderUtils, H as PlatformEnum, aM as uuid2, aN as normalizeToArray, aO as safeParseArray, aP as BpmnNodeTypeEnum, aQ as mergeByMultiKey, au as useNocodeEmitter, a1 as EntityModelCategoryEnum, aR as getRowId, aS as getSubTableQuickFillInfo, h as CellType, _ as _export_sfc } from "../document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
2
+ import { a5, a7, ah, w, aT, aU, B, aV, J, aW, aX, aY, af, ai, a6, a3, a4, K, aZ, ar, N, a_, $, a9, v, M, L, a$, b0, O, b, P, a0, a, m, a8, b1, b2, ap, z, x, y, A, b3, T, V, W, b4, b5, b6, b7, b8, b9, ba, bb, bc, bd, be, bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, ak, bq, br, al, bs, bt, bu, bv, bw, ad, bx, ac, aa, u, ao, ae, ab } from "../document-quick-fillin.vue_vue_type_style_index_0_scoped_a18386ab_lang-DKTGEH4Q.js";
3
+ import { M as MaterialConsumptionPatternEnum, g as MaterialConsumeTableController, S as SubTableCore, h as SubTableActionMenuTypeEnum, i as getMenuByAction, j as SubTableActionEnum, k as getCopySubMenu, l as getInsertSubMenu, m as useMaterialBalance, v as validate, n as commonUtils, o as DocumentQuickFillModal } from "../document-sub-table-action-Cy6Rd8OS.js";
4
+ import { B as B2, p, D, _, q, e, f, F, r, c, a as a2, s, u as u2, b as b10, d } from "../document-sub-table-action-Cy6Rd8OS.js";
5
5
  import { ref, provide, watch, computed, defineComponent, openBlock, createElementBlock, withModifiers } from "vue";
6
- import { defaults, pick, merge, has, isEmpty, cloneDeep } from "lodash-es";
6
+ import { defaults, pick, merge, has, isEmpty, cloneDeep, debounce } from "lodash-es";
7
7
  import dayjs from "dayjs";
8
- import { B as B3, C, F as F2, a as a10, M as M2 } from "../form-annotation-controller-KcMm2QYA.js";
9
- import { B as B4, F as F3, I, M as M3, b as b8, u as u3 } from "../mb-render-Bejyn-ep.js";
8
+ import { B as B3, C, F as F2, a as a10, M as M2, c as c2, f as f2 } from "../form-annotation-controller-CdNmJKv-.js";
9
+ import { B as B4, F as F3, I, M as M3, b as b11, u as u3 } from "../mb-render-Cs7LUxzk.js";
10
10
  function useLatestRequest(execFn) {
11
11
  let lastReqId = 0;
12
12
  const loading = ref(false);
@@ -172,7 +172,7 @@ class FormTmplBomController {
172
172
  }
173
173
  async submitValidate() {
174
174
  const results = await Promise.allSettled(
175
- Object.values(this.tableControllers).map((c2) => c2.submitValidate())
175
+ Object.values(this.tableControllers).map((c3) => c3.submitValidate())
176
176
  );
177
177
  const successful = results.filter((result) => result.status === "fulfilled").map((result) => result.value);
178
178
  const fieldArr = successful.filter(Boolean);
@@ -1910,6 +1910,34 @@ function useRenderPageFactory(props, payload) {
1910
1910
  const subTableCoreFactoryMap = ref({});
1911
1911
  provide(NCB_PROVIDE.SUB_TABLE_CORE_FACTORY_MAP, subTableCoreFactoryMap);
1912
1912
  const { getConsumeData } = useMaterialBalance();
1913
+ const validationSyncStops = /* @__PURE__ */ new Map();
1914
+ const validationSuppressUntil = /* @__PURE__ */ new Map();
1915
+ function unbindFormValidationSync(uniqueId) {
1916
+ validationSyncStops.get(uniqueId)?.forEach((stop) => stop());
1917
+ validationSyncStops.delete(uniqueId);
1918
+ validationSuppressUntil.delete(uniqueId);
1919
+ }
1920
+ function bindFormValidationSync(uniqueId) {
1921
+ unbindFormValidationSync(uniqueId);
1922
+ validationSuppressUntil.set(uniqueId, Date.now() + 5e3);
1923
+ const stops = [];
1924
+ stops.push(
1925
+ watch(
1926
+ () => formStateMap.value[uniqueId],
1927
+ () => {
1928
+ if ((validationSuppressUntil.get(uniqueId) ?? 0) > Date.now()) return;
1929
+ const info = basicInfoList.value.find((item) => item.uniqueId === uniqueId);
1930
+ if (!info) return;
1931
+ if (info.renderModeType === RenderModeEnum.FormMode) {
1932
+ requestFullValidation(uniqueId, { trigger: "change" });
1933
+ }
1934
+ requestDisplayValidation(uniqueId);
1935
+ },
1936
+ { deep: true }
1937
+ )
1938
+ );
1939
+ validationSyncStops.set(uniqueId, stops);
1940
+ }
1913
1941
  const callbackName = {
1914
1942
  template: requestTemplateInfo,
1915
1943
  instance: requestSelfInfo,
@@ -1949,6 +1977,8 @@ function useRenderPageFactory(props, payload) {
1949
1977
  Object.assign(subTableCoreFactoryMap.value, res.subTableCoreFactory);
1950
1978
  basicInfoList.value.push(res.basicInfo);
1951
1979
  selfInfoList.value.push(res.selfInfo);
1980
+ registerFormValidationContext(res.basicInfo.uniqueId);
1981
+ bindFormValidationSync(res.basicInfo.uniqueId);
1952
1982
  }
1953
1983
  });
1954
1984
  console.log(
@@ -1968,13 +1998,18 @@ function useRenderPageFactory(props, payload) {
1968
1998
  tmplBomCMap.value
1969
1999
  );
1970
2000
  finisher.value++;
2001
+ void (async () => {
2002
+ for (const info of basicInfoList.value) {
2003
+ await settleAndValidateDisplay(info.uniqueId);
2004
+ validationSuppressUntil.set(info.uniqueId, 0);
2005
+ }
2006
+ })();
1971
2007
  },
1972
2008
  { immediate: true }
1973
2009
  );
1974
2010
  watch(
1975
2011
  () => finisher.value,
1976
2012
  () => {
1977
- console.log("请求成功");
1978
2013
  const selfId = props.selfId;
1979
2014
  if (payload.onFinisher) {
1980
2015
  const info = findBasicInsInfo(selfId);
@@ -2427,6 +2462,7 @@ function useRenderPageFactory(props, payload) {
2427
2462
  annSwitchStatus: false,
2428
2463
  annCellLocationList: [],
2429
2464
  annSelectId: void 0,
2465
+ annRowDetails: [],
2430
2466
  validatorLocationList: [],
2431
2467
  validatorMessageMap: {},
2432
2468
  mobileTdIdGroups: fieldInfoMap.tdIdGroups,
@@ -2451,6 +2487,10 @@ function useRenderPageFactory(props, payload) {
2451
2487
  return updates;
2452
2488
  }
2453
2489
  function clear() {
2490
+ basicInfoList.value.forEach((info) => {
2491
+ unbindFormValidationSync(info.uniqueId);
2492
+ unregisterValidationContext(info.uniqueId);
2493
+ });
2454
2494
  clearFormRules();
2455
2495
  dataCenterMap.value = {};
2456
2496
  pageDataMap.value = {};
@@ -2463,6 +2503,42 @@ function useRenderPageFactory(props, payload) {
2463
2503
  basicInfoList.value = [];
2464
2504
  selfInfoList.value = [];
2465
2505
  }
2506
+ function applyValidatorComments(uniqueId, comments) {
2507
+ const map = comments && Object.keys(comments).length ? comments : {};
2508
+ const nextLocations = Object.keys(map);
2509
+ basicInfoList.value.forEach((info) => {
2510
+ if (info.uniqueId !== uniqueId) return;
2511
+ const prevLocations = info.validatorLocationList ?? [];
2512
+ const prevMap = info.validatorMessageMap ?? {};
2513
+ const sameLocations = prevLocations.length === nextLocations.length && nextLocations.every((k, i) => k === prevLocations[i]);
2514
+ const sameMessages = sameLocations && nextLocations.every((k) => {
2515
+ const a11 = prevMap[k];
2516
+ const b12 = map[k];
2517
+ return JSON.stringify(a11) === JSON.stringify(b12);
2518
+ });
2519
+ if (sameMessages) return;
2520
+ closeValidatorPopovers();
2521
+ info.validatorLocationList = nextLocations;
2522
+ info.validatorMessageMap = map;
2523
+ });
2524
+ }
2525
+ function registerFormValidationContext(uniqueId) {
2526
+ registerValidationContext({
2527
+ uniqueId,
2528
+ getFormData: () => formStateMap.value?.[uniqueId] ?? {},
2529
+ getPaper: () => dataCenterMap.value?.[uniqueId]?.[ComponentTypeEnum.PAPER],
2530
+ getKeepExceptionHighlight: () => {
2531
+ const paper = dataCenterMap.value?.[uniqueId]?.[ComponentTypeEnum.PAPER];
2532
+ return paper?.props?.keepExceptionHighlight;
2533
+ },
2534
+ applyComments: (comments) => applyValidatorComments(uniqueId, comments),
2535
+ getComments: () => {
2536
+ const info = basicInfoList.value.find((item) => item.uniqueId === uniqueId);
2537
+ const map = info?.validatorMessageMap;
2538
+ return map && Object.keys(map).length ? map : null;
2539
+ }
2540
+ });
2541
+ }
2466
2542
  const findFormInsInfo = (id) => {
2467
2543
  return selfInfoList.value.find((item) => item.id === id);
2468
2544
  };
@@ -2477,27 +2553,46 @@ function useRenderPageFactory(props, payload) {
2477
2553
  );
2478
2554
  };
2479
2555
  const updateRenderModeType = (uniqueId, newRenderModeType, updateButton = false) => {
2556
+ let prevMode;
2480
2557
  basicInfoList.value.forEach((info) => {
2481
2558
  if (info.uniqueId === uniqueId) {
2559
+ prevMode = info.renderModeType;
2482
2560
  info.renderModeType = newRenderModeType;
2483
2561
  if (updateButton) {
2484
2562
  info.btnRenderModeType = newRenderModeType;
2485
2563
  }
2486
2564
  }
2487
2565
  });
2566
+ if (prevMode === newRenderModeType || !uniqueId) return;
2567
+ void (async () => {
2568
+ validationSuppressUntil.set(uniqueId, Date.now() + 1e4);
2569
+ await settleAfterModeSwitch(uniqueId, {
2570
+ runChangeLive: newRenderModeType === RenderModeEnum.FormMode
2571
+ });
2572
+ validationSuppressUntil.set(uniqueId, 0);
2573
+ })();
2488
2574
  };
2489
2575
  async function validate$1(uniqueId) {
2490
2576
  const formState = formStateMap.value?.[uniqueId];
2491
2577
  const dataCenter = dataCenterMap.value?.[uniqueId];
2492
2578
  const bomC = tmplBomCMap.value?.[uniqueId];
2493
- const res = await validate(formState, dataCenter[ComponentTypeEnum.PAPER]);
2579
+ const res = await validate(formState, dataCenter[ComponentTypeEnum.PAPER], uniqueId);
2494
2580
  if (bomC) {
2495
2581
  const bomRes = await bomC.submitValidate();
2496
2582
  if (!bomRes.isValid) {
2497
2583
  merge(res, bomRes);
2584
+ const info = basicInfoList.value.find((item) => item.uniqueId === uniqueId);
2585
+ const current = {
2586
+ ...info?.validatorMessageMap ?? {},
2587
+ ...bomRes.fields ?? {}
2588
+ };
2589
+ applyValidatorComments(uniqueId, Object.keys(current).length ? current : null);
2590
+ return res;
2498
2591
  }
2499
2592
  }
2500
- setValidatorViewStatus(uniqueId, res?.fields ?? {});
2593
+ if (res && !res.uiApplied) {
2594
+ setValidatorViewStatus(uniqueId, res?.fields ?? {});
2595
+ }
2501
2596
  return res;
2502
2597
  }
2503
2598
  const getFormState = (uniqueId) => {
@@ -2521,26 +2616,61 @@ function useRenderPageFactory(props, payload) {
2521
2616
  return true;
2522
2617
  };
2523
2618
  const setAnnotationViewStatus = (uniqueId, status, config) => {
2619
+ const locations = Array.isArray(config) ? config : config?.locations || [];
2620
+ const rowDetails = Array.isArray(config) ? void 0 : config?.rowDetails;
2524
2621
  basicInfoList.value.forEach((info) => {
2525
2622
  if (info.uniqueId === uniqueId) {
2526
2623
  info.annSwitchStatus = status;
2527
- info.annCellLocationList = status ? cloneDeep(config) : [];
2624
+ info.annCellLocationList = status ? cloneDeep(locations) : [];
2528
2625
  info.annSelectId = void 0;
2626
+ if (!status) {
2627
+ info.annRowDetails = [];
2628
+ } else if (rowDetails !== void 0) {
2629
+ info.annRowDetails = cloneDeep(rowDetails);
2630
+ }
2631
+ if (status) {
2632
+ info.validatorLocationList = [];
2633
+ info.validatorMessageMap = {};
2634
+ closeValidatorPopovers();
2635
+ }
2529
2636
  }
2530
2637
  });
2531
2638
  return true;
2532
2639
  };
2533
- const setValidatorViewStatus = (uniqueId, config) => {
2640
+ const setFormChangeRowViewDetails = (uniqueId, rowDetails, _historyId) => {
2534
2641
  basicInfoList.value.forEach((info) => {
2535
2642
  if (info.uniqueId === uniqueId) {
2536
- info.validatorLocationList = Object.keys(config);
2537
- info.validatorMessageMap = config;
2643
+ info.annRowDetails = rowDetails?.length ? cloneDeep(rowDetails) : [];
2644
+ info.annSelectId = void 0;
2538
2645
  }
2539
2646
  });
2540
2647
  return true;
2541
2648
  };
2649
+ const setValidatorViewStatus = (uniqueId, config) => {
2650
+ const nextConfig = config && Object.keys(config).length ? { ...config } : {};
2651
+ if (!Object.keys(nextConfig).length) {
2652
+ applyValidatorComments(uniqueId, null);
2653
+ return true;
2654
+ }
2655
+ const info = basicInfoList.value.find((item) => item.uniqueId === uniqueId);
2656
+ if (!info) return true;
2657
+ const meta = getRawFormRuleMeta();
2658
+ const current = { ...info.validatorMessageMap ?? {} };
2659
+ for (const key of Object.keys(current)) {
2660
+ if (!meta[key]?.blocked && !nextConfig[key]) {
2661
+ delete current[key];
2662
+ }
2663
+ }
2664
+ Object.assign(current, nextConfig);
2665
+ applyValidatorComments(uniqueId, Object.keys(current).length ? current : null);
2666
+ return true;
2667
+ };
2542
2668
  const getAnnotationContentList = (uniqueId, options = {}) => {
2543
2669
  const info = basicInfoList.value.find((item) => item.uniqueId === uniqueId);
2670
+ const formState = formStateMap.value?.[uniqueId];
2671
+ if (info?.formChangeNewData) {
2672
+ enrichFormChangeRowDetails(info.formChangeNewData, formState);
2673
+ }
2544
2674
  const data = info ? cloneDeep(info.formChangeNewData) : {};
2545
2675
  basicInfoList.value.forEach((info2) => {
2546
2676
  if (info2.uniqueId === uniqueId) {
@@ -2625,6 +2755,7 @@ function useRenderPageFactory(props, payload) {
2625
2755
  getFormState,
2626
2756
  setFromEditStatus,
2627
2757
  setAnnotationViewStatus,
2758
+ setFormChangeRowViewDetails,
2628
2759
  getAnnotationContentList,
2629
2760
  setValidatorViewStatus,
2630
2761
  quickSearchRenderData,
@@ -3114,6 +3245,142 @@ function useEbrWikiFactoryV2(props, payload) {
3114
3245
  updateAppendixCounter
3115
3246
  };
3116
3247
  }
3248
+ function useFormulaExpWatcher(options) {
3249
+ const {
3250
+ props,
3251
+ currentPageFormState,
3252
+ needMinValidateCalc,
3253
+ needMaxValidateCalc,
3254
+ onCalculateFormula,
3255
+ onMinComputed,
3256
+ onMaxComputed,
3257
+ debounceMs = 200,
3258
+ returnType = "string"
3259
+ } = options;
3260
+ let calcReqId = 0;
3261
+ async function computeMinMaxOnce() {
3262
+ const myId = ++calcReqId;
3263
+ const getValue = (v2) => {
3264
+ if (returnType === "number") {
3265
+ const parsed = v2 == null ? null : parseFloat(String(v2));
3266
+ return Number.isFinite(parsed) ? parsed : null;
3267
+ }
3268
+ return v2;
3269
+ };
3270
+ if (needMinValidateCalc) {
3271
+ try {
3272
+ const v2 = await onCalculateFormula("min");
3273
+ if (myId !== calcReqId) return;
3274
+ onMinComputed?.(getValue(v2));
3275
+ } catch (e2) {
3276
+ }
3277
+ }
3278
+ if (needMaxValidateCalc) {
3279
+ try {
3280
+ const v2 = await onCalculateFormula("max");
3281
+ if (myId !== calcReqId) return;
3282
+ onMaxComputed?.(getValue(v2));
3283
+ } catch (e2) {
3284
+ }
3285
+ }
3286
+ }
3287
+ const debouncedCompute = debounce(computeMinMaxOnce, debounceMs);
3288
+ const topStops = [];
3289
+ const hashRowStops = /* @__PURE__ */ new Map();
3290
+ const clearAllStops = () => {
3291
+ while (topStops.length) {
3292
+ const s2 = topStops.shift();
3293
+ try {
3294
+ s2 && s2();
3295
+ } catch (e2) {
3296
+ }
3297
+ }
3298
+ for (const [, rowMap] of hashRowStops) {
3299
+ for (const stop2 of rowMap.values()) {
3300
+ try {
3301
+ stop2 && stop2();
3302
+ } catch (e2) {
3303
+ }
3304
+ }
3305
+ }
3306
+ hashRowStops.clear();
3307
+ debouncedCompute.cancel?.();
3308
+ calcReqId++;
3309
+ };
3310
+ const setupWatchesFromMerged = (parseInfos = []) => {
3311
+ if (!needMinValidateCalc && !needMaxValidateCalc) return;
3312
+ if (!Array.isArray(parseInfos) || parseInfos.length === 0) {
3313
+ debouncedCompute();
3314
+ return;
3315
+ }
3316
+ for (const p2 of parseInfos) {
3317
+ const { type, processed, hashValue } = p2;
3318
+ if (type === "plain") {
3319
+ const stop2 = watch(
3320
+ () => currentPageFormState.value?.[processed],
3321
+ () => {
3322
+ console.log("plain");
3323
+ debouncedCompute();
3324
+ },
3325
+ { immediate: true }
3326
+ );
3327
+ topStops.push(stop2);
3328
+ } else if (type === "underscore") {
3329
+ const stop2 = watch(
3330
+ () => props.formData?.[processed],
3331
+ () => {
3332
+ console.log("underscore");
3333
+ debouncedCompute();
3334
+ },
3335
+ { immediate: true }
3336
+ );
3337
+ topStops.push(stop2);
3338
+ } else if (type === "hash") {
3339
+ if (!hashRowStops.has(hashValue)) hashRowStops.set(hashValue, /* @__PURE__ */ new Map());
3340
+ const rowMap = hashRowStops.get(hashValue);
3341
+ const stopLen = watch(
3342
+ () => currentPageFormState.value?.[hashValue]?.length ?? 0,
3343
+ () => {
3344
+ const arr = currentPageFormState.value?.[hashValue];
3345
+ for (const row of arr) {
3346
+ const rid = `${getRowId(row)}_${processed}`;
3347
+ if (!rowMap.has(rid)) {
3348
+ const stopPerRow = watch(
3349
+ () => [row?.[processed], row?.deleted_],
3350
+ () => {
3351
+ debouncedCompute();
3352
+ },
3353
+ { immediate: true }
3354
+ );
3355
+ rowMap.set(rid, stopPerRow);
3356
+ }
3357
+ }
3358
+ const existingIds = new Set(arr.map(getRowId));
3359
+ for (const r2 of Array.from(rowMap.keys())) {
3360
+ if (!existingIds.has(r2)) {
3361
+ const rid = `${r2}_${processed}`;
3362
+ const s2 = rowMap.get(rid);
3363
+ s2 && s2();
3364
+ rowMap.delete(rid);
3365
+ }
3366
+ }
3367
+ debouncedCompute();
3368
+ },
3369
+ { immediate: true }
3370
+ );
3371
+ topStops.push(stopLen);
3372
+ }
3373
+ }
3374
+ debouncedCompute();
3375
+ };
3376
+ const stop = () => {
3377
+ clearAllStops();
3378
+ };
3379
+ return {
3380
+ setupWatchesFromMerged,
3381
+ stop
3382
+ };
3383
+ }
3117
3384
  function useMaterialStocktake() {
3118
3385
  async function getStockDataByWarehouse({ cloneRuntimeJson, warehouseId, locationId }) {
3119
3386
  const stocktakeTables = cloneRuntimeJson?.paper?.props?.materialStocktakeList;
@@ -3226,25 +3493,25 @@ export {
3226
3493
  AllocateTableCore,
3227
3494
  B4 as BaseFormModelFetcher,
3228
3495
  a7 as BinarizeMethodOptions,
3229
- aj as BindCmpStyleEnum,
3496
+ ah as BindCmpStyleEnum,
3230
3497
  w as BooleanShowMode,
3231
3498
  B2 as BorderTD,
3232
3499
  BpmnNodeTypeEnum,
3233
- aL as BpmnSignatureTypeEnum,
3500
+ aT as BpmnSignatureTypeEnum,
3234
3501
  B3 as BuiltinAction,
3235
- aM as ButtonTypeEnum,
3502
+ aU as ButtonTypeEnum,
3236
3503
  B as BwipCodeType,
3237
- aN as CHECK_TABLE_MEDPRO_PROTOCOL_KEY,
3504
+ aV as CHECK_TABLE_MEDPRO_PROTOCOL_KEY,
3238
3505
  CellType,
3239
3506
  J as CellWidgetViewState,
3240
3507
  C as ChangeType,
3241
3508
  CheckDsTypeEnum,
3242
- aO as CodeRunner,
3509
+ aW as CodeRunner,
3243
3510
  ComponentTypeEnum,
3244
- aP as Config_Fields,
3245
- aQ as ControlStatusEnum,
3246
- ai as DateFormat,
3247
- ak as DecimalDisplayMode,
3511
+ aX as Config_Fields,
3512
+ aY as ControlStatusEnum,
3513
+ af as DateFormat,
3514
+ ai as DecimalDisplayMode,
3248
3515
  a6 as DenoiseMethodOptions,
3249
3516
  p as DeviceConnector,
3250
3517
  a3 as DeviceLink,
@@ -3256,10 +3523,10 @@ export {
3256
3523
  e as DocumentPaper,
3257
3524
  documentQuickFillin as DocumentQuickFillin,
3258
3525
  f as DocumentSubTableAction,
3259
- aR as EBR_PROVIDE_ENUM,
3260
- as as EFieldBizTypeEnum,
3526
+ aZ as EBR_PROVIDE_ENUM,
3527
+ ar as EFieldBizTypeEnum,
3261
3528
  N as EmptySymbol,
3262
- aS as FieldSysVarDefaultValueEnum,
3529
+ a_ as FieldSysVarDefaultValueEnum,
3263
3530
  F2 as FillingTypeEnum,
3264
3531
  a10 as FormAnnotationController,
3265
3532
  F3 as FormModelController,
@@ -3274,13 +3541,13 @@ export {
3274
3541
  L as LineType,
3275
3542
  M3 as MBRender,
3276
3543
  r as MCDataUtil,
3277
- b8 as MCRender,
3544
+ b11 as MCRender,
3278
3545
  MaterialConsumeTableController,
3279
3546
  MaterialConsumptionPatternEnum,
3280
3547
  M2 as MaterialStatusEnum,
3281
- aT as MobileFillTypeEnum,
3548
+ a$ as MobileFillTypeEnum,
3282
3549
  NCB_PROVIDE,
3283
- aU as OfficeTypeEnum,
3550
+ b0 as OfficeTypeEnum,
3284
3551
  O as Orientation,
3285
3552
  b as PageSizeEnum,
3286
3553
  P as PaginationFormat,
@@ -3289,9 +3556,10 @@ export {
3289
3556
  m as PaperWidgeValueType,
3290
3557
  a8 as ParamModelTypeEnum,
3291
3558
  PlatformEnum,
3292
- aV as PosEnum,
3559
+ b1 as PosEnum,
3293
3560
  PretreatmentListTableCore,
3294
- ag as RangeValidateMode,
3561
+ b2 as RangeCompareOp,
3562
+ ap as RangeValidateMode,
3295
3563
  RenderModeEnum,
3296
3564
  z as SignShowTypeEnum,
3297
3565
  x as SignatureNumberTypeEnum,
@@ -3302,57 +3570,83 @@ export {
3302
3570
  SubTableCore,
3303
3571
  SubTableCoreFactory,
3304
3572
  SubTableType,
3305
- aW as SummaryApproveHisTypeEnum,
3573
+ b3 as SummaryApproveHisTypeEnum,
3306
3574
  T as TimeDiffFormat,
3307
3575
  V as ViewTypeEnum,
3308
3576
  W as WidgetImageSizeMode,
3309
- aX as applyCheckDsDataToRuntime,
3310
- aY as applyMedProCheckDsDataToRuntime,
3577
+ b4 as applyCheckDsDataToRuntime,
3578
+ b5 as applyMedProCheckDsDataToRuntime,
3311
3579
  baseDataUtils,
3580
+ b6 as buildFormChangeDisplayRows,
3581
+ b7 as buildStableFieldLocation,
3312
3582
  calcFillData,
3313
3583
  calcUtils,
3314
3584
  clearFormRules,
3585
+ c2 as collectAnnotationItemsByLocation,
3586
+ b8 as collectFormChangeFieldLocations,
3315
3587
  commonUtils,
3316
- aZ as deleteSubtableRow,
3588
+ b9 as deleteSubtableRow,
3589
+ ba as detailsHaveFormChangeRowOps,
3590
+ enrichFormChangeRowDetails,
3591
+ bb as extractFormChangeRowDetails,
3317
3592
  extractKeywordFromQueryData,
3318
- a_ as fetchCheckDsDataForTable,
3319
- a$ as fetchCustomCheckDsData,
3320
- b0 as fetchMedProCheckDsData,
3593
+ bc as fetchCheckDsDataForTable,
3594
+ bd as fetchCustomCheckDsData,
3595
+ be as fetchMedProCheckDsData,
3596
+ f2 as filterAnnotationItemsUpToCurrent,
3321
3597
  getAppInfo,
3322
- b1 as getParseRuleConfig,
3598
+ bf as getFormChangeRowKey,
3599
+ bg as getFormChangeRowOp,
3600
+ bh as getParseRuleConfig,
3323
3601
  getParseRuleInfo,
3324
3602
  getParseRuleValue,
3325
3603
  getSubTableQuickFillInfo,
3326
3604
  getSuiteKey,
3327
- b2 as handleOldConfig,
3605
+ bi as handleOldConfig,
3606
+ bj as insertSubtableRows,
3607
+ bk as isAnnLocationSelected,
3328
3608
  isEdhrSuite,
3329
- b3 as isMedProSuite,
3330
- b4 as jsonSchemaUtils,
3331
- am as normalizeRefLoaderResult,
3332
- an as refUtils,
3609
+ bl as isFormChangeGhostRow,
3610
+ bm as isMedProSuite,
3611
+ bn as isRowAddedInCurrentFormChange,
3612
+ bo as jsonSchemaUtils,
3613
+ bp as nextFormChangeRowViewHistoryId,
3614
+ ak as normalizeRefLoaderResult,
3615
+ bq as recordSubtableRowAdd,
3616
+ br as recordSubtableRowDelete,
3617
+ al as refUtils,
3618
+ registerValidationContext,
3619
+ bs as relocateDeletedRowsToEnd,
3333
3620
  renderUtils,
3334
- b5 as requestNonMedProCheckDsData,
3621
+ requestDisplayValidation,
3622
+ requestFullValidation,
3623
+ bt as requestNonMedProCheckDsData,
3624
+ bu as resolveAnnotationFieldLocation,
3625
+ bv as resolveFormChangeRowUi,
3626
+ bw as resolveRowFormChangeMark,
3335
3627
  ad as setSelectAnnotationId,
3336
- b6 as setSelectMobileTdId,
3628
+ bx as setSelectMobileTdId,
3337
3629
  ac as setSelectValidatorId,
3630
+ settleAndValidateDisplay,
3338
3631
  aa as sqlUtils,
3339
3632
  transformUtils,
3633
+ unregisterValidationContext,
3340
3634
  u as useCalculateFormula,
3341
- ae as useCurrentPageFormState,
3342
- d as useDependency,
3635
+ ao as useCurrentPageFormState,
3636
+ c as useDependency,
3343
3637
  useEbrWikiFactoryV2,
3344
3638
  u3 as useFormModel,
3345
3639
  a2 as useFormTmplConfig,
3346
- b7 as useFormulaExpWatcher,
3640
+ useFormulaExpWatcher,
3347
3641
  useMaterialBalance,
3348
3642
  useMaterialStocktake,
3349
3643
  useNocodeEmitter,
3350
- af as useNocodeFormWidget,
3644
+ ae as useNocodeFormWidget,
3351
3645
  s as useOnlineFormActionButton,
3352
3646
  u2 as useOnlineFormTransformField2Component,
3353
3647
  useRenderPageFactory,
3354
- c as useStyles,
3355
- ar as useValidator,
3648
+ b10 as useStyles,
3649
+ d as useValidator,
3356
3650
  ab as useWidgetStaticAttrs,
3357
3651
  validate
3358
3652
  };