@hbdlzy/ui-core 0.1.7 → 0.1.9

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 (74) hide show
  1. package/README.md +30 -2
  2. package/components.manifest.json +16 -2
  3. package/dist/components/BaseTable/BaseTable.types.d.ts +6 -1
  4. package/dist/components/OutlinedCascader/OutlinedCascader.vue.d.ts +1 -1
  5. package/dist/components/OutlinedDatePicker/OutlinedDatePicker.vue.d.ts +3 -3
  6. package/dist/components/OutlinedSelect/OutlinedSelect.vue.d.ts +4 -4
  7. package/dist/components/OutlinedTimePicker/OutlinedTimePicker.vue.d.ts +6 -6
  8. package/dist/components/OutlinedTreeSelect/OutlinedTreeSelect.vue.d.ts +4 -4
  9. package/dist/index.cjs +5 -5
  10. package/dist/index.d.ts +50 -13
  11. package/dist/index.js +531 -147
  12. package/dist/ripple/index.cjs +42 -0
  13. package/dist/ripple/index.d.ts +8 -1
  14. package/dist/ripple/index.js +171 -0
  15. package/dist/style.css +1 -1
  16. package/package.json +17 -2
  17. package/src/components/BaseCard/BaseCard.types.d.ts +36 -0
  18. package/src/components/BaseCard/BaseCard.vue.d.ts +122 -0
  19. package/src/components/BaseCard/README.md +33 -0
  20. package/src/components/BaseCard/index.d.ts +3 -0
  21. package/src/components/BaseEChart/BaseEChart.types.d.ts +26 -0
  22. package/src/components/BaseEChart/BaseEChart.vue.d.ts +66 -0
  23. package/src/components/BaseEChart/README.md +33 -0
  24. package/src/components/BaseEChart/index.d.ts +3 -0
  25. package/src/components/BaseExportButton/BaseExportButton.types.d.ts +21 -0
  26. package/src/components/BaseExportButton/BaseExportButton.utils.d.ts +4 -0
  27. package/src/components/BaseExportButton/BaseExportButton.vue.d.ts +128 -0
  28. package/src/components/BaseExportButton/README.md +34 -0
  29. package/src/components/BaseExportButton/index.d.ts +5 -0
  30. package/src/components/BaseTable/BaseTable.types.d.ts +183 -0
  31. package/src/components/BaseTable/BaseTable.types.ts +15 -1
  32. package/src/components/BaseTable/BaseTable.vue +340 -111
  33. package/src/components/BaseTable/BaseTable.vue.d.ts +157 -0
  34. package/src/components/BaseTable/README.md +121 -2
  35. package/src/components/BaseTable/index.d.ts +3 -0
  36. package/src/components/OutlinedCascader/OutlinedCascader.types.d.ts +28 -0
  37. package/src/components/OutlinedCascader/OutlinedCascader.vue.d.ts +94 -0
  38. package/src/components/OutlinedCascader/README.md +34 -0
  39. package/src/components/OutlinedCascader/index.d.ts +3 -0
  40. package/src/components/OutlinedDatePicker/OutlinedDatePicker.types.d.ts +30 -0
  41. package/src/components/OutlinedDatePicker/OutlinedDatePicker.vue.d.ts +97 -0
  42. package/src/components/OutlinedDatePicker/README.md +34 -0
  43. package/src/components/OutlinedDatePicker/index.d.ts +3 -0
  44. package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.types.d.ts +29 -0
  45. package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.vue.d.ts +106 -0
  46. package/src/components/OutlinedDateTimePicker/README.md +33 -0
  47. package/src/components/OutlinedDateTimePicker/index.d.ts +3 -0
  48. package/src/components/OutlinedInput/OutlinedInput.types.d.ts +32 -0
  49. package/src/components/OutlinedInput/OutlinedInput.vue.d.ts +106 -0
  50. package/src/components/OutlinedInput/README.md +34 -0
  51. package/src/components/OutlinedInput/index.d.ts +3 -0
  52. package/src/components/OutlinedSelect/OutlinedSelect.types.d.ts +41 -0
  53. package/src/components/OutlinedSelect/OutlinedSelect.vue.d.ts +125 -0
  54. package/src/components/OutlinedSelect/README.md +34 -0
  55. package/src/components/OutlinedSelect/index.d.ts +3 -0
  56. package/src/components/OutlinedTimePicker/OutlinedTimePicker.types.d.ts +31 -0
  57. package/src/components/OutlinedTimePicker/OutlinedTimePicker.vue.d.ts +103 -0
  58. package/src/components/OutlinedTimePicker/README.md +33 -0
  59. package/src/components/OutlinedTimePicker/index.d.ts +3 -0
  60. package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.types.d.ts +49 -0
  61. package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.vue.d.ts +146 -0
  62. package/src/components/OutlinedTreeSelect/README.md +34 -0
  63. package/src/components/OutlinedTreeSelect/index.d.ts +3 -0
  64. package/src/components/SvgIcon/README.md +33 -0
  65. package/src/components/SvgIcon/SvgIcon.types.d.ts +6 -0
  66. package/src/components/SvgIcon/SvgIcon.vue.d.ts +32 -0
  67. package/src/components/SvgIcon/index.d.ts +3 -0
  68. package/src/echarts/index.d.ts +9 -0
  69. package/src/excel/exportExcel.d.ts +18 -0
  70. package/src/index.d.ts +66 -0
  71. package/src/index.ts +78 -13
  72. package/src/ripple/README.md +160 -0
  73. package/src/ripple/index.d.ts +9 -0
  74. package/src/ripple/index.ts +15 -1
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
+ import { defineComponent, useSlots, computed, openBlock, createElementBlock, normalizeStyle, createElementVNode, createCommentVNode, renderSlot, toDisplayString, normalizeClass, ref, reactive, watch, onMounted, onBeforeUnmount, resolveComponent, resolveDirective, createVNode, unref, withCtx, withDirectives, createBlock, Fragment, renderList, createSlots, createTextVNode, mergeProps, withModifiers, Teleport, withKeys, shallowRef, nextTick, onUnmounted, useAttrs, normalizeProps, guardReactiveProps } from "vue";
1
2
  import * as echarts from "echarts";
2
3
  export { echarts };
3
- import { defineComponent, useSlots, computed, openBlock, createElementBlock, normalizeStyle, createElementVNode, createCommentVNode, renderSlot, toDisplayString, normalizeClass, ref, reactive, watch, onMounted, onBeforeUnmount, resolveComponent, resolveDirective, createVNode, withDirectives, createBlock, withCtx, Fragment, renderList, createSlots, createTextVNode, mergeProps, unref, withModifiers, Teleport, withKeys, shallowRef, nextTick, onUnmounted, useAttrs, normalizeProps, guardReactiveProps } from "vue";
4
4
  import { ElMessage } from "element-plus";
5
5
  import ExcelJS from "exceljs";
6
6
  import { saveAs } from "file-saver";
@@ -66,7 +66,7 @@ const RIPPLE_STYLE = `
66
66
  }
67
67
  `;
68
68
  const noop = () => void 0;
69
- function installRipple() {
69
+ function installRipple(_app) {
70
70
  if (!canUseDOM()) {
71
71
  return noop;
72
72
  }
@@ -95,6 +95,9 @@ function uninstallRipple() {
95
95
  const rippleWindow = window;
96
96
  (_a = rippleWindow[HBDL_RIPPLE_KEY]) == null ? void 0 : _a.teardown();
97
97
  }
98
+ const Ripple = {
99
+ install: installRipple
100
+ };
98
101
  function canUseDOM() {
99
102
  return typeof window !== "undefined" && typeof document !== "undefined";
100
103
  }
@@ -340,6 +343,182 @@ const _sfc_main$b = defineComponent({
340
343
  }
341
344
  });
342
345
  var BaseCard = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-6bfddf1c"]]);
346
+ var zh_cn_default = {
347
+ name: "zh-cn",
348
+ el: {
349
+ breadcrumb: { label: "\u9762\u5305\u5C51" },
350
+ colorpicker: {
351
+ confirm: "\u786E\u5B9A",
352
+ clear: "\u6E05\u7A7A",
353
+ defaultLabel: "\u989C\u8272\u9009\u62E9\u5668",
354
+ description: "\u5F53\u524D\u989C\u8272 {color}\uFF0C\u6309 Enter \u952E\u9009\u62E9\u65B0\u989C\u8272",
355
+ alphaLabel: "\u9009\u62E9\u900F\u660E\u5EA6\u7684\u503C",
356
+ alphaDescription: "\u900F\u660E\u5EA6 {alpha}, \u5F53\u524D\u989C\u8272 {color}",
357
+ hueLabel: "\u9009\u62E9\u8272\u76F8\u503C",
358
+ hueDescription: "\u8272\u76F8 {hue}, \u5F53\u524D\u989C\u8272 {color}",
359
+ svLabel: "\u9009\u62E9\u9971\u548C\u5EA6\u4E0E\u660E\u5EA6\u7684\u503C",
360
+ svDescription: "\u9971\u548C\u5EA6 {saturation}, \u660E\u5EA6 {brightness}, \u5F53\u524D\u989C\u8272 {color}",
361
+ predefineDescription: "\u9009\u62E9 {value} \u4F5C\u4E3A\u989C\u8272"
362
+ },
363
+ datepicker: {
364
+ now: "\u6B64\u523B",
365
+ today: "\u4ECA\u5929",
366
+ cancel: "\u53D6\u6D88",
367
+ clear: "\u6E05\u7A7A",
368
+ confirm: "\u786E\u5B9A",
369
+ dateTablePrompt: "\u4F7F\u7528\u65B9\u5411\u952E\u4E0E Enter \u952E\u53EF\u9009\u62E9\u65E5\u671F",
370
+ monthTablePrompt: "\u4F7F\u7528\u65B9\u5411\u952E\u4E0E Enter \u952E\u53EF\u9009\u62E9\u6708\u4EFD",
371
+ yearTablePrompt: "\u4F7F\u7528\u65B9\u5411\u952E\u4E0E Enter \u952E\u53EF\u9009\u62E9\u5E74\u4EFD",
372
+ selectedDate: "\u5DF2\u9009\u65E5\u671F",
373
+ selectDate: "\u9009\u62E9\u65E5\u671F",
374
+ selectTime: "\u9009\u62E9\u65F6\u95F4",
375
+ startDate: "\u5F00\u59CB\u65E5\u671F",
376
+ startTime: "\u5F00\u59CB\u65F6\u95F4",
377
+ endDate: "\u7ED3\u675F\u65E5\u671F",
378
+ endTime: "\u7ED3\u675F\u65F6\u95F4",
379
+ prevYear: "\u524D\u4E00\u5E74",
380
+ nextYear: "\u540E\u4E00\u5E74",
381
+ prevMonth: "\u4E0A\u4E2A\u6708",
382
+ nextMonth: "\u4E0B\u4E2A\u6708",
383
+ year: "\u5E74",
384
+ month1: "1 \u6708",
385
+ month2: "2 \u6708",
386
+ month3: "3 \u6708",
387
+ month4: "4 \u6708",
388
+ month5: "5 \u6708",
389
+ month6: "6 \u6708",
390
+ month7: "7 \u6708",
391
+ month8: "8 \u6708",
392
+ month9: "9 \u6708",
393
+ month10: "10 \u6708",
394
+ month11: "11 \u6708",
395
+ month12: "12 \u6708",
396
+ weeks: {
397
+ sun: "\u65E5",
398
+ mon: "\u4E00",
399
+ tue: "\u4E8C",
400
+ wed: "\u4E09",
401
+ thu: "\u56DB",
402
+ fri: "\u4E94",
403
+ sat: "\u516D"
404
+ },
405
+ weeksFull: {
406
+ sun: "\u661F\u671F\u65E5",
407
+ mon: "\u661F\u671F\u4E00",
408
+ tue: "\u661F\u671F\u4E8C",
409
+ wed: "\u661F\u671F\u4E09",
410
+ thu: "\u661F\u671F\u56DB",
411
+ fri: "\u661F\u671F\u4E94",
412
+ sat: "\u661F\u671F\u516D"
413
+ },
414
+ months: {
415
+ jan: "\u4E00\u6708",
416
+ feb: "\u4E8C\u6708",
417
+ mar: "\u4E09\u6708",
418
+ apr: "\u56DB\u6708",
419
+ may: "\u4E94\u6708",
420
+ jun: "\u516D\u6708",
421
+ jul: "\u4E03\u6708",
422
+ aug: "\u516B\u6708",
423
+ sep: "\u4E5D\u6708",
424
+ oct: "\u5341\u6708",
425
+ nov: "\u5341\u4E00\u6708",
426
+ dec: "\u5341\u4E8C\u6708"
427
+ }
428
+ },
429
+ inputNumber: {
430
+ decrease: "\u51CF\u5C11\u6570\u503C",
431
+ increase: "\u589E\u52A0\u6570\u503C"
432
+ },
433
+ select: {
434
+ loading: "\u52A0\u8F7D\u4E2D",
435
+ noMatch: "\u65E0\u5339\u914D\u6570\u636E",
436
+ noData: "\u65E0\u6570\u636E",
437
+ placeholder: "\u8BF7\u9009\u62E9"
438
+ },
439
+ mention: { loading: "\u52A0\u8F7D\u4E2D" },
440
+ dropdown: { toggleDropdown: "\u5207\u6362\u4E0B\u62C9\u9009\u9879" },
441
+ cascader: {
442
+ noMatch: "\u65E0\u5339\u914D\u6570\u636E",
443
+ loading: "\u52A0\u8F7D\u4E2D",
444
+ placeholder: "\u8BF7\u9009\u62E9",
445
+ noData: "\u6682\u65E0\u6570\u636E"
446
+ },
447
+ pagination: {
448
+ goto: "\u524D\u5F80",
449
+ pagesize: "\u6761/\u9875",
450
+ total: "\u5171 {total} \u6761",
451
+ pageClassifier: "\u9875",
452
+ page: "\u9875",
453
+ prev: "\u4E0A\u4E00\u9875",
454
+ next: "\u4E0B\u4E00\u9875",
455
+ currentPage: "\u7B2C {pager} \u9875",
456
+ prevPages: "\u5411\u524D {pager} \u9875",
457
+ nextPages: "\u5411\u540E {pager} \u9875",
458
+ deprecationWarning: "\u4F60\u4F7F\u7528\u4E86\u4E00\u4E9B\u5DF2\u88AB\u5E9F\u5F03\u7684\u7528\u6CD5\uFF0C\u8BF7\u53C2\u8003 el-pagination \u7684\u5B98\u65B9\u6587\u6863"
459
+ },
460
+ dialog: { close: "\u5173\u95ED\u6B64\u5BF9\u8BDD\u6846" },
461
+ drawer: { close: "\u5173\u95ED\u6B64\u5BF9\u8BDD\u6846" },
462
+ messagebox: {
463
+ title: "\u63D0\u793A",
464
+ confirm: "\u786E\u5B9A",
465
+ cancel: "\u53D6\u6D88",
466
+ error: "\u8F93\u5165\u7684\u6570\u636E\u4E0D\u5408\u6CD5!",
467
+ close: "\u5173\u95ED\u6B64\u5BF9\u8BDD\u6846"
468
+ },
469
+ upload: {
470
+ deleteTip: "\u6309 Delete \u952E\u53EF\u5220\u9664",
471
+ delete: "\u5220\u9664",
472
+ preview: "\u67E5\u770B\u56FE\u7247",
473
+ continue: "\u7EE7\u7EED\u4E0A\u4F20"
474
+ },
475
+ slider: {
476
+ defaultLabel: "\u6ED1\u5757\u4ECB\u4E8E {min} \u81F3 {max}",
477
+ defaultRangeStartLabel: "\u9009\u62E9\u8D77\u59CB\u503C",
478
+ defaultRangeEndLabel: "\u9009\u62E9\u7ED3\u675F\u503C"
479
+ },
480
+ table: {
481
+ emptyText: "\u6682\u65E0\u6570\u636E",
482
+ confirmFilter: "\u7B5B\u9009",
483
+ resetFilter: "\u91CD\u7F6E",
484
+ clearFilter: "\u5168\u90E8",
485
+ sumText: "\u5408\u8BA1",
486
+ selectAllLabel: "\u9009\u62E9\u6240\u6709\u884C",
487
+ selectRowLabel: "\u9009\u62E9\u5F53\u524D\u884C",
488
+ expandRowLabel: "\u5C55\u5F00\u5F53\u524D\u884C",
489
+ collapseRowLabel: "\u6536\u8D77\u5F53\u524D\u884C",
490
+ sortLabel: "\u6309 {column} \u6392\u5E8F",
491
+ filterLabel: "\u6309 {column} \u8FC7\u6EE4"
492
+ },
493
+ tag: { close: "\u5173\u95ED\u6B64\u6807\u7B7E" },
494
+ tour: {
495
+ next: "\u4E0B\u4E00\u6B65",
496
+ previous: "\u4E0A\u4E00\u6B65",
497
+ finish: "\u7ED3\u675F\u5BFC\u89C8",
498
+ close: "\u5173\u95ED\u6B64\u5BF9\u8BDD\u6846"
499
+ },
500
+ tree: { emptyText: "\u6682\u65E0\u6570\u636E" },
501
+ transfer: {
502
+ noMatch: "\u65E0\u5339\u914D\u6570\u636E",
503
+ noData: "\u65E0\u6570\u636E",
504
+ titles: ["\u5217\u8868 1", "\u5217\u8868 2"],
505
+ filterPlaceholder: "\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9",
506
+ noCheckedFormat: "\u5171 {total} \u9879",
507
+ hasCheckedFormat: "\u5DF2\u9009 {checked}/{total} \u9879"
508
+ },
509
+ image: { error: "\u52A0\u8F7D\u5931\u8D25" },
510
+ pageHeader: { title: "\u8FD4\u56DE" },
511
+ popconfirm: {
512
+ confirmButtonText: "\u786E\u5B9A",
513
+ cancelButtonText: "\u53D6\u6D88"
514
+ },
515
+ carousel: {
516
+ leftArrow: "\u4E0A\u4E00\u5F20\u5E7B\u706F\u7247",
517
+ rightArrow: "\u4E0B\u4E00\u5F20\u5E7B\u706F\u7247",
518
+ indicator: "\u5E7B\u706F\u7247\u5207\u6362\u81F3\u7D22\u5F15 {index}"
519
+ }
520
+ }
521
+ };
343
522
  var SvgIcon_vue_vue_type_style_index_0_scoped_true_lang = "";
344
523
  const _hoisted_1$8 = ["aria-hidden", "aria-label"];
345
524
  const _hoisted_2$8 = ["aria-hidden", "aria-label"];
@@ -424,52 +603,36 @@ const _hoisted_17 = {
424
603
  key: 0,
425
604
  class: "base-table__header-select"
426
605
  };
427
- const _hoisted_18 = ["onClick"];
428
- const _hoisted_19 = {
429
- key: 0,
430
- class: "base-table__header-select-tags"
431
- };
432
- const _hoisted_20 = {
433
- key: 0,
434
- class: "base-table__header-select-tag base-table__header-select-tag--count"
435
- };
436
- const _hoisted_21 = {
437
- key: 0,
438
- class: "base-table__header-select-options"
439
- };
440
- const _hoisted_22 = ["onClick"];
441
- const _hoisted_23 = ["disabled", "onClick"];
442
- const _hoisted_24 = { class: "base-table__header-select-option-label" };
443
- const _hoisted_25 = {
606
+ const _hoisted_18 = {
444
607
  key: 1,
445
608
  class: "base-table__header-cascader"
446
609
  };
447
- const _hoisted_26 = ["onClick"];
448
- const _hoisted_27 = {
610
+ const _hoisted_19 = ["onClick"];
611
+ const _hoisted_20 = {
449
612
  key: 0,
450
613
  class: "base-table__header-cascader-panel"
451
614
  };
452
- const _hoisted_28 = ["disabled", "onClick"];
453
- const _hoisted_29 = { class: "base-table__header-cascader-label" };
454
- const _hoisted_30 = {
615
+ const _hoisted_21 = ["disabled", "onClick"];
616
+ const _hoisted_22 = { class: "base-table__header-cascader-label" };
617
+ const _hoisted_23 = {
455
618
  key: 0,
456
619
  class: "base-table__header-cascader-arrow",
457
620
  "aria-hidden": "true"
458
621
  };
459
- const _hoisted_31 = ["value", "placeholder", "onInput", "onKeyup"];
460
- const _hoisted_32 = { class: "base-table__header-search-footer" };
461
- const _hoisted_33 = {
622
+ const _hoisted_24 = ["value", "placeholder", "onInput", "onKeyup"];
623
+ const _hoisted_25 = { class: "base-table__header-search-footer" };
624
+ const _hoisted_26 = {
462
625
  key: 0,
463
626
  class: "base-table__actions"
464
627
  };
465
- const _hoisted_34 = {
628
+ const _hoisted_27 = {
466
629
  key: 2,
467
630
  class: "base-table__tags"
468
631
  };
469
- const _hoisted_35 = { key: 1 };
470
- const _hoisted_36 = ["innerHTML"];
471
- const _hoisted_37 = ["onClick"];
472
- const _hoisted_38 = {
632
+ const _hoisted_28 = { key: 1 };
633
+ const _hoisted_29 = ["innerHTML"];
634
+ const _hoisted_30 = ["onClick"];
635
+ const _hoisted_31 = {
473
636
  key: 6,
474
637
  class: "base-table__text"
475
638
  };
@@ -534,6 +697,8 @@ const _sfc_main$9 = defineComponent({
534
697
  const headerSearchCascaderActivePaths = reactive({});
535
698
  const headerSearchTriggerRects = reactive({});
536
699
  const headerSearchTriggerRefs = ref({});
700
+ const headerSearchPanelRefs = ref({});
701
+ const headerSearchPositionTick = ref(0);
537
702
  const baseTableIconPrefix = `base-table-icon-${++baseTableIconSeed}`;
538
703
  let headerSearchPositionFrame = 0;
539
704
  const sortState = reactive({
@@ -593,6 +758,7 @@ const _sfc_main$9 = defineComponent({
593
758
  { deep: true }
594
759
  );
595
760
  onMounted(() => {
761
+ document.addEventListener("click", handleDocumentClick, true);
596
762
  window.addEventListener("scroll", scheduleHeaderSearchPositionUpdate, true);
597
763
  window.addEventListener("resize", scheduleHeaderSearchPositionUpdate);
598
764
  if (props.request && props.autoLoad) {
@@ -604,6 +770,7 @@ const _sfc_main$9 = defineComponent({
604
770
  }
605
771
  });
606
772
  onBeforeUnmount(() => {
773
+ document.removeEventListener("click", handleDocumentClick, true);
607
774
  window.removeEventListener("scroll", scheduleHeaderSearchPositionUpdate, true);
608
775
  window.removeEventListener("resize", scheduleHeaderSearchPositionUpdate);
609
776
  if (headerSearchPositionFrame) {
@@ -692,6 +859,9 @@ const _sfc_main$9 = defineComponent({
692
859
  selectionRows.value = value;
693
860
  emit("selection-change", value);
694
861
  }
862
+ function resolveRowSelectable(row, index) {
863
+ return props.rowSelectable ? props.rowSelectable(row, index) : true;
864
+ }
695
865
  function handleSortChange(payload) {
696
866
  const column = props.columns.find((item) => String(item.prop || "") === String(payload.prop || ""));
697
867
  sortState.prop = payload.prop;
@@ -789,6 +959,19 @@ const _sfc_main$9 = defineComponent({
789
959
  setHeaderSearchTriggerRef(instance, column);
790
960
  };
791
961
  }
962
+ function setHeaderSearchPanelRef(instance, column) {
963
+ const stateKey = getHeaderSearchStateKey(column);
964
+ if (!(instance instanceof HTMLElement)) {
965
+ delete headerSearchPanelRefs.value[stateKey];
966
+ return;
967
+ }
968
+ headerSearchPanelRefs.value[stateKey] = instance;
969
+ }
970
+ function bindHeaderSearchPanel(column) {
971
+ return (instance) => {
972
+ setHeaderSearchPanelRef(instance, column);
973
+ };
974
+ }
792
975
  function isHeaderSearchVisible(column) {
793
976
  return Boolean(headerSearchVisible[getHeaderSearchStateKey(column)]);
794
977
  }
@@ -799,6 +982,7 @@ const _sfc_main$9 = defineComponent({
799
982
  closeAllHeaderSearch();
800
983
  updateHeaderSearchTriggerRect(column);
801
984
  syncHeaderSearchCascaderActivePath(column);
985
+ scheduleHeaderSearchPositionUpdate();
802
986
  }
803
987
  headerSearchVisible[stateKey] = nextVisible;
804
988
  headerSearchSelectOpen[stateKey] = false;
@@ -809,6 +993,15 @@ const _sfc_main$9 = defineComponent({
809
993
  headerSearchSelectOpen[key] = false;
810
994
  });
811
995
  }
996
+ function handleDocumentClick(event) {
997
+ const target = event.target;
998
+ if (target instanceof Element) {
999
+ if (target.closest(`[data-base-table-id="${baseTableIconPrefix}"].base-table__header-search-panel`) || target.closest(`[data-base-table-id="${baseTableIconPrefix}"].base-table__header-icon`)) {
1000
+ return;
1001
+ }
1002
+ }
1003
+ closeAllHeaderSearch();
1004
+ }
812
1005
  function updateHeaderSearchTriggerRect(column) {
813
1006
  var _a2;
814
1007
  const stateKey = getHeaderSearchStateKey(column);
@@ -830,28 +1023,67 @@ const _sfc_main$9 = defineComponent({
830
1023
  }
831
1024
  headerSearchPositionFrame = window.requestAnimationFrame(() => {
832
1025
  headerSearchPositionFrame = 0;
1026
+ headerSearchPositionTick.value += 1;
833
1027
  updateVisibleHeaderSearchPosition();
834
1028
  });
835
1029
  }
836
1030
  function getHeaderSearchPanelStyle(column) {
1031
+ headerSearchPositionTick.value;
837
1032
  const stateKey = getHeaderSearchStateKey(column);
838
1033
  const triggerRect = headerSearchTriggerRects[stateKey];
839
- const width = toCssValue(getHeaderSearchWidth(column)) || "280px";
1034
+ const panelWidth = getHeaderSearchPanelWidth(column);
1035
+ const style = {
1036
+ width: panelWidth.width,
1037
+ minWidth: panelWidth.minWidth,
1038
+ maxWidth: panelWidth.maxWidth
1039
+ };
840
1040
  if (!triggerRect) {
841
- return {
842
- width
843
- };
1041
+ return style;
844
1042
  }
845
- const panelWidth = Number.parseFloat(String(getHeaderSearchWidth(column))) || 280;
846
- const maxLeft = Math.max(8, window.innerWidth - panelWidth - 8);
847
- const left = Math.min(maxLeft, Math.max(8, triggerRect.right - panelWidth));
1043
+ const maxLeft = Math.max(8, window.innerWidth - panelWidth.positionWidth - 8);
1044
+ const left = Math.min(maxLeft, Math.max(8, triggerRect.right - panelWidth.positionWidth));
848
1045
  const top = triggerRect.bottom + 8;
849
1046
  return {
850
- width,
1047
+ ...style,
851
1048
  left: `${left}px`,
852
1049
  top: `${top}px`
853
1050
  };
854
1051
  }
1052
+ function getHeaderSearchPanelWidth(column) {
1053
+ const rawWidth = getHeaderSearchWidth(column);
1054
+ const viewportMaxWidth = Math.max(220, window.innerWidth - 16);
1055
+ const renderedWidth = getRenderedHeaderSearchPanelWidth(column);
1056
+ if (rawWidth === "auto") {
1057
+ const positionWidth2 = Math.min(renderedWidth || getHeaderSearchAutoWidth(column), viewportMaxWidth);
1058
+ return {
1059
+ width: "max-content",
1060
+ minWidth: "280px",
1061
+ maxWidth: `${viewportMaxWidth}px`,
1062
+ positionWidth: positionWidth2
1063
+ };
1064
+ }
1065
+ const width = toCssValue(rawWidth) || "280px";
1066
+ const positionWidth = Math.min(Number.parseFloat(String(rawWidth)) || 280, viewportMaxWidth);
1067
+ return {
1068
+ width,
1069
+ minWidth: width,
1070
+ maxWidth: `${viewportMaxWidth}px`,
1071
+ positionWidth
1072
+ };
1073
+ }
1074
+ function getRenderedHeaderSearchPanelWidth(column) {
1075
+ const stateKey = getHeaderSearchStateKey(column);
1076
+ const panelElement = headerSearchPanelRefs.value[stateKey];
1077
+ return panelElement ? panelElement.getBoundingClientRect().width : 0;
1078
+ }
1079
+ function getHeaderSearchAutoWidth(column) {
1080
+ var _a2;
1081
+ if (isHeaderSearchRange(column)) {
1082
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1083
+ return type === "daterange" || type === "timerange" ? 420 : 560;
1084
+ }
1085
+ return 280;
1086
+ }
855
1087
  function getHeaderSearchValue(column) {
856
1088
  const stateKey = getHeaderSearchStateKey(column);
857
1089
  const value = headerSearchValues[stateKey];
@@ -882,6 +1114,24 @@ const _sfc_main$9 = defineComponent({
882
1114
  var _a2;
883
1115
  return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type) === "cascader";
884
1116
  }
1117
+ function isHeaderSearchDatePicker(column) {
1118
+ var _a2;
1119
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1120
+ return type === "date" || type === "daterange" || type === "datetime" || type === "datetimerange";
1121
+ }
1122
+ function isHeaderSearchTimePicker(column) {
1123
+ var _a2;
1124
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1125
+ return type === "time" || type === "timerange";
1126
+ }
1127
+ function isHeaderSearchPicker(column) {
1128
+ return isHeaderSearchDatePicker(column) || isHeaderSearchTimePicker(column);
1129
+ }
1130
+ function isHeaderSearchRange(column) {
1131
+ var _a2;
1132
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1133
+ return type === "daterange" || type === "datetimerange" || type === "timerange";
1134
+ }
885
1135
  function isHeaderSearchChoice(column) {
886
1136
  return isHeaderSearchSelect(column) || isHeaderSearchCascader(column);
887
1137
  }
@@ -889,6 +1139,14 @@ const _sfc_main$9 = defineComponent({
889
1139
  var _a2;
890
1140
  return isHeaderSearchSelect(column) && ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.multiple) === true;
891
1141
  }
1142
+ function isHeaderSearchClearable(column) {
1143
+ var _a2;
1144
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.clearable) !== false;
1145
+ }
1146
+ function isHeaderSearchFilterable(column) {
1147
+ var _a2;
1148
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.filterable) === true;
1149
+ }
892
1150
  function getHeaderSearchIconName(column) {
893
1151
  const iconName = isHeaderSearchChoice(column) ? "select" : "search";
894
1152
  return hasHeaderSearchValue(column) ? `${iconName}-y` : iconName;
@@ -920,9 +1178,53 @@ const _sfc_main$9 = defineComponent({
920
1178
  var _a2;
921
1179
  return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.placeholder) || (isHeaderSearchChoice(column) ? "\u8BF7\u9009\u62E9" : "\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9");
922
1180
  }
1181
+ function getHeaderSearchStartPlaceholder(column) {
1182
+ var _a2;
1183
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.startPlaceholder) || "\u5F00\u59CB\u65F6\u95F4";
1184
+ }
1185
+ function getHeaderSearchEndPlaceholder(column) {
1186
+ var _a2;
1187
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.endPlaceholder) || "\u7ED3\u675F\u65F6\u95F4";
1188
+ }
1189
+ function getHeaderSearchRangeSeparator(column) {
1190
+ var _a2;
1191
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.rangeSeparator) || "\u81F3";
1192
+ }
1193
+ function getHeaderSearchPickerType(column) {
1194
+ var _a2;
1195
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1196
+ if (type === "datetime" || type === "datetimerange") {
1197
+ return type;
1198
+ }
1199
+ return type === "daterange" ? "daterange" : "date";
1200
+ }
1201
+ function getHeaderSearchDateFormat(column) {
1202
+ var _a2, _b2;
1203
+ const config = getHeaderSearchConfig(column);
1204
+ if (config == null ? void 0 : config.format) {
1205
+ return config.format;
1206
+ }
1207
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type) === "datetime" || ((_b2 = getHeaderSearchConfig(column)) == null ? void 0 : _b2.type) === "datetimerange" ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD";
1208
+ }
1209
+ function getHeaderSearchDateValueFormat(column) {
1210
+ var _a2;
1211
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.valueFormat) || getHeaderSearchDateFormat(column);
1212
+ }
1213
+ function getHeaderSearchTimeFormat(column) {
1214
+ var _a2;
1215
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.format) || "HH:mm:ss";
1216
+ }
1217
+ function getHeaderSearchTimeValueFormat(column) {
1218
+ var _a2;
1219
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.valueFormat) || getHeaderSearchTimeFormat(column);
1220
+ }
923
1221
  function getHeaderSearchWidth(column) {
924
1222
  var _a2;
925
- return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.width) || 280;
1223
+ const configuredWidth = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.width;
1224
+ if (configuredWidth !== void 0 && configuredWidth !== null && configuredWidth !== "") {
1225
+ return configuredWidth;
1226
+ }
1227
+ return isHeaderSearchRange(column) ? "auto" : 280;
926
1228
  }
927
1229
  function getHeaderSearchSearchText(column) {
928
1230
  var _a2;
@@ -961,45 +1263,27 @@ const _sfc_main$9 = defineComponent({
961
1263
  function hasHeaderSearchOptionChildren(option, column) {
962
1264
  return getHeaderSearchOptionChildren(option, column).length > 0;
963
1265
  }
964
- function getHeaderSearchSelectLabel(column) {
965
- const selectedLabels = getHeaderSearchSelectedLabels(column);
966
- if (!selectedLabels.length) {
967
- return getHeaderSearchPlaceholder(column);
1266
+ function getHeaderSearchSelectModelValue(column) {
1267
+ var _a2;
1268
+ const value = getHeaderSearchValue(column);
1269
+ if (isHeaderSearchMultiple(column)) {
1270
+ return Array.isArray(value) ? value : [];
968
1271
  }
969
- return selectedLabels.join("\u3001");
970
- }
971
- function getHeaderSearchSelectedLabels(column) {
972
- const selectedValues = toComparableValues(getHeaderSearchValue(column));
973
- return selectedValues.map((selectedValue) => {
974
- const matchedOption = getHeaderSearchOptions(column).find((option) => {
975
- return String(getHeaderSearchOptionValue(option, column)) === selectedValue;
976
- });
977
- return matchedOption ? getHeaderSearchOptionLabel(matchedOption, column) : selectedValue;
978
- });
979
- }
980
- function isHeaderSearchOptionSelected(option, column) {
981
- const optionValue = String(getHeaderSearchOptionValue(option, column));
982
- return toComparableValues(getHeaderSearchValue(column)).includes(optionValue);
1272
+ return Array.isArray(value) ? (_a2 = value[0]) != null ? _a2 : "" : value;
983
1273
  }
984
1274
  function handleHeaderSearchSelectEmpty(column) {
985
1275
  updateHeaderSearchValue(column, getHeaderSearchEmptyValue(column));
986
1276
  headerSearchSelectOpen[getHeaderSearchStateKey(column)] = false;
987
1277
  }
988
- function handleHeaderSearchSelectValue(column, optionValue) {
989
- if (!isHeaderSearchMultiple(column)) {
990
- updateHeaderSearchValue(column, optionValue);
991
- headerSearchSelectOpen[getHeaderSearchStateKey(column)] = false;
992
- return;
993
- }
994
- const currentValues = Array.isArray(getHeaderSearchValue(column)) ? [...getHeaderSearchValue(column)] : [];
995
- const comparableValue = String(optionValue);
996
- const matchedIndex = currentValues.findIndex((item) => String(item) === comparableValue);
997
- if (matchedIndex >= 0) {
998
- currentValues.splice(matchedIndex, 1);
999
- } else {
1000
- currentValues.push(optionValue);
1001
- }
1002
- updateHeaderSearchValue(column, currentValues);
1278
+ function handleHeaderSearchSelectModelValue(column, value) {
1279
+ updateHeaderSearchValue(column, value);
1280
+ }
1281
+ function getHeaderSearchPickerValue(column) {
1282
+ const value = getHeaderSearchValue(column);
1283
+ return Array.isArray(value) ? [...value] : value;
1284
+ }
1285
+ function handleHeaderSearchPickerValue(column, value) {
1286
+ updateHeaderSearchValue(column, value);
1003
1287
  }
1004
1288
  function getHeaderSearchCascaderValue(column) {
1005
1289
  return normalizeHeaderSearchPathValue(getHeaderSearchValue(column));
@@ -1149,17 +1433,29 @@ const _sfc_main$9 = defineComponent({
1149
1433
  if (isHeaderSearchCascader(column)) {
1150
1434
  return matchesHeaderSearchCascaderValue(value, searchValue);
1151
1435
  }
1436
+ if (isHeaderSearchPicker(column)) {
1437
+ return matchesHeaderSearchPickerValue(value, searchValue, column);
1438
+ }
1152
1439
  return toSearchableText(value).includes(toHeaderSearchKeyword(searchValue));
1153
1440
  });
1154
1441
  });
1155
1442
  }
1156
1443
  function getHeaderSearchEmptyValue(column) {
1157
- return isHeaderSearchMultiple(column) || isHeaderSearchCascader(column) ? [] : "";
1444
+ return isHeaderSearchMultiple(column) || isHeaderSearchCascader(column) || isHeaderSearchRange(column) ? [] : "";
1158
1445
  }
1159
1446
  function normalizeHeaderSearchValue(column, value) {
1160
1447
  if (isHeaderSearchCascader(column)) {
1161
1448
  return normalizeHeaderSearchPathValue(value);
1162
1449
  }
1450
+ if (isHeaderSearchPicker(column)) {
1451
+ if (isHeaderSearchRange(column)) {
1452
+ return normalizeHeaderSearchPathValue(value);
1453
+ }
1454
+ if (value === void 0 || value === null) {
1455
+ return "";
1456
+ }
1457
+ return normalizeHeaderSearchPrimitiveValue(value);
1458
+ }
1163
1459
  if (!isHeaderSearchSelect(column)) {
1164
1460
  if (value === void 0 || value === null) {
1165
1461
  return "";
@@ -1229,6 +1525,38 @@ const _sfc_main$9 = defineComponent({
1229
1525
  }
1230
1526
  return selectedPath.every((item, index) => String(rowPath[index]) === String(item));
1231
1527
  }
1528
+ function matchesHeaderSearchPickerValue(rowValue, searchValue, column) {
1529
+ if (isHeaderSearchRange(column)) {
1530
+ const selectedRange = normalizeHeaderSearchPathValue(searchValue);
1531
+ if (!selectedRange.length) {
1532
+ return true;
1533
+ }
1534
+ const rowTime = toComparableTime(rowValue);
1535
+ const startTime = toComparableTime(selectedRange[0]);
1536
+ const endTime = toComparableTime(selectedRange[1]);
1537
+ if (rowTime === null) {
1538
+ return false;
1539
+ }
1540
+ return (startTime === null || rowTime >= startTime) && (endTime === null || rowTime <= endTime);
1541
+ }
1542
+ return String(rowValue || "") === String(searchValue || "");
1543
+ }
1544
+ function toComparableTime(value) {
1545
+ if (value === void 0 || value === null || value === "") {
1546
+ return null;
1547
+ }
1548
+ if (value instanceof Date) {
1549
+ return value.getTime();
1550
+ }
1551
+ const normalizedValue = String(value).trim();
1552
+ const parsedValue = Date.parse(normalizedValue);
1553
+ if (!Number.isNaN(parsedValue)) {
1554
+ return parsedValue;
1555
+ }
1556
+ const today = new Date().toISOString().slice(0, 10);
1557
+ const parsedTime = Date.parse(`${today} ${normalizedValue}`);
1558
+ return Number.isNaN(parsedTime) ? null : parsedTime;
1559
+ }
1232
1560
  function toComparableValues(value) {
1233
1561
  const values = Array.isArray(value) ? value : [value];
1234
1562
  return values.filter((item) => isHeaderSearchValueFilled(item)).map((item) => String(item));
@@ -1522,8 +1850,13 @@ const _sfc_main$9 = defineComponent({
1522
1850
  });
1523
1851
  return (_ctx, _cache) => {
1524
1852
  const _component_el_pagination = resolveComponent("el-pagination");
1853
+ const _component_el_config_provider = resolveComponent("el-config-provider");
1525
1854
  const _component_el_empty = resolveComponent("el-empty");
1526
1855
  const _component_el_table_column = resolveComponent("el-table-column");
1856
+ const _component_el_option = resolveComponent("el-option");
1857
+ const _component_el_select = resolveComponent("el-select");
1858
+ const _component_el_date_picker = resolveComponent("el-date-picker");
1859
+ const _component_el_time_picker = resolveComponent("el-time-picker");
1527
1860
  const _component_el_button = resolveComponent("el-button");
1528
1861
  const _component_el_image = resolveComponent("el-image");
1529
1862
  const _component_el_tag = resolveComponent("el-tag");
@@ -1627,19 +1960,24 @@ const _sfc_main$9 = defineComponent({
1627
1960
  renderSlot(_ctx.$slots, "toolbar", {}, void 0, true)
1628
1961
  ]),
1629
1962
  __props.showPagination ? (openBlock(), createElementBlock("div", _hoisted_12, [
1630
- createVNode(_component_el_pagination, {
1631
- small: "",
1632
- background: "",
1633
- layout: "total, prev, pager, next, sizes, jumper",
1634
- total: paginationState.total,
1635
- "current-page": paginationState.currentPage,
1636
- "page-size": paginationState.pageSize,
1637
- "page-sizes": paginationState.pageSizes,
1638
- "pager-count": 5,
1639
- "popper-append-to-body": false,
1640
- onSizeChange: handleSizeChange,
1641
- onCurrentChange: handleCurrentChange
1642
- }, null, 8, ["total", "current-page", "page-size", "page-sizes"])
1963
+ createVNode(_component_el_config_provider, { locale: unref(zh_cn_default) }, {
1964
+ default: withCtx(() => [
1965
+ createVNode(_component_el_pagination, {
1966
+ small: "",
1967
+ background: "",
1968
+ layout: "total, prev, pager, next, sizes, jumper",
1969
+ total: paginationState.total,
1970
+ "current-page": paginationState.currentPage,
1971
+ "page-size": paginationState.pageSize,
1972
+ "page-sizes": paginationState.pageSizes,
1973
+ "pager-count": 5,
1974
+ "popper-append-to-body": false,
1975
+ onSizeChange: handleSizeChange,
1976
+ onCurrentChange: handleCurrentChange
1977
+ }, null, 8, ["total", "current-page", "page-size", "page-sizes"])
1978
+ ]),
1979
+ _: 1
1980
+ }, 8, ["locale"])
1643
1981
  ])) : createCommentVNode("", true)
1644
1982
  ])) : createCommentVNode("", true),
1645
1983
  withDirectives((openBlock(), createBlock(_component_el_table, {
@@ -1652,6 +1990,8 @@ const _sfc_main$9 = defineComponent({
1652
1990
  stripe: __props.stripe,
1653
1991
  "default-sort": normalizedDefaultSort.value,
1654
1992
  "highlight-current-row": "",
1993
+ onSelect: handleSelectionChange,
1994
+ onSelectAll: handleSelectionChange,
1655
1995
  onSelectionChange: handleSelectionChange,
1656
1996
  onSortChange: handleSortChange
1657
1997
  }, {
@@ -1663,9 +2003,10 @@ const _sfc_main$9 = defineComponent({
1663
2003
  key: 0,
1664
2004
  type: "selection",
1665
2005
  width: __props.selectionWidth,
2006
+ fixed: "left",
1666
2007
  align: "center",
1667
- selectable: __props.rowSelectable
1668
- }, null, 8, ["width", "selectable"])) : createCommentVNode("", true),
2008
+ selectable: resolveRowSelectable
2009
+ }, null, 8, ["width"])) : createCommentVNode("", true),
1669
2010
  __props.hasIndex ? (openBlock(), createBlock(_component_el_table_column, {
1670
2011
  key: 1,
1671
2012
  type: "index",
@@ -1698,7 +2039,7 @@ const _sfc_main$9 = defineComponent({
1698
2039
  columnIndex: scope.$index,
1699
2040
  value: getCellValue2(scope.row, column)
1700
2041
  }, void 0, true) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
1701
- isActionColumn(column) ? (openBlock(), createElementBlock("div", _hoisted_33, [
2042
+ isActionColumn(column) ? (openBlock(), createElementBlock("div", _hoisted_26, [
1702
2043
  (openBlock(true), createElementBlock(Fragment, null, renderList(getVisibleActions(column, scope.row), (action) => {
1703
2044
  return openBlock(), createBlock(_component_el_button, {
1704
2045
  key: `${action.type}-${action.label}`,
@@ -1720,7 +2061,7 @@ const _sfc_main$9 = defineComponent({
1720
2061
  src: toImageSrc(getCellValue2(scope.row, column)),
1721
2062
  "preview-src-list": getPreviewSrcList(scope.row, column),
1722
2063
  fit: column.imageFit || "cover"
1723
- }, null, 8, ["style", "src", "preview-src-list", "fit"])) : column.kind === "tag" ? (openBlock(), createElementBlock("div", _hoisted_34, [
2064
+ }, null, 8, ["style", "src", "preview-src-list", "fit"])) : column.kind === "tag" ? (openBlock(), createElementBlock("div", _hoisted_27, [
1724
2065
  getMatchedOptions(scope.row, column).length ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(getMatchedOptions(scope.row, column), (option) => {
1725
2066
  return openBlock(), createBlock(_component_el_tag, {
1726
2067
  key: String(option.value),
@@ -1733,11 +2074,11 @@ const _sfc_main$9 = defineComponent({
1733
2074
  ]),
1734
2075
  _: 2
1735
2076
  }, 1032, ["type", "style"]);
1736
- }), 128)) : (openBlock(), createElementBlock("span", _hoisted_35, toDisplayString(resolveEmptyText(column)), 1))
2077
+ }), 128)) : (openBlock(), createElementBlock("span", _hoisted_28, toDisplayString(resolveEmptyText(column)), 1))
1737
2078
  ])) : column.kind === "html" ? (openBlock(), createElementBlock("div", {
1738
2079
  key: 3,
1739
2080
  innerHTML: getHtmlContent(scope.row, column)
1740
- }, null, 8, _hoisted_36)) : column.kind === "input" ? (openBlock(), createBlock(_component_el_input, {
2081
+ }, null, 8, _hoisted_29)) : column.kind === "input" ? (openBlock(), createBlock(_component_el_input, {
1741
2082
  key: 4,
1742
2083
  "model-value": toDisplayValue(getCellValue2(scope.row, column), ""),
1743
2084
  type: column.inputType || "text",
@@ -1747,7 +2088,7 @@ const _sfc_main$9 = defineComponent({
1747
2088
  class: "base-table__link",
1748
2089
  type: "button",
1749
2090
  onClick: ($event) => handleCellClick(scope.row, column)
1750
- }, toDisplayString(formatCellDisplay(scope.row, column)), 9, _hoisted_37)) : (openBlock(), createElementBlock("div", _hoisted_38, toDisplayString(formatCellDisplay(scope.row, column)), 1))
2091
+ }, toDisplayString(formatCellDisplay(scope.row, column)), 9, _hoisted_30)) : (openBlock(), createElementBlock("div", _hoisted_31, toDisplayString(formatCellDisplay(scope.row, column)), 1))
1751
2092
  ], 64))
1752
2093
  ]),
1753
2094
  _: 2
@@ -1789,6 +2130,7 @@ const _sfc_main$9 = defineComponent({
1789
2130
  ref_for: true,
1790
2131
  ref: bindHeaderSearchTrigger(column),
1791
2132
  class: normalizeClass(["base-table__header-icon", { "is-active": hasHeaderSearchValue(column) }]),
2133
+ "data-base-table-id": baseTableIconPrefix,
1792
2134
  type: "button",
1793
2135
  onClick: withModifiers(($event) => toggleHeaderSearch(column), ["stop"])
1794
2136
  }, [
@@ -1800,8 +2142,11 @@ const _sfc_main$9 = defineComponent({
1800
2142
  ], 10, _hoisted_16),
1801
2143
  (openBlock(), createBlock(Teleport, { to: "body" }, [
1802
2144
  isHeaderSearchVisible(column) ? (openBlock(), createElementBlock("div", {
2145
+ ref_for: true,
2146
+ ref: bindHeaderSearchPanel(column),
1803
2147
  key: getHeaderSearchStateKey(column),
1804
2148
  class: "base-table__header-search-panel",
2149
+ "data-base-table-id": baseTableIconPrefix,
1805
2150
  style: normalizeStyle(getHeaderSearchPanelStyle(column)),
1806
2151
  onClick: _cache[0] || (_cache[0] = withModifiers(() => {
1807
2152
  }, ["stop"])),
@@ -1809,48 +2154,32 @@ const _sfc_main$9 = defineComponent({
1809
2154
  }, ["stop"]))
1810
2155
  }, [
1811
2156
  isHeaderSearchSelect(column) ? (openBlock(), createElementBlock("div", _hoisted_17, [
1812
- createElementVNode("button", {
1813
- class: "base-table__header-select-trigger",
1814
- type: "button",
1815
- onClick: ($event) => toggleHeaderSearchSelect(column)
1816
- }, [
1817
- isHeaderSearchMultiple(column) && getHeaderSearchSelectedLabels(column).length ? (openBlock(), createElementBlock("span", _hoisted_19, [
1818
- (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchSelectedLabels(column).slice(0, 2), (label) => {
1819
- return openBlock(), createElementBlock("span", {
1820
- key: label,
1821
- class: "base-table__header-select-tag"
1822
- }, toDisplayString(label), 1);
1823
- }), 128)),
1824
- getHeaderSearchSelectedLabels(column).length > 2 ? (openBlock(), createElementBlock("span", _hoisted_20, " +" + toDisplayString(getHeaderSearchSelectedLabels(column).length - 2), 1)) : createCommentVNode("", true)
1825
- ])) : (openBlock(), createElementBlock("span", {
1826
- key: 1,
1827
- class: normalizeClass(["base-table__header-select-text", { "is-placeholder": !hasHeaderSearchValue(column) }])
1828
- }, toDisplayString(getHeaderSearchSelectLabel(column)), 3)),
1829
- createElementVNode("span", {
1830
- class: normalizeClass(["base-table__header-select-arrow", { "is-open": isHeaderSearchSelectOpen(column) }]),
1831
- "aria-hidden": "true"
1832
- }, null, 2)
1833
- ], 8, _hoisted_18),
1834
- isHeaderSearchSelectOpen(column) ? (openBlock(), createElementBlock("div", _hoisted_21, [
1835
- !isHeaderSearchMultiple(column) ? (openBlock(), createElementBlock("button", {
1836
- key: 0,
1837
- class: normalizeClass(["base-table__header-select-option", { "is-selected": !hasHeaderSearchValue(column) }]),
1838
- type: "button",
1839
- onClick: ($event) => handleHeaderSearchSelectEmpty(column)
1840
- }, toDisplayString(getHeaderSearchPlaceholder(column)), 11, _hoisted_22)) : createCommentVNode("", true),
1841
- (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchOptions(column), (option) => {
1842
- return openBlock(), createElementBlock("button", {
1843
- key: String(getHeaderSearchOptionValue(option, column)),
1844
- class: normalizeClass(["base-table__header-select-option", { "is-selected": isHeaderSearchOptionSelected(option, column) }]),
1845
- type: "button",
1846
- disabled: isHeaderSearchOptionDisabled(option, column),
1847
- onClick: ($event) => handleHeaderSearchSelectValue(column, getHeaderSearchOptionValue(option, column))
1848
- }, [
1849
- createElementVNode("span", _hoisted_24, toDisplayString(getHeaderSearchOptionLabel(option, column)), 1)
1850
- ], 10, _hoisted_23);
1851
- }), 128))
1852
- ])) : createCommentVNode("", true)
1853
- ])) : isHeaderSearchCascader(column) ? (openBlock(), createElementBlock("div", _hoisted_25, [
2157
+ createVNode(_component_el_select, {
2158
+ class: "base-table__header-el-select",
2159
+ "model-value": getHeaderSearchSelectModelValue(column),
2160
+ placeholder: getHeaderSearchPlaceholder(column),
2161
+ multiple: isHeaderSearchMultiple(column),
2162
+ filterable: isHeaderSearchFilterable(column),
2163
+ clearable: isHeaderSearchClearable(column),
2164
+ "collapse-tags": isHeaderSearchMultiple(column),
2165
+ "collapse-tags-tooltip": isHeaderSearchMultiple(column),
2166
+ teleported: false,
2167
+ "onUpdate:modelValue": ($event) => handleHeaderSearchSelectModelValue(column, $event),
2168
+ onClear: ($event) => handleHeaderSearchSelectEmpty(column)
2169
+ }, {
2170
+ default: withCtx(() => [
2171
+ (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchOptions(column), (option) => {
2172
+ return openBlock(), createBlock(_component_el_option, {
2173
+ key: String(getHeaderSearchOptionValue(option, column)),
2174
+ label: getHeaderSearchOptionLabel(option, column),
2175
+ value: getHeaderSearchOptionValue(option, column),
2176
+ disabled: isHeaderSearchOptionDisabled(option, column)
2177
+ }, null, 8, ["label", "value", "disabled"]);
2178
+ }), 128))
2179
+ ]),
2180
+ _: 2
2181
+ }, 1032, ["model-value", "placeholder", "multiple", "filterable", "clearable", "collapse-tags", "collapse-tags-tooltip", "onUpdate:modelValue", "onClear"])
2182
+ ])) : isHeaderSearchCascader(column) ? (openBlock(), createElementBlock("div", _hoisted_18, [
1854
2183
  createElementVNode("button", {
1855
2184
  class: "base-table__header-select-trigger",
1856
2185
  type: "button",
@@ -1863,8 +2192,8 @@ const _sfc_main$9 = defineComponent({
1863
2192
  class: normalizeClass(["base-table__header-select-arrow", { "is-open": isHeaderSearchSelectOpen(column) }]),
1864
2193
  "aria-hidden": "true"
1865
2194
  }, null, 2)
1866
- ], 8, _hoisted_26),
1867
- isHeaderSearchSelectOpen(column) ? (openBlock(), createElementBlock("div", _hoisted_27, [
2195
+ ], 8, _hoisted_19),
2196
+ isHeaderSearchSelectOpen(column) ? (openBlock(), createElementBlock("div", _hoisted_20, [
1868
2197
  (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchCascaderColumns(column), (levelOptions, levelIndex) => {
1869
2198
  return openBlock(), createElementBlock("div", {
1870
2199
  key: levelIndex,
@@ -1881,23 +2210,51 @@ const _sfc_main$9 = defineComponent({
1881
2210
  disabled: isHeaderSearchOptionDisabled(option, column),
1882
2211
  onClick: ($event) => handleHeaderSearchCascaderOption(column, option, levelIndex)
1883
2212
  }, [
1884
- createElementVNode("span", _hoisted_29, toDisplayString(getHeaderSearchOptionLabel(option, column)), 1),
1885
- hasHeaderSearchOptionChildren(option, column) ? (openBlock(), createElementBlock("span", _hoisted_30)) : createCommentVNode("", true)
1886
- ], 10, _hoisted_28);
2213
+ createElementVNode("span", _hoisted_22, toDisplayString(getHeaderSearchOptionLabel(option, column)), 1),
2214
+ hasHeaderSearchOptionChildren(option, column) ? (openBlock(), createElementBlock("span", _hoisted_23)) : createCommentVNode("", true)
2215
+ ], 10, _hoisted_21);
1887
2216
  }), 128))
1888
2217
  ]);
1889
2218
  }), 128))
1890
2219
  ])) : createCommentVNode("", true)
1891
- ])) : (openBlock(), createElementBlock("input", {
2220
+ ])) : isHeaderSearchDatePicker(column) ? (openBlock(), createBlock(_component_el_date_picker, {
1892
2221
  key: 2,
2222
+ class: "base-table__header-picker",
2223
+ "model-value": getHeaderSearchPickerValue(column),
2224
+ type: getHeaderSearchPickerType(column),
2225
+ placeholder: getHeaderSearchPlaceholder(column),
2226
+ "start-placeholder": getHeaderSearchStartPlaceholder(column),
2227
+ "end-placeholder": getHeaderSearchEndPlaceholder(column),
2228
+ "range-separator": getHeaderSearchRangeSeparator(column),
2229
+ format: getHeaderSearchDateFormat(column),
2230
+ "value-format": getHeaderSearchDateValueFormat(column),
2231
+ clearable: isHeaderSearchClearable(column),
2232
+ teleported: false,
2233
+ "onUpdate:modelValue": ($event) => handleHeaderSearchPickerValue(column, $event)
2234
+ }, null, 8, ["model-value", "type", "placeholder", "start-placeholder", "end-placeholder", "range-separator", "format", "value-format", "clearable", "onUpdate:modelValue"])) : isHeaderSearchTimePicker(column) ? (openBlock(), createBlock(_component_el_time_picker, {
2235
+ key: 3,
2236
+ class: "base-table__header-picker",
2237
+ "model-value": getHeaderSearchPickerValue(column),
2238
+ "is-range": isHeaderSearchRange(column),
2239
+ placeholder: getHeaderSearchPlaceholder(column),
2240
+ "start-placeholder": getHeaderSearchStartPlaceholder(column),
2241
+ "end-placeholder": getHeaderSearchEndPlaceholder(column),
2242
+ "range-separator": getHeaderSearchRangeSeparator(column),
2243
+ format: getHeaderSearchTimeFormat(column),
2244
+ "value-format": getHeaderSearchTimeValueFormat(column),
2245
+ clearable: isHeaderSearchClearable(column),
2246
+ teleported: false,
2247
+ "onUpdate:modelValue": ($event) => handleHeaderSearchPickerValue(column, $event)
2248
+ }, null, 8, ["model-value", "is-range", "placeholder", "start-placeholder", "end-placeholder", "range-separator", "format", "value-format", "clearable", "onUpdate:modelValue"])) : (openBlock(), createElementBlock("input", {
2249
+ key: 4,
1893
2250
  class: "base-table__header-search-input",
1894
2251
  type: "text",
1895
2252
  value: getHeaderSearchInputValue(column),
1896
2253
  placeholder: getHeaderSearchPlaceholder(column),
1897
2254
  onInput: ($event) => handleHeaderSearchInput(column, $event),
1898
2255
  onKeyup: withKeys(($event) => handleHeaderSearch(column), ["enter"])
1899
- }, null, 40, _hoisted_31)),
1900
- createElementVNode("div", _hoisted_32, [
2256
+ }, null, 40, _hoisted_24)),
2257
+ createElementVNode("div", _hoisted_25, [
1901
2258
  createVNode(_component_el_button, {
1902
2259
  link: "",
1903
2260
  type: "primary",
@@ -1936,7 +2293,7 @@ const _sfc_main$9 = defineComponent({
1936
2293
  };
1937
2294
  }
1938
2295
  });
1939
- var BaseTable = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-20fa814c"]]);
2296
+ var BaseTable = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-13040b10"]]);
1940
2297
  var BaseEChart_vue_vue_type_style_index_0_scoped_true_lang = "";
1941
2298
  const _sfc_main$8 = defineComponent({
1942
2299
  __name: "BaseEChart",
@@ -4614,4 +4971,31 @@ const _sfc_main = defineComponent({
4614
4971
  });
4615
4972
  var OutlinedTreeSelect = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-30d7dee0"]]);
4616
4973
  installRipple();
4617
- export { BaseCard, BaseEChart, _sfc_main$7 as BaseExportButton, BaseTable, OutlinedCascader, OutlinedDatePicker, OutlinedDateTimePicker, OutlinedInput, OutlinedSelect, OutlinedTimePicker, OutlinedTreeSelect, SvgIcon, downloadExportResponse, exportExcel, extractFileNameFromDisposition, installRipple, normalizeExportFileName, uninstallRipple };
4974
+ const componentEntries = [
4975
+ ["BaseCard", BaseCard],
4976
+ ["BaseTable", BaseTable],
4977
+ ["BaseEChart", BaseEChart],
4978
+ ["BaseExportButton", _sfc_main$7],
4979
+ ["SvgIcon", SvgIcon],
4980
+ ["OutlinedInput", OutlinedInput],
4981
+ ["OutlinedSelect", OutlinedSelect],
4982
+ ["OutlinedDatePicker", OutlinedDatePicker],
4983
+ ["OutlinedDateTimePicker", OutlinedDateTimePicker],
4984
+ ["OutlinedTimePicker", OutlinedTimePicker],
4985
+ ["OutlinedCascader", OutlinedCascader],
4986
+ ["OutlinedTreeSelect", OutlinedTreeSelect]
4987
+ ];
4988
+ const uiCoreComponents = componentEntries.map(([name, component]) => ({
4989
+ name,
4990
+ component
4991
+ }));
4992
+ function installUiCore(app) {
4993
+ componentEntries.forEach(([name, component]) => {
4994
+ app.component(name, component);
4995
+ });
4996
+ installRipple();
4997
+ }
4998
+ const HbdlUICore = {
4999
+ install: installUiCore
5000
+ };
5001
+ export { BaseCard, BaseEChart, _sfc_main$7 as BaseExportButton, BaseTable, HbdlUICore, OutlinedCascader, OutlinedDatePicker, OutlinedDateTimePicker, OutlinedInput, OutlinedSelect, OutlinedTimePicker, OutlinedTreeSelect, Ripple, SvgIcon, HbdlUICore as default, downloadExportResponse, exportExcel, extractFileNameFromDisposition, installRipple, installUiCore, normalizeExportFileName, uiCoreComponents, uninstallRipple };