@gct-paas/core-web 0.1.5-dev.6 → 0.1.5-dev.8

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 (212) hide show
  1. package/dist/_plugin-vue_export-helper-BBfAJeJ1.js +1 -0
  2. package/dist/{icon-next-picker-CShmDJI0.js → icon-next-picker-y8hJhkCi.js} +1 -1
  3. package/dist/index.min.css +1 -1
  4. package/dist/loader.esm.min.js +1 -1
  5. package/dist/{monaco-editor-t8SRxaFC.js → monaco-editor-5qU4ukgX.js} +1 -1
  6. package/es/components/FullScreen/full-screen.vue.d.ts +30 -0
  7. package/es/components/FullScreen/full-screen.vue.mjs +5 -0
  8. package/es/components/FullScreen/full-screen.vue_vue_type_script_setup_true_lang.mjs +44 -0
  9. package/es/components/I18nSelect/src/i18n-select-btn.vue.mjs +2 -2
  10. package/es/components/I18nSelect/src/i18n-select-btn.vue_vue_type_script_setup_true_name_i18n-select-btn_lang.mjs +5 -5
  11. package/es/components/I18nSelect/src/{i18n-select-btn.vue_vue_type_style_index_0_scoped_d0fab479_lang.css → i18n-select-btn.vue_vue_type_style_index_0_scoped_b86f4068_lang.css} +16 -15
  12. package/es/components/I18nSelect/src/i18n-select-container.vue.d.ts +5 -1
  13. package/es/components/I18nSelect/src/i18n-select-container.vue.mjs +2 -2
  14. package/es/components/I18nSelect/src/i18n-select-container.vue_vue_type_script_setup_true_name_i18n-select-container_lang.mjs +1 -0
  15. package/es/components/I18nSelect/src/i18n-select-container.vue_vue_type_style_index_0_scoped_53df3982_lang.css +6 -0
  16. package/es/components/I18nSelect/src/i18n-select-input.vue.mjs +2 -2
  17. package/es/components/I18nSelect/src/i18n-select-input.vue_vue_type_script_setup_true_name_i18n-select-input_lang.mjs +2 -2
  18. package/es/components/I18nSelect/src/i18n-select-input.vue_vue_type_style_index_0_scoped_406c02b4_lang.css +3 -0
  19. package/es/components/app-full-screen-container/app-full-screen-container.css +77 -0
  20. package/es/components/app-full-screen-container/app-full-screen-container.d.ts +26 -0
  21. package/es/components/app-full-screen-container/app-full-screen-container.mjs +83 -0
  22. package/es/components/app-popover/app-popover-component.css +100 -0
  23. package/es/components/app-popover/app-popover-component.d.ts +13 -0
  24. package/es/components/app-popover/app-popover-component.mjs +160 -0
  25. package/es/components/copy-module-key/copy-module-key.vue.mjs +2 -2
  26. package/es/components/copy-module-key/copy-module-key.vue_vue_type_script_setup_true_name_copy-module-key_lang.mjs +1 -0
  27. package/es/components/copy-module-key/{copy-module-key.vue_vue_type_style_index_0_scoped_531b3cd2_lang.css → copy-module-key.vue_vue_type_style_index_0_scoped_66e22862_lang.css} +4 -4
  28. package/es/components/field-cascader/index.d.ts +2 -0
  29. package/es/components/field-cascader/index.mjs +1 -0
  30. package/es/components/field-cascader/src/FieldCascader.vue.d.ts +87 -0
  31. package/es/components/field-cascader/src/FieldCascader.vue.mjs +6 -0
  32. package/es/components/field-cascader/src/FieldCascader.vue_vue_type_script_setup_true_lang.mjs +115 -0
  33. package/es/components/field-cascader/src/FieldCascader.vue_vue_type_style_index_0_lang.css +69 -0
  34. package/es/components/field-cascader/src/SearchInput.vue.d.ts +11 -0
  35. package/es/components/field-cascader/src/SearchInput.vue.mjs +7 -0
  36. package/es/components/field-cascader/src/SearchInput.vue_vue_type_script_setup_true_lang.mjs +38 -0
  37. package/es/components/field-cascader/src/SearchInput.vue_vue_type_style_index_0_scoped_512c4b38_lang.css +9 -0
  38. package/es/components/field-cascader/src/hooks.d.ts +129 -0
  39. package/es/components/field-cascader/src/hooks.mjs +163 -0
  40. package/es/components/field-tree-select/field-sort-popover.vue.d.ts +129 -0
  41. package/es/components/field-tree-select/field-sort-popover.vue.mjs +7 -0
  42. package/es/components/field-tree-select/field-sort-popover.vue_vue_type_script_setup_true_lang.mjs +206 -0
  43. package/es/components/field-tree-select/field-sort-popover.vue_vue_type_style_index_0_scoped_c1811778_lang.css +136 -0
  44. package/es/components/field-tree-select/field-tree-select.vue.d.ts +119 -0
  45. package/es/components/field-tree-select/field-tree-select.vue.mjs +7 -0
  46. package/es/components/field-tree-select/field-tree-select.vue_vue_type_script_setup_true_lang.mjs +338 -0
  47. package/es/components/field-tree-select/field-tree-select.vue_vue_type_style_index_0_scoped_898030d3_lang.css +147 -0
  48. package/es/components/field-tree-select/index.d.ts +307 -0
  49. package/es/components/field-tree-select/index.mjs +7 -0
  50. package/es/components/icon-next-picker/icon-next-picker.vue_vue_type_script_setup_true_name_IconNextPicker_lang.mjs +1 -1
  51. package/es/components/index.d.ts +5 -1
  52. package/es/components/index.mjs +8 -1
  53. package/es/components/overlay-scrollbars/gct-overlay-scrollbars.css +72 -0
  54. package/es/components/overlay-scrollbars/gct-overlay-scrollbars.d.ts +75 -0
  55. package/es/components/overlay-scrollbars/gct-overlay-scrollbars.mjs +87 -0
  56. package/es/components/serial-number/index.d.ts +2 -0
  57. package/es/components/serial-number/index.mjs +1 -0
  58. package/es/components/serial-number/serial-number-container.vue.d.ts +23 -0
  59. package/es/components/serial-number/serial-number-container.vue.mjs +7 -0
  60. package/es/components/serial-number/serial-number-container.vue_vue_type_script_setup_true_name_serial-number-container_lang.mjs +219 -0
  61. package/es/components/serial-number/serial-number-container.vue_vue_type_style_index_0_scoped_35a73b4c_lang.css +30 -0
  62. package/es/components/serial-number/serial-number-item.vue.d.ts +22 -0
  63. package/es/components/serial-number/serial-number-item.vue.mjs +8 -0
  64. package/es/components/serial-number/serial-number-item.vue_vue_type_script_setup_true_lang.mjs +452 -0
  65. package/es/components/serial-number/serial-number-item.vue_vue_type_style_index_0_scoped_7baf8e25_lang.css +67 -0
  66. package/es/components/serial-number/serial-number-item.vue_vue_type_style_index_1_lang.css +51 -0
  67. package/es/create-app-vue.mjs +5 -3
  68. package/es/index.mjs +17 -1
  69. package/es/modules/color-picker/index.d.ts +2 -2
  70. package/es/modules/color-picker/index.mjs +1 -0
  71. package/es/modules/color-picker/src/ColorPicker.vue.mjs +1 -1
  72. package/es/modules/color-picker/src/color-editor.vue.d.ts +9 -0
  73. package/es/modules/color-picker/src/color-editor.vue.mjs +7 -0
  74. package/es/modules/color-picker/src/color-editor.vue_vue_type_script_setup_true_name_color-editor_lang.mjs +31 -0
  75. package/es/modules/color-picker/src/color-editor.vue_vue_type_style_index_0_scoped_7b102f87_lang.css +5 -0
  76. package/es/modules/gct-form/controller/form-edit-item/form-edit-item.controller.d.ts +0 -1
  77. package/es/modules/gct-form/controller/form-edit-item/form-edit-item.controller.mjs +1 -20
  78. package/es/modules/gct-form/controller/form-item-basic/form-item-basic.controller.d.ts +8 -0
  79. package/es/modules/gct-form/controller/form-item-basic/form-item-basic.controller.mjs +14 -0
  80. package/es/modules/gct-form/controller/gct-form/gct-form.controller.mjs +4 -10
  81. package/es/modules/gct-form/editor/gct-form-action/index.mjs +1 -1
  82. package/es/modules/gct-form/editor/gct-form-check-switch/gct-form-check-switch.css +2 -2
  83. package/es/modules/gct-form/editor/gct-form-color/gct-form-color.d.ts +1 -4
  84. package/es/modules/gct-form/editor/gct-form-color/gct-form-color.mjs +9 -10
  85. package/es/modules/gct-form/editor/gct-form-radio/gct-form-radio.css +25 -22
  86. package/es/modules/gct-form/editor/gct-form-radio/gct-form-radio.mjs +1 -1
  87. package/es/modules/gct-form/editor/gct-form-text/gct-form-text.d.ts +1 -5
  88. package/es/modules/gct-form/editor/gct-form-text/gct-form-text.mjs +18 -23
  89. package/es/modules/gct-form/index.d.ts +2 -0
  90. package/es/modules/gct-form/index.mjs +12 -1
  91. package/es/modules/gct-form/interface/i-controller/form-item-basic/form-item-basic.controller.d.ts +6 -0
  92. package/es/modules/gct-form/interface/i-editor/i-select-editor.d.ts +1 -1
  93. package/es/modules/gct-form/interface/i-form/i-form-edit-item.d.ts +0 -8
  94. package/es/modules/gct-form/interface/i-form/i-form-item-basic.d.ts +8 -0
  95. package/es/modules/gct-form/utils/index.d.ts +18 -0
  96. package/es/modules/gct-form/utils/index.mjs +37 -0
  97. package/es/modules/gct-form/widgets/gct-edit-form/gct-edit-form.mjs +2 -1
  98. package/es/modules/gct-form/widgets/gct-form/gct-form-collapse/gct-form-collapse.model.mjs +25 -0
  99. package/es/modules/gct-form/widgets/gct-form/gct-form-collapse/index.mjs +1 -0
  100. package/es/modules/gct-form/widgets/gct-form/gct-form-collapse-pane/gct-form-collapse-pane.model.mjs +25 -0
  101. package/es/modules/gct-form/widgets/gct-form/gct-form-collapse-pane/index.mjs +1 -0
  102. package/es/modules/gct-form/widgets/gct-form/gct-form-group/gct-form-group.d.ts +1 -6
  103. package/es/modules/gct-form/widgets/gct-form/gct-form-group/gct-form-group.mjs +31 -38
  104. package/es/modules/gct-form/widgets/gct-form/gct-form-group/gct-form-group.model.mjs +25 -0
  105. package/es/modules/gct-form/widgets/gct-form/gct-form-group/index.mjs +1 -0
  106. package/es/modules/gct-form/widgets/gct-form/gct-form-hidden-item/gct-form-hidden-item.model.mjs +21 -0
  107. package/es/modules/gct-form/widgets/gct-form/gct-form-hidden-item/index.mjs +1 -0
  108. package/es/modules/gct-form/widgets/gct-form/gct-form-item/gct-form-item.css +13 -6
  109. package/es/modules/gct-form/widgets/gct-form/gct-form-item/gct-form-item.model.mjs +23 -0
  110. package/es/modules/gct-form/widgets/gct-form/gct-form-item/index.mjs +1 -0
  111. package/es/modules/gct-form/widgets/gct-form/gct-form-line/gct-form-line.model.mjs +20 -0
  112. package/es/modules/gct-form/widgets/gct-form/gct-form-line/index.mjs +1 -0
  113. package/es/modules/gct-form/widgets/gct-form/gct-form-tab/gct-form-tab.model.mjs +16 -0
  114. package/es/modules/gct-form/widgets/gct-form/gct-form-tab/index.mjs +1 -0
  115. package/es/modules/gct-form/widgets/gct-form/gct-form-tab-pane/gct-form-tab-pane.model.mjs +24 -0
  116. package/es/modules/gct-form/widgets/gct-form/gct-form-tab-pane/index.mjs +1 -0
  117. package/es/modules/gct-form/widgets/gct-form/gct-form-title-group/gct-form-title-group.model.mjs +25 -0
  118. package/es/modules/gct-form/widgets/gct-form/gct-form-title-group/index.mjs +1 -0
  119. package/es/modules/gct-form/widgets/gct-form/gct-form.css +1 -3
  120. package/es/modules/gct-form/widgets/gct-form/gct-form.mjs +1 -1
  121. package/es/modules/gct-form/widgets/gct-form/index.d.ts +3 -3
  122. package/es/modules/gct-form/widgets/gct-form/index.mjs +9 -0
  123. package/es/modules/gct-table/editor/gct-table-date/gct-table-date.mjs +1 -1
  124. package/es/modules/gct-table/editor/gct-table-text/gct-table-text.mjs +1 -1
  125. package/es/modules/global-modal/src/BasicModal.vue.d.ts +4 -0
  126. package/es/modules/global-modal/src/BasicModal.vue_vue_type_script_setup_true_name_BasicModal_lang.mjs +1 -0
  127. package/es/modules/global-modal/src/components/ModalWrapper.vue.d.ts +1 -0
  128. package/es/modules/global-modal/src/components/ModalWrapper.vue.mjs +11 -6
  129. package/es/modules/global-modal/src/components/ModalWrapper.vue_vue_type_script_lang.mjs +3 -0
  130. package/es/modules/global-modal/src/components/ModalWrapper.vue_vue_type_style_index_0_lang.css +67 -0
  131. package/es/modules/personnel-selection/components/index.d.ts +3 -0
  132. package/es/modules/personnel-selection/components/personnel-select-tree/personnel-select-tree.d.ts +22 -0
  133. package/es/modules/personnel-selection/components/variable/check-variable/check-variable.d.ts +19 -0
  134. package/es/modules/personnel-selection/components/variable/index.d.ts +3 -0
  135. package/es/modules/personnel-selection/components/variable/list-variable/list-variable.d.ts +19 -0
  136. package/es/modules/personnel-selection/components/variable/tree-select-variable/tree-select-variable.d.ts +19 -0
  137. package/es/modules/personnel-selection/components/variable-select-pane/variable-select-pane.d.ts +21 -0
  138. package/es/modules/personnel-selection/constants/index.d.ts +16 -0
  139. package/es/modules/personnel-selection/controller/index.d.ts +2 -0
  140. package/es/modules/personnel-selection/controller/tab-item/tab-item.controller.d.ts +18 -0
  141. package/es/modules/personnel-selection/controller/variable-item/variable-item.controller.d.ts +17 -0
  142. package/es/modules/personnel-selection/editors/index.d.ts +1 -0
  143. package/es/modules/personnel-selection/editors/personnel-selection-editor/personnel-selection-editor.d.ts +2 -0
  144. package/es/modules/personnel-selection/enums/index.d.ts +31 -0
  145. package/es/modules/personnel-selection/index.d.ts +3 -0
  146. package/es/modules/personnel-selection/interface/controller/index.d.ts +3 -0
  147. package/es/modules/personnel-selection/interface/controller/tab-item/i-tab-item.controller.d.ts +86 -0
  148. package/es/modules/personnel-selection/interface/controller/tab-item/i-variable-tab-item.controller.d.ts +11 -0
  149. package/es/modules/personnel-selection/interface/controller/variable/i-variable-item.controller.d.ts +53 -0
  150. package/es/modules/personnel-selection/interface/data/i-data-node.d.ts +42 -0
  151. package/es/modules/personnel-selection/interface/index.d.ts +6 -0
  152. package/es/modules/personnel-selection/interface/options/index.d.ts +3 -0
  153. package/es/modules/personnel-selection/interface/options/personnel-selection-options/personnel-selection-options.d.ts +45 -0
  154. package/es/modules/personnel-selection/interface/options/select-area-options/select-area-options.d.ts +18 -0
  155. package/es/modules/personnel-selection/interface/options/select-region-options/select-region-options.d.ts +18 -0
  156. package/es/modules/personnel-selection/interface/providers/i-tab-item.provider.d.ts +51 -0
  157. package/es/modules/personnel-selection/interface/providers/i-variable-item.provider.d.ts +51 -0
  158. package/es/modules/personnel-selection/interface/state/i-tab-item.state.d.ts +27 -0
  159. package/es/modules/personnel-selection/interface/state/i-variable-item.state.d.ts +18 -0
  160. package/es/modules/personnel-selection/interface/state/index.d.ts +2 -0
  161. package/es/modules/personnel-selection/interface/store/i-variable-inst-store.d.ts +37 -0
  162. package/es/modules/personnel-selection/interface/store/i-variable-plugin-manage-store.d.ts +44 -0
  163. package/es/modules/personnel-selection/interface/store/i-variable-store.d.ts +29 -0
  164. package/es/modules/personnel-selection/interface/store/i-view-plugin-manage-store.d.ts +44 -0
  165. package/es/modules/personnel-selection/interface/store/i-view-store.d.ts +29 -0
  166. package/es/modules/personnel-selection/interface/store/i-view-tabs-store.d.ts +54 -0
  167. package/es/modules/personnel-selection/interface/store/index.d.ts +11 -0
  168. package/es/modules/personnel-selection/plugins/index.d.ts +23 -0
  169. package/es/modules/personnel-selection/plugins/tab-item/personnel-select-tab-item/personnel-select-tab-item.controller.d.ts +12 -0
  170. package/es/modules/personnel-selection/plugins/tab-item/variable-tab-item/variable-tab-item.controller.d.ts +14 -0
  171. package/es/modules/personnel-selection/plugins/variable-item/check-variable-item/check-variable-item.controller.d.ts +12 -0
  172. package/es/modules/personnel-selection/plugins/variable-item/list-variable-item/list-variable-item.controller.d.ts +12 -0
  173. package/es/modules/personnel-selection/plugins/variable-item/tree-select-variable-item/tree-select-variable-item.controller.d.ts +12 -0
  174. package/es/modules/personnel-selection/props/index.d.ts +75 -0
  175. package/es/modules/personnel-selection/state/index.d.ts +2 -0
  176. package/es/modules/personnel-selection/state/tab-item.state.d.ts +15 -0
  177. package/es/modules/personnel-selection/state/variable-item.state.d.ts +4 -0
  178. package/es/modules/personnel-selection/store/index.d.ts +1 -0
  179. package/es/modules/personnel-selection/store/variable/variable-inst.d.ts +10 -0
  180. package/es/modules/personnel-selection/store/variable/variable-plugin-manage.d.ts +10 -0
  181. package/es/modules/personnel-selection/store/variable/variable-store.d.ts +5 -0
  182. package/es/modules/personnel-selection/store/view/view-plugin-manage.d.ts +10 -0
  183. package/es/modules/personnel-selection/store/view/view-store.d.ts +11 -0
  184. package/es/modules/personnel-selection/store/view/view-tabs.d.ts +10 -0
  185. package/es/modules/personnel-selection/use/index.d.ts +40 -0
  186. package/es/modules/personnel-selection/utils/index.d.ts +1 -0
  187. package/es/modules/personnel-selection/views/index.d.ts +12 -0
  188. package/es/modules/personnel-selection/views/personnel-selection-view/personnel-selection-view.d.ts +181 -0
  189. package/es/modules/personnel-selection/widgets/index.d.ts +2 -0
  190. package/es/modules/personnel-selection/widgets/personnel-select-area/personnel-select-area.d.ts +1 -0
  191. package/es/modules/personnel-selection/widgets/personnel-select-region/personnel-select-region.d.ts +2 -0
  192. package/es/modules/picture-cropper/src/CopperFreeModal.vue.d.ts +2 -2
  193. package/es/modules/picture-cropper/src/CopperFreeModal.vue.mjs +2 -2
  194. package/es/modules/picture-cropper/src/{CopperFreeModal.vue_vue_type_style_index_0_scoped_488ed4c7_lang.css → CopperFreeModal.vue_vue_type_style_index_0_scoped_9069f48a_lang.css} +10 -10
  195. package/es/modules/picture-cropper/src/CopperModal.vue.d.ts +2 -2
  196. package/es/modules/picture-cropper/src/CopperModal.vue.mjs +2 -2
  197. package/es/modules/picture-cropper/src/{CopperModal.vue_vue_type_style_index_0_scoped_ee086999_lang.css → CopperModal.vue_vue_type_style_index_0_scoped_f1134678_lang.css} +14 -14
  198. package/es/modules/picture-cropper/src/CropperAvatar.vue.d.ts +2 -2
  199. package/es/modules/picture-cropper/src/CropperAvatar.vue.mjs +2 -2
  200. package/es/modules/picture-cropper/src/{CropperAvatar.vue_vue_type_style_index_0_scoped_b1cbaaf1_lang.css → CropperAvatar.vue_vue_type_style_index_0_scoped_ef939ff0_lang.css} +7 -7
  201. package/es/modules/picture-cropper/src/CropperFree.vue.d.ts +2 -2
  202. package/es/modules/picture-cropper/src/CropperFree.vue.mjs +2 -2
  203. package/es/modules/picture-cropper/src/{CropperFree.vue_vue_type_style_index_0_scoped_bab12130_lang.css → CropperFree.vue_vue_type_style_index_0_scoped_7a51c6b9_lang.css} +16 -16
  204. package/es/utils/overlay-controller/overlay-controller.d.ts +16 -1
  205. package/es/utils/overlay-controller/overlay-controller.mjs +18 -0
  206. package/es/utils/with-install.d.ts +1 -0
  207. package/es/utils/with-install.mjs +1 -1
  208. package/package.json +13 -9
  209. package/dist/_plugin-vue_export-helper-DySwtVV7.js +0 -1
  210. package/es/components/I18nSelect/src/i18n-select-container.vue_vue_type_style_index_0_scoped_5f75bfb2_lang.css +0 -6
  211. package/es/components/I18nSelect/src/i18n-select-input.vue_vue_type_style_index_0_scoped_b4baf3ec_lang.css +0 -3
  212. /package/es/modules/gct-table/editor/{gct-table-text/gct-table-text.css → gct-table-date/gct-table-date.css} +0 -0
@@ -0,0 +1,160 @@
1
+ import { useLocale } from "../../hooks/useLocale.mjs";
2
+ import "../../hooks/index.mjs";
3
+ import './app-popover-component.css';/* empty css */
4
+ import { createVNode, defineComponent, isVNode, onUnmounted, reactive, ref } from "vue";
5
+ import { isNumber } from "lodash-es";
6
+ import { Modal, OverlayPopoverContainer, useNamespace } from "@gct-paas/core";
7
+ import { ConfigProvider } from "ant-design-vue";
8
+ import { onClickOutside } from "@vueuse/core";
9
+ import { DndProvider } from "vue3-dnd";
10
+ import { HTML5Backend } from "react-dnd-html5-backend";
11
+ import { arrow, autoUpdate, computePosition, flip, offset, shift } from "@floating-ui/dom";
12
+ //#region src/components/app-popover/app-popover-component.tsx
13
+ /**
14
+ * 计算飘窗显示
15
+ *
16
+ * @author chitanda
17
+ * @date 2022-11-08 21:11:18
18
+ * @param {HTMLElement} element
19
+ * @param {HTMLElement} el
20
+ * @param {HTMLElement} arrEl
21
+ * @param {IPopoverOptions<FloatingUIConfig>} opts
22
+ * @return {*} {Promise<void>}
23
+ */
24
+ function _isSlot(s) {
25
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
26
+ }
27
+ async function computePos(element, el, arrEl, opts) {
28
+ const middlewareArr = [
29
+ offset(opts.offsetOpts || 6),
30
+ flip(),
31
+ shift()
32
+ ];
33
+ if (!opts.noArrow) middlewareArr.push(arrow({ element: arrEl }));
34
+ const config = {
35
+ placement: opts.placement,
36
+ strategy: "absolute",
37
+ middleware: middlewareArr
38
+ };
39
+ if (opts.options) Object.assign(config, opts.options);
40
+ const options = await computePosition(element, el, config);
41
+ {
42
+ const { x, y, placement, middlewareData } = options;
43
+ const { style } = el;
44
+ style.left = `${x}px`;
45
+ style.top = `${y}px`;
46
+ if (!opts.noArrow) {
47
+ const { x: arrowX, y: arrowY } = middlewareData.arrow;
48
+ const staticSide = {
49
+ top: "bottom",
50
+ right: "left",
51
+ bottom: "top",
52
+ left: "right"
53
+ }[placement.split("-")[0]];
54
+ Object.assign(arrEl.style, {
55
+ left: arrowX != null ? `${arrowX}px` : "",
56
+ top: arrowY != null ? `${arrowY}px` : "",
57
+ right: "",
58
+ bottom: "",
59
+ [staticSide]: "-4px"
60
+ });
61
+ }
62
+ }
63
+ }
64
+ var AppPopoverComponent = /* @__PURE__ */ defineComponent({
65
+ props: { opts: {
66
+ type: Object,
67
+ default: () => ({})
68
+ } },
69
+ setup(props, ctx) {
70
+ const ns = useNamespace("popover");
71
+ const isShow = ref(false);
72
+ const el = ref();
73
+ const arrEl = ref();
74
+ const customStyle = reactive({});
75
+ const { width, height, maxHeight } = props.opts;
76
+ if (width) if (isNumber(width)) customStyle.width = `${width}px`;
77
+ else customStyle.width = width;
78
+ if (height) if (isNumber(height)) customStyle.height = `${height}px`;
79
+ else customStyle.height = height;
80
+ if (maxHeight) if (isNumber(maxHeight)) customStyle.maxHeight = `${maxHeight}px`;
81
+ else customStyle.maxHeight = maxHeight;
82
+ const modal = new Modal({ dismiss: (data) => {
83
+ ctx.emit("dismiss", data);
84
+ } });
85
+ function dismiss(data) {
86
+ return modal.dismiss(data);
87
+ }
88
+ let cleanUpAutoUpdate = () => {};
89
+ onUnmounted(() => {
90
+ cleanUpAutoUpdate();
91
+ });
92
+ onClickOutside(el, () => {
93
+ dismiss({ ok: false });
94
+ });
95
+ /**
96
+ * 飘窗显示并计算位置
97
+ *
98
+ * @author chitanda
99
+ * @date 2022-11-09 12:11:04
100
+ * @param {HTMLElement} target
101
+ * @return {*} {Promise<void>}
102
+ */
103
+ async function present(target) {
104
+ isShow.value = true;
105
+ const updatePosition = () => {
106
+ return computePos(target, el.value, arrEl.value, props.opts);
107
+ };
108
+ cleanUpAutoUpdate = autoUpdate(target, el.value, updatePosition);
109
+ }
110
+ ctx.expose({
111
+ present,
112
+ dismiss
113
+ });
114
+ const onMaskClick = () => {
115
+ if (props.opts.autoClose === true) dismiss();
116
+ };
117
+ const { getAntdLocale } = useLocale();
118
+ return () => {
119
+ const slot = ctx.slots.default?.();
120
+ if (slot && slot.length > 0 && slot[0].props) slot[0].props.modal = modal;
121
+ const content = createVNode("div", {
122
+ "class": [
123
+ ns.b(),
124
+ ns.is("show", isShow.value),
125
+ props.opts.className
126
+ ],
127
+ "ref": el,
128
+ "style": customStyle,
129
+ "onClick": (e) => {
130
+ e.stopPropagation();
131
+ }
132
+ }, [!props.opts.noArrow && createVNode("div", {
133
+ "class": [ns.e("arrow")],
134
+ "ref": arrEl
135
+ }, null), slot]);
136
+ if (props.opts.autoClose === true) return createVNode("div", {
137
+ "class": [ns.e("overlay")],
138
+ "onClick": () => {
139
+ onMaskClick();
140
+ }
141
+ }, [content]);
142
+ return createVNode(ConfigProvider, { "locale": getAntdLocale.value }, { default: () => [createVNode(DndProvider, { "backend": HTML5Backend }, _isSlot(content) ? content : { default: () => [content] })] });
143
+ };
144
+ }
145
+ });
146
+ /**
147
+ * 创建飘窗
148
+ *
149
+ * @author chitanda
150
+ * @date 2022-12-29 15:12:59
151
+ * @export
152
+ * @param {() => VNode} render
153
+ * @param {IPopoverOptions<FloatingUIConfig>} [opts]
154
+ * @return {*} {OverlayPopoverContainer}
155
+ */
156
+ function createPopover(render, opts) {
157
+ return new OverlayPopoverContainer(AppPopoverComponent, render, opts);
158
+ }
159
+ //#endregion
160
+ export { createPopover };
@@ -1,7 +1,7 @@
1
1
  import _plugin_vue_export_helper_default from "../../_virtual/_plugin-vue_export-helper.mjs";
2
2
  import copy_module_key_vue_vue_type_script_setup_true_name_copy_module_key_lang_default from "./copy-module-key.vue_vue_type_script_setup_true_name_copy-module-key_lang.mjs";
3
- import './copy-module-key.vue_vue_type_style_index_0_scoped_531b3cd2_lang.css';/* empty css */
3
+ import './copy-module-key.vue_vue_type_style_index_0_scoped_66e22862_lang.css';/* empty css */
4
4
  //#region src/components/copy-module-key/copy-module-key.vue
5
- var copy_module_key_default = /* @__PURE__ */ _plugin_vue_export_helper_default(copy_module_key_vue_vue_type_script_setup_true_name_copy_module_key_lang_default, [["__scopeId", "data-v-531b3cd2"]]);
5
+ var copy_module_key_default = /* @__PURE__ */ _plugin_vue_export_helper_default(copy_module_key_vue_vue_type_script_setup_true_name_copy_module_key_lang_default, [["__scopeId", "data-v-66e22862"]]);
6
6
  //#endregion
7
7
  export { copy_module_key_default as default };
@@ -14,6 +14,7 @@ var _hoisted_3 = {
14
14
  class: "copy-wrap"
15
15
  };
16
16
  var copy_module_key_vue_vue_type_script_setup_true_name_copy_module_key_lang_default = /* @__PURE__ */ defineComponent({
17
+ name: "CopyModuleKey",
17
18
  __name: "copy-module-key",
18
19
  props: {
19
20
  moduleKey: {
@@ -1,8 +1,8 @@
1
1
 
2
- .copy-wrap[data-v-531b3cd2] {
2
+ .copy-wrap[data-v-66e22862] {
3
3
  display: inline-block;
4
4
  }
5
- .iconfont.icon-fuzhi[data-v-531b3cd2] {
5
+ .iconfont.icon-fuzhi[data-v-66e22862] {
6
6
  margin-left: 4px;
7
7
  line-height: 0.8;
8
8
  cursor: pointer;
@@ -10,10 +10,10 @@
10
10
  top: 2px;
11
11
  }
12
12
  .copy-wrap-tooltip {
13
- &[data-v-531b3cd2] {
13
+ &[data-v-66e22862] {
14
14
  display: flex;
15
15
  }
16
- .copy-key[data-v-531b3cd2] {
16
+ .copy-key[data-v-66e22862] {
17
17
  display: inline-block;
18
18
  width: 100%;
19
19
  overflow: hidden;
@@ -0,0 +1,2 @@
1
+ import { default as FieldCascader } from './src/FieldCascader.vue';
2
+ export { FieldCascader };
@@ -0,0 +1 @@
1
+ import "./src/FieldCascader.vue.mjs";
@@ -0,0 +1,87 @@
1
+ import { PropType } from 'vue';
2
+ import { comPropsType } from './hooks';
3
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
4
+ fieldMetaList: {
5
+ type: PropType<comPropsType["fieldMetaList"]>;
6
+ default: () => comPropsType["fieldMetaList"];
7
+ };
8
+ filterFieldByFunction: {
9
+ type: FunctionConstructor;
10
+ default: () => boolean;
11
+ };
12
+ maxLevel: {
13
+ type: NumberConstructor;
14
+ default: number;
15
+ };
16
+ value: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ allowClear: {
21
+ type: BooleanConstructor;
22
+ default: boolean;
23
+ };
24
+ valueSeparator: {
25
+ type: StringConstructor;
26
+ default: string;
27
+ };
28
+ searchable: {
29
+ type: BooleanConstructor;
30
+ default: boolean;
31
+ };
32
+ expandToLeft: {
33
+ type: BooleanConstructor;
34
+ default: boolean;
35
+ };
36
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
37
+ FieldClick: (...args: any[]) => void;
38
+ labelChange: (...args: any[]) => void;
39
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
40
+ fieldMetaList: {
41
+ type: PropType<comPropsType["fieldMetaList"]>;
42
+ default: () => comPropsType["fieldMetaList"];
43
+ };
44
+ filterFieldByFunction: {
45
+ type: FunctionConstructor;
46
+ default: () => boolean;
47
+ };
48
+ maxLevel: {
49
+ type: NumberConstructor;
50
+ default: number;
51
+ };
52
+ value: {
53
+ type: StringConstructor;
54
+ default: string;
55
+ };
56
+ allowClear: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
60
+ valueSeparator: {
61
+ type: StringConstructor;
62
+ default: string;
63
+ };
64
+ searchable: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ };
68
+ expandToLeft: {
69
+ type: BooleanConstructor;
70
+ default: boolean;
71
+ };
72
+ }>> & Readonly<{
73
+ onFieldClick?: ((...args: any[]) => any) | undefined;
74
+ onLabelChange?: ((...args: any[]) => any) | undefined;
75
+ }>, {
76
+ fieldMetaList: (import('@gct-paas/api/apaas').FieldMetaDTO & {
77
+ __bindFields: string[];
78
+ })[];
79
+ filterFieldByFunction: Function;
80
+ maxLevel: number;
81
+ value: string;
82
+ allowClear: boolean;
83
+ valueSeparator: string;
84
+ searchable: boolean;
85
+ expandToLeft: boolean;
86
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
87
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import FieldCascader_vue_vue_type_script_setup_true_lang_default from "./FieldCascader.vue_vue_type_script_setup_true_lang.mjs";
2
+ import './FieldCascader.vue_vue_type_style_index_0_lang.css';/* empty css */
3
+ //#region src/components/field-cascader/src/FieldCascader.vue
4
+ var FieldCascader_default = FieldCascader_vue_vue_type_script_setup_true_lang_default;
5
+ //#endregion
6
+ export { FieldCascader_default as default };
@@ -0,0 +1,115 @@
1
+ import { useFieldCascader } from "./hooks.mjs";
2
+ import { createBlock, defineComponent, h, openBlock, ref, resolveComponent, unref } from "vue";
3
+ //#region src/components/field-cascader/src/FieldCascader.vue?vue&type=script&setup=true&lang.ts
4
+ var FieldCascader_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
5
+ __name: "FieldCascader",
6
+ props: {
7
+ fieldMetaList: {
8
+ type: Object,
9
+ default: () => {
10
+ return [];
11
+ }
12
+ },
13
+ filterFieldByFunction: {
14
+ type: Function,
15
+ default: () => true
16
+ },
17
+ maxLevel: {
18
+ type: Number,
19
+ default: 3
20
+ },
21
+ value: {
22
+ type: String,
23
+ default: ""
24
+ },
25
+ allowClear: {
26
+ type: Boolean,
27
+ default: false
28
+ },
29
+ valueSeparator: {
30
+ type: String,
31
+ default: "$"
32
+ },
33
+ searchable: {
34
+ type: Boolean,
35
+ default: true
36
+ },
37
+ expandToLeft: {
38
+ type: Boolean,
39
+ default: false
40
+ }
41
+ },
42
+ emits: ["FieldClick", "labelChange"],
43
+ setup(__props, { emit: __emit }) {
44
+ const emit = __emit;
45
+ const props = __props;
46
+ const { visibleValue, getChildrenOptionsByKey, filterOptions, fieldValues, fieldMapByKey } = useFieldCascader(props, { onFieldClick });
47
+ const lastSelectedIds = ref();
48
+ const loadData = async (selectedOptions) => {
49
+ if (selectedOptions.map((i) => i.value).join(",") === lastSelectedIds.value) return;
50
+ lastSelectedIds.value = selectedOptions.slice(0, -1).map((item) => item.value).join(",");
51
+ const targetOption = selectedOptions.at(-1);
52
+ if (!targetOption.isExpandField) return;
53
+ await getChildrenOptionsByKey(targetOption.__props, selectedOptions.length + 1);
54
+ };
55
+ function dropdownVisibleChange(v) {
56
+ visibleValue.value = v;
57
+ }
58
+ function onFieldClick(row) {
59
+ const value = row?.__bindFields?.join(props.valueSeparator);
60
+ emit("FieldClick", value, row);
61
+ visibleValue.value = false;
62
+ }
63
+ function displayRender({ labels, selectedOptions }) {
64
+ const levelCount = selectedOptions.length;
65
+ let title = selectedOptions.filter((i) => i).map((i, index) => {
66
+ return index === levelCount - 1 ? i.title : i.titleWithRelation;
67
+ }).join(".");
68
+ if (!title && labels.length > 0)
69
+ /**过滤的时候会导致这边查不到 */
70
+ title = labels.map((k) => fieldMapByKey[k]?.name || "").join(".");
71
+ emit("labelChange", title);
72
+ return h("div", {
73
+ class: "ell",
74
+ title,
75
+ onClick: (e) => {
76
+ e.stopPropagation();
77
+ e.preventDefault();
78
+ }
79
+ }, title);
80
+ }
81
+ function change(v) {
82
+ if (v === void 0)
83
+ /**清空逻辑 */
84
+ emit("FieldClick", v, {});
85
+ }
86
+ return (_ctx, _cache) => {
87
+ const _component_a_cascader = resolveComponent("a-cascader");
88
+ return openBlock(), createBlock(_component_a_cascader, {
89
+ placeholder: "请选择",
90
+ options: unref(filterOptions),
91
+ "load-data": loadData,
92
+ "expand-trigger": "hover",
93
+ class: "gct-field-cascader-selector",
94
+ "dropdown-class-name": `gct-field-cascader ${props.expandToLeft ? "cascader-expand-to-left" : ""}`,
95
+ open: unref(visibleValue),
96
+ "allow-clear": __props.allowClear,
97
+ "display-render": displayRender,
98
+ value: unref(fieldValues),
99
+ placement: props.expandToLeft ? "topRight" : void 0,
100
+ onMousedown: _cache[0] || (_cache[0] = (e) => e.preventDefault()),
101
+ onDropdownVisibleChange: dropdownVisibleChange,
102
+ onChange: change
103
+ }, null, 8, [
104
+ "options",
105
+ "dropdown-class-name",
106
+ "open",
107
+ "allow-clear",
108
+ "value",
109
+ "placement"
110
+ ]);
111
+ };
112
+ }
113
+ });
114
+ //#endregion
115
+ export { FieldCascader_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,69 @@
1
+ .gct-field-cascader {
2
+ padding: 0;
3
+ }
4
+ .gct-field-cascader .ant-cascader-menu {
5
+ min-width: 180px;
6
+ max-width: 280px;
7
+ height: 280px;
8
+ margin: 0;
9
+ padding: 0;
10
+ }
11
+ .gct-field-cascader .ant-cascader-menu-item-disabled {
12
+ color: #8b8b8b;
13
+ cursor: default;
14
+ }
15
+ .gct-field-cascader .ant-cascader-menu-item {
16
+ padding: 0;
17
+ color: #1a1d23;
18
+ }
19
+ .gct-field-cascader .ant-cascader-menu-item[aria-checked='true'] .gct-option-label {
20
+ background-color: color-mix(in srgb, var(--ant-primary-color) 8%, transparent);
21
+ color: var(--ant-primary-color);
22
+ }
23
+ .gct-field-cascader .ant-cascader-menu-item:hover {
24
+ background-color: #fff;
25
+ font-weight: normal;
26
+ }
27
+ .gct-field-cascader .ant-cascader-menu-item .ant-cascader-menu-item-content {
28
+ overflow: hidden;
29
+ text-overflow: ellipsis;
30
+ white-space: nowrap;
31
+ }
32
+ .gct-field-cascader .ant-cascader-menu-item .ant-cascader-menu-item-expand-icon {
33
+ display: none;
34
+ }
35
+ .gct-field-cascader .ant-cascader-menu-item .ant-cascader-menu-item-loading-icon {
36
+ display: none;
37
+ }
38
+ .gct-field-cascader .ant-cascader-menu-item .gct-option-label {
39
+ box-sizing: border-box;
40
+ margin: 0 5px;
41
+ padding: 6px;
42
+ border-radius: 4px;
43
+ }
44
+ .gct-field-cascader .ant-cascader-menu-item .gct-option-label .iconfont {
45
+ color: #5a5f6b;
46
+ font-size: 14px;
47
+ }
48
+ .gct-field-cascader .ant-cascader-menu-item .gct-option-title {
49
+ box-sizing: border-box;
50
+ margin: 0 5px;
51
+ padding: 6px;
52
+ color: #8b8b8b;
53
+ }
54
+ .gct-field-cascader .ant-cascader-menu-item-active {
55
+ background-color: #fff;
56
+ font-weight: normal;
57
+ }
58
+ .gct-field-cascader .ant-cascader-menu-item-active .gct-option-label {
59
+ background-color: #f2f5f8;
60
+ }
61
+ .gct-field-cascader .ant-cascader-menu-item-active .gct-option-label .iconfont {
62
+ color: var(--ant-primary-color);
63
+ }
64
+ .cascader-expand-to-left .ant-cascader-menus {
65
+ flex-direction: row-reverse;
66
+ }
67
+ .cascader-expand-to-left .ant-cascader-menus .ant-cascader-menu {
68
+ width: 230px;
69
+ }
@@ -0,0 +1,11 @@
1
+ type __VLS_Props = {
2
+ visibleValue: {
3
+ value: boolean;
4
+ };
5
+ };
6
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
7
+ change: (...args: any[]) => void;
8
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
9
+ onChange?: ((...args: any[]) => any) | undefined;
10
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
11
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.mjs";
2
+ import SearchInput_vue_vue_type_script_setup_true_lang_default from "./SearchInput.vue_vue_type_script_setup_true_lang.mjs";
3
+ import './SearchInput.vue_vue_type_style_index_0_scoped_512c4b38_lang.css';/* empty css */
4
+ //#region src/components/field-cascader/src/SearchInput.vue
5
+ var SearchInput_default = /* @__PURE__ */ _plugin_vue_export_helper_default(SearchInput_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-512c4b38"]]);
6
+ //#endregion
7
+ export { SearchInput_default as default };
@@ -0,0 +1,38 @@
1
+ import { createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, ref, resolveComponent, watch, withCtx, withModifiers } from "vue";
2
+ //#region src/components/field-cascader/src/SearchInput.vue?vue&type=script&setup=true&lang.ts
3
+ var SearchInput_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
4
+ __name: "SearchInput",
5
+ props: { visibleValue: {} },
6
+ emits: ["change"],
7
+ setup(__props, { emit: __emit }) {
8
+ const emit = __emit;
9
+ const props = __props;
10
+ const value = ref();
11
+ function changeValue() {
12
+ emit("change", value.value);
13
+ }
14
+ watch(() => props.visibleValue.value, (val) => {
15
+ if (!val) {
16
+ value.value = void 0;
17
+ emit("change", value.value);
18
+ }
19
+ });
20
+ return (_ctx, _cache) => {
21
+ const _component_a_input = resolveComponent("a-input");
22
+ return openBlock(), createElementBlock("div", {
23
+ class: "gct-field-cascader-search",
24
+ onMousedown: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"]))
25
+ }, [createVNode(_component_a_input, {
26
+ value: value.value,
27
+ "onUpdate:value": _cache[0] || (_cache[0] = ($event) => value.value = $event),
28
+ placeholder: "搜索字段",
29
+ onChange: changeValue
30
+ }, {
31
+ prefix: withCtx(() => [..._cache[2] || (_cache[2] = [createElementVNode("span", { class: "iconfont icon-pad_search text-[#8B8B8B]" }, null, -1)])]),
32
+ _: 1
33
+ }, 8, ["value"])], 32);
34
+ };
35
+ }
36
+ });
37
+ //#endregion
38
+ export { SearchInput_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,9 @@
1
+ [data-v-512c4b38] .ant-input-affix-wrapper {
2
+ padding: 0 11px;
3
+ border: none;
4
+ }
5
+ .gct-field-cascader-search[data-v-512c4b38] {
6
+ box-sizing: border-box;
7
+ padding: 8px 0;
8
+ border-bottom: 1px solid #f2f5f8;
9
+ }