@gct-paas/core-web 0.1.6-dev.6 → 0.1.6-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 (105) hide show
  1. package/dist/ColorPicker-DFKXqgaG.js +1 -0
  2. package/dist/_plugin-vue_export-helper-CGzGcWFX.js +1 -0
  3. package/dist/index.min.css +1 -1
  4. package/dist/loader.esm.min.js +1 -1
  5. package/dist/{monaco-editor-BTqXEIZI.js → monaco-editor-CQJ9TMzD.js} +1 -1
  6. package/dist/{template-1ZQd8Z1w.js → template-CXn8oAg5.js} +1 -1
  7. package/es/components/index.d.ts +1 -0
  8. package/es/components/index.mjs +2 -0
  9. package/es/components/paas-bpmn-log/components/approval-node.vue.mjs +2 -2
  10. package/es/components/paas-bpmn-log/components/approval-node.vue_vue_type_script_setup_true_lang.mjs +1 -2
  11. 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
  12. package/es/components/paas-bpmn-log/paas-bpmn-log.vue.mjs +2 -2
  13. package/es/components/paas-bpmn-log/paas-bpmn-log.vue_vue_type_script_setup_true_lang.mjs +1 -2
  14. 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
  15. package/es/components/select-user-modal/deptUser.vue.d.ts +9 -0
  16. package/es/components/select-user-modal/deptUser.vue.mjs +7 -0
  17. package/es/components/select-user-modal/deptUser.vue_vue_type_script_setup_true_name_deptUser_lang.mjs +296 -0
  18. package/es/components/select-user-modal/deptUser.vue_vue_type_style_index_0_scoped_02dff7bf_lang.css +40 -0
  19. package/es/components/select-user-modal/index.d.ts +2 -0
  20. package/es/components/select-user-modal/index.mjs +1 -0
  21. package/es/components/select-user-modal/range-role.vue.d.ts +9 -0
  22. package/es/components/select-user-modal/range-role.vue.mjs +7 -0
  23. package/es/components/select-user-modal/range-role.vue_vue_type_script_setup_true_name_role_lang.mjs +137 -0
  24. package/es/components/select-user-modal/range-role.vue_vue_type_style_index_0_scoped_1241bcdf_lang.css +34 -0
  25. package/es/components/select-user-modal/select-user-modal.vue.d.ts +12 -0
  26. package/es/components/select-user-modal/select-user-modal.vue.mjs +7 -0
  27. package/es/components/select-user-modal/select-user-modal.vue_vue_type_script_setup_true_name_select-user-modal_lang.mjs +123 -0
  28. package/es/components/select-user-modal/select-user-modal.vue_vue_type_style_index_0_scoped_2c0f184c_lang.css +14 -0
  29. package/es/components/select-user-modal/userGroup.vue.d.ts +9 -0
  30. package/es/components/select-user-modal/userGroup.vue.mjs +7 -0
  31. package/es/components/select-user-modal/userGroup.vue_vue_type_script_setup_true_name_userGroup_lang.mjs +149 -0
  32. package/es/components/select-user-modal/userGroup.vue_vue_type_style_index_0_scoped_47d1cbaa_lang.css +19 -0
  33. package/es/create-app-vue.d.ts +2 -2
  34. package/es/create-app-vue.mjs +3 -3
  35. package/es/index.d.ts +1 -0
  36. package/es/index.mjs +5 -1
  37. package/es/modules/data-rules-container/index.d.ts +3 -0
  38. package/es/modules/data-rules-container/index.mjs +2 -0
  39. package/es/modules/data-rules-container/src/components/header-action.vue.d.ts +10 -0
  40. package/es/modules/data-rules-container/src/components/header-action.vue.mjs +7 -0
  41. package/es/modules/data-rules-container/src/components/header-action.vue_vue_type_script_setup_true_name_header-action_lang.mjs +36 -0
  42. package/es/modules/data-rules-container/src/components/header-action.vue_vue_type_style_index_0_scoped_4e281013_lang.css +32 -0
  43. package/es/modules/data-rules-container/src/components/ndo-select-cmp.vue.d.ts +8 -0
  44. package/es/modules/data-rules-container/src/components/ndo-select-cmp.vue.mjs +5 -0
  45. package/es/modules/data-rules-container/src/components/ndo-select-cmp.vue_vue_type_script_setup_true_lang.mjs +266 -0
  46. package/es/modules/data-rules-container/src/components/perm-action-node.vue.d.ts +22 -0
  47. package/es/modules/data-rules-container/src/components/perm-action-node.vue.mjs +7 -0
  48. 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
  49. package/es/modules/data-rules-container/src/components/perm-action-node.vue_vue_type_style_index_0_scoped_417c660f_lang.css +73 -0
  50. package/es/modules/data-rules-container/src/components/perm-root-node.vue.d.ts +3 -0
  51. package/es/modules/data-rules-container/src/components/perm-root-node.vue.mjs +7 -0
  52. 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
  53. package/es/modules/data-rules-container/src/components/perm-root-node.vue_vue_type_style_index_0_scoped_ca5c9d20_lang.css +74 -0
  54. package/es/modules/data-rules-container/src/components/rdo-select-cmp.vue.d.ts +11 -0
  55. package/es/modules/data-rules-container/src/components/rdo-select-cmp.vue.mjs +5 -0
  56. package/es/modules/data-rules-container/src/components/rdo-select-cmp.vue_vue_type_script_setup_true_lang.mjs +93 -0
  57. package/es/modules/data-rules-container/src/components/request-select-cmp.vue.d.ts +9 -0
  58. package/es/modules/data-rules-container/src/components/request-select-cmp.vue.mjs +5 -0
  59. 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
  60. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue.d.ts +3 -0
  61. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue.mjs +6 -0
  62. 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
  63. package/es/modules/data-rules-container/src/components/request-tree-select-cmp.vue_vue_type_style_index_0_lang.css +21 -0
  64. package/es/modules/data-rules-container/src/components/select-modal-cmp.vue.d.ts +32 -0
  65. package/es/modules/data-rules-container/src/components/select-modal-cmp.vue.mjs +5 -0
  66. 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
  67. package/es/modules/data-rules-container/src/components/select-more.vue.d.ts +8 -0
  68. package/es/modules/data-rules-container/src/components/select-more.vue.mjs +5 -0
  69. package/es/modules/data-rules-container/src/components/select-more.vue_vue_type_script_setup_true_lang.mjs +26 -0
  70. package/es/modules/data-rules-container/src/components/select-userdep-cmp.vue.d.ts +12 -0
  71. package/es/modules/data-rules-container/src/components/select-userdep-cmp.vue.mjs +5 -0
  72. 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
  73. package/es/modules/data-rules-container/src/components/tree-action-node.vue.d.ts +25 -0
  74. package/es/modules/data-rules-container/src/components/tree-action-node.vue.mjs +7 -0
  75. 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
  76. package/es/modules/data-rules-container/src/components/tree-action-node.vue_vue_type_style_index_0_scoped_46368089_lang.css +67 -0
  77. package/es/modules/data-rules-container/src/components/tree-root-node.vue.d.ts +3 -0
  78. package/es/modules/data-rules-container/src/components/tree-root-node.vue.mjs +7 -0
  79. 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
  80. package/es/modules/data-rules-container/src/components/tree-root-node.vue_vue_type_style_index_0_scoped_37e323fb_lang.css +29 -0
  81. package/es/modules/data-rules-container/src/components/tree-select-cmp.vue.d.ts +3 -0
  82. package/es/modules/data-rules-container/src/components/tree-select-cmp.vue.mjs +5 -0
  83. package/es/modules/data-rules-container/src/components/tree-select-cmp.vue_vue_type_script_name_gct-select_setup_true_lang.mjs +89 -0
  84. package/es/modules/data-rules-container/src/constant/config.d.ts +146 -0
  85. package/es/modules/data-rules-container/src/constant/config.mjs +548 -0
  86. package/es/modules/data-rules-container/src/constant/interface.d.ts +85 -0
  87. package/es/modules/data-rules-container/src/constant/interface.mjs +36 -0
  88. package/es/modules/data-rules-container/src/data-rules-container.vue.d.ts +45 -0
  89. package/es/modules/data-rules-container/src/data-rules-container.vue.mjs +6 -0
  90. package/es/modules/data-rules-container/src/data-rules-container.vue_vue_type_script_setup_true_name_data-rules-container_lang.mjs +234 -0
  91. package/es/modules/data-rules-container/src/data-rules-container.vue_vue_type_style_index_0_lang.css +149 -0
  92. package/es/modules/data-rules-container/src/field-role-container.vue.d.ts +14 -0
  93. package/es/modules/data-rules-container/src/field-role-container.vue.mjs +5 -0
  94. package/es/modules/data-rules-container/src/field-role-container.vue_vue_type_script_setup_true_name_field-role-container_lang.mjs +73 -0
  95. package/es/modules/data-rules-container/src/hooks/useDataRulesTree.d.ts +30 -0
  96. package/es/modules/data-rules-container/src/hooks/useDataRulesTree.mjs +317 -0
  97. package/es/modules/data-rules-container/src/hooks/useEmitter.d.ts +10 -0
  98. package/es/modules/data-rules-container/src/hooks/useRdoHooks.d.ts +37 -0
  99. package/es/modules/data-rules-container/src/hooks/useRdoHooks.mjs +144 -0
  100. package/es/modules/data-rules-container/src/hooks/useRole.d.ts +8 -0
  101. package/es/modules/data-rules-container/src/typing.d.ts +40 -0
  102. package/package.json +9 -9
  103. package/dist/ColorPicker-DGQQb8I7.js +0 -1
  104. package/dist/_plugin-vue_export-helper-C9hXqKoS.js +0 -1
  105. package/es/components/paas-bpmn-log/hooks/useObserver.mjs +0 -46
@@ -0,0 +1,544 @@
1
+ import FieldCascader_default from "../../../../components/field-cascader/src/FieldCascader.vue.mjs";
2
+ import "../../../../components/index.mjs";
3
+ import { useDataRulesTree } from "../hooks/useDataRulesTree.mjs";
4
+ import select_userdep_cmp_default from "./select-userdep-cmp.vue.mjs";
5
+ import request_select_cmp_default from "./request-select-cmp.vue.mjs";
6
+ import request_tree_select_cmp_default from "./request-tree-select-cmp.vue.mjs";
7
+ import ndo_select_cmp_default from "./ndo-select-cmp.vue.mjs";
8
+ import rdo_select_cmp_default from "./rdo-select-cmp.vue.mjs";
9
+ import tree_select_cmp_default from "./tree-select-cmp.vue.mjs";
10
+ import select_modal_cmp_default from "./select-modal-cmp.vue.mjs";
11
+ import { ComponentTypeEnum, ValueTypeEnum, getCmpConfig } from "../constant/config.mjs";
12
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, inject, mergeProps, normalizeClass, openBlock, ref, renderList, resolveComponent, resolveDynamicComponent, toDisplayString, unref, watch, withCtx } from "vue";
13
+ import { isEmpty } from "lodash-es";
14
+ import { FIELD_TYPE, SEARCH_SERVICE, t } from "@gct-paas/core";
15
+ import { DatePicker, Input, Select } from "ant-design-vue";
16
+ import dayjs from "dayjs";
17
+ //#region src/modules/data-rules-container/src/components/tree-action-node.vue?vue&type=script&setup=true&name=tree-action-node&lang.ts
18
+ var _hoisted_1 = { class: "tree-action-node" };
19
+ var _hoisted_2 = {
20
+ key: 0,
21
+ class: "ml-4px mr-4px"
22
+ };
23
+ var _hoisted_3 = {
24
+ key: 1,
25
+ style: {
26
+ "flex": "1",
27
+ "min-width": "0",
28
+ "background-color": "#f5f6f7"
29
+ }
30
+ };
31
+ var _hoisted_4 = { class: "tree-action-node__actions" };
32
+ var tree_action_node_vue_vue_type_script_setup_true_name_tree_action_node_lang_default = /* @__PURE__ */ defineComponent({
33
+ __name: "tree-action-node",
34
+ props: {
35
+ data: {},
36
+ fieldList: {},
37
+ selectFiledKeys: {},
38
+ filterType: {},
39
+ readonly: { type: Boolean },
40
+ mainModelKey: {},
41
+ isPageDesigner: { type: Boolean },
42
+ isOnlineFormDesigner: { type: Boolean },
43
+ isAllowClear: { type: Boolean },
44
+ excludeValueType: {},
45
+ excludeOperatorType: {},
46
+ apiConfig: {},
47
+ onlineFormFieldList: {},
48
+ modelName: {},
49
+ cascadeField: { type: Boolean },
50
+ searchType: {}
51
+ },
52
+ setup(__props) {
53
+ const filterFieldKeys = [
54
+ FIELD_TYPE.TEXT,
55
+ FIELD_TYPE.LONG_TEXT,
56
+ FIELD_TYPE.INTEGER,
57
+ FIELD_TYPE.LONG,
58
+ FIELD_TYPE.DOUBLE,
59
+ FIELD_TYPE.DECIMAL,
60
+ FIELD_TYPE.BOOLEAN,
61
+ FIELD_TYPE.DATE,
62
+ FIELD_TYPE.DATE_TIME,
63
+ FIELD_TYPE.TIME,
64
+ FIELD_TYPE.ENUM,
65
+ FIELD_TYPE.ENUM_MULTI,
66
+ FIELD_TYPE.REF,
67
+ FIELD_TYPE.REF_MULTI
68
+ ];
69
+ function filterFieldByFunction(field) {
70
+ return filterFieldKeys.includes(field.type) && (field.createType === "USER_DEFINED" || field.createType === "BUILTIN");
71
+ }
72
+ const isDataFilterEditor = inject("isDataFilterEditor");
73
+ const cmps = {
74
+ [ComponentTypeEnum.INPUT]: Input,
75
+ [ComponentTypeEnum.SELECT]: Select,
76
+ [ComponentTypeEnum.DATEPICKER]: DatePicker,
77
+ [ComponentTypeEnum.CUSTOM]: select_userdep_cmp_default,
78
+ [ComponentTypeEnum.REQUEST_SELECT]: request_select_cmp_default,
79
+ [ComponentTypeEnum.REQUEST_TREE_SELECT]: request_tree_select_cmp_default,
80
+ [ComponentTypeEnum.NDO_SELECT]: ndo_select_cmp_default,
81
+ [ComponentTypeEnum.RDO_SELECT]: rdo_select_cmp_default,
82
+ [ComponentTypeEnum.TREE_SELECT]: tree_select_cmp_default,
83
+ [ComponentTypeEnum.MODAL_SELECT]: select_modal_cmp_default
84
+ };
85
+ const dateFormat = {
86
+ [FIELD_TYPE.DATE]: "YYYY-MM-DD",
87
+ [FIELD_TYPE.DATE_TIME]: "YYYY-MM-DD HH:mm:ss",
88
+ [FIELD_TYPE.TIME]: "HH:mm:ss"
89
+ };
90
+ const props = __props;
91
+ const { addNewRow, deleteRow, updateNodeItem } = useDataRulesTree(props.readonly);
92
+ const configs = ref([]);
93
+ const varOptions = ref([]);
94
+ const fieldOptions = ref([]);
95
+ const isFilterConfig = computed(() => props.filterType === "filterConfig");
96
+ const isBusinessFlow = computed(() => {
97
+ return props.filterType === "businessFlow";
98
+ });
99
+ const isEdhrBuiltPerms = computed(() => props.filterType === "edhrBuiltPerms");
100
+ const treeId = computed(() => props.data.key);
101
+ const fieldType = computed(() => props.data.leftValue?.type);
102
+ const isDate = computed(() => [
103
+ FIELD_TYPE.DATE,
104
+ FIELD_TYPE.DATE_TIME,
105
+ FIELD_TYPE.TIME
106
+ ].includes(fieldType.value));
107
+ console.log("props----------", props);
108
+ const fields = computed(() => {
109
+ if (isEdhrBuiltPerms.value) return props.fieldList?.map((i) => ({
110
+ key: i.key,
111
+ value: i.id,
112
+ label: i.name,
113
+ filedInfo: {
114
+ id: i.id,
115
+ key: i.key,
116
+ name: i.name,
117
+ type: i.type
118
+ }
119
+ }));
120
+ let data;
121
+ if (isBusinessFlow.value) {
122
+ if (!props.data?.leftValue?.nodeKey) props.data.leftValue.nodeKey = props.fieldList?.find((e) => e.defaultValue)?.key;
123
+ const mainModel = props.fieldList?.find((e) => e.fixed);
124
+ data = (mainModel?.children || []).filter((item) => Object.keys(props.searchType).includes(item.type)).map((e) => {
125
+ return {
126
+ ...e,
127
+ id: `${mainModel.id}.${e.id}`
128
+ };
129
+ });
130
+ if (props.data.leftValue.nodeKey !== mainModel.key) {
131
+ const obj = props.fieldList?.find((e) => e.key === props.data?.leftValue?.nodeKey);
132
+ data = (obj?.children || []).filter((item) => Object.keys(props.searchType).includes(item.type)).map((e) => {
133
+ return {
134
+ ...e,
135
+ id: `${obj.id}.${e.id}`
136
+ };
137
+ }).concat(data);
138
+ }
139
+ }
140
+ return (isBusinessFlow.value ? data : props.fieldList)?.filter((field) => ![
141
+ FIELD_TYPE.IMAGE,
142
+ FIELD_TYPE.ATTACHMENT,
143
+ FIELD_TYPE.MASTERSLAVE
144
+ ].includes(field.type)).map((item) => {
145
+ return {
146
+ label: isFilterConfig.value || isBusinessFlow.value ? `${item.modelName}.${item.name}` : item.name,
147
+ value: item.id,
148
+ disabled: false,
149
+ filedInfo: {
150
+ id: item.id,
151
+ key: isBusinessFlow.value ? item.id : item.key,
152
+ name: item.name,
153
+ type: item.type,
154
+ bindInfo: item.bindInfo,
155
+ modelKey: item.modelKey,
156
+ refModelType: item.refModelType,
157
+ nodeKey: isBusinessFlow.value ? props.data?.leftValue?.nodeKey : void 0
158
+ }
159
+ };
160
+ });
161
+ });
162
+ const fieldOpts = computed(() => {
163
+ return fields.value?.filter((i) => i.filedInfo?.type === props.data?.leftValue?.type && i.filedInfo?.key !== props.data?.leftValue?.key);
164
+ });
165
+ const operatorOptions = computed(() => {
166
+ if (isEdhrBuiltPerms.value) return [{
167
+ label: t(`sys.appDesigner.conditionVisible`),
168
+ value: SEARCH_SERVICE.IN
169
+ }, {
170
+ label: t(`sys.appDesigner.conditionInvisible`),
171
+ value: SEARCH_SERVICE.NOTIN
172
+ }];
173
+ if (!fieldType.value) return [];
174
+ const typeMap = props.searchType?.[fieldType.value];
175
+ return ((typeMap?.["filter"] || [])?.concat(...typeMap?.contain?.map((i) => props.searchType?.[i]?.filter || []) || [])?.map((item) => {
176
+ return {
177
+ label: t(`sys.model.${item}`),
178
+ value: item
179
+ };
180
+ }))?.filter((e) => !props.excludeOperatorType?.includes(e.value));
181
+ });
182
+ const value = computed(() => {
183
+ return props.data?.rightValue?.map((item) => {
184
+ if (isDate.value) {
185
+ if (item.result && item.valueType === ValueTypeEnum.FIXED) return dayjs(item.result).format(dateFormat[fieldType.value] || "YYYY-MM-DD");
186
+ }
187
+ return item.result;
188
+ }) || [];
189
+ });
190
+ watch(() => props.mainModelKey, async (val) => {
191
+ if (val) {
192
+ await getFieldOpts(val);
193
+ getConfig({
194
+ operatorType: props.data?.operatorValue,
195
+ valueType: void 0
196
+ });
197
+ } else fieldOptions.value = [];
198
+ }, { immediate: true });
199
+ watch(() => props.data?.leftValue?.modelKey, (val) => {
200
+ if (isBusinessFlow.value && !val) {
201
+ if (!props.data.leftValue) props.data.leftValue = {};
202
+ props.data.leftValue.nodeKey = props.fieldList?.find((e) => e.default)?.key;
203
+ }
204
+ }, { immediate: true });
205
+ async function queryGVar(fullInfo = true) {
206
+ varOptions.value = (await _api.apaas.appGlobalSettings.getList({
207
+ type: "var",
208
+ fullInfo,
209
+ source: _gct.store.context.platform
210
+ }, props.apiConfig) || [])?.map((v) => {
211
+ return {
212
+ value: v.id,
213
+ label: v.key,
214
+ varInfo: v.configJson ? JSON.parse(v.configJson) : null
215
+ };
216
+ }) || [];
217
+ }
218
+ async function getFieldOpts(mainModelKey) {
219
+ const modelKeys = [mainModelKey];
220
+ if (isBusinessFlow.value && props.data?.leftValue?.modelKey) modelKeys.push(props.data.leftValue.modelKey);
221
+ const fnList = modelKeys.map((e) => getModelFields(e));
222
+ fieldOptions.value = (await Promise.all(fnList)).flat();
223
+ }
224
+ async function getModelFields(mainModelKey) {
225
+ return (await _api.apaas.modelMeta.getDetail({ modelKey: mainModelKey }, props.apiConfig) || {}).fieldMetaList?.map((i) => {
226
+ return {
227
+ label: i.name,
228
+ value: i.key
229
+ };
230
+ }) || [];
231
+ }
232
+ function handlePageNo(index, val) {
233
+ const config = configs.value[index];
234
+ const pageNo = config[config?.typeKeys?.[index]]?.attrs?.apiParams?.pageNo;
235
+ if (val) {
236
+ configs.value[index][configs.value[index].typeKeys[index]].attrs.apiParams.pageNo = val;
237
+ return;
238
+ }
239
+ if (pageNo) configs.value[index][configs.value[index].typeKeys[index]].attrs.apiParams.pageNo = pageNo + 1;
240
+ }
241
+ const getConfig = async (opts) => {
242
+ configs.value = getCmpConfig({
243
+ fieldType: fieldType.value,
244
+ operatorType: opts?.operatorType || props.data?.operatorValue,
245
+ modelKey: props.data.leftValue?.modelKey,
246
+ fieldKey: props.data.leftValue?.key,
247
+ bindInfo: props.data.leftValue?.bindInfo,
248
+ refModelType: props.data.leftValue?.refModelType,
249
+ valueType: opts?.valueType || void 0,
250
+ fieldOptions: props.isOnlineFormDesigner ? props.onlineFormFieldList : props.isPageDesigner || isBusinessFlow.value ? fieldOpts.value : fieldOptions.value,
251
+ mainModelKey: props.mainModelKey,
252
+ isPageDesigner: props.isPageDesigner || isBusinessFlow.value,
253
+ isOnlineFormDesigner: props.isOnlineFormDesigner,
254
+ varOptions: varOptions.value
255
+ });
256
+ configs.value.forEach((config, index) => {
257
+ const options = config[config?.typeKeys?.[index]]?.attrs?.options || [];
258
+ options.length && options.forEach((item) => {
259
+ item.label = t(item.label);
260
+ });
261
+ config.valueTypeOptions = config.valueTypeOptions?.filter((e) => !props.excludeValueType?.includes(e.value));
262
+ });
263
+ };
264
+ watch([
265
+ fieldType.value,
266
+ () => props.data.leftValue,
267
+ () => props.data.operatorValue
268
+ ], async () => {
269
+ if (fieldType.value && props.data.leftValue && props.data.operatorValue) {
270
+ const params = {};
271
+ if (isDate.value && props.data?.operatorValue === SEARCH_SERVICE.RANGE && Array.isArray(props.data.rightValue) && props.data.rightValue.length !== 0) {
272
+ const rightValueItem = props.data.rightValue[0];
273
+ if (rightValueItem.valueType === ValueTypeEnum.FIXED) Object.assign(params, { valueType: rightValueItem.valueType });
274
+ }
275
+ if (props.isPageDesigner && !varOptions.value.length) await queryGVar();
276
+ if (props.isPageDesigner && props.data.rightValue?.[0]["valueType"] == "FIELD" && !fieldOpts.value?.length) setTimeout(() => getConfig(params), 200);
277
+ else getConfig(params);
278
+ }
279
+ }, {
280
+ deep: true,
281
+ immediate: true
282
+ });
283
+ const onNodeChange = (value, _option) => {
284
+ props.data.leftValue.nodeKey = value;
285
+ };
286
+ const FieldClick = (value, row) => {
287
+ if (!value) {
288
+ handleLeftChange(value, {});
289
+ return;
290
+ }
291
+ const { key, bindInfo, id, modelKey, name, refModelType, type } = row;
292
+ handleLeftChange(id, { filedInfo: {
293
+ field_search_key: value,
294
+ key,
295
+ bindInfo,
296
+ id,
297
+ modelKey,
298
+ name,
299
+ refModelType,
300
+ type
301
+ } });
302
+ };
303
+ const filterOption = (input, option) => {
304
+ if (option.name) return option.name.includes(input?.trim());
305
+ return option.label?.includes(input?.trim());
306
+ };
307
+ const leftValue = computed(() => {
308
+ if (!(fields.value?.map((i) => i.value))?.includes(props.data.leftValue?.id)) return props.data.leftValue?.name;
309
+ return props.data.leftValue?.id;
310
+ });
311
+ const handleLeftChange = async (value, option) => {
312
+ if (value) {
313
+ updateNodeItem(treeId.value, "leftValue", option.filedInfo);
314
+ configs.value = [];
315
+ } else {
316
+ updateNodeItem(treeId.value, "leftValue", void 0);
317
+ configs.value = [];
318
+ }
319
+ };
320
+ const handleOperatorChange = (value, _option) => {
321
+ getConfig({
322
+ operatorType: value,
323
+ valueType: void 0
324
+ });
325
+ const defaultValues = configs.value.map((item) => item.default);
326
+ updateNodeItem(treeId.value, "operatorValue", value, {
327
+ key: "valueType",
328
+ defaultValues
329
+ });
330
+ };
331
+ const handleValueTypeChange = (value, index) => {
332
+ if (props.data?.operatorValue === SEARCH_SERVICE.RANGE && isDate.value && index === 0) {
333
+ getConfig({
334
+ operatorType: props.data?.operatorValue,
335
+ valueType: value
336
+ });
337
+ const defaultValues = configs.value.map((item) => item.default);
338
+ updateNodeItem(treeId.value, "rightValue", value, {
339
+ index,
340
+ key: "valueType",
341
+ isRest: true,
342
+ defaultValues
343
+ });
344
+ } else updateNodeItem(treeId.value, "rightValue", value, {
345
+ index,
346
+ key: "valueType"
347
+ });
348
+ };
349
+ const handleInputChange = (event, index) => {
350
+ const valueType = props.data?.rightValue?.[index].valueType;
351
+ let value;
352
+ if (isDate.value) if (valueType === ValueTypeEnum.FIXED && !isEmpty(event)) value = dayjs(event).format(dateFormat[fieldType.value]);
353
+ else value = event;
354
+ else value = event?.target ? event.target?.value : event;
355
+ updateNodeItem(treeId.value, "rightValue", value, {
356
+ index,
357
+ key: "result"
358
+ });
359
+ };
360
+ const handleAddRow = () => {
361
+ addNewRow(props.data.pid, treeId.value);
362
+ };
363
+ const handleDeleteRow = () => {
364
+ deleteRow(treeId.value);
365
+ };
366
+ return (_ctx, _cache) => {
367
+ const _component_a_select = resolveComponent("a-select");
368
+ const _component_a_form_item_rest = resolveComponent("a-form-item-rest");
369
+ const _component_a_input = resolveComponent("a-input");
370
+ const _component_a_input_group = resolveComponent("a-input-group");
371
+ const _component_DeleteOutlined = resolveComponent("DeleteOutlined");
372
+ const _component_a_button = resolveComponent("a-button");
373
+ const _component_PlusOutlined = resolveComponent("PlusOutlined");
374
+ return openBlock(), createElementBlock("div", _hoisted_1, [
375
+ createVNode(_component_a_form_item_rest, null, {
376
+ default: withCtx(() => [isBusinessFlow.value ? (openBlock(), createBlock(_component_a_select, {
377
+ key: 0,
378
+ style: {
379
+ "width": "140px",
380
+ "margin-right": "16px"
381
+ },
382
+ placeholder: unref(t)("sys.chooseText"),
383
+ options: __props.fieldList,
384
+ value: __props.data?.leftValue?.nodeKey,
385
+ class: "tree-action-select",
386
+ disabled: __props.readonly,
387
+ "field-names": {
388
+ label: "nodeName",
389
+ value: "key"
390
+ },
391
+ onChange: onNodeChange
392
+ }, null, 8, [
393
+ "placeholder",
394
+ "options",
395
+ "value",
396
+ "disabled"
397
+ ])) : createCommentVNode("", true), __props.modelName && __props.cascadeField ? (openBlock(), createBlock(unref(FieldCascader_default), {
398
+ key: 1,
399
+ "filter-field-by-function": filterFieldByFunction,
400
+ style: {
401
+ "flex": "1",
402
+ "min-width": "0",
403
+ "margin-right": "16px"
404
+ },
405
+ "field-meta-list": __props.fieldList,
406
+ "model-name": __props.modelName,
407
+ value: __props.data?.leftValue?.field_search_key || __props.data?.leftValue?.key,
408
+ onFieldClick: FieldClick
409
+ }, null, 8, [
410
+ "field-meta-list",
411
+ "model-name",
412
+ "value"
413
+ ])) : (openBlock(), createBlock(_component_a_select, {
414
+ key: 2,
415
+ style: {
416
+ "flex": "1",
417
+ "width": "200px",
418
+ "min-width": "0",
419
+ "margin-right": "16px"
420
+ },
421
+ placeholder: isEdhrBuiltPerms.value ? unref(t)("sys.chooseText") : unref(t)("sys.appDesigner.leftValue"),
422
+ options: fields.value,
423
+ value: leftValue.value,
424
+ class: "tree-action-select",
425
+ disabled: __props.readonly,
426
+ "allow-clear": __props.isAllowClear,
427
+ "show-search": "",
428
+ "filter-option": filterOption,
429
+ onChange: handleLeftChange
430
+ }, null, 8, [
431
+ "placeholder",
432
+ "options",
433
+ "value",
434
+ "disabled",
435
+ "allow-clear"
436
+ ]))]),
437
+ _: 1
438
+ }),
439
+ createVNode(_component_a_form_item_rest, null, {
440
+ default: withCtx(() => [createVNode(_component_a_select, {
441
+ class: normalizeClass(__props.readonly ? "tree-action-select" : ""),
442
+ style: {
443
+ "flex": "1",
444
+ "min-width": "0",
445
+ "margin-right": "16px"
446
+ },
447
+ disabled: __props.readonly || !__props.data.leftValue,
448
+ placeholder: isEdhrBuiltPerms.value ? unref(t)("sys.chooseText") : unref(t)("sys.appDesigner.operator"),
449
+ options: operatorOptions.value,
450
+ value: __props.data?.operatorValue,
451
+ onChange: handleOperatorChange
452
+ }, null, 8, [
453
+ "class",
454
+ "disabled",
455
+ "placeholder",
456
+ "options",
457
+ "value"
458
+ ])]),
459
+ _: 1
460
+ }),
461
+ Array.isArray(configs.value) && configs.value.length === 0 ? (openBlock(), createBlock(_component_a_form_item_rest, { key: 0 }, {
462
+ default: withCtx(() => [createVNode(_component_a_input, {
463
+ disabled: true,
464
+ placeholder: isEdhrBuiltPerms.value ? unref(t)("sys.chooseText") : "",
465
+ style: {
466
+ "flex": "1",
467
+ "min-width": "0"
468
+ }
469
+ }, null, 8, ["placeholder"])]),
470
+ _: 1
471
+ })) : createCommentVNode("", true),
472
+ (openBlock(true), createElementBlock(Fragment, null, renderList(configs.value, (config, index) => {
473
+ return openBlock(), createElementBlock(Fragment, { key: index }, [configs.value.length > 1 && index === configs.value.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(unref(t)("sys.webRender.to")), 1)) : createCommentVNode("", true), config.isHide ? (openBlock(), createElementBlock("div", _hoisted_3)) : (openBlock(), createBlock(_component_a_form_item_rest, { key: 2 }, {
474
+ default: withCtx(() => [createVNode(_component_a_input_group, {
475
+ compact: "",
476
+ class: "tree-action-node__flex-value"
477
+ }, {
478
+ default: withCtx(() => [createVNode(_component_a_select, {
479
+ class: normalizeClass([__props.readonly ? "tree-action-select is-unit" : "", "primary-gct"]),
480
+ disabled: __props.readonly,
481
+ style: { "width": "40px" },
482
+ options: config.valueTypeOptions,
483
+ "dropdown-match-select-width": false,
484
+ "option-label-prop": "abbr",
485
+ "show-arrow": false,
486
+ value: __props.data?.rightValue?.[index].valueType,
487
+ onChange: (value) => handleValueTypeChange(value, index)
488
+ }, null, 8, [
489
+ "class",
490
+ "disabled",
491
+ "options",
492
+ "value",
493
+ "onChange"
494
+ ]), (openBlock(), createBlock(resolveDynamicComponent(cmps[config[__props.data?.rightValue?.[index].valueType]?.cmp]), mergeProps({
495
+ class: __props.readonly ? "tree-action-select left-border" : "",
496
+ disabled: __props.readonly,
497
+ style: { "width": "calc(100% - 40px)" },
498
+ placeholder: unref(t)("sys.appDesigner.value"),
499
+ value: value.value[index],
500
+ bordered: ""
501
+ }, { ref_for: true }, config[__props.data?.rightValue?.[index].valueType]?.attrs, {
502
+ "filter-type": __props.filterType,
503
+ onChange: (event) => handleInputChange(event, index),
504
+ "onUpdate:pageNo": (val) => handlePageNo(index, val)
505
+ }), null, 16, [
506
+ "class",
507
+ "disabled",
508
+ "placeholder",
509
+ "value",
510
+ "filter-type",
511
+ "onChange",
512
+ "onUpdate:pageNo"
513
+ ]))]),
514
+ _: 2
515
+ }, 1024)]),
516
+ _: 2
517
+ }, 1024))], 64);
518
+ }), 128)),
519
+ createElementVNode("div", _hoisted_4, [!__props.readonly && (!__props.data.firstRow || !!unref(isDataFilterEditor)) ? (openBlock(), createBlock(_component_a_button, {
520
+ key: 0,
521
+ type: "link",
522
+ style: { "padding": "4px 0" },
523
+ size: "small",
524
+ class: "ml-8px",
525
+ onClick: handleDeleteRow
526
+ }, {
527
+ icon: withCtx(() => [createVNode(_component_DeleteOutlined, { class: "text-16px" })]),
528
+ _: 1
529
+ })) : createCommentVNode("", true), !__props.readonly ? (openBlock(), createBlock(_component_a_button, {
530
+ key: 1,
531
+ type: "link",
532
+ size: "small",
533
+ style: { "padding": "4px 0" },
534
+ onClick: handleAddRow
535
+ }, {
536
+ icon: withCtx(() => [createVNode(_component_PlusOutlined)]),
537
+ _: 1
538
+ })) : createCommentVNode("", true)])
539
+ ]);
540
+ };
541
+ }
542
+ });
543
+ //#endregion
544
+ export { tree_action_node_vue_vue_type_script_setup_true_name_tree_action_node_lang_default as default };
@@ -0,0 +1,67 @@
1
+ .tree-action-node[data-v-46368089] {
2
+ display: flex;
3
+ align-items: center;
4
+ width: 100%;
5
+ min-width: 0;
6
+ }
7
+ .tree-action-node__actions[data-v-46368089] {
8
+ display: flex;
9
+ flex-shrink: 0;
10
+ align-items: center;
11
+ }
12
+ .tree-action-node__flex-value[data-v-46368089] {
13
+ flex: 1 1 0%;
14
+ min-width: 0;
15
+ }
16
+ .tree-action-node__flex-value[data-v-46368089] .ant-select,
17
+ .tree-action-node__flex-value[data-v-46368089] .ant-tree-select {
18
+ max-width: 100%;
19
+ }
20
+ .tree-action-node__flex-value.ant-input-group[data-v-46368089] {
21
+ display: flex;
22
+ align-items: stretch;
23
+ }
24
+ .tree-action-node__flex-value.ant-input-group[data-v-46368089] > *:first-child {
25
+ flex-shrink: 0;
26
+ }
27
+ .tree-action-node__flex-value.ant-input-group[data-v-46368089] > *:last-child {
28
+ flex: 1 1 0%;
29
+ min-width: 0;
30
+ }
31
+ .tree-action-node[data-v-46368089] .ant-select.tree-action-select.ant-select-disabled .ant-select-selector {
32
+ border-color: #fff !important;
33
+ background: #fff;
34
+ color: rgba(0, 0, 0, 0.85);
35
+ cursor: default;
36
+ }
37
+ .tree-action-node[data-v-46368089] .ant-select.tree-action-select.ant-select-disabled.is-unit .ant-select-selector {
38
+ color: #3168ec;
39
+ }
40
+ .tree-action-node[data-v-46368089] .ant-select.tree-action-select.ant-select-disabled.left-border {
41
+ border-left: 1px solid #e8ebf0 !important;
42
+ }
43
+ .tree-action-node[data-v-46368089] .ant-select.tree-action-select.ant-select-disabled .ant-select-arrow {
44
+ display: none;
45
+ }
46
+ .tree-action-node[data-v-46368089] .ant-input.ant-input-disabled.tree-action-select {
47
+ border-left: 1px solid #e8ebf0 !important;
48
+ border-color: #fff !important;
49
+ background: #fff;
50
+ color: rgba(0, 0, 0, 0.85);
51
+ cursor: default;
52
+ }
53
+ .tree-action-node[data-v-46368089] .ant-picker.tree-action-select.ant-picker-disabled {
54
+ border-left: 1px solid #e8ebf0 !important;
55
+ border-color: #fff !important;
56
+ background: #fff;
57
+ cursor: default;
58
+ }
59
+ .tree-action-node[data-v-46368089] .ant-picker.tree-action-select.ant-picker-disabled .ant-picker-input > input {
60
+ border-color: #fff !important;
61
+ background: #fff;
62
+ color: rgba(0, 0, 0, 0.85);
63
+ }
64
+ [data-v-46368089] .anticon {
65
+ color: #797a7d;
66
+ font-size: 16px;
67
+ }
@@ -0,0 +1,3 @@
1
+ import { TreeProps } from '../typing';
2
+ declare const _default: import('vue').DefineComponent<TreeProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<TreeProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
3
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import _plugin_vue_export_helper_default from "../../../../_virtual/_plugin-vue_export-helper.mjs";
2
+ import tree_root_node_vue_vue_type_script_setup_true_name_tree_root_node_lang_default from "./tree-root-node.vue_vue_type_script_setup_true_name_tree-root-node_lang.mjs";
3
+ import './tree-root-node.vue_vue_type_style_index_0_scoped_37e323fb_lang.css';/* empty css */
4
+ //#region src/modules/data-rules-container/src/components/tree-root-node.vue
5
+ var tree_root_node_default = /* @__PURE__ */ _plugin_vue_export_helper_default(tree_root_node_vue_vue_type_script_setup_true_name_tree_root_node_lang_default, [["__scopeId", "data-v-37e323fb"]]);
6
+ //#endregion
7
+ export { tree_root_node_default as default };