qidian-vue-ui 1.2.86 → 1.2.87
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.
- package/dist/components/crud/table/props.d.ts +1 -1
- package/dist/components/crud/tabs-table/props.d.ts +1 -1
- package/dist/components/service/table/index.css +5 -5
- package/dist/components/service/table/index.vue.d.ts +3 -2
- package/dist/components/service/table/index.vue.mjs +1 -1
- package/dist/components/service/table/index.vue2.mjs +46 -7
- package/dist/components/service/table/index.vue2.mjs.map +1 -1
- package/dist/components/service/table/props.d.ts +1 -1
- package/dist/components/service/table/props.mjs +1 -1
- package/dist/components/service/table/props.mjs.map +1 -1
- package/dist/components/service-dialog-table-select/props.d.ts +1 -1
- package/dist/components/service-popup-table-select/props.d.ts +1 -1
- package/package.json +1 -1
|
@@ -30,7 +30,7 @@ export declare const qdCrudTableProps: {
|
|
|
30
30
|
readonly reserveSelectedRowOnPaginate: false;
|
|
31
31
|
readonly expandOnRowClick: undefined;
|
|
32
32
|
readonly hideSortTips: undefined;
|
|
33
|
-
readonly multipleSort:
|
|
33
|
+
readonly multipleSort: true;
|
|
34
34
|
readonly rowSelectionAllowUncheck: undefined;
|
|
35
35
|
readonly disableSpaceInactiveRow: undefined;
|
|
36
36
|
readonly horizontalScrollAffixedBottom: undefined;
|
|
@@ -31,7 +31,7 @@ export declare const qdCrudTabsTableProps: {
|
|
|
31
31
|
readonly reserveSelectedRowOnPaginate: false;
|
|
32
32
|
readonly expandOnRowClick: undefined;
|
|
33
33
|
readonly hideSortTips: undefined;
|
|
34
|
-
readonly multipleSort:
|
|
34
|
+
readonly multipleSort: true;
|
|
35
35
|
readonly rowSelectionAllowUncheck: undefined;
|
|
36
36
|
readonly disableSpaceInactiveRow: undefined;
|
|
37
37
|
readonly horizontalScrollAffixedBottom: undefined;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
.qd-service-table[data-v-
|
|
1
|
+
.qd-service-table[data-v-77c8398f] {
|
|
2
2
|
height: 100%;
|
|
3
3
|
display: flex;
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
}
|
|
6
|
-
.qd-service-table[data-v-
|
|
6
|
+
.qd-service-table[data-v-77c8398f] > .t-table__content {
|
|
7
7
|
flex: 1;
|
|
8
8
|
}
|
|
9
|
-
.qd-service-table--ps-x-fixed[data-v-
|
|
9
|
+
.qd-service-table--ps-x-fixed[data-v-77c8398f] .ps__rail-x {
|
|
10
10
|
position: fixed;
|
|
11
|
-
left: var(--
|
|
12
|
-
bottom: var(--
|
|
11
|
+
left: var(--f0f91fde) !important;
|
|
12
|
+
bottom: var(--v4d07c81e) !important;
|
|
13
13
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ServicePageParams, ServicePagination } from 'qidian-shared';
|
|
2
2
|
import type { TableRowData } from 'tdesign-vue-next';
|
|
3
|
+
import type { TableSort } from 'tdesign-vue-next';
|
|
3
4
|
import type { QdServiceTableInstanceFunctions, QdServiceTableProps } from './types';
|
|
4
5
|
declare const _default: <D extends TableRowData = TableRowData, R = unknown, P = ServicePageParams, TP = P, Pag extends ServicePagination = ServicePagination>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
5
6
|
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
|
|
@@ -10,7 +11,7 @@ declare const _default: <D extends TableRowData = TableRowData, R = unknown, P =
|
|
|
10
11
|
readonly "onUpdate:displayColumns"?: ((args_0: import("tdesign-vue-next").CheckboxGroupValue | undefined) => any) | undefined;
|
|
11
12
|
readonly "onUpdate:expandedRowKeys"?: ((args_0: (string | number)[] | undefined) => any) | undefined;
|
|
12
13
|
readonly "onUpdate:filterValue"?: ((args_0: import("tdesign-vue-next").FilterValue | undefined) => any) | undefined;
|
|
13
|
-
readonly "onUpdate:sort"?: ((args_0:
|
|
14
|
+
readonly "onUpdate:sort"?: ((args_0: TableSort | undefined) => any) | undefined;
|
|
14
15
|
readonly "onUpdate:expandedTreeNodes"?: ((args_0: (string | number)[] | undefined) => any) | undefined;
|
|
15
16
|
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onUpdate:data" | "onUpdate:selectedRowKeys" | "onUpdate:activeRowKeys" | "onUpdate:columnControllerVisible" | "onUpdate:displayColumns" | "onUpdate:expandedRowKeys" | "onUpdate:filterValue" | "onUpdate:sort" | "onUpdate:expandedTreeNodes"> & QdServiceTableProps<D, R, P, TP, Pag> & Partial<{}>> & import("vue").PublicProps;
|
|
16
17
|
expose(exposed: import("vue").ShallowUnwrapRef<QdServiceTableInstanceFunctions<D, R, P, TP, Pag, false>>): void;
|
|
@@ -19,7 +20,7 @@ declare const _default: <D extends TableRowData = TableRowData, R = unknown, P =
|
|
|
19
20
|
[x: string]: ((props: any) => any) | undefined;
|
|
20
21
|
[x: number]: ((props: any) => any) | undefined;
|
|
21
22
|
};
|
|
22
|
-
emit: ((evt: "update:data", args_0: D[] | undefined) => void) & ((evt: "update:selectedRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:activeRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:columnControllerVisible", args_0: boolean | undefined) => void) & ((evt: "update:displayColumns", args_0: import("tdesign-vue-next").CheckboxGroupValue | undefined) => void) & ((evt: "update:expandedRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:filterValue", args_0: import("tdesign-vue-next").FilterValue | undefined) => void) & ((evt: "update:sort", args_0:
|
|
23
|
+
emit: ((evt: "update:data", args_0: D[] | undefined) => void) & ((evt: "update:selectedRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:activeRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:columnControllerVisible", args_0: boolean | undefined) => void) & ((evt: "update:displayColumns", args_0: import("tdesign-vue-next").CheckboxGroupValue | undefined) => void) & ((evt: "update:expandedRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:filterValue", args_0: import("tdesign-vue-next").FilterValue | undefined) => void) & ((evt: "update:sort", args_0: TableSort | undefined) => void) & ((evt: "update:expandedTreeNodes", args_0: (string | number)[] | undefined) => void);
|
|
23
24
|
}>) => import("vue").VNode & {
|
|
24
25
|
__ctx?: Awaited<typeof __VLS_setup>;
|
|
25
26
|
};
|
|
@@ -2,7 +2,7 @@ import './index.css'
|
|
|
2
2
|
import _sfc_main from "./index.vue2.mjs";
|
|
3
3
|
/* empty css */
|
|
4
4
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
5
|
-
const QdServiceTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
5
|
+
const QdServiceTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-77c8398f"]]);
|
|
6
6
|
export {
|
|
7
7
|
QdServiceTable as default
|
|
8
8
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './index.css'
|
|
2
|
-
import { defineComponent, mergeDefaults, useCssVars, computed,
|
|
3
|
-
import { useElementBounding, useIntersectionObserver, useMouseInElement
|
|
2
|
+
import { defineComponent, mergeDefaults, useCssVars, computed, ref, useTemplateRef, reactive, createVNode, nextTick, watch, onActivated, onDeactivated, onBeforeUnmount, withDirectives, createBlock, openBlock, resolveDynamicComponent, unref, mergeProps, isRef, createSlots, withCtx, renderList, renderSlot, normalizeProps, guardReactiveProps } from "vue";
|
|
3
|
+
import { useVModels, useElementBounding, useIntersectionObserver, useMouseInElement } from "../../../node_modules/.pnpm/@vueuse_core@14.2.0_vue@3.5.26_typescript@5.9.3_/node_modules/@vueuse/core/dist/index.mjs";
|
|
4
4
|
import { easyCopy, isEmpty, suspectedWrapperPromise, useServicePagination, createExposeProxy, resizeDirective, getScrollEl } from "qidian-shared";
|
|
5
5
|
import { LoadingIcon, AddRectangleIcon, MinusRectangleIcon } from "tdesign-icons-vue-next";
|
|
6
6
|
import { EnhancedTable, Table, Empty } from "tdesign-vue-next";
|
|
@@ -302,8 +302,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
302
302
|
emit: __emit
|
|
303
303
|
}) {
|
|
304
304
|
useCssVars((_ctx) => ({
|
|
305
|
-
"
|
|
306
|
-
"
|
|
305
|
+
"f0f91fde": tableContentLeft.value,
|
|
306
|
+
"v4d07c81e": outsideBottom.value
|
|
307
307
|
}));
|
|
308
308
|
const props = __props;
|
|
309
309
|
const emit = __emit;
|
|
@@ -320,6 +320,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
320
320
|
} = useVModels(props, emit, {
|
|
321
321
|
passive: true
|
|
322
322
|
});
|
|
323
|
+
const innerSort = ref(getDefaultSort());
|
|
324
|
+
const reSort = computed({
|
|
325
|
+
get: () => sort.value ?? innerSort.value,
|
|
326
|
+
set: (value) => {
|
|
327
|
+
innerSort.value = normalizeSort(value);
|
|
328
|
+
sort.value = innerSort.value;
|
|
329
|
+
}
|
|
330
|
+
});
|
|
323
331
|
const vResize = resizeDirective;
|
|
324
332
|
const {
|
|
325
333
|
t
|
|
@@ -589,7 +597,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
589
597
|
serviceOptions: {
|
|
590
598
|
service,
|
|
591
599
|
manual,
|
|
592
|
-
transformParams,
|
|
600
|
+
transformParams: transformServiceParams,
|
|
593
601
|
transformRes: reTransformRes,
|
|
594
602
|
pagination,
|
|
595
603
|
cacheKey,
|
|
@@ -661,6 +669,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
661
669
|
reProps.value.serviceOptions.onSuccess?.(res);
|
|
662
670
|
}
|
|
663
671
|
});
|
|
672
|
+
const reOnSortChange = (sortValue, options) => {
|
|
673
|
+
reProps.value.tableOptions.onSortChange?.(sortValue, options);
|
|
674
|
+
changeCurrent(1);
|
|
675
|
+
};
|
|
664
676
|
const tableLoad = computed(() => {
|
|
665
677
|
const {
|
|
666
678
|
externalLoad,
|
|
@@ -687,6 +699,32 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
687
699
|
onPageSizeChange: changePageSize
|
|
688
700
|
};
|
|
689
701
|
});
|
|
702
|
+
function normalizeSort(value) {
|
|
703
|
+
const sortList = Array.isArray(value) ? value : value ? [value] : [];
|
|
704
|
+
if (props.multipleSort) return sortList;
|
|
705
|
+
return sortList[0];
|
|
706
|
+
}
|
|
707
|
+
function getDefaultSort() {
|
|
708
|
+
if (props.defaultSort) return normalizeSort(props.defaultSort);
|
|
709
|
+
return props.multipleSort ? [] : void 0;
|
|
710
|
+
}
|
|
711
|
+
function getSortParams(sortValue) {
|
|
712
|
+
const sortList = Array.isArray(sortValue) ? sortValue : sortValue ? [sortValue] : [];
|
|
713
|
+
const validSortList = sortList.filter((item) => item.sortBy && item.descending !== void 0);
|
|
714
|
+
if (!validSortList.length) return {};
|
|
715
|
+
return {
|
|
716
|
+
orderByColumn: validSortList.map((item) => item.sortBy).join(","),
|
|
717
|
+
isAsc: validSortList.map((item) => item.descending ? "desc" : "asc").join(",")
|
|
718
|
+
};
|
|
719
|
+
}
|
|
720
|
+
async function transformServiceParams(params) {
|
|
721
|
+
const mergedParams = {
|
|
722
|
+
...params,
|
|
723
|
+
...getSortParams(reSort.value)
|
|
724
|
+
};
|
|
725
|
+
if (props.transformParams) return props.transformParams(mergedParams);
|
|
726
|
+
return mergedParams;
|
|
727
|
+
}
|
|
690
728
|
function removeTreeLoadId(id) {
|
|
691
729
|
const index = treeLoadIds.value.findIndex((item) => item === id);
|
|
692
730
|
if (index === -1) return;
|
|
@@ -793,11 +831,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
793
831
|
"onUpdate:expandedRowKeys": _cache[4] || (_cache[4] = ($event) => isRef(expandedRowKeys) ? expandedRowKeys.value = $event : null),
|
|
794
832
|
"filter-value": unref(filterValue),
|
|
795
833
|
"onUpdate:filterValue": _cache[5] || (_cache[5] = ($event) => isRef(filterValue) ? filterValue.value = $event : null),
|
|
796
|
-
sort:
|
|
797
|
-
"onUpdate:sort": _cache[6] || (_cache[6] = ($event) =>
|
|
834
|
+
sort: reSort.value,
|
|
835
|
+
"onUpdate:sort": _cache[6] || (_cache[6] = ($event) => reSort.value = $event),
|
|
798
836
|
"expanded-tree-nodes": unref(expandedTreeNodes),
|
|
799
837
|
"onUpdate:expandedTreeNodes": _cache[7] || (_cache[7] = ($event) => isRef(expandedTreeNodes) ? expandedTreeNodes.value = $event : null)
|
|
800
838
|
}, reProps.value.tableOptions, {
|
|
839
|
+
"on-sort-change": reOnSortChange,
|
|
801
840
|
columns: autoWidthColumns.value,
|
|
802
841
|
loading: tableLoad.value,
|
|
803
842
|
data: unref(data),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.mjs","sources":["../../../../src/components/service/table/index.vue"],"sourcesContent":["<template>\n <component\n :is=\"reProps.tableOptions.tree ? TEnhancedTable : TTable\"\n ref=\"table\"\n :class=\"[\n 'qd-service-table',\n headerBg ? '' : 't-table--header-bg-inherit',\n isOutsideTableContent ? '' : 'qd-service-table--inside-table-content',\n tableContentVisible && tableHeaderHalfVisible && !tableContentFullVisible\n ? 'qd-service-table--ps-x-fixed'\n : ''\n ]\"\n v-resize=\"onResize\"\n v-model:selected-row-keys=\"selectedRowKeys\"\n v-model:active-row-keys=\"activeRowKeys\"\n v-model:column-controller-visible=\"columnControllerVisible\"\n v-model:display-columns=\"displayColumns\"\n v-model:expanded-row-keys=\"expandedRowKeys\"\n v-model:filter-value=\"filterValue\"\n v-model:sort=\"sort\"\n v-model:expanded-tree-nodes=\"expandedTreeNodes\"\n v-bind=\"reProps.tableOptions\"\n :columns=\"autoWidthColumns\"\n :loading=\"tableLoad\"\n :data=\"data\"\n :pagination=\"rePagination\"\n >\n <template #empty>\n <t-empty class=\"qd-service-table__empty\" :title=\"t('emptyText')\" />\n </template>\n\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </component>\n</template>\n\n<script\n setup\n lang=\"tsx\"\n generic=\"\n D extends TableRowData = TableRowData,\n R = unknown,\n P = ServicePageParams,\n TP = P,\n Pag extends ServicePagination = ServicePagination\n \"\n>\n import {\n useElementBounding,\n useIntersectionObserver,\n useMouseInElement,\n useVModels\n } from '@vueuse/core'\n import { get } from 'lodash-es'\n import type { ServicePageParams, ServicePageRes, ServicePagination } from 'qidian-shared'\n import {\n createExposeProxy,\n easyCopy,\n isEmpty,\n suspectedWrapperPromise,\n useServicePagination\n } from 'qidian-shared'\n import { getScrollEl, resizeDirective } from 'qidian-shared'\n import { AddRectangleIcon, LoadingIcon, MinusRectangleIcon } from 'tdesign-icons-vue-next'\n import type {\n EnhancedTableInstanceFunctions,\n TableRowData,\n TableRowValue,\n TdEnhancedTableProps\n } from 'tdesign-vue-next'\n import {\n Empty as TEmpty,\n EnhancedTable as TEnhancedTable,\n Table as TTable\n } from 'tdesign-vue-next'\n import type { ComponentPublicInstance } from 'vue'\n import {\n computed,\n nextTick,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n reactive,\n ref,\n useTemplateRef,\n watch\n } from 'vue'\n\n import { usePerfectScrollbar } from '../../../hooks'\n import { useConfig } from '../../config-provider/useConfig'\n import { qdServiceTableProps, qdServiceTableTreeConfig } from './props'\n import type { QdServiceTableInstanceFunctions, QdServiceTableProps } from './types'\n\n defineOptions({\n name: 'QdServiceTable'\n })\n\n type Props = QdServiceTableProps<D, R, P, TP, Pag>\n\n const props = withDefaults(defineProps<Props>(), qdServiceTableProps)\n const emit = defineEmits<{\n 'update:data': [Props['data']]\n 'update:selectedRowKeys': [Props['selectedRowKeys']]\n 'update:activeRowKeys': [Props['activeRowKeys']]\n 'update:columnControllerVisible': [Props['columnControllerVisible']]\n 'update:displayColumns': [Props['displayColumns']]\n 'update:expandedRowKeys': [Props['expandedRowKeys']]\n 'update:filterValue': [Props['filterValue']]\n 'update:sort': [Props['sort']]\n 'update:expandedTreeNodes': [Props['expandedTreeNodes']]\n }>()\n const {\n data,\n selectedRowKeys,\n activeRowKeys,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n } = useVModels<typeof props, keyof typeof emit>(props, emit, { passive: true })\n\n const vResize = resizeDirective\n const { t } = useConfig('crud')\n const { t: tableT } = useConfig('table')\n const tableRef = useTemplateRef<EnhancedTableInstanceFunctions & ComponentPublicInstance>('table')\n const treeLoadIds = ref<(string | number)[]>([])\n\n const defaultMinWidth = 80\n\n const scrollRecord = { top: 0, left: 0 }\n const outsideScrollEl = ref<HTMLElement | null>(null)\n const tableHeaderEl = ref<HTMLElement | null>(null)\n const tableHeaderH = ref(0)\n const tableContentEl = ref<HTMLElement | null>(null)\n const tableContentVisible = ref(false)\n const isScrollSyncing = ref(false)\n\n const tableContentRect = reactive(useElementBounding(tableContentEl))\n const tableContentLeft = computed(() => `${tableContentRect.left}px`)\n const outsideScrollRect = reactive(useElementBounding(outsideScrollEl))\n const outsideBottom = computed(() =>\n outsideScrollEl.value ? `${window.innerHeight - outsideScrollRect.bottom}px` : '0'\n )\n\n const tableHeaderHalfVisible = computed(() => {\n if (!tableContentVisible.value) return false\n return tableContentRect.top + tableHeaderH.value * 0.5 <= outsideScrollRect.bottom\n })\n\n const tableContentFullVisible = computed(() => {\n if (!tableContentVisible.value) return false\n\n const contentBottom = tableContentRect.bottom\n const containerBottom = outsideScrollRect.bottom\n\n return contentBottom <= containerBottom\n })\n\n usePerfectScrollbar(tableContentEl, {\n watch: {\n source: data,\n force: true\n },\n onScrollX: (evt) => {\n if (isScrollSyncing.value) return\n if (!tableHeaderEl.value) return\n\n isScrollSyncing.value = true\n tableHeaderEl.value.scrollLeft = (evt.target as HTMLElement).scrollLeft\n\n const affixedTableHeaderEl = tableRef.value?.$el.querySelector('.t-table__affixed-header-elm')\n if (affixedTableHeaderEl) {\n affixedTableHeaderEl.scrollLeft = (evt.target as HTMLElement).scrollLeft\n }\n\n requestAnimationFrame(() => {\n isScrollSyncing.value = false\n })\n }\n })\n\n const {\n stop: tableContentStop,\n pause: tableContentPause,\n resume: tableContentResume\n } = useIntersectionObserver(\n tableContentEl,\n ([entry]) => {\n tableContentVisible.value = entry?.isIntersecting || false\n },\n {\n root: outsideScrollEl\n }\n )\n\n const { isOutside: isOutsideTableContent, stop: outsideTableContentStop } =\n useMouseInElement(tableContentEl)\n\n const reProps = computed(() => {\n const {\n service,\n manual,\n transformParams,\n transformRes,\n pagination,\n cacheKey,\n cacheTime,\n pollingInterval,\n onBefore,\n onAfter,\n onSuccess,\n onError,\n\n loadingWithData,\n\n loading,\n selectType,\n data,\n selectedRowKeys,\n activeRowKeys,\n columns,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes,\n\n selectOnRowClick,\n expandOnRowClick,\n tree,\n onScroll,\n onRowClick,\n bordered,\n headerAffixedTop,\n ...tableOptions\n } = props\n\n // 处理懒加载配置\n const reTableOptions = tableOptions as TdEnhancedTableProps<D>\n let reTransformRes = transformRes\n\n const reTree = tree ? { ...tree, ...easyCopy(qdServiceTableTreeConfig) } : tree\n\n if (reTree?.lazyLoad) {\n reTransformRes = async (res) => {\n let temp: ServicePageRes<D> | undefined\n if (transformRes) {\n const [trErr, trRes] = await suspectedWrapperPromise(transformRes(res))\n if (trErr) throw trErr\n\n temp = trRes\n } else {\n temp = res as ServicePageRes<D>\n }\n\n temp.records.forEach((item) => {\n if (item.children) return\n\n item.children = true as unknown as D[]\n })\n\n return temp\n }\n\n // 如果用户没有配置 treeExpandAndFoldIcon,生成默认的\n if (!tableOptions.treeExpandAndFoldIcon) {\n reTableOptions.treeExpandAndFoldIcon = (h, { row, type }) => {\n const children = row.children as unknown\n\n if (treeLoadIds.value.includes(row.id) && children === true) {\n return <LoadingIcon style={{ color: 'var(--td-brand-color)' }} />\n }\n\n if (children === true && row.__qdTreeLoaded) {\n return <AddRectangleIcon style={{ color: 'transparent', cursor: 'default' }} />\n }\n\n return type === 'expand' ? <AddRectangleIcon /> : <MinusRectangleIcon />\n }\n }\n\n // 如果用户没有配置 onExpandedTreeNodesChange,生成默认的\n if (!tableOptions.onExpandedTreeNodesChange) {\n reTableOptions.onExpandedTreeNodesChange = async (currentExpandedTreeNodes, options) => {\n const { row, rowState } = options\n if (!service || !row || !rowState) return\n\n const { level } = rowState\n const { __qdTreeLoaded } = row\n const { maxLevel } = reTree\n const id = row[props.rowKey || qdServiceTableProps.rowKey]\n\n // 如果已加载或达到最大层级,不再加载\n if (\n treeLoadIds.value.includes(id) ||\n __qdTreeLoaded ||\n isEmpty(level) ||\n (!isEmpty(maxLevel) && level! >= maxLevel!)\n ) {\n return\n }\n\n // 设置加载状态\n treeLoadIds.value.push(id)\n tableRef.value?.setData(id, { ...row, __qdTreeLoaded: true })\n\n const { transformParams, transformRes } = reTree\n\n const currentParams = options\n let tParams: TP | undefined\n\n if (transformParams) {\n const [tpErr, tpRes] = await suspectedWrapperPromise(transformParams(currentParams))\n if (tpErr) throw tpErr\n tParams = tpRes\n }\n\n const [serviceErr, serviceRes] = await suspectedWrapperPromise(\n service(tParams || (currentParams as TP))\n )\n if (serviceErr) {\n removeTreeLoadId(id)\n throw serviceErr\n }\n\n let temp: ServicePageRes<D> | undefined\n if (transformRes) {\n const [trErr, trRes] = await suspectedWrapperPromise(transformRes(serviceRes, options))\n if (trErr) {\n removeTreeLoadId(id)\n throw trErr\n }\n\n temp = trRes\n } else {\n temp = serviceRes as ServicePageRes<D>\n }\n\n removeTreeLoadId(id)\n if (!temp.records) temp.records = []\n if (isEmpty(temp.total)) temp.total = temp.records.length\n\n if (!temp.records.length) return\n\n const childrenKey = reTree.childrenKey || qdServiceTableTreeConfig.childrenKey\n tableRef.value?.setData(id, {\n ...row,\n __qdTreeLoaded: true,\n [childrenKey]: []\n })\n tableRef.value?.appendTo(\n id,\n temp.records.map((item) => {\n if (item.children) return item\n\n return {\n ...item,\n [childrenKey]: isEmpty(maxLevel) ? true : level! + 1 < maxLevel!\n }\n })\n )\n }\n }\n }\n\n const reColumns = columns || []\n if (selectType) {\n const selectIdx = reColumns.findIndex(\n (item) => item.type === 'single' || item.type === 'multiple'\n )\n const defaultSelect: (typeof reColumns)[number] = {\n colKey: 'row-select',\n type: selectType,\n align: 'center',\n width: 50\n }\n\n if (selectIdx > -1) {\n reColumns[selectIdx] = {\n ...defaultSelect,\n ...reColumns[selectIdx]\n }\n } else {\n reColumns.unshift(defaultSelect)\n }\n }\n\n const reSelectOnRowClick =\n selectOnRowClick ??\n (onRowClick ? undefined : !expandOnRowClick && !reTree?.expandTreeNodeOnClick)\n\n const reOnScroll: typeof onScroll = (params) => {\n onScroll?.(params)\n\n const target = params.e.target as HTMLElement\n if (!target) return\n\n const { scrollTop, scrollLeft } = target\n scrollRecord.top = scrollTop\n scrollRecord.left = scrollLeft\n }\n\n const reHeaderAffixedTop =\n outsideScrollEl.value && tableContentVisible.value\n ? Object.assign({ container: () => outsideScrollEl.value }, headerAffixedTop)\n : headerAffixedTop\n\n return {\n loadingWithData,\n columns: reColumns,\n tableOptions: {\n ...reTableOptions,\n\n selectOnRowClick: reSelectOnRowClick,\n expandOnRowClick,\n tree: reTree,\n onScroll: reOnScroll,\n onRowClick,\n headerAffixedTop: reHeaderAffixedTop,\n bordered: bordered ?? tableT('bordered') ?? true\n } as unknown as TdEnhancedTableProps<TableRowData>,\n externalLoad: loading,\n serviceOptions: {\n service,\n manual,\n transformParams,\n transformRes: reTransformRes,\n pagination,\n cacheKey,\n cacheTime,\n pollingInterval,\n onBefore,\n onAfter,\n onSuccess,\n onError\n },\n models: {\n data,\n selectedRowKeys,\n activeRowKeys,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n }\n }\n })\n\n const autoWidthColumns = computed(() => {\n const containerWidth = tableContentRect.width\n const columns = reProps.value.columns\n const noWidthCols = columns.filter((c) => isEmpty(c.width))\n const fixedWidth = columns\n .filter((c) => !isEmpty(c.width))\n .reduce((sum, c) => sum + Number(c.width), 0)\n\n if (containerWidth <= 0 || !noWidthCols.length)\n return columns as unknown as TdEnhancedTableProps['columns']\n\n const bodyMinWidth =\n fixedWidth +\n noWidthCols.reduce(\n (sum, c) => sum + (!isEmpty(c.minWidth) ? Number(c.minWidth) : defaultMinWidth),\n 0\n )\n const totalFlexWidth = containerWidth - bodyMinWidth\n const allColumnsWidth = noWidthCols.reduce(\n (sum, c) => sum + (!isEmpty(c.minWidth) ? Number(c.minWidth) : defaultMinWidth),\n 0\n )\n const flexWidthPerPixel =\n totalFlexWidth > 0 && allColumnsWidth > 0 ? totalFlexWidth / allColumnsWidth : 0\n\n return columns.map((item) => {\n if (!isEmpty(item.width)) return item\n\n const base = !isEmpty(item.minWidth) ? Number(item.minWidth) : defaultMinWidth\n const width = base + base * flexWidthPerPixel\n return { ...item, width }\n }) as unknown as TdEnhancedTableProps['columns']\n })\n\n const {\n firstLoad,\n manualTriggerLoad,\n loading,\n current,\n pageSize,\n total,\n changeCurrent,\n changePageSize,\n changePagination,\n runAsync,\n run,\n cancel,\n refresh,\n refreshAsync\n } = useServicePagination({\n ...reProps.value.serviceOptions,\n onSuccess: async (res) => {\n data.value = res.list\n\n if (reProps.value.tableOptions.tree?.defaultExpandAll) {\n tableRef.value?.foldAll()\n nextTick(() => {\n tableRef.value?.expandAll()\n })\n }\n reProps.value.serviceOptions.onSuccess?.(res)\n }\n })\n\n const tableLoad = computed<TdEnhancedTableProps['loading']>(() => {\n const { externalLoad, loadingWithData } = reProps.value\n if (externalLoad) return true\n if (!data.value?.length && firstLoad.value) return true\n if (manualTriggerLoad.value) {\n if (data.value?.length) {\n if (loadingWithData) return true\n return false\n }\n return true\n }\n\n return false\n })\n\n const rePagination = computed(() => {\n return !reProps.value.serviceOptions.service ||\n reProps.value.serviceOptions.pagination === false\n ? undefined\n : {\n current: current.value,\n pageSize: pageSize.value,\n total: total.value,\n pageSizeOptions: [5, 10, 20, 50, 100],\n onCurrentChange: changeCurrent,\n onPageSizeChange: changePageSize\n }\n })\n\n function removeTreeLoadId(id: (typeof treeLoadIds.value)[number]) {\n const index = treeLoadIds.value.findIndex((item) => item === id)\n if (index === -1) return\n\n treeLoadIds.value.splice(index, 1)\n }\n\n function resumeScrollRecord() {\n const el = tableRef.value?.$el\n if (!el) return\n\n // NOTE 暂时不考虑虚拟列表以及外层滚动\n const scrollEl = tableContentEl.value\n if (!scrollEl) return\n\n const { scrollTop, scrollLeft } = scrollEl\n const { top, left } = scrollRecord\n if (top === scrollTop && left === scrollLeft) return\n\n scrollEl.scrollTo({ top, left })\n }\n\n function getAllColKeys(cols: typeof reProps.value.tableOptions.columns) {\n if (!cols) return []\n\n return cols.reduce((keys: string[], col) => {\n if (col.children && col.children.length > 0) {\n keys.push(...getAllColKeys(col.children))\n } else if (col.colKey) {\n keys.push(col.colKey)\n }\n return keys\n }, [])\n }\n\n function onResize(entries: ResizeObserverEntry[]) {\n const el = entries[0].target as HTMLElement\n outsideScrollEl.value = getScrollEl(el as HTMLElement)\n outsideScrollRect.update()\n\n const headerEl = el.querySelector('.t-table__header') as typeof tableHeaderEl.value\n\n tableHeaderEl.value = headerEl\n let headerH = 0\n if (headerEl) headerH = headerEl.clientHeight\n tableHeaderH.value = headerH\n\n const contentEl = el.querySelector('.t-table__content') as typeof tableContentEl.value\n tableContentEl.value = contentEl\n }\n\n watch(\n columnControllerVisible,\n (visible) => {\n const { columns } = reProps.value.tableOptions\n if (visible && !displayColumns.value && columns) {\n displayColumns.value = getAllColKeys(columns)\n }\n },\n { immediate: true }\n )\n\n onActivated(() => {\n resumeScrollRecord()\n tableContentResume()\n })\n\n onDeactivated(() => {\n tableContentPause()\n })\n\n onBeforeUnmount(() => {\n tableContentStop()\n outsideTableContentStop()\n })\n\n defineExpose(\n createExposeProxy(\n {\n data,\n tableLoad,\n firstLoad,\n manualTriggerLoad,\n loading,\n current,\n pageSize,\n total,\n changeCurrent,\n changePageSize,\n changePagination,\n runAsync,\n run,\n cancel,\n refresh,\n refreshAsync,\n getData: (key: TableRowValue) => {\n if (props.tree) return tableRef.value?.getData(key)\n\n return data.value.find(\n (item: D) => get(item, props.rowKey || qdServiceTableProps.rowKey) === key\n )\n }\n },\n tableRef\n ) as unknown as QdServiceTableInstanceFunctions<\n D,\n R,\n P,\n TP,\n Pag,\n typeof props.tree extends object ? true : false\n >\n )\n</script>\n\n<style lang=\"less\" scoped>\n .qd-service-table {\n height: 100%;\n display: flex;\n flex-direction: column;\n\n & > :deep(.t-table__content) {\n flex: 1;\n }\n\n &--ps-x-fixed {\n :deep(.ps__rail-x) {\n position: fixed;\n left: v-bind(tableContentLeft) !important;\n bottom: v-bind(outsideBottom) !important;\n }\n }\n }\n</style>\n"],"names":["defaultMinWidth","props","__props","emit","__emit","data","selectedRowKeys","activeRowKeys","columnControllerVisible","displayColumns","expandedRowKeys","filterValue","sort","expandedTreeNodes","useVModels","passive","vResize","resizeDirective","t","useConfig","tableT","tableRef","useTemplateRef","treeLoadIds","ref","scrollRecord","top","left","outsideScrollEl","tableHeaderEl","tableHeaderH","tableContentEl","tableContentVisible","isScrollSyncing","tableContentRect","reactive","useElementBounding","tableContentLeft","computed","outsideScrollRect","outsideBottom","value","window","innerHeight","bottom","tableHeaderHalfVisible","tableContentFullVisible","contentBottom","containerBottom","usePerfectScrollbar","watch","source","force","onScrollX","evt","scrollLeft","target","affixedTableHeaderEl","$el","querySelector","requestAnimationFrame","stop","tableContentStop","pause","tableContentPause","resume","tableContentResume","useIntersectionObserver","entry","isIntersecting","root","isOutside","isOutsideTableContent","outsideTableContentStop","useMouseInElement","reProps","service","manual","transformParams","transformRes","pagination","cacheKey","cacheTime","pollingInterval","onBefore","onAfter","onSuccess","onError","loadingWithData","loading","selectType","columns","selectOnRowClick","expandOnRowClick","tree","onScroll","onRowClick","bordered","headerAffixedTop","tableOptions","reTableOptions","reTransformRes","reTree","easyCopy","qdServiceTableTreeConfig","lazyLoad","res","temp","trErr","trRes","suspectedWrapperPromise","records","forEach","item","children","treeExpandAndFoldIcon","h","row","type","includes","id","_createVNode2","LoadingIcon","color","__qdTreeLoaded","AddRectangleIcon","cursor","MinusRectangleIcon","onExpandedTreeNodesChange","currentExpandedTreeNodes","options","rowState","level","maxLevel","rowKey","qdServiceTableProps","isEmpty","push","setData","currentParams","tParams","tpErr","tpRes","serviceErr","serviceRes","removeTreeLoadId","total","length","childrenKey","appendTo","map","reColumns","selectIdx","findIndex","defaultSelect","colKey","align","width","unshift","reSelectOnRowClick","undefined","expandTreeNodeOnClick","reOnScroll","params","e","scrollTop","reHeaderAffixedTop","Object","assign","container","externalLoad","serviceOptions","models","autoWidthColumns","containerWidth","noWidthCols","filter","c","fixedWidth","reduce","sum","Number","bodyMinWidth","minWidth","totalFlexWidth","allColumnsWidth","flexWidthPerPixel","base","firstLoad","manualTriggerLoad","current","pageSize","changeCurrent","changePageSize","changePagination","runAsync","run","cancel","refresh","refreshAsync","useServicePagination","list","defaultExpandAll","foldAll","nextTick","expandAll","tableLoad","rePagination","pageSizeOptions","onCurrentChange","onPageSizeChange","index","splice","resumeScrollRecord","el","scrollEl","scrollTo","getAllColKeys","cols","keys","col","onResize","entries","getScrollEl","update","headerEl","headerH","clientHeight","contentEl","visible","immediate","onActivated","onDeactivated","onBeforeUnmount","__expose","createExposeProxy","getData","key","find","get","_createBlock","_resolveDynamicComponent","_unref","TEnhancedTable","TTable","_mergeProps","class","headerBg","$event","empty","_createVNode","TEmpty","title","$slots","_","name","fn","_withCtx","slotProps","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.vue2.mjs","sources":["../../../../src/components/service/table/index.vue"],"sourcesContent":["<template>\n <component\n :is=\"reProps.tableOptions.tree ? TEnhancedTable : TTable\"\n ref=\"table\"\n :class=\"[\n 'qd-service-table',\n headerBg ? '' : 't-table--header-bg-inherit',\n isOutsideTableContent ? '' : 'qd-service-table--inside-table-content',\n tableContentVisible && tableHeaderHalfVisible && !tableContentFullVisible\n ? 'qd-service-table--ps-x-fixed'\n : ''\n ]\"\n v-resize=\"onResize\"\n v-model:selected-row-keys=\"selectedRowKeys\"\n v-model:active-row-keys=\"activeRowKeys\"\n v-model:column-controller-visible=\"columnControllerVisible\"\n v-model:display-columns=\"displayColumns\"\n v-model:expanded-row-keys=\"expandedRowKeys\"\n v-model:filter-value=\"filterValue\"\n v-model:sort=\"reSort\"\n v-model:expanded-tree-nodes=\"expandedTreeNodes\"\n v-bind=\"reProps.tableOptions\"\n :on-sort-change=\"reOnSortChange\"\n :columns=\"autoWidthColumns\"\n :loading=\"tableLoad\"\n :data=\"data\"\n :pagination=\"rePagination\"\n >\n <template #empty>\n <t-empty class=\"qd-service-table__empty\" :title=\"t('emptyText')\" />\n </template>\n\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </component>\n</template>\n\n<script\n setup\n lang=\"tsx\"\n generic=\"\n D extends TableRowData = TableRowData,\n R = unknown,\n P = ServicePageParams,\n TP = P,\n Pag extends ServicePagination = ServicePagination\n \"\n>\n import {\n useElementBounding,\n useIntersectionObserver,\n useMouseInElement,\n useVModels\n } from '@vueuse/core'\n import { get } from 'lodash-es'\n import type {\n ServiceMaybePageParams,\n ServicePageParams,\n ServicePageRes,\n ServicePagination\n } from 'qidian-shared'\n import {\n createExposeProxy,\n easyCopy,\n isEmpty,\n suspectedWrapperPromise,\n useServicePagination\n } from 'qidian-shared'\n import { getScrollEl, resizeDirective } from 'qidian-shared'\n import { AddRectangleIcon, LoadingIcon, MinusRectangleIcon } from 'tdesign-icons-vue-next'\n import type {\n EnhancedTableInstanceFunctions,\n TableRowData,\n TableRowValue,\n TdEnhancedTableProps\n } from 'tdesign-vue-next'\n import type { SortInfo, TableSort } from 'tdesign-vue-next'\n import {\n Empty as TEmpty,\n EnhancedTable as TEnhancedTable,\n Table as TTable\n } from 'tdesign-vue-next'\n import type { ComponentPublicInstance } from 'vue'\n import {\n computed,\n nextTick,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n reactive,\n ref,\n useTemplateRef,\n watch\n } from 'vue'\n\n import { usePerfectScrollbar } from '../../../hooks'\n import { useConfig } from '../../config-provider/useConfig'\n import { qdServiceTableProps, qdServiceTableTreeConfig } from './props'\n import type { QdServiceTableInstanceFunctions, QdServiceTableProps } from './types'\n\n defineOptions({\n name: 'QdServiceTable'\n })\n\n type Props = QdServiceTableProps<D, R, P, TP, Pag>\n\n const props = withDefaults(defineProps<Props>(), qdServiceTableProps)\n const emit = defineEmits<{\n 'update:data': [Props['data']]\n 'update:selectedRowKeys': [Props['selectedRowKeys']]\n 'update:activeRowKeys': [Props['activeRowKeys']]\n 'update:columnControllerVisible': [Props['columnControllerVisible']]\n 'update:displayColumns': [Props['displayColumns']]\n 'update:expandedRowKeys': [Props['expandedRowKeys']]\n 'update:filterValue': [Props['filterValue']]\n 'update:sort': [Props['sort']]\n 'update:expandedTreeNodes': [Props['expandedTreeNodes']]\n }>()\n const {\n data,\n selectedRowKeys,\n activeRowKeys,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n } = useVModels<typeof props, keyof typeof emit>(props, emit, { passive: true })\n\n const innerSort = ref<TableSort | undefined>(getDefaultSort())\n const reSort = computed<TableSort | undefined>({\n get: () => sort.value ?? innerSort.value,\n set: (value) => {\n innerSort.value = normalizeSort(value)\n sort.value = innerSort.value\n }\n })\n\n const vResize = resizeDirective\n const { t } = useConfig('crud')\n const { t: tableT } = useConfig('table')\n const tableRef = useTemplateRef<EnhancedTableInstanceFunctions & ComponentPublicInstance>('table')\n const treeLoadIds = ref<(string | number)[]>([])\n\n const defaultMinWidth = 80\n\n const scrollRecord = { top: 0, left: 0 }\n const outsideScrollEl = ref<HTMLElement | null>(null)\n const tableHeaderEl = ref<HTMLElement | null>(null)\n const tableHeaderH = ref(0)\n const tableContentEl = ref<HTMLElement | null>(null)\n const tableContentVisible = ref(false)\n const isScrollSyncing = ref(false)\n\n const tableContentRect = reactive(useElementBounding(tableContentEl))\n const tableContentLeft = computed(() => `${tableContentRect.left}px`)\n const outsideScrollRect = reactive(useElementBounding(outsideScrollEl))\n const outsideBottom = computed(() =>\n outsideScrollEl.value ? `${window.innerHeight - outsideScrollRect.bottom}px` : '0'\n )\n\n const tableHeaderHalfVisible = computed(() => {\n if (!tableContentVisible.value) return false\n return tableContentRect.top + tableHeaderH.value * 0.5 <= outsideScrollRect.bottom\n })\n\n const tableContentFullVisible = computed(() => {\n if (!tableContentVisible.value) return false\n\n const contentBottom = tableContentRect.bottom\n const containerBottom = outsideScrollRect.bottom\n\n return contentBottom <= containerBottom\n })\n\n usePerfectScrollbar(tableContentEl, {\n watch: {\n source: data,\n force: true\n },\n onScrollX: (evt) => {\n if (isScrollSyncing.value) return\n if (!tableHeaderEl.value) return\n\n isScrollSyncing.value = true\n tableHeaderEl.value.scrollLeft = (evt.target as HTMLElement).scrollLeft\n\n const affixedTableHeaderEl = tableRef.value?.$el.querySelector('.t-table__affixed-header-elm')\n if (affixedTableHeaderEl) {\n affixedTableHeaderEl.scrollLeft = (evt.target as HTMLElement).scrollLeft\n }\n\n requestAnimationFrame(() => {\n isScrollSyncing.value = false\n })\n }\n })\n\n const {\n stop: tableContentStop,\n pause: tableContentPause,\n resume: tableContentResume\n } = useIntersectionObserver(\n tableContentEl,\n ([entry]) => {\n tableContentVisible.value = entry?.isIntersecting || false\n },\n {\n root: outsideScrollEl\n }\n )\n\n const { isOutside: isOutsideTableContent, stop: outsideTableContentStop } =\n useMouseInElement(tableContentEl)\n\n const reProps = computed(() => {\n const {\n service,\n manual,\n transformParams,\n transformRes,\n pagination,\n cacheKey,\n cacheTime,\n pollingInterval,\n onBefore,\n onAfter,\n onSuccess,\n onError,\n\n loadingWithData,\n\n loading,\n selectType,\n data,\n selectedRowKeys,\n activeRowKeys,\n columns,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes,\n\n selectOnRowClick,\n expandOnRowClick,\n tree,\n onScroll,\n onRowClick,\n bordered,\n headerAffixedTop,\n ...tableOptions\n } = props\n\n // 处理懒加载配置\n const reTableOptions = tableOptions as TdEnhancedTableProps<D>\n let reTransformRes = transformRes\n\n const reTree = tree ? { ...tree, ...easyCopy(qdServiceTableTreeConfig) } : tree\n\n if (reTree?.lazyLoad) {\n reTransformRes = async (res) => {\n let temp: ServicePageRes<D> | undefined\n if (transformRes) {\n const [trErr, trRes] = await suspectedWrapperPromise(transformRes(res))\n if (trErr) throw trErr\n\n temp = trRes\n } else {\n temp = res as ServicePageRes<D>\n }\n\n temp.records.forEach((item) => {\n if (item.children) return\n\n item.children = true as unknown as D[]\n })\n\n return temp\n }\n\n // 如果用户没有配置 treeExpandAndFoldIcon,生成默认的\n if (!tableOptions.treeExpandAndFoldIcon) {\n reTableOptions.treeExpandAndFoldIcon = (h, { row, type }) => {\n const children = row.children as unknown\n\n if (treeLoadIds.value.includes(row.id) && children === true) {\n return <LoadingIcon style={{ color: 'var(--td-brand-color)' }} />\n }\n\n if (children === true && row.__qdTreeLoaded) {\n return <AddRectangleIcon style={{ color: 'transparent', cursor: 'default' }} />\n }\n\n return type === 'expand' ? <AddRectangleIcon /> : <MinusRectangleIcon />\n }\n }\n\n // 如果用户没有配置 onExpandedTreeNodesChange,生成默认的\n if (!tableOptions.onExpandedTreeNodesChange) {\n reTableOptions.onExpandedTreeNodesChange = async (currentExpandedTreeNodes, options) => {\n const { row, rowState } = options\n if (!service || !row || !rowState) return\n\n const { level } = rowState\n const { __qdTreeLoaded } = row\n const { maxLevel } = reTree\n const id = row[props.rowKey || qdServiceTableProps.rowKey]\n\n // 如果已加载或达到最大层级,不再加载\n if (\n treeLoadIds.value.includes(id) ||\n __qdTreeLoaded ||\n isEmpty(level) ||\n (!isEmpty(maxLevel) && level! >= maxLevel!)\n ) {\n return\n }\n\n // 设置加载状态\n treeLoadIds.value.push(id)\n tableRef.value?.setData(id, { ...row, __qdTreeLoaded: true })\n\n const { transformParams, transformRes } = reTree\n\n const currentParams = options\n let tParams: TP | undefined\n\n if (transformParams) {\n const [tpErr, tpRes] = await suspectedWrapperPromise(transformParams(currentParams))\n if (tpErr) throw tpErr\n tParams = tpRes\n }\n\n const [serviceErr, serviceRes] = await suspectedWrapperPromise(\n service(tParams || (currentParams as TP))\n )\n if (serviceErr) {\n removeTreeLoadId(id)\n throw serviceErr\n }\n\n let temp: ServicePageRes<D> | undefined\n if (transformRes) {\n const [trErr, trRes] = await suspectedWrapperPromise(transformRes(serviceRes, options))\n if (trErr) {\n removeTreeLoadId(id)\n throw trErr\n }\n\n temp = trRes\n } else {\n temp = serviceRes as ServicePageRes<D>\n }\n\n removeTreeLoadId(id)\n if (!temp.records) temp.records = []\n if (isEmpty(temp.total)) temp.total = temp.records.length\n\n if (!temp.records.length) return\n\n const childrenKey = reTree.childrenKey || qdServiceTableTreeConfig.childrenKey\n tableRef.value?.setData(id, {\n ...row,\n __qdTreeLoaded: true,\n [childrenKey]: []\n })\n tableRef.value?.appendTo(\n id,\n temp.records.map((item) => {\n if (item.children) return item\n\n return {\n ...item,\n [childrenKey]: isEmpty(maxLevel) ? true : level! + 1 < maxLevel!\n }\n })\n )\n }\n }\n }\n\n const reColumns = columns || []\n if (selectType) {\n const selectIdx = reColumns.findIndex(\n (item) => item.type === 'single' || item.type === 'multiple'\n )\n const defaultSelect: (typeof reColumns)[number] = {\n colKey: 'row-select',\n type: selectType,\n align: 'center',\n width: 50\n }\n\n if (selectIdx > -1) {\n reColumns[selectIdx] = {\n ...defaultSelect,\n ...reColumns[selectIdx]\n }\n } else {\n reColumns.unshift(defaultSelect)\n }\n }\n\n const reSelectOnRowClick =\n selectOnRowClick ??\n (onRowClick ? undefined : !expandOnRowClick && !reTree?.expandTreeNodeOnClick)\n\n const reOnScroll: typeof onScroll = (params) => {\n onScroll?.(params)\n\n const target = params.e.target as HTMLElement\n if (!target) return\n\n const { scrollTop, scrollLeft } = target\n scrollRecord.top = scrollTop\n scrollRecord.left = scrollLeft\n }\n\n const reHeaderAffixedTop =\n outsideScrollEl.value && tableContentVisible.value\n ? Object.assign({ container: () => outsideScrollEl.value }, headerAffixedTop)\n : headerAffixedTop\n\n return {\n loadingWithData,\n columns: reColumns,\n tableOptions: {\n ...reTableOptions,\n\n selectOnRowClick: reSelectOnRowClick,\n expandOnRowClick,\n tree: reTree,\n onScroll: reOnScroll,\n onRowClick,\n headerAffixedTop: reHeaderAffixedTop,\n bordered: bordered ?? tableT('bordered') ?? true\n } as unknown as TdEnhancedTableProps<TableRowData>,\n externalLoad: loading,\n serviceOptions: {\n service,\n manual,\n transformParams: transformServiceParams,\n transformRes: reTransformRes,\n pagination,\n cacheKey,\n cacheTime,\n pollingInterval,\n onBefore,\n onAfter,\n onSuccess,\n onError\n },\n models: {\n data,\n selectedRowKeys,\n activeRowKeys,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n }\n }\n })\n\n const autoWidthColumns = computed(() => {\n const containerWidth = tableContentRect.width\n const columns = reProps.value.columns\n const noWidthCols = columns.filter((c) => isEmpty(c.width))\n const fixedWidth = columns\n .filter((c) => !isEmpty(c.width))\n .reduce((sum, c) => sum + Number(c.width), 0)\n\n if (containerWidth <= 0 || !noWidthCols.length)\n return columns as unknown as TdEnhancedTableProps['columns']\n\n const bodyMinWidth =\n fixedWidth +\n noWidthCols.reduce(\n (sum, c) => sum + (!isEmpty(c.minWidth) ? Number(c.minWidth) : defaultMinWidth),\n 0\n )\n const totalFlexWidth = containerWidth - bodyMinWidth\n const allColumnsWidth = noWidthCols.reduce(\n (sum, c) => sum + (!isEmpty(c.minWidth) ? Number(c.minWidth) : defaultMinWidth),\n 0\n )\n const flexWidthPerPixel =\n totalFlexWidth > 0 && allColumnsWidth > 0 ? totalFlexWidth / allColumnsWidth : 0\n\n return columns.map((item) => {\n if (!isEmpty(item.width)) return item\n\n const base = !isEmpty(item.minWidth) ? Number(item.minWidth) : defaultMinWidth\n const width = base + base * flexWidthPerPixel\n return { ...item, width }\n }) as unknown as TdEnhancedTableProps['columns']\n })\n\n const {\n firstLoad,\n manualTriggerLoad,\n loading,\n current,\n pageSize,\n total,\n changeCurrent,\n changePageSize,\n changePagination,\n runAsync,\n run,\n cancel,\n refresh,\n refreshAsync\n } = useServicePagination({\n ...reProps.value.serviceOptions,\n onSuccess: async (res) => {\n data.value = res.list\n\n if (reProps.value.tableOptions.tree?.defaultExpandAll) {\n tableRef.value?.foldAll()\n nextTick(() => {\n tableRef.value?.expandAll()\n })\n }\n reProps.value.serviceOptions.onSuccess?.(res)\n }\n })\n\n const reOnSortChange: TdEnhancedTableProps<TableRowData>['onSortChange'] = (\n sortValue,\n options\n ) => {\n reProps.value.tableOptions.onSortChange?.(sortValue, options)\n changeCurrent(1)\n }\n\n const tableLoad = computed<TdEnhancedTableProps['loading']>(() => {\n const { externalLoad, loadingWithData } = reProps.value\n if (externalLoad) return true\n if (!data.value?.length && firstLoad.value) return true\n if (manualTriggerLoad.value) {\n if (data.value?.length) {\n if (loadingWithData) return true\n return false\n }\n return true\n }\n\n return false\n })\n\n const rePagination = computed(() => {\n return !reProps.value.serviceOptions.service ||\n reProps.value.serviceOptions.pagination === false\n ? undefined\n : {\n current: current.value,\n pageSize: pageSize.value,\n total: total.value,\n pageSizeOptions: [5, 10, 20, 50, 100],\n onCurrentChange: changeCurrent,\n onPageSizeChange: changePageSize\n }\n })\n\n function normalizeSort(value: TableSort | undefined): TableSort | undefined {\n const sortList = Array.isArray(value) ? value : value ? [value] : []\n\n if (props.multipleSort) return sortList\n\n return sortList[0]\n }\n\n function getDefaultSort() {\n if (props.defaultSort) return normalizeSort(props.defaultSort)\n\n return props.multipleSort ? [] : undefined\n }\n\n function getSortParams(sortValue: TableSort | undefined) {\n const sortList = Array.isArray(sortValue) ? sortValue : sortValue ? [sortValue] : []\n const validSortList = sortList.filter(\n (item: SortInfo) => item.sortBy && item.descending !== undefined\n )\n\n if (!validSortList.length) return {}\n\n return {\n orderByColumn: validSortList.map((item: SortInfo) => item.sortBy).join(','),\n isAsc: validSortList.map((item: SortInfo) => (item.descending ? 'desc' : 'asc')).join(',')\n }\n }\n\n async function transformServiceParams(params: ServiceMaybePageParams<Pag>) {\n const mergedParams = {\n ...params,\n ...getSortParams(reSort.value)\n } as ServiceMaybePageParams<Pag>\n\n if (props.transformParams) return props.transformParams(mergedParams)\n\n return mergedParams as unknown as TP\n }\n\n function removeTreeLoadId(id: (typeof treeLoadIds.value)[number]) {\n const index = treeLoadIds.value.findIndex((item) => item === id)\n if (index === -1) return\n\n treeLoadIds.value.splice(index, 1)\n }\n\n function resumeScrollRecord() {\n const el = tableRef.value?.$el\n if (!el) return\n\n // NOTE 暂时不考虑虚拟列表以及外层滚动\n const scrollEl = tableContentEl.value\n if (!scrollEl) return\n\n const { scrollTop, scrollLeft } = scrollEl\n const { top, left } = scrollRecord\n if (top === scrollTop && left === scrollLeft) return\n\n scrollEl.scrollTo({ top, left })\n }\n\n function getAllColKeys(cols: typeof reProps.value.tableOptions.columns) {\n if (!cols) return []\n\n return cols.reduce((keys: string[], col) => {\n if (col.children && col.children.length > 0) {\n keys.push(...getAllColKeys(col.children))\n } else if (col.colKey) {\n keys.push(col.colKey)\n }\n return keys\n }, [])\n }\n\n function onResize(entries: ResizeObserverEntry[]) {\n const el = entries[0].target as HTMLElement\n outsideScrollEl.value = getScrollEl(el as HTMLElement)\n outsideScrollRect.update()\n\n const headerEl = el.querySelector('.t-table__header') as typeof tableHeaderEl.value\n\n tableHeaderEl.value = headerEl\n let headerH = 0\n if (headerEl) headerH = headerEl.clientHeight\n tableHeaderH.value = headerH\n\n const contentEl = el.querySelector('.t-table__content') as typeof tableContentEl.value\n tableContentEl.value = contentEl\n }\n\n watch(\n columnControllerVisible,\n (visible) => {\n const { columns } = reProps.value.tableOptions\n if (visible && !displayColumns.value && columns) {\n displayColumns.value = getAllColKeys(columns)\n }\n },\n { immediate: true }\n )\n\n onActivated(() => {\n resumeScrollRecord()\n tableContentResume()\n })\n\n onDeactivated(() => {\n tableContentPause()\n })\n\n onBeforeUnmount(() => {\n tableContentStop()\n outsideTableContentStop()\n })\n\n defineExpose(\n createExposeProxy(\n {\n data,\n tableLoad,\n firstLoad,\n manualTriggerLoad,\n loading,\n current,\n pageSize,\n total,\n changeCurrent,\n changePageSize,\n changePagination,\n runAsync,\n run,\n cancel,\n refresh,\n refreshAsync,\n getData: (key: TableRowValue) => {\n if (props.tree) return tableRef.value?.getData(key)\n\n return data.value.find(\n (item: D) => get(item, props.rowKey || qdServiceTableProps.rowKey) === key\n )\n }\n },\n tableRef\n ) as unknown as QdServiceTableInstanceFunctions<\n D,\n R,\n P,\n TP,\n Pag,\n typeof props.tree extends object ? true : false\n >\n )\n</script>\n\n<style lang=\"less\" scoped>\n .qd-service-table {\n height: 100%;\n display: flex;\n flex-direction: column;\n\n & > :deep(.t-table__content) {\n flex: 1;\n }\n\n &--ps-x-fixed {\n :deep(.ps__rail-x) {\n position: fixed;\n left: v-bind(tableContentLeft) !important;\n bottom: v-bind(outsideBottom) !important;\n }\n }\n }\n</style>\n"],"names":["defaultMinWidth","props","__props","emit","__emit","data","selectedRowKeys","activeRowKeys","columnControllerVisible","displayColumns","expandedRowKeys","filterValue","sort","expandedTreeNodes","useVModels","passive","innerSort","ref","getDefaultSort","reSort","computed","get","value","set","normalizeSort","vResize","resizeDirective","t","useConfig","tableT","tableRef","useTemplateRef","treeLoadIds","scrollRecord","top","left","outsideScrollEl","tableHeaderEl","tableHeaderH","tableContentEl","tableContentVisible","isScrollSyncing","tableContentRect","reactive","useElementBounding","tableContentLeft","outsideScrollRect","outsideBottom","window","innerHeight","bottom","tableHeaderHalfVisible","tableContentFullVisible","contentBottom","containerBottom","usePerfectScrollbar","watch","source","force","onScrollX","evt","scrollLeft","target","affixedTableHeaderEl","$el","querySelector","requestAnimationFrame","stop","tableContentStop","pause","tableContentPause","resume","tableContentResume","useIntersectionObserver","entry","isIntersecting","root","isOutside","isOutsideTableContent","outsideTableContentStop","useMouseInElement","reProps","service","manual","transformParams","transformRes","pagination","cacheKey","cacheTime","pollingInterval","onBefore","onAfter","onSuccess","onError","loadingWithData","loading","selectType","columns","selectOnRowClick","expandOnRowClick","tree","onScroll","onRowClick","bordered","headerAffixedTop","tableOptions","reTableOptions","reTransformRes","reTree","easyCopy","qdServiceTableTreeConfig","lazyLoad","res","temp","trErr","trRes","suspectedWrapperPromise","records","forEach","item","children","treeExpandAndFoldIcon","h","row","type","includes","id","_createVNode2","LoadingIcon","color","__qdTreeLoaded","AddRectangleIcon","cursor","MinusRectangleIcon","onExpandedTreeNodesChange","currentExpandedTreeNodes","options","rowState","level","maxLevel","rowKey","qdServiceTableProps","isEmpty","push","setData","currentParams","tParams","tpErr","tpRes","serviceErr","serviceRes","removeTreeLoadId","total","length","childrenKey","appendTo","map","reColumns","selectIdx","findIndex","defaultSelect","colKey","align","width","unshift","reSelectOnRowClick","undefined","expandTreeNodeOnClick","reOnScroll","params","e","scrollTop","reHeaderAffixedTop","Object","assign","container","externalLoad","serviceOptions","transformServiceParams","models","autoWidthColumns","containerWidth","noWidthCols","filter","c","fixedWidth","reduce","sum","Number","bodyMinWidth","minWidth","totalFlexWidth","allColumnsWidth","flexWidthPerPixel","base","firstLoad","manualTriggerLoad","current","pageSize","changeCurrent","changePageSize","changePagination","runAsync","run","cancel","refresh","refreshAsync","useServicePagination","list","defaultExpandAll","foldAll","nextTick","expandAll","reOnSortChange","sortValue","onSortChange","tableLoad","rePagination","pageSizeOptions","onCurrentChange","onPageSizeChange","sortList","Array","isArray","multipleSort","defaultSort","getSortParams","validSortList","sortBy","descending","orderByColumn","join","isAsc","mergedParams","index","splice","resumeScrollRecord","el","scrollEl","scrollTo","getAllColKeys","cols","keys","col","onResize","entries","getScrollEl","update","headerEl","headerH","clientHeight","contentEl","visible","immediate","onActivated","onDeactivated","onBeforeUnmount","__expose","createExposeProxy","getData","key","find","_createBlock","_resolveDynamicComponent","_unref","TEnhancedTable","TTable","_mergeProps","class","headerBg","$event","empty","_createVNode","TEmpty","title","$slots","_","name","fn","_withCtx","slotProps","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps"],"mappings":";;;;;;;;;AAkJE,MAAMA,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAvCxB,UAAMC,QAAQC;AACd,UAAMC,OAAOC;AAWb,UAAM;AAAA,MACJC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,IACF,IAAIC,WAA4Cb,OAAOE,MAAM;AAAA,MAAEY,SAAS;AAAA,IAAK,CAAC;AAE9E,UAAMC,YAAYC,IAA2BC,gBAAgB;AAC7D,UAAMC,SAASC,SAAgC;AAAA,MAC7CC,KAAKA,MAAMT,KAAKU,SAASN,UAAUM;AAAAA,MACnCC,KAAMD,WAAU;AACdN,kBAAUM,QAAQE,cAAcF,KAAK;AACrCV,aAAKU,QAAQN,UAAUM;AAAAA,MACzB;AAAA,IACF,CAAC;AAED,UAAMG,UAAUC;AAChB,UAAM;AAAA,MAAEC;AAAAA,IAAE,IAAIC,UAAU,MAAM;AAC9B,UAAM;AAAA,MAAED,GAAGE;AAAAA,IAAO,IAAID,UAAU,OAAO;AACvC,UAAME,WAAWC,eAAyE,OAAO;AACjG,UAAMC,cAAcf,IAAyB,EAAE;AAI/C,UAAMgB,eAAe;AAAA,MAAEC,KAAK;AAAA,MAAGC,MAAM;AAAA;AACrC,UAAMC,kBAAkBnB,IAAwB,IAAI;AACpD,UAAMoB,gBAAgBpB,IAAwB,IAAI;AAClD,UAAMqB,eAAerB,IAAI,CAAC;AAC1B,UAAMsB,iBAAiBtB,IAAwB,IAAI;AACnD,UAAMuB,sBAAsBvB,IAAI,KAAK;AACrC,UAAMwB,kBAAkBxB,IAAI,KAAK;AAEjC,UAAMyB,mBAAmBC,SAASC,mBAAmBL,cAAc,CAAC;AACpE,UAAMM,mBAAmBzB,SAAS,MAAM,GAAGsB,iBAAiBP,IAAI,IAAI;AACpE,UAAMW,oBAAoBH,SAASC,mBAAmBR,eAAe,CAAC;AACtE,UAAMW,gBAAgB3B,SAAS,MAC7BgB,gBAAgBd,QAAQ,GAAG0B,OAAOC,cAAcH,kBAAkBI,MAAM,OAAO,GACjF;AAEA,UAAMC,yBAAyB/B,SAAS,MAAM;AAC5C,UAAI,CAACoB,oBAAoBlB,MAAO,QAAO;AACvC,aAAOoB,iBAAiBR,MAAMI,aAAahB,QAAQ,OAAOwB,kBAAkBI;AAAAA,IAC9E,CAAC;AAED,UAAME,0BAA0BhC,SAAS,MAAM;AAC7C,UAAI,CAACoB,oBAAoBlB,MAAO,QAAO;AAEvC,YAAM+B,gBAAgBX,iBAAiBQ;AACvC,YAAMI,kBAAkBR,kBAAkBI;AAE1C,aAAOG,iBAAiBC;AAAAA,IAC1B,CAAC;AAEDC,wBAAoBhB,gBAAgB;AAAA,MAClCiB,OAAO;AAAA,QACLC,QAAQpD;AAAAA,QACRqD,OAAO;AAAA;MAETC,WAAYC,SAAQ;AAClB,YAAInB,gBAAgBnB,MAAO;AAC3B,YAAI,CAACe,cAAcf,MAAO;AAE1BmB,wBAAgBnB,QAAQ;AACxBe,sBAAcf,MAAMuC,aAAcD,IAAIE,OAAuBD;AAE7D,cAAME,uBAAuBjC,SAASR,OAAO0C,IAAIC,cAAc,8BAA8B;AAC7F,YAAIF,sBAAsB;AACxBA,+BAAqBF,aAAcD,IAAIE,OAAuBD;AAAAA,QAChE;AAEAK,8BAAsB,MAAM;AAC1BzB,0BAAgBnB,QAAQ;AAAA,QAC1B,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAED,UAAM;AAAA,MACJ6C,MAAMC;AAAAA,MACNC,OAAOC;AAAAA,MACPC,QAAQC;AAAAA,QACNC,wBACFlC,gBACA,CAAC,CAACmC,KAAK,MAAM;AACXlC,0BAAoBlB,QAAQoD,OAAOC,kBAAkB;AAAA,IACvD,GACA;AAAA,MACEC,MAAMxC;AAAAA,IACR,CACF;AAEA,UAAM;AAAA,MAAEyC,WAAWC;AAAAA,MAAuBX,MAAMY;AAAAA,IAAwB,IACtEC,kBAAkBzC,cAAc;AAElC,UAAM0C,UAAU7D,SAAS,MAAM;AAC7B,YAAM;AAAA,QACJ8D;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QAEAC;AAAAA,QAEAC,SAAAA;AAAAA,QACAC;AAAAA,QACA3F,MAAAA;AAAAA,QACAC,iBAAAA;AAAAA,QACAC,eAAAA;AAAAA,QACA0F;AAAAA,QACAzF,yBAAAA;AAAAA,QACAC,gBAAAA;AAAAA,QACAC,iBAAAA;AAAAA,QACAC,aAAAA;AAAAA,QACAC,MAAAA;AAAAA,QACAC,mBAAAA;AAAAA,QAEAqF;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACA,GAAGC;AAAAA,MACL,IAAIxG;AAGJ,YAAMyG,iBAAiBD;AACvB,UAAIE,iBAAiBtB;AAErB,YAAMuB,SAASR,OAAO;AAAA,QAAE,GAAGA;AAAAA,QAAM,GAAGS,SAASC,wBAAwB;AAAA,MAAE,IAAIV;AAE3E,UAAIQ,QAAQG,UAAU;AACpBJ,yBAAiB,OAAOK,QAAQ;AAC9B,cAAIC;AACJ,cAAI5B,cAAc;AAChB,kBAAM,CAAC6B,OAAOC,KAAK,IAAI,MAAMC,wBAAwB/B,aAAa2B,GAAG,CAAC;AACtE,gBAAIE,MAAO,OAAMA;AAEjBD,mBAAOE;AAAAA,UACT,OAAO;AACLF,mBAAOD;AAAAA,UACT;AAEAC,eAAKI,QAAQC,QAASC,UAAS;AAC7B,gBAAIA,KAAKC,SAAU;AAEnBD,iBAAKC,WAAW;AAAA,UAClB,CAAC;AAED,iBAAOP;AAAAA,QACT;AAGA,YAAI,CAACR,aAAagB,uBAAuB;AACvCf,yBAAee,wBAAwB,CAACC,GAAG;AAAA,YAAEC;AAAAA,YAAKC;AAAAA,UAAK,MAAM;AAC3D,kBAAMJ,WAAWG,IAAIH;AAErB,gBAAIxF,YAAYV,MAAMuG,SAASF,IAAIG,EAAE,KAAKN,aAAa,MAAM;AAC3D,qBAAAO,YAAAC,aAAA;AAAA,gBAAA,SAA2B;AAAA,kBAAEC,OAAO;AAAA,gBAAwB;AAAA,cAAC,GAAA,IAAA;AAAA,YAC/D;AAEA,gBAAIT,aAAa,QAAQG,IAAIO,gBAAgB;AAC3C,qBAAAH,YAAAI,kBAAA;AAAA,gBAAA,SAAgC;AAAA,kBAAEF,OAAO;AAAA,kBAAeG,QAAQ;AAAA,gBAAU;AAAA,cAAC,GAAA,IAAA;AAAA,YAC7E;AAEA,mBAAOR,SAAS,WAAQG,YAAAI,kBAAA,MAAA,IAAA,IAAAJ,YAAAM,oBAAA,MAAA,IAAA;AAAA,UAC1B;AAAA,QACF;AAGA,YAAI,CAAC5B,aAAa6B,2BAA2B;AAC3C5B,yBAAe4B,4BAA4B,OAAOC,0BAA0BC,YAAY;AACtF,kBAAM;AAAA,cAAEb;AAAAA,cAAKc;AAAAA,YAAS,IAAID;AAC1B,gBAAI,CAACtD,WAAW,CAACyC,OAAO,CAACc,SAAU;AAEnC,kBAAM;AAAA,cAAEC;AAAAA,YAAM,IAAID;AAClB,kBAAM;AAAA,cAAEP;AAAAA,YAAe,IAAIP;AAC3B,kBAAM;AAAA,cAAEgB;AAAAA,YAAS,IAAI/B;AACrB,kBAAMkB,KAAKH,IAAI1H,MAAM2I,UAAUC,oBAAoBD,MAAM;AAGzD,gBACE5G,YAAYV,MAAMuG,SAASC,EAAE,KAC7BI,kBACAY,QAAQJ,KAAK,KACZ,CAACI,QAAQH,QAAQ,KAAKD,SAAUC,UACjC;AACA;AAAA,YACF;AAGA3G,wBAAYV,MAAMyH,KAAKjB,EAAE;AACzBhG,qBAASR,OAAO0H,QAAQlB,IAAI;AAAA,cAAE,GAAGH;AAAAA,cAAKO,gBAAgB;AAAA,YAAK,CAAC;AAE5D,kBAAM;AAAA,cAAE9C,iBAAAA;AAAAA,cAAiBC,cAAAA;AAAAA,YAAa,IAAIuB;AAE1C,kBAAMqC,gBAAgBT;AACtB,gBAAIU;AAEJ,gBAAI9D,kBAAiB;AACnB,oBAAM,CAAC+D,OAAOC,KAAK,IAAI,MAAMhC,wBAAwBhC,iBAAgB6D,aAAa,CAAC;AACnF,kBAAIE,MAAO,OAAMA;AACjBD,wBAAUE;AAAAA,YACZ;AAEA,kBAAM,CAACC,YAAYC,UAAU,IAAI,MAAMlC,wBACrClC,QAAQgE,WAAYD,aAAoB,CAC1C;AACA,gBAAII,YAAY;AACdE,+BAAiBzB,EAAE;AACnB,oBAAMuB;AAAAA,YACR;AAEA,gBAAIpC;AACJ,gBAAI5B,eAAc;AAChB,oBAAM,CAAC6B,OAAOC,KAAK,IAAI,MAAMC,wBAAwB/B,cAAaiE,YAAYd,OAAO,CAAC;AACtF,kBAAItB,OAAO;AACTqC,iCAAiBzB,EAAE;AACnB,sBAAMZ;AAAAA,cACR;AAEAD,qBAAOE;AAAAA,YACT,OAAO;AACLF,qBAAOqC;AAAAA,YACT;AAEAC,6BAAiBzB,EAAE;AACnB,gBAAI,CAACb,KAAKI,QAASJ,MAAKI,UAAU,CAAA;AAClC,gBAAIyB,QAAQ7B,KAAKuC,KAAK,EAAGvC,MAAKuC,QAAQvC,KAAKI,QAAQoC;AAEnD,gBAAI,CAACxC,KAAKI,QAAQoC,OAAQ;AAE1B,kBAAMC,cAAc9C,OAAO8C,eAAe5C,yBAAyB4C;AACnE5H,qBAASR,OAAO0H,QAAQlB,IAAI;AAAA,cAC1B,GAAGH;AAAAA,cACHO,gBAAgB;AAAA,cAChB,CAACwB,WAAW,GAAG,CAAA;AAAA,YACjB,CAAC;AACD5H,qBAASR,OAAOqI,SACd7B,IACAb,KAAKI,QAAQuC,IAAKrC,UAAS;AACzB,kBAAIA,KAAKC,SAAU,QAAOD;AAE1B,qBAAO;AAAA,gBACL,GAAGA;AAAAA,gBACH,CAACmC,WAAW,GAAGZ,QAAQH,QAAQ,IAAI,OAAOD,QAAS,IAAIC;AAAAA;YAE3D,CAAC,CACH;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,YAAMkB,YAAY5D,WAAW,CAAA;AAC7B,UAAID,YAAY;AACd,cAAM8D,YAAYD,UAAUE,UACzBxC,UAASA,KAAKK,SAAS,YAAYL,KAAKK,SAAS,UACpD;AACA,cAAMoC,gBAA4C;AAAA,UAChDC,QAAQ;AAAA,UACRrC,MAAM5B;AAAAA,UACNkE,OAAO;AAAA,UACPC,OAAO;AAAA;AAGT,YAAIL,YAAY,IAAI;AAClBD,oBAAUC,SAAS,IAAI;AAAA,YACrB,GAAGE;AAAAA,YACH,GAAGH,UAAUC,SAAS;AAAA;QAE1B,OAAO;AACLD,oBAAUO,QAAQJ,aAAa;AAAA,QACjC;AAAA,MACF;AAEA,YAAMK,qBACJnE,qBACCI,aAAagE,SAAY,CAACnE,oBAAoB,CAACS,QAAQ2D;AAE1D,YAAMC,aAA+BC,YAAW;AAC9CpE,mBAAWoE,MAAM;AAEjB,cAAM3G,SAAS2G,OAAOC,EAAE5G;AACxB,YAAI,CAACA,OAAQ;AAEb,cAAM;AAAA,UAAE6G;AAAAA,UAAW9G;AAAAA,QAAW,IAAIC;AAClC7B,qBAAaC,MAAMyI;AACnB1I,qBAAaE,OAAO0B;AAAAA,MACtB;AAEA,YAAM+G,qBACJxI,gBAAgBd,SAASkB,oBAAoBlB,QACzCuJ,OAAOC,OAAO;AAAA,QAAEC,WAAWA,MAAM3I,gBAAgBd;AAAAA,MAAM,GAAGkF,gBAAgB,IAC1EA;AAEN,aAAO;AAAA,QACLV;AAAAA,QACAG,SAAS4D;AAAAA,QACTpD,cAAc;AAAA,UACZ,GAAGC;AAAAA,UAEHR,kBAAkBmE;AAAAA,UAClBlE;AAAAA,UACAC,MAAMQ;AAAAA,UACNP,UAAUmE;AAAAA,UACVlE;AAAAA,UACAE,kBAAkBoE;AAAAA,UAClBrE,UAAUA,YAAY1E,OAAO,UAAU,KAAK;AAAA;QAE9CmJ,cAAcjF;AAAAA,QACdkF,gBAAgB;AAAA,UACd/F;AAAAA,UACAC;AAAAA,UACAC,iBAAiB8F;AAAAA,UACjB7F,cAAcsB;AAAAA,UACdrB;AAAAA,UACAC;AAAAA,UACAC;AAAAA,UACAC;AAAAA,UACAC;AAAAA,UACAC;AAAAA,UACAC;AAAAA,UACAC;AAAAA;QAEFsF,QAAQ;AAAA,UACN9K,MAAAA;AAAAA,UACAC,iBAAAA;AAAAA,UACAC,eAAAA;AAAAA,UACAC,yBAAAA;AAAAA,UACAC,gBAAAA;AAAAA,UACAC,iBAAAA;AAAAA,UACAC,aAAAA;AAAAA,UACAC,MAAAA;AAAAA,UACAC,mBAAAA;AAAAA,QACF;AAAA;IAEJ,CAAC;AAED,UAAMuK,mBAAmBhK,SAAS,MAAM;AACtC,YAAMiK,iBAAiB3I,iBAAiByH;AACxC,YAAMlE,UAAUhB,QAAQ3D,MAAM2E;AAC9B,YAAMqF,cAAcrF,QAAQsF,OAAQC,OAAM1C,QAAQ0C,EAAErB,KAAK,CAAC;AAC1D,YAAMsB,aAAaxF,QAChBsF,OAAQC,OAAM,CAAC1C,QAAQ0C,EAAErB,KAAK,CAAC,EAC/BuB,OAAO,CAACC,KAAKH,MAAMG,MAAMC,OAAOJ,EAAErB,KAAK,GAAG,CAAC;AAE9C,UAAIkB,kBAAkB,KAAK,CAACC,YAAY7B,OACtC,QAAOxD;AAET,YAAM4F,eACJJ,aACAH,YAAYI,OACV,CAACC,KAAKH,MAAMG,OAAO,CAAC7C,QAAQ0C,EAAEM,QAAQ,IAAIF,OAAOJ,EAAEM,QAAQ,IAAI9L,kBAC/D,CACF;AACF,YAAM+L,iBAAiBV,iBAAiBQ;AACxC,YAAMG,kBAAkBV,YAAYI,OAClC,CAACC,KAAKH,MAAMG,OAAO,CAAC7C,QAAQ0C,EAAEM,QAAQ,IAAIF,OAAOJ,EAAEM,QAAQ,IAAI9L,kBAC/D,CACF;AACA,YAAMiM,oBACJF,iBAAiB,KAAKC,kBAAkB,IAAID,iBAAiBC,kBAAkB;AAEjF,aAAO/F,QAAQ2D,IAAKrC,UAAS;AAC3B,YAAI,CAACuB,QAAQvB,KAAK4C,KAAK,EAAG,QAAO5C;AAEjC,cAAM2E,OAAO,CAACpD,QAAQvB,KAAKuE,QAAQ,IAAIF,OAAOrE,KAAKuE,QAAQ,IAAI9L;AAC/D,cAAMmK,QAAQ+B,OAAOA,OAAOD;AAC5B,eAAO;AAAA,UAAE,GAAG1E;AAAAA,UAAM4C;AAAAA;MACpB,CAAC;AAAA,IACH,CAAC;AAED,UAAM;AAAA,MACJgC;AAAAA,MACAC;AAAAA,MACArG;AAAAA,MACAsG;AAAAA,MACAC;AAAAA,MACA9C;AAAAA,MACA+C;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,QACEC,qBAAqB;AAAA,MACvB,GAAG9H,QAAQ3D,MAAM2J;AAAAA,MACjBrF,WAAW,OAAOoB,QAAQ;AACxB3G,aAAKiB,QAAQ0F,IAAIgG;AAEjB,YAAI/H,QAAQ3D,MAAMmF,aAAaL,MAAM6G,kBAAkB;AACrDnL,mBAASR,OAAO4L,QAAO;AACvBC,mBAAS,MAAM;AACbrL,qBAASR,OAAO8L,UAAS;AAAA,UAC3B,CAAC;AAAA,QACH;AACAnI,gBAAQ3D,MAAM2J,eAAerF,YAAYoB,GAAG;AAAA,MAC9C;AAAA,IACF,CAAC;AAED,UAAMqG,iBAAqEA,CACzEC,WACA9E,YACG;AACHvD,cAAQ3D,MAAMmF,aAAa8G,eAAeD,WAAW9E,OAAO;AAC5D+D,oBAAc,CAAC;AAAA,IACjB;AAEA,UAAMiB,YAAYpM,SAA0C,MAAM;AAChE,YAAM;AAAA,QAAE4J;AAAAA,QAAclF;AAAAA,UAAoBb,QAAQ3D;AAClD,UAAI0J,aAAc,QAAO;AACzB,UAAI,CAAC3K,KAAKiB,OAAOmI,UAAU0C,UAAU7K,MAAO,QAAO;AACnD,UAAI8K,kBAAkB9K,OAAO;AAC3B,YAAIjB,KAAKiB,OAAOmI,QAAQ;AACtB,cAAI3D,gBAAiB,QAAO;AAC5B,iBAAO;AAAA,QACT;AACA,eAAO;AAAA,MACT;AAEA,aAAO;AAAA,IACT,CAAC;AAED,UAAM2H,eAAerM,SAAS,MAAM;AAClC,aAAO,CAAC6D,QAAQ3D,MAAM2J,eAAe/F,WACnCD,QAAQ3D,MAAM2J,eAAe3F,eAAe,QAC1CgF,SACA;AAAA,QACE+B,SAASA,QAAQ/K;AAAAA,QACjBgL,UAAUA,SAAShL;AAAAA,QACnBkI,OAAOA,MAAMlI;AAAAA,QACboM,iBAAiB,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG;AAAA,QACpCC,iBAAiBpB;AAAAA,QACjBqB,kBAAkBpB;AAAAA;IAE1B,CAAC;AAED,aAAShL,cAAcF,OAAqD;AAC1E,YAAMuM,WAAWC,MAAMC,QAAQzM,KAAK,IAAIA,QAAQA,QAAQ,CAACA,KAAK,IAAI,CAAA;AAElE,UAAIrB,MAAM+N,aAAc,QAAOH;AAE/B,aAAOA,SAAS,CAAC;AAAA,IACnB;AAEA,aAAS3M,iBAAiB;AACxB,UAAIjB,MAAMgO,YAAa,QAAOzM,cAAcvB,MAAMgO,WAAW;AAE7D,aAAOhO,MAAM+N,eAAe,CAAA,IAAK1D;AAAAA,IACnC;AAEA,aAAS4D,cAAcZ,WAAkC;AACvD,YAAMO,WAAWC,MAAMC,QAAQT,SAAS,IAAIA,YAAYA,YAAY,CAACA,SAAS,IAAI,CAAA;AAClF,YAAMa,gBAAgBN,SAAStC,OAC5BhE,UAAmBA,KAAK6G,UAAU7G,KAAK8G,eAAe/D,MACzD;AAEA,UAAI,CAAC6D,cAAc1E,OAAQ,QAAO,CAAA;AAElC,aAAO;AAAA,QACL6E,eAAeH,cAAcvE,IAAKrC,UAAmBA,KAAK6G,MAAM,EAAEG,KAAK,GAAG;AAAA,QAC1EC,OAAOL,cAAcvE,IAAKrC,UAAoBA,KAAK8G,aAAa,SAAS,KAAM,EAAEE,KAAK,GAAG;AAAA;IAE7F;AAEA,mBAAerD,uBAAuBT,QAAqC;AACzE,YAAMgE,eAAe;AAAA,QACnB,GAAGhE;AAAAA,QACH,GAAGyD,cAAc/M,OAAOG,KAAK;AAAA;AAG/B,UAAIrB,MAAMmF,gBAAiB,QAAOnF,MAAMmF,gBAAgBqJ,YAAY;AAEpE,aAAOA;AAAAA,IACT;AAEA,aAASlF,iBAAiBzB,IAAwC;AAChE,YAAM4G,QAAQ1M,YAAYV,MAAMyI,UAAWxC,UAASA,SAASO,EAAE;AAC/D,UAAI4G,UAAU,GAAI;AAElB1M,kBAAYV,MAAMqN,OAAOD,OAAO,CAAC;AAAA,IACnC;AAEA,aAASE,qBAAqB;AAC5B,YAAMC,KAAK/M,SAASR,OAAO0C;AAC3B,UAAI,CAAC6K,GAAI;AAGT,YAAMC,WAAWvM,eAAejB;AAChC,UAAI,CAACwN,SAAU;AAEf,YAAM;AAAA,QAAEnE;AAAAA,QAAW9G;AAAAA,MAAW,IAAIiL;AAClC,YAAM;AAAA,QAAE5M;AAAAA,QAAKC;AAAAA,MAAK,IAAIF;AACtB,UAAIC,QAAQyI,aAAaxI,SAAS0B,WAAY;AAE9CiL,eAASC,SAAS;AAAA,QAAE7M;AAAAA,QAAKC;AAAAA,MAAK,CAAC;AAAA,IACjC;AAEA,aAAS6M,cAAcC,MAAiD;AACtE,UAAI,CAACA,KAAM,QAAO,CAAA;AAElB,aAAOA,KAAKvD,OAAO,CAACwD,MAAgBC,QAAQ;AAC1C,YAAIA,IAAI3H,YAAY2H,IAAI3H,SAASiC,SAAS,GAAG;AAC3CyF,eAAKnG,KAAK,GAAGiG,cAAcG,IAAI3H,QAAQ,CAAC;AAAA,QAC1C,WAAW2H,IAAIlF,QAAQ;AACrBiF,eAAKnG,KAAKoG,IAAIlF,MAAM;AAAA,QACtB;AACA,eAAOiF;AAAAA,MACT,GAAG,CAAA,CAAE;AAAA,IACP;AAEA,aAASE,SAASC,SAAgC;AAChD,YAAMR,KAAKQ,QAAQ,CAAC,EAAEvL;AACtB1B,sBAAgBd,QAAQgO,YAAYT,EAAiB;AACrD/L,wBAAkByM,OAAM;AAExB,YAAMC,WAAWX,GAAG5K,cAAc,kBAAkB;AAEpD5B,oBAAcf,QAAQkO;AACtB,UAAIC,UAAU;AACd,UAAID,SAAUC,WAAUD,SAASE;AACjCpN,mBAAahB,QAAQmO;AAErB,YAAME,YAAYd,GAAG5K,cAAc,mBAAmB;AACtD1B,qBAAejB,QAAQqO;AAAAA,IACzB;AAEAnM,UACEhD,yBACCoP,aAAY;AACX,YAAM;AAAA,QAAE3J;AAAAA,MAAQ,IAAIhB,QAAQ3D,MAAMmF;AAClC,UAAImJ,WAAW,CAACnP,eAAea,SAAS2E,SAAS;AAC/CxF,uBAAea,QAAQ0N,cAAc/I,OAAO;AAAA,MAC9C;AAAA,IACF,GACA;AAAA,MAAE4J,WAAW;AAAA,IAAK,CACpB;AAEAC,gBAAY,MAAM;AAChBlB,yBAAkB;AAClBpK,yBAAkB;AAAA,IACpB,CAAC;AAEDuL,kBAAc,MAAM;AAClBzL,wBAAiB;AAAA,IACnB,CAAC;AAED0L,oBAAgB,MAAM;AACpB5L,uBAAgB;AAChBW,8BAAuB;AAAA,IACzB,CAAC;AAEDkL,aACEC,kBACE;AAAA,MACE7P;AAAAA,MACAmN;AAAAA,MACArB;AAAAA,MACAC;AAAAA,MACArG;AAAAA,MACAsG;AAAAA,MACAC;AAAAA,MACA9C;AAAAA,MACA+C;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAqD,SAAUC,SAAuB;AAC/B,YAAInQ,MAAMmG,KAAM,QAAOtE,SAASR,OAAO6O,QAAQC,GAAG;AAElD,eAAO/P,KAAKiB,MAAM+O,KACf9I,UAAYlG,IAAIkG,MAAMtH,MAAM2I,UAAUC,oBAAoBD,MAAM,MAAMwH,GACzE;AAAA,MACF;AAAA,OAEFtO,QACF,CAQF;;0CAjtBAwO,YAkCYC,wBAjCLtL,QAAA3D,MAAQmF,aAAaL,OAAOoK,MAAAC,aAAA,IAAiBD,MAAAE,KAAA,CAAM,GAD1DC,WAkCY;AAAA,QAhCV1P,KAAI;AAAA,QACH2P,OAAK,qBAAoC1Q,QAAA2Q,WAAQ,KAAA,8BAA4CL,MAAA1L,qBAAA,IAAqB,KAAA,0CAAwDtC,oBAAAlB,SAAuB6B,uBAAA7B,SAAsB,CAAK8B,wBAAA9B;QASrN,qBAAmBkP,MAAAlQ,eAAA;AAAA,mGAAAA,gBAAegB,QAAAwP,SAAA;AAAA,QAClC,mBAAiBN,MAAAjQ,aAAA;AAAA,+FAAAA,cAAae,QAAAwP,SAAA;AAAA,QAC9B,6BAA2BN,MAAAhQ,uBAAA;AAAA,mHAAAA,wBAAuBc,QAAAwP,SAAA;AAAA,QAClD,mBAAiBN,MAAA/P,cAAA;AAAA,iGAAAA,eAAca,QAAAwP,SAAA;AAAA,QAC/B,qBAAmBN,MAAA9P,eAAA;AAAA,mGAAAA,gBAAeY,QAAAwP,SAAA;AAAA,QAClC,gBAAcN,MAAA7P,WAAA;AAAA,2FAAAA,YAAWW,QAAAwP,SAAA;AAAA,QACzBlQ,MAAMO,OAAAG;AAAAA,+DAAAH,OAAMG,QAAAwP;AAAAA,QACZ,uBAAqBN,MAAA3P,iBAAA;AAAA,uGAAAA,kBAAiBS,QAAAwP,SAAA;AAAA,MACtC,GAAA7L,QAAA3D,MAAQmF,cAAY;AAAA,QAC3B,kBAAgB4G;AAAAA,QAChBpH,SAASmF,iBAAA9J;AAAAA,QACTyE,SAASyH,UAAAlM;AAAAA,QACTjB,MAAMmQ,MAAAnQ,IAAA;AAAA,QACNiF,YAAYmI,aAAAnM;AAAAA;QAEFyP,eACT,MAAmE,CAAnEC,YAAmER,MAAAS,KAAA,GAAA;AAAA,UAA1DL,OAAM;AAAA,UAA2BM,OAAOV,MAAA7O,CAAA,EAAC,WAAA;AAAA;;qBAGtBwP,KAAAA,QAAM,CAAlBC,GAAGC,SAAI;;;UACvBC,IAAAC,QAD6CC,eAAS,CACtDC,WAAwCC,KAAAP,QAA3BE,MAAIM,eAAAC,mBAAUJ,SAAS,CAAA,GAAAlH,QAAA,IAAA,CAAA;;yPArB5B8E,QAAQ,CAAA;;;;"}
|
|
@@ -19,7 +19,7 @@ export declare const qdServiceTableProps: {
|
|
|
19
19
|
readonly reserveSelectedRowOnPaginate: false;
|
|
20
20
|
readonly expandOnRowClick: undefined;
|
|
21
21
|
readonly hideSortTips: undefined;
|
|
22
|
-
readonly multipleSort:
|
|
22
|
+
readonly multipleSort: true;
|
|
23
23
|
readonly rowSelectionAllowUncheck: undefined;
|
|
24
24
|
readonly disableSpaceInactiveRow: undefined;
|
|
25
25
|
readonly horizontalScrollAffixedBottom: undefined;
|
|
@@ -19,7 +19,7 @@ const qdServiceTableProps = {
|
|
|
19
19
|
reserveSelectedRowOnPaginate: false,
|
|
20
20
|
expandOnRowClick: void 0,
|
|
21
21
|
hideSortTips: void 0,
|
|
22
|
-
multipleSort:
|
|
22
|
+
multipleSort: true,
|
|
23
23
|
rowSelectionAllowUncheck: void 0,
|
|
24
24
|
disableSpaceInactiveRow: void 0,
|
|
25
25
|
horizontalScrollAffixedBottom: void 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"props.mjs","sources":["../../../../src/components/service/table/props.ts"],"sourcesContent":["export const qdServiceTableProps = {\n data: () => [],\n selectedRowKeys: () => [],\n activeRowKeys: () => [],\n columnControllerVisible: undefined,\n displayColumns: undefined,\n expandedRowKeys: () => [],\n filterValue: undefined,\n sort: undefined,\n expandedTreeNodes: () => [],\n\n rowKey: 'id',\n expandIcon: true,\n selectOnRowClick: undefined,\n bordered: undefined,\n keyboardRowHover: true,\n showHeader: true,\n maxHeight: '100%',\n hover: true,\n reserveSelectedRowOnPaginate: false,\n expandOnRowClick: undefined,\n hideSortTips: undefined,\n multipleSort:
|
|
1
|
+
{"version":3,"file":"props.mjs","sources":["../../../../src/components/service/table/props.ts"],"sourcesContent":["export const qdServiceTableProps = {\n data: () => [],\n selectedRowKeys: () => [],\n activeRowKeys: () => [],\n columnControllerVisible: undefined,\n displayColumns: undefined,\n expandedRowKeys: () => [],\n filterValue: undefined,\n sort: undefined,\n expandedTreeNodes: () => [],\n\n rowKey: 'id',\n expandIcon: true,\n selectOnRowClick: undefined,\n bordered: undefined,\n keyboardRowHover: true,\n showHeader: true,\n maxHeight: '100%',\n hover: true,\n reserveSelectedRowOnPaginate: false,\n expandOnRowClick: undefined,\n hideSortTips: undefined,\n multipleSort: true,\n rowSelectionAllowUncheck: undefined,\n disableSpaceInactiveRow: undefined,\n horizontalScrollAffixedBottom: undefined,\n paginationAffixedBottom: undefined,\n pagination: undefined,\n headerBg: true,\n loadingWithData: true\n} as const\n\nexport const qdServiceTableTreeConfig = {\n checkStrictly: true,\n childrenKey: 'children'\n} as const\n"],"names":[],"mappings":"AAAO,MAAM,sBAAsB;AAAA,EACjC,MAAM,MAAM,CAAA;AAAA,EACZ,iBAAiB,MAAM,CAAA;AAAA,EACvB,eAAe,MAAM,CAAA;AAAA,EACrB,yBAAyB;AAAA,EACzB,gBAAgB;AAAA,EAChB,iBAAiB,MAAM,CAAA;AAAA,EACvB,aAAa;AAAA,EACb,MAAM;AAAA,EACN,mBAAmB,MAAM,CAAA;AAAA,EAEzB,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,UAAU;AAAA,EACV,kBAAkB;AAAA,EAClB,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,8BAA8B;AAAA,EAC9B,kBAAkB;AAAA,EAClB,cAAc;AAAA,EACd,cAAc;AAAA,EACd,0BAA0B;AAAA,EAC1B,yBAAyB;AAAA,EACzB,+BAA+B;AAAA,EAC/B,yBAAyB;AAAA,EACzB,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,iBAAiB;AACnB;AAEO,MAAM,2BAA2B;AAAA,EACtC,eAAe;AAAA,EACf,aAAa;AACf;"}
|
|
@@ -46,7 +46,7 @@ export declare const qdServiceDialogTableSelectProps: {
|
|
|
46
46
|
readonly hover: true;
|
|
47
47
|
readonly expandOnRowClick: undefined;
|
|
48
48
|
readonly hideSortTips: undefined;
|
|
49
|
-
readonly multipleSort:
|
|
49
|
+
readonly multipleSort: true;
|
|
50
50
|
readonly rowSelectionAllowUncheck: undefined;
|
|
51
51
|
readonly disableSpaceInactiveRow: undefined;
|
|
52
52
|
readonly horizontalScrollAffixedBottom: undefined;
|
|
@@ -21,7 +21,7 @@ export declare const qdServicePopupTableSelectProps: {
|
|
|
21
21
|
readonly hover: true;
|
|
22
22
|
readonly expandOnRowClick: undefined;
|
|
23
23
|
readonly hideSortTips: undefined;
|
|
24
|
-
readonly multipleSort:
|
|
24
|
+
readonly multipleSort: true;
|
|
25
25
|
readonly rowSelectionAllowUncheck: undefined;
|
|
26
26
|
readonly disableSpaceInactiveRow: undefined;
|
|
27
27
|
readonly horizontalScrollAffixedBottom: undefined;
|