@hbdlzy/ui-core 0.1.8 → 0.1.10

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 (31) hide show
  1. package/components.manifest.json +4 -2
  2. package/dist/components/BaseCard/BaseCard.types.d.ts +1 -0
  3. package/dist/components/BaseCard/BaseCard.vue.d.ts +3 -0
  4. package/dist/components/BaseTable/BaseTable.types.d.ts +8 -1
  5. package/dist/components/BaseTable/BaseTable.vue.d.ts +4 -1
  6. package/dist/components/BaseTable/index.d.ts +1 -1
  7. package/dist/components/OutlinedCascader/OutlinedCascader.vue.d.ts +1 -1
  8. package/dist/components/OutlinedDatePicker/OutlinedDatePicker.vue.d.ts +3 -3
  9. package/dist/components/OutlinedSelect/OutlinedSelect.vue.d.ts +4 -4
  10. package/dist/components/OutlinedTimePicker/OutlinedTimePicker.vue.d.ts +6 -6
  11. package/dist/components/OutlinedTreeSelect/OutlinedTreeSelect.vue.d.ts +4 -4
  12. package/dist/index.cjs +5 -5
  13. package/dist/index.js +337 -136
  14. package/dist/style.css +1 -1
  15. package/package.json +1 -1
  16. package/src/components/BaseCard/BaseCard.types.ts +1 -0
  17. package/src/components/BaseCard/BaseCard.vue +3 -1
  18. package/src/components/BaseCard/README.md +1 -0
  19. package/src/components/BaseTable/BaseTable.types.d.ts +6 -1
  20. package/src/components/BaseTable/BaseTable.types.ts +18 -1
  21. package/src/components/BaseTable/BaseTable.vue +358 -100
  22. package/src/components/BaseTable/README.md +77 -2
  23. package/src/components/BaseTable/index.ts +1 -0
  24. package/src/components/OutlinedCascader/OutlinedCascader.vue.d.ts +2 -2
  25. package/src/components/OutlinedDatePicker/OutlinedDatePicker.vue.d.ts +3 -3
  26. package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.vue.d.ts +1 -1
  27. package/src/components/OutlinedInput/OutlinedInput.vue.d.ts +1 -1
  28. package/src/components/OutlinedSelect/OutlinedSelect.vue.d.ts +5 -5
  29. package/src/components/OutlinedTimePicker/OutlinedTimePicker.vue.d.ts +7 -7
  30. package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.vue.d.ts +5 -5
  31. package/src/index.d.ts +48 -12
package/dist/index.js CHANGED
@@ -225,6 +225,7 @@ const _sfc_main$b = defineComponent({
225
225
  showHeader: { type: Boolean, default: true },
226
226
  showRight: { type: Boolean, default: true },
227
227
  showTitleMarker: { type: Boolean, default: true },
228
+ hideTitleMarker: { type: Boolean, default: false },
228
229
  showExport: { type: Boolean, default: false },
229
230
  exportText: { default: "\u5BFC\u51FA" },
230
231
  exportDisabled: { type: Boolean, default: false },
@@ -258,6 +259,7 @@ const _sfc_main$b = defineComponent({
258
259
  const hasTitleBlock = computed(() => Boolean(props.title) || Boolean(slots["title-label"]));
259
260
  const hasTitleExtra = computed(() => Boolean(slots.title));
260
261
  const hasRightExtra = computed(() => Boolean(slots["header-right"]));
262
+ const shouldShowTitleMarker = computed(() => props.showTitleMarker && !props.hideTitleMarker);
261
263
  const hasRightSection = computed(
262
264
  () => props.showRight && (hasRightExtra.value || Boolean(props.metaText) || props.showExport)
263
265
  );
@@ -313,7 +315,7 @@ const _sfc_main$b = defineComponent({
313
315
  shouldRenderHeader.value ? (openBlock(), createElementBlock("div", _hoisted_1$9, [
314
316
  createElementVNode("div", _hoisted_2$9, [
315
317
  hasTitleBlock.value ? (openBlock(), createElementBlock("div", _hoisted_3$4, [
316
- __props.showTitleMarker ? (openBlock(), createElementBlock("span", _hoisted_4$2)) : createCommentVNode("", true),
318
+ shouldShowTitleMarker.value ? (openBlock(), createElementBlock("span", _hoisted_4$2)) : createCommentVNode("", true),
317
319
  _ctx.$slots["title-label"] ? renderSlot(_ctx.$slots, "title-label", { key: 1 }, void 0, true) : (openBlock(), createElementBlock("h4", _hoisted_5$2, toDisplayString(__props.title), 1))
318
320
  ])) : createCommentVNode("", true),
319
321
  renderSlot(_ctx.$slots, "title", {}, void 0, true)
@@ -342,7 +344,7 @@ const _sfc_main$b = defineComponent({
342
344
  };
343
345
  }
344
346
  });
345
- var BaseCard = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-6bfddf1c"]]);
347
+ var BaseCard = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-d23d43b4"]]);
346
348
  var zh_cn_default = {
347
349
  name: "zh-cn",
348
350
  el: {
@@ -603,55 +605,43 @@ const _hoisted_17 = {
603
605
  key: 0,
604
606
  class: "base-table__header-select"
605
607
  };
606
- const _hoisted_18 = ["onClick"];
607
- const _hoisted_19 = {
608
- key: 0,
609
- class: "base-table__header-select-tags"
610
- };
611
- const _hoisted_20 = {
612
- key: 0,
613
- class: "base-table__header-select-tag base-table__header-select-tag--count"
614
- };
615
- const _hoisted_21 = {
616
- key: 0,
617
- class: "base-table__header-select-options"
618
- };
619
- const _hoisted_22 = ["onClick"];
620
- const _hoisted_23 = ["disabled", "onClick"];
621
- const _hoisted_24 = { class: "base-table__header-select-option-label" };
622
- const _hoisted_25 = {
608
+ const _hoisted_18 = {
623
609
  key: 1,
624
610
  class: "base-table__header-cascader"
625
611
  };
626
- const _hoisted_26 = ["onClick"];
627
- const _hoisted_27 = {
612
+ const _hoisted_19 = ["onClick"];
613
+ const _hoisted_20 = {
628
614
  key: 0,
629
615
  class: "base-table__header-cascader-panel"
630
616
  };
631
- const _hoisted_28 = ["disabled", "onClick"];
632
- const _hoisted_29 = { class: "base-table__header-cascader-label" };
633
- const _hoisted_30 = {
617
+ const _hoisted_21 = ["disabled", "onClick"];
618
+ const _hoisted_22 = { class: "base-table__header-cascader-label" };
619
+ const _hoisted_23 = {
634
620
  key: 0,
635
621
  class: "base-table__header-cascader-arrow",
636
622
  "aria-hidden": "true"
637
623
  };
638
- const _hoisted_31 = ["value", "placeholder", "onInput", "onKeyup"];
639
- const _hoisted_32 = { class: "base-table__header-search-footer" };
640
- const _hoisted_33 = {
624
+ const _hoisted_24 = ["value", "placeholder", "onInput", "onKeyup"];
625
+ const _hoisted_25 = { class: "base-table__header-search-footer" };
626
+ const _hoisted_26 = {
641
627
  key: 0,
642
628
  class: "base-table__actions"
643
629
  };
644
- const _hoisted_34 = {
630
+ const _hoisted_27 = {
645
631
  key: 2,
646
632
  class: "base-table__tags"
647
633
  };
648
- const _hoisted_35 = { key: 1 };
649
- const _hoisted_36 = ["innerHTML"];
650
- const _hoisted_37 = ["onClick"];
651
- const _hoisted_38 = {
634
+ const _hoisted_28 = { key: 1 };
635
+ const _hoisted_29 = ["innerHTML"];
636
+ const _hoisted_30 = ["onClick"];
637
+ const _hoisted_31 = {
652
638
  key: 6,
653
639
  class: "base-table__text"
654
640
  };
641
+ const _hoisted_32 = {
642
+ key: 1,
643
+ class: "base-table__pagination base-table__pagination--bottom"
644
+ };
655
645
  const _sfc_main$9 = defineComponent({
656
646
  ...{
657
647
  name: "BaseTable"
@@ -679,6 +669,7 @@ const _sfc_main$9 = defineComponent({
679
669
  selectionWidth: { default: 50 },
680
670
  rowSelectable: {},
681
671
  pagination: { default: () => ({}) },
672
+ paginationPosition: { default: "top-right" },
682
673
  currentPageKey: { default: "pageNum" },
683
674
  pageSizeKey: { default: "pageSize" },
684
675
  defaultSort: { default: () => ({
@@ -713,6 +704,8 @@ const _sfc_main$9 = defineComponent({
713
704
  const headerSearchCascaderActivePaths = reactive({});
714
705
  const headerSearchTriggerRects = reactive({});
715
706
  const headerSearchTriggerRefs = ref({});
707
+ const headerSearchPanelRefs = ref({});
708
+ const headerSearchPositionTick = ref(0);
716
709
  const baseTableIconPrefix = `base-table-icon-${++baseTableIconSeed}`;
717
710
  let headerSearchPositionFrame = 0;
718
711
  const sortState = reactive({
@@ -727,7 +720,9 @@ const _sfc_main$9 = defineComponent({
727
720
  });
728
721
  syncPagination(props.pagination);
729
722
  const normalizedHeight = computed(() => toCssValue(props.height));
730
- const shouldRenderToolbar = computed(() => props.showToolbar && (Boolean(slots.toolbar) || props.showPagination));
723
+ const shouldRenderTopPagination = computed(() => props.showPagination && props.paginationPosition === "top-right");
724
+ const shouldRenderBottomPagination = computed(() => props.showPagination && props.paginationPosition === "bottom-right");
725
+ const shouldRenderToolbar = computed(() => props.showToolbar && (Boolean(slots.toolbar) || shouldRenderTopPagination.value));
731
726
  const normalizedDefaultSort = computed(() => {
732
727
  if (!sortState.prop || !sortState.order) {
733
728
  return void 0;
@@ -772,6 +767,7 @@ const _sfc_main$9 = defineComponent({
772
767
  { deep: true }
773
768
  );
774
769
  onMounted(() => {
770
+ document.addEventListener("click", handleDocumentClick, true);
775
771
  window.addEventListener("scroll", scheduleHeaderSearchPositionUpdate, true);
776
772
  window.addEventListener("resize", scheduleHeaderSearchPositionUpdate);
777
773
  if (props.request && props.autoLoad) {
@@ -783,6 +779,7 @@ const _sfc_main$9 = defineComponent({
783
779
  }
784
780
  });
785
781
  onBeforeUnmount(() => {
782
+ document.removeEventListener("click", handleDocumentClick, true);
786
783
  window.removeEventListener("scroll", scheduleHeaderSearchPositionUpdate, true);
787
784
  window.removeEventListener("resize", scheduleHeaderSearchPositionUpdate);
788
785
  if (headerSearchPositionFrame) {
@@ -871,6 +868,9 @@ const _sfc_main$9 = defineComponent({
871
868
  selectionRows.value = value;
872
869
  emit("selection-change", value);
873
870
  }
871
+ function resolveRowSelectable(row, index) {
872
+ return props.rowSelectable ? props.rowSelectable(row, index) : true;
873
+ }
874
874
  function handleSortChange(payload) {
875
875
  const column = props.columns.find((item) => String(item.prop || "") === String(payload.prop || ""));
876
876
  sortState.prop = payload.prop;
@@ -968,6 +968,19 @@ const _sfc_main$9 = defineComponent({
968
968
  setHeaderSearchTriggerRef(instance, column);
969
969
  };
970
970
  }
971
+ function setHeaderSearchPanelRef(instance, column) {
972
+ const stateKey = getHeaderSearchStateKey(column);
973
+ if (!(instance instanceof HTMLElement)) {
974
+ delete headerSearchPanelRefs.value[stateKey];
975
+ return;
976
+ }
977
+ headerSearchPanelRefs.value[stateKey] = instance;
978
+ }
979
+ function bindHeaderSearchPanel(column) {
980
+ return (instance) => {
981
+ setHeaderSearchPanelRef(instance, column);
982
+ };
983
+ }
971
984
  function isHeaderSearchVisible(column) {
972
985
  return Boolean(headerSearchVisible[getHeaderSearchStateKey(column)]);
973
986
  }
@@ -978,6 +991,7 @@ const _sfc_main$9 = defineComponent({
978
991
  closeAllHeaderSearch();
979
992
  updateHeaderSearchTriggerRect(column);
980
993
  syncHeaderSearchCascaderActivePath(column);
994
+ scheduleHeaderSearchPositionUpdate();
981
995
  }
982
996
  headerSearchVisible[stateKey] = nextVisible;
983
997
  headerSearchSelectOpen[stateKey] = false;
@@ -988,6 +1002,15 @@ const _sfc_main$9 = defineComponent({
988
1002
  headerSearchSelectOpen[key] = false;
989
1003
  });
990
1004
  }
1005
+ function handleDocumentClick(event) {
1006
+ const target = event.target;
1007
+ if (target instanceof Element) {
1008
+ if (target.closest(`[data-base-table-id="${baseTableIconPrefix}"].base-table__header-search-panel`) || target.closest(`[data-base-table-id="${baseTableIconPrefix}"].base-table__header-icon`)) {
1009
+ return;
1010
+ }
1011
+ }
1012
+ closeAllHeaderSearch();
1013
+ }
991
1014
  function updateHeaderSearchTriggerRect(column) {
992
1015
  var _a2;
993
1016
  const stateKey = getHeaderSearchStateKey(column);
@@ -1009,28 +1032,67 @@ const _sfc_main$9 = defineComponent({
1009
1032
  }
1010
1033
  headerSearchPositionFrame = window.requestAnimationFrame(() => {
1011
1034
  headerSearchPositionFrame = 0;
1035
+ headerSearchPositionTick.value += 1;
1012
1036
  updateVisibleHeaderSearchPosition();
1013
1037
  });
1014
1038
  }
1015
1039
  function getHeaderSearchPanelStyle(column) {
1040
+ headerSearchPositionTick.value;
1016
1041
  const stateKey = getHeaderSearchStateKey(column);
1017
1042
  const triggerRect = headerSearchTriggerRects[stateKey];
1018
- const width = toCssValue(getHeaderSearchWidth(column)) || "280px";
1043
+ const panelWidth = getHeaderSearchPanelWidth(column);
1044
+ const style = {
1045
+ width: panelWidth.width,
1046
+ minWidth: panelWidth.minWidth,
1047
+ maxWidth: panelWidth.maxWidth
1048
+ };
1019
1049
  if (!triggerRect) {
1020
- return {
1021
- width
1022
- };
1050
+ return style;
1023
1051
  }
1024
- const panelWidth = Number.parseFloat(String(getHeaderSearchWidth(column))) || 280;
1025
- const maxLeft = Math.max(8, window.innerWidth - panelWidth - 8);
1026
- const left = Math.min(maxLeft, Math.max(8, triggerRect.right - panelWidth));
1052
+ const maxLeft = Math.max(8, window.innerWidth - panelWidth.positionWidth - 8);
1053
+ const left = Math.min(maxLeft, Math.max(8, triggerRect.right - panelWidth.positionWidth));
1027
1054
  const top = triggerRect.bottom + 8;
1028
1055
  return {
1029
- width,
1056
+ ...style,
1030
1057
  left: `${left}px`,
1031
1058
  top: `${top}px`
1032
1059
  };
1033
1060
  }
1061
+ function getHeaderSearchPanelWidth(column) {
1062
+ const rawWidth = getHeaderSearchWidth(column);
1063
+ const viewportMaxWidth = Math.max(220, window.innerWidth - 16);
1064
+ const renderedWidth = getRenderedHeaderSearchPanelWidth(column);
1065
+ if (rawWidth === "auto") {
1066
+ const positionWidth2 = Math.min(renderedWidth || getHeaderSearchAutoWidth(column), viewportMaxWidth);
1067
+ return {
1068
+ width: "max-content",
1069
+ minWidth: "280px",
1070
+ maxWidth: `${viewportMaxWidth}px`,
1071
+ positionWidth: positionWidth2
1072
+ };
1073
+ }
1074
+ const width = toCssValue(rawWidth) || "280px";
1075
+ const positionWidth = Math.min(Number.parseFloat(String(rawWidth)) || 280, viewportMaxWidth);
1076
+ return {
1077
+ width,
1078
+ minWidth: width,
1079
+ maxWidth: `${viewportMaxWidth}px`,
1080
+ positionWidth
1081
+ };
1082
+ }
1083
+ function getRenderedHeaderSearchPanelWidth(column) {
1084
+ const stateKey = getHeaderSearchStateKey(column);
1085
+ const panelElement = headerSearchPanelRefs.value[stateKey];
1086
+ return panelElement ? panelElement.getBoundingClientRect().width : 0;
1087
+ }
1088
+ function getHeaderSearchAutoWidth(column) {
1089
+ var _a2;
1090
+ if (isHeaderSearchRange(column)) {
1091
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1092
+ return type === "daterange" || type === "timerange" ? 420 : 560;
1093
+ }
1094
+ return 280;
1095
+ }
1034
1096
  function getHeaderSearchValue(column) {
1035
1097
  const stateKey = getHeaderSearchStateKey(column);
1036
1098
  const value = headerSearchValues[stateKey];
@@ -1061,6 +1123,24 @@ const _sfc_main$9 = defineComponent({
1061
1123
  var _a2;
1062
1124
  return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type) === "cascader";
1063
1125
  }
1126
+ function isHeaderSearchDatePicker(column) {
1127
+ var _a2;
1128
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1129
+ return type === "date" || type === "daterange" || type === "datetime" || type === "datetimerange";
1130
+ }
1131
+ function isHeaderSearchTimePicker(column) {
1132
+ var _a2;
1133
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1134
+ return type === "time" || type === "timerange";
1135
+ }
1136
+ function isHeaderSearchPicker(column) {
1137
+ return isHeaderSearchDatePicker(column) || isHeaderSearchTimePicker(column);
1138
+ }
1139
+ function isHeaderSearchRange(column) {
1140
+ var _a2;
1141
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1142
+ return type === "daterange" || type === "datetimerange" || type === "timerange";
1143
+ }
1064
1144
  function isHeaderSearchChoice(column) {
1065
1145
  return isHeaderSearchSelect(column) || isHeaderSearchCascader(column);
1066
1146
  }
@@ -1068,6 +1148,14 @@ const _sfc_main$9 = defineComponent({
1068
1148
  var _a2;
1069
1149
  return isHeaderSearchSelect(column) && ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.multiple) === true;
1070
1150
  }
1151
+ function isHeaderSearchClearable(column) {
1152
+ var _a2;
1153
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.clearable) !== false;
1154
+ }
1155
+ function isHeaderSearchFilterable(column) {
1156
+ var _a2;
1157
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.filterable) === true;
1158
+ }
1071
1159
  function getHeaderSearchIconName(column) {
1072
1160
  const iconName = isHeaderSearchChoice(column) ? "select" : "search";
1073
1161
  return hasHeaderSearchValue(column) ? `${iconName}-y` : iconName;
@@ -1099,9 +1187,53 @@ const _sfc_main$9 = defineComponent({
1099
1187
  var _a2;
1100
1188
  return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.placeholder) || (isHeaderSearchChoice(column) ? "\u8BF7\u9009\u62E9" : "\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9");
1101
1189
  }
1190
+ function getHeaderSearchStartPlaceholder(column) {
1191
+ var _a2;
1192
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.startPlaceholder) || "\u5F00\u59CB\u65F6\u95F4";
1193
+ }
1194
+ function getHeaderSearchEndPlaceholder(column) {
1195
+ var _a2;
1196
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.endPlaceholder) || "\u7ED3\u675F\u65F6\u95F4";
1197
+ }
1198
+ function getHeaderSearchRangeSeparator(column) {
1199
+ var _a2;
1200
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.rangeSeparator) || "\u81F3";
1201
+ }
1202
+ function getHeaderSearchPickerType(column) {
1203
+ var _a2;
1204
+ const type = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.type;
1205
+ if (type === "datetime" || type === "datetimerange") {
1206
+ return type;
1207
+ }
1208
+ return type === "daterange" ? "daterange" : "date";
1209
+ }
1210
+ function getHeaderSearchDateFormat(column) {
1211
+ var _a2, _b2;
1212
+ const config = getHeaderSearchConfig(column);
1213
+ if (config == null ? void 0 : config.format) {
1214
+ return config.format;
1215
+ }
1216
+ 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";
1217
+ }
1218
+ function getHeaderSearchDateValueFormat(column) {
1219
+ var _a2;
1220
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.valueFormat) || getHeaderSearchDateFormat(column);
1221
+ }
1222
+ function getHeaderSearchTimeFormat(column) {
1223
+ var _a2;
1224
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.format) || "HH:mm:ss";
1225
+ }
1226
+ function getHeaderSearchTimeValueFormat(column) {
1227
+ var _a2;
1228
+ return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.valueFormat) || getHeaderSearchTimeFormat(column);
1229
+ }
1102
1230
  function getHeaderSearchWidth(column) {
1103
1231
  var _a2;
1104
- return ((_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.width) || 280;
1232
+ const configuredWidth = (_a2 = getHeaderSearchConfig(column)) == null ? void 0 : _a2.width;
1233
+ if (configuredWidth !== void 0 && configuredWidth !== null && configuredWidth !== "") {
1234
+ return configuredWidth;
1235
+ }
1236
+ return isHeaderSearchRange(column) ? "auto" : 280;
1105
1237
  }
1106
1238
  function getHeaderSearchSearchText(column) {
1107
1239
  var _a2;
@@ -1140,45 +1272,27 @@ const _sfc_main$9 = defineComponent({
1140
1272
  function hasHeaderSearchOptionChildren(option, column) {
1141
1273
  return getHeaderSearchOptionChildren(option, column).length > 0;
1142
1274
  }
1143
- function getHeaderSearchSelectLabel(column) {
1144
- const selectedLabels = getHeaderSearchSelectedLabels(column);
1145
- if (!selectedLabels.length) {
1146
- return getHeaderSearchPlaceholder(column);
1275
+ function getHeaderSearchSelectModelValue(column) {
1276
+ var _a2;
1277
+ const value = getHeaderSearchValue(column);
1278
+ if (isHeaderSearchMultiple(column)) {
1279
+ return Array.isArray(value) ? value : [];
1147
1280
  }
1148
- return selectedLabels.join("\u3001");
1149
- }
1150
- function getHeaderSearchSelectedLabels(column) {
1151
- const selectedValues = toComparableValues(getHeaderSearchValue(column));
1152
- return selectedValues.map((selectedValue) => {
1153
- const matchedOption = getHeaderSearchOptions(column).find((option) => {
1154
- return String(getHeaderSearchOptionValue(option, column)) === selectedValue;
1155
- });
1156
- return matchedOption ? getHeaderSearchOptionLabel(matchedOption, column) : selectedValue;
1157
- });
1158
- }
1159
- function isHeaderSearchOptionSelected(option, column) {
1160
- const optionValue = String(getHeaderSearchOptionValue(option, column));
1161
- return toComparableValues(getHeaderSearchValue(column)).includes(optionValue);
1281
+ return Array.isArray(value) ? (_a2 = value[0]) != null ? _a2 : "" : value;
1162
1282
  }
1163
1283
  function handleHeaderSearchSelectEmpty(column) {
1164
1284
  updateHeaderSearchValue(column, getHeaderSearchEmptyValue(column));
1165
1285
  headerSearchSelectOpen[getHeaderSearchStateKey(column)] = false;
1166
1286
  }
1167
- function handleHeaderSearchSelectValue(column, optionValue) {
1168
- if (!isHeaderSearchMultiple(column)) {
1169
- updateHeaderSearchValue(column, optionValue);
1170
- headerSearchSelectOpen[getHeaderSearchStateKey(column)] = false;
1171
- return;
1172
- }
1173
- const currentValues = Array.isArray(getHeaderSearchValue(column)) ? [...getHeaderSearchValue(column)] : [];
1174
- const comparableValue = String(optionValue);
1175
- const matchedIndex = currentValues.findIndex((item) => String(item) === comparableValue);
1176
- if (matchedIndex >= 0) {
1177
- currentValues.splice(matchedIndex, 1);
1178
- } else {
1179
- currentValues.push(optionValue);
1180
- }
1181
- updateHeaderSearchValue(column, currentValues);
1287
+ function handleHeaderSearchSelectModelValue(column, value) {
1288
+ updateHeaderSearchValue(column, value);
1289
+ }
1290
+ function getHeaderSearchPickerValue(column) {
1291
+ const value = getHeaderSearchValue(column);
1292
+ return Array.isArray(value) ? [...value] : value;
1293
+ }
1294
+ function handleHeaderSearchPickerValue(column, value) {
1295
+ updateHeaderSearchValue(column, value);
1182
1296
  }
1183
1297
  function getHeaderSearchCascaderValue(column) {
1184
1298
  return normalizeHeaderSearchPathValue(getHeaderSearchValue(column));
@@ -1328,17 +1442,29 @@ const _sfc_main$9 = defineComponent({
1328
1442
  if (isHeaderSearchCascader(column)) {
1329
1443
  return matchesHeaderSearchCascaderValue(value, searchValue);
1330
1444
  }
1445
+ if (isHeaderSearchPicker(column)) {
1446
+ return matchesHeaderSearchPickerValue(value, searchValue, column);
1447
+ }
1331
1448
  return toSearchableText(value).includes(toHeaderSearchKeyword(searchValue));
1332
1449
  });
1333
1450
  });
1334
1451
  }
1335
1452
  function getHeaderSearchEmptyValue(column) {
1336
- return isHeaderSearchMultiple(column) || isHeaderSearchCascader(column) ? [] : "";
1453
+ return isHeaderSearchMultiple(column) || isHeaderSearchCascader(column) || isHeaderSearchRange(column) ? [] : "";
1337
1454
  }
1338
1455
  function normalizeHeaderSearchValue(column, value) {
1339
1456
  if (isHeaderSearchCascader(column)) {
1340
1457
  return normalizeHeaderSearchPathValue(value);
1341
1458
  }
1459
+ if (isHeaderSearchPicker(column)) {
1460
+ if (isHeaderSearchRange(column)) {
1461
+ return normalizeHeaderSearchPathValue(value);
1462
+ }
1463
+ if (value === void 0 || value === null) {
1464
+ return "";
1465
+ }
1466
+ return normalizeHeaderSearchPrimitiveValue(value);
1467
+ }
1342
1468
  if (!isHeaderSearchSelect(column)) {
1343
1469
  if (value === void 0 || value === null) {
1344
1470
  return "";
@@ -1408,6 +1534,38 @@ const _sfc_main$9 = defineComponent({
1408
1534
  }
1409
1535
  return selectedPath.every((item, index) => String(rowPath[index]) === String(item));
1410
1536
  }
1537
+ function matchesHeaderSearchPickerValue(rowValue, searchValue, column) {
1538
+ if (isHeaderSearchRange(column)) {
1539
+ const selectedRange = normalizeHeaderSearchPathValue(searchValue);
1540
+ if (!selectedRange.length) {
1541
+ return true;
1542
+ }
1543
+ const rowTime = toComparableTime(rowValue);
1544
+ const startTime = toComparableTime(selectedRange[0]);
1545
+ const endTime = toComparableTime(selectedRange[1]);
1546
+ if (rowTime === null) {
1547
+ return false;
1548
+ }
1549
+ return (startTime === null || rowTime >= startTime) && (endTime === null || rowTime <= endTime);
1550
+ }
1551
+ return String(rowValue || "") === String(searchValue || "");
1552
+ }
1553
+ function toComparableTime(value) {
1554
+ if (value === void 0 || value === null || value === "") {
1555
+ return null;
1556
+ }
1557
+ if (value instanceof Date) {
1558
+ return value.getTime();
1559
+ }
1560
+ const normalizedValue = String(value).trim();
1561
+ const parsedValue = Date.parse(normalizedValue);
1562
+ if (!Number.isNaN(parsedValue)) {
1563
+ return parsedValue;
1564
+ }
1565
+ const today = new Date().toISOString().slice(0, 10);
1566
+ const parsedTime = Date.parse(`${today} ${normalizedValue}`);
1567
+ return Number.isNaN(parsedTime) ? null : parsedTime;
1568
+ }
1411
1569
  function toComparableValues(value) {
1412
1570
  const values = Array.isArray(value) ? value : [value];
1413
1571
  return values.filter((item) => isHeaderSearchValueFilled(item)).map((item) => String(item));
@@ -1704,6 +1862,10 @@ const _sfc_main$9 = defineComponent({
1704
1862
  const _component_el_config_provider = resolveComponent("el-config-provider");
1705
1863
  const _component_el_empty = resolveComponent("el-empty");
1706
1864
  const _component_el_table_column = resolveComponent("el-table-column");
1865
+ const _component_el_option = resolveComponent("el-option");
1866
+ const _component_el_select = resolveComponent("el-select");
1867
+ const _component_el_date_picker = resolveComponent("el-date-picker");
1868
+ const _component_el_time_picker = resolveComponent("el-time-picker");
1707
1869
  const _component_el_button = resolveComponent("el-button");
1708
1870
  const _component_el_image = resolveComponent("el-image");
1709
1871
  const _component_el_tag = resolveComponent("el-tag");
@@ -1806,7 +1968,7 @@ const _sfc_main$9 = defineComponent({
1806
1968
  createElementVNode("div", _hoisted_11, [
1807
1969
  renderSlot(_ctx.$slots, "toolbar", {}, void 0, true)
1808
1970
  ]),
1809
- __props.showPagination ? (openBlock(), createElementBlock("div", _hoisted_12, [
1971
+ shouldRenderTopPagination.value ? (openBlock(), createElementBlock("div", _hoisted_12, [
1810
1972
  createVNode(_component_el_config_provider, { locale: unref(zh_cn_default) }, {
1811
1973
  default: withCtx(() => [
1812
1974
  createVNode(_component_el_pagination, {
@@ -1837,6 +1999,8 @@ const _sfc_main$9 = defineComponent({
1837
1999
  stripe: __props.stripe,
1838
2000
  "default-sort": normalizedDefaultSort.value,
1839
2001
  "highlight-current-row": "",
2002
+ onSelect: handleSelectionChange,
2003
+ onSelectAll: handleSelectionChange,
1840
2004
  onSelectionChange: handleSelectionChange,
1841
2005
  onSortChange: handleSortChange
1842
2006
  }, {
@@ -1848,9 +2012,10 @@ const _sfc_main$9 = defineComponent({
1848
2012
  key: 0,
1849
2013
  type: "selection",
1850
2014
  width: __props.selectionWidth,
2015
+ fixed: "left",
1851
2016
  align: "center",
1852
- selectable: __props.rowSelectable
1853
- }, null, 8, ["width", "selectable"])) : createCommentVNode("", true),
2017
+ selectable: resolveRowSelectable
2018
+ }, null, 8, ["width"])) : createCommentVNode("", true),
1854
2019
  __props.hasIndex ? (openBlock(), createBlock(_component_el_table_column, {
1855
2020
  key: 1,
1856
2021
  type: "index",
@@ -1883,7 +2048,7 @@ const _sfc_main$9 = defineComponent({
1883
2048
  columnIndex: scope.$index,
1884
2049
  value: getCellValue2(scope.row, column)
1885
2050
  }, void 0, true) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
1886
- isActionColumn(column) ? (openBlock(), createElementBlock("div", _hoisted_33, [
2051
+ isActionColumn(column) ? (openBlock(), createElementBlock("div", _hoisted_26, [
1887
2052
  (openBlock(true), createElementBlock(Fragment, null, renderList(getVisibleActions(column, scope.row), (action) => {
1888
2053
  return openBlock(), createBlock(_component_el_button, {
1889
2054
  key: `${action.type}-${action.label}`,
@@ -1905,7 +2070,7 @@ const _sfc_main$9 = defineComponent({
1905
2070
  src: toImageSrc(getCellValue2(scope.row, column)),
1906
2071
  "preview-src-list": getPreviewSrcList(scope.row, column),
1907
2072
  fit: column.imageFit || "cover"
1908
- }, null, 8, ["style", "src", "preview-src-list", "fit"])) : column.kind === "tag" ? (openBlock(), createElementBlock("div", _hoisted_34, [
2073
+ }, null, 8, ["style", "src", "preview-src-list", "fit"])) : column.kind === "tag" ? (openBlock(), createElementBlock("div", _hoisted_27, [
1909
2074
  getMatchedOptions(scope.row, column).length ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(getMatchedOptions(scope.row, column), (option) => {
1910
2075
  return openBlock(), createBlock(_component_el_tag, {
1911
2076
  key: String(option.value),
@@ -1918,11 +2083,11 @@ const _sfc_main$9 = defineComponent({
1918
2083
  ]),
1919
2084
  _: 2
1920
2085
  }, 1032, ["type", "style"]);
1921
- }), 128)) : (openBlock(), createElementBlock("span", _hoisted_35, toDisplayString(resolveEmptyText(column)), 1))
2086
+ }), 128)) : (openBlock(), createElementBlock("span", _hoisted_28, toDisplayString(resolveEmptyText(column)), 1))
1922
2087
  ])) : column.kind === "html" ? (openBlock(), createElementBlock("div", {
1923
2088
  key: 3,
1924
2089
  innerHTML: getHtmlContent(scope.row, column)
1925
- }, null, 8, _hoisted_36)) : column.kind === "input" ? (openBlock(), createBlock(_component_el_input, {
2090
+ }, null, 8, _hoisted_29)) : column.kind === "input" ? (openBlock(), createBlock(_component_el_input, {
1926
2091
  key: 4,
1927
2092
  "model-value": toDisplayValue(getCellValue2(scope.row, column), ""),
1928
2093
  type: column.inputType || "text",
@@ -1932,7 +2097,7 @@ const _sfc_main$9 = defineComponent({
1932
2097
  class: "base-table__link",
1933
2098
  type: "button",
1934
2099
  onClick: ($event) => handleCellClick(scope.row, column)
1935
- }, toDisplayString(formatCellDisplay(scope.row, column)), 9, _hoisted_37)) : (openBlock(), createElementBlock("div", _hoisted_38, toDisplayString(formatCellDisplay(scope.row, column)), 1))
2100
+ }, toDisplayString(formatCellDisplay(scope.row, column)), 9, _hoisted_30)) : (openBlock(), createElementBlock("div", _hoisted_31, toDisplayString(formatCellDisplay(scope.row, column)), 1))
1936
2101
  ], 64))
1937
2102
  ]),
1938
2103
  _: 2
@@ -1974,6 +2139,7 @@ const _sfc_main$9 = defineComponent({
1974
2139
  ref_for: true,
1975
2140
  ref: bindHeaderSearchTrigger(column),
1976
2141
  class: normalizeClass(["base-table__header-icon", { "is-active": hasHeaderSearchValue(column) }]),
2142
+ "data-base-table-id": baseTableIconPrefix,
1977
2143
  type: "button",
1978
2144
  onClick: withModifiers(($event) => toggleHeaderSearch(column), ["stop"])
1979
2145
  }, [
@@ -1985,8 +2151,11 @@ const _sfc_main$9 = defineComponent({
1985
2151
  ], 10, _hoisted_16),
1986
2152
  (openBlock(), createBlock(Teleport, { to: "body" }, [
1987
2153
  isHeaderSearchVisible(column) ? (openBlock(), createElementBlock("div", {
2154
+ ref_for: true,
2155
+ ref: bindHeaderSearchPanel(column),
1988
2156
  key: getHeaderSearchStateKey(column),
1989
2157
  class: "base-table__header-search-panel",
2158
+ "data-base-table-id": baseTableIconPrefix,
1990
2159
  style: normalizeStyle(getHeaderSearchPanelStyle(column)),
1991
2160
  onClick: _cache[0] || (_cache[0] = withModifiers(() => {
1992
2161
  }, ["stop"])),
@@ -1994,48 +2163,32 @@ const _sfc_main$9 = defineComponent({
1994
2163
  }, ["stop"]))
1995
2164
  }, [
1996
2165
  isHeaderSearchSelect(column) ? (openBlock(), createElementBlock("div", _hoisted_17, [
1997
- createElementVNode("button", {
1998
- class: "base-table__header-select-trigger",
1999
- type: "button",
2000
- onClick: ($event) => toggleHeaderSearchSelect(column)
2001
- }, [
2002
- isHeaderSearchMultiple(column) && getHeaderSearchSelectedLabels(column).length ? (openBlock(), createElementBlock("span", _hoisted_19, [
2003
- (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchSelectedLabels(column).slice(0, 2), (label) => {
2004
- return openBlock(), createElementBlock("span", {
2005
- key: label,
2006
- class: "base-table__header-select-tag"
2007
- }, toDisplayString(label), 1);
2008
- }), 128)),
2009
- getHeaderSearchSelectedLabels(column).length > 2 ? (openBlock(), createElementBlock("span", _hoisted_20, " +" + toDisplayString(getHeaderSearchSelectedLabels(column).length - 2), 1)) : createCommentVNode("", true)
2010
- ])) : (openBlock(), createElementBlock("span", {
2011
- key: 1,
2012
- class: normalizeClass(["base-table__header-select-text", { "is-placeholder": !hasHeaderSearchValue(column) }])
2013
- }, toDisplayString(getHeaderSearchSelectLabel(column)), 3)),
2014
- createElementVNode("span", {
2015
- class: normalizeClass(["base-table__header-select-arrow", { "is-open": isHeaderSearchSelectOpen(column) }]),
2016
- "aria-hidden": "true"
2017
- }, null, 2)
2018
- ], 8, _hoisted_18),
2019
- isHeaderSearchSelectOpen(column) ? (openBlock(), createElementBlock("div", _hoisted_21, [
2020
- !isHeaderSearchMultiple(column) ? (openBlock(), createElementBlock("button", {
2021
- key: 0,
2022
- class: normalizeClass(["base-table__header-select-option", { "is-selected": !hasHeaderSearchValue(column) }]),
2023
- type: "button",
2024
- onClick: ($event) => handleHeaderSearchSelectEmpty(column)
2025
- }, toDisplayString(getHeaderSearchPlaceholder(column)), 11, _hoisted_22)) : createCommentVNode("", true),
2026
- (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchOptions(column), (option) => {
2027
- return openBlock(), createElementBlock("button", {
2028
- key: String(getHeaderSearchOptionValue(option, column)),
2029
- class: normalizeClass(["base-table__header-select-option", { "is-selected": isHeaderSearchOptionSelected(option, column) }]),
2030
- type: "button",
2031
- disabled: isHeaderSearchOptionDisabled(option, column),
2032
- onClick: ($event) => handleHeaderSearchSelectValue(column, getHeaderSearchOptionValue(option, column))
2033
- }, [
2034
- createElementVNode("span", _hoisted_24, toDisplayString(getHeaderSearchOptionLabel(option, column)), 1)
2035
- ], 10, _hoisted_23);
2036
- }), 128))
2037
- ])) : createCommentVNode("", true)
2038
- ])) : isHeaderSearchCascader(column) ? (openBlock(), createElementBlock("div", _hoisted_25, [
2166
+ createVNode(_component_el_select, {
2167
+ class: "base-table__header-el-select",
2168
+ "model-value": getHeaderSearchSelectModelValue(column),
2169
+ placeholder: getHeaderSearchPlaceholder(column),
2170
+ multiple: isHeaderSearchMultiple(column),
2171
+ filterable: isHeaderSearchFilterable(column),
2172
+ clearable: isHeaderSearchClearable(column),
2173
+ "collapse-tags": isHeaderSearchMultiple(column),
2174
+ "collapse-tags-tooltip": isHeaderSearchMultiple(column),
2175
+ teleported: false,
2176
+ "onUpdate:modelValue": ($event) => handleHeaderSearchSelectModelValue(column, $event),
2177
+ onClear: ($event) => handleHeaderSearchSelectEmpty(column)
2178
+ }, {
2179
+ default: withCtx(() => [
2180
+ (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchOptions(column), (option) => {
2181
+ return openBlock(), createBlock(_component_el_option, {
2182
+ key: String(getHeaderSearchOptionValue(option, column)),
2183
+ label: getHeaderSearchOptionLabel(option, column),
2184
+ value: getHeaderSearchOptionValue(option, column),
2185
+ disabled: isHeaderSearchOptionDisabled(option, column)
2186
+ }, null, 8, ["label", "value", "disabled"]);
2187
+ }), 128))
2188
+ ]),
2189
+ _: 2
2190
+ }, 1032, ["model-value", "placeholder", "multiple", "filterable", "clearable", "collapse-tags", "collapse-tags-tooltip", "onUpdate:modelValue", "onClear"])
2191
+ ])) : isHeaderSearchCascader(column) ? (openBlock(), createElementBlock("div", _hoisted_18, [
2039
2192
  createElementVNode("button", {
2040
2193
  class: "base-table__header-select-trigger",
2041
2194
  type: "button",
@@ -2048,8 +2201,8 @@ const _sfc_main$9 = defineComponent({
2048
2201
  class: normalizeClass(["base-table__header-select-arrow", { "is-open": isHeaderSearchSelectOpen(column) }]),
2049
2202
  "aria-hidden": "true"
2050
2203
  }, null, 2)
2051
- ], 8, _hoisted_26),
2052
- isHeaderSearchSelectOpen(column) ? (openBlock(), createElementBlock("div", _hoisted_27, [
2204
+ ], 8, _hoisted_19),
2205
+ isHeaderSearchSelectOpen(column) ? (openBlock(), createElementBlock("div", _hoisted_20, [
2053
2206
  (openBlock(true), createElementBlock(Fragment, null, renderList(getHeaderSearchCascaderColumns(column), (levelOptions, levelIndex) => {
2054
2207
  return openBlock(), createElementBlock("div", {
2055
2208
  key: levelIndex,
@@ -2066,23 +2219,51 @@ const _sfc_main$9 = defineComponent({
2066
2219
  disabled: isHeaderSearchOptionDisabled(option, column),
2067
2220
  onClick: ($event) => handleHeaderSearchCascaderOption(column, option, levelIndex)
2068
2221
  }, [
2069
- createElementVNode("span", _hoisted_29, toDisplayString(getHeaderSearchOptionLabel(option, column)), 1),
2070
- hasHeaderSearchOptionChildren(option, column) ? (openBlock(), createElementBlock("span", _hoisted_30)) : createCommentVNode("", true)
2071
- ], 10, _hoisted_28);
2222
+ createElementVNode("span", _hoisted_22, toDisplayString(getHeaderSearchOptionLabel(option, column)), 1),
2223
+ hasHeaderSearchOptionChildren(option, column) ? (openBlock(), createElementBlock("span", _hoisted_23)) : createCommentVNode("", true)
2224
+ ], 10, _hoisted_21);
2072
2225
  }), 128))
2073
2226
  ]);
2074
2227
  }), 128))
2075
2228
  ])) : createCommentVNode("", true)
2076
- ])) : (openBlock(), createElementBlock("input", {
2229
+ ])) : isHeaderSearchDatePicker(column) ? (openBlock(), createBlock(_component_el_date_picker, {
2077
2230
  key: 2,
2231
+ class: "base-table__header-picker",
2232
+ "model-value": getHeaderSearchPickerValue(column),
2233
+ type: getHeaderSearchPickerType(column),
2234
+ placeholder: getHeaderSearchPlaceholder(column),
2235
+ "start-placeholder": getHeaderSearchStartPlaceholder(column),
2236
+ "end-placeholder": getHeaderSearchEndPlaceholder(column),
2237
+ "range-separator": getHeaderSearchRangeSeparator(column),
2238
+ format: getHeaderSearchDateFormat(column),
2239
+ "value-format": getHeaderSearchDateValueFormat(column),
2240
+ clearable: isHeaderSearchClearable(column),
2241
+ teleported: false,
2242
+ "onUpdate:modelValue": ($event) => handleHeaderSearchPickerValue(column, $event)
2243
+ }, 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, {
2244
+ key: 3,
2245
+ class: "base-table__header-picker",
2246
+ "model-value": getHeaderSearchPickerValue(column),
2247
+ "is-range": isHeaderSearchRange(column),
2248
+ placeholder: getHeaderSearchPlaceholder(column),
2249
+ "start-placeholder": getHeaderSearchStartPlaceholder(column),
2250
+ "end-placeholder": getHeaderSearchEndPlaceholder(column),
2251
+ "range-separator": getHeaderSearchRangeSeparator(column),
2252
+ format: getHeaderSearchTimeFormat(column),
2253
+ "value-format": getHeaderSearchTimeValueFormat(column),
2254
+ clearable: isHeaderSearchClearable(column),
2255
+ teleported: false,
2256
+ "onUpdate:modelValue": ($event) => handleHeaderSearchPickerValue(column, $event)
2257
+ }, null, 8, ["model-value", "is-range", "placeholder", "start-placeholder", "end-placeholder", "range-separator", "format", "value-format", "clearable", "onUpdate:modelValue"])) : (openBlock(), createElementBlock("input", {
2258
+ key: 4,
2078
2259
  class: "base-table__header-search-input",
2079
2260
  type: "text",
2080
2261
  value: getHeaderSearchInputValue(column),
2081
2262
  placeholder: getHeaderSearchPlaceholder(column),
2082
2263
  onInput: ($event) => handleHeaderSearchInput(column, $event),
2083
2264
  onKeyup: withKeys(($event) => handleHeaderSearch(column), ["enter"])
2084
- }, null, 40, _hoisted_31)),
2085
- createElementVNode("div", _hoisted_32, [
2265
+ }, null, 40, _hoisted_24)),
2266
+ createElementVNode("div", _hoisted_25, [
2086
2267
  createVNode(_component_el_button, {
2087
2268
  link: "",
2088
2269
  type: "primary",
@@ -2116,12 +2297,32 @@ const _sfc_main$9 = defineComponent({
2116
2297
  _: 3
2117
2298
  }, 8, ["data", "row-key", "height", "border", "stripe", "default-sort"])), [
2118
2299
  [_directive_loading, loading.value]
2119
- ])
2300
+ ]),
2301
+ shouldRenderBottomPagination.value ? (openBlock(), createElementBlock("div", _hoisted_32, [
2302
+ createVNode(_component_el_config_provider, { locale: unref(zh_cn_default) }, {
2303
+ default: withCtx(() => [
2304
+ createVNode(_component_el_pagination, {
2305
+ small: "",
2306
+ background: "",
2307
+ layout: "total, prev, pager, next, sizes, jumper",
2308
+ total: paginationState.total,
2309
+ "current-page": paginationState.currentPage,
2310
+ "page-size": paginationState.pageSize,
2311
+ "page-sizes": paginationState.pageSizes,
2312
+ "pager-count": 5,
2313
+ "popper-append-to-body": false,
2314
+ onSizeChange: handleSizeChange,
2315
+ onCurrentChange: handleCurrentChange
2316
+ }, null, 8, ["total", "current-page", "page-size", "page-sizes"])
2317
+ ]),
2318
+ _: 1
2319
+ }, 8, ["locale"])
2320
+ ])) : createCommentVNode("", true)
2120
2321
  ]);
2121
2322
  };
2122
2323
  }
2123
2324
  });
2124
- var BaseTable = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-7602f302"]]);
2325
+ var BaseTable = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-3878b8de"]]);
2125
2326
  var BaseEChart_vue_vue_type_style_index_0_scoped_true_lang = "";
2126
2327
  const _sfc_main$8 = defineComponent({
2127
2328
  __name: "BaseEChart",