{"version":3,"file":"Pagination.cjs","sources":["../../../../../../packages/vue-components/vc-pagination/src/Pagination.tsx"],"sourcesContent":["import { zhCN as LOCALE } from '@antdv/locale';\nimport {\n  BaseMixin,\n  classNames,\n  cloneElement,\n  firstNotUndefined,\n  getComponent,\n  hasProp,\n  isValidElement,\n  KeyCode,\n  PropTypes,\n  splitAttrs,\n} from '@antdv/utils';\nimport BaseInputCore from '@antdv/vue-components/vc-input/src/BaseInputCore';\nimport { defineComponent } from 'vue';\nimport Options from './Options';\nimport Pager from './Pager';\n\n// 是否是正整数\nfunction isInteger(value) {\n  return typeof value === 'number' && Number.isFinite(value) && Math.floor(value) === value;\n}\n\nfunction defaultItemRender({ originalElement }) {\n  return originalElement;\n}\n\nfunction calculatePage(p, state, props) {\n  const pageSize = typeof p === 'undefined' ? state.statePageSize : p;\n  return Math.floor((props.total - 1) / pageSize) + 1;\n}\n\nexport default defineComponent({\n  compatConfig: { MODE: 3 },\n  name: 'Pagination',\n  mixins: [BaseMixin],\n  inheritAttrs: false,\n  props: {\n    disabled: { type: Boolean, default: undefined },\n    prefixCls: PropTypes.string.def('rc-pagination'),\n    selectPrefixCls: PropTypes.string.def('rc-select'),\n    current: Number,\n    defaultCurrent: PropTypes.number.def(1),\n    total: PropTypes.number.def(0),\n    pageSize: Number,\n    defaultPageSize: PropTypes.number.def(10),\n    hideOnSinglePage: { type: Boolean, default: false },\n    showSizeChanger: { type: Boolean, default: undefined },\n    showLessItems: { type: Boolean, default: false },\n    // showSizeChange: PropTypes.func.def(noop),\n    selectComponentClass: PropTypes.any,\n    showPrevNextJumpers: { type: Boolean, default: true },\n    showQuickJumper: PropTypes.oneOfType([PropTypes.looseBool, PropTypes.object]).def(false),\n    showTitle: { type: Boolean, default: true },\n    pageSizeOptions: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])),\n    buildOptionText: Function,\n    showTotal: Function,\n    simple: { type: Boolean, default: undefined },\n    locale: PropTypes.object.def(LOCALE),\n    itemRender: PropTypes.func.def(defaultItemRender),\n    prevIcon: PropTypes.any,\n    nextIcon: PropTypes.any,\n    jumpPrevIcon: PropTypes.any,\n    jumpNextIcon: PropTypes.any,\n    totalBoundaryShowSizeChanger: PropTypes.number.def(50),\n  },\n  data() {\n    const props = this.$props;\n    let current = firstNotUndefined([this.current, this.defaultCurrent]);\n\n    const pageSize = firstNotUndefined([this.pageSize, this.defaultPageSize]);\n\n    current = Math.min(current, calculatePage(pageSize, undefined, props));\n\n    return {\n      stateCurrent: current,\n      stateCurrentInputValue: current,\n      statePageSize: pageSize,\n    };\n  },\n  watch: {\n    current(val) {\n      this.setState({\n        stateCurrent: val,\n        stateCurrentInputValue: val,\n      });\n    },\n    pageSize(val) {\n      const newState: any = {};\n      let current = this.stateCurrent;\n      const newCurrent = calculatePage(val, this.$data, this.$props);\n      current = current > newCurrent ? newCurrent : current;\n      if (!hasProp(this, 'current')) {\n        newState.stateCurrent = current;\n        newState.stateCurrentInputValue = current;\n      }\n      newState.statePageSize = val;\n      this.setState(newState);\n    },\n    stateCurrent(_val, oldValue) {\n      // When current page change, fix focused style of prev item\n      // A hacky solution of https://github.com/ant-design/ant-design/issues/8948\n      this.$nextTick(() => {\n        if (this.$refs.paginationNode) {\n          // @ts-expect-error\n          const lastCurrentNode = this.$refs.paginationNode.querySelector(\n            `.${this.prefixCls}-item-${oldValue}`,\n          );\n          if (lastCurrentNode && document.activeElement === lastCurrentNode)\n            lastCurrentNode.blur();\n        }\n      });\n    },\n    total() {\n      const newState: any = {};\n      const newCurrent = calculatePage(this.pageSize, this.$data, this.$props);\n      if (hasProp(this, 'current')) {\n        const current = Math.min(this.current, newCurrent);\n        newState.stateCurrent = current;\n        newState.stateCurrentInputValue = current;\n      } else {\n        let current = this.stateCurrent;\n        if (current === 0 && newCurrent > 0)\n          current = 1;\n        else\n          current = Math.min(this.stateCurrent, newCurrent);\n\n        newState.stateCurrent = current;\n      }\n      this.setState(newState);\n    },\n  },\n  methods: {\n    getJumpPrevPage() {\n      return Math.max(1, this.stateCurrent - (this.showLessItems ? 3 : 5));\n    },\n    getJumpNextPage() {\n      return Math.min(\n        calculatePage(undefined, this.$data, this.$props),\n        this.stateCurrent + (this.showLessItems ? 3 : 5),\n      );\n    },\n    getItemIcon(icon, label) {\n      const { prefixCls } = this.$props;\n      const iconNode = getComponent(this, icon, this.$props) || (\n        <button type=\"button\" aria-label={label} class={`${prefixCls}-item-link`} />\n      );\n      return iconNode;\n    },\n    getValidValue(e) {\n      const inputValue = e.target.value;\n      const allPages = calculatePage(undefined, this.$data, this.$props);\n      const { stateCurrentInputValue } = this.$data;\n      let value;\n      if (inputValue === '')\n        value = inputValue;\n      else if (Number.isNaN(Number(inputValue)))\n        value = stateCurrentInputValue;\n      else if (inputValue >= allPages)\n        value = allPages;\n      else\n        value = Number(inputValue);\n\n      return value;\n    },\n    isValid(page) {\n      return isInteger(page) && page !== this.stateCurrent;\n    },\n    shouldDisplayQuickJumper() {\n      const { showQuickJumper, pageSize, total } = this.$props;\n      if (total <= pageSize)\n        return false;\n\n      return showQuickJumper;\n    },\n    // calculatePage (p) {\n    //   let pageSize = p\n    //   if (typeof pageSize === 'undefined') {\n    //     pageSize = this.statePageSize\n    //   }\n    //   return Math.floor((this.total - 1) / pageSize) + 1\n    // },\n    handleKeyDown(event) {\n      if (event.keyCode === KeyCode.UP || event.keyCode === KeyCode.DOWN)\n        event.preventDefault();\n    },\n    handleKeyUp(e) {\n      if (e.isComposing || e.target.composing) return;\n      const value = this.getValidValue(e);\n      const stateCurrentInputValue = this.stateCurrentInputValue;\n\n      if (value !== stateCurrentInputValue) {\n        this.setState({\n          stateCurrentInputValue: value,\n        });\n      }\n\n      if (e.keyCode === KeyCode.ENTER)\n        this.handleChange(value);\n      else if (e.keyCode === KeyCode.UP)\n        this.handleChange(value - 1);\n      else if (e.keyCode === KeyCode.DOWN)\n        this.handleChange(value + 1);\n    },\n    changePageSize(size) {\n      let current = this.stateCurrent;\n      const preCurrent = current;\n      const newCurrent = calculatePage(size, this.$data, this.$props);\n      current = current > newCurrent ? newCurrent : current;\n      // fix the issue:\n      // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct.\n      if (newCurrent === 0)\n        current = this.stateCurrent;\n\n      if (typeof size === 'number') {\n        if (!hasProp(this, 'pageSize')) {\n          this.setState({\n            statePageSize: size,\n          });\n        }\n        if (!hasProp(this, 'current')) {\n          this.setState({\n            stateCurrent: current,\n            stateCurrentInputValue: current,\n          });\n        }\n      }\n      // @ts-expect-error\n      this.__emit('update:pageSize', size);\n      if (current !== preCurrent) {\n        // @ts-expect-error\n        this.__emit('update:current', current);\n      }\n\n      // @ts-expect-error\n      this.__emit('showSizeChange', current, size);\n      // @ts-expect-error\n      this.__emit('change', current, size);\n    },\n    handleChange(p) {\n      const { disabled } = this.$props;\n      let page = p;\n      if (this.isValid(page) && !disabled) {\n        const currentPage = calculatePage(undefined, this.$data, this.$props);\n        if (page > currentPage)\n          page = currentPage;\n        else if (page < 1)\n          page = 1;\n\n        if (!hasProp(this, 'current')) {\n          this.setState({\n            stateCurrent: page,\n            stateCurrentInputValue: page,\n          });\n        }\n        // this.__emit('input', page)\n        // @ts-expect-error\n        this.__emit('update:current', page);\n        // @ts-expect-error\n        this.__emit('change', page, this.statePageSize);\n        return page;\n      }\n      return this.stateCurrent;\n    },\n    prev() {\n      if (this.hasPrev())\n        this.handleChange(this.stateCurrent - 1);\n    },\n    next() {\n      if (this.hasNext())\n        this.handleChange(this.stateCurrent + 1);\n    },\n    jumpPrev() {\n      this.handleChange(this.getJumpPrevPage());\n    },\n    jumpNext() {\n      this.handleChange(this.getJumpNextPage());\n    },\n    hasPrev() {\n      return this.stateCurrent > 1;\n    },\n    hasNext() {\n      return this.stateCurrent < calculatePage(undefined, this.$data, this.$props);\n    },\n    getShowSizeChanger() {\n      const { showSizeChanger, total, totalBoundaryShowSizeChanger } = this.$props;\n      if (typeof showSizeChanger !== 'undefined')\n        return showSizeChanger;\n\n      return total > totalBoundaryShowSizeChanger;\n    },\n    runIfEnter(event, callback, ...restParams) {\n      if (event.key === 'Enter' || event.charCode === 13) {\n        event.preventDefault();\n        callback(...restParams);\n      }\n    },\n    runIfEnterPrev(event) {\n      this.runIfEnter(event, this.prev);\n    },\n    runIfEnterNext(event) {\n      this.runIfEnter(event, this.next);\n    },\n    runIfEnterJumpPrev(event) {\n      this.runIfEnter(event, this.jumpPrev);\n    },\n    runIfEnterJumpNext(event) {\n      this.runIfEnter(event, this.jumpNext);\n    },\n    handleGoTO(event) {\n      if (event.keyCode === KeyCode.ENTER || event.type === 'click')\n        this.handleChange(this.stateCurrentInputValue);\n    },\n\n    renderPrev(prevPage) {\n      const { itemRender } = this.$props;\n\n      const prevButton = itemRender({\n        page: prevPage,\n        type: 'prev',\n        originalElement: this.getItemIcon('prevIcon', 'prev page'),\n      });\n      const disabled = !this.hasPrev();\n      return isValidElement(prevButton)\n        ? cloneElement(prevButton, disabled ? { disabled } : {})\n        : prevButton;\n    },\n\n    renderNext(nextPage) {\n      const { itemRender } = this.$props;\n      const nextButton = itemRender({\n        page: nextPage,\n        type: 'next',\n        originalElement: this.getItemIcon('nextIcon', 'next page'),\n      });\n      const disabled = !this.hasNext();\n      return isValidElement(nextButton)\n        ? cloneElement(nextButton, disabled ? { disabled } : {})\n        : nextButton;\n    },\n  },\n  render() {\n    const {\n      prefixCls,\n      disabled,\n      hideOnSinglePage,\n      total,\n      locale,\n      showQuickJumper,\n      showLessItems,\n      showTitle,\n      showTotal,\n      simple,\n      itemRender,\n      showPrevNextJumpers,\n      jumpPrevIcon,\n      jumpNextIcon,\n      selectComponentClass,\n      selectPrefixCls,\n      pageSizeOptions,\n    } = this.$props;\n    const { stateCurrent, statePageSize } = this;\n    const { class: className, ...restAttrs } = splitAttrs(this.$attrs).extraAttrs;\n    // When hideOnSinglePage is true and there is only 1 page, hide the pager\n    if (hideOnSinglePage === true && this.total <= statePageSize)\n      return null;\n\n    const allPages = calculatePage(undefined, this.$data, this.$props);\n    const pagerList = [];\n    let jumpPrev = null;\n    let jumpNext = null;\n    let firstPager = null;\n    let lastPager = null;\n    let gotoButton = null;\n    const goButton = showQuickJumper && showQuickJumper.goButton;\n    const pageBufferSize = showLessItems ? 1 : 2;\n\n    const prevPage = stateCurrent - 1 > 0 ? stateCurrent - 1 : 0;\n    const nextPage = stateCurrent + 1 < allPages ? stateCurrent + 1 : allPages;\n    const hasPrev = this.hasPrev();\n    const hasNext = this.hasNext();\n    if (simple) {\n      if (goButton) {\n        if (typeof goButton === 'boolean') {\n          gotoButton = (\n            <button type=\"button\" onClick={this.handleGoTO} onKeyup={this.handleGoTO}>\n              {locale.jump_to_confirm}\n            </button>\n          );\n        } else {\n          gotoButton = (\n            <span onClick={this.handleGoTO} onKeyup={this.handleGoTO}>\n              {goButton}\n            </span>\n          );\n        }\n        gotoButton = (\n          <li\n            title={showTitle ? `${locale.jump_to}${stateCurrent}/${allPages}` : null}\n            class={`${prefixCls}-simple-pager`}\n          >\n            {gotoButton}\n          </li>\n        );\n      }\n\n      return (\n        <ul\n          class={classNames(\n            `${prefixCls} ${prefixCls}-simple`,\n            { [`${prefixCls}-disabled`]: disabled },\n            className,\n          )}\n          {...restAttrs}\n        >\n          <li\n            title={showTitle ? locale.prev_page : null}\n            onClick={this.prev}\n            tabindex={hasPrev ? 0 : null}\n            onKeypress={this.runIfEnterPrev}\n            class={classNames(`${prefixCls}-prev`, {\n              [`${prefixCls}-disabled`]: !hasPrev,\n            })}\n            aria-disabled={!hasPrev}\n          >\n            {this.renderPrev(prevPage)}\n          </li>\n          <li\n            title={showTitle ? `${stateCurrent}/${allPages}` : null}\n            class={`${prefixCls}-simple-pager`}\n          >\n            <BaseInputCore\n              type=\"text\"\n              value={this.stateCurrentInputValue}\n              disabled={disabled}\n              onKeydown={this.handleKeyDown}\n              onKeyup={this.handleKeyUp}\n              onInput={this.handleKeyUp}\n              onChange={this.handleKeyUp}\n              size=\"3\"\n            >\n            </BaseInputCore>\n            <span class={`${prefixCls}-slash`}>／</span>\n            {allPages}\n          </li>\n          <li\n            title={showTitle ? locale.next_page : null}\n            onClick={this.next}\n            tabindex={hasNext ? 0 : null}\n            onKeypress={this.runIfEnterNext}\n            class={classNames(`${prefixCls}-next`, {\n              [`${prefixCls}-disabled`]: !hasNext,\n            })}\n            aria-disabled={!hasNext}\n          >\n            {this.renderNext(nextPage)}\n          </li>\n          {gotoButton}\n        </ul>\n      );\n    }\n    if (allPages <= 3 + pageBufferSize * 2) {\n      const pagerProps = {\n        locale,\n        rootPrefixCls: prefixCls,\n        showTitle,\n        itemRender,\n        onClick: this.handleChange,\n        onKeypress: this.runIfEnter,\n      };\n      if (!allPages) {\n        pagerList.push(\n          <Pager {...pagerProps} key=\"noPager\" page={1} class={`${prefixCls}-item-disabled`} />,\n        );\n      }\n      for (let i = 1; i <= allPages; i += 1) {\n        const active = stateCurrent === i;\n        pagerList.push(<Pager {...pagerProps} key={i} page={i} active={active} />);\n      }\n    } else {\n      const prevItemTitle = showLessItems ? locale.prev_3 : locale.prev_5;\n      const nextItemTitle = showLessItems ? locale.next_3 : locale.next_5;\n      if (showPrevNextJumpers) {\n        jumpPrev = (\n          <li\n            title={this.showTitle ? prevItemTitle : null}\n            key=\"prev\"\n            onClick={this.jumpPrev}\n            tabindex=\"0\"\n            onKeypress={this.runIfEnterJumpPrev}\n            class={classNames(`${prefixCls}-jump-prev`, {\n              [`${prefixCls}-jump-prev-custom-icon`]: !!jumpPrevIcon,\n            })}\n          >\n            {itemRender({\n              page: this.getJumpPrevPage(),\n              type: 'jump-prev',\n              originalElement: this.getItemIcon('jumpPrevIcon', 'prev page'),\n            })}\n          </li>\n        );\n\n        jumpNext = (\n          <li\n            title={this.showTitle ? nextItemTitle : null}\n            key=\"next\"\n            tabindex=\"0\"\n            onClick={this.jumpNext}\n            onKeypress={this.runIfEnterJumpNext}\n            class={classNames(`${prefixCls}-jump-next`, {\n              [`${prefixCls}-jump-next-custom-icon`]: !!jumpNextIcon,\n            })}\n          >\n            {itemRender({\n              page: this.getJumpNextPage(),\n              type: 'jump-next',\n              originalElement: this.getItemIcon('jumpNextIcon', 'next page'),\n            })}\n          </li>\n        );\n      }\n\n      lastPager = (\n        <Pager\n          locale={locale}\n          last\n          rootPrefixCls={prefixCls}\n          onClick={this.handleChange}\n          onKeypress={this.runIfEnter}\n          key={allPages}\n          page={allPages}\n          active={false}\n          showTitle={showTitle}\n          itemRender={itemRender}\n        />\n      );\n      firstPager = (\n        <Pager\n          locale={locale}\n          rootPrefixCls={prefixCls}\n          onClick={this.handleChange}\n          onKeypress={this.runIfEnter}\n          key={1}\n          page={1}\n          active={false}\n          showTitle={showTitle}\n          itemRender={itemRender}\n        />\n      );\n\n      let left = Math.max(1, stateCurrent - pageBufferSize);\n      let right = Math.min(stateCurrent + pageBufferSize, allPages);\n\n      if (stateCurrent - 1 <= pageBufferSize)\n        right = 1 + pageBufferSize * 2;\n\n      if (allPages - stateCurrent <= pageBufferSize)\n        left = allPages - pageBufferSize * 2;\n\n      for (let i = left; i <= right; i += 1) {\n        const active = stateCurrent === i;\n        pagerList.push(\n          <Pager\n            locale={locale}\n            rootPrefixCls={prefixCls}\n            onClick={this.handleChange}\n            onKeypress={this.runIfEnter}\n            key={i}\n            page={i}\n            active={active}\n            showTitle={showTitle}\n            itemRender={itemRender}\n          />,\n        );\n      }\n\n      if (stateCurrent - 1 >= pageBufferSize * 2 && stateCurrent !== 1 + 2) {\n        pagerList[0] = (\n          <Pager\n            locale={locale}\n            rootPrefixCls={prefixCls}\n            onClick={this.handleChange}\n            onKeypress={this.runIfEnter}\n            key={left}\n            page={left}\n            class={`${prefixCls}-item-after-jump-prev`}\n            active={false}\n            showTitle={this.showTitle}\n            itemRender={itemRender}\n          />\n        );\n        pagerList.unshift(jumpPrev);\n      }\n      if (allPages - stateCurrent >= pageBufferSize * 2 && stateCurrent !== allPages - 2) {\n        pagerList[pagerList.length - 1] = (\n          <Pager\n            locale={locale}\n            rootPrefixCls={prefixCls}\n            onClick={this.handleChange}\n            onKeypress={this.runIfEnter}\n            key={right}\n            page={right}\n            class={`${prefixCls}-item-before-jump-next`}\n            active={false}\n            showTitle={this.showTitle}\n            itemRender={itemRender}\n          />\n        );\n        pagerList.push(jumpNext);\n      }\n\n      if (left !== 1)\n        pagerList.unshift(firstPager);\n\n      if (right !== allPages)\n        pagerList.push(lastPager);\n    }\n\n    let totalText = null;\n\n    if (showTotal) {\n      totalText = (\n        <li class={`${prefixCls}-total-text`}>\n          {showTotal(total, [\n            total === 0 ? 0 : (stateCurrent - 1) * statePageSize + 1,\n            stateCurrent * statePageSize > total ? total : stateCurrent * statePageSize,\n          ])}\n        </li>\n      );\n    }\n    const prevDisabled = !hasPrev || !allPages;\n    const nextDisabled = !hasNext || !allPages;\n    const buildOptionText = this.buildOptionText || this.$slots.buildOptionText;\n    return (\n      <ul\n        unselectable=\"on\"\n        ref=\"paginationNode\"\n        {...restAttrs}\n        class={classNames(\n          { [`${prefixCls}`]: true, [`${prefixCls}-disabled`]: disabled },\n          className,\n        )}\n      >\n        {totalText}\n        <li\n          title={showTitle ? locale.prev_page : null}\n          onClick={this.prev}\n          tabindex={prevDisabled ? null : 0}\n          onKeypress={this.runIfEnterPrev}\n          class={classNames(`${prefixCls}-prev`, {\n            [`${prefixCls}-disabled`]: prevDisabled,\n          })}\n          aria-disabled={prevDisabled}\n        >\n          {this.renderPrev(prevPage)}\n        </li>\n        {pagerList}\n        <li\n          title={showTitle ? locale.next_page : null}\n          onClick={this.next}\n          tabindex={nextDisabled ? null : 0}\n          onKeypress={this.runIfEnterNext}\n          class={classNames(`${prefixCls}-next`, {\n            [`${prefixCls}-disabled`]: nextDisabled,\n          })}\n          aria-disabled={nextDisabled}\n        >\n          {this.renderNext(nextPage)}\n        </li>\n        <Options\n          disabled={disabled}\n          locale={locale}\n          rootPrefixCls={prefixCls}\n          selectComponentClass={selectComponentClass}\n          selectPrefixCls={selectPrefixCls}\n          changeSize={this.getShowSizeChanger() ? this.changePageSize : null}\n          current={stateCurrent}\n          pageSize={statePageSize}\n          pageSizeOptions={pageSizeOptions}\n          buildOptionText={buildOptionText || null}\n          quickGo={this.shouldDisplayQuickJumper() ? this.handleChange : null}\n          goButton={goButton}\n        />\n      </ul>\n    );\n  },\n});\n"],"names":["isInteger","value","Number","isFinite","Math","floor","defaultItemRender","originalElement","calculatePage","p","state","props","pageSize","statePageSize","total","defineComponent","compatConfig","MODE","name","mixins","BaseMixin","inheritAttrs","disabled","type","Boolean","default","undefined","prefixCls","PropTypes","string","def","selectPrefixCls","current","defaultCurrent","number","defaultPageSize","hideOnSinglePage","showSizeChanger","showLessItems","selectComponentClass","any","showPrevNextJumpers","showQuickJumper","oneOfType","looseBool","object","showTitle","pageSizeOptions","arrayOf","buildOptionText","Function","showTotal","simple","locale","LOCALE","itemRender","func","prevIcon","nextIcon","jumpPrevIcon","jumpNextIcon","totalBoundaryShowSizeChanger","data","$props","firstNotUndefined","min","stateCurrent","stateCurrentInputValue","watch","val","setState","newState","newCurrent","$data","hasProp","_val","oldValue","$nextTick","$refs","paginationNode","lastCurrentNode","querySelector","document","activeElement","blur","methods","getJumpPrevPage","max","getJumpNextPage","getItemIcon","icon","label","iconNode","getComponent","_createVNode","getValidValue","e","inputValue","target","allPages","isNaN","isValid","page","shouldDisplayQuickJumper","handleKeyDown","event","keyCode","KeyCode","UP","DOWN","preventDefault","handleKeyUp","isComposing","composing","ENTER","handleChange","changePageSize","size","preCurrent","__emit","currentPage","prev","hasPrev","next","hasNext","jumpPrev","jumpNext","getShowSizeChanger","runIfEnter","callback","restParams","key","charCode","runIfEnterPrev","runIfEnterNext","runIfEnterJumpPrev","runIfEnterJumpNext","handleGoTO","renderPrev","prevPage","prevButton","isValidElement","cloneElement","renderNext","nextPage","nextButton","render","class","className","restAttrs","splitAttrs","$attrs","extraAttrs","pagerList","firstPager","lastPager","gotoButton","goButton","pageBufferSize","jump_to_confirm","_gotoButton","jump_to","classNames","prev_page","BaseInputCore","_createTextVNode","next_page","pagerProps","rootPrefixCls","onClick","onKeypress","push","Pager","i","active","prevItemTitle","prev_3","prev_5","nextItemTitle","next_3","next_5","left","right","unshift","length","totalText","prevDisabled","nextDisabled","$slots","Options"],"mappings":"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"}