{"_id":"@asika32764/vue-pagination","_rev":"10-9196ecfedaf4052aece13fe769712819","name":"@asika32764/vue-pagination","dist-tags":{"latest":"1.0.8"},"versions":{"0.1.0":{"name":"@asika32764/vue-pagination","version":"0.1.0","_id":"@asika32764/vue-pagination@0.1.0","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"dist":{"shasum":"bd06a12d6675e75df525708a9a8db9d79c753bf1","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-0.1.0.tgz","fileCount":15,"integrity":"sha512-fBeOlFpyqmnLzl0rYJIQviu95PexsMEfvz2U9KNnkFIaOjzbVmdObGFWFZnftfghTx9apGyHkjm7Vr9puRB1Ug==","signatures":[{"sig":"MEUCIQC+NwRkTgiSOtjVsugchbF8d85XP8AK6A8MCOiNhCe/DAIgDqRp61bdmNjwTxhoaQjMC4xFxXeBLIoiI8k7zK9BQak=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21507},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.js","gitHead":"95b3dc0ebb74afb572365dc59ea2b403a79f2dcf","scripts":{"dev":"vite","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build","build:prod":"cross-env NODE_ENV=production vite build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"10.7.0","directories":{},"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_0.1.0_1728840659335_0.9839137303904499","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@asika32764/vue-pagination","version":"1.0.0","license":"MIT","_id":"@asika32764/vue-pagination@1.0.0","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"dist":{"shasum":"85032598ba2be9bcfb85828c7c47ebe7b36ae0eb","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.0.tgz","fileCount":13,"integrity":"sha512-+t3fxql8G1rodpjwuut88Uu8QUbAufPNP94u3/rYeCfNCQlb70Shtee6kotLwPV0I38FOkY3//5kZ8aW9Kc11Q==","signatures":[{"sig":"MEUCIQCSGrfVrjkYQ+iXLY117I3kb0XwNkNL+mQlWdHNqgj9AAIge9D6rPnXm+H/JUD+OVS0OCRusixJcyHa8SJgKsw9pDA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":30731},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.js","gitHead":"5f9afeb8c690836f5fff04a4c507bbf7af5c1cc9","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"9.8.1","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"18.18.2","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.0_1728893954377_0.8466753333149435","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@asika32764/vue-pagination","version":"1.0.1","license":"MIT","_id":"@asika32764/vue-pagination@1.0.1","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"dist":{"shasum":"08dcb7dce93b4da967813e8a5f8556c738bca643","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.1.tgz","fileCount":14,"integrity":"sha512-zFjVvrmtOb/c6lxtQeN0XpcsCNP0hyGllOIl6eAb/C446g5Eth43bbErLJc73o5n+HU5R72EJwZadNQTcjTdUQ==","signatures":[{"sig":"MEQCIFtmdXzV3JJ8UL7DR9tolMFWtk/nwmFvxdMioO5mgNIVAiA9LAaZBxG3ceQPlNEAOCAKOR6aXhl6AFR2K0sjtjfZJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35355},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.js","gitHead":"944efc4b7a51a6b9efb9980977f6249b3e334156","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"9.8.1","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"18.18.2","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.1_1728911602418_0.5761966647166936","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@asika32764/vue-pagination","version":"1.0.2","license":"MIT","_id":"@asika32764/vue-pagination@1.0.2","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"homepage":"https://github.com/asika32764/vue-pagination","dist":{"shasum":"00b00ac942bb9a4988f51156661b73f855e917ff","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.2.tgz","fileCount":14,"integrity":"sha512-wAHfD1N2U0jt20Os4vl0n4HVTBVFQ5fZqx+dXhamXGAPLVoA8YsbpmUBbioPUukYYh2YIYTo9G/lxwXHJ65huA==","signatures":[{"sig":"MEYCIQDFRw4XoLW/bg+mPGAjmJkIX0JIesfwRO/6XyvL6xc6bgIhALRmUAQUHqxUNaltdmUPYQakrjKXvyGqwvwreFA0oKYe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35417},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.js","gitHead":"55f540d5132fc4823e4bd68ee1ad160100cc2b0a","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"9.8.1","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"18.18.2","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.2_1728911757831_0.8689283673963264","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@asika32764/vue-pagination","version":"1.0.3","license":"MIT","_id":"@asika32764/vue-pagination@1.0.3","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"homepage":"https://github.com/asika32764/vue-pagination","dist":{"shasum":"06441d945b7a94c3f88f60fecfaf3b43ec7b95ec","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.3.tgz","fileCount":14,"integrity":"sha512-9KhscwMpSBOtUppwFIxa61t5PUbF9WVi0Hk3iaY/jC41eELPglgNOigxuiju06czAyHbGJyvk2BmX7fS7GjUiw==","signatures":[{"sig":"MEUCIHO6D1iLJKkNBF2fpSMZUBmt8qiOdWcacgg/u5gj7uRzAiEA59p4byww4zpfGKQBobxPDSEueTRfByYENYfumpqWodE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35822},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.cjs","gitHead":"8909a876d9c516847e0b3cb4c6e325670a7c579c","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"11.1.0","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"packageManager":"yarn@4.6.0+sha512.5383cc12567a95f1d668fbe762dfe0075c595b4bfff433be478dbbe24e05251a8e8c3eb992a986667c1d53b6c3a9c85b8398c35a960587fbd9fa3a0915406728","devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0","@fortawesome/free-brands-svg-icons":"^6.7.2"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.3_1740740481208_0.2733068107839256","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@asika32764/vue-pagination","version":"1.0.4","license":"MIT","_id":"@asika32764/vue-pagination@1.0.4","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"homepage":"https://github.com/asika32764/vue-pagination","dist":{"shasum":"f4881688abf1c3e81fa9fdf75f136a14e1bb23b7","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.4.tgz","fileCount":14,"integrity":"sha512-Sa0tiGhhJgsLciBGsUdMva4110ZmUjDlO/tUT37pnlFJPscoZGt1Nb9yxYCSRBeWB3Qx932AqjtziVmMDV6EJg==","signatures":[{"sig":"MEQCIFeQPpwt+6QioYKP3Eug0+WJwguayOFoHX5M/F0USuFAAiA0HUJ0VI7gg5HuFWnNJu0iHd3mEvLwdyhW1yC7+s3GTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37439},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.cjs","gitHead":"b5cbab796c6b851adc6b9b64bcddb7e1920354f9","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"11.1.0","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"packageManager":"yarn@4.6.0+sha512.5383cc12567a95f1d668fbe762dfe0075c595b4bfff433be478dbbe24e05251a8e8c3eb992a986667c1d53b6c3a9c85b8398c35a960587fbd9fa3a0915406728","devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0","@fortawesome/free-brands-svg-icons":"^6.7.2"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.4_1740933394411_0.6603321235275255","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@asika32764/vue-pagination","version":"1.0.5","keywords":["vue","vue3","vue-component","vue-pagination","pagination","vue-pagination","vuejs","headless","composable","page"],"license":"MIT","_id":"@asika32764/vue-pagination@1.0.5","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"homepage":"https://github.com/asika32764/vue-pagination","dist":{"shasum":"75996439d7f8fc85101c80281a5396f5cec5a25a","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.5.tgz","fileCount":14,"integrity":"sha512-FVhCQVVFFbdp8dCFN4uiN9igoBtLTfxlQ5Y1W1wT5M7qPv1RJ8nLS4WX07xoYA+grCZqBGTb42zq7fv+X/j/bQ==","signatures":[{"sig":"MEUCIBNbGj/tE38gJ9wy/nKqw/bAyaz9aNivXqBQR3vQ7bybAiEA1sAiW5Jk1JdjW4ZVrnEHwnOTxeoWmGoBTP5nveB+DAg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37010},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.cjs","gitHead":"76b5e247fbc21589c564671932c5065943353543","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"11.1.0","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"packageManager":"yarn@4.10.3+sha512.c38cafb5c7bb273f3926d04e55e1d8c9dfa7d9c3ea1f36a4868fa028b9e5f72298f0b7f401ad5eb921749eb012eb1c3bb74bf7503df3ee43fd600d14a018266f","devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","unplugin-dts":"^1.0.0-beta.6","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","@vue/language-core":"^3.1.1","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0","@fortawesome/free-brands-svg-icons":"^6.7.2"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.5_1760777726053_0.8243186409990619","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@asika32764/vue-pagination","version":"1.0.6","keywords":["vue","vue3","vue-component","vue-pagination","pagination","vue-pagination","vuejs","headless","composable","page"],"license":"MIT","_id":"@asika32764/vue-pagination@1.0.6","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"homepage":"https://github.com/asika32764/vue-pagination","dist":{"shasum":"6207c61b4529c436791b00e7e379e7b9945f853d","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.6.tgz","fileCount":15,"integrity":"sha512-y60VNiUa74J4h0ORmX72A9Ucd9CB1QcucgL97/uhG5mOgv1Z2qlfYAB8GaHlcwIzdm5qOJouAsbRP4MuBS7Ssg==","signatures":[{"sig":"MEUCID+HhT456iZH+mA6V/ltcYnOm/bzIgpIk8XnMSSyww6yAiEAr7mJ/5+r1f1if10xcSvSH4LGhc/bgj6xGfBRoOzjXTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37706},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.cjs","gitHead":"aa25ca3fce02a7f90cdbd55f23f2aacb187d05b5","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"11.1.0","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"packageManager":"yarn@4.10.3+sha512.c38cafb5c7bb273f3926d04e55e1d8c9dfa7d9c3ea1f36a4868fa028b9e5f72298f0b7f401ad5eb921749eb012eb1c3bb74bf7503df3ee43fd600d14a018266f","devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","@vue/language-core":"^3.1.1","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0","@fortawesome/free-brands-svg-icons":"^6.7.2"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.6_1761566935114_0.543077397813946","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@asika32764/vue-pagination","version":"1.0.7","keywords":["vue","vue3","vue-component","vue-pagination","pagination","vue-pagination","vuejs","headless","composable","page"],"license":"MIT","_id":"@asika32764/vue-pagination@1.0.7","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"homepage":"https://github.com/asika32764/vue-pagination","dist":{"shasum":"efbc66b3d2cf1e6668957f0affede6612517a750","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.7.tgz","fileCount":15,"integrity":"sha512-dM+XCaGk6Xe+qNZa11sf8JLGesQQBhOBB3hE2LRZ4Acx5t3qky5ivJ4jRBT3VIl+XYATtb+LAcIJryfJU/fACw==","signatures":[{"sig":"MEUCIH5js/mIkgadRb/HSeanFvpwzRQVvclaSZMUz6z4LrDpAiEAsBoJAmd6SwmAxp9W9PxJIuN2Vgsxfl3Q4++NsPiM1Rw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38139},"main":"dist/vue-pagination.umd.cjs","type":"module","module":"dist/vue-pagination.js","browser":"dist/vue-pagination.umd.cjs","gitHead":"c4fb92521b37b17fd64f94548e6e847836ab3189","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","preview":"vite preview","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","build:prod":"yarn build:docs & yarn build"},"typings":"dist/index.d.ts","_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"_npmVersion":"11.1.0","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"packageManager":"yarn@4.10.3+sha512.c38cafb5c7bb273f3926d04e55e1d8c9dfa7d9c3ea1f36a4868fa028b9e5f72298f0b7f401ad5eb921749eb012eb1c3bb74bf7503df3ee43fd600d14a018266f","devDependencies":{"vue":"^3.5.12","sass":"^1.79.5","vite":"^5.2.10","tslib":"^2.7.0","rollup":"^4.24.0","ts-node":"^10.9.2","vue-tsc":"^2.1.6","minimist":"^1.2.8","bootstrap":"^5.3.3","cross-env":"^7.0.3","typescript":"^5.6.3","@types/node":"^22.7.5","vite-plugin-dts":"^4.2.4","rollup-plugin-dts":"^6.1.1","rollup-plugin-vue":"^6.0.0","@vitejs/plugin-vue":"^5.1.4","@vue/language-core":"^3.1.1","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","@rollup/plugin-node-resolve":"^15.3.0","@fortawesome/vue-fontawesome":"^3.0.8","@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-solid-svg-icons":"^6.6.0","@fortawesome/free-brands-svg-icons":"^6.7.2"},"_npmOperationalInternal":{"tmp":"tmp/vue-pagination_1.0.7_1764482965840_0.9958825295898734","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@asika32764/vue-pagination","version":"1.0.8","license":"MIT","homepage":"https://github.com/asika32764/vue-pagination","type":"module","typings":"dist/index.d.ts","main":"dist/vue-pagination.umd.cjs","browser":"dist/vue-pagination.umd.cjs","module":"dist/vue-pagination.js","scripts":{"dev":"vite --config vite.config.docs.ts","build":"vite build","build:prod":"yarn build:docs & yarn build","build:docs":"vue-tsc && vite build  --config vite.config.docs.ts","preview":"vite preview"},"devDependencies":{"@fortawesome/fontawesome-svg-core":"^6.6.0","@fortawesome/free-brands-svg-icons":"^6.7.2","@fortawesome/free-solid-svg-icons":"^6.6.0","@fortawesome/vue-fontawesome":"^3.0.8","@rollup/plugin-node-resolve":"^15.3.0","@types/node":"^22.7.5","@vitejs/plugin-vue":"^5.1.4","@vue/language-core":"^3.1.1","bootstrap":"^5.3.3","cross-env":"^7.0.3","minimist":"^1.2.8","rollup":"^4.24.0","rollup-plugin-dts":"^6.1.1","rollup-plugin-esbuild":"^6.1.1","rollup-plugin-typescript":"^1.0.1","rollup-plugin-vue":"^6.0.0","sass":"^1.79.5","ts-node":"^10.9.2","tslib":"^2.7.0","typescript":"^5.6.3","vite":"^5.2.10","vite-plugin-dts":"^4.2.4","vue":"^3.5.12","vue-tsc":"^2.1.6"},"packageManager":"yarn@4.10.3+sha512.c38cafb5c7bb273f3926d04e55e1d8c9dfa7d9c3ea1f36a4868fa028b9e5f72298f0b7f401ad5eb921749eb012eb1c3bb74bf7503df3ee43fd600d14a018266f","keywords":["vue","vue3","vue-component","vue-pagination","pagination","vue-pagination","vuejs","headless","composable","page"],"_id":"@asika32764/vue-pagination@1.0.8","gitHead":"ce51582827028f032f2bb6bfbdf0c0db34f8498d","description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","_nodeVersion":"22.13.1","_npmVersion":"11.1.0","dist":{"integrity":"sha512-/ngyZ7y8lxj/xhLx5unkgfEOdGCP0g8Wtik16hNcKU/suyOHUhe+7wENOX/LD9I8nXEzAxM3UPXu/SpOX2B20g==","shasum":"167a5e15e10273918be6104867b89facb92643b3","tarball":"https://registry.npmjs.org/@asika32764/vue-pagination/-/vue-pagination-1.0.8.tgz","fileCount":15,"unpackedSize":37987,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDrxU20mkMYHvqRtLh/uqwABJRcPHHVLFOI0nmyvdl+LAIgSAXl6eThpx0hcAR8QaVJXXRiNEm6P4tjtP6+dLdHGQU="}]},"_npmUser":{"name":"asika32764","email":"asika32764@gmail.com"},"directories":{},"maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vue-pagination_1.0.8_1764483537600_0.47679057585439866"},"_hasShrinkwrap":false}},"time":{"created":"2024-10-13T17:30:59.227Z","modified":"2025-11-30T06:18:58.036Z","0.1.0":"2024-10-13T17:30:59.516Z","1.0.0":"2024-10-14T08:19:14.648Z","1.0.1":"2024-10-14T13:13:22.644Z","1.0.2":"2024-10-14T13:15:58.057Z","1.0.3":"2025-02-28T11:01:21.439Z","1.0.4":"2025-03-02T16:36:34.621Z","1.0.5":"2025-10-18T08:55:26.231Z","1.0.6":"2025-10-27T12:08:55.303Z","1.0.7":"2025-11-30T06:09:26.036Z","1.0.8":"2025-11-30T06:18:57.831Z"},"license":"MIT","homepage":"https://github.com/asika32764/vue-pagination","keywords":["vue","vue3","vue-component","vue-pagination","pagination","vue-pagination","vuejs","headless","composable","page"],"description":"[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination) [![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)","maintainers":[{"name":"asika32764","email":"asika32764@gmail.com"}],"readme":"# Vue Pagination Headless\n\n[![Version](https://img.shields.io/npm/v/%40asika32764/vue-pagination.svg?style=flat-square)](https://www.npmjs.com/package/@asika32764/vue-pagination)\n[![License](https://img.shields.io/npm/l/%40asika32764/vue-pagination.svg?style=flat-square)](LICENSE)\n\nHeadless and non-style pagination for Vue 3. [DEMO](https://about.asika.tw/vue-pagination/)\n\n<!-- TOC -->\n* [Vue Pagination](#vue-pagination)\n  * [Installation](#installation)\n  * [Getting Started](#getting-started)\n    * [Create A Simple Pagination](#create-a-simple-pagination)\n  * [Parameters](#parameters)\n    * [Max Items](#max-items)\n    * [Page Route and LinkTag](#page-route-and-linktag)\n    * [Page Click](#page-click)\n  * [Custom Slots](#custom-slots)\n    * [Page Icons and Numbers](#page-icons-and-numbers)\n    * [Page Items](#page-items)\n  * [Custom UI by Composable](#custom-ui-by-composable)\n  * [Interfaces](#interfaces)\n    * [Props](#props)\n    * [Events](#events)\n    * [Slots](#slots)\n  * [Contribution](#contribution)\n<!-- TOC -->\n\n## Installation\n\n```shell\nnpm i @asika32764/vue-pagination --save\n\n# OR\n\nyarn add @asika32764/vue-pagination\n```\n\n## Getting Started\n\nUse bundler and Vue SFC:\n\n```vue\n\n<script setup lang=\"ts\">\n  import VuePagination from '@asika32764/vue-pagination';\n</script>\n```\n\nInclude JS file.\n\n```html\n\n<script src=\"path/to/package/dist/vue-pagination.umd.js\"></script>\n\n<script>\n  const app = Vue.createApp();\n  app.component('vue-pagination', VuePagination);\n</script>\n```\n\nES Module\n\n```html\n\n<script type=\"module\">\n  import VuePagination from 'path/to/package/dist/vue-pagination.umd.js';\n  import { createApp } from 'path/to/vue.umd.js';\n\n  const app = createApp();\n  app.component('vue-pagination', VuePagination);\n</script>\n\n```\n\n### Create A Simple Pagination\n\n```vue\n\n<script setup lang=\"ts\">\n  import VuePagination from '@asika32764/vue-pagination';\n\n  const items = ref([]);\n  const total = ref(0);\n  const perPage = ref(15);\n  const currentPage = ref(1);\n\n  const res = axios.get('item/list', { params: { limit: perPage.value, page: currentPage } });\n\n  items.value = res.data.items;\n  total.value = res.data.totalRows;\n</script>\n\n<template>\n  <VuePagination\n    v-model=\"currentPage\"\n    :total=\"total\"\n    :per-page=\"perPage\"\n  />\n</template>\n```\n\nYou will see a pagination with empty style.\n\n![](https://github.com/user-attachments/assets/9779f24e-5b7f-4588-ab35-a5e3eb49b4b8)\n\nThis is an example for Bootstrap style:\n\n```vue\n\n<template>\n  <VuePagination\n    v-model=\"currentPage\"\n    :total=\"total\"\n    :per-page=\"perPage\"\n\n    class=\"pagination\"\n    item-class=\"page-item\"\n    link-class=\"page-link\"\n    active-class=\"active\"\n    disabled-class=\"disabled\"\n  />\n</template>\n```\n\n![](https://github.com/user-attachments/assets/804df744-c905-46fb-97a0-d17aa981b1e8)\n\nYou could add your own class or style to this pagination components for every UI framework.\n\n## Parameters\n\n### Max Items\n\nConfigure max items shows on pagination, default is `5`:\n\n```vue\n\n<VuePagination\n  :max-items=\"3\"\n/>\n```\n\nThe example that we limit it only 3 items one time:\n\n![](https://github.com/user-attachments/assets/a7d1907b-c463-4fd3-8fd6-dd310b4a704c)\n\n### Page Route and LinkTag\n\nSimply add route parameter to create link for every page items:\n\n```vue\n\n<script setup lang=\"ts\">\n  import type { PageItem } from '@asika32764/vue-pagination';\n\n  function createLink(item: PageItem) {\n    return `blog/articles?page=${item.page}`;\n  }\n</script>\n\n<template>\n  <VuePagination\n    :route=\"createLink\"\n  />\n</template>\n```\n\nThe return value can be a string for `<a href=\"...\">` or any types. You can customize the link tag by:\n\n```vue\n\n<VuePagination\n  :route=\"createLink\"\n  :link-tag=\"'button' or 'router-link'\"\n/>\n```\n\nThe accepted `link-tag` value includes:\n\n- `a` => Page item will be `<a>` link and route will be `href` attribute.\n- `button` => Page item will be `<button>` and without route, you must use `@page-click` to handle click event.\n- `router-link`, `NuxtLink` or any other component => The route will be `to=\"....\"` props.\n\nThis is an example for VueRouter, you must install [vue-router](https://router.vuejs.org/) first to use the\n`router-link` component.\n\n```vue\n\n<script setup lang=\"ts\">\n  import type { PageItem } from '@asika32764/vue-pagination';\n\n  function createLink(item: PageItem) {\n    return { query: { page: item.page } };\n  }\n</script>\n\n<template>\n  <VuePagination\n    :route=\"createLink\"\n    link-tag=\"router-link\"\n  />\n</template>\n```\n\nYou can provide `true` to `route` prop that component will auto use `{ query: { page: item.page } }` as route:\n\n```vue\n\n<VuePagination\n  :route=\"true\"\n  link-tag=\"router-link\"\n/>\n```\n\n### Page Click\n\nIf you want to do something on page clicked, use `@page-click` event:\n\n```vue\n\n<script setup lang=\"ts\">\n  import type { PageItem } from '@asika32764/vue-pagination';\n\n  function onPageClick(event: MouseEvent, item: PageItem) {\n    currentPage.value = item.page;\n  }\n</script>\n\n<template>\n  <VuePagination\n    @page-click=\"onPageClick\"\n  />\n</template>\n```\n\n## Custom Slots\n\n### Page Icons and Numbers\n\n```vue\n\n<script setup lang=\"ts\">\n  import { faBackward, faBackwardStep, faForward, faForwardStep } from '@fortawesome/free-solid-svg-icons';\n  import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';\n\n</script>\n\n<template>\n  <VuePagination\n    v-model=\"page\"\n    :total=\"total\"\n    :per-page=\"perPage\"\n    class=\"pagination\"\n    item-class=\"page-item\"\n    link-class=\"page-link\"\n    active-class=\"active\"\n    disabled-class=\"disabled\"\n  >\n    <template #first-icon>\n      <FontAwesomeIcon :icon=\"faBackwardStep\" />\n    </template>\n    <template #previous-icon>\n      <FontAwesomeIcon :icon=\"faBackward\" />\n    </template>\n    <template #next-icon>\n      <FontAwesomeIcon :icon=\"faForward\" />\n    </template>\n    <template #last-icon>\n      <FontAwesomeIcon :icon=\"faForwardStep\" />\n    </template>\n    <template #page=\"{ item }\">\n      <em>{{ item.page }}</em>\n    </template>\n  </VuePagination>\n</template>\n\n```\n\n### Page Items\n\nIf you need to build your own pagination items, use `page-item` slot to implement it.\n\n```vue\n\n<script setup lang=\"ts\">\n  import { PageType } from '@asika32764/vue-pagination';\n  import { faBackward, faBackwardStep, faForward, faForwardStep } from '@fortawesome/free-solid-svg-icons';\n  import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';\n</script>\n\n<template>\n  <VuePagination\n    v-model=\"page\"\n    :total=\"total\"\n    :per-page=\"perPage\"\n    class=\"pagination\"\n    item-class=\"page-item\"\n    link-class=\"page-link\"\n    active-class=\"active\"\n    disabled-class=\"disabled\"\n  >\n    <template #page-item=\"{ item, to }\">\n      <div class=\"page-item\">\n        <NuxtLink :to=\"to\" class=\"page-link\"\n          :class=\"{ active: item.active, disabled: item.disabled }\"\n        >\n          <FontAwesomeIcon v-if=\"item.type === PageType.FIRST\" :icon=\"faBackwardStep\" />\n          <FontAwesomeIcon v-else-if=\"item.type === PageType.PREVIOUS\" :icon=\"faBackward\" />\n          <FontAwesomeIcon v-else-if=\"item.type === PageType.NEXT\" :icon=\"faForward\" />\n          <FontAwesomeIcon v-else-if=\"item.type === PageType.LAST\" :icon=\"faForwardStep\" />\n          <span v-else>{{ item.page }}</span>\n        </NuxtLink>\n      </div>\n    </template>\n  </VuePagination>\n</template>\n```\n\nThe `PageItem` and `PageType` interfaces:\n\n```ts\ninterface PageItem {\n  type: PageType;\n  page: number;\n  active: boolean;\n  disabled: boolean;\n}\n```\n\n```ts\nenum PageType {\n  FIRST = 'first',\n  PREVIOUS = 'previous',\n  LOWER = 'lower',\n  CURRENT = 'current',\n  HIGHER = 'higher',\n  NEXT = 'next',\n  LAST = 'last',\n}\n```\n\n## Custom UI by Composable\n\nVue-Pagination provides a `usePagination()` composable that you can implement your custom pagination UI.\n\n```vue\n<script setup lang=\"ts\">\nimport { usePagination, PageType } from '@asika32764/vue-pagination';\n\nconst {\n  total,\n  perPage,\n  currentPage,\n  maxItems,\n  pages,\n  pagesCount,\n} = usePagination({ total: 150, perPage: 10, currentPage: 1 });\n\n</script>\n\n<template>\n  <div class=\"pagination\">\n    <div v-for=\"item of pages\" class=\"page-item\">\n      <a href=\"javascript:void(0)\" class=\"page-link\"\n        :class=\"{ active: item.active, disabled: item.disabled }\"\n        @click.prevent=\"currentPage = item.page\"\n      >\n        <FontAwesomeIcon v-if=\"item.type === PageType.FIRST\" :icon=\"faBackwardStep\" />\n        <FontAwesomeIcon v-else-if=\"item.type === PageType.PREVIOUS\" :icon=\"faBackward\" />\n        <FontAwesomeIcon v-else-if=\"item.type === PageType.NEXT\" :icon=\"faForward\" />\n        <FontAwesomeIcon v-else-if=\"item.type === PageType.LAST\" :icon=\"faForwardStep\" />\n        <span v-else>{{ item.page }}</span>\n      </a>\n    </div>\n  </div>\n</template>\n```\n\nYou can send empty options and configure options later, every ref variables can be changed and pagination will auto re-compile. \n\n```ts\nconst {\n  total,\n  perPage,\n  currentPage,\n  maxItems,\n  pages,\n  pagesCount,\n} = usePagination();\n\ntotal.value = 150;\nperPage.value = 10;\n\n```\n\nIf you are building a pagination wrapper, you can send `MaybeRefOrGetter` as options, Vue-Pagination will auto listen it.\n\n```ts\nconst props = defineProps<{\n  total: number;\n  perPage: number;\n  maxItems?: number;\n}>();\n\nconst currentPage = defineModel({ default: 1 });\n\nconst { pages } = usePagination({\n  total: () => props.total, // Getter function\n  perPage: () => props.perPage,\n  currentPage, // ref\n  maxItems: () => props.maxItems\n});\n\n// Pages will auto refresh after any options changed.\nfor (var page of pages.value) {\n  // ...\n}\n```\n\n## Interfaces\n\n### Props\n\n| Prop             | Type                                   | Description                     |\n|------------------|----------------------------------------|---------------------------------|\n| `total`          | `number`                               | The total rows number.          |\n| `per-page`       | `number`                               | The number per-page.            |\n| `max-items`      | `?number`                              | The max items shows once time.  |\n| `link-tag`       | `any`                                  | The link tag name or component. |\n| `route`          | `((page: PageItem) => any) or boolean` | The route link logic.           |\n| `item-class`     | `any`                                  | The page item class.            |\n| `link-class`     | `any`                                  | The page link class.            |\n| `active-class`   | `any`                                  | The current page class.         |\n| `disabled-class` | `any`                                  | The disabled class.             |\n\n### Events\n\n| Event               | Interface                         | Description                                            |\n|---------------------|-----------------------------------|--------------------------------------------------------|\n| `page-click`        | `(e: MouseEvent, item: PageItem)` | The page clicked event.                                |\n| `pages-updated`     | `([currentPage, total, perPage])` | When `currentPage`, `total`, `perPage` any one changed |\n| `update:modelValue` | `(page: number)`                  | When `currentPage` changed                             |\n\n### Slots\n\n| Slot            | Values                        | Description                              |\n|-----------------|-------------------------------|------------------------------------------|\n| `first-icon`    | `{ item: PageItem, to: any }` | The item text for first link.            |\n| `previous-icon` | `{ item: PageItem, to: any }` | The item text for previous link.         |\n| `next-icon`     | `{ item: PageItem, to: any }` | The item text for next link.             |\n| `last-icon`     | `{ item: PageItem, to: any }` | The item text for last link.             |\n| `page`          | `{ item: PageItem, to: any }` | The item text for every page links.      |\n| `page-item`     | `{ item: PageItem, to: any }` | The page item HTML for every page items. |\n\n## Contribution\n\nRun:\n\n```shell\nyarn install\nyarn dev\n```\n\nThe vite server will raise a doc site on `http://localhost:5173`\n\nThe doc site entry file is located at: `src/docs/main.ts`.\n\nYou can add your code at this file to test your changes, remeber don't commit your test code to git.\n\nAfter developed, run this command to build dist files.\n\n```shell\nyarn build:prod\n```\n","readmeFilename":"README.md"}