hy-dispatch-ui-v3 0.2.31 → 0.2.33

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 (80) hide show
  1. package/dist/tailwind.css +174 -454
  2. package/es/components/hyAudioPlayer/audioPlayer.vue.mjs +4 -4
  3. package/es/components/hyAudioPlayer/style/audioPlayer.scss +11 -12
  4. package/es/components/hyButton/button.vue.mjs +112 -65
  5. package/es/components/hyButton/style/button.scss +291 -233
  6. package/es/components/hyConfirmDialog/confirmDialog.vue.mjs +1 -1
  7. package/es/components/hyForm/form.vue.mjs +2 -1
  8. package/es/components/hyForm/index.mjs +1 -1
  9. package/es/components/hyForm/js/useAppForm.mjs +1 -2
  10. package/es/components/hyForm/style/form.scss +56 -54
  11. package/es/components/hyIcon/style/icon.scss +1 -1
  12. package/es/components/hyIconBox/style/iconBox.scss +19 -18
  13. package/es/components/hyInput/input.vue.mjs +4 -1
  14. package/es/components/hyMenu/menu.vue.mjs +1 -1
  15. package/es/components/hyMenu/style/menu.scss +1 -1
  16. package/es/components/hySearch/index.mjs +1 -1
  17. package/es/components/hySearch/style/search.scss +50 -50
  18. package/es/components/hyTable/cpns/virtualTable.vue.mjs +342 -319
  19. package/es/components/hyTable/js/index.mjs +19 -3
  20. package/es/components/hyTable/js/useAppTable.mjs +1 -1
  21. package/es/components/hyTable/table.vue.mjs +31 -11
  22. package/es/components/hyTableForm/batchTableForm.vue.mjs +478 -0
  23. package/es/components/hyTableForm/index.mjs +4 -1
  24. package/es/components/hyTableForm/js/index.mjs +123 -0
  25. package/es/components/hyTableForm/js/useAppTableForm.mjs +47 -0
  26. package/es/components/hyTableForm/style/batchTableForm.scss +127 -0
  27. package/es/components/hyTableForm/style/tableForm.scss +42 -0
  28. package/es/components/hyTableForm/tableForm.vue.mjs +452 -7
  29. package/es/components/hyTooltip/tooltip.vue.mjs +2 -2
  30. package/es/components/hyVideoPlayer/cpns/mediaLoading.vue.mjs +1 -1
  31. package/es/components/hyVideoPlayer/style/mediaLoading.scss +5 -5
  32. package/es/components/hyVideoPlayer/style/videoPlayer.scss +7 -6
  33. package/es/components/hyVideoPlayer/videoPlayer.vue.mjs +6 -6
  34. package/es/components/index.mjs +4 -3
  35. package/es/index.mjs +4 -3
  36. package/es/static/hy-svg-icons/hy-icon-dispatch-linear-map-treelist.js +8 -0
  37. package/es/static/hy-svg-icons/hy-icon-dispatch-share-guidao.js +8 -0
  38. package/es/style/tailwind.scss +133 -1
  39. package/es/utils/handler.mjs +4 -4
  40. package/es/version.mjs +1 -1
  41. package/lib/components/hyAudioPlayer/audioPlayer.vue.js +4 -4
  42. package/lib/components/hyAudioPlayer/style/audioPlayer.scss +11 -12
  43. package/lib/components/hyButton/button.vue.js +111 -64
  44. package/lib/components/hyButton/style/button.scss +291 -233
  45. package/lib/components/hyConfirmDialog/confirmDialog.vue.js +1 -1
  46. package/lib/components/hyForm/form.vue.js +2 -1
  47. package/lib/components/hyForm/index.js +1 -0
  48. package/lib/components/hyForm/js/useAppForm.js +1 -2
  49. package/lib/components/hyForm/style/form.scss +56 -54
  50. package/lib/components/hyIcon/style/icon.scss +1 -1
  51. package/lib/components/hyIconBox/style/iconBox.scss +19 -18
  52. package/lib/components/hyInput/input.vue.js +4 -1
  53. package/lib/components/hyMenu/menu.vue.js +1 -1
  54. package/lib/components/hyMenu/style/menu.scss +1 -1
  55. package/lib/components/hySearch/index.js +1 -0
  56. package/lib/components/hySearch/style/search.scss +50 -50
  57. package/lib/components/hyTable/cpns/virtualTable.vue.js +340 -317
  58. package/lib/components/hyTable/js/index.js +19 -3
  59. package/lib/components/hyTable/js/useAppTable.js +1 -1
  60. package/lib/components/hyTable/table.vue.js +31 -11
  61. package/lib/components/hyTableForm/batchTableForm.vue.js +482 -0
  62. package/lib/components/hyTableForm/index.js +5 -0
  63. package/lib/components/hyTableForm/js/index.js +127 -0
  64. package/lib/components/hyTableForm/js/useAppTableForm.js +49 -0
  65. package/lib/components/hyTableForm/style/batchTableForm.scss +127 -0
  66. package/lib/components/hyTableForm/style/tableForm.scss +42 -0
  67. package/lib/components/hyTableForm/tableForm.vue.js +451 -6
  68. package/lib/components/hyTooltip/tooltip.vue.js +2 -2
  69. package/lib/components/hyVideoPlayer/cpns/mediaLoading.vue.js +1 -1
  70. package/lib/components/hyVideoPlayer/style/mediaLoading.scss +5 -5
  71. package/lib/components/hyVideoPlayer/style/videoPlayer.scss +7 -6
  72. package/lib/components/hyVideoPlayer/videoPlayer.vue.js +6 -6
  73. package/lib/components/index.js +35 -30
  74. package/lib/index.js +35 -30
  75. package/lib/static/hy-svg-icons/hy-icon-dispatch-linear-map-treelist.js +8 -0
  76. package/lib/static/hy-svg-icons/hy-icon-dispatch-share-guidao.js +8 -0
  77. package/lib/style/tailwind.scss +133 -1
  78. package/lib/utils/handler.js +4 -4
  79. package/lib/version.js +1 -1
  80. package/package.json +5 -3
@@ -1,4 +1,14 @@
1
- import { defineComponent, openBlock, createElementBlock, createCommentVNode } from 'vue';
1
+ import { defineComponent, useTemplateRef, ref, computed, openBlock, createElementBlock, createElementVNode, toDisplayString, createCommentVNode, createVNode, unref, withCtx, createTextVNode, Fragment, renderList, normalizeClass, mergeProps, createSlots, renderSlot, normalizeProps, guardReactiveProps, createBlock, nextTick } from 'vue';
2
+ import { ElIcon } from 'element-plus';
3
+ import { Warning } from '@element-plus/icons-vue';
4
+ import { doValidate } from './js/index.mjs';
5
+ import { useAppTable } from '../hyTable/js/useAppTable.mjs';
6
+ import { cloneDeep } from '../../utils/handler.mjs';
7
+ import { HyTable } from '../hyTable/index.mjs';
8
+ import { HyForm } from '../hyForm/index.mjs';
9
+ import { resetAppFormValue } from '../hyForm/js/useAppForm.mjs';
10
+ import { isArray, isObject } from '../../utils/is.mjs';
11
+ import { HyButton } from '../hyButton/index.mjs';
2
12
 
3
13
  import "./style/tableForm.scss";
4
14
 
@@ -6,14 +16,449 @@ const __default__ = defineComponent({
6
16
  name: "HyTableForm"
7
17
  });
8
18
  const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
9
- props: {},
10
- emits: [],
19
+ props: {
20
+ // 表格配置项
21
+ tableColumns: {
22
+ // 表格的列
23
+ type: Array,
24
+ required: true,
25
+ default: () => []
26
+ },
27
+ formColumns: {
28
+ type: Array,
29
+ default: () => []
30
+ },
31
+ rules: {
32
+ type: Object,
33
+ default: () => ({})
34
+ },
35
+ emptyText: {
36
+ // 空数据时显示的文本内容
37
+ type: String
38
+ },
39
+ fontSize: {
40
+ // 字体大小
41
+ type: Number,
42
+ default: 14
43
+ },
44
+ rowClickExpand: {
45
+ // 点击行展开
46
+ type: Boolean,
47
+ required: false,
48
+ default: true
49
+ },
50
+ // 表单配置项
51
+ columnNum: {
52
+ type: Number,
53
+ default: 2
54
+ },
55
+ size: {
56
+ type: String,
57
+ default: "default"
58
+ // 'large' | 'default' | 'small'
59
+ }
60
+ },
61
+ emits: ["validate"],
11
62
  setup(__props, { expose: __expose, emit: __emit }) {
12
- __expose({});
63
+ const props = __props;
64
+ const emits = __emit;
65
+ const tableRef = useTemplateRef("tableRef");
66
+ const formRef = useTemplateRef("formRef");
67
+ const dataSource = ref([]);
68
+ const tabList = ref([
69
+ { label: "\u5168\u90E8\u6570\u636E", value: "all" },
70
+ { label: "\u4EC5\u663E\u793A\u5F02\u5E38\u6570\u636E", value: "abnormal" }
71
+ ]);
72
+ const tabValue = ref("all");
73
+ const { tableColumns: operatorColumn } = useAppTable({
74
+ columns: [
75
+ {
76
+ type: "operator",
77
+ // prop 改为 type
78
+ width: 64,
79
+ operator: [
80
+ {
81
+ label: "\u5220\u9664",
82
+ subLabel: "\u5220\u9664",
83
+ svgName: "ops-linear-delete",
84
+ className: "text-danger-2",
85
+ handler: onDeleteRowHandler
86
+ }
87
+ ]
88
+ }
89
+ ]
90
+ });
91
+ const isExpandValidate = ref(false);
92
+ const tableFormColumns = computed(() => {
93
+ if (!props.tableColumns) return [];
94
+ return [...props.tableColumns, ...operatorColumn.value];
95
+ });
96
+ const expandColumn = computed(() => {
97
+ return props.tableColumns.find((item) => item.type === "expand");
98
+ });
99
+ const statistics = computed(() => {
100
+ return dataSource.value.reduce(
101
+ ({ success, failed, total }, data) => {
102
+ if (!data.errorMsg) {
103
+ success++;
104
+ } else {
105
+ failed++;
106
+ }
107
+ return { success, failed, total };
108
+ },
109
+ { success: 0, failed: 0, total: dataSource.value.length }
110
+ );
111
+ });
112
+ function setData(dataSource2) {
113
+ if (!tableRef.value) return;
114
+ tableRef.value.setData(dataSource2);
115
+ }
116
+ function rowClassName({ row, rowIndex }) {
117
+ if (row.errorMsg) {
118
+ return "hy-el-table-v2__row-error";
119
+ }
120
+ }
121
+ function onTabChange(value) {
122
+ if (tabValue.value === value) return;
123
+ tabValue.value = value;
124
+ if (tabValue.value === "all") {
125
+ setData(dataSource.value);
126
+ } else {
127
+ const data = dataSource.value.filter((data2) => {
128
+ return !!data2.errorMsg;
129
+ });
130
+ setData(data);
131
+ }
132
+ }
133
+ async function onExpandRowChange(row) {
134
+ await nextTick();
135
+ if (!formRef.value) return;
136
+ const valid = await initValidateHandler([row]);
137
+ if (valid) return;
138
+ formRef.value.validate();
139
+ isExpandValidate.value = true;
140
+ }
141
+ function onDeleteRowHandler(params) {
142
+ const { $index } = params;
143
+ dataSource.value.splice($index, 1);
144
+ }
145
+ async function onAddRowHandler() {
146
+ const data = resetAppFormValue(props.formColumns, {
147
+ onlyId: /* @__PURE__ */ Symbol("onlyId")
148
+ });
149
+ await initValidateHandler([data]);
150
+ dataSource.value.push(data);
151
+ }
152
+ async function initValidateHandler(dataSource2) {
153
+ let promiseList = [];
154
+ for (const data of dataSource2) {
155
+ promiseList.push(
156
+ new Promise(async (resolve, reject) => {
157
+ try {
158
+ const res = await doValidate(data, props.formColumns, props.rules);
159
+ data.errorMsg = data.errorMsg && !data.errorMsg.prop ? data.errorMsg : null;
160
+ data.errorMap = /* @__PURE__ */ new Map();
161
+ resolve();
162
+ } catch (error) {
163
+ const errorMap = /* @__PURE__ */ new Map();
164
+ error.forEach((item, index) => {
165
+ const errData = {
166
+ prop: item.field,
167
+ message: item.message || `${item.field} is required`
168
+ };
169
+ if (!data.errorMsg) {
170
+ data.errorMsg = errData;
171
+ }
172
+ errorMap.set(errData.prop, errData.message);
173
+ });
174
+ data.errorMap = errorMap;
175
+ reject();
176
+ }
177
+ })
178
+ );
179
+ }
180
+ if (!promiseList.length) return true;
181
+ const result = await Promise.allSettled(promiseList);
182
+ return result.every((res) => res.status === "fulfilled");
183
+ }
184
+ async function onValidateHandler(row, { prop, isValid, message }) {
185
+ if (!row.errorMap) {
186
+ row.errorMap = /* @__PURE__ */ new Map();
187
+ }
188
+ if (isValid) {
189
+ row.errorMap.delete(prop);
190
+ if (row.errorMsg && (row.errorMsg.prop === prop || !row.errorMap.has(prop))) {
191
+ if (row.errorMap.size) {
192
+ const [prop2, message2] = Array.from(row.errorMap.entries())[0];
193
+ row.errorMsg = { prop: prop2, message: message2 };
194
+ } else {
195
+ row.errorMsg = null;
196
+ }
197
+ }
198
+ } else {
199
+ row.errorMap.set(prop, message);
200
+ if (!row.errorMsg || !row.errorMsg.prop) {
201
+ row.errorMsg = {
202
+ prop,
203
+ message
204
+ };
205
+ }
206
+ }
207
+ const { onlyId, errorMsg, errorMap, children, ...data } = row;
208
+ emits("validate", {
209
+ row: data,
210
+ prop,
211
+ isValid,
212
+ message,
213
+ ...statistics.value
214
+ });
215
+ console.log("validate", row, { prop, isValid, message });
216
+ }
217
+ __expose({
218
+ setData(data) {
219
+ dataSource.value = cloneDeep(data, true);
220
+ dataSource.value.forEach((item) => {
221
+ item.onlyId = /* @__PURE__ */ Symbol("onlyId");
222
+ });
223
+ initValidateHandler(dataSource.value);
224
+ setData(dataSource.value);
225
+ },
226
+ deleteData(data) {
227
+ if (!isArray(data)) {
228
+ data = isObject(data) ? [data] : [];
229
+ }
230
+ const keySet = data.reduce((set, item) => {
231
+ if (item.onlyId) set.add(item.onlyId);
232
+ return set;
233
+ }, /* @__PURE__ */ new Set());
234
+ console.log("keySet", Array.from(keySet.values()));
235
+ if (!keySet.size) return;
236
+ for (let i = 0; i < dataSource.value.length; i++) {
237
+ const target = dataSource.value[i];
238
+ if (keySet.has(target.onlyId)) {
239
+ keySet.delete(target.onlyId);
240
+ onDeleteRowHandler({ $index: i });
241
+ i--;
242
+ }
243
+ if (keySet.size === 0) break;
244
+ }
245
+ },
246
+ getTableDataSource() {
247
+ return dataSource.value.reduce((list, item) => {
248
+ const { onlyId, errorMsg, errorMap, children, ...data } = item;
249
+ list.push(data);
250
+ return list;
251
+ }, []);
252
+ },
253
+ getStatistics() {
254
+ return { ...statistics.value };
255
+ },
256
+ validate() {
257
+ return {
258
+ ...statistics.value,
259
+ dataSource: dataSource.value
260
+ };
261
+ }
262
+ });
13
263
  return (_ctx, _cache) => {
14
- return openBlock(), createElementBlock("div", null, [
15
- createCommentVNode(" HyTableForm \u5185\u5BB9 ")
16
- ]);
264
+ return openBlock(), createElementBlock(
265
+ "div",
266
+ {
267
+ ref: "containerRef",
268
+ class: "hy-table-form"
269
+ },
270
+ [
271
+ createElementVNode("div", { class: "flex items-center justify-between mb-3 text-sm" }, [
272
+ createElementVNode("div", { class: "flex items-center gap-5" }, [
273
+ createElementVNode("div", { class: "text-auxiliary" }, [
274
+ createElementVNode("span", { class: "mr-1" }, "\u89E3\u6790\u603B\u6570"),
275
+ createElementVNode(
276
+ "span",
277
+ null,
278
+ toDisplayString(dataSource.value.length),
279
+ 1
280
+ /* TEXT */
281
+ )
282
+ ]),
283
+ statistics.value.success ? (openBlock(), createElementBlock("div", {
284
+ key: 0,
285
+ class: "flex items-center text-success"
286
+ }, [
287
+ createElementVNode("div", { class: "w-1.5 h-1.5 mr-1.5 rounded-full bg-success" }),
288
+ createElementVNode("span", null, "\u5C31\u7EEA"),
289
+ createElementVNode(
290
+ "span",
291
+ null,
292
+ toDisplayString(statistics.value.success),
293
+ 1
294
+ /* TEXT */
295
+ )
296
+ ])) : createCommentVNode("v-if", true),
297
+ statistics.value.failed ? (openBlock(), createElementBlock("div", {
298
+ key: 1,
299
+ class: "flex items-center text-danger-2"
300
+ }, [
301
+ createElementVNode("div", { class: "w-1.5 h-1.5 mr-1.5 rounded-full bg-danger-2" }),
302
+ createElementVNode("span", null, "\u5F02\u5E38"),
303
+ createElementVNode(
304
+ "span",
305
+ null,
306
+ toDisplayString(statistics.value.failed),
307
+ 1
308
+ /* TEXT */
309
+ )
310
+ ])) : createCommentVNode("v-if", true)
311
+ ]),
312
+ createElementVNode("div", { class: "flex items-center gap-3" }, [
313
+ createVNode(unref(HyButton), {
314
+ type: "success",
315
+ size: "small",
316
+ "svg-name": "ops-button-add",
317
+ onClick: onAddRowHandler
318
+ }, {
319
+ default: withCtx(() => [
320
+ createTextVNode("\u6DFB\u52A0\u6570\u636E")
321
+ ]),
322
+ _: 1
323
+ /* STABLE */
324
+ }),
325
+ createElementVNode("div", { class: "hy-table-form-tabs" }, [
326
+ (openBlock(true), createElementBlock(
327
+ Fragment,
328
+ null,
329
+ renderList(tabList.value, (item) => {
330
+ return openBlock(), createElementBlock("div", {
331
+ key: item.value,
332
+ class: normalizeClass(["hy-table-form-tab-button", { "is-select": item.value === tabValue.value }]),
333
+ onClick: ($event) => onTabChange(item.value)
334
+ }, toDisplayString(item.label), 11, ["onClick"]);
335
+ }),
336
+ 128
337
+ /* KEYED_FRAGMENT */
338
+ ))
339
+ ])
340
+ ])
341
+ ]),
342
+ createVNode(unref(HyTable), mergeProps({
343
+ ref_key: "tableRef",
344
+ ref: tableRef
345
+ }, _ctx.$attrs, {
346
+ type: "virtual",
347
+ "row-key": "onlyId",
348
+ tableColumns: tableFormColumns.value,
349
+ rowClassName,
350
+ showHeader: true,
351
+ emptyText: __props.emptyText,
352
+ fontSize: __props.fontSize,
353
+ rowClickExpand: __props.rowClickExpand,
354
+ showEditable: false,
355
+ showOperate: false,
356
+ showPagination: false,
357
+ expandMode: "accordion",
358
+ onExpandChange: onExpandRowChange
359
+ }), createSlots({
360
+ validateStatus: withCtx(({ row }) => [
361
+ createElementVNode(
362
+ "div",
363
+ {
364
+ class: normalizeClass(["flex items-center gap-1.5", [row.errorMsg ? "text-danger-2" : "text-success"]])
365
+ },
366
+ [
367
+ createElementVNode(
368
+ "div",
369
+ {
370
+ class: normalizeClass(["w-1.5 h-1.5 rounded-full", [row.errorMsg ? "bg-danger-2" : "bg-success"]])
371
+ },
372
+ null,
373
+ 2
374
+ /* CLASS */
375
+ ),
376
+ createElementVNode(
377
+ "div",
378
+ { class: "text-sm" },
379
+ toDisplayString(!row.errorMsg ? "\u51C6\u5907\u5C31\u7EEA" : row.errorMsg.prop ? "\u5185\u5BB9\u6709\u8BEF" : "\u6821\u9A8C\u5931\u8D25"),
380
+ 1
381
+ /* TEXT */
382
+ )
383
+ ],
384
+ 2
385
+ /* CLASS */
386
+ )
387
+ ]),
388
+ _: 2
389
+ /* DYNAMIC */
390
+ }, [
391
+ renderList(_ctx.$slots, (_, slotName) => {
392
+ return {
393
+ name: slotName,
394
+ fn: withCtx((scope) => [
395
+ renderSlot(_ctx.$slots, slotName, normalizeProps(guardReactiveProps(scope)))
396
+ ])
397
+ };
398
+ }),
399
+ expandColumn.value && !_ctx.$slots[expandColumn.value.slot] && __props.formColumns ? {
400
+ name: expandColumn.value.slot,
401
+ fn: withCtx(({ row }) => [
402
+ createElementVNode("div", { class: "w-full pl-[52px] pr-[62px] pb-2" }, [
403
+ createElementVNode("div", { class: "h-[32px]" }, [
404
+ createElementVNode(
405
+ "div",
406
+ {
407
+ class: normalizeClass(["flex items-center gap-1.5 text-danger-2 transition-all duration-300 overflow-hidden", [row.errorMsg ? "h-full" : "h-0"]])
408
+ },
409
+ [
410
+ row.errorMsg ? (openBlock(), createBlock(unref(ElIcon), { key: 0 }, {
411
+ default: withCtx(() => [
412
+ createVNode(unref(Warning))
413
+ ]),
414
+ _: 1
415
+ /* STABLE */
416
+ })) : createCommentVNode("v-if", true),
417
+ createElementVNode(
418
+ "span",
419
+ null,
420
+ toDisplayString(row.errorMsg ? row.errorMsg.message : ""),
421
+ 1
422
+ /* TEXT */
423
+ )
424
+ ],
425
+ 2
426
+ /* CLASS */
427
+ )
428
+ ]),
429
+ createVNode(unref(HyForm), {
430
+ ref_key: "formRef",
431
+ ref: formRef,
432
+ model: row,
433
+ columns: __props.formColumns,
434
+ rules: __props.rules,
435
+ "show-message": false,
436
+ class: "px-0",
437
+ columnNum: __props.columnNum,
438
+ size: __props.size,
439
+ onValidate: (prop, isValid, message) => onValidateHandler(row, { prop, isValid, message })
440
+ }, createSlots({
441
+ _: 2
442
+ /* DYNAMIC */
443
+ }, [
444
+ renderList(_ctx.$slots, (_, slotName) => {
445
+ return {
446
+ name: slotName,
447
+ fn: withCtx((scope) => [
448
+ renderSlot(_ctx.$slots, slotName, normalizeProps(guardReactiveProps(scope)))
449
+ ])
450
+ };
451
+ })
452
+ ]), 1032, ["model", "columns", "rules", "columnNum", "size", "onValidate"])
453
+ ])
454
+ ]),
455
+ key: "0"
456
+ } : void 0
457
+ ]), 1040, ["tableColumns", "emptyText", "fontSize", "rowClickExpand"])
458
+ ],
459
+ 512
460
+ /* NEED_PATCH */
461
+ );
17
462
  };
18
463
  }
19
464
  });
@@ -34,7 +34,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
34
34
  }
35
35
  },
36
36
  content: {
37
- type: String
37
+ type: [String, Number]
38
38
  }
39
39
  },
40
40
  setup(__props) {
@@ -66,7 +66,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
66
66
  "popper-class": "max-w-[300px]"
67
67
  }, _ctx.$attrs, {
68
68
  disabled: isDisabled.value,
69
- content: _ctx.$slots.content ? void 0 : __props.content
69
+ content: _ctx.$slots.content ? void 0 : unref(isNumber)(__props.content) ? `${__props.content}` : __props.content
70
70
  }), createSlots({
71
71
  default: withCtx(() => [
72
72
  __props.isAlways ? renderSlot(_ctx.$slots, "default", { key: 0 }, () => [
@@ -19,7 +19,7 @@ const _sfc_main = {
19
19
  return openBlock(), createElementBlock(
20
20
  "div",
21
21
  {
22
- class: "tech-loader",
22
+ class: "hy-tech-loader",
23
23
  style: normalizeStyle({ width: __props.width + "px", height: __props.height + "px" })
24
24
  },
25
25
  [
@@ -1,5 +1,5 @@
1
1
  /* 动效组件保持不变 */
2
- .tech-loader {
2
+ .hy-tech-loader {
3
3
  position: relative;
4
4
  z-index: 2;
5
5
  &::before {
@@ -24,7 +24,7 @@
24
24
  border-top-color: #00ffff;
25
25
  border-right-color: #00ffff;
26
26
  box-shadow: 0 0 15px rgba(0, 255, 255, 0.3);
27
- animation: spin 1s linear infinite;
27
+ animation: hy-tech-loader-spin 1s linear infinite;
28
28
  }
29
29
  .tech-center-dot {
30
30
  position: absolute;
@@ -36,11 +36,11 @@
36
36
  background-color: #00ffff;
37
37
  border-radius: 50%;
38
38
  box-shadow: 0 0 10px #00ffff;
39
- animation: pulse 1.5s ease-in-out infinite;
39
+ animation: hy-tech-loader-pulse 1.5s ease-in-out infinite;
40
40
  }
41
41
  }
42
42
 
43
- @keyframes spin {
43
+ @keyframes hy-tech-loader-spin {
44
44
  0% {
45
45
  transform: rotate(0deg);
46
46
  }
@@ -49,7 +49,7 @@
49
49
  }
50
50
  }
51
51
 
52
- @keyframes pulse {
52
+ @keyframes hy-tech-loader-pulse {
53
53
  0%,
54
54
  100% {
55
55
  opacity: 0.5;
@@ -1,4 +1,4 @@
1
- .video-player-content {
1
+ .hy-video-player-content {
2
2
  width: 100%;
3
3
  height: 400px;
4
4
  border: 1px solid rgba(var(--hy-border));
@@ -12,11 +12,11 @@
12
12
  video {
13
13
  width: 100%;
14
14
  }
15
- &.video-player-content-pick-up {
15
+ &.hy-video-player-content-pick-up {
16
16
  height: 60px !important;
17
17
  }
18
18
  // 全屏播放器样式
19
- &.full-video-player-content {
19
+ &.hy-full-video-player-content {
20
20
  height: 100% !important;
21
21
  position: fixed;
22
22
  left: 0;
@@ -72,7 +72,7 @@
72
72
  }
73
73
  }
74
74
  }
75
- &:not(.video-player-content-pick-up) {
75
+ &:not(.hy-video-player-content-pick-up) {
76
76
  video {
77
77
  height: 0;
78
78
  flex-grow: 1;
@@ -238,15 +238,16 @@
238
238
  rgba(28, 51, 74, 0) 100%
239
239
  );
240
240
  }
241
+
241
242
  }
242
243
 
243
- .popover-volume-slider {
244
+ .hy-video-player-popover-volume-slider {
244
245
  min-width: auto !important;
245
246
  width: 40px !important;
246
247
  padding: 16px 0;
247
248
  }
248
249
 
249
- .popover-speed {
250
+ .hy-video-player-popover-speed {
250
251
  min-width: auto !important;
251
252
  width: 62px !important;
252
253
  padding: 0px !important;
@@ -200,9 +200,9 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
200
200
  {
201
201
  ref_key: "videoWrapperRef",
202
202
  ref: videoWrapperRef,
203
- class: normalizeClass(["video-player-content", {
204
- "video-player-content-pick-up": !unref(isExpand) && !unref(isFullScreen),
205
- "full-video-player-content": unref(isFullScreen)
203
+ class: normalizeClass(["hy-video-player-content", {
204
+ "hy-video-player-content-pick-up": !unref(isExpand) && !unref(isFullScreen),
205
+ "hy-full-video-player-content": unref(isFullScreen)
206
206
  }])
207
207
  },
208
208
  [
@@ -471,7 +471,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
471
471
  placement: "top",
472
472
  trigger: "click",
473
473
  appendToBody: false,
474
- "popper-class": "popover-speed"
474
+ "popper-class": "hy-video-player-popover-speed"
475
475
  }, {
476
476
  reference: withCtx(() => [
477
477
  createElementVNode(
@@ -509,7 +509,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
509
509
  placement: "top",
510
510
  appendToBody: false,
511
511
  trigger: "click",
512
- "popper-class": "popover-volume-slider"
512
+ "popper-class": "hy-video-player-popover-volume-slider"
513
513
  }, {
514
514
  reference: withCtx(() => [
515
515
  createElementVNode("div", { class: "flex items-center justify-center" }, [
@@ -530,7 +530,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
530
530
  ])
531
531
  ]),
532
532
  default: withCtx(() => [
533
- createElementVNode("div", { class: "flex items-center justify-center" }, [
533
+ createElementVNode("div", { class: "flex items-center justify-center pt-3" }, [
534
534
  createVNode(unref(ElSlider), {
535
535
  modelValue: unref(volumeValue),
536
536
  "onUpdate:modelValue": ($event) => isRef(volumeValue) ? volumeValue.value = $event : null,
@@ -20,7 +20,8 @@ export { HyVideoPlayer } from './hyVideoPlayer/index.mjs';
20
20
  export { HyAudioPlayer } from './hyAudioPlayer/index.mjs';
21
21
  export { ElInput, HyInput } from './hyInput/index.mjs';
22
22
  export { ElTimePicker, HyTimePicker } from './hyTimePicker/index.mjs';
23
- export { HyTableForm } from './hyTableForm/index.mjs';
24
- export { useAppForm } from './hyForm/js/useAppForm.mjs';
25
- export { useAppSearch } from './hySearch/js/useAppSearch.mjs';
23
+ export { HyBatchTableForm, HyTableForm } from './hyTableForm/index.mjs';
24
+ export { resetAppFormValue, useAppForm } from './hyForm/js/useAppForm.mjs';
25
+ export { resetAppSearchValue, useAppSearch } from './hySearch/js/useAppSearch.mjs';
26
26
  export { useAppTable } from './hyTable/js/useAppTable.mjs';
27
+ export { useAppTableForm } from './hyTableForm/js/useAppTableForm.mjs';
package/es/index.mjs CHANGED
@@ -4,6 +4,7 @@ export { ElInput, HyInput } from './components/hyInput/index.mjs';
4
4
  export { ElTimePicker, HyTimePicker } from './components/hyTimePicker/index.mjs';
5
5
  export { ElTooltip, HyTooltip } from './components/hyTooltip/index.mjs';
6
6
  export { HyAudioPlayer } from './components/hyAudioPlayer/index.mjs';
7
+ export { HyBatchTableForm, HyTableForm } from './components/hyTableForm/index.mjs';
7
8
  export { HyButton } from './components/hyButton/index.mjs';
8
9
  export { HyConfigProvider } from './components/hyConfigProvider/index.mjs';
9
10
  export { HyConfirmDialog } from './components/hyConfirmDialog/index.mjs';
@@ -18,7 +19,6 @@ export { HyNoPermissionsMap } from './components/hyNoPermissionsMap/index.mjs';
18
19
  export { HyOrgCascader } from './components/hyOrgCascader/index.mjs';
19
20
  export { HySearch } from './components/hySearch/index.mjs';
20
21
  export { HyTable } from './components/hyTable/index.mjs';
21
- export { HyTableForm } from './components/hyTableForm/index.mjs';
22
22
  export { HyTree } from './components/hyTree/index.mjs';
23
23
  export { HyUserAvatar } from './components/hyUserAvatar/index.mjs';
24
24
  export { HyVideoPlayer } from './components/hyVideoPlayer/index.mjs';
@@ -40,9 +40,10 @@ export { localTooltipConfigKey, useTooltipConfig } from './hooks/useTooltipConfi
40
40
  export { localUserAvatarMapKey, useUserAvatarMap } from './hooks/useUserAvatarMap.mjs';
41
41
  export { localVideoPlayerConfigKey, useVideoPlayerConfig } from './hooks/useVideoPlayerConfig.mjs';
42
42
  export { parseRem, pxTorem, remToPx, vwToPx } from './utils/adaptive.mjs';
43
- export { useAppForm } from './components/hyForm/js/useAppForm.mjs';
44
- export { useAppSearch } from './components/hySearch/js/useAppSearch.mjs';
43
+ export { resetAppFormValue, useAppForm } from './components/hyForm/js/useAppForm.mjs';
44
+ export { resetAppSearchValue, useAppSearch } from './components/hySearch/js/useAppSearch.mjs';
45
45
  export { useAppTable } from './components/hyTable/js/useAppTable.mjs';
46
+ export { useAppTableForm } from './components/hyTableForm/js/useAppTableForm.mjs';
46
47
  export { useMixins } from './hooks/useMixins.mjs';
47
48
  export { useResizeHandler } from './hooks/useResizeHandler.mjs';
48
49
 
@@ -0,0 +1,8 @@
1
+ export default {
2
+ id: 'hy-icon-dispatch-linear-map-treelist',
3
+ symbol: `<symbol id="hy-icon-dispatch-linear-map-treelist" viewBox="0 0 24 24">
4
+ <g id="hy-icon-dispatch-linear-map-treelist-map_Treelist" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
+ <path d="M6,17 C6.2652165,17 6.51957041,17.1053568 6.70710679,17.2928932 C6.89464317,17.4804296 7,17.7347835 7,18 L7,22 C7,22.5522847 6.55228475,23 6,23 L2,23 C1.73478353,23 1.48042961,22.8946432 1.29289323,22.7071068 C1.10535684,22.5195704 1,22.2652165 1,22 L1,18 C1,17.7347835 1.10535683,17.4804296 1.29289322,17.2928932 C1.4804296,17.1053568 1.73478352,17 2,17 Z M22,17 C22.2652165,17 22.5195704,17.1053568 22.7071068,17.2928932 C22.8946432,17.4804296 23,17.7347835 23,18 L23,22 C23,22.2652165 22.8946432,22.5195704 22.7071068,22.7071068 C22.5195704,22.8946432 22.2652165,23 22,23 L10,23 C9.44771525,23 9,22.5522847 9,22 L9,18 C9,17.7347835 9.10535683,17.4804296 9.29289321,17.2928932 C9.48042958,17.1053568 9.7347835,17 10,17 Z M5.34927973,18.7358372 L2.66437569,18.7358372 L2.66437569,21.363017 L5.34927973,21.363017 L5.34927973,18.7358372 Z M21.3962862,18.7358372 L10.6909198,18.7358372 L10.6909198,21.363017 L21.3962862,21.363017 L21.3962862,18.7358372 Z M6,9 C6.2652165,9 6.51957041,9.10535684 6.70710679,9.29289323 C6.89464317,9.48042961 7,9.73478353 7,10 L7,14 C7,14.5522847 6.55228475,15 6,15 L2,15 C1.73478353,15 1.48042961,14.8946432 1.29289323,14.7071068 C1.10535684,14.5195704 1,14.2652165 1,14 L1,10 C1,9.73478352 1.10535683,9.4804296 1.29289322,9.29289322 C1.4804296,9.10535683 1.73478352,9 2,9 Z M22,9 C22.2652165,9 22.5195704,9.10535683 22.7071068,9.29289322 C22.8946432,9.4804296 23,9.73478352 23,10 L23,14 C23,14.2652165 22.8946432,14.5195704 22.7071068,14.7071068 C22.5195704,14.8946432 22.2652165,15 22,15 L10,15 C9.44771525,15 9,14.5522847 9,14 L9,10 C9,9.73478353 9.10535683,9.48042961 9.29289321,9.29289323 C9.48042958,9.10535684 9.7347835,9 10,9 Z M5.34927973,10.7358372 L2.66437569,10.7358372 L2.66437569,13.363017 L5.34927973,13.363017 L5.34927973,10.7358372 Z M21.3962862,10.7358372 L10.6909198,10.7358372 L10.6909198,13.363017 L21.3962862,13.363017 L21.3962862,10.7358372 Z M6,1 C6.2652165,1 6.51957041,1.10535684 6.70710679,1.29289323 C6.89464317,1.48042961 7,1.73478353 7,2 L7,6 C7,6.55228475 6.55228475,7 6,7 L2,7 C1.73478353,7 1.48042961,6.89464317 1.29289323,6.70710679 C1.10535684,6.51957041 1,6.2652165 1,6 L1,2 C1,1.73478352 1.10535683,1.4804296 1.29289322,1.29289322 C1.4804296,1.10535683 1.73478352,1 2,1 Z M22,1 C22.2652165,1 22.5195704,1.10535683 22.7071068,1.29289322 C22.8946432,1.4804296 23,1.73478352 23,2 L23,6 C23,6.2652165 22.8946432,6.51957041 22.7071068,6.70710679 C22.5195704,6.89464317 22.2652165,7 22,7 L10,7 C9.44771525,7 9,6.55228475 9,6 L9,2 C9,1.73478353 9.10535683,1.48042961 9.29289321,1.29289323 C9.48042958,1.10535684 9.7347835,1 10,1 Z M5.34927973,2.7358372 L2.66437569,2.7358372 L2.66437569,5.36301704 L5.34927973,5.36301704 L5.34927973,2.7358372 Z M21.3962862,2.7358372 L10.6909198,2.7358372 L10.6909198,5.36301704 L21.3962862,5.36301704 L21.3962862,2.7358372 Z" id="hy-icon-dispatch-linear-map-treelist-形状结合" fill="#FFFFFF" fill-rule="nonzero"></path>
6
+ </g>
7
+ </symbol>`,
8
+ };