hy-dispatch-ui-v3 0.2.65 → 0.2.67

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 (144) hide show
  1. package/dist/tailwind.css +51 -13
  2. package/es/api/organization.mjs +43 -0
  3. package/es/bussiness/hyAcquisitionStationTree/acquisitionStationTree.vue.mjs +245 -0
  4. package/es/bussiness/hyAcquisitionStationTree/index.mjs +7 -0
  5. package/es/bussiness/hyAcquisitionStationTree/js/index.mjs +124 -0
  6. package/es/bussiness/hyAcquisitionStationTree/style/acquisitionStationTree.scss +0 -0
  7. package/es/bussiness/hyDeviceTree/deviceTree.vue.mjs +249 -0
  8. package/es/bussiness/hyDeviceTree/index.mjs +7 -0
  9. package/es/bussiness/hyDeviceTree/js/index.mjs +126 -0
  10. package/es/bussiness/hyDeviceTree/style/deviceTree.scss +0 -0
  11. package/es/bussiness/hyOrgGroupTree/index.mjs +7 -0
  12. package/es/bussiness/hyOrgGroupTree/js/index.mjs +124 -0
  13. package/es/bussiness/hyOrgGroupTree/orgGroupTree.vue.mjs +245 -0
  14. package/es/bussiness/hyOrgGroupTree/style/orgGroupTree.scss +0 -0
  15. package/es/bussiness/hyPlanGroupDeviceTree/index.mjs +7 -0
  16. package/es/bussiness/hyPlanGroupDeviceTree/js/index.mjs +124 -0
  17. package/es/bussiness/hyPlanGroupDeviceTree/planGroupDeviceTree.vue.mjs +245 -0
  18. package/es/bussiness/hyPlanGroupDeviceTree/style/planGroupDeviceTree.scss +0 -0
  19. package/es/bussiness/hyUserTree/index.mjs +7 -0
  20. package/es/bussiness/hyUserTree/js/index.mjs +126 -0
  21. package/es/bussiness/hyUserTree/style/userTree.scss +0 -0
  22. package/es/bussiness/hyUserTree/userTree.vue.mjs +239 -0
  23. package/es/bussiness/index.mjs +5 -0
  24. package/es/components/hyBatchUploadDialog/batchUploadDialog.vue.mjs +183 -149
  25. package/es/components/hyButton/button.vue.mjs +19 -5
  26. package/es/components/hyButton/style/button.scss +72 -0
  27. package/es/components/hyConfirmDialog/confirmDialog.vue.mjs +1 -2
  28. package/es/components/hyForm/cpns/formItem.vue.mjs +254 -32
  29. package/es/components/hyForm/cpns/locationSelect.vue.mjs +8 -1
  30. package/es/components/hyForm/form.vue.mjs +88 -19
  31. package/es/components/hyForm/js/index.mjs +2 -1
  32. package/es/components/hyForm/js/useAppForm.mjs +3 -3
  33. package/es/components/hyIcon/style/icon.scss +1 -0
  34. package/es/components/hyMap/js/index.mjs +6 -6
  35. package/es/components/hyMap/map.vue.mjs +14 -4
  36. package/es/components/hyNoPermissions/noPermissions.vue.mjs +1 -1
  37. package/es/components/hyNoPermissionsMap/noPermissionsMap.vue.mjs +1 -1
  38. package/es/components/hyOrgCascader/orgCascader.vue.mjs +75 -15
  39. package/es/components/hyRadioGroup/radioGroup.vue.mjs +5 -4
  40. package/es/components/hySearch/cpns/searchItem.vue.mjs +434 -206
  41. package/es/components/hySearch/js/index.mjs +2 -1
  42. package/es/components/hySearch/search.vue.mjs +71 -10
  43. package/es/components/hySearch/style/search.scss +7 -0
  44. package/es/components/hyTable/cpns/columnSelect.vue.mjs +21 -22
  45. package/es/components/hyTable/cpns/virtualTable.vue.mjs +35 -21
  46. package/es/components/hyTable/js/index.mjs +16 -17
  47. package/es/components/hyTable/js/search.mjs +28 -2
  48. package/es/components/hyTable/style/table.scss +13 -0
  49. package/es/components/hyTable/table.vue.mjs +55 -22
  50. package/es/components/hyTableActionButton/tableActionButton.vue.mjs +17 -12
  51. package/es/components/hyTableForm/batchTableForm.vue.mjs +36 -5
  52. package/es/components/hyTableForm/js/useAppTableForm.mjs +1 -1
  53. package/es/components/hyTableForm/tableForm.vue.mjs +84 -32
  54. package/es/components/hyTour/index.mjs +7 -0
  55. package/es/components/hyTour/style/tour.scss +0 -0
  56. package/es/components/hyTour/tour.vue.mjs +23 -0
  57. package/es/components/hyTree/config/tree-config.mjs +5 -2
  58. package/es/components/hyTree/js/index.mjs +128 -56
  59. package/es/components/hyTree/tree.vue.mjs +22 -37
  60. package/es/components/index.mjs +1 -0
  61. package/es/index.mjs +6 -0
  62. package/es/static/hy-svg-icons/hy-icon-ops-linear-arrow.js +10 -0
  63. package/es/style/element/hy-element.scss +24 -3
  64. package/es/style/index.scss +0 -1
  65. package/es/style/tailwind.scss +0 -1
  66. package/es/style/theme.scss +1 -0
  67. package/es/utils/is.mjs +3 -1
  68. package/es/utils/map/hook/bigMap.mjs +11 -1
  69. package/es/utils/map/hook/gaode.mjs +60 -17
  70. package/es/utils/map/hook/leafletjs.mjs +25 -4
  71. package/es/utils/map/index.mjs +1 -1
  72. package/es/version.mjs +1 -1
  73. package/lib/api/organization.js +47 -0
  74. package/lib/bussiness/hyAcquisitionStationTree/acquisitionStationTree.vue.js +249 -0
  75. package/lib/bussiness/hyAcquisitionStationTree/index.js +12 -0
  76. package/lib/bussiness/hyAcquisitionStationTree/js/index.js +126 -0
  77. package/lib/bussiness/hyAcquisitionStationTree/style/acquisitionStationTree.scss +0 -0
  78. package/lib/bussiness/hyDeviceTree/deviceTree.vue.js +253 -0
  79. package/lib/bussiness/hyDeviceTree/index.js +12 -0
  80. package/lib/bussiness/hyDeviceTree/js/index.js +128 -0
  81. package/lib/bussiness/hyDeviceTree/style/deviceTree.scss +0 -0
  82. package/lib/bussiness/hyOrgGroupTree/index.js +12 -0
  83. package/lib/bussiness/hyOrgGroupTree/js/index.js +126 -0
  84. package/lib/bussiness/hyOrgGroupTree/orgGroupTree.vue.js +249 -0
  85. package/lib/bussiness/hyOrgGroupTree/style/orgGroupTree.scss +0 -0
  86. package/lib/bussiness/hyPlanGroupDeviceTree/index.js +12 -0
  87. package/lib/bussiness/hyPlanGroupDeviceTree/js/index.js +126 -0
  88. package/lib/bussiness/hyPlanGroupDeviceTree/planGroupDeviceTree.vue.js +249 -0
  89. package/lib/bussiness/hyPlanGroupDeviceTree/style/planGroupDeviceTree.scss +0 -0
  90. package/lib/bussiness/hyUserTree/index.js +12 -0
  91. package/lib/bussiness/hyUserTree/js/index.js +128 -0
  92. package/lib/bussiness/hyUserTree/style/userTree.scss +0 -0
  93. package/lib/bussiness/hyUserTree/userTree.vue.js +243 -0
  94. package/lib/bussiness/index.js +14 -4
  95. package/lib/components/hyBatchUploadDialog/batchUploadDialog.vue.js +182 -148
  96. package/lib/components/hyButton/button.vue.js +18 -4
  97. package/lib/components/hyButton/style/button.scss +72 -0
  98. package/lib/components/hyConfirmDialog/confirmDialog.vue.js +0 -1
  99. package/lib/components/hyForm/cpns/formItem.vue.js +250 -28
  100. package/lib/components/hyForm/cpns/locationSelect.vue.js +8 -1
  101. package/lib/components/hyForm/form.vue.js +86 -17
  102. package/lib/components/hyForm/js/index.js +2 -0
  103. package/lib/components/hyForm/js/useAppForm.js +3 -3
  104. package/lib/components/hyIcon/style/icon.scss +1 -0
  105. package/lib/components/hyMap/js/index.js +5 -5
  106. package/lib/components/hyMap/map.vue.js +13 -3
  107. package/lib/components/hyNoPermissions/noPermissions.vue.js +1 -1
  108. package/lib/components/hyNoPermissionsMap/noPermissionsMap.vue.js +1 -1
  109. package/lib/components/hyOrgCascader/orgCascader.vue.js +73 -13
  110. package/lib/components/hyRadioGroup/radioGroup.vue.js +5 -4
  111. package/lib/components/hySearch/cpns/searchItem.vue.js +431 -203
  112. package/lib/components/hySearch/js/index.js +2 -0
  113. package/lib/components/hySearch/search.vue.js +69 -8
  114. package/lib/components/hySearch/style/search.scss +7 -0
  115. package/lib/components/hyTable/cpns/columnSelect.vue.js +20 -21
  116. package/lib/components/hyTable/cpns/virtualTable.vue.js +51 -37
  117. package/lib/components/hyTable/js/index.js +16 -16
  118. package/lib/components/hyTable/js/search.js +28 -2
  119. package/lib/components/hyTable/style/table.scss +13 -0
  120. package/lib/components/hyTable/table.vue.js +53 -20
  121. package/lib/components/hyTableActionButton/tableActionButton.vue.js +16 -11
  122. package/lib/components/hyTableForm/batchTableForm.vue.js +36 -5
  123. package/lib/components/hyTableForm/js/useAppTableForm.js +1 -1
  124. package/lib/components/hyTableForm/tableForm.vue.js +85 -33
  125. package/lib/components/hyTour/index.js +12 -0
  126. package/lib/components/hyTour/style/tour.scss +0 -0
  127. package/lib/components/hyTour/tour.vue.js +27 -0
  128. package/lib/components/hyTree/config/tree-config.js +5 -2
  129. package/lib/components/hyTree/js/index.js +128 -56
  130. package/lib/components/hyTree/tree.vue.js +22 -37
  131. package/lib/components/index.js +8 -6
  132. package/lib/index.js +67 -55
  133. package/lib/static/hy-svg-icons/hy-icon-ops-linear-arrow.js +10 -0
  134. package/lib/style/element/hy-element.scss +24 -3
  135. package/lib/style/index.scss +0 -1
  136. package/lib/style/tailwind.scss +0 -1
  137. package/lib/style/theme.scss +1 -0
  138. package/lib/utils/is.js +5 -3
  139. package/lib/utils/map/hook/bigMap.js +11 -1
  140. package/lib/utils/map/hook/gaode.js +60 -17
  141. package/lib/utils/map/hook/leafletjs.js +25 -4
  142. package/lib/utils/map/index.js +1 -1
  143. package/lib/version.js +1 -1
  144. package/package.json +2 -2
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  var elementPlus = require('element-plus');
7
+ var iconsVue = require('@element-plus/icons-vue');
7
8
  require('../../../utils/index.js');
8
9
  require('../../index.js');
9
10
  var index = require('../js/index.js');
@@ -38,10 +39,16 @@ const _sfc_main = {
38
39
  setup(__props, { emit: __emit }) {
39
40
  const props = __props;
40
41
  const emits = __emit;
42
+ const formContext = vue.inject(index.formContextKey);
43
+ const componentRef = vue.useTemplateRef("componentRef");
41
44
  const columnProp = vue.computed(() => {
42
45
  let field = is.isArray(props.column.field) ? props.column.field[0] : props.column.field;
43
46
  return field;
44
47
  });
48
+ const propString = vue.computed(() => {
49
+ if (!columnProp.value) return "";
50
+ return is.isArray(columnProp.value) ? columnProp.value.join(".") : columnProp.value;
51
+ });
45
52
  const bindValue = vue.computed({
46
53
  get() {
47
54
  const prop = is.isArray(props.column.field) ? props.column.field[0] : props.column.field;
@@ -62,15 +69,82 @@ const _sfc_main = {
62
69
  form.setValueByProp(props.model, prop, val);
63
70
  }
64
71
  });
72
+ const columnConfig = vue.computed(() => {
73
+ return {
74
+ ...props.column,
75
+ attrs: columnAttrs.value
76
+ };
77
+ });
65
78
  const columnAttrs = vue.computed(() => {
66
79
  return {
67
80
  ...props.column.attrs,
68
81
  label: form.columnLabelHandler(props.column, props.model),
69
- placeholder: form.columnPlaceholderHandler(props.column, props.model)
82
+ placeholder: props.column.optionsError === "error" ? "\u52A0\u8F7D\u5931\u8D25\uFF0C\u8BF7\u91CD\u65B0\u52A0\u8F7D" : form.columnPlaceholderHandler(props.column, props.model)
70
83
  };
71
84
  });
85
+ function obtainOptions(isMountedLoad = false) {
86
+ return new Promise(async (resolve, reject) => {
87
+ if (props.column.optionsFn) {
88
+ if (!props.column.optionsFn) return;
89
+ props.column.optionsLoading = true;
90
+ props.column.optionsError = "";
91
+ props.column.attrs.options = [];
92
+ if (!(isMountedLoad && props.column.isDefaultGetData === false)) {
93
+ try {
94
+ props.column.attrs.options = await props.column.optionsFn(
95
+ props.column,
96
+ props.model
97
+ );
98
+ props.column.optionsError = "";
99
+ resolve();
100
+ } catch (err) {
101
+ props.column.optionsError = "error";
102
+ console.error(err);
103
+ reject();
104
+ }
105
+ } else {
106
+ resolve();
107
+ }
108
+ } else if (props.column.type === "org-cascader") {
109
+ if (componentRef.value) {
110
+ props.column.optionsLoading = true;
111
+ props.column.optionsError = "";
112
+ try {
113
+ await componentRef.value.getData();
114
+ resolve();
115
+ } catch {
116
+ props.column.optionsError = "error";
117
+ reject();
118
+ }
119
+ } else {
120
+ resolve();
121
+ }
122
+ } else {
123
+ resolve();
124
+ }
125
+ props.column.optionsLoading = false;
126
+ });
127
+ }
128
+ function getOptionsHandler(props2, column) {
129
+ if (props2.column.optionsLoading) {
130
+ return [];
131
+ }
132
+ return index.optionsHandler(props2, props2.column);
133
+ }
72
134
  function onChangeHandler(value, column) {
135
+ const { onChange } = props.column;
73
136
  emits("search");
137
+ if (!onChange) return;
138
+ onChange(props.column, props.model, props.index);
139
+ }
140
+ async function onVisibleChange(value) {
141
+ if (value && props.column.optionsError === "error") {
142
+ try {
143
+ await obtainOptions();
144
+ } catch {
145
+ }
146
+ formContext?.emitOptionsStatus();
147
+ }
74
148
  }
75
149
  function onKeydownEnterHander(e) {
76
150
  emits("search");
@@ -90,215 +164,369 @@ const _sfc_main = {
90
164
  }
91
165
  emits("search");
92
166
  }
167
+ const context = vue.reactive({
168
+ ...vue.toRefs(props),
169
+ columnProp,
170
+ propString,
171
+ columnConfig,
172
+ columnAttrs,
173
+ obtainOptions,
174
+ optionsLoading: vue.computed(() => columnConfig.value.optionsLoading),
175
+ optionsError: vue.computed(() => columnConfig.value.optionsError),
176
+ options: vue.computed(() => {
177
+ return getOptionsHandler(props, props.column);
178
+ })
179
+ });
180
+ vue.onMounted(() => {
181
+ if (propString.value) {
182
+ formContext?.addField(context);
183
+ }
184
+ vue.watch(
185
+ () => formContext.model.errorMsg,
186
+ () => {
187
+ const optionsError = props.column.optionsError;
188
+ if (optionsError === "error") {
189
+ props.column.optionsError = "";
190
+ setTimeout(() => {
191
+ props.column.optionsError = "error";
192
+ }, 1);
193
+ }
194
+ },
195
+ { immediate: true, deep: true }
196
+ );
197
+ });
198
+ vue.onBeforeUnmount(() => {
199
+ formContext?.removeField(context);
200
+ });
93
201
  return (_ctx, _cache) => {
94
202
  return vue.unref(index.columnShowHandler)(props, __props.column) ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElFormItem), {
95
203
  key: 0,
96
204
  prop: columnProp.value
97
205
  }, {
98
206
  default: vue.withCtx(() => [
99
- vue.createElementVNode("div", { class: "flex bg-background-2 rounded outline outline-1 outline-transparent outline-offset-0 hover:outline-theme box-border" }, [
100
- vue.createElementVNode(
101
- "div",
102
- {
103
- class: "flex",
104
- style: vue.normalizeStyle(vue.unref(index.columnItemStyle)(props, __props.column))
105
- },
106
- [
107
- vue.createCommentVNode(" \u8868\u5355label "),
108
- vue.createElementVNode(
109
- "div",
110
- {
111
- class: vue.normalizeClass(["flex items-center text-auxiliary text-xs whitespace-nowrap", {
112
- "border-r border-border px-3": __props.column.labelSlot && _ctx.$slots[__props.column.labelSlot] || vue.unref(form.columnLabelHandler)(__props.column, props.model)
113
- }])
114
- },
115
- [
116
- __props.column.labelSlot && _ctx.$slots[__props.column.labelSlot] ? vue.renderSlot(_ctx.$slots, __props.column.labelSlot, { column: __props.column }, void 0, void 0, 0) : (vue.openBlock(), vue.createElementBlock(
117
- "span",
118
- { key: 1 },
119
- vue.toDisplayString(vue.unref(form.columnLabelHandler)(__props.column, props.model)),
120
- 1
121
- /* TEXT */
122
- ))
123
- ],
124
- 2
125
- /* CLASS */
126
- ),
127
- vue.createCommentVNode(" \u8868\u5355\u7EC4\u4EF6 "),
128
- vue.createElementVNode(
129
- "div",
130
- {
131
- class: vue.normalizeClass({ "hy-search-custom-wrapper": __props.column.slot }),
132
- style: vue.normalizeStyle(vue.unref(index.columnItemInputStyle)(props, __props.column))
133
- },
134
- [
135
- vue.createCommentVNode(" \u81EA\u5B9A\u4E49\u5177\u540D\u63D2\u69FD "),
136
- __props.column.slot ? vue.renderSlot(_ctx.$slots, __props.column.slot, { column: __props.column }, void 0, void 0, 0) : __props.column.type === "input" ? (vue.openBlock(), vue.createElementBlock(
137
- vue.Fragment,
138
- { key: 1 },
139
- [
140
- vue.createCommentVNode(" \u8F93\u5165\u6846 "),
141
- vue.createVNode(vue.unref(index$1.HyInput), vue.mergeProps({
142
- modelValue: bindValue.value,
143
- "onUpdate:modelValue": ($event) => bindValue.value = $event
144
- }, columnAttrs.value, {
145
- disabled: vue.unref(index.isDisabled)(props, __props.column),
146
- onKeydown: vue.withKeys(($event) => onKeydownEnterHander($event, __props.column), ["enter"]),
147
- onChange: ($event) => onChangeHandler($event, __props.column)
148
- }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled", "onKeydown", "onChange"])
149
- ],
150
- 2112
151
- /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
152
- )) : __props.column.type === "select" ? (vue.openBlock(), vue.createElementBlock(
153
- vue.Fragment,
154
- { key: 2 },
155
- [
156
- vue.createCommentVNode(" \u9009\u62E9\u6846 "),
157
- vue.createVNode(vue.unref(elementPlus.ElSelect), vue.mergeProps({
158
- modelValue: bindValue.value,
159
- "onUpdate:modelValue": ($event) => bindValue.value = $event
160
- }, columnAttrs.value, {
161
- disabled: vue.unref(index.isDisabled)(props, __props.column),
162
- options: vue.unref(index.optionsHandler)(props, __props.column),
163
- onChange: ($event) => onChangeHandler($event, __props.column)
164
- }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled", "options", "onChange"])
165
- ],
166
- 2112
167
- /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
168
- )) : __props.column.type === "date-picker" ? (vue.openBlock(), vue.createElementBlock(
169
- vue.Fragment,
170
- { key: 3 },
171
- [
172
- vue.createCommentVNode(" \u65E5\u671F\u9009\u62E9\u6846 "),
207
+ vue.createElementVNode(
208
+ "div",
209
+ {
210
+ class: vue.normalizeClass(["flex bg-background-2 rounded outline outline-1 outline-transparent outline-offset-0 hover:outline-theme box-border", [
211
+ {
212
+ "!outline-danger-2 hy-el-search-item-error": __props.column.optionsError === "error"
213
+ }
214
+ ]])
215
+ },
216
+ [
217
+ vue.createElementVNode(
218
+ "div",
219
+ {
220
+ class: "flex",
221
+ style: vue.normalizeStyle(vue.unref(index.columnItemStyle)(props, __props.column))
222
+ },
223
+ [
224
+ vue.createCommentVNode(" \u8868\u5355label "),
225
+ vue.createElementVNode(
226
+ "div",
227
+ {
228
+ class: vue.normalizeClass(["flex items-center text-auxiliary text-sm whitespace-nowrap", {
229
+ "border-r border-border px-3": __props.column.labelSlot && _ctx.$slots[__props.column.labelSlot] || vue.unref(form.columnLabelHandler)(__props.column, props.model)
230
+ }])
231
+ },
232
+ [
233
+ __props.column.labelSlot && _ctx.$slots[__props.column.labelSlot] ? vue.renderSlot(_ctx.$slots, __props.column.labelSlot, { column: columnConfig.value }, void 0, void 0, 0) : (vue.openBlock(), vue.createElementBlock(
234
+ "span",
235
+ { key: 1 },
236
+ vue.toDisplayString(vue.unref(form.columnLabelHandler)(__props.column, props.model)),
237
+ 1
238
+ /* TEXT */
239
+ ))
240
+ ],
241
+ 2
242
+ /* CLASS */
243
+ ),
244
+ vue.createCommentVNode(" \u8868\u5355\u7EC4\u4EF6 "),
245
+ vue.createElementVNode(
246
+ "div",
247
+ {
248
+ class: vue.normalizeClass({ "hy-search-custom-wrapper": __props.column.slot }),
249
+ style: vue.normalizeStyle(vue.unref(index.columnItemInputStyle)(props, __props.column))
250
+ },
251
+ [
252
+ vue.createCommentVNode(" \u81EA\u5B9A\u4E49\u5177\u540D\u63D2\u69FD "),
253
+ __props.column.slot ? vue.renderSlot(_ctx.$slots, __props.column.slot, { column: columnConfig.value }, void 0, void 0, 0) : __props.column.type === "input" ? (vue.openBlock(), vue.createElementBlock(
254
+ vue.Fragment,
255
+ { key: 1 },
256
+ [
257
+ vue.createCommentVNode(" \u8F93\u5165\u6846 "),
258
+ vue.createVNode(vue.unref(index$1.HyInput), vue.mergeProps({
259
+ ref_key: "componentRef",
260
+ ref: componentRef,
261
+ modelValue: bindValue.value,
262
+ "onUpdate:modelValue": ($event) => bindValue.value = $event
263
+ }, columnAttrs.value, {
264
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
265
+ onKeydown: vue.withKeys(($event) => onKeydownEnterHander($event, __props.column), ["enter"]),
266
+ onChange: ($event) => onChangeHandler($event, __props.column)
267
+ }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled", "onKeydown", "onChange"])
268
+ ],
269
+ 2112
270
+ /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
271
+ )) : __props.column.type === "select" ? (vue.openBlock(), vue.createElementBlock(
272
+ vue.Fragment,
273
+ { key: 2 },
274
+ [
275
+ vue.createCommentVNode(" \u9009\u62E9\u6846 "),
276
+ vue.createVNode(vue.unref(elementPlus.ElSelect), vue.mergeProps({
277
+ ref_key: "componentRef",
278
+ ref: componentRef,
279
+ modelValue: bindValue.value,
280
+ "onUpdate:modelValue": ($event) => bindValue.value = $event
281
+ }, columnAttrs.value, {
282
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
283
+ options: getOptionsHandler(props, __props.column),
284
+ onChange: ($event) => onChangeHandler($event, __props.column),
285
+ onVisibleChange
286
+ }), vue.createSlots({
287
+ _: 2
288
+ /* DYNAMIC */
289
+ }, [
290
+ __props.column.optionsLoading ? {
291
+ name: "empty",
292
+ fn: vue.withCtx(() => [
293
+ vue.createElementVNode("div", { class: "w-full flex items-center justify-center py-2 gap-1.5 text-main text-xs whitespace-nowrap" }, [
294
+ vue.createVNode(vue.unref(elementPlus.ElIcon), {
295
+ size: "16",
296
+ class: "is-loading text-theme"
297
+ }, {
298
+ default: vue.withCtx(() => [
299
+ vue.createVNode(vue.unref(iconsVue.Loading))
300
+ ]),
301
+ _: 1
302
+ /* STABLE */
303
+ }),
304
+ vue.createElementVNode("span", null, "\u6570\u636E\u6B63\u5728\u52A0\u8F7D\u4E2D")
305
+ ])
306
+ ]),
307
+ key: "0"
308
+ } : void 0
309
+ ]), 1040, ["modelValue", "onUpdate:modelValue", "disabled", "options", "onChange"])
310
+ ],
311
+ 2112
312
+ /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
313
+ )) : __props.column.type === "select-v2" ? (vue.openBlock(), vue.createElementBlock(
314
+ vue.Fragment,
315
+ { key: 3 },
316
+ [
317
+ vue.createCommentVNode(" \u865A\u62DF\u5316\u9009\u62E9\u6846 "),
318
+ vue.createVNode(vue.unref(elementPlus.ElSelectV2), vue.mergeProps({
319
+ ref_key: "componentRef",
320
+ ref: componentRef,
321
+ modelValue: bindValue.value,
322
+ "onUpdate:modelValue": ($event) => bindValue.value = $event
323
+ }, columnAttrs.value, {
324
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
325
+ options: getOptionsHandler(props, __props.column),
326
+ onChange: onChangeHandler,
327
+ onVisibleChange
328
+ }), vue.createSlots({
329
+ _: 2
330
+ /* DYNAMIC */
331
+ }, [
332
+ __props.column.optionsLoading ? {
333
+ name: "empty",
334
+ fn: vue.withCtx(() => [
335
+ vue.createElementVNode("div", { class: "w-full flex items-center justify-center py-2 gap-1.5 text-main text-xs whitespace-nowrap" }, [
336
+ vue.createVNode(vue.unref(elementPlus.ElIcon), {
337
+ size: "16",
338
+ class: "is-loading text-theme"
339
+ }, {
340
+ default: vue.withCtx(() => [
341
+ vue.createVNode(vue.unref(iconsVue.Loading))
342
+ ]),
343
+ _: 1
344
+ /* STABLE */
345
+ }),
346
+ vue.createElementVNode("span", null, "\u6570\u636E\u6B63\u5728\u52A0\u8F7D\u4E2D")
347
+ ])
348
+ ]),
349
+ key: "0"
350
+ } : void 0
351
+ ]), 1040, ["modelValue", "onUpdate:modelValue", "disabled", "options"])
352
+ ],
353
+ 2112
354
+ /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
355
+ )) : __props.column.type === "date-picker" ? (vue.openBlock(), vue.createElementBlock(
356
+ vue.Fragment,
357
+ { key: 4 },
358
+ [
359
+ vue.createCommentVNode(" \u65E5\u671F\u9009\u62E9\u6846 "),
360
+ [
361
+ "datetimerange",
362
+ "daterange",
363
+ "monthrange",
364
+ "yearrange"
365
+ ].includes(columnAttrs.value?.type) && vue.unref(is.isArray)(__props.column.field) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.HyDatePicker), vue.mergeProps({
366
+ key: 0,
367
+ ref_key: "componentRef",
368
+ ref: componentRef,
369
+ start: bindValue.value,
370
+ "onUpdate:start": ($event) => bindValue.value = $event,
371
+ end: bindValue2.value,
372
+ "onUpdate:end": ($event) => bindValue2.value = $event,
373
+ "is-range": true,
374
+ style: { "width": "100%" },
375
+ timeRangeFill: __props.column.timeRangeFill
376
+ }, columnAttrs.value, {
377
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
378
+ onChange: ($event) => onChangeHandler($event, __props.column)
379
+ }), null, 16, ["start", "onUpdate:start", "end", "onUpdate:end", "timeRangeFill", "disabled", "onChange"])) : (vue.openBlock(), vue.createBlock(vue.unref(index$2.HyDatePicker), vue.mergeProps({
380
+ key: 1,
381
+ ref_key: "componentRef",
382
+ ref: componentRef,
383
+ modelValue: bindValue.value,
384
+ "onUpdate:modelValue": ($event) => bindValue.value = $event,
385
+ "is-range": false,
386
+ style: { "width": "100%" },
387
+ timeRangeFill: __props.column.timeRangeFill
388
+ }, columnAttrs.value, {
389
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
390
+ onChange: ($event) => onChangeHandler($event, __props.column)
391
+ }), null, 16, ["modelValue", "onUpdate:modelValue", "timeRangeFill", "disabled", "onChange"]))
392
+ ],
393
+ 64
394
+ /* STABLE_FRAGMENT */
395
+ )) : __props.column.type === "time-picker" ? (vue.openBlock(), vue.createElementBlock(
396
+ vue.Fragment,
397
+ { key: 5 },
398
+ [
399
+ vue.createCommentVNode(" \u65F6\u95F4\u9009\u62E9\u6846 "),
400
+ columnAttrs.value.isRange ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.HyTimePicker), vue.mergeProps({
401
+ key: 0,
402
+ ref_key: "componentRef",
403
+ ref: componentRef,
404
+ start: bindValue.value,
405
+ "onUpdate:start": ($event) => bindValue.value = $event,
406
+ end: bindValue2.value,
407
+ "onUpdate:end": ($event) => bindValue2.value = $event,
408
+ "is-range": true,
409
+ style: { "width": "100%" }
410
+ }, columnAttrs.value, {
411
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
412
+ onChange: onChangeHandler
413
+ }), null, 16, ["start", "onUpdate:start", "end", "onUpdate:end", "disabled"])) : (vue.openBlock(), vue.createBlock(vue.unref(index$3.HyTimePicker), vue.mergeProps({
414
+ key: 1,
415
+ ref_key: "componentRef",
416
+ ref: componentRef,
417
+ modelValue: bindValue.value,
418
+ "onUpdate:modelValue": ($event) => bindValue.value = $event,
419
+ "is-range": false,
420
+ style: { "width": "100%" }
421
+ }, columnAttrs.value, {
422
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
423
+ onChange: onChangeHandler
424
+ }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled"]))
425
+ ],
426
+ 64
427
+ /* STABLE_FRAGMENT */
428
+ )) : __props.column.type === "org-cascader" ? (vue.openBlock(), vue.createElementBlock(
429
+ vue.Fragment,
430
+ { key: 6 },
431
+ [
432
+ vue.createCommentVNode(" \u90E8\u95E8\u7EA7\u8054\u9009\u62E9\u6846 "),
433
+ vue.createVNode(vue.unref(index$4.HyOrgCascader), vue.mergeProps({
434
+ ref_key: "componentRef",
435
+ ref: componentRef,
436
+ modelValue: bindValue.value,
437
+ "onUpdate:modelValue": ($event) => bindValue.value = $event
438
+ }, columnAttrs.value, {
439
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
440
+ onChange: onChangeHandler,
441
+ onVisibleChange
442
+ }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled"])
443
+ ],
444
+ 2112
445
+ /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
446
+ )) : __props.column.type === "cascader" ? (vue.openBlock(), vue.createElementBlock(
447
+ vue.Fragment,
448
+ { key: 7 },
173
449
  [
174
- "datetimerange",
175
- "daterange",
176
- "monthrange",
177
- "yearrange"
178
- ].includes(columnAttrs.value?.type) && vue.unref(is.isArray)(__props.column.field) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.HyDatePicker), vue.mergeProps({
179
- key: 0,
180
- start: bindValue.value,
181
- "onUpdate:start": ($event) => bindValue.value = $event,
182
- end: bindValue2.value,
183
- "onUpdate:end": ($event) => bindValue2.value = $event,
184
- "is-range": true,
185
- style: { "width": "100%" },
186
- timeRangeFill: __props.column.timeRangeFill
187
- }, columnAttrs.value, {
188
- disabled: vue.unref(index.isDisabled)(props, __props.column),
189
- onChange: ($event) => onChangeHandler($event, __props.column)
190
- }), null, 16, ["start", "onUpdate:start", "end", "onUpdate:end", "timeRangeFill", "disabled", "onChange"])) : (vue.openBlock(), vue.createBlock(vue.unref(index$2.HyDatePicker), vue.mergeProps({
191
- key: 1,
192
- modelValue: bindValue.value,
193
- "onUpdate:modelValue": ($event) => bindValue.value = $event,
194
- "is-range": false,
195
- style: { "width": "100%" },
196
- timeRangeFill: __props.column.timeRangeFill
197
- }, columnAttrs.value, {
198
- disabled: vue.unref(index.isDisabled)(props, __props.column),
199
- onChange: ($event) => onChangeHandler($event, __props.column)
200
- }), null, 16, ["modelValue", "onUpdate:modelValue", "timeRangeFill", "disabled", "onChange"]))
201
- ],
202
- 64
203
- /* STABLE_FRAGMENT */
204
- )) : __props.column.type === "time-picker" ? (vue.openBlock(), vue.createElementBlock(
205
- vue.Fragment,
206
- { key: 4 },
207
- [
208
- vue.createCommentVNode(" \u65F6\u95F4\u9009\u62E9\u6846 "),
209
- columnAttrs.value.isRange ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.HyTimePicker), vue.mergeProps({
210
- key: 0,
211
- start: bindValue.value,
212
- "onUpdate:start": ($event) => bindValue.value = $event,
213
- end: bindValue2.value,
214
- "onUpdate:end": ($event) => bindValue2.value = $event,
215
- "is-range": true,
216
- style: { "width": "100%" }
217
- }, columnAttrs.value, {
218
- disabled: vue.unref(index.isDisabled)(props, __props.column),
219
- onChange: onChangeHandler
220
- }), null, 16, ["start", "onUpdate:start", "end", "onUpdate:end", "disabled"])) : (vue.openBlock(), vue.createBlock(vue.unref(index$3.HyTimePicker), vue.mergeProps({
221
- key: 1,
222
- modelValue: bindValue.value,
223
- "onUpdate:modelValue": ($event) => bindValue.value = $event,
224
- "is-range": false,
225
- style: { "width": "100%" }
226
- }, columnAttrs.value, {
227
- disabled: vue.unref(index.isDisabled)(props, __props.column),
228
- onChange: onChangeHandler
229
- }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled"]))
230
- ],
231
- 64
232
- /* STABLE_FRAGMENT */
233
- )) : __props.column.type === "org-cascader" ? (vue.openBlock(), vue.createElementBlock(
234
- vue.Fragment,
235
- { key: 5 },
236
- [
237
- vue.createCommentVNode(" \u90E8\u95E8\u7EA7\u8054\u9009\u62E9\u6846 "),
238
- vue.createVNode(vue.unref(index$4.HyOrgCascader), vue.mergeProps({
239
- modelValue: bindValue.value,
240
- "onUpdate:modelValue": ($event) => bindValue.value = $event
241
- }, columnAttrs.value, {
242
- disabled: vue.unref(index.isDisabled)(props, __props.column),
243
- onChange: onChangeHandler
244
- }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled"])
245
- ],
246
- 2112
247
- /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
248
- )) : __props.column.type === "cascader" ? (vue.openBlock(), vue.createElementBlock(
249
- vue.Fragment,
250
- { key: 6 },
251
- [
252
- vue.createCommentVNode(" \u7EA7\u8054\u9009\u62E9\u6846 "),
253
- vue.createVNode(vue.unref(elementPlus.ElCascader), vue.mergeProps({
254
- modelValue: bindValue.value,
255
- "onUpdate:modelValue": ($event) => bindValue.value = $event
256
- }, columnAttrs.value, {
257
- disabled: vue.unref(index.isDisabled)(props, __props.column),
258
- options: vue.unref(index.optionsHandler)(props, __props.column),
259
- onChange: onChangeHandler
260
- }), null, 16, ["modelValue", "onUpdate:modelValue", "disabled", "options"])
261
- ],
262
- 2112
263
- /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
264
- )) : vue.createCommentVNode("v-if", true)
265
- ],
266
- 6
267
- /* CLASS, STYLE */
268
- )
269
- ],
270
- 4
271
- /* STYLE */
272
- ),
273
- __props.column.type === "date-picker" && ["daterange", "datetimerange"].includes(columnAttrs.value?.type) && __props.column.timeRangeOptions?.length ? (vue.openBlock(), vue.createElementBlock("div", {
274
- key: 0,
275
- class: "flex text-main select-none"
276
- }, [
277
- (vue.openBlock(true), vue.createElementBlock(
278
- vue.Fragment,
279
- null,
280
- vue.renderList(__props.column.timeRangeOptions, (item, index$1) => {
281
- return vue.openBlock(), vue.createElementBlock("div", {
282
- key: index$1,
283
- class: vue.normalizeClass(["border-l border-border px-[10px] cursor-pointer", {
284
- "bg-[rgba(var(--hy-theme),0.2)] text-theme font-bold": vue.unref(index.isSelectedTimeRange)(__props.column, item, __props.model)
285
- }]),
286
- onClick: ($event) => onTimeRangeClickHandler(__props.column, item)
287
- }, [
288
- vue.createElementVNode(
289
- "span",
290
- null,
291
- vue.toDisplayString(item.label),
292
- 1
293
- /* TEXT */
294
- )
295
- ], 10, ["onClick"]);
296
- }),
297
- 128
298
- /* KEYED_FRAGMENT */
299
- ))
300
- ])) : vue.createCommentVNode("v-if", true)
301
- ])
450
+ vue.createCommentVNode(" \u7EA7\u8054\u9009\u62E9\u6846 "),
451
+ vue.createVNode(vue.unref(elementPlus.ElCascader), vue.mergeProps({
452
+ ref_key: "componentRef",
453
+ ref: componentRef,
454
+ modelValue: bindValue.value,
455
+ "onUpdate:modelValue": ($event) => bindValue.value = $event
456
+ }, columnAttrs.value, {
457
+ style: { "width": "100%" },
458
+ disabled: vue.unref(index.isDisabled)(props, __props.column),
459
+ options: getOptionsHandler(props, __props.column),
460
+ onChange: onChangeHandler,
461
+ onVisibleChange
462
+ }), vue.createSlots({
463
+ _: 2
464
+ /* DYNAMIC */
465
+ }, [
466
+ __props.column.optionsLoading ? {
467
+ name: "empty",
468
+ fn: vue.withCtx(() => [
469
+ vue.createElementVNode("div", { class: "w-full flex items-center justify-center py-2 gap-1.5 text-main text-xs whitespace-nowrap" }, [
470
+ vue.createVNode(vue.unref(elementPlus.ElIcon), {
471
+ size: "16",
472
+ class: "is-loading text-theme"
473
+ }, {
474
+ default: vue.withCtx(() => [
475
+ vue.createVNode(vue.unref(iconsVue.Loading))
476
+ ]),
477
+ _: 1
478
+ /* STABLE */
479
+ }),
480
+ vue.createElementVNode("span", null, "\u6570\u636E\u6B63\u5728\u52A0\u8F7D\u4E2D")
481
+ ])
482
+ ]),
483
+ key: "0"
484
+ } : void 0
485
+ ]), 1040, ["modelValue", "onUpdate:modelValue", "disabled", "options"])
486
+ ],
487
+ 2112
488
+ /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
489
+ )) : vue.createCommentVNode("v-if", true)
490
+ ],
491
+ 6
492
+ /* CLASS, STYLE */
493
+ )
494
+ ],
495
+ 4
496
+ /* STYLE */
497
+ ),
498
+ __props.column.type === "date-picker" && ["daterange", "datetimerange"].includes(columnAttrs.value?.type) && __props.column.timeRangeOptions?.length ? (vue.openBlock(), vue.createElementBlock("div", {
499
+ key: 0,
500
+ class: "flex text-main select-none"
501
+ }, [
502
+ (vue.openBlock(true), vue.createElementBlock(
503
+ vue.Fragment,
504
+ null,
505
+ vue.renderList(__props.column.timeRangeOptions, (item, index$1) => {
506
+ return vue.openBlock(), vue.createElementBlock("div", {
507
+ key: index$1,
508
+ class: vue.normalizeClass(["border-l border-border px-[10px] cursor-pointer", {
509
+ "bg-[rgba(var(--hy-theme),0.2)] text-theme font-bold": vue.unref(index.isSelectedTimeRange)(__props.column, item, __props.model)
510
+ }]),
511
+ onClick: ($event) => onTimeRangeClickHandler(__props.column, item)
512
+ }, [
513
+ vue.createElementVNode(
514
+ "span",
515
+ null,
516
+ vue.toDisplayString(item.label),
517
+ 1
518
+ /* TEXT */
519
+ )
520
+ ], 10, ["onClick"]);
521
+ }),
522
+ 128
523
+ /* KEYED_FRAGMENT */
524
+ ))
525
+ ])) : vue.createCommentVNode("v-if", true)
526
+ ],
527
+ 2
528
+ /* CLASS */
529
+ )
302
530
  ]),
303
531
  _: 3
304
532
  /* FORWARDED */