{"version":3,"file":"index.mjs","sources":["../../../../../../package/components/pagination/src/index.tsx"],"sourcesContent":["import { computed, defineComponent, h } from \"vue\";\nimport { scrollTo } from \"@vue-admin-core/utils\";\nimport { ElPagination } from \"element-plus\";\n\nexport default defineComponent({\n  name: \"VacPagination\",\n  inheritAttrs: false,\n  props: {\n    total: {\n      type: Number,\n      default: 0\n    },\n    page: {\n      type: Number,\n      default: 1\n    },\n    limit: {\n      type: Number,\n      default: 10\n    },\n    pageSizes: {\n      type: Array,\n      default: () => [10, 20, 30, 50]\n    },\n    // 移动端页码按钮的数量端默认值5\n    pagerCount: {\n      type: Number,\n      default: document.body.clientWidth < 992 ? 5 : 7\n    },\n    layout: {\n      type: String,\n      default: \"total, sizes, prev, pager, next, jumper\"\n    },\n    background: {\n      type: Boolean,\n      default: true\n    },\n    autoScroll: {\n      type: Boolean,\n      default: true\n    },\n    hidden: {\n      type: Boolean,\n      default: false\n    },\n    float: {\n      type: String,\n      default: \"right\"\n    }\n  },\n  emits: [\"update:page\", \"update:limit\", \"pagination\"],\n  setup(props, { attrs, emit }) {\n    const currentPage = computed({\n      get() {\n        return props.page;\n      },\n      set(val) {\n        emit(\"update:page\", val);\n      }\n    });\n    const pageSize = computed({\n      get() {\n        return props.limit;\n      },\n      set(val) {\n        emit(\"update:limit\", val);\n      }\n    });\n    function handleSizeChange(val: number) {\n      if (currentPage.value * val > props.total) {\n        currentPage.value = 1;\n      }\n      emit(\"pagination\", { page: currentPage.value, limit: val });\n      if (props.autoScroll) {\n        scrollTo(0, 800);\n      }\n    }\n    function handleCurrentChange(val: number) {\n      emit(\"pagination\", { page: val, limit: pageSize.value });\n      if (props.autoScroll) {\n        scrollTo(0, 800);\n      }\n    }\n\n    return () =>\n      h(\n        \"div\",\n        { class: [\"pagination-container\", { hidden: props.hidden }] },\n        {\n          default: () => [\n            // @ts-ignore\n            h(ElPagination, {\n              ...attrs,\n              ...props,\n              currentPage: currentPage.value,\n              pageSize: pageSize.value,\n              onSizeChange: handleSizeChange,\n              onCurrentChange: handleCurrentChange\n            })\n          ]\n        }\n      );\n  }\n});\n"],"names":["defineComponent","name","inheritAttrs","props","total","type","Number","default","page","limit","pageSizes","Array","pagerCount","document","body","clientWidth","layout","String","background","Boolean","autoScroll","hidden","float","emits","setup","attrs","emit","currentPage","computed","get","set","val","pageSize","handleSizeChange","value","scrollTo","handleCurrentChange","h","class","ElPagination","onSizeChange","onCurrentChange"],"mappings":"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"}