{"_id":"@andrew_l/mongoose-cursor-paginator","_rev":"9-c159469b3cc741902a53bd8d0e0f4e4e","name":"@andrew_l/mongoose-cursor-paginator","dist-tags":{"latest":"2.0.3"},"versions":{"1.0.0":{"name":"@andrew_l/mongoose-cursor-paginator","version":"1.0.0","keywords":["mongoose","cursor","paginator","pagination","pagin","token","based","pagination"],"author":{"url":"men232@yandex.ua","name":"Andrew L."},"license":"MIT","_id":"@andrew_l/mongoose-cursor-paginator@1.0.0","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"02f868c362d9aa03f4ed1e2de8b76bce0902267f","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-1.0.0.tgz","fileCount":16,"integrity":"sha512-ib/m2z5INXPviOAkcA14gfETYvcSRxJdPL6drWBM4eViP3PlofsnLF2aguTPMmaDSD+ZEBcNQoA7HL2e1iiR3w==","signatures":[{"sig":"MEQCIAQNvSh2ecDQRPVltYX2GshNMG+pwqnklE4qWSXZpDZDAiA/O0FcJsWZutafF1f/5NNGpFDhSqGez/JdWwKlPjctcg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfkWgZCRA9TVsSAnZWagAA5hkP/RFlFw/zBnEQi+NujclY\nb7aX+Las7vQ4u4MHRCzk+jqTr1PADW4VhPDkgi4W+h6EbH9M56StFEgbaE1D\nGX13DFd8ZYCg+9VwIVJhaH+TQepZF2KOA7qahjRkcf+Uj6SMXJ1ceYKsuBur\nyCqdp5r8iYSR7iLkcuVjfl9aFaHQYxy8rYkvDM7wSjOmWEzNnOc8x6JgIiia\nGOK59CyN/n23X3N8qqqmu3203mAQbv6cX4cNM4CIDJHV2zT5FNQDojpskvzh\n4gWRgSfTBNLRiF3fm+tRx/+MW5rZ8ccZXXodqwId+0AaDJTpJWayzY46+cRf\naP++b8ieH8QPECyG66wNziTueWUAj5brVymzJJKR3T9jWI9auD5c19NB2RWL\ni6KKoxp7I12aeSXg9U27BSGaG4AzU0yXb/U3VPd9NvaHyWCPJHJRHLFQ7V0+\nym1WRkVIWhYfJMRGCFPKG0upGwHKuHP5J5XJCDbbuEHZ2iqedLrIPjEfjkkC\nqnKY6mHIFIRCufS1KqyMEkU6smWDsKu3h8sAEHN8anuu5mLaJqUSb/4R3vS9\nqIiOOqZBvPMlIuahyE6ScbPO4t0cE2XygukAfFN5CUGbJJ6GrxNpK3bfEaet\nam/XcLeOXZZpOmT8h+W7g3gRwYHH4dqV1dXoMCiFHKSuCKq6KfbPgtGYfnEo\n9Qnd\r\n=U9hU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","gitHead":"5f0bec3fd42dbb0c0dfc538dfa45708379987dc8","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"6.14.4","description":"# Installation","directories":{"lib":"lib"},"_nodeVersion":"12.16.2","dependencies":{"debug":"^4.1.1","kareem":"^2.3.1","through2":"^4.0.2","base64url":"^3.0.1","clone-deep":"^4.0.1","msgpack-lite":"^0.1.26","through2-filter":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.5.0"},"peerDependencies":{"mongoose":"5.x"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_1.0.0_1603364888996_0.9696085515771609","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@andrew_l/mongoose-cursor-paginator","version":"1.0.1","keywords":["mongoose","cursor","paginator","pagination","pagin","token","based","pagination"],"author":{"url":"men232@yandex.ua","name":"Andrew L."},"license":"MIT","_id":"@andrew_l/mongoose-cursor-paginator@1.0.1","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"88fc5803feabd1061ca3d95388c01ffa14252419","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-1.0.1.tgz","fileCount":16,"integrity":"sha512-X+kGgD+HYRJq+wlj5D9kWfT5uGQB5FvP3738EZ80yxYpQ0ICuoznplU3+gYkFEtJg9imlH1luImewdiPk1xxBw==","signatures":[{"sig":"MEUCIQCFYsW73zyKfuQ7ZF+kuMb2Wln/aLQ1Q6mzSVOowNVGKwIgGEkDnOSj6cGhpGAKuwIfCQlAFajm8XoXkFWVmvJrP6Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmUqoCRA9TVsSAnZWagAAra0QAII3orlOdLENdZIS/czp\nq59Vm4/Etp1tHJCtDjlJMebZMFLNhK9pVIG5Az3IhagcvWDt7mY0pIgBsHY/\n4qpTY2eiju5QfSL6WC+XZYpgxv8arahZ4LdMT3oz/TGS9G57Wm+pBmztIgWb\nVifP17RqYAMUhaxBPuiI6wWVulT21oqlRjqJGZ/xb9bnUBFSmpXu2jjo1RRM\nT0odhlE9xxY6VnplJrP0OQvV843/qRRscVEq4JEQL3Jc78C7JhwC8bSxfn9P\nUiWqPmlOEdFroFiAhmW9BQaJdBiYhSvGls6P3+7NReePTOnGPffNAa8JP3h1\nGNFdtWIw9Izztcc31r+y9gw+9PDkAwLkdgY5f7rDSyCiIYqOQcirkdpP2gnO\nqBn8cTC2aOWn+i7t3cm666Z17PxhvM958btojwFsFSaEPLxgqHcNu3M7ZJ0R\nJLJ+1k/Qy9wVxYrTBu5FISF/yt9whFC/mhBu9ywNAFmCH0C7zqw8Fmjy4jty\nXxzC5Jzba3rD1FubY+yC1pujarm047VvCvbtWxf19bkvzGRDclbIbroq3mMg\nC0GKy2f7TaUn7PWCcWnlnZASq8M7BF6GAM2gbjASTJZJZmXlRi4o0qbTBymE\nQMyRwQ9dG7qquGz8lP1UTrXV8ueZa403ii6tLC5lFJT0DSIrIT6PZi6N2QAB\nWCS+\r\n=JTBF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","gitHead":"d1630d658909dac0935e8f94c547d29b65ff4474","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"6.14.4","description":"# Installation","directories":{"lib":"lib"},"_nodeVersion":"12.16.2","dependencies":{"debug":"^4.1.1","kareem":"^2.3.1","through2":"^4.0.2","base64url":"^3.0.1","clone-deep":"^4.0.1","msgpack-lite":"^0.1.26","through2-filter":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.5.0"},"peerDependencies":{"mongoose":"5.x"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_1.0.1_1603881640231_0.5257301719599852","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@andrew_l/mongoose-cursor-paginator","version":"1.0.2","keywords":["mongoose","cursor","paginator","pagination","pagin","token","based","pagination"],"author":{"url":"men232@yandex.ua","name":"Andrew L."},"license":"MIT","_id":"@andrew_l/mongoose-cursor-paginator@1.0.2","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"a45227a747b292cca4bb16a49716fc3cfd61aac9","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-1.0.2.tgz","fileCount":16,"integrity":"sha512-jSeyjIM9bsXcsqhuZkGwe+I2+f9HZ4USd11hc4C8fTbc1+y3OECsGO2SfTAZrMEMfLjr/T/ugHqo4f1/Ps3aSQ==","signatures":[{"sig":"MEUCIQCeMvSZqwzy2xLezpVoJrhWvvBodShoYTdWf4I+gs9kigIgW6UypT236arsJLQEYxO3fvrePXTRPjE/otU81eYcnq8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23973,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEWpdCRA9TVsSAnZWagAAuuIP/2RVJedh6SRUMv/Ona/v\n7GORJqtWwplxw5oP2uid2+UZF7Dq/icx/fUCMFr5WMbPG1I4b2K2gMZUrV60\nbcXZxR73rebq2bYbmNQlAVynooFQfAzZvyhdaf4d+fK9TU6cCI9CbEQoYanz\ngVGBi/FlA9w85OLyBQ8ptYX3i080AHGIxMWUsxAMIpc0Vjbytquegv7P57ES\nPeH0dDYYQkWFBkQRSeMx8PSwx0kDKEOEKEZflmC5vvMYu0zbtyE+MRX3kr0R\nOJYKnaIj3jM/DsL/7d7EjM0LHkO/Jz8fjnt3Xe5lmKB7CxIi8Gk4bu1/LyeN\ny6r0AONxApVvcVgadfEnwrLOOZmwkbQagGTrJNeDfTtcJ3tYGBdNJeWGeD1O\nWCDU/GQrHd44QpS36v+DCGUb9Usf6tYL+tBy/CEQQpw8Lm5k2kfpBD2hhwo8\nVl+IgE2rsbHW2bD8CumImRY8sMTPJfn6vToXt6sISk9EmFMCxUhBQkTOPEfy\nNV1fDODtvR2StPXCPCXB0S8sNHt8GU97Vlp0BIiLNfga/2wA5nwrqe8ZdH+j\nR4VgT27Ls/vQwpWcarUhnYT0pvBSzk4Q9+WAKaaFajhiWwJCEIurSwcKbNNn\nwzmAIdefBtTY6zfb3gj0q9kBLBiAUi2k4VJXS1eKGbUNzmMjG2EOhCyfwnSf\njtcY\r\n=w/90\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","gitHead":"7a04c83ba0e9527c8f812e4d8533008115e5def8","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"6.14.8","description":"A mongoose cursor based pagination with stream supporting & some sugar","directories":{"lib":"lib"},"_nodeVersion":"14.15.0","dependencies":{"debug":"^4.1.1","kareem":"^2.3.1","through2":"^4.0.2","base64url":"^3.0.1","clone-deep":"^4.0.1","msgpack-lite":"^0.1.26","through2-filter":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.5.0"},"peerDependencies":{"mongoose":"5.x"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_1.0.2_1611754077035_0.9392870644394273","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@andrew_l/mongoose-cursor-paginator","version":"1.0.3","keywords":["mongoose","cursor","paginator","pagination","pagin","token","based","pagination"],"author":{"url":"men232@yandex.ua","name":"Andrew L."},"license":"MIT","_id":"@andrew_l/mongoose-cursor-paginator@1.0.3","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"a40a160a1aca919b49789e334030b6bf90ae8f93","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-1.0.3.tgz","fileCount":16,"integrity":"sha512-g2E1NeMxi/W6BdfNXR/saZ9p1L2cWxMgBlZdlcPZSSqItZwuG8jY5LB9V25fr7t2NaeHYCzTfteUzrcYgbGuhA==","signatures":[{"sig":"MEYCIQC4wqE6JQVJxlZcAdjrNocylP6qb7Mvrf1KZGfaSLLviQIhAKnq9ZkiO2IprSy61f1r7AzH9P8ATA1Ouyyf53h7G0Sw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEqPkCRA9TVsSAnZWagAA5BQP/0hoJ2ja6ksN8J56fce4\nrLLlxJSSNXcV9PhgQhpkGVgVk8LPagnjU+YVZRT5cw6aG9tRhhU/gq2L2eaO\nKM5HOncGlt85bPKtniw0GyiJ86JSDxjWHB5ehWe6FIwJTM0wjVd1vOUS5wDh\nTNHKkKg7HVZxYwSNMVPCSTEUU2HtYHUMlONcKI9VX1+DCwdyYoIE7YWkLo0+\nHCI7Xxp69b545BkECCP+n+qyYl4gJ3TZKMNvwFx0HOKDRfh/0ZE6Qo7bUkF/\n/LGwOJaYxnHTYsOIYQ0nMx7BU6+M2QZhSM/T5c5oOW4eh9yESrcDpKk0XdjX\nd2YbAPY9sAdulq6b7HpazURiyDh6hjtyk7CNMU2/dHXbtGXfCwi3P2wU+mep\n1XZpFkduX3opGZW02r3azG2icQTGDM7oPmAJ5TtwhKLkz9rbS+DKKm977mxP\n/NqotnDT2LiK2fNtPPPOGn1/KJKBJGxjOKTPRbaKdlrHjmbuZ8Pw0oBz2WAT\nDUBhL5gaD1TtVojhzwlguiaz0Wrbllb5eGaLpEPBJq4ST1Cgc7CFAy3XHuwL\nUgZfSvkllNCLTyvGKA7jdqs8b6DBODGvd00YARJsyRMNQZSxMU1E5VBAp8WU\nFL4AooLMEK19boMKJtxZbxJFP+7UXlCr5GaNr7dri7vz06iGAKyk5V/ycOgD\nQ1q4\r\n=/9Ll\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","gitHead":"05cee7a94942ea0d987bac3c35e757a1803d2c48","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"6.14.8","description":"A mongoose cursor based pagination with stream supporting & some sugar","directories":{"lib":"lib"},"_nodeVersion":"14.15.0","dependencies":{"debug":"^4.1.1","kareem":"^2.3.1","through2":"^4.0.2","base64url":"^3.0.1","clone-deep":"^4.0.1","msgpack-lite":"^0.1.26","through2-filter":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.5.0"},"peerDependencies":{"mongoose":"5.x"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_1.0.3_1611834339318_0.5370277020462781","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@andrew_l/mongoose-cursor-paginator","version":"2.0.0","author":{"name":"Andrew L.","email":"andrew.io.dev@gmail.com"},"license":"ISC","_id":"@andrew_l/mongoose-cursor-paginator@2.0.0","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"9af8fa2b32c7745979496a3200ffe6752951e299","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-2.0.0.tgz","fileCount":8,"integrity":"sha512-ZpIsFUpLM9HiYaFZZ8Aw40R9q8OGloHUgdNFbHKsc6niZjAm2t1YFJKaBY8ezaHErBD8AEdIowK+LY+CvCi3tw==","signatures":[{"sig":"MEUCIG5GObTYWBavLTiMjX9qWJ8Z5E2xzRsMUfMyd2n7wm+WAiEA944WvyC9hKY2GCzppNAAk1vQE9QRVsYHOc3aljkXekk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115319},"main":"./dist/mongoose-cursor-paginator.cjs","type":"module","types":"./dist/mongoose-cursor-paginator.d.ts","module":"./dist/mongoose-cursor-paginator.mjs","exports":{".":{"types":"./dist/mongoose-cursor-paginator.d.ts","import":"./dist/mongoose-cursor-paginator.mjs","require":"./dist/mongoose-cursor-paginator.cjs"}},"gitHead":"ed6fae55cfa1ebd89a9fbf0a9b65fd5e6e46369f","scripts":{"dev":"nodemon src/playground.ts","test":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js","build":"rm -rf dist && rollup -c","test:watch":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js --watch"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"8.15.0","description":"![license](https://img.shields.io/npm/l/%40andrew_l%2Fmongoose-cursor-paginator) ![npm version](https://img.shields.io/npm/v/%40andrew_l%2Fmongoose-cursor-paginator)","directories":{},"_nodeVersion":"18.7.0","dependencies":{"crc":"^4.3.2","debug":"^4.1.1","clone-deep":"^4.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.1","eslint":"^8.45.0","rollup":"^3.26.3","esbuild":"^0.18.16","nodemon":"^2.0.22","ts-node":"^10.9.1","mongoose":"^7.4.0","prettier":"^3.0.0","typescript":"^5.1.5","@types/jest":"^29.5.3","@types/node":"^20.3.2","@types/debug":"^4.1.8","rollup-plugin-dts":"^5.3.0","rollup-plugin-esbuild":"^5.0.0"},"peerDependencies":{"kareem":">= 2.3.2","mongoose":">=6.0.0","@andrew_l/tl-pack":">= 0.1.5"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_2.0.0_1690208002137_0.7389581766928774","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"@andrew_l/mongoose-cursor-paginator","version":"2.0.1","author":{"name":"Andrew L.","email":"andrew.io.dev@gmail.com"},"license":"ISC","_id":"@andrew_l/mongoose-cursor-paginator@2.0.1","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"35ee6e9212dfe13a64b0eabd0f034589df5aa435","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-2.0.1.tgz","fileCount":8,"integrity":"sha512-o8mYfu7syGdaqD8Y5uVv66EYIJkmeOaIAmCRwC9GemH5iwOhBdZMAmtHh0LFm2xAiOZSP0YkAWkPegGs/nps9A==","signatures":[{"sig":"MEUCICQfAq5oiuX+6yRFay/CIA7IzGdHz1hoCLCLQgxwiq8jAiEAyxApxcly44V8TmaZCXFoNro0z9m1aQ3+o73ZsVDiVnE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115355},"main":"./dist/mongoose-cursor-paginator.cjs","type":"module","types":"./dist/mongoose-cursor-paginator.d.ts","module":"./dist/mongoose-cursor-paginator.mjs","exports":{".":{"types":"./dist/mongoose-cursor-paginator.d.ts","import":"./dist/mongoose-cursor-paginator.mjs","require":"./dist/mongoose-cursor-paginator.cjs"}},"gitHead":"5f0c75ad13c4d3b009066bb5b68e13f8c8c1b4d0","scripts":{"dev":"nodemon src/playground.ts","test":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js","build":"rm -rf dist && rollup -c","test:watch":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js --watch"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"8.15.0","description":"Pagination plugin for mongoose >= 6.x","directories":{},"_nodeVersion":"18.7.0","dependencies":{"crc":"^4.3.2","debug":"^4.1.1","clone-deep":"^4.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.1","eslint":"^8.45.0","rollup":"^3.26.3","esbuild":"^0.18.16","nodemon":"^3.0.1","ts-node":"^10.9.1","mongoose":"^7.4.0","prettier":"^3.0.0","typescript":"^5.1.5","@types/jest":"^29.5.3","@types/node":"^20.3.2","@types/debug":"^4.1.8","rollup-plugin-dts":"^5.3.0","rollup-plugin-esbuild":"^5.0.0"},"peerDependencies":{"kareem":">= 2.3.2","mongoose":">=6.0.0","@andrew_l/tl-pack":">= 0.1.5"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_2.0.1_1690208152651_0.44181629534245137","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"@andrew_l/mongoose-cursor-paginator","version":"2.0.2","author":{"name":"Andrew L.","email":"andrew.io.dev@gmail.com"},"license":"ISC","_id":"@andrew_l/mongoose-cursor-paginator@2.0.2","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"dist":{"shasum":"1b9f4b15cfaff9945880577abfbdfbdaa5978916","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-2.0.2.tgz","fileCount":8,"integrity":"sha512-xfGIVd31e5da2UzBcgQEneO72mLGc3e44vxhrkMDTAo31H0ORZ3aC99qQ3tyrMP6B6bjYiIUD8WzRCfev79aRw==","signatures":[{"sig":"MEQCICygfkyrNW+Ehksii4sp3HaBcHWUoSUhBtOnkfSpAX8NAiAeailBpw4qxuVcEjHqgBZYBeMdJ8ThcUWbz8LWHiVzRw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119995},"main":"./dist/mongoose-cursor-paginator.cjs","type":"module","types":"./dist/mongoose-cursor-paginator.d.ts","module":"./dist/mongoose-cursor-paginator.mjs","exports":{".":{"types":"./dist/mongoose-cursor-paginator.d.ts","import":"./dist/mongoose-cursor-paginator.mjs","require":"./dist/mongoose-cursor-paginator.cjs"}},"gitHead":"5f0c75ad13c4d3b009066bb5b68e13f8c8c1b4d0","scripts":{"dev":"nodemon src/playground.ts","test":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js","build":"rm -rf dist && rollup -c","test:watch":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js --watch"},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"repository":{"url":"git+https://github.com/men232/mongoose-cursor-paginator.git","type":"git"},"_npmVersion":"10.8.2","description":"Pagination plugin for mongoose >= 6.x","directories":{},"_nodeVersion":"22.6.0","dependencies":{"crc":"^4.3.2","debug":"^4.1.1","clone-deep":"^4.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.1","eslint":"^8.45.0","rollup":"^4.21.2","esbuild":"^0.23.1","nodemon":"^3.0.1","ts-node":"^10.9.2","mongoose":"^7.4.0","prettier":"^3.0.0","typescript":"^5.1.5","@types/jest":"^29.5.3","@types/node":"^20.3.2","@types/debug":"^4.1.8","rollup-plugin-dts":"^6.1.1","rollup-plugin-esbuild":"^6.1.1"},"peerDependencies":{"kareem":">=2.6.0","mongoose":">=7.0.0","@andrew_l/tl-pack":">= 0.1.5"},"_npmOperationalInternal":{"tmp":"tmp/mongoose-cursor-paginator_2.0.2_1725016562857_0.0443693191149066","host":"s3://npm-registry-packages"}},"2.0.3":{"name":"@andrew_l/mongoose-cursor-paginator","version":"2.0.3","description":"Pagination plugin for mongoose >= 6.x","type":"module","scripts":{"dev":"nodemon src/playground.ts","build":"rm -rf dist && rollup -c","test":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js","test:watch":"NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test jest --forceExit --verbose test/*.spec.js --watch"},"author":{"name":"Andrew L.","email":"andrew.io.dev@gmail.com"},"license":"ISC","repository":{"type":"git","url":"git+https://github.com/men232/mongoose-cursor-paginator.git"},"bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"main":"./dist/mongoose-cursor-paginator.cjs","module":"./dist/mongoose-cursor-paginator.mjs","types":"./dist/mongoose-cursor-paginator.d.ts","exports":{".":{"require":"./dist/mongoose-cursor-paginator.cjs","import":"./dist/mongoose-cursor-paginator.mjs","types":"./dist/mongoose-cursor-paginator.d.ts"}},"dependencies":{"clone-deep":"^4.0.1","crc":"^4.3.2","debug":"^4.1.1"},"devDependencies":{"@types/debug":"^4.1.8","@types/jest":"^29.5.3","@types/node":"^20.3.2","esbuild":"^0.23.1","eslint":"^8.45.0","jest":"^29.6.1","mongoose":"^7.4.0","nodemon":"^3.0.1","prettier":"^3.0.0","rollup":"^4.21.2","rollup-plugin-dts":"^6.1.1","rollup-plugin-esbuild":"^6.1.1","ts-node":"^10.9.2","typescript":"^5.1.5"},"peerDependencies":{"@andrew_l/tl-pack":">= 0.1.5","kareem":">=2.6.0","mongoose":">=7.0.0"},"_id":"@andrew_l/mongoose-cursor-paginator@2.0.3","gitHead":"d22a7b9b4e6cffd932967e46d57b75715701771f","homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-O7rYEFMVI3+xoCRsXqzLs5yctfrZmqx8l7ENfBZL3NGTlwoqbXzLL2IhtWe/I0VEKJmPkTKrHq4XFo3Va4aZvQ==","shasum":"f813b2ef849485f406602d44133911012aa05cca","tarball":"https://registry.npmjs.org/@andrew_l/mongoose-cursor-paginator/-/mongoose-cursor-paginator-2.0.3.tgz","fileCount":8,"unpackedSize":121517,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGUBlsHEFH/XsUOdRtMlcDurQYhJX2aVAPxxa2zVYwumAiEA3hWD3av2veyMQog1DPR/oKGAewJuTxz2AdewCIL2OfI="}]},"_npmUser":{"name":"andrew_l","email":"andrew.io.dev@gmail.com"},"directories":{},"maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mongoose-cursor-paginator_2.0.3_1749584265557_0.25229677307655374"},"_hasShrinkwrap":false}},"time":{"created":"2020-10-22T11:08:08.955Z","modified":"2025-06-10T19:37:46.006Z","1.0.0":"2020-10-22T11:08:09.108Z","1.0.1":"2020-10-28T10:40:40.347Z","1.0.2":"2021-01-27T13:27:57.158Z","1.0.3":"2021-01-28T11:45:39.429Z","2.0.0":"2023-07-24T14:13:22.424Z","2.0.1":"2023-07-24T14:15:52.874Z","2.0.2":"2024-08-30T11:16:03.000Z","2.0.3":"2025-06-10T19:37:45.833Z"},"bugs":{"url":"https://github.com/men232/mongoose-cursor-paginator/issues"},"author":{"name":"Andrew L.","email":"andrew.io.dev@gmail.com"},"license":"ISC","homepage":"https://github.com/men232/mongoose-cursor-paginator#readme","repository":{"type":"git","url":"git+https://github.com/men232/mongoose-cursor-paginator.git"},"description":"Pagination plugin for mongoose >= 6.x","maintainers":[{"name":"andrew_l","email":"andrew.io.dev@gmail.com"}],"readme":"# Pagination plugin for mongoose >= 6.x <!-- omit in toc -->\n\n![license](https://img.shields.io/npm/l/%40andrew_l%2Fmongoose-cursor-paginator) ![npm version](https://img.shields.io/npm/v/%40andrew_l%2Fmongoose-cursor-paginator)\n\n## Installation\n\n`npm i @andrew_l/mongoose-cursor-paginator`\n\n```js\nimport mongoose from 'mongoose';\nimport { setupPlugin } from '@andrew_l/mongoose-cursor-paginator';\n\nsetupPlugin(mongoose);\n```\n\n## Usage examples\n\nSimple search with catching filter & sort options of original mongoose query.\n\n```js\n// Fetch the first page\nconst firstPage = await Users.find({ role: 'admin' })\n  .limit(10)\n  .sort({ createdAt: -1 })\n  .lean()\n  .paginator();\n\nconsole.log(firstPage);\n/* {\n  \"metadata\": {\n    \"hasNext\": true,\n    \"next\": \"ldkkZjBhZTViZTQtNzRkNC00YzY2LWI2MWItYjMzYjE0NzQwODI4pFVzZXKBo19pZP-Bo19pZNkkZjBhZTViZTQtNzRkNC00YzY2LWI2MWItYjMzYjE0NzQwODI4gA\"\n  },\n  \"items\": [\n    { doc_1 },\n    { doc_n },\n    ...\n    { doc_10 },\n  ]\n} */\n\nconst secondPage = await Users.find({ role: 'admin' })\n  .limit(10)\n  // sort can be overwrited by next token\n  .sort({ createdAt: -1 })\n  .lean()\n  .paginator({ next: firstPage.metadata.next });\n\nconsole.log(secondPage);\n/* {\n  \"metadata\": {\n    \"hasNext\": false,\n    \"next\": null\n  },\n  \"items\": [\n    { doc_1 },\n    { doc_2 },\n    { doc_3 }\n  ]\n} */\n```\n\n## Advanced usage\n\n```js\n// Make query with some criteria\nconst firstPage = await searchUsers({\n  role: 'admin',\n});\n\n// Now we can use only next token and keep the role filter from previous query\nconst secondPage = await searchUsers({\n  next: firstPage.metadata.next,\n});\n\nfunction searchUsers(search) {\n  const savedSearch = {};\n\n  const paign = User.find()\n    .lean()\n    .sort({ status: 1, createdAt: -1, _id: 1 })\n    .limit(50)\n    .paginator({\n      next: search.next,\n      // Exclude `status` from pagination cursor.\n      paginationFields: ['createdAt', '_id'],\n\n      // Save search params into token payload\n      preQuery() {\n        this.nextToken.payload = savedSearch;\n      },\n    });\n\n  // Use token payload as search params\n  if (paign.previousToken?.payload) {\n    search = paign.previousToken?.payload;\n  }\n\n  const filter = {};\n\n  if (typeof search.role === 'string' && search.role) {\n    // Save role for next query\n    savedSearch.role = search.role;\n\n    // Use role as filter condition\n    filter.role = search.role;\n  }\n\n  // Update query filter\n  paign.getQuery().setQuery(filter);\n\n  return paign.exec();\n}\n```\n\n## Stream example\n\n```js\nconst query = await Users.find({ role: 'admin' });\n\nconst dbStream = await query.paginator.stream();\n\nstream.on('data', console.log);\nstream.on('end', () => {\n  const metadata = query.paginator().getMetadata();\n\n  console.log({ metadata });\n\n  /* {\n      \"metadata\": {\n    \t\"hasNext\": true,\n    \t\"next\": \"ldkkZjBhZTViZTQtNzRkNC00YzY2LWI2MWItYjMzYjE0NzQwODI4pFVzZXKBo19pZP-Bo19pZNkkZjBhZTViZTQtNzRkNC00YzY2LWI2MWItYjMzYjE0NzQwODI4gA\"\n      }\n    */\n});\n```\n\n### Tips\n- The last sorting key **must be uniq** & sortable (Number, ObjectId is perfect)\n","readmeFilename":"README.md"}