xdesign-vue-next
Version:
XDesign Component for vue-next
1 lines • 2.59 kB
Source Map (JSON)
{"version":3,"file":"useStyle.mjs","sources":["../../../src/table/hooks/useStyle.ts"],"sourcesContent":["import { computed, toRefs } from 'vue';\nimport { TdBaseTableProps } from '../type';\nimport useClassName from './useClassName';\nimport useCommonClassName from '../../hooks/useCommonClassName';\n\nexport function formatCSSUnit(unit: string | number) {\n if (!unit) return unit;\n return isNaN(Number(unit)) ? unit : `${unit}px`;\n}\n\nexport default function useStyle(props: TdBaseTableProps) {\n const { size, bordered, stripe, hover, verticalAlign, height, maxHeight, tableContentWidth } = toRefs(props);\n\n const { tableBaseClass, tableAlignClasses } = useClassName();\n const { sizeClassNames } = useCommonClassName();\n\n const tableClasses = computed(() => [\n tableBaseClass.table,\n {\n [sizeClassNames[size.value]]: size.value !== 'medium',\n [tableBaseClass.bordered]: bordered.value,\n [tableBaseClass.striped]: stripe.value,\n [tableBaseClass.hover]: hover.value,\n [tableBaseClass.loading]: props.loading,\n [tableBaseClass.affixedHeader]: props.headerAffixedTop,\n [tableBaseClass.rowspanAndColspan]: props.rowspanAndColspan,\n [tableAlignClasses[verticalAlign.value]]: verticalAlign.value !== 'middle',\n },\n ]);\n\n const tableContentStyles = computed(() => ({\n height: formatCSSUnit(height.value),\n maxHeight: formatCSSUnit(maxHeight.value),\n }));\n\n const tableElementStyles = computed(() => ({\n width: formatCSSUnit(tableContentWidth.value),\n }));\n\n return {\n tableClasses,\n sizeClassNames,\n tableElementStyles,\n tableContentStyles,\n };\n}\n"],"names":["height","maxHeight","width","tableClasses","sizeClassNames","tableElementStyles","tableContentStyles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,SAAA,aAAA,CAAA,IAAA,EAAA;AACL,EAAA,IAAA,CAAA,IAAA,EAAA,OAAA,IAAA,CAAA;AACA,EAAA,OAAA,KAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,GAAA,IAAA,GAAA,EAAA,CAAA,MAAA,CAAA,IAAA,EAAA,IAAA,CAAA,CAAA;AACF,CAAA;AAEA,SAAA,QAAA,CAAA,KAAA,EAAA;AACQ,EAAA,IAAA,OAAA,GAAA,MAAA,CAAA,KAAA,CAAA;;;;;;;;;AAEN,EAAA,IAAA,aAAA,GAAA,YAAA,EAAA;;;AACM,EAAA,IAAA,mBAAA,GAAA,kBAAA,EAAA;;;AAEwB,IAAA,IAAA,IAAA,CAAA;;;;;AAe5BA,MAAAA,MAAAA,EAAAA,aAAAA,CAAAA,MAAAA,CAAAA,KAAAA,CAAAA;AACAC,MAAAA,SAAAA,EAAAA,aAAAA,CAAAA,SAAAA,CAAAA,KAAAA,CAAAA;;AACA,GAAA,CAAA,CAAA;;;AAGAC,MAAAA,KAAAA,EAAAA,aAAAA,CAAAA,iBAAAA,CAAAA,KAAAA,CAAAA;;AACA,GAAA,CAAA,CAAA;;AAGAC,IAAAA,YAAAA,EAAAA,YAAAA;AACAC,IAAAA,cAAAA,EAAAA,cAAAA;AACAC,IAAAA,kBAAAA,EAAAA,kBAAAA;AACAC,IAAAA,kBAAAA,EAAAA,kBAAAA;;AAEJ;;;;"}