{"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;;;;"}