@gct-paas/core-web 0.1.6-dev.5 → 0.1.6-dev.7

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 (218) hide show
  1. package/dist/ColorPicker-DFKXqgaG.js +1 -0
  2. package/dist/_plugin-vue_export-helper-CGzGcWFX.js +1 -0
  3. package/dist/{de_DE-BnwOalCV.js → de_DE-B3f8kAv-.js} +1 -1
  4. package/dist/diagram-config-item-C5Ha2XJq.js +1 -0
  5. package/dist/diagram-config-item-reverse-ChoxnW-Z.js +1 -0
  6. package/dist/diagram-config-item-virtual-Cbmggfwt.js +1 -0
  7. package/dist/{en_US-6Hw6WWah.js → en_US-BSG3Kz6v.js} +1 -1
  8. package/dist/{es_ES-tAqXFGrR.js → es_ES-BGP8IOmQ.js} +1 -1
  9. package/dist/{fr_FR-BkDgVS_P.js → fr_FR-Y-6CzjUq.js} +1 -1
  10. package/dist/hooks-yX21uJ6d.js +1 -0
  11. package/dist/index.min.css +1 -1
  12. package/dist/{ja_JP-AsmV92nC.js → ja_JP-CDlH1v8M.js} +1 -1
  13. package/dist/loader.esm.min.js +1 -1
  14. package/dist/{monaco-editor-CgESUPw_.js → monaco-editor-CQJ9TMzD.js} +1 -1
  15. package/dist/{pt_PT-CCVWOJzE.js → pt_PT-N-iIoE2_.js} +1 -1
  16. package/dist/relationship-diagram-config-DstwwXCO.js +1 -0
  17. package/dist/{ru_RU-w4sUgbzL.js → ru_RU--ESLRHrj.js} +1 -1
  18. package/dist/template-CXn8oAg5.js +1 -0
  19. package/dist/{tr_TR-CGZch3eB.js → tr_TR-BOIykdZO.js} +1 -1
  20. package/dist/{vi_VN-DONxIDR7.js → vi_VN-CmVoM2Rw.js} +1 -1
  21. package/dist/{zh_CN-BxdD8hqG.js → zh_CN-DhsO5Qwx.js} +1 -1
  22. package/dist/{zh_TW-D5Y8j-oG.js → zh_TW-DWdp2kVo.js} +1 -1
  23. package/es/components/UserPick/src/user-pick.vue_vue_type_script_setup_true_lang.mjs +2 -2
  24. package/es/components/base-button/base-button.vue.mjs +1 -1
  25. package/es/components/field-cascader/src/hooks.d.ts +1 -0
  26. package/es/components/index.d.ts +1 -0
  27. package/es/components/index.mjs +2 -0
  28. package/es/components/label-design/modal/template.vue_vue_type_script_setup_true_lang.mjs +2 -2
  29. package/es/components/label-design/panels/modals/diff-modal.vue_vue_type_script_setup_true_lang.mjs +2 -2
  30. package/es/components/label-design/panels/panel.vue_vue_type_script_setup_true_lang.mjs +1 -1
  31. package/es/components/label-design/panels/widget/controls/ImageData.vue.mjs +2 -2
  32. package/es/components/label-design/panels/widget/controls/ImageData.vue_vue_type_script_setup_true_name_image-data_lang.mjs +2 -2
  33. package/es/components/label-design/panels/widget/controls/ImageData.vue_vue_type_style_index_0_scoped_9232a443_lang.css +3 -0
  34. package/es/components/label-design/stage/stage.vue.d.ts +9 -0
  35. package/es/components/label-design/stage/stage.vue.mjs +2 -2
  36. package/es/components/label-design/stage/stage.vue_vue_type_script_setup_true_lang.mjs +2 -1
  37. package/es/components/label-design/stage/{stage.vue_vue_type_style_index_0_scoped_53b1f897_lang.css → stage.vue_vue_type_style_index_0_scoped_9275e9fb_lang.css} +8 -8
  38. package/es/components/layout/view-container/view-container.d.ts +1 -11
  39. package/es/components/layout/view-container/view-container.mjs +10 -14
  40. package/es/components/paas-bpmn-log/components/approval-node.vue.mjs +2 -2
  41. package/es/components/paas-bpmn-log/components/approval-node.vue_vue_type_script_setup_true_lang.mjs +1 -2
  42. package/es/components/paas-bpmn-log/components/{approval-node.vue_vue_type_style_index_0_scoped_a88d7ef9_lang.css → approval-node.vue_vue_type_style_index_0_scoped_a8065b24_lang.css} +9 -9
  43. package/es/components/paas-bpmn-log/paas-bpmn-log.vue.mjs +2 -2
  44. package/es/components/paas-bpmn-log/paas-bpmn-log.vue_vue_type_script_setup_true_lang.mjs +1 -2
  45. package/es/components/paas-bpmn-log/{paas-bpmn-log.vue_vue_type_style_index_0_scoped_c85122b0_lang.css → paas-bpmn-log.vue_vue_type_style_index_0_scoped_eb574523_lang.css} +9 -9
  46. package/es/components/select-user-modal/deptUser.vue.d.ts +9 -0
  47. package/es/components/select-user-modal/deptUser.vue.mjs +7 -0
  48. package/es/components/select-user-modal/deptUser.vue_vue_type_script_setup_true_name_deptUser_lang.mjs +296 -0
  49. package/es/components/select-user-modal/deptUser.vue_vue_type_style_index_0_scoped_02dff7bf_lang.css +40 -0
  50. package/es/components/select-user-modal/index.d.ts +2 -0
  51. package/es/components/select-user-modal/index.mjs +1 -0
  52. package/es/components/select-user-modal/range-role.vue.d.ts +9 -0
  53. package/es/components/select-user-modal/range-role.vue.mjs +7 -0
  54. package/es/components/select-user-modal/range-role.vue_vue_type_script_setup_true_name_role_lang.mjs +137 -0
  55. package/es/components/select-user-modal/range-role.vue_vue_type_style_index_0_scoped_1241bcdf_lang.css +34 -0
  56. package/es/components/select-user-modal/select-user-modal.vue.d.ts +12 -0
  57. package/es/components/select-user-modal/select-user-modal.vue.mjs +7 -0
  58. package/es/components/select-user-modal/select-user-modal.vue_vue_type_script_setup_true_name_select-user-modal_lang.mjs +123 -0
  59. package/es/components/select-user-modal/select-user-modal.vue_vue_type_style_index_0_scoped_2c0f184c_lang.css +14 -0
  60. package/es/components/select-user-modal/userGroup.vue.d.ts +9 -0
  61. package/es/components/select-user-modal/userGroup.vue.mjs +7 -0
  62. package/es/components/select-user-modal/userGroup.vue_vue_type_script_setup_true_name_userGroup_lang.mjs +149 -0
  63. package/es/components/select-user-modal/userGroup.vue_vue_type_style_index_0_scoped_47d1cbaa_lang.css +19 -0
  64. package/es/create-app-vue.d.ts +2 -2
  65. package/es/create-app-vue.mjs +7 -5
  66. package/es/index.d.ts +4 -2
  67. package/es/index.mjs +30 -25
  68. package/es/modules/color-picker/src/color-editor.vue.mjs +1 -1
  69. package/es/modules/data-rules-container/index.d.ts +3 -0
  70. package/es/modules/data-rules-container/index.mjs +2 -0
  71. package/es/modules/data-rules-container/src/components/header-action.vue.d.ts +10 -0
  72. package/es/modules/data-rules-container/src/components/header-action.vue.mjs +7 -0
  73. package/es/modules/data-rules-container/src/components/header-action.vue_vue_type_script_setup_true_name_header-action_lang.mjs +36 -0
  74. package/es/modules/data-rules-container/src/components/header-action.vue_vue_type_style_index_0_scoped_4e281013_lang.css +32 -0
  75. package/es/modules/data-rules-container/src/components/ndo-select-cmp.vue.d.ts +8 -0
  76. package/es/modules/data-rules-container/src/components/ndo-select-cmp.vue.mjs +5 -0
  77. package/es/modules/data-rules-container/src/components/ndo-select-cmp.vue_vue_type_script_setup_true_lang.mjs +266 -0
  78. package/es/modules/data-rules-container/src/components/perm-action-node.vue.d.ts +22 -0
  79. package/es/modules/data-rules-container/src/components/perm-action-node.vue.mjs +7 -0
  80. package/es/modules/data-rules-container/src/components/perm-action-node.vue_vue_type_script_setup_true_name_perm-action-node_lang.mjs +384 -0
  81. package/es/modules/data-rules-container/src/components/perm-action-node.vue_vue_type_style_index_0_scoped_417c660f_lang.css +73 -0
  82. package/es/modules/data-rules-container/src/components/perm-root-node.vue.d.ts +3 -0
  83. package/es/modules/data-rules-container/src/components/perm-root-node.vue.mjs +7 -0
  84. package/es/modules/data-rules-container/src/components/perm-root-node.vue_vue_type_script_setup_true_name_perm-root-node_lang.mjs +61 -0
  85. package/es/modules/data-rules-container/src/components/perm-root-node.vue_vue_type_style_index_0_scoped_ca5c9d20_lang.css +74 -0
  86. package/es/modules/data-rules-container/src/components/rdo-select-cmp.vue.d.ts +11 -0
  87. package/es/modules/data-rules-container/src/components/rdo-select-cmp.vue.mjs +5 -0
  88. package/es/modules/data-rules-container/src/components/rdo-select-cmp.vue_vue_type_script_setup_true_lang.mjs +93 -0
  89. package/es/modules/data-rules-container/src/components/request-select-cmp.vue.d.ts +9 -0
  90. package/es/modules/data-rules-container/src/components/request-select-cmp.vue.mjs +5 -0
  91. package/es/modules/data-rules-container/src/components/request-select-cmp.vue_vue_type_script_setup_true_name_request-select-cmp_lang.mjs +117 -0
  92. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue.d.ts +3 -0
  93. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue.mjs +6 -0
  94. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue_vue_type_script_name_gct-select_setup_true_lang.mjs +100 -0
  95. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue_vue_type_style_index_0_lang.css +21 -0
  96. package/es/modules/data-rules-container/src/components/select-modal-cmp.vue.d.ts +32 -0
  97. package/es/modules/data-rules-container/src/components/select-modal-cmp.vue.mjs +5 -0
  98. package/es/modules/data-rules-container/src/components/select-modal-cmp.vue_vue_type_script_setup_true_name_select-modal-cmp_lang.mjs +268 -0
  99. package/es/modules/data-rules-container/src/components/select-more.vue.d.ts +8 -0
  100. package/es/modules/data-rules-container/src/components/select-more.vue.mjs +5 -0
  101. package/es/modules/data-rules-container/src/components/select-more.vue_vue_type_script_setup_true_lang.mjs +26 -0
  102. package/es/modules/data-rules-container/src/components/select-userdep-cmp.vue.d.ts +12 -0
  103. package/es/modules/data-rules-container/src/components/select-userdep-cmp.vue.mjs +5 -0
  104. package/es/modules/data-rules-container/src/components/select-userdep-cmp.vue_vue_type_script_setup_true_name_select-userdep-cmp_lang.mjs +103 -0
  105. package/es/modules/data-rules-container/src/components/tree-action-node.vue.d.ts +25 -0
  106. package/es/modules/data-rules-container/src/components/tree-action-node.vue.mjs +7 -0
  107. package/es/modules/data-rules-container/src/components/tree-action-node.vue_vue_type_script_setup_true_name_tree-action-node_lang.mjs +544 -0
  108. package/es/modules/data-rules-container/src/components/tree-action-node.vue_vue_type_style_index_0_scoped_46368089_lang.css +67 -0
  109. package/es/modules/data-rules-container/src/components/tree-root-node.vue.d.ts +3 -0
  110. package/es/modules/data-rules-container/src/components/tree-root-node.vue.mjs +7 -0
  111. package/es/modules/data-rules-container/src/components/tree-root-node.vue_vue_type_script_setup_true_name_tree-root-node_lang.mjs +105 -0
  112. package/es/modules/data-rules-container/src/components/tree-root-node.vue_vue_type_style_index_0_scoped_37e323fb_lang.css +29 -0
  113. package/es/modules/data-rules-container/src/components/tree-select-cmp.vue.d.ts +3 -0
  114. package/es/modules/data-rules-container/src/components/tree-select-cmp.vue.mjs +5 -0
  115. package/es/modules/data-rules-container/src/components/tree-select-cmp.vue_vue_type_script_name_gct-select_setup_true_lang.mjs +89 -0
  116. package/es/modules/data-rules-container/src/constant/config.d.ts +146 -0
  117. package/es/modules/data-rules-container/src/constant/config.mjs +548 -0
  118. package/es/modules/data-rules-container/src/constant/interface.d.ts +85 -0
  119. package/es/modules/data-rules-container/src/constant/interface.mjs +36 -0
  120. package/es/modules/data-rules-container/src/data-rules-container.vue.d.ts +45 -0
  121. package/es/modules/data-rules-container/src/data-rules-container.vue.mjs +6 -0
  122. package/es/modules/data-rules-container/src/data-rules-container.vue_vue_type_script_setup_true_name_data-rules-container_lang.mjs +234 -0
  123. package/es/modules/data-rules-container/src/data-rules-container.vue_vue_type_style_index_0_lang.css +149 -0
  124. package/es/modules/data-rules-container/src/field-role-container.vue.d.ts +14 -0
  125. package/es/modules/data-rules-container/src/field-role-container.vue.mjs +5 -0
  126. package/es/modules/data-rules-container/src/field-role-container.vue_vue_type_script_setup_true_name_field-role-container_lang.mjs +73 -0
  127. package/es/modules/data-rules-container/src/hooks/useDataRulesTree.d.ts +30 -0
  128. package/es/modules/data-rules-container/src/hooks/useDataRulesTree.mjs +317 -0
  129. package/es/modules/data-rules-container/src/hooks/useEmitter.d.ts +10 -0
  130. package/es/modules/data-rules-container/src/hooks/useRdoHooks.d.ts +37 -0
  131. package/es/modules/data-rules-container/src/hooks/useRdoHooks.mjs +144 -0
  132. package/es/modules/data-rules-container/src/hooks/useRole.d.ts +8 -0
  133. package/es/modules/data-rules-container/src/typing.d.ts +40 -0
  134. package/es/modules/gct-form/controller/form-item-basic/form-item-basic.controller.mjs +2 -0
  135. package/es/modules/gct-form/controller/gct-form/gct-form.controller.mjs +1 -0
  136. package/es/modules/gct-table/controller/gct-table/gct-table.controller.mjs +1 -0
  137. package/es/modules/gct-table/controller/table-item/table-item.controller.mjs +2 -0
  138. package/es/modules/gct-table/controller/table-row/table-row.controller.mjs +3 -0
  139. package/es/modules/global-modal/src/components/ModalWrapper.vue_vue_type_script_lang.mjs +1 -4
  140. package/es/modules/print-tmpl/print-tmpl-modal.vue_vue_type_script_setup_true_name_print-tmpl-modal_lang.mjs +2 -2
  141. package/es/modules/relationship-diagram-config/cache.controller.d.ts +70 -0
  142. package/es/modules/relationship-diagram-config/cache.controller.mjs +128 -0
  143. package/es/modules/relationship-diagram-config/components/diagram-config-item/diagram-config-item.css +123 -0
  144. package/es/modules/relationship-diagram-config/components/diagram-config-item/diagram-config-item.d.ts +381 -0
  145. package/es/modules/relationship-diagram-config/components/diagram-config-item/diagram-config-item.mjs +98 -0
  146. package/es/modules/relationship-diagram-config/components/diagram-config-item-container/diagram-config-item-container.css +71 -0
  147. package/es/modules/relationship-diagram-config/components/diagram-config-item-container/diagram-config-item-container.d.ts +28 -0
  148. package/es/modules/relationship-diagram-config/components/diagram-config-item-container/diagram-config-item-container.mjs +53 -0
  149. package/es/modules/relationship-diagram-config/components/diagram-config-item-info/diagram-config-item-info.d.ts +27 -0
  150. package/es/modules/relationship-diagram-config/components/diagram-config-item-info/diagram-config-item-info.mjs +2 -0
  151. package/es/modules/relationship-diagram-config/components/diagram-config-item-reverse/diagram-config-item-reverse.css +107 -0
  152. package/es/modules/relationship-diagram-config/components/diagram-config-item-reverse/diagram-config-item-reverse.d.ts +34 -0
  153. package/es/modules/relationship-diagram-config/components/diagram-config-item-reverse/diagram-config-item-reverse.mjs +198 -0
  154. package/es/modules/relationship-diagram-config/components/diagram-config-item-virtual/diagram-config-item-virtual.css +68 -0
  155. package/es/modules/relationship-diagram-config/components/diagram-config-item-virtual/diagram-config-item-virtual.d.ts +31 -0
  156. package/es/modules/relationship-diagram-config/components/diagram-config-item-virtual/diagram-config-item-virtual.mjs +53 -0
  157. package/es/modules/relationship-diagram-config/components/index.d.ts +5 -0
  158. package/es/modules/relationship-diagram-config/components/index.mjs +5 -0
  159. package/es/modules/relationship-diagram-config/constant/index.d.ts +72 -0
  160. package/es/modules/relationship-diagram-config/constant/index.mjs +70 -0
  161. package/es/modules/relationship-diagram-config/hooks/index.d.ts +10 -0
  162. package/es/modules/relationship-diagram-config/hooks/index.mjs +19 -0
  163. package/es/modules/relationship-diagram-config/index.d.ts +6 -0
  164. package/es/modules/relationship-diagram-config/index.mjs +28 -0
  165. package/es/modules/relationship-diagram-config/interface/i-link-provider/i-link-provider.d.ts +57 -0
  166. package/es/modules/relationship-diagram-config/interface/i-node-provider/i-node-provider.d.ts +18 -0
  167. package/es/modules/relationship-diagram-config/interface/i-relationship-diagram-link/i-relationship-diagram-link.d.ts +80 -0
  168. package/es/modules/relationship-diagram-config/interface/i-relationship-diagram-node/i-relationship-diagram-node.d.ts +82 -0
  169. package/es/modules/relationship-diagram-config/interface/i-relationship-diagram-options/i-relationship-diagram-options.d.ts +51 -0
  170. package/es/modules/relationship-diagram-config/interface/i-rule-config/i-rule-config.d.ts +135 -0
  171. package/es/modules/relationship-diagram-config/interface/index.d.ts +6 -0
  172. package/es/modules/relationship-diagram-config/link.controller.d.ts +75 -0
  173. package/es/modules/relationship-diagram-config/link.controller.mjs +121 -0
  174. package/es/modules/relationship-diagram-config/node.controller.d.ts +102 -0
  175. package/es/modules/relationship-diagram-config/node.controller.mjs +189 -0
  176. package/es/modules/relationship-diagram-config/plumb-plugin/arrow-endpoint.d.ts +23 -0
  177. package/es/modules/relationship-diagram-config/plumb-plugin/arrow-endpoint.mjs +33 -0
  178. package/es/modules/relationship-diagram-config/plumb-plugin/blank-endpoint-renderer.d.ts +1 -0
  179. package/es/modules/relationship-diagram-config/plumb-plugin/blank-endpoint-renderer.mjs +27 -0
  180. package/es/modules/relationship-diagram-config/plumb-plugin/index.d.ts +3 -0
  181. package/es/modules/relationship-diagram-config/plumb-plugin/index.mjs +2 -0
  182. package/es/modules/relationship-diagram-config/providers/default-link-provider/default-link-provider.css +132 -0
  183. package/es/modules/relationship-diagram-config/providers/default-link-provider/default-link-provider.d.ts +21 -0
  184. package/es/modules/relationship-diagram-config/providers/default-link-provider/default-link-provider.mjs +184 -0
  185. package/es/modules/relationship-diagram-config/providers/default-node-provider/default-node-provider.d.ts +14 -0
  186. package/es/modules/relationship-diagram-config/providers/default-node-provider/default-node-provider.mjs +17 -0
  187. package/es/modules/relationship-diagram-config/providers/index.d.ts +5 -0
  188. package/es/modules/relationship-diagram-config/providers/index.mjs +5 -0
  189. package/es/modules/relationship-diagram-config/providers/reverse-node-provider/reverse-node-provider.d.ts +14 -0
  190. package/es/modules/relationship-diagram-config/providers/reverse-node-provider/reverse-node-provider.mjs +17 -0
  191. package/es/modules/relationship-diagram-config/providers/virtual-link-provider/virtual-link-provider.d.ts +16 -0
  192. package/es/modules/relationship-diagram-config/providers/virtual-link-provider/virtual-link-provider.mjs +26 -0
  193. package/es/modules/relationship-diagram-config/providers/virtual-node-provider/virtual-node-provider.d.ts +14 -0
  194. package/es/modules/relationship-diagram-config/providers/virtual-node-provider/virtual-node-provider.mjs +17 -0
  195. package/es/modules/relationship-diagram-config/relationship-diagram-config.controller.d.ts +119 -0
  196. package/es/modules/relationship-diagram-config/relationship-diagram-config.controller.mjs +199 -0
  197. package/es/modules/relationship-diagram-config/relationship-diagram-config.css +113 -0
  198. package/es/modules/relationship-diagram-config/relationship-diagram-config.d.ts +102 -0
  199. package/es/modules/relationship-diagram-config/relationship-diagram-config.mjs +104 -0
  200. package/es/modules/relationship-diagram-config/relationship-diagram-config.state.d.ts +44 -0
  201. package/es/modules/relationship-diagram-config/relationship-diagram-config.state.mjs +46 -0
  202. package/es/modules/relationship-diagram-config/utils/index.d.ts +1 -0
  203. package/es/modules/relationship-diagram-config/utils/register/register.d.ts +71 -0
  204. package/es/modules/relationship-diagram-config/utils/register/register.mjs +81 -0
  205. package/es/utils/recursive.mjs +1 -0
  206. package/package.json +10 -9
  207. package/dist/_plugin-vue_export-helper-59SbqtUR.js +0 -1
  208. package/dist/components-Dw_doMp_.js +0 -1
  209. package/dist/template-tzWsbHZE.js +0 -1
  210. package/es/components/label-design/panels/widget/controls/ImageData.vue_vue_type_style_index_0_scoped_3c4a9733_lang.css +0 -3
  211. package/es/components/paas-bpmn-log/hooks/useObserver.mjs +0 -46
  212. /package/dist/{JsBarcode-DlXSdlvD.js → JsBarcode-DY53cVJ6.js} +0 -0
  213. /package/dist/{cropper-tw7tUDDe.js → cropper-DK_hFgpO.js} +0 -0
  214. /package/dist/{icon-next-picker-B_S_yInJ.js → icon-next-picker-DYiHqnNR.js} +0 -0
  215. /package/dist/{objectSpread2-DxfE1S3_.js → objectSpread2-DARadIQB.js} +0 -0
  216. /package/dist/{overlayscrollbars-vue-DtKFrHnA.js → overlayscrollbars-vue-Df-3wShc.js} +0 -0
  217. /package/dist/{rich-editor-K2Pv0Uja.js → rich-editor-DVOriJH0.js} +0 -0
  218. /package/dist/{useMonacoEditor-BO2ALW-7.js → useMonacoEditor-DqSQTg7b.js} +0 -0
@@ -0,0 +1,93 @@
1
+ import { useAsyncOptions } from "../hooks/useRdoHooks.mjs";
2
+ import { createBlock, createElementVNode, createVNode, defineComponent, onBeforeMount, openBlock, ref, resolveComponent, toDisplayString, unref, withCtx } from "vue";
3
+ import { debounce } from "lodash-es";
4
+ import { TreeSelect } from "ant-design-vue";
5
+ import { watchDebounced } from "@vueuse/core";
6
+ //#region src/modules/data-rules-container/src/components/rdo-select-cmp.vue?vue&type=script&setup=true&lang.ts
7
+ var rdo_select_cmp_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
8
+ __name: "rdo-select-cmp",
9
+ props: {
10
+ value: {},
11
+ apiParams: {},
12
+ parentToDefault: {
13
+ type: Boolean,
14
+ default: true
15
+ }
16
+ },
17
+ setup(__props) {
18
+ const props = __props;
19
+ const searchValue = ref();
20
+ const { getChildrens, getAsyncOptions, treeData } = useAsyncOptions({
21
+ bindModelKey: props.apiParams.modelKey,
22
+ modelCategory: "entity"
23
+ });
24
+ async function getOptionsByQuery(opts = {}) {
25
+ await getAsyncOptions({
26
+ modelCategory: "entity",
27
+ pageSize: 9999,
28
+ queryData: { ...opts.queryData },
29
+ ...opts
30
+ });
31
+ }
32
+ onBeforeMount(getOptionsByQuery);
33
+ watchDebounced(() => props.value, async (v) => {
34
+ /** 监听如果分业内不存在id 就手动查询 */
35
+ try {
36
+ await getChildrens(v);
37
+ } catch (error) {
38
+ console.log(error);
39
+ }
40
+ }, {
41
+ debounce: 200,
42
+ immediate: true
43
+ });
44
+ const search = debounce(async (keyword) => {
45
+ await getOptionsByQuery({
46
+ keyword,
47
+ pageNo: 1
48
+ });
49
+ if (!keyword)
50
+ /**選中後初始化选项 */
51
+ await getChildrens(props.value);
52
+ }, 200);
53
+ function getOmittedText(omitted) {
54
+ return omitted.map((v) => v.label?.children?.map((i) => i.children)?.join(":")).join(", ");
55
+ }
56
+ return (_ctx, _cache) => {
57
+ const _component_a_tooltip = resolveComponent("a-tooltip");
58
+ const _component_a_tree_select = resolveComponent("a-tree-select");
59
+ return openBlock(), createBlock(_component_a_tree_select, {
60
+ "search-value": searchValue.value,
61
+ "onUpdate:searchValue": _cache[0] || (_cache[0] = ($event) => searchValue.value = $event),
62
+ value: __props.value,
63
+ style: { "width": "100%" },
64
+ "tree-data": unref(treeData),
65
+ "show-search": "",
66
+ "allow-clear": true,
67
+ multiple: "",
68
+ "tree-node-label-prop": "full_path",
69
+ "show-checked-strategy": unref(TreeSelect).SHOW_ALL,
70
+ "max-tag-count": "responsive",
71
+ "max-tag-text-length": 2,
72
+ virtual: false,
73
+ "filter-tree-node": () => true,
74
+ "dropdown-class-name": "vxe-table--ignore-clear",
75
+ onSearch: unref(search)
76
+ }, {
77
+ maxTagPlaceholder: withCtx((omittedValues) => [createVNode(_component_a_tooltip, { title: getOmittedText(omittedValues) }, {
78
+ default: withCtx(() => [createElementVNode("span", null, "+" + toDisplayString(omittedValues?.length), 1)]),
79
+ _: 2
80
+ }, 1032, ["title"])]),
81
+ _: 1
82
+ }, 8, [
83
+ "search-value",
84
+ "value",
85
+ "tree-data",
86
+ "show-checked-strategy",
87
+ "onSearch"
88
+ ]);
89
+ };
90
+ }
91
+ });
92
+ //#endregion
93
+ export { rdo_select_cmp_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,9 @@
1
+ import { CompProps } from '../typing';
2
+ declare const _default: import('vue').DefineComponent<CompProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
3
+ "update:pageNo": (...args: any[]) => void;
4
+ "update:value": (...args: any[]) => void;
5
+ }, string, import('vue').PublicProps, Readonly<CompProps> & Readonly<{
6
+ "onUpdate:pageNo"?: ((...args: any[]) => any) | undefined;
7
+ "onUpdate:value"?: ((...args: any[]) => any) | undefined;
8
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
9
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import request_select_cmp_vue_vue_type_script_setup_true_name_request_select_cmp_lang_default from "./request-select-cmp.vue_vue_type_script_setup_true_name_request-select-cmp_lang.mjs";
2
+ //#region src/modules/data-rules-container/src/components/request-select-cmp.vue
3
+ var request_select_cmp_default = request_select_cmp_vue_vue_type_script_setup_true_name_request_select_cmp_lang_default;
4
+ //#endregion
5
+ export { request_select_cmp_default as default };
@@ -0,0 +1,117 @@
1
+ import { computed, createBlock, defineComponent, mergeProps, nextTick, onBeforeMount, openBlock, ref, resolveComponent, unref } from "vue";
2
+ import { debounce } from "lodash-es";
3
+ //#region src/modules/data-rules-container/src/components/request-select-cmp.vue?vue&type=script&setup=true&name=request-select-cmp&lang.ts
4
+ var SEARCH_DEBOUNCE_MS = 200;
5
+ var request_select_cmp_vue_vue_type_script_setup_true_name_request_select_cmp_lang_default = /* @__PURE__ */ defineComponent({
6
+ __name: "request-select-cmp",
7
+ props: {
8
+ value: {},
9
+ api: { type: Function },
10
+ apiParams: {},
11
+ filterType: {}
12
+ },
13
+ emits: ["update:pageNo", "update:value"],
14
+ setup(__props, { emit: __emit }) {
15
+ const emit = __emit;
16
+ const props = __props;
17
+ const options = ref([]);
18
+ const lastSearchValue = ref("");
19
+ const displayField = ref("name_");
20
+ const value = computed(() => props.value || []);
21
+ function toOption(item) {
22
+ return {
23
+ label: item.__LABEL__ ?? item.text ?? item.name_ ?? item.name ?? "",
24
+ value: item.id_ ?? item.value ?? item.key ?? item.id ?? ""
25
+ };
26
+ }
27
+ const filterOption = (input, option) => {
28
+ if (!option) return false;
29
+ if (option.label) return option.label.toLowerCase().includes(input.toLowerCase());
30
+ if (option.value != null) return String(option.value).toLowerCase().includes(input.toLowerCase());
31
+ return false;
32
+ };
33
+ const hasPageNo = computed(() => {
34
+ return Object.keys(props.apiParams)?.includes("pageNo");
35
+ });
36
+ const separatorAttr = computed(() => ({
37
+ showSearch: true,
38
+ filterOption: !hasPageNo.value ? filterOption : false,
39
+ maxTagTextLength: 2,
40
+ maxTagCount: "responsive"
41
+ }));
42
+ async function fetchOptions(params) {
43
+ if (typeof props.api !== "function") return [];
44
+ const result = await props.api({ ...params ?? {} });
45
+ return (Array.isArray(result) ? result : result?.data ?? []).map(toOption);
46
+ }
47
+ function getSearchParams(keyword) {
48
+ if (!keyword?.trim()) return props.apiParams ?? {};
49
+ const queryName = `${displayField.value}.ilike`;
50
+ return {
51
+ ...props.apiParams,
52
+ query: { [queryName]: keyword.trim() },
53
+ exp: `OR(${queryName})`
54
+ };
55
+ }
56
+ async function getModelInfo() {
57
+ const { bindModelKey } = props.apiParams ?? {};
58
+ if (bindModelKey) displayField.value = (await _api.apaas.modelMeta.getInfo({ id: bindModelKey }) || {}).displayField || "name_";
59
+ }
60
+ /** 下拉触底分页 */
61
+ async function popupScroll(e) {
62
+ const target = e.target;
63
+ if (target.scrollTop + target.offsetHeight !== target.scrollHeight) return;
64
+ const { pageNo = 1, pageSize = 10 } = props.apiParams ?? {};
65
+ if (Number(pageNo) * Number(pageSize) > options.value?.length) return;
66
+ emit("update:pageNo");
67
+ await nextTick();
68
+ const opts = await fetchOptions(getSearchParams(lastSearchValue.value ?? "") ?? {});
69
+ const existingValues = new Set(options.value.map((j) => j.value));
70
+ const newOpts = opts.filter((i) => !existingValues.has(i.value));
71
+ if (newOpts.length) options.value = [...options.value, ...newOpts];
72
+ }
73
+ const debouncedSearch = debounce(async (val) => {
74
+ if (!hasPageNo.value) return;
75
+ lastSearchValue.value = val.trim();
76
+ emit("update:pageNo", 1);
77
+ options.value = await fetchOptions(getSearchParams(lastSearchValue.value));
78
+ }, SEARCH_DEBOUNCE_MS);
79
+ const handleChange = async (val) => {
80
+ emit("update:value", val);
81
+ if ((!val || val.length === 0) && hasPageNo.value) {
82
+ emit("update:pageNo", 1);
83
+ options.value = await fetchOptions(props.apiParams ?? {});
84
+ }
85
+ };
86
+ const handleFocus = async () => {
87
+ if (!hasPageNo.value) return;
88
+ if ((!value.value || value.value.length === 0) && lastSearchValue.value) {
89
+ emit("update:pageNo", 1);
90
+ options.value = await fetchOptions(props.apiParams ?? {});
91
+ }
92
+ lastSearchValue.value = "";
93
+ };
94
+ onBeforeMount(async () => {
95
+ getModelInfo();
96
+ options.value = await fetchOptions(props.apiParams ?? {});
97
+ });
98
+ return (_ctx, _cache) => {
99
+ const _component_a_select = resolveComponent("a-select");
100
+ return openBlock(), createBlock(_component_a_select, mergeProps({
101
+ value: value.value,
102
+ options: options.value
103
+ }, separatorAttr.value, {
104
+ onPopupScroll: popupScroll,
105
+ onSearch: unref(debouncedSearch),
106
+ onChange: handleChange,
107
+ onFocus: handleFocus
108
+ }), null, 16, [
109
+ "value",
110
+ "options",
111
+ "onSearch"
112
+ ]);
113
+ };
114
+ }
115
+ });
116
+ //#endregion
117
+ export { request_select_cmp_vue_vue_type_script_setup_true_name_request_select_cmp_lang_default as default };
@@ -0,0 +1,3 @@
1
+ import { CompProps } from '../typing';
2
+ declare const _default: import('vue').DefineComponent<CompProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<CompProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
3
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import request_tree_select_cmp_vue_vue_type_script_name_gct_select_setup_true_lang_default from "./request-tree-select-cmp.vue_vue_type_script_name_gct-select_setup_true_lang.mjs";
2
+ import './request-tree-select-cmp.vue_vue_type_style_index_0_lang.css';/* empty css */
3
+ //#region src/modules/data-rules-container/src/components/request-tree-select-cmp.vue
4
+ var request_tree_select_cmp_default = request_tree_select_cmp_vue_vue_type_script_name_gct_select_setup_true_lang_default;
5
+ //#endregion
6
+ export { request_tree_select_cmp_default as default };
@@ -0,0 +1,100 @@
1
+ import { createBlock, defineComponent, onBeforeMount, openBlock, ref, resolveComponent, unref } from "vue";
2
+ import { cloneDeep } from "lodash-es";
3
+ import { FIELD_TYPE, PrintResourceEnum, TreeHelper } from "@gct-paas/core";
4
+ import { TreeSelect } from "ant-design-vue";
5
+ //#region src/modules/data-rules-container/src/components/request-tree-select-cmp.vue?vue&type=script&name=gct-select&setup=true&lang.ts
6
+ var request_tree_select_cmp_vue_vue_type_script_name_gct_select_setup_true_lang_default = /* @__PURE__ */ defineComponent({
7
+ __name: "request-tree-select-cmp",
8
+ props: {
9
+ value: {},
10
+ api: { type: Function },
11
+ apiParams: {},
12
+ filterType: {}
13
+ },
14
+ setup(__props) {
15
+ const props = __props;
16
+ const treeOptions = ref([]);
17
+ const isPrinterField = (params) => params?.fieldType === FIELD_TYPE.PRINTER;
18
+ /** 打印机树:父节点 + printChildNode 扁平化后交给 list_to_tree */
19
+ function buildPrinterTreeFlatList(list) {
20
+ return list.flatMap((i) => {
21
+ const dftInfo = i.printChildNode?.find((e) => e.defaultPrint === "是");
22
+ return [{
23
+ ...i,
24
+ label: i.name,
25
+ value: i.printKey,
26
+ parentId: i.parentId || "ROOT",
27
+ dftPrintInfo: i.type === PrintResourceEnum.CLIENT_PRINT && dftInfo ? {
28
+ ...dftInfo,
29
+ value: dftInfo.printKey,
30
+ label: dftInfo.name
31
+ } : void 0
32
+ }, ...i.printChildNode?.map((e) => ({
33
+ ...e,
34
+ label: e.name,
35
+ value: e.printKey,
36
+ parentId: i.printKey
37
+ })) ?? []];
38
+ });
39
+ }
40
+ onBeforeMount(async () => {
41
+ if (typeof props.api === "function") {
42
+ const result = await props.api({ ...props.apiParams ?? {} });
43
+ const list = Array.isArray(result) ? result : result.data ?? [];
44
+ if (isPrinterField(props.apiParams)) {
45
+ const valueList = buildPrinterTreeFlatList(list ?? []);
46
+ treeOptions.value = TreeHelper.list_to_tree(cloneDeep(valueList.map((i) => ({
47
+ ...i,
48
+ id: i.printKey
49
+ }))), (node) => ({
50
+ ...node,
51
+ title: node.label ?? node.name ?? "",
52
+ disabled: node.parentId === "ROOT" && node.type === PrintResourceEnum.INTERNET_PRINT
53
+ }));
54
+ } else {
55
+ const options = list.map((i) => {
56
+ if (i.__NON_LEAF__ === void 0) i.__NON_LEAF__ = list.some((k) => k.parent_id_ === i.id_);
57
+ return {
58
+ label: i.__LABEL__,
59
+ value: i.id_,
60
+ full_path_: i.full_path_,
61
+ _item: i,
62
+ id: i.id_,
63
+ pId: i.parent_id_,
64
+ isLeaf: !i.__NON_LEAF__
65
+ };
66
+ });
67
+ treeOptions.value = options.map((item) => {
68
+ const ch_full_path = item.full_path_.split("/").map((path) => {
69
+ const n = options.find((k) => k.value === path);
70
+ if (n) return n.label;
71
+ return null;
72
+ }).filter((i) => i).join("/");
73
+ return {
74
+ ...item,
75
+ label: ch_full_path,
76
+ title: ch_full_path
77
+ };
78
+ });
79
+ }
80
+ }
81
+ });
82
+ return (_ctx, _cache) => {
83
+ const _component_a_tree_select = resolveComponent("a-tree-select");
84
+ return openBlock(), createBlock(_component_a_tree_select, {
85
+ class: "gct-request-tree-select",
86
+ "dropdown-class-name": "gct-request-tree-select-dropdown",
87
+ "tree-data": treeOptions.value,
88
+ "tree-data-simple-mode": "",
89
+ "allow-clear": "",
90
+ "show-checked-strategy": unref(TreeSelect).SHOW_ALL,
91
+ "tree-node-label-prop": "label",
92
+ "filter-tree-node": false,
93
+ "max-tag-count": "responsive",
94
+ "max-tag-text-length": 3
95
+ }, null, 8, ["tree-data", "show-checked-strategy"]);
96
+ };
97
+ }
98
+ });
99
+ //#endregion
100
+ export { request_tree_select_cmp_vue_vue_type_script_name_gct_select_setup_true_lang_default as default };
@@ -0,0 +1,21 @@
1
+ .gct-request-tree-select-dropdown.ant-select-dropdown {
2
+ max-width: min(520px, 92vw);
3
+ }
4
+ .gct-request-tree-select-dropdown .ant-select-tree-list-holder-inner {
5
+ max-width: 100%;
6
+ }
7
+ .gct-request-tree-select-dropdown .ant-select-tree-treenode {
8
+ max-width: 100%;
9
+ }
10
+ .gct-request-tree-select-dropdown .ant-select-tree-node-content-wrapper {
11
+ flex: 1;
12
+ min-width: 0;
13
+ max-width: 100%;
14
+ overflow: hidden;
15
+ }
16
+ .gct-request-tree-select-dropdown .ant-select-tree-title {
17
+ display: block;
18
+ overflow: hidden;
19
+ text-overflow: ellipsis;
20
+ white-space: nowrap;
21
+ }
@@ -0,0 +1,32 @@
1
+ import { ModalCompProps } from '../typing';
2
+ declare const _default: import('vue').DefineComponent<ModalCompProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
3
+ change: (...args: any[]) => void;
4
+ }, string, import('vue').PublicProps, Readonly<ModalCompProps> & Readonly<{
5
+ onChange?: ((...args: any[]) => any) | undefined;
6
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
7
+ selectUserModalRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
8
+ getContainer?: HTMLElement;
9
+ className?: string;
10
+ }> & Readonly<{
11
+ onOk?: ((...args: any[]) => any) | undefined;
12
+ }>, {
13
+ open: (data: IObject) => void;
14
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
15
+ ok: (...args: any[]) => void;
16
+ }, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
17
+ P: {};
18
+ B: {};
19
+ D: {};
20
+ C: {};
21
+ M: {};
22
+ Defaults: {};
23
+ }, Readonly<{
24
+ getContainer?: HTMLElement;
25
+ className?: string;
26
+ }> & Readonly<{
27
+ onOk?: ((...args: any[]) => any) | undefined;
28
+ }>, {
29
+ open: (data: IObject) => void;
30
+ }, {}, {}, {}, {}> | null;
31
+ }, any>;
32
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import select_modal_cmp_vue_vue_type_script_setup_true_name_select_modal_cmp_lang_default from "./select-modal-cmp.vue_vue_type_script_setup_true_name_select-modal-cmp_lang.mjs";
2
+ //#region src/modules/data-rules-container/src/components/select-modal-cmp.vue
3
+ var select_modal_cmp_default = select_modal_cmp_vue_vue_type_script_setup_true_name_select_modal_cmp_lang_default;
4
+ //#endregion
5
+ export { select_modal_cmp_default as default };
@@ -0,0 +1,268 @@
1
+ import select_user_modal_default from "../../../../components/select-user-modal/select-user-modal.vue.mjs";
2
+ import "../../../../components/select-user-modal/index.mjs";
3
+ import print_tmpl_modal_default from "../../../print-tmpl/print-tmpl-modal.vue.mjs";
4
+ import "../../../print-tmpl/index.mjs";
5
+ import { Fragment, computed, createElementBlock, createVNode, defineComponent, mergeProps, onMounted, openBlock, ref, resolveComponent, toRaw, unref, watch } from "vue";
6
+ import { PrintTypeEnum, t, uuid2 } from "@gct-paas/core";
7
+ //#region src/modules/data-rules-container/src/components/select-modal-cmp.vue?vue&type=script&setup=true&name=select-modal-cmp&lang.ts
8
+ var select_modal_cmp_vue_vue_type_script_setup_true_name_select_modal_cmp_lang_default = /* @__PURE__ */ defineComponent({
9
+ __name: "select-modal-cmp",
10
+ props: {
11
+ supportModalType: {},
12
+ pickerCompParams: {},
13
+ value: {}
14
+ },
15
+ emits: ["change"],
16
+ setup(__props, { emit: __emit }) {
17
+ const props = __props;
18
+ const emits = __emit;
19
+ const selectUserModalRef = ref();
20
+ const getClassName = "range-user-modal_" + uuid2(16, 16);
21
+ const allRoles = ref([]);
22
+ const allUserGroups = ref([]);
23
+ const allDepts = ref([]);
24
+ const allUsers = ref([]);
25
+ const labelOptions = ref([]);
26
+ const fieldObj = ref({});
27
+ const multiple = computed(() => props.pickerCompParams?.multiple);
28
+ const selectAtrr = computed(() => {
29
+ return {
30
+ mode: multiple.value ? "multiple" : void 0,
31
+ dropdownClassName: "hidden"
32
+ };
33
+ });
34
+ const showValue = computed(() => {
35
+ if (props.value) {
36
+ let value = props.value;
37
+ const a = multiple.value ? Array.isArray(value) ? value : value?.split(",").filter((i) => i) || [] : value;
38
+ return props.supportModalType === "range_user" ? a : value;
39
+ }
40
+ });
41
+ const handleDeselect = (key) => {
42
+ if (props.supportModalType === "range_user") {
43
+ const raw = props.value;
44
+ const next = (multiple.value ? Array.isArray(raw) ? [...raw] : String(raw ?? "").split(",").filter(Boolean) : raw != null && raw !== "" ? [String(raw)] : []).filter((k) => String(k) !== String(key));
45
+ emits("change", next.length ? next : "", 0);
46
+ return;
47
+ }
48
+ if (props.supportModalType === "label_template_ref") if (multiple.value) {
49
+ const raw = props.value;
50
+ emits("change", (Array.isArray(raw) ? [...raw] : raw != null && raw !== "" ? String(raw).split(",").filter(Boolean) : []).filter((id) => String(id) !== String(key)), 0);
51
+ } else emits("change", "", 0);
52
+ };
53
+ const optionsData = computed(() => {
54
+ if (props.supportModalType === "range_user") {
55
+ const roleOpt = allRoles.value.filter((e) => showValue.value?.includes(e.value));
56
+ const userGroupOpt = allUserGroups.value.filter((e) => showValue.value?.includes(e.value));
57
+ const deptOpt = allDepts.value.filter((e) => showValue.value?.includes(e.value));
58
+ const userOpt = allUsers.value.filter((e) => showValue.value?.includes(e.value));
59
+ return [
60
+ ...roleOpt,
61
+ ...userGroupOpt,
62
+ ...deptOpt,
63
+ ...userOpt
64
+ ];
65
+ }
66
+ if (props.supportModalType === "label_template_ref") return labelOptions.value.map((e) => {
67
+ return {
68
+ ...e,
69
+ value: e.id,
70
+ label: `${e.name}${e.version && e.printType !== "btw" ? " : " + e.version : ""}`
71
+ };
72
+ });
73
+ return [];
74
+ });
75
+ /**
76
+ * 范围人员逻辑开始--------------------------------------
77
+ */
78
+ const updateUserOptions = async (userIds) => {
79
+ if (!userIds?.length) return;
80
+ const notExistUserIds = userIds?.filter((e) => e.includes(`USER:`) && !allUsers.value.some((f) => f.value === e))?.map((e) => e.replace(/USER:/, ""));
81
+ notExistUserIds?.length && await getAllUsers(notExistUserIds);
82
+ };
83
+ const getAllRoles = async () => {
84
+ allRoles.value = (await _api.apaas.role.getList({}) ?? []).map((e) => {
85
+ return {
86
+ ...e,
87
+ value: `ROLE:${e.id}`,
88
+ label: e.name,
89
+ iconExtraProps: {}
90
+ };
91
+ });
92
+ };
93
+ const getAllUsers = async (ids) => {
94
+ const res = (await _api.platform.orgUserPicker.getTenantManagementUserListByIds({ ids: ids.join(",") }) ?? []).map((e) => {
95
+ return {
96
+ ...e,
97
+ value: `USER:${e.id}`,
98
+ label: e.fullname
99
+ };
100
+ });
101
+ allUsers.value.push(...res);
102
+ };
103
+ const getAllUserGroups = async () => {
104
+ allUserGroups.value = (await _api.apaas.userGroup.getList({}) ?? []).map((e) => {
105
+ return {
106
+ ...e,
107
+ value: `USER_GROUP:${e.id}`,
108
+ label: e.name
109
+ };
110
+ });
111
+ };
112
+ const getAllDepts = async () => {
113
+ allDepts.value = (await _api.apaas.designerCommon.getGetCanBeUsedOrg({}) ?? []).map((e) => {
114
+ return {
115
+ ...e,
116
+ value: `ORG:${e.id}`,
117
+ label: e.name
118
+ };
119
+ });
120
+ };
121
+ /**
122
+ * 标签模版逻辑开始--------------------------------------
123
+ */
124
+ const getIsBtwLabel = (label) => {
125
+ if (!label?.printType) return false;
126
+ return label.printType === "btw";
127
+ };
128
+ /**
129
+ * 供标签选择弹窗回填:单选返回一条记录,多选返回已选记录数组(先补全 labelOptions)
130
+ */
131
+ async function getLabelOptionValue(v = showValue.value) {
132
+ await hydrateLabelOptionsFromValue(v);
133
+ const ids = normalizeLabelTemplateIds(v);
134
+ if (!ids.length) return multiple.value ? [] : void 0;
135
+ const mapped = ids.map((id) => labelOptions.value.find((e) => String(e.id) === String(id))).filter(Boolean).map((data) => {
136
+ const categoryId = labelOptions.value.find((e) => e.id === data?.key)?.categoryId || data.categoryId;
137
+ const merged = {
138
+ ...data,
139
+ categoryId
140
+ };
141
+ return {
142
+ ...merged,
143
+ version: getIsBtwLabel(merged) ? "" : merged?.version
144
+ };
145
+ });
146
+ if (multiple.value) return mapped.map((m) => toRaw(m));
147
+ return mapped[0] ? toRaw(mapped[0]) : void 0;
148
+ }
149
+ async function getTmplInfo(id) {
150
+ const res = await _api.apaas.printDesigner.getInfo({
151
+ id,
152
+ moduleType: PrintTypeEnum.LABEL
153
+ });
154
+ res && labelOptions.value.push({
155
+ ...res,
156
+ id: res.baseId ? res.baseId + ":" + res.id : res.id
157
+ });
158
+ return res;
159
+ }
160
+ /** 回填值统一为 id 列表(与 handleOk / handleDeselect 一致) */
161
+ function normalizeLabelTemplateIds(val) {
162
+ if (val == null || val === "") return [];
163
+ if (multiple.value) return Array.isArray(val) ? val.map(String).filter(Boolean) : String(val).split(",").filter(Boolean);
164
+ return [String(val)];
165
+ }
166
+ /** 已有选中项但本地无缓存时,拉取详情写入 labelOptions,供 options 展示 */
167
+ async function hydrateLabelOptionsFromValue(sourceVal) {
168
+ const ids = normalizeLabelTemplateIds(sourceVal ?? showValue.value);
169
+ if (!ids.length) return;
170
+ await Promise.all(ids.map(async (fullId) => {
171
+ if (labelOptions.value.some((e) => String(e.id) === String(fullId))) return;
172
+ await getTmplInfo((String(fullId).includes(":") ? String(fullId).split(":").pop() : String(fullId)) || fullId);
173
+ }));
174
+ }
175
+ const handleOk = async (data) => {
176
+ const notExistUserIds = data?.filter((e) => e.includes(`USER:`) && !allUsers.value.some((f) => f.value === e))?.map((e) => e.replace(/USER:/, ""));
177
+ notExistUserIds?.length && await getAllUsers(notExistUserIds);
178
+ emits("change", data.length ? data : "", 0);
179
+ };
180
+ const handleOpenModal = async () => {
181
+ if (props.supportModalType === "range_user") selectUserModalRef.value.open({
182
+ selectedValue: showValue.value,
183
+ title: ""
184
+ });
185
+ else if (props.supportModalType === "label_template_ref") {
186
+ const res = await _gct.openUtil.modal(print_tmpl_modal_default, {
187
+ selected: await getLabelOptionValue(),
188
+ moduleType: PrintTypeEnum.LABEL,
189
+ isRdo: true,
190
+ btwForceVisible: true,
191
+ multiple: multiple.value
192
+ }, {
193
+ title: t("sys.pageDesigner.chooseTmplSth", { sth: "" }),
194
+ width: 1100,
195
+ height: 734,
196
+ okText: t("sys.okText"),
197
+ wrapClassName: "vxe-table--ignore-clear"
198
+ });
199
+ if (res.ok && res.params?.selected?.length) {
200
+ const { selected } = res.params;
201
+ selected.forEach((o) => {
202
+ if (getIsBtwLabel(o)) {
203
+ o.id = `${o.baseId}:${o.id}`;
204
+ o.version = "";
205
+ }
206
+ });
207
+ selected.forEach((o) => {
208
+ if (!labelOptions.value.some((e) => e.id === o.id)) labelOptions.value.push({ ...o });
209
+ });
210
+ emits("change", multiple.value ? selected.map((e) => e.id) : selected[0].id, 0);
211
+ }
212
+ }
213
+ };
214
+ watch(() => showValue, async (val) => {
215
+ if (props.supportModalType === "range_user") {
216
+ updateUserOptions(multiple.value ? val : [val]);
217
+ return;
218
+ }
219
+ if (props.supportModalType === "label_template_ref") {
220
+ const ids = normalizeLabelTemplateIds(val);
221
+ await hydrateLabelOptionsFromValue(val);
222
+ const rows = ids?.map((id) => labelOptions.value.find((e) => e.id == id))?.filter(Boolean);
223
+ if (!rows?.length) {
224
+ fieldObj.value = {};
225
+ return;
226
+ }
227
+ const primary = rows[0];
228
+ fieldObj.value = {
229
+ ...primary,
230
+ version: getIsBtwLabel(primary) ? "" : primary?.version
231
+ };
232
+ }
233
+ }, {
234
+ immediate: true,
235
+ deep: true
236
+ });
237
+ onMounted(() => {
238
+ if (props.supportModalType === "range_user") {
239
+ getAllRoles();
240
+ getAllUserGroups();
241
+ getAllDepts();
242
+ if (!multiple.value && showValue.value || multiple.value && showValue.value?.length) updateUserOptions(multiple.value ? showValue.value : [showValue.value]);
243
+ }
244
+ if (props.supportModalType === "label_template_ref") hydrateLabelOptionsFromValue();
245
+ });
246
+ return (_ctx, _cache) => {
247
+ const _component_a_select = resolveComponent("a-select");
248
+ return openBlock(), createElementBlock(Fragment, null, [createVNode(_component_a_select, mergeProps({
249
+ open: false,
250
+ value: showValue.value,
251
+ "max-tag-count": "responsive",
252
+ "max-tag-text-length": 2,
253
+ options: optionsData.value
254
+ }, selectAtrr.value, {
255
+ onClick: handleOpenModal,
256
+ onDeselect: handleDeselect
257
+ }), null, 16, ["value", "options"]), createVNode(unref(select_user_modal_default), {
258
+ ref_key: "selectUserModalRef",
259
+ ref: selectUserModalRef,
260
+ "class-name": getClassName,
261
+ "destroy-on-close": true,
262
+ onOk: handleOk
263
+ }, null, 512)], 64);
264
+ };
265
+ }
266
+ });
267
+ //#endregion
268
+ export { select_modal_cmp_vue_vue_type_script_setup_true_name_select_modal_cmp_lang_default as default };
@@ -0,0 +1,8 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
2
+ next: (...args: any[]) => void;
3
+ }, string, import('vue').PublicProps, Readonly<{}> & Readonly<{
4
+ onNext?: ((...args: any[]) => any) | undefined;
5
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
6
+ target: HTMLDivElement;
7
+ }, HTMLDivElement>;
8
+ export default _default;