{"version":3,"file":"pagination.mjs","sources":["../../../../../../package/components/table-select/src/pagination.ts"],"sourcesContent":["// @ts-nocheck\nimport { toRefs, computed } from \"vue\";\nimport { pick } from \"lodash-es\";\nimport { ElSelect, ElTable, ElPagination } from \"element-plus\";\nimport type { Ref } from \"vue\";\nexport const usePagination = (\n  props,\n  { attrs },\n  {\n    currentPage\n  }: {\n    select: Ref<InstanceType<typeof ElSelect> | undefined>;\n    table: Ref<InstanceType<typeof ElTable> | undefined>;\n    key: Ref<string>;\n    filter: (query: string) => void;\n    currentPage: Ref<number>;\n  }\n) => {\n  const pageCount = computed(() => {\n    if (props.total) {\n      return Math.ceil(props.total / (props.pageSize || 10));\n    }\n    return 1;\n  });\n\n  const result = {\n    ...pick(toRefs(props), Object.keys(ElPagination.props)),\n    currentPage: currentPage,\n    small: true,\n    pageCount: pageCount,\n    layout: \"total, prev, pager, next\",\n    hideOnSinglePage: true,\n    onCurrentChange: (value) => {\n      currentPage.value = value;\n      attrs.onCurrentChange?.(value);\n    }\n  };\n  return result;\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,aAAgB,GAAA,CAC3B,KACA,EAAA,EAAE,OACF,EAAA;AAAA,EACE,WAAA;AACF,CAOG,KAAA;AACH,EAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,IAAA,IAAI,MAAM,KAAO,EAAA;AACf,MAAA,OAAO,KAAK,IAAK,CAAA,KAAA,CAAM,KAAS,IAAA,KAAA,CAAM,YAAY,EAAG,CAAA,CAAA,CAAA;AAAA,KACvD;AACA,IAAO,OAAA,CAAA,CAAA;AAAA,GACR,CAAA,CAAA;AAED,EAAA,MAAM,MAAS,GAAA;AAAA,IACb,GAAG,KAAK,MAAO,CAAA,KAAK,GAAG,MAAO,CAAA,IAAA,CAAK,YAAa,CAAA,KAAK,CAAC,CAAA;AAAA,IACtD,WAAA;AAAA,IACA,KAAO,EAAA,IAAA;AAAA,IACP,SAAA;AAAA,IACA,MAAQ,EAAA,0BAAA;AAAA,IACR,gBAAkB,EAAA,IAAA;AAAA,IAClB,eAAA,EAAiB,CAAC,KAAU,KAAA;AAhChC,MAAA,IAAA,EAAA,CAAA;AAiCM,MAAA,WAAA,CAAY,KAAQ,GAAA,KAAA,CAAA;AACpB,MAAA,CAAA,EAAA,GAAA,KAAA,CAAM,oBAAN,IAAwB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,EAAA,KAAA,CAAA,CAAA;AAAA,KAC1B;AAAA,GACF,CAAA;AACA,EAAO,OAAA,MAAA,CAAA;AACT;;;;"}