{"version":3,"file":"usePaginationClasses.mjs","sources":["../../../../components/pagination/hooks/usePaginationClasses.ts"],"sourcesContent":["import { computed, Ref } from 'vue';\nimport { getIEVersion } from '@tdesign/common-js/utils/helper';\nimport { useCommonClassName } from '@tdesign/shared-hooks';\nimport { TdPaginationProps } from '../type';\n\nexport function usePaginationClasses(\n  props: TdPaginationProps,\n  innerCurrent: Ref<number>,\n  innerPageSize: Ref<number>,\n  name: Ref<string>,\n) {\n  const { SIZE, STATUS } = useCommonClassName();\n\n  const pageCount = computed(() => {\n    const c: number = Math.ceil(props.total / innerPageSize.value);\n    return c > 0 ? c : 1;\n  });\n\n  const paginationClass = computed(() => [\n    `${name.value}`,\n    SIZE.value[props.size],\n    {\n      [STATUS.value.disabled]: props.disabled,\n      [`${name.value}-ie`]: getIEVersion() < 11,\n    },\n    props.theme === 'simple' ? `${name.value}--simple` : ``,\n  ]);\n\n  const totalClass = computed(() => [`${name.value}__total`]);\n\n  const sizerClass = computed(() => [`${name.value}__select`]);\n\n  const preBtnClass = computed(() => [\n    `${name.value}__btn`,\n    `${name.value}__btn-prev`,\n    {\n      [STATUS.value.disabled]: props.disabled || innerCurrent.value === 1,\n    },\n  ]);\n\n  const nextBtnClass = computed(() => [\n    `${name.value}__btn`,\n    `${name.value}__btn-next`,\n    {\n      [STATUS.value.disabled]: props.disabled || innerCurrent.value === pageCount.value,\n    },\n  ]);\n\n  const btnWrapClass = computed(() => [`${name.value}__pager`]);\n\n  const btnMoreClass = computed(() => [\n    `${name.value}__number`,\n    `${name.value}__number--more`,\n    {\n      [STATUS.value.disabled]: props.disabled,\n    },\n  ]);\n\n  const jumperClass = computed(() => [`${name.value}__jump`]);\n\n  const jumperInputClass = computed(() => [`${name.value}__input`]);\n\n  const simpleClass = computed(() => [`${name.value}__select`]);\n\n  const getButtonClass = (index: number) => [\n    `${name.value}__number`,\n    {\n      [STATUS.value.disabled]: props.disabled,\n      [STATUS.value.current]: innerCurrent.value === index,\n    },\n  ];\n\n  return {\n    pageCount,\n    paginationClass,\n    totalClass,\n    sizerClass,\n    preBtnClass,\n    nextBtnClass,\n    btnWrapClass,\n    btnMoreClass,\n    jumperClass,\n    jumperInputClass,\n    simpleClass,\n    getButtonClass,\n  };\n}\n"],"names":["usePaginationClasses","props","innerCurrent","innerPageSize","name","_useCommonClassName","useCommonClassName","SIZE","STATUS","pageCount","computed","c","Math","ceil","total","value","paginationClass","concat","size","_defineProperty","disabled","getIEVersion","theme","totalClass","sizerClass","preBtnClass","nextBtnClass","btnWrapClass","btnMoreClass","jumperClass","jumperInputClass","simpleClass","getButtonClass","index","current"],"mappings":"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"}