|
|
|
@ -8,41 +8,39 @@ import { isString } from '/@/utils/is'; |
|
|
|
import { getSlot } from '/@/utils/helper/tsxHelper'; |
|
|
|
|
|
|
|
export function useTableHeader(propsRef: ComputedRef<BasicTableProps>, slots: Slots) { |
|
|
|
const getHeaderProps = computed( |
|
|
|
(): Recordable => { |
|
|
|
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, |
|
|
|
} as Recordable, |
|
|
|
{ |
|
|
|
...(slots.toolbar |
|
|
|
? { |
|
|
|
toolbar: () => getSlot(slots, 'toolbar'), |
|
|
|
} |
|
|
|
: {}), |
|
|
|
...(slots.tableTitle |
|
|
|
? { |
|
|
|
tableTitle: () => getSlot(slots, 'tableTitle'), |
|
|
|
} |
|
|
|
: {}), |
|
|
|
} |
|
|
|
), |
|
|
|
}; |
|
|
|
const getHeaderProps = computed((): Recordable => { |
|
|
|
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, |
|
|
|
} as Recordable, |
|
|
|
{ |
|
|
|
...(slots.toolbar |
|
|
|
? { |
|
|
|
toolbar: () => getSlot(slots, 'toolbar'), |
|
|
|
} |
|
|
|
: {}), |
|
|
|
...(slots.tableTitle |
|
|
|
? { |
|
|
|
tableTitle: () => getSlot(slots, 'tableTitle'), |
|
|
|
} |
|
|
|
: {}), |
|
|
|
} |
|
|
|
), |
|
|
|
}; |
|
|
|
}); |
|
|
|
return { getHeaderProps }; |
|
|
|
} |
|
|
|
|