@gct-paas/design 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 (192) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/loader.esm.min.js +1 -1
  3. package/es/components/design/design-content/design-content.css +76 -0
  4. package/es/components/design/design-content/design-content.d.ts +190 -0
  5. package/es/components/design/design-content/design-content.mjs +274 -0
  6. package/es/components/design/design-drag-item/design-drag-item.css +179 -0
  7. package/es/components/design/design-drag-item/design-drag-item.d.ts +56 -0
  8. package/es/components/design/design-drag-item/design-drag-item.mjs +237 -0
  9. package/es/components/design/design-drop-container/design-drop-container.css +103 -0
  10. package/es/components/design/design-drop-container/design-drop-container.d.ts +92 -0
  11. package/es/components/design/design-drop-container/design-drop-container.mjs +182 -0
  12. package/es/components/design/design-drop-line/design-drop-line.css +165 -0
  13. package/es/components/design/design-drop-line/design-drop-line.d.ts +73 -0
  14. package/es/components/design/design-drop-line/design-drop-line.mjs +136 -0
  15. package/es/components/design/design-item-actions/design-item-actions.css +97 -0
  16. package/es/components/design/design-item-actions/design-item-actions.d.ts +42 -0
  17. package/es/components/design/design-item-actions/design-item-actions.mjs +147 -0
  18. package/es/components/design/design-item-highlighter/design-item-highlighter.css +70 -0
  19. package/es/components/design/design-item-highlighter/design-item-highlighter.d.ts +168 -0
  20. package/es/components/design/design-item-highlighter/design-item-highlighter.mjs +155 -0
  21. package/es/components/design/design-item-highlighter-container/design-item-highlighter-container.css +85 -0
  22. package/es/components/design/design-item-highlighter-container/design-item-highlighter-container.d.ts +53 -0
  23. package/es/components/design/design-item-highlighter-container/design-item-highlighter-container.mjs +169 -0
  24. package/es/components/design/design-item-hover-title/design-item-hover-title.css +12 -0
  25. package/es/components/design/design-item-hover-title/design-item-hover-title.d.ts +60 -0
  26. package/es/components/design/design-item-hover-title/design-item-hover-title.mjs +60 -0
  27. package/es/components/design/design-item-preview/design-item-preview.css +91 -0
  28. package/es/components/design/design-item-preview/design-item-preview.d.ts +1 -0
  29. package/es/components/design/design-item-preview/design-item-preview.mjs +32 -0
  30. package/es/components/design/design-not-drag-item/design-not-drag-item.css +67 -0
  31. package/es/components/design/design-not-drag-item/design-not-drag-item.d.ts +50 -0
  32. package/es/components/design/design-not-drag-item/design-not-drag-item.mjs +68 -0
  33. package/es/components/design/design-not-found/design-not-found.css +68 -0
  34. package/es/components/design/design-not-found/design-not-found.d.ts +14 -0
  35. package/es/components/design/design-not-found/design-not-found.mjs +19 -0
  36. package/es/components/design/index.d.ts +2 -0
  37. package/es/components/design/index.mjs +2 -0
  38. package/es/components/design-save-tip/design-save-tip.mjs +1 -1
  39. package/es/components/editor/index.mjs +2 -0
  40. package/es/components/editor/length-unit-editor/length-unit-editor.vue.d.ts +13 -0
  41. package/es/components/editor/length-unit-editor/length-unit-editor.vue.mjs +5 -0
  42. package/es/components/editor/length-unit-editor/length-unit-editor.vue_vue_type_script_setup_true_name_length-unit-editor_lang.mjs +47 -0
  43. package/es/components/field-transfer/components/field-transfer-modal.vue.d.ts +5 -1
  44. package/es/components/field-transfer/components/field-transfer-modal.vue.mjs +2 -2
  45. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_script_setup_true_name_field-transfer-modal_lang.mjs +2 -1
  46. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_style_index_0_scoped_711e6992_lang.css +8 -0
  47. package/es/components/field-transfer/index.d.ts +2 -0
  48. package/es/components/field-transfer/index.mjs +1 -0
  49. package/es/components/index.d.ts +5 -2
  50. package/es/components/index.mjs +10 -2
  51. package/es/components/material/index.d.ts +1 -0
  52. package/es/components/material/index.mjs +1 -0
  53. package/es/components/material/material-content/material-content.css +86 -0
  54. package/es/components/material/material-content/material-content.d.ts +1 -0
  55. package/es/components/material/material-content/material-content.mjs +49 -0
  56. package/es/components/material/material-module/material-module.css +104 -0
  57. package/es/components/material/material-module/material-module.d.ts +60 -0
  58. package/es/components/material/material-module/material-module.mjs +67 -0
  59. package/es/components/material/material-module-drag-container/material-module-drag-container.css +69 -0
  60. package/es/components/material/material-module-drag-container/material-module-drag-container.d.ts +56 -0
  61. package/es/components/material/material-module-drag-container/material-module-drag-container.mjs +21 -0
  62. package/es/components/material/material-module-drag-item/material-module-drag-item.css +83 -0
  63. package/es/components/material/material-module-drag-item/material-module-drag-item.d.ts +13 -0
  64. package/es/components/material/material-module-drag-item/material-module-drag-item.mjs +66 -0
  65. package/es/components/material/material-outline-tree/material-outline-tree.css +81 -0
  66. package/es/components/material/material-outline-tree/material-outline-tree.d.ts +13 -0
  67. package/es/components/material/material-outline-tree/material-outline-tree.mjs +67 -0
  68. package/es/components/material/material-tab-pane/material-tab-pane.css +68 -0
  69. package/es/components/material/material-tab-pane/material-tab-pane.d.ts +13 -0
  70. package/es/components/material/material-tab-pane/material-tab-pane.mjs +19 -0
  71. package/es/components/material/material-tabs/material-tabs.css +105 -0
  72. package/es/components/material/material-tabs/material-tabs.d.ts +103 -0
  73. package/es/components/material/material-tabs/material-tabs.mjs +44 -0
  74. package/es/components/modal-name-editor/modal-name-editor.d.ts +1 -11
  75. package/es/components/modal-name-editor/modal-name-editor.mjs +27 -38
  76. package/es/components/multi-field/index.d.ts +2 -0
  77. package/es/components/multi-field/index.mjs +1 -0
  78. package/es/components/multi-field/multi-field-display.vue.d.ts +8 -0
  79. package/es/components/multi-field/multi-field-display.vue.mjs +7 -0
  80. package/es/components/multi-field/multi-field-display.vue_vue_type_script_setup_true_lang.mjs +32 -0
  81. package/es/components/multi-field/multi-field-display.vue_vue_type_style_index_0_scoped_802ade7b_lang.css +4 -0
  82. package/es/components/multi-field/multi-field-item.vue.d.ts +6 -0
  83. package/es/components/multi-field/multi-field-item.vue.mjs +7 -0
  84. package/es/components/multi-field/multi-field-item.vue_vue_type_script_setup_true_lang.mjs +47 -0
  85. package/es/components/multi-field/multi-field-item.vue_vue_type_style_index_0_scoped_881cb08e_lang.css +31 -0
  86. package/es/components/panel/index.d.ts +1 -0
  87. package/es/components/panel/index.mjs +1 -0
  88. package/es/components/panel/panel-content/panel-content.css +189 -0
  89. package/es/components/panel/panel-content/panel-content.d.ts +19 -0
  90. package/es/components/panel/panel-content/panel-content.mjs +48 -0
  91. package/es/components/panel/panel-form/panel-form.css +67 -0
  92. package/es/components/panel/panel-form/panel-form.d.ts +62 -0
  93. package/es/components/panel/panel-form/panel-form.mjs +59 -0
  94. package/es/components/panel/panel-path/panel-path.css +89 -0
  95. package/es/components/panel/panel-path/panel-path.d.ts +35 -0
  96. package/es/components/panel/panel-path/panel-path.mjs +52 -0
  97. package/es/components/user-occupy/user-occupy.vue.mjs +2 -2
  98. package/es/components/user-occupy/user-occupy.vue_vue_type_script_setup_true_lang.mjs +2 -2
  99. package/es/components/user-occupy/{user-occupy.vue_vue_type_style_index_0_scoped_24cb9749_lang.css → user-occupy.vue_vue_type_style_index_0_scoped_9b136922_lang.css} +6 -6
  100. package/es/controller/index.d.ts +1 -0
  101. package/es/controller/index.mjs +1 -0
  102. package/es/controller/view/design-view.controller.d.ts +48 -0
  103. package/es/controller/view/design-view.controller.mjs +150 -0
  104. package/es/create-app-vue.mjs +2 -0
  105. package/es/editor/content-tag-style/content-tag-style.css +164 -0
  106. package/es/editor/content-tag-style/content-tag-style.d.ts +112 -0
  107. package/es/editor/content-tag-style/content-tag-style.mjs +80 -0
  108. package/es/editor/content-tag-style/index.d.ts +8 -0
  109. package/es/editor/content-tag-style/index.mjs +11 -0
  110. package/es/editor/field-info-editor/field-info-editor.css +125 -0
  111. package/es/editor/field-info-editor/field-info-editor.d.ts +111 -0
  112. package/es/editor/field-info-editor/field-info-editor.mjs +38 -0
  113. package/es/editor/field-info-editor/index.d.ts +8 -0
  114. package/es/editor/field-info-editor/index.mjs +9 -0
  115. package/es/editor/index.d.ts +5 -0
  116. package/es/editor/index.mjs +19 -0
  117. package/es/editor/model-field-select/index.d.ts +8 -0
  118. package/es/editor/model-field-select/index.mjs +9 -0
  119. package/es/editor/model-field-select/model-field-select.css +148 -0
  120. package/es/editor/model-field-select/model-field-select.d.ts +42 -0
  121. package/es/editor/model-field-select/model-field-select.mjs +217 -0
  122. package/es/editor/style-border/index.d.ts +4 -0
  123. package/es/editor/style-border/index.mjs +11 -0
  124. package/es/editor/style-border/style-border.d.ts +35 -0
  125. package/es/editor/style-border/style-border.mjs +38 -0
  126. package/es/editor/style-font/index.d.ts +4 -0
  127. package/es/editor/style-font/index.mjs +11 -0
  128. package/es/editor/style-font/style-font.css +86 -0
  129. package/es/editor/style-font/style-font.d.ts +35 -0
  130. package/es/editor/style-font/style-font.mjs +36 -0
  131. package/es/editor/style-position/index.d.ts +4 -0
  132. package/es/editor/style-position/index.mjs +11 -0
  133. package/es/editor/style-position/style-position.d.ts +35 -0
  134. package/es/editor/style-position/style-position.mjs +35 -0
  135. package/es/editor/style-spacing/index.d.ts +4 -0
  136. package/es/editor/style-spacing/index.mjs +11 -0
  137. package/es/editor/style-spacing/style-spacing.d.ts +34 -0
  138. package/es/editor/style-spacing/style-spacing.mjs +60 -0
  139. package/es/hooks/design-view/designer/useDesignSave.mjs +3 -1
  140. package/es/hooks/index.d.ts +2 -1
  141. package/es/hooks/index.mjs +3 -2
  142. package/es/hooks/use-design-view-controller/use-design-view-controller.d.ts +11 -0
  143. package/es/hooks/use-design-view-controller/use-design-view-controller.mjs +31 -0
  144. package/es/index.d.ts +5 -2
  145. package/es/index.mjs +23 -8
  146. package/es/interface/controller/i-design-view.controller.d.ts +3 -5
  147. package/es/interface/form-editor/child-list-editor/child-list-editor.d.ts +114 -0
  148. package/es/interface/form-editor/index.d.ts +9 -0
  149. package/es/interface/form-editor/style-border/i-style-border.controller.d.ts +11 -0
  150. package/es/interface/form-editor/style-border/i-style-border.d.ts +22 -0
  151. package/es/interface/form-editor/style-font/i-style-font.controller.d.ts +11 -0
  152. package/es/interface/form-editor/style-font/i-style-font.d.ts +13 -0
  153. package/es/interface/form-editor/style-position/i-style-position.controller.d.ts +11 -0
  154. package/es/interface/form-editor/style-position/i-style-position.d.ts +13 -0
  155. package/es/interface/form-editor/style-spacing/i-style-spacing.controller.d.ts +11 -0
  156. package/es/interface/form-editor/style-spacing/i-style-spacing.d.ts +22 -0
  157. package/es/interface/index.d.ts +2 -0
  158. package/es/interface/provider/i-node-provider.d.ts +140 -0
  159. package/es/provider/design-editor-node/design-editor-node.provider.d.ts +41 -0
  160. package/es/provider/design-editor-node/design-editor-node.provider.mjs +57 -0
  161. package/es/provider/index.d.ts +2 -0
  162. package/es/provider/index.mjs +2 -0
  163. package/es/provider/node-base/node-base.provider.d.ts +25 -0
  164. package/es/provider/node-base/node-base.provider.mjs +34 -0
  165. package/es/register/index.d.ts +1 -0
  166. package/es/register/index.mjs +1 -0
  167. package/es/register/node/node.register.d.ts +113 -0
  168. package/es/register/node/node.register.mjs +141 -0
  169. package/es/store/index.d.ts +1 -0
  170. package/es/store/index.mjs +1 -0
  171. package/es/store/view/design-view.store.d.ts +12 -0
  172. package/es/store/view/design-view.store.mjs +327 -0
  173. package/es/utils/can-drop/can-drop.d.ts +12 -0
  174. package/es/utils/can-drop/can-drop.mjs +48 -0
  175. package/es/utils/design-plugin-pkg-util/design-plugin-pkg-util.d.ts +1 -1
  176. package/es/utils/design-plugin-pkg-util/design-plugin-pkg-util.mjs +29 -1
  177. package/es/utils/index.d.ts +1 -0
  178. package/es/utils/index.mjs +1 -0
  179. package/package.json +12 -11
  180. package/es/components/field-cascader/index.d.ts +0 -2
  181. package/es/components/field-cascader/index.mjs +0 -1
  182. package/es/components/field-cascader/src/FieldCascader.vue.d.ts +0 -87
  183. package/es/components/field-cascader/src/FieldCascader.vue.mjs +0 -6
  184. package/es/components/field-cascader/src/FieldCascader.vue_vue_type_script_setup_true_lang.mjs +0 -115
  185. package/es/components/field-cascader/src/FieldCascader.vue_vue_type_style_index_0_lang.css +0 -69
  186. package/es/components/field-cascader/src/SearchInput.vue.d.ts +0 -11
  187. package/es/components/field-cascader/src/SearchInput.vue.mjs +0 -7
  188. package/es/components/field-cascader/src/SearchInput.vue_vue_type_script_setup_true_lang.mjs +0 -38
  189. package/es/components/field-cascader/src/SearchInput.vue_vue_type_style_index_0_scoped_512c4b38_lang.css +0 -9
  190. package/es/components/field-cascader/src/hooks.d.ts +0 -129
  191. package/es/components/field-cascader/src/hooks.mjs +0 -163
  192. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_style_index_0_scoped_0c9dd8a1_lang.css +0 -5
@@ -1,115 +0,0 @@
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 };
@@ -1,69 +0,0 @@
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
- }
@@ -1,11 +0,0 @@
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;
@@ -1,7 +0,0 @@
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 };
@@ -1,38 +0,0 @@
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 };
@@ -1,9 +0,0 @@
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
- }
@@ -1,129 +0,0 @@
1
- import { FieldMetaDTO } from '@gct-paas/api/apaas';
2
- export declare function useFieldCascader(props: comPropsType, { onFieldClick }: IObject): {
3
- visibleValue: import('vue').Ref<boolean, boolean>;
4
- filterOptions: import('vue').ComputedRef<{
5
- children: any;
6
- value: string;
7
- label?: any;
8
- disabled?: boolean | undefined;
9
- isLeaf?: boolean | undefined;
10
- __props: {
11
- backendOnly?: number | undefined;
12
- bindFieldKey?: string | undefined;
13
- bindInfo?: string | undefined;
14
- createTime?: string | undefined;
15
- createType?: string | undefined;
16
- createUserId?: string | undefined;
17
- createUserName?: string | undefined;
18
- defaultValue?: {
19
- name?: string | undefined;
20
- type?: string | undefined;
21
- value?: IObject | undefined;
22
- } | undefined;
23
- defaultValueTips?: string[] | undefined;
24
- description?: string | undefined;
25
- draft?: number | undefined;
26
- expression?: string | undefined;
27
- fieldCategory?: string | undefined;
28
- functionName?: string | undefined;
29
- i18nConfig?: string | undefined;
30
- id?: string | undefined;
31
- initCommitId?: string | undefined;
32
- key?: string | undefined;
33
- mappingType?: string | undefined;
34
- modelCategory?: string | undefined;
35
- modelKey?: string | undefined;
36
- modelMeta?: {
37
- constraint?: {
38
- convertFromFieldUniqueConstraint?: boolean | undefined;
39
- fieldKeys?: string[] | undefined;
40
- fieldNames?: string[] | undefined;
41
- type?: string | undefined;
42
- }[] | undefined;
43
- createTime?: string | undefined;
44
- createUserId?: string | undefined;
45
- createUserName?: string | undefined;
46
- deletePolicy?: number | undefined;
47
- deleted?: number | undefined;
48
- description?: string | undefined;
49
- displayField?: string | undefined;
50
- hidden?: boolean | undefined;
51
- id?: string | undefined;
52
- initCommitId?: string | undefined;
53
- key?: string | undefined;
54
- maxSubLevel?: number | undefined;
55
- modifyTime?: string | undefined;
56
- modifyUserId?: string | undefined;
57
- modifyUserName?: string | undefined;
58
- name?: string | undefined;
59
- order?: number | undefined;
60
- permissionEnabled?: number | undefined;
61
- recycled?: number | undefined;
62
- refModelKey?: string | undefined;
63
- source?: string | undefined;
64
- specificConfig?: IObject | undefined;
65
- subModel?: number | undefined;
66
- supportMessage?: number | undefined;
67
- supportProcess?: number | undefined;
68
- supportStateMachine?: number | undefined;
69
- sysBuiltin?: number | undefined;
70
- type?: string | undefined;
71
- } | undefined;
72
- modelName?: string | undefined;
73
- modelType?: string | undefined;
74
- modifyTime?: string | undefined;
75
- modifyUserId?: string | undefined;
76
- modifyUserName?: string | undefined;
77
- name?: string | undefined;
78
- originFieldKey?: string | undefined;
79
- originModelKey?: string | undefined;
80
- parentField?: number | undefined;
81
- rdoUniqueFieldKey?: boolean | undefined;
82
- refModelSource?: string | undefined;
83
- refModelType?: string | undefined;
84
- relationModelName?: string | undefined;
85
- required?: number | undefined;
86
- sortNum?: number | undefined;
87
- source?: string | undefined;
88
- specificConfig?: IObject | undefined;
89
- sysBuiltin?: number | undefined;
90
- type?: string | undefined;
91
- uniqueConstraint?: {
92
- checkStrategy?: string | undefined;
93
- fieldKeys?: string[] | undefined;
94
- type?: string | undefined;
95
- } | undefined;
96
- __bindFields: string[];
97
- };
98
- __id?: string | undefined;
99
- }[]>;
100
- getChildrenOptionsByKey: ({ bindInfo, relationModelName, id, __bindFields, key, name, }: LocalFieldMetaDTO, level: number) => Promise<Option[] | undefined>;
101
- fieldValues: import('vue').ComputedRef<string[]>;
102
- fieldMapByKey: Record<string, {
103
- name: string;
104
- }>;
105
- };
106
- type LocalFieldMetaDTO = FieldMetaDTO & {
107
- __bindFields: string[];
108
- };
109
- export interface Option {
110
- value: string;
111
- label?: any;
112
- disabled?: boolean;
113
- children?: Option[];
114
- isLeaf?: boolean;
115
- __props: LocalFieldMetaDTO;
116
- __id?: string;
117
- [key: string]: any;
118
- }
119
- export interface comPropsType {
120
- fieldMetaList: LocalFieldMetaDTO[];
121
- modelName: string;
122
- maxLevel: number;
123
- value: string;
124
- valueSeparator?: string;
125
- searchable?: boolean;
126
- /**过滤函数 */
127
- filterFieldByFunction?: (w: LocalFieldMetaDTO) => boolean;
128
- }
129
- export {};
@@ -1,163 +0,0 @@
1
- import SearchInput_default from "./SearchInput.vue.mjs";
2
- import { FIELD_TYPE } from "@gct-paas/core";
3
- import { computed, createTextVNode, createVNode, h, onMounted, reactive, ref } from "vue";
4
- //#region src/components/field-cascader/src/hooks.tsx
5
- function useFieldCascader(props, { onFieldClick }) {
6
- const { fieldMetaList, modelName, maxLevel, filterFieldByFunction = () => true } = props;
7
- const optionsMapByModalKey = ref({});
8
- const fieldMapByKey = reactive({});
9
- /**根节点第一个查询 */
10
- const keyword = ref();
11
- const options = ref([]);
12
- const fieldValues = computed(() => {
13
- return props.value ? props.value.split(props.valueSeparator || "$") : [];
14
- });
15
- const visibleValue = ref(false);
16
- const filterOptions = computed(() => {
17
- return options.value.filter((i) => !i.title || !keyword.value || i.title.includes(keyword.value || "")).map((i) => {
18
- const children = i.isExpandField ? recursionTreeFilterByKeyword(i, 2, optionsMapByModalKey.value) : [];
19
- return {
20
- ...i,
21
- children
22
- };
23
- });
24
- });
25
- /**初始化自动展开 */
26
- async function autoExpand() {
27
- const fields = [...fieldValues.value];
28
- let nodeOptions = [...options.value];
29
- let level = 1;
30
- while (fields.length > 1) {
31
- const filedKey = fields.shift();
32
- const fieldItem = nodeOptions.find((i) => i.value === filedKey);
33
- if (!fieldItem) return;
34
- level += 1;
35
- nodeOptions = await getChildrenOptionsByKey(fieldItem.__props, level) || [];
36
- }
37
- }
38
- onMounted(() => {
39
- /**添加第一列 */
40
- options.value = createOptionsByModel({
41
- fields: fieldMetaList,
42
- title: modelName,
43
- search: (val) => {
44
- keyword.value = val;
45
- },
46
- onFieldClick,
47
- level: 1,
48
- __bindFields: []
49
- });
50
- autoExpand();
51
- });
52
- /**根据模型key 获取子节点信息 */
53
- async function getChildrenOptionsByKey({ bindInfo, relationModelName, id, __bindFields, key, name }, level) {
54
- fieldMapByKey[key] = { name };
55
- /**级联字段唯一标识 */
56
- const fieldKey = id + level;
57
- if (optionsMapByModalKey.value[fieldKey]) {
58
- optionsMapByModalKey.value[fieldKey].keyword = "";
59
- return;
60
- }
61
- const res = await _api.apaas.modelMeta.getDetail({ modelKey: bindInfo });
62
- optionsMapByModalKey.value[fieldKey] = {
63
- keyword: "",
64
- option: []
65
- };
66
- optionsMapByModalKey.value[fieldKey].option = createOptionsByModel({
67
- fields: res.fieldMetaList,
68
- title: relationModelName,
69
- search: (val) => {
70
- optionsMapByModalKey.value[fieldKey].keyword = val;
71
- },
72
- onFieldClick,
73
- level,
74
- __bindFields
75
- });
76
- return optionsMapByModalKey.value[fieldKey].option;
77
- }
78
- function createSearchInput(onChange, level) {
79
- return {
80
- value: level,
81
- label: h(SearchInput_default, {
82
- visibleValue,
83
- onChange
84
- }),
85
- isLeaf: false,
86
- __props: {},
87
- isExpandField: false
88
- };
89
- }
90
- /**
91
- * 根据模型名称获取模型下拉数据
92
- */
93
- function createOptionsByModel({ fields, title, search, level, onFieldClick, __bindFields }) {
94
- const options = [props.searchable ? createSearchInput(search, level) : null, createTitleItem(title)].filter(Boolean);
95
- fields.filter(filterFieldByFunction).forEach((row) => {
96
- options.push(createOptionItem(row, {
97
- level,
98
- onClick() {
99
- onFieldClick(row, level);
100
- },
101
- __bindFields
102
- }));
103
- });
104
- return options;
105
- }
106
- function createOptionItem(row, { level, onClick, __bindFields }) {
107
- const isExpandField = level < maxLevel && isExpandFieldArg.includes(row.type);
108
- row.__bindFields = [...__bindFields, row.key];
109
- const titleWithRelation = isExpandField ? `${row.name}(${row.relationModelName})` : row.name;
110
- const labels = row.name;
111
- return {
112
- value: row.key,
113
- label: getFileldLabel(labels, isExpandField, onClick),
114
- title: labels,
115
- titleWithRelation,
116
- isLeaf: false,
117
- isExpandField,
118
- children: [],
119
- __props: row,
120
- __level: level,
121
- __id: row.id
122
- };
123
- }
124
- /**根距关键字递归过滤tree */
125
- function recursionTreeFilterByKeyword(row, level, optionKey) {
126
- const { option = [], keyword = "" } = optionKey[row.__id + level] || {};
127
- return option.filter((i) => !i.title || !keyword || i.title.includes(keyword)).map((i) => {
128
- return {
129
- ...i,
130
- children: i.isExpandField ? recursionTreeFilterByKeyword(i, level + 1, optionKey) : []
131
- };
132
- });
133
- }
134
- return {
135
- visibleValue,
136
- filterOptions,
137
- getChildrenOptionsByKey,
138
- fieldValues,
139
- fieldMapByKey
140
- };
141
- }
142
- function createTitleItem(title) {
143
- return {
144
- value: title,
145
- label: h("div", { class: "gct-option-title ell" }, title),
146
- isLeaf: false,
147
- __props: {},
148
- isExpandField: false
149
- };
150
- }
151
- var getFileldLabel = (labels, isExpandField, onClick) => {
152
- return createVNode("div", {
153
- "class": "ell gct-option-label ks-row",
154
- "onClick": onClick
155
- }, [createVNode("div", { "class": "ks-col ell" }, [createTextVNode(" "), labels]), isExpandField ? createVNode("span", { "class": "iconfont icon-pad_arrow_right" }, null) : null]);
156
- };
157
- var isExpandFieldArg = [
158
- FIELD_TYPE.RDO_REF,
159
- FIELD_TYPE.REF,
160
- FIELD_TYPE.REF_MULTI
161
- ];
162
- //#endregion
163
- export { useFieldCascader };
@@ -1,5 +0,0 @@
1
- .field-transfer-container[data-v-0c9dd8a1] {
2
- position: relative;
3
- width: 100%;
4
- height: 100%;
5
- }