tav-ui
Version:
38 lines (35 loc) • 1.21 kB
JavaScript
import { computed, unref, h } from 'vue';
import { isString } from '../../../../utils/is2.mjs';
import { getSlot } from '../../../../utils/helper/tsxHelper2.mjs';
import TableHeader from '../components/TableHeader2.mjs';
function useTableHeader(propsRef, slots, handlers) {
const getHeaderProps = computed(() => {
const { title, showTableSetting, titleHelpMessage, tableSetting } = unref(propsRef);
const hideTitle = !slots.tableTitle && !title && !slots.toolbar && !showTableSetting;
if (hideTitle && !isString(title)) {
return {};
}
return {
title: hideTitle ? null : () => h(TableHeader, {
title,
titleHelpMessage,
showTableSetting,
tableSetting,
onColumnsChange: handlers.onColumnsChange
}, {
...slots.toolbar ? {
toolbar: () => getSlot(slots, "toolbar")
} : {},
...slots.tableTitle ? {
tableTitle: () => getSlot(slots, "tableTitle")
} : {},
...slots.headerTop ? {
headerTop: () => getSlot(slots, "headerTop")
} : {}
})
};
});
return { getHeaderProps };
}
export { useTableHeader };
//# sourceMappingURL=useTableHeader2.mjs.map