{"_id":"@cabin-id/nextjs","_rev":"34-d96e51e966cf7bb276b7c490000b2473","name":"@cabin-id/nextjs","dist-tags":{"latest":"2.2.1"},"versions":{"0.0.1":{"name":"@cabin-id/nextjs","version":"0.0.1","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.0.1","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"dist":{"shasum":"649de6b21c64d9ea1778b78bd4dff880457849b7","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.0.1.tgz","fileCount":144,"integrity":"sha512-xg01pTcFPiaj14W9qnJsH9iQ3scaQDbHlKsMkTjniLYvnPJ/B7nQCX8d4FF+dNHvtNnLx9A4YS7PkqgQSoEsyw==","signatures":[{"sig":"MEYCIQDUc22X6IvKWeAoFHO3YRA6CFKporuaztw6vyuUujv2QQIhAPa4Df3UoXf9RyizSV+/b6S9O5Qx3RKzY52J7wy5fZf1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227497},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.0.1.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/a0ec413dc1dad1c2546bd7706f5917a5/cabin-id-nextjs-0.0.1.tgz","_integrity":"sha512-xg01pTcFPiaj14W9qnJsH9iQ3scaQDbHlKsMkTjniLYvnPJ/B7nQCX8d4FF+dNHvtNnLx9A4YS7PkqgQSoEsyw==","_npmVersion":"10.2.3","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","postcss":"^8.4.38","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@cabin-id/tailwind-config":"0.0.4"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.0.1_1713710997016_0.854378568320185","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"@cabin-id/nextjs","version":"0.1.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.0","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"fdffc14e761871fbdba0c7bded6fbbce428dfa1a","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.0.tgz","fileCount":171,"integrity":"sha512-NPWeuhZFiVU3tW6cgrn3ykSEqhZoLqvWPoErID+26ZQeE6MrfKRvPvRH+uZFUuTyQgBL5dQYpjUsOwR0iySTtg==","signatures":[{"sig":"MEUCIQDNAgUbbQ1ADVrGZlIxBnLgA5hHCByve9sfHK9hOfjcYQIgbdUmSz+DHY0upi6qIsHPM9v8JjljXQa1GxWfb9kt4rk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":207630},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/c712759a53489e9971bf53818ae79901/cabin-id-nextjs-0.1.0.tgz","_integrity":"sha512-NPWeuhZFiVU3tW6cgrn3ykSEqhZoLqvWPoErID+26ZQeE6MrfKRvPvRH+uZFUuTyQgBL5dQYpjUsOwR0iySTtg==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.0_1714191991781_0.8258091072993061","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@cabin-id/nextjs","version":"0.1.1","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.1","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"b4a7610659fa23fb2e50939ade2ef7194b54834a","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.1.tgz","fileCount":171,"integrity":"sha512-9u5sDnXcneFYm+PS/vjl9lG0Qg/DrMqSnQYKErtjRgP2cMRR12tvfrX5ZVfHSnmVGrm/J0WYODbt55QVhHUuTQ==","signatures":[{"sig":"MEYCIQCTrRPD26IXhnbmg1ituFoXG4j7/OJOSPyZwlkAUqaoDAIhAMC5PdwLPRoo3Tpl5YIDj57IW7Z9b0BRMqPmxmfirzTN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":207630},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.1.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/11eeb0674abd406aa379ca664915b37e/cabin-id-nextjs-0.1.1.tgz","_integrity":"sha512-9u5sDnXcneFYm+PS/vjl9lG0Qg/DrMqSnQYKErtjRgP2cMRR12tvfrX5ZVfHSnmVGrm/J0WYODbt55QVhHUuTQ==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.1_1714192123016_0.2082468311920742","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@cabin-id/nextjs","version":"0.1.2","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.2","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"e788ab33f7445935290cd4db15d3e7153cbc8b9a","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.2.tgz","fileCount":175,"integrity":"sha512-N+hP9WCPxLogpOm06rrCAHZErfbOs1x/w+wg2zR/wXY7PfRAdUrMPQDbusFZGFXF2zT4HIYsa1VlLiRpm+yvdw==","signatures":[{"sig":"MEQCICUfCI/lLunJfkvOPj0FAycyNg9lR66xr5q4DMfMK20oAiBnYv9ZKrh+UssaJbI+5/yTocI4kKyoaRbBkmKQNR0pAA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":253247},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.2.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/66fcd8cfbb950ab0031203eef85ca806/cabin-id-nextjs-0.1.2.tgz","_integrity":"sha512-N+hP9WCPxLogpOm06rrCAHZErfbOs1x/w+wg2zR/wXY7PfRAdUrMPQDbusFZGFXF2zT4HIYsa1VlLiRpm+yvdw==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.2_1714201840739_0.9898062417738718","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"@cabin-id/nextjs","version":"0.1.3","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.3","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"e02b21333a116fe0af2332101215544cb00442b4","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.3.tgz","fileCount":175,"integrity":"sha512-o/eqAmRHdE5t67QGln80e5mX/VZrD4EY4o1+F34Fz2dxd7np/rSPd9/ARh86KpvLsRbMvdIqxv2me28MTdQxuA==","signatures":[{"sig":"MEUCIQDeK/fXRWoBbUOVXnp1JRP+mV8a2vThZNDRgFxgIwczGgIgE7Crju45N87YGrl3el4hl1dNg4mflSaZN2uF5W0tkjM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":253314},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.3.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/85a2cee37ede045b741c431e7f2cb0cb/cabin-id-nextjs-0.1.3.tgz","_integrity":"sha512-o/eqAmRHdE5t67QGln80e5mX/VZrD4EY4o1+F34Fz2dxd7np/rSPd9/ARh86KpvLsRbMvdIqxv2me28MTdQxuA==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.3_1714305818290_0.666606742486437","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"@cabin-id/nextjs","version":"0.1.4","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.4","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"31dc9b2c3319473bf660031e4e93738f338b2db0","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.4.tgz","fileCount":175,"integrity":"sha512-4K6IW5UUGWcxmylaOy4805rR5c/HELHH7PRvUbD1UonXlpfOQCMaifZ0RO4l4HmcBgWBTOrYp/TMCOcz1AZDbw==","signatures":[{"sig":"MEUCIDj1VUJuYG/dmNeE621d9QrFdbdbTAA1/bcoxX32mQkXAiEA+sjoJBZdBzhPscJo6oKE3ao/aNqm1dHHg8grE0h3cWY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":253314},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.4.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/8d0acfeaed200e3d52094cbb7cfb0cce/cabin-id-nextjs-0.1.4.tgz","_integrity":"sha512-4K6IW5UUGWcxmylaOy4805rR5c/HELHH7PRvUbD1UonXlpfOQCMaifZ0RO4l4HmcBgWBTOrYp/TMCOcz1AZDbw==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.4_1714308955368_0.6193461233573452","host":"s3://npm-registry-packages"}},"0.1.5":{"name":"@cabin-id/nextjs","version":"0.1.5","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.5","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"a7b412c2b993ec7d8ef7d4f0420a186e5d6a3b85","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.5.tgz","fileCount":175,"integrity":"sha512-EZi7sj7AMYyc77W3ytMkdNRttVdZHkmqTwXSzVSR/MWZW/K0OVotVCSsEtW1+mSvvftbZq5RFgbv/sKSFqlsEA==","signatures":[{"sig":"MEQCICrCJvsexsHuiEbZYCtACIJTQN0YwedYNMmczmaezw6+AiAGZcNDZ8OBDFCxd5cYtaQ8UvEqAzuzvnTyOJ3aQ+/kjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":251629},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.5.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/a403f993d8b212784f766c3ea63492c0/cabin-id-nextjs-0.1.5.tgz","_integrity":"sha512-EZi7sj7AMYyc77W3ytMkdNRttVdZHkmqTwXSzVSR/MWZW/K0OVotVCSsEtW1+mSvvftbZq5RFgbv/sKSFqlsEA==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"swr":"^2.2.5","next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.5_1714368068166_0.44200528234117886","host":"s3://npm-registry-packages"}},"0.1.6":{"name":"@cabin-id/nextjs","version":"0.1.6","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.6","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"baa4abf748b2ca5021dd1680f5f20f02dd090947","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.6.tgz","fileCount":175,"integrity":"sha512-dlR1MQIgIgH610j7Y/HGNiAWr2JWFimqHhcGP6aBae6j1ydHC5ac70EttV4XoMakmKSMCNI0XEPuX0X+Q6oMwA==","signatures":[{"sig":"MEYCIQCVUeKXLIVZ9nA+sTLW+BUy0BUIwFu8ZRaVkxghPgqNlgIhAJerJJ/fTbxsH1UBhEN6DvhWAtGt3V4I0cp+9qTI7/03","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":251629},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.6.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/3d434d32aa453f91a421e4f3fdb2cfe9/cabin-id-nextjs-0.1.6.tgz","_integrity":"sha512-dlR1MQIgIgH610j7Y/HGNiAWr2JWFimqHhcGP6aBae6j1ydHC5ac70EttV4XoMakmKSMCNI0XEPuX0X+Q6oMwA==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"swr":"^2.2.5","next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.6_1714464286303_0.34117740302266597","host":"s3://npm-registry-packages"}},"0.1.7":{"name":"@cabin-id/nextjs","version":"0.1.7","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.1.7","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"733f4e2d940e75c167825685783e06bfaa871b70","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.1.7.tgz","fileCount":175,"integrity":"sha512-R00++wo3HbOKq0ssUTRqFtlblam8VBFpW5b3dkoEfG4YAGcg05IpdDiN4sI72JUkuVQhv6GX5lvoCNSEeDJ+Ig==","signatures":[{"sig":"MEQCIB3OFugMtGjQQDQURgXZXo9Ph+jmEVcp2YqZuPM3wsCqAiAgWZhXtTJQ76GqLE/+jEs1EBdUJVVIbJEwqE8mxPagpw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":251693},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.1.7.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/c72e895502bcf4f253750fb3f85be75f/cabin-id-nextjs-0.1.7.tgz","_integrity":"sha512-R00++wo3HbOKq0ssUTRqFtlblam8VBFpW5b3dkoEfG4YAGcg05IpdDiN4sI72JUkuVQhv6GX5lvoCNSEeDJ+Ig==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"swr":"^2.2.5","next":"^14.1.1","react":"^18.2.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.1.7_1714467488686_0.32525861823683533","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"@cabin-id/nextjs","version":"0.2.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.2.0","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"abb100f18a9e4529ad7c47f2c2cdd5d49b60f79b","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.2.0.tgz","fileCount":302,"integrity":"sha512-9r0EtsPRdBEHGz0BsFVdtCW0bhN3AJypmjNQNWXm0xkqwVtE7eYgJZxc4e5+JKGRRjozC1rsqDu4P027e4L5OA==","signatures":[{"sig":"MEUCIF88oHueubhWsP5Y9KN/AJgilRivMgVnAEzIKhvkNDfMAiEAj7i5QHO5eSpGza/VfJZFn1BrTQAt30OaPgs8ZZq21m0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":465691},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.2.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/4c4739effc4505ae74f1ae6bad9aba95/cabin-id-nextjs-0.2.0.tgz","_integrity":"sha512-9r0EtsPRdBEHGz0BsFVdtCW0bhN3AJypmjNQNWXm0xkqwVtE7eYgJZxc4e5+JKGRRjozC1rsqDu4P027e4L5OA==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"swr":"^2.2.5","next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.2.0_1714617312763_0.7939659585994454","host":"s3://npm-registry-packages"}},"0.2.1":{"name":"@cabin-id/nextjs","version":"0.2.1","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.2.1","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"6a1137116339833f02114f4165999be7edcb4b15","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.2.1.tgz","fileCount":302,"integrity":"sha512-EWdfiuCqg1FHKp4rsHFxHboutYJFYu5mrMjPk5ft7QZy8IRKNX95BQOaF1V/NXuvPCAJb1qZPB5eNYOrM3SX0w==","signatures":[{"sig":"MEUCIQCjfat66NsvxQVDcCQWSmvbw1lqg7jqF1bSqMqnKTLUHAIgVEQ95knDKyUa6u2f8pdRIaESOpwb8AvNN46vjR33T74=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":470540},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.2.1.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"},"./internal":{"types":"./dist/types/internal.d.ts","import":"./dist/esm/internal.js","require":"./dist/cjs/internal.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/cc133daf4668ac31d990761ae75ea604/cabin-id-nextjs-0.2.1.tgz","_integrity":"sha512-EWdfiuCqg1FHKp4rsHFxHboutYJFYu5mrMjPk5ft7QZy8IRKNX95BQOaF1V/NXuvPCAJb1qZPB5eNYOrM3SX0w==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.2.1_1714619520802_0.7977277907326132","host":"s3://npm-registry-packages"}},"0.2.2":{"name":"@cabin-id/nextjs","version":"0.2.2","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.2.2","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"75b0d7a86ae0ddae74d12c66082f0cd54ece8bfb","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.2.2.tgz","fileCount":302,"integrity":"sha512-qMNvNq+eUQIw8K6kGmvgq8+kv/A/7f6T3+tjGzEwLinXFQ7O45tYI+78C8k40VexVME0PESH8DeyM7sjWao7XA==","signatures":[{"sig":"MEUCIHSyO7hPqdFI7Lgz7z33bnEJLsEsIzJxAxNIexygZ1OYAiEA0EFweSO4NqLLLSZdzE2cUdN3xsoeo1mVm6fVRQj3IRU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":470384},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.2.2.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/7ee49b55c4b76be886d88204cf80cc40/cabin-id-nextjs-0.2.2.tgz","_integrity":"sha512-qMNvNq+eUQIw8K6kGmvgq8+kv/A/7f6T3+tjGzEwLinXFQ7O45tYI+78C8k40VexVME0PESH8DeyM7sjWao7XA==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.2.2_1714623920895_0.8948266396654079","host":"s3://npm-registry-packages"}},"0.2.3":{"name":"@cabin-id/nextjs","version":"0.2.3","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.2.3","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"b83140cf3af05d6614d80cd94baa9bb730e66521","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.2.3.tgz","fileCount":302,"integrity":"sha512-cNO0+oyPl5mI3QZihM3uaxmHBh+pjZbmSHD1n5iXb5f4s2PYuV1m29Q1iiA/HydTpjP2UPtpgsRLVmM0CQ3Klw==","signatures":[{"sig":"MEYCIQD58CYyAid7ffAdQLwUTR/kuyY8RpE0NEsXMwLQwhP+lAIhAI+sCCjkgmE/bK9T3kplgcbx/7gm2XJiQoLPeYaQMd6P","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":470384},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.2.3.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/284bf3844040631fc66e74947ec42b2a/cabin-id-nextjs-0.2.3.tgz","_integrity":"sha512-cNO0+oyPl5mI3QZihM3uaxmHBh+pjZbmSHD1n5iXb5f4s2PYuV1m29Q1iiA/HydTpjP2UPtpgsRLVmM0CQ3Klw==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.2.3_1714624472758_0.6955842772313361","host":"s3://npm-registry-packages"}},"0.2.4":{"name":"@cabin-id/nextjs","version":"0.2.4","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.2.4","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"60c9e3c1ea1325204bd516a07e69c85bf423cd5a","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.2.4.tgz","fileCount":302,"integrity":"sha512-pzpcsTxaPe+wgWnYQd51UWD/f4ebyfFofoj+dRvXNvM1/X8MVOp/X3jWbSFcvbWyIRjLfOJyFppMWZgyZR2nrg==","signatures":[{"sig":"MEUCIQCe9alsDwedGn5tIgrGL+yXFoZeCp6up2YZWrF7QKyDQwIgJwdx42qcJpgwA7dKPyJlBEef7NsZZhfy9317U4XBP0E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":473495},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.2.4.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/5ee402fcaf10aed6cff0c4a2ee76cf4c/cabin-id-nextjs-0.2.4.tgz","_integrity":"sha512-pzpcsTxaPe+wgWnYQd51UWD/f4ebyfFofoj+dRvXNvM1/X8MVOp/X3jWbSFcvbWyIRjLfOJyFppMWZgyZR2nrg==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.2.4_1714634018687_0.9605801090101924","host":"s3://npm-registry-packages"}},"0.2.5":{"name":"@cabin-id/nextjs","version":"0.2.5","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@0.2.5","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"6fa850b356d8e4cc58be815f1d4a47c206fea672","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-0.2.5.tgz","fileCount":302,"integrity":"sha512-hk+AwVAoMt/x6pV+XiBCDErqgA8stQSa2swzHMTmpFzgwkxPE8p1n6oFdTpifWivTc6mlIeqpRU/ZtaJq54cPw==","signatures":[{"sig":"MEUCIEc+gadCbv8AjrWmHjvoZQ+idfnjLo2gP2WUUASJNEXSAiEAlQiCQveOWL9Caj79FzzfNodYiOwazy3/jSWI4PAiaCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":471503},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-0.2.5.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"kienha","email":"minhkien2208@gmail.com"},"_resolved":"/private/var/folders/vc/5qd1n19n3352w445yb89v1zw0000gn/T/22efc73a5cb516a12c532c3ab5966c57/cabin-id-nextjs-0.2.5.tgz","_integrity":"sha512-hk+AwVAoMt/x6pV+XiBCDErqgA8stQSa2swzHMTmpFzgwkxPE8p1n6oFdTpifWivTc6mlIeqpRU/ZtaJq54cPw==","_npmVersion":"10.2.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"18.19.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_0.2.5_1714793425312_0.40834044621395527","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@cabin-id/nextjs","version":"1.0.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.0.0","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"d4c9390df21252e5d2160be3fdbb04a7bfe7d9cd","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.0.0.tgz","fileCount":2,"integrity":"sha512-J3sZmdnYGo5uy9A6rlyYpqovPXHyBLlmY5GNcUb3IwDPJiCkDVdACjd8I9ivMowqs/CKsy90WOmiiTpsx8sGrQ==","signatures":[{"sig":"MEUCIQD3jtcP+zZ8SdQTURnxjrWxzHEYkSAiPXRsFrLD30rOmgIgKrl2CamaZpt11isClQJZVV2Y5wzXnfsnFmUbznu5VcU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1649},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.0.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"005ad65c66d435380efa5c29330ff15ba6d2b51f","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/cc366bf3779bbafccf78afeaa19694f3/cabin-id-nextjs-1.0.0.tgz","_integrity":"sha512-J3sZmdnYGo5uy9A6rlyYpqovPXHyBLlmY5GNcUb3IwDPJiCkDVdACjd8I9ivMowqs/CKsy90WOmiiTpsx8sGrQ==","_npmVersion":"10.8.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.0.0_1731857282907_0.1864935224617812","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@cabin-id/nextjs","version":"1.0.1","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.0.1","maintainers":[{"name":"kienha","email":"minhkien2208@gmail.com"},{"name":"admincabinid","email":"admin@cabineat.vn"}],"homepage":"https://cabinid.dev","dist":{"shasum":"28734df5282dacd7ba3690f16fa5476485655cf7","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.0.1.tgz","fileCount":302,"integrity":"sha512-DgmTN8oP7TZFOHVK+pk9+PI9j2hr6ZHscydMUpXlz2rlDGBG226tocGue0+kGJXb6c1sywkPn2IYQY6xR63m/Q==","signatures":[{"sig":"MEQCIBu4bCMj7+8LxW1EtOuEJWYKiAfW1X8/QkY/+Qb1OsGMAiBu1+D1T5WqA+czGMByZymYio1Z2c+OKv1BMcjHUcOQFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":472811},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.0.1.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"005ad65c66d435380efa5c29330ff15ba6d2b51f","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/cf95276a89dc0b690b62b068f832d229/cabin-id-nextjs-1.0.1.tgz","_integrity":"sha512-DgmTN8oP7TZFOHVK+pk9+PI9j2hr6ZHscydMUpXlz2rlDGBG226tocGue0+kGJXb6c1sywkPn2IYQY6xR63m/Q==","_npmVersion":"10.8.3","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.0.1_1731869589295_0.34824867286682726","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@cabin-id/nextjs","version":"1.0.2","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.0.2","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"b2d1d3952a291da00e855dd93449703ee3df6f16","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.0.2.tgz","fileCount":302,"integrity":"sha512-rra5VAN7qGic+FvKev5COAn8EXAhZ5BGZG7s7fi8hnNmAdge9LRSHKVYU4/NLH9kt+oDZ+WjIZJyg51sTImqBA==","signatures":[{"sig":"MEQCIGuyZysEHYB0rh3/kQniu/nhEs9tk2lCmExrDmf4SiALAiBNkx7Wgu3dyH7rrudgrrCrtXZRfZiXfpbSgHzd1XZaIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":471673},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.0.2.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"a3b206c16e1a0aedec9b282f041aca29455f0413","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/48ac8d0b956b7a3cfea9367aa8376a22/cabin-id-nextjs-1.0.2.tgz","_integrity":"sha512-rra5VAN7qGic+FvKev5COAn8EXAhZ5BGZG7s7fi8hnNmAdge9LRSHKVYU4/NLH9kt+oDZ+WjIZJyg51sTImqBA==","_npmVersion":"10.9.2","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"23.5.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.0.2_1741177020821_0.11273958668443806","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@cabin-id/nextjs","version":"1.0.3","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.0.3","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"5d59bdc432517469600d680ba3696301bb2b758c","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.0.3.tgz","fileCount":302,"integrity":"sha512-OPi6bbAUYSQsYa87c5kmLxpFdY3J2N2Wi7rtEAX1eoD3yXSUo49mkUnKyFMxA1GQJ+jJ78vW2DZwEkGELp3JDQ==","signatures":[{"sig":"MEUCID3Y8H9Zl7LD+7P3dYdaG+Q2PgC7OdfNaMbxthPSMKaFAiEA25QkM2caG6jt74ET1Eo2ACkJv1a6EaNgrxf6bTJLHqQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":472493},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.0.3.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"a3b206c16e1a0aedec9b282f041aca29455f0413","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/c939f137cf66e31a481b97b47841f9a1/cabin-id-nextjs-1.0.3.tgz","_integrity":"sha512-OPi6bbAUYSQsYa87c5kmLxpFdY3J2N2Wi7rtEAX1eoD3yXSUo49mkUnKyFMxA1GQJ+jJ78vW2DZwEkGELp3JDQ==","_npmVersion":"10.9.2","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"23.5.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.0.3_1741939519729_0.07024709994211031","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@cabin-id/nextjs","version":"1.0.4","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.0.4","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"828ff0ab666282517fbe9d93314392b8e8f558ed","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.0.4.tgz","fileCount":302,"integrity":"sha512-nSpLuZ3NO92keY/ByhYTHF0f8amA0ZSQMrlE61HEcATL4N2J4EcbEXKGxk5Y5Vvg9gxYqrpuGlTden8cRFQT4g==","signatures":[{"sig":"MEQCIHYIvsqiabr2hmGhG6Q5ls85P3FtbuDTFO4T9g8LIOONAiAdQIyVJ9e7qbmn7r9KeTt4bTTO1BgDLL4X3IFcC21rwA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":472513},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.0.4.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"a3b206c16e1a0aedec9b282f041aca29455f0413","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/e3b7ecb469633f8d15b8bf89f4fca836/cabin-id-nextjs-1.0.4.tgz","_integrity":"sha512-nSpLuZ3NO92keY/ByhYTHF0f8amA0ZSQMrlE61HEcATL4N2J4EcbEXKGxk5Y5Vvg9gxYqrpuGlTden8cRFQT4g==","_npmVersion":"10.9.2","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"23.5.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.0.4_1741940325700_0.5360814031843153","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@cabin-id/nextjs","version":"1.0.5","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.0.5","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"e85b3a787aa8e80881d10abc5ed7a132180999de","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.0.5.tgz","fileCount":302,"integrity":"sha512-6ErCoHo7ihgRHjkX3MzIUanmu/cHufG+p64volGtTMQM5PWlxJpcwnDgx6VfQrFaUVgeYMalkbaCUxHeXGpK8Q==","signatures":[{"sig":"MEQCIBD/lzLIcLRGb0tFz05sWFhhNqGPREYAblDi3sBCeJN0AiAkBc5QzEFL4QRSVNl0jvrlWu3tG+O1WqF7m/dpD2+krQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":472925},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.0.5.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"a3b206c16e1a0aedec9b282f041aca29455f0413","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/8f810527c9d2b0de0a8bb0bbc0c94e0e/cabin-id-nextjs-1.0.5.tgz","_integrity":"sha512-6ErCoHo7ihgRHjkX3MzIUanmu/cHufG+p64volGtTMQM5PWlxJpcwnDgx6VfQrFaUVgeYMalkbaCUxHeXGpK8Q==","_npmVersion":"10.9.2","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"23.5.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.0.5_1741941010323_0.28605459130561983","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@cabin-id/nextjs","version":"1.1.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.1.0","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"55de197364a7f322a6891568c9b0a7f44524305c","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.1.0.tgz","fileCount":308,"integrity":"sha512-gzAE30SKwYocZlPif6pGAuICmL6ds1pB/MpbAP6gYoxbDo0r54X90W4KCy3tEnsLKq3LBK0rmh3Jt1ii6+B7yA==","signatures":[{"sig":"MEYCIQCiOcvFiCb9eoUHstTUN6Yoj0gNxF0W6otXmoFY8Avd5wIhAJdVh4aaAAj44g8Q734IZofQzy4t7egakiOYrDP3u0PP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":493766},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.1.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/acfac9b385bfec25d2dc90dcae49fa7f/cabin-id-nextjs-1.1.0.tgz","_integrity":"sha512-gzAE30SKwYocZlPif6pGAuICmL6ds1pB/MpbAP6gYoxbDo0r54X90W4KCy3tEnsLKq3LBK0rmh3Jt1ii6+B7yA==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.1.0_1753962326271_0.9700066031299128","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@cabin-id/nextjs","version":"1.2.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.0","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"3025c3e826b414300df8a7bf79bbeff67ebcdd80","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.0.tgz","fileCount":314,"integrity":"sha512-w2Pha4wTgg6XS+Rw8Azibn5cYtGE63EA9RkhrSN/arF09dGfyDrG7rCWPGFGdlyLdRb9BxfD2a4G02JTGJGECw==","signatures":[{"sig":"MEUCIBlu39pAMCNexlbfd5BM8x2exhF2X2CLEfHVdRY9BGh3AiEAhhDeptgxBGevqWOGnR43MqykwDm72zhS1ASAzlJcBns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":511015},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/c289cfc889aea8854a3d876d581162b7/cabin-id-nextjs-1.2.0.tgz","_integrity":"sha512-w2Pha4wTgg6XS+Rw8Azibn5cYtGE63EA9RkhrSN/arF09dGfyDrG7rCWPGFGdlyLdRb9BxfD2a4G02JTGJGECw==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.0_1753977098213_0.2313342103853646","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@cabin-id/nextjs","version":"1.2.2","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.2","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"f92b1e66db78957bec302454fb23e9ae0921e968","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.2.tgz","fileCount":314,"integrity":"sha512-XibtsydfY6uffO9XkfQeBpyX3OPaYBJpBXOkCbMHzUPNK/UQ0OnkbjCS5I8yNjzRzSZ10DY+mtsml4MANxZR5A==","signatures":[{"sig":"MEUCIQCLWvcwHpzEBsmB/eedwwzBBC55NrgsM8qh/Oo5wpErnwIgAzmWJU/l1xm6LJbmp+a38kN4LkvOCwElY3y3ojuKXz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":511392},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.2.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/43f615e2b9710dbc8b42c1b4fd010ec6/cabin-id-nextjs-1.2.2.tgz","_integrity":"sha512-XibtsydfY6uffO9XkfQeBpyX3OPaYBJpBXOkCbMHzUPNK/UQ0OnkbjCS5I8yNjzRzSZ10DY+mtsml4MANxZR5A==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.2_1753985885396_0.8795722687028451","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@cabin-id/nextjs","version":"1.2.3","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.3","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"c653814730488bb66431b887710cf2625ab128d4","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.3.tgz","fileCount":314,"integrity":"sha512-WtX7zKyQ3vIeFKb1uLV/JK3QHK09Ov4hB9rvArKVb7Y8lkhfu+o01UFrzJpbxZa8nEqdmLzsyLQ+8H2T9Uw8qA==","signatures":[{"sig":"MEQCIDZweQCITv0hJ+XCjrAKQT874T5C3l+YYq6SH7LLCPfyAiAdJuo0gyNjLZhaeLDCd9lNwi5ulovXIMY0XG4v+/eM1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":511744},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.3.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/894e5a0f5884b109f04f062866b668cf/cabin-id-nextjs-1.2.3.tgz","_integrity":"sha512-WtX7zKyQ3vIeFKb1uLV/JK3QHK09Ov4hB9rvArKVb7Y8lkhfu+o01UFrzJpbxZa8nEqdmLzsyLQ+8H2T9Uw8qA==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.3_1753988419145_0.8405773404153967","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"@cabin-id/nextjs","version":"1.2.4","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.4","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"ae15dfb18b578234cf8a8245411075402e8f7634","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.4.tgz","fileCount":314,"integrity":"sha512-sBvbJd+0jrDEg603P/of83uNZV9S40pZIwjN9HCcof/Jxcl3/aFN3dxzNtKs/KeJH56h+MuQTV8zf4yS+QXiOw==","signatures":[{"sig":"MEQCIHjKlSLRGiFhhV3ehNyefO7UjP3Wp9akljOtG2MHHjKSAiAfVSh5LwjRdd8AoVCPSitBaZ7PzFz5cDg2W152ijm87w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":504093},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.4.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/12fa6fdde4c408135c0de49b13c15396/cabin-id-nextjs-1.2.4.tgz","_integrity":"sha512-sBvbJd+0jrDEg603P/of83uNZV9S40pZIwjN9HCcof/Jxcl3/aFN3dxzNtKs/KeJH56h+MuQTV8zf4yS+QXiOw==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.4_1753989950498_0.09130892285114522","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"@cabin-id/nextjs","version":"1.2.5","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.5","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"d979d8adbc6eb4603e8929f2cfce688464935472","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.5.tgz","fileCount":314,"integrity":"sha512-Z2wPtl9lut/suZCgUODGKAlluCX1Z6AReFbCSQ/cql7XvqYCvui3qiP7FZVl9oGfCsbg9lWHBj4WVgbTAHdQ3w==","signatures":[{"sig":"MEMCIAn0p2/XKPSri8X17lYwihPvP8vFD5dQ0dbfS3CnohJ9Ah8Dj5NhGf8GQsW/8xkvL9HTwnsWq6v1wi/WscLN45mr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":504275},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.5.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/38254c961e4473ea50b82b55349b3cab/cabin-id-nextjs-1.2.5.tgz","_integrity":"sha512-Z2wPtl9lut/suZCgUODGKAlluCX1Z6AReFbCSQ/cql7XvqYCvui3qiP7FZVl9oGfCsbg9lWHBj4WVgbTAHdQ3w==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.5_1753990472704_0.3271992754944555","host":"s3://npm-registry-packages-npm-production"}},"1.2.6":{"name":"@cabin-id/nextjs","version":"1.2.6","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.6","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"89d6be282eff6e0039bc2098d13ab74baefd4f12","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.6.tgz","fileCount":315,"integrity":"sha512-/mpFDavVY0M1LGWHb5fjcKodX/Tsvcpea7kZQPaKPRRqwpz/C892TbyRA8W+nC+Q7BzhorQavdG6OsWukmyDZw==","signatures":[{"sig":"MEQCIG6Ltw0g2nfK9bWAdkfJoGKcEcYHJuaArC16JFPdrb6MAiAjonhhYIKjaT62YEVnuHYZEgmKe50AwY3uJek2ED+iQg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":518947},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.6.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/a364fcb8de72463bcfc0111103e3a66e/cabin-id-nextjs-1.2.6.tgz","_integrity":"sha512-/mpFDavVY0M1LGWHb5fjcKodX/Tsvcpea7kZQPaKPRRqwpz/C892TbyRA8W+nC+Q7BzhorQavdG6OsWukmyDZw==","_npmVersion":"10.9.1","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.9.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.6_1754017140442_0.02788942809434536","host":"s3://npm-registry-packages-npm-production"}},"1.2.7":{"name":"@cabin-id/nextjs","version":"1.2.7","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@1.2.7","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"79c075b713fb71dc16a671b89c71b429ffff649a","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-1.2.7.tgz","fileCount":315,"integrity":"sha512-qSwxR5InF1F4A6/3/Am4M3Nw91TgFf4/+vCynIwWNENlw7W/flzNgr3AgBOV8+V8n4C2+jQ+e7OK6vTm1mKoTQ==","signatures":[{"sig":"MEUCIQDXE6xcYwKqVmfG3hiHYPZINneANaDUdn3vemPHFceG+wIgTt632m7y2GN07rAX4NFNIDEFWF+M2y+8dk39LmXk+0k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":520446},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-1.2.7.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/6ba57ed336f169afa739b8261ba55c43/cabin-id-nextjs-1.2.7.tgz","_integrity":"sha512-qSwxR5InF1F4A6/3/Am4M3Nw91TgFf4/+vCynIwWNENlw7W/flzNgr3AgBOV8+V8n4C2+jQ+e7OK6vTm1mKoTQ==","_npmVersion":"10.9.0","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"next":"^14.1.1","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_1.2.7_1759068624876_0.9443351156172932","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@cabin-id/nextjs","version":"2.0.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@2.0.0","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"c9affc58dcc59cb149214d293c4a36d56187f7b0","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-2.0.0.tgz","fileCount":315,"integrity":"sha512-Ii8EZP2WduEvZXaT6mSBt2m5Weccuo3nJwQFgODEPCItM9BNJCyEogLGqda6sGy2x0d6uK892Tc7VZo55nZzhA==","signatures":[{"sig":"MEUCIQCramANt5HqqRLo/9aqrbD24QrsCIqA4JTuL9dGGbGHjQIgKR0b1fjboCyXYxCXeqWuCGZG0TtcSErx5a+jRX0wtsg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":545922},"main":"./dist/index.js","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"8563da9f05ba82e72ad21555743c20387baa3302","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_npmVersion":"10.9.0","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"next":">=13.0.0","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_2.0.0_1767002051850_0.11033334791299798","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@cabin-id/nextjs","version":"2.0.1","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@2.0.1","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"2391c21624484cd34c23e01b679546ba9c690b95","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-2.0.1.tgz","fileCount":315,"integrity":"sha512-EF4j69keAlBbC4YHNh3fBVnv3MGE/Qxx9yOFQW4Tc2fLOp7h2DqytkR7ddBZrukijKZML45UR37WphCg9tMpgQ==","signatures":[{"sig":"MEUCIQDh9GcLIKEmA+Qpr1e0wQLULGFb6x4mSqnDUmJ5T3QrEwIgXRB/EJaY8GPBYMsw+l1uuFCMJEPvehRVbk3kBYHXnNY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":548319},"main":"./dist/index.js","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"gitHead":"79b9b9de093043e6e2e22529c42b3463a8af888f","scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_npmVersion":"10.9.0","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"next":">=13.0.0","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_2.0.1_1767009172103_0.053528452971873586","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@cabin-id/nextjs","version":"2.1.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@2.1.0","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"950b4208580842cc0c4979d61796d59a82de7759","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-2.1.0.tgz","fileCount":315,"integrity":"sha512-Hcwa1gdep2UbVVYP3flijToHaXs2wUkjD+CuROsp1hLYCF+K8ihXDBFEFjvWt0r7oGFvx4/2BZ9EZH+w7um/yQ==","signatures":[{"sig":"MEYCIQCt2Z4r3GH93esI5HtbqSGfBMQi7qH2Xh3Fe3QUl7JpgwIhALZPUeFR85kYCpMjWc3SlAJAmT9K0143bElVMbCE3SBo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":553311},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-2.1.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/w_/vq05wy997y1c1vlsm_8k11240000gn/T/1d4579677bf91423f603d80f2dafbf9f/cabin-id-nextjs-2.1.0.tgz","_integrity":"sha512-Hcwa1gdep2UbVVYP3flijToHaXs2wUkjD+CuROsp1hLYCF+K8ihXDBFEFjvWt0r7oGFvx4/2BZ9EZH+w7um/yQ==","_npmVersion":"10.9.0","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"next":">=13.0.0","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_2.1.0_1767036516972_0.7049056120770858","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@cabin-id/nextjs","version":"2.2.0","author":{"name":"CabinVN"},"_id":"@cabin-id/nextjs@2.2.0","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"homepage":"https://cabinid.dev","dist":{"shasum":"eeb8f32f80b5916c1e8461384d5df672e4831dde","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-2.2.0.tgz","fileCount":321,"integrity":"sha512-M4ojcUgglFMxmqW/QpeTT95ANMe0532FqVPtR9gXQtaKMmXlqLruyRp+b13j6AHd4jGR5GPCdGdiCXGAEU5FBg==","signatures":[{"sig":"MEQCIBlO1HVhwUwlYJPn8YuE/OXAy1zK9SDJZnyHNMVq8nzuAiBoAh6nNrXX1/mc88AiKgISJ6trpZ8M8tP5/S5jfZNsTg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":567822},"main":"./dist/index.js","_from":"file:cabin-id-nextjs-2.2.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"scripts":{"dev":"tsup --watch","build":"npm run clean && tsup","clean":"rimraf ./dist","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig","build:declarations":"tsc -p tsconfig.declarations.json"},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"_resolved":"/private/var/folders/ld/hl37vn4x6rl9540cvn24qydh0000gn/T/ecd589387e241121284b8933cf96779e/cabin-id-nextjs-2.2.0.tgz","_integrity":"sha512-M4ojcUgglFMxmqW/QpeTT95ANMe0532FqVPtR9gXQtaKMmXlqLruyRp+b13j6AHd4jGR5GPCdGdiCXGAEU5FBg==","_npmVersion":"10.7.0","description":"NextJS SDK for CabinID","directories":{},"sideEffects":false,"_nodeVersion":"22.1.0","dependencies":{"next":">=13.0.0","react":"^18.2.0","cookie":"^0.6.0","core-js":"3","cookies-next":"^4.1.1","path-to-regexp":"^6.2.2","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^18.2.0","eslint":"^8.57.0","typescript":"^5.3.3","@babel/core":"^7.24.0","@types/node":"^20.11.24","tailwindcss":"^3.4.3","@types/react":"^18.2.61","autoprefixer":"^10.4.19","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/react-dom":"^18.2.19","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5"},"_npmOperationalInternal":{"tmp":"tmp/nextjs_2.2.0_1768020102620_0.8698352063438242","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@cabin-id/nextjs","description":"NextJS SDK for CabinID","version":"2.2.1","main":"./dist/index.js","module":"./dist/index.mjs","author":{"name":"CabinVN"},"homepage":"https://cabinid.dev","sideEffects":false,"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./server":{"types":"./dist/types/server/index.d.ts","import":"./dist/esm/server/index.js","require":"./dist/cjs/server/index.js"}},"types":"./dist/types/index.d.ts","devDependencies":{"@babel/core":"^7.24.0","@babel/plugin-transform-named-capturing-groups-regex":"^7.22.5","@babel/preset-env":"^7.24.0","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@types/cookie":"^0.6.0","@types/eslint":"^8.56.5","@types/node":"^20.11.24","@types/react":"^18.2.61","@types/react-dom":"^18.2.19","autoprefixer":"^10.4.19","eslint":"^8.57.0","react":"^18.2.0","tailwindcss":"^3.4.3","tsup":"^8.0.2","typescript":"^5.3.3"},"dependencies":{"cookie":"^0.6.0","cookies-next":"^4.1.1","core-js":"3","next":">=13.0.0","path-to-regexp":"^6.2.2","react":"^18.2.0","snakecase-keys":"^8.0.0"},"publishConfig":{"access":"public"},"scripts":{"build":"npm run clean && tsup","build:declarations":"tsc -p tsconfig.declarations.json","clean":"rimraf ./dist","dev":"tsup --watch","dev:publish":"npm run dev -- --env.publish","publish:local":"npx yalc push --replace --sig"},"_id":"@cabin-id/nextjs@2.2.1","_integrity":"sha512-XpBRcFESpcYJiCd1ierNq7NqPDkbjsRWpETspQOTJkUObWIvVmR5qBi914k+OjPWoTsXOOEfDuvfWckrUrXk5w==","_resolved":"/private/var/folders/ld/hl37vn4x6rl9540cvn24qydh0000gn/T/2d2d9f22bfdaf2504b31d121808fe475/cabin-id-nextjs-2.2.1.tgz","_from":"file:cabin-id-nextjs-2.2.1.tgz","_nodeVersion":"22.1.0","_npmVersion":"10.7.0","dist":{"integrity":"sha512-XpBRcFESpcYJiCd1ierNq7NqPDkbjsRWpETspQOTJkUObWIvVmR5qBi914k+OjPWoTsXOOEfDuvfWckrUrXk5w==","shasum":"6d2dc9784ac419935a75ecf3788ea3fdc563edd5","tarball":"https://registry.npmjs.org/@cabin-id/nextjs/-/nextjs-2.2.1.tgz","fileCount":321,"unpackedSize":570889,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBFw0BOD6Ti2KAfRP9zipqy3eDgpZ0jqCpmmCFhiDwSdAiBkpGfGVOv97l4H3GWNHG4iTCklg7n7MlxK/yoZmVGA2w=="}]},"_npmUser":{"name":"admincabinid","email":"admin@cabineat.vn"},"directories":{},"maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nextjs_2.2.1_1768021289624_0.7439805242207882"},"_hasShrinkwrap":false}},"time":{"created":"2024-04-21T14:49:56.893Z","modified":"2026-01-10T05:01:30.026Z","0.0.1":"2024-04-21T14:49:57.217Z","0.1.0":"2024-04-27T04:26:31.983Z","0.1.1":"2024-04-27T04:28:43.269Z","0.1.2":"2024-04-27T07:10:40.926Z","0.1.3":"2024-04-28T12:03:38.489Z","0.1.4":"2024-04-28T12:55:55.539Z","0.1.5":"2024-04-29T05:21:08.364Z","0.1.6":"2024-04-30T08:04:46.460Z","0.1.7":"2024-04-30T08:58:08.868Z","0.2.0":"2024-05-02T02:35:12.946Z","0.2.1":"2024-05-02T03:12:00.959Z","0.2.2":"2024-05-02T04:25:21.125Z","0.2.3":"2024-05-02T04:34:33.066Z","0.2.4":"2024-05-02T07:13:38.905Z","0.2.5":"2024-05-04T03:30:25.471Z","1.0.0":"2024-11-17T15:28:03.074Z","1.0.1":"2024-11-17T18:53:09.519Z","1.0.2":"2025-03-05T12:17:01.052Z","1.0.3":"2025-03-14T08:05:19.959Z","1.0.4":"2025-03-14T08:18:45.992Z","1.0.5":"2025-03-14T08:30:10.623Z","1.1.0":"2025-07-31T11:45:26.479Z","1.2.0":"2025-07-31T15:51:38.413Z","1.2.2":"2025-07-31T18:18:05.588Z","1.2.3":"2025-07-31T19:00:19.383Z","1.2.4":"2025-07-31T19:25:50.745Z","1.2.5":"2025-07-31T19:34:32.983Z","1.2.6":"2025-08-01T02:59:00.643Z","1.2.7":"2025-09-28T14:10:25.091Z","2.0.0":"2025-12-29T09:54:12.008Z","2.0.1":"2025-12-29T11:52:52.262Z","2.1.0":"2025-12-29T19:28:37.156Z","2.2.0":"2026-01-10T04:41:42.766Z","2.2.1":"2026-01-10T05:01:29.772Z"},"author":{"name":"CabinVN"},"homepage":"https://cabinid.dev","description":"NextJS SDK for CabinID","maintainers":[{"name":"admincabinid","email":"admin@cabineat.vn"},{"name":"kienha","email":"minhkien2208@gmail.com"}],"readme":"# CabinID SDK for Next.js\n\nCabinID SDK là bộ công cụ xác thực và quản lý danh tính, cung cấp giải pháp tích hợp dễ dàng cho các ứng dụng Next.js (App Router).\n\n## 📦 Cài đặt\n\n```bash\nnpm install @cabin-id/nextjs\n# hoặc\npnpm add @cabin-id/nextjs\n# hoặc\nyarn add @cabin-id/nextjs\n```\n\n## 🚀 Bắt đầu nhanh\n\n### 1. Thiết lập biến môi trường\n\nTạo file `.env.local` trong thư mục gốc dự án:\n\n```bash\n# CabinID Configuration\nNEXT_PUBLIC_CABIN_ID_PUBLISH_KEY=cabin_pk_your_publishable_key_here\nCABIN_ID_SECRET_KEY=cabin_sk_your_secret_key_here\n\n# URL Redirects (tùy chọn)\nNEXT_PUBLIC_CABIN_ID_AFTER_SIGN_IN_URL=/dashboard\nNEXT_PUBLIC_CABIN_ID_AFTER_SIGN_UP_URL=/welcome\nNEXT_PUBLIC_CABIN_ID_SIGN_IN_URL=/auth\nNEXT_PUBLIC_CABIN_ID_SIGN_UP_URL=/auth/register\n\n# API URL (tùy chọn, mặc định: https://api.cabinid.dev/)\nNEXT_PUBLIC_CABIN_ID_API_URL=https://api.cabinid.dev/\n```\n\n### 2. Cấu hình Middleware\n\nTạo file `middleware.ts` trong thư mục gốc để bảo vệ các route:\n\n```typescript\n// middleware.ts\nimport { authMiddleware } from '@cabin-id/nextjs';\nimport { NextResponse } from 'next/server';\n\nconst publicRoutes = ['/', '/auth', '/terms', '/api/public/(.*)'];\n\nconst isPublicRoute = (path: string) => {\n  return publicRoutes.some(route => {\n    if (route.includes('(.*)')) {\n      const regex = new RegExp('^' + route);\n      return regex.test(path);\n    }\n    return route === path;\n  });\n};\n\nexport default authMiddleware(async (auth, req) => {\n  const { userId } = auth();\n  const path = req.nextUrl.pathname;\n\n  // 1. Cho phép truy cập các routes công khai\n  if (isPublicRoute(path)) {\n    return NextResponse.next();\n  }\n\n  // 2. Nếu chưa đăng nhập và route cần bảo vệ -> Chuyển hướng đến trang đăng nhập\n  if (!userId) {\n    const returnUrl = new URL(req.nextUrl.pathname + req.nextUrl.search, req.url);\n    return auth().redirectToSignIn({ returnBackUrl: returnUrl.toString() });\n  }\n\n  // 3. Đã đăng nhập -> Cho phép truy cập\n  return NextResponse.next();\n});\n\nexport const config = {\n  matcher: ['/((?!.*\\\\..*|_next).*)', '/', '/(api|trpc)(.*)'],\n};\n```\n\n### 3. Cấu hình Provider\n\nBọc ứng dụng với `CabinIDProvider` trong root layout. **Lưu ý**: `CabinIDProvider` là một async Server Component.\n\n```typescript\n// app/layout.tsx\nimport { CabinIDProvider } from '@cabin-id/nextjs';\nimport './globals.css';\n\nexport default function RootLayout({\n  children,\n}: {\n  children: React.ReactNode;\n}) {\n  return (\n    <html lang=\"vi\">\n      <body>\n        <CabinIDProvider>\n          {children}\n        </CabinIDProvider>\n      </body>\n    </html>\n  );\n}\n```\n\n## � Client ID và Redirect URLs\n\nKhi người dùng được chuyển hướng đến trang đăng nhập/đăng ký của CabinID, SDK tự động thêm `client_id` vào URL. Điều này giúp CabinID xác định ứng dụng nào đang yêu cầu xác thực.\n\n### Cách hoạt động\n\n1. **Publishable Key**: Giá trị `NEXT_PUBLIC_CABIN_ID_PUBLISH_KEY` được sử dụng làm `client_id`\n2. **Redirect URL**: URL được xây dựng tự động với format:\n   ```\n   https://{domain}.cabinid.dev/sign-in?client_id={publishable_key}&redirect_url={return_url}\n   ```\n\n### Ví dụ URL được tạo\n\n```\nhttps://myapp.cabinid.dev/sign-in?client_id=cabin_pk_xxx&redirect_url=https://myapp.com/dashboard\n```\n\n### Tham số URL\n\n| Tham số | Mô tả |\n|---------|-------|\n| `client_id` | Publishable key của project, giúp CabinID nhận diện ứng dụng |\n| `redirect_url` | URL để quay lại ứng dụng sau khi xác thực thành công |\n\n> **Lưu ý**: `client_id` được tự động thêm bởi SDK. Bạn không cần xử lý thủ công.\n\n## �🔐 Components\n\n### SignInButton\n\nComponent nút đăng nhập, tự động chuyển hướng đến CabinID.\n\n```typescript\n'use client';\n\nimport { SignInButton } from '@cabin-id/nextjs';\n\nexport default function LoginPage() {\n  return (\n    <div className=\"flex items-center justify-center min-h-screen\">\n      <SignInButton />\n    </div>\n  );\n}\n```\n\n**Props:**\n\n| Prop | Type | Default | Mô tả |\n|------|------|---------|-------|\n| `children` | `React.ReactNode` | `\"Continue to CabinID\"` | Nội dung hiển thị |\n| `className` | `string` | Styled button | CSS class tùy chỉnh |\n| `afterSignInUrl` | `string` | `NEXT_PUBLIC_CABIN_ID_AFTER_SIGN_IN_URL` | URL redirect sau khi đăng nhập |\n| `showLogo` | `boolean` | `true` | Hiển thị logo CabinID |\n\n**Ví dụ tùy chỉnh:**\n\n```typescript\n<SignInButton \n  afterSignInUrl=\"/dashboard\"\n  showLogo={false}\n  className=\"bg-indigo-600 text-white px-6 py-3 rounded-lg hover:bg-indigo-700\"\n>\n  Đăng nhập với CabinID\n</SignInButton>\n```\n\n### SignOutButton\n\nComponent nút đăng xuất với xử lý callback.\n\n```typescript\n'use client';\n\nimport { SignOutButton } from '@cabin-id/nextjs';\n\nexport default function Header() {\n  return (\n    <SignOutButton\n      onSignOutStart={() => console.log('Đang đăng xuất...')}\n      onSignOutSuccess={() => console.log('Đăng xuất thành công!')}\n      onSignOutError={(error) => console.error('Lỗi:', error)}\n    >\n      Đăng xuất\n    </SignOutButton>\n  );\n}\n```\n\n**Props:**\n\n| Prop | Type | Default | Mô tả |\n|------|------|---------|-------|\n| `children` | `React.ReactNode` | `\"Sign Out\"` | Nội dung hiển thị |\n| `className` | `string` | Styled button | CSS class tùy chỉnh |\n| `onSignOutStart` | `() => void` | - | Callback trước khi đăng xuất |\n| `onSignOutSuccess` | `() => void` | - | Callback khi đăng xuất thành công |\n| `onSignOutError` | `(error: Error) => void` | - | Callback khi có lỗi |\n| `showLoading` | `boolean` | `true` | Hiển thị trạng thái loading |\n| `loadingText` | `string` | `\"Signing out...\"` | Text khi đang loading |\n| `afterSignOutUrl` | `string` | `NEXT_PUBLIC_CABIN_ID_AFTER_SIGN_IN_URL` | URL redirect sau khi đăng xuất |\n\n## 🪝 Hooks\n\n### useUser\n\nHook để lấy thông tin người dùng hiện tại trong Client Components.\n\n```typescript\n'use client';\n\nimport { useUser } from '@cabin-id/nextjs';\n\nexport default function ProfilePage() {\n  const { user, isLoaded, isSignedIn, signOut } = useUser();\n\n  if (!isLoaded) {\n    return <div>Đang tải...</div>;\n  }\n\n  if (!isSignedIn) {\n    return <div>Vui lòng đăng nhập để tiếp tục</div>;\n  }\n\n  return (\n    <div className=\"p-6\">\n      <h1 className=\"text-2xl font-bold\">Xin chào, {user.firstName}!</h1>\n      <p>Email: {user.email}</p>\n      <p>ID: {user.id}</p>\n      \n      <button onClick={() => signOut()}>\n        Đăng xuất\n      </button>\n    </div>\n  );\n}\n```\n\n**Return type:**\n\n```typescript\ntype UseUserReturn =\n  | { isLoaded: false; isSignedIn: undefined; user: undefined; signOut: SignOut }\n  | { isLoaded: true; isSignedIn: false; user: null; signOut: SignOut }\n  | { isLoaded: true; isSignedIn: true; user: User; signOut: SignOut };\n```\n\n## 🖥️ Server Functions\n\n### auth()\n\nLấy thông tin xác thực trong Server Components hoặc Server Actions.\n\n```typescript\n// app/dashboard/page.tsx\nimport { auth } from '@cabin-id/nextjs';\n\nexport default async function DashboardPage() {\n  const { userId, protect, redirectToSignIn } = await auth();\n\n  // Nếu chưa đăng nhập, redirect đến trang sign-in\n  if (!userId) {\n    redirectToSignIn();\n  }\n\n  return (\n    <div>\n      <h1>Dashboard</h1>\n      <p>User ID: {userId}</p>\n    </div>\n  );\n}\n```\n\n**Return type:**\n\n```typescript\ntype Auth = {\n  userId: string | null;\n  protect: AuthProtect;\n  redirectToSignIn: (opts?: { returnBackUrl?: string }) => never;\n};\n```\n\n### currentUser()\n\nLấy thông tin chi tiết người dùng từ server.\n\n```typescript\n// app/profile/page.tsx\nimport { currentUser } from '@cabin-id/nextjs';\n\nexport default async function ProfilePage() {\n  const user = await currentUser();\n\n  if (!user) {\n    return <div>Vui lòng đăng nhập</div>;\n  }\n\n  return (\n    <div>\n      <h1>Hồ sơ cá nhân</h1>\n      <p>Tên: {user.firstName} {user.lastName}</p>\n      <p>Email: {user.email}</p>\n    </div>\n  );\n}\n```\n\n## 🛡️ Bảo vệ API Routes\n\n### Sử dụng auth()\n\n```typescript\n// app/api/profile/route.ts\nimport { auth } from '@cabin-id/nextjs';\nimport { NextResponse } from 'next/server';\n\nexport async function GET() {\n  const { userId } = await auth();\n  \n  if (!userId) {\n    return NextResponse.json({ error: 'Unauthorized' }, { status: 401 });\n  }\n\n  // Lấy dữ liệu người dùng từ database\n  const userData = await getUserFromDatabase(userId);\n\n  return NextResponse.json({ user: userData });\n}\n```\n\n## 🎨 Tùy chỉnh giao diện\n\n### AuthButton Component\n\n`AuthButton` là component tiện ích đã được tích hợp sẵn trong SDK, tự động chuyển đổi giữa `SignInButton` và `SignOutButton` dựa trên trạng thái đăng nhập.\n\n```typescript\n'use client';\n\nimport { AuthButton } from '@cabin-id/nextjs';\n\nexport default function Header() {\n  return (\n    <nav className=\"flex justify-between items-center p-4\">\n      <h1>My App</h1>\n      <AuthButton \n        signInLabel=\"Đăng nhập\"\n        signOutLabel=\"Đăng xuất\"\n        afterSignInUrl=\"/dashboard\"\n        afterSignOutUrl=\"/\"\n      />\n    </nav>\n  );\n}\n```\n\n**Props:**\n\n| Prop | Type | Default | Mô tả |\n|------|------|---------|-------|\n| `signInLabel` | `React.ReactNode` | `\"Sign In\"` | Text hiển thị trên nút đăng nhập |\n| `signOutLabel` | `React.ReactNode` | `\"Sign Out\"` | Text hiển thị trên nút đăng xuất |\n| `className` | `string` | - | CSS class tùy chỉnh |\n| `afterSignInUrl` | `string` | `NEXT_PUBLIC_CABIN_ID_AFTER_SIGN_IN_URL` | URL redirect sau khi đăng nhập |\n| `afterSignOutUrl` | `string` | `NEXT_PUBLIC_CABIN_ID_AFTER_SIGN_IN_URL` | URL redirect sau khi đăng xuất |\n| `showLogo` | `boolean` | `true` | Hiển thị logo CabinID (chỉ áp dụng cho nút đăng nhập) |\n\n**Ví dụ nâng cao:**\n\n```typescript\n<AuthButton \n  signInLabel={\n    <span className=\"flex items-center gap-2\">\n      <UserIcon className=\"w-4 h-4\" />\n      Đăng nhập\n    </span>\n  }\n  signOutLabel=\"Thoát\"\n  className=\"bg-blue-600 text-white px-4 py-2 rounded-lg\"\n/>\n```\n\n### Protected Route Component\n\nComponent bảo vệ các trang yêu cầu đăng nhập:\n\n```typescript\n'use client';\n\nimport { useUser } from '@cabin-id/nextjs';\nimport { useRouter } from 'next/navigation';\nimport { useEffect } from 'react';\n\ninterface ProtectedRouteProps {\n  children: React.ReactNode;\n  fallback?: React.ReactNode;\n}\n\nexport default function ProtectedRoute({ \n  children, \n  fallback = <div>Đang chuyển hướng...</div> \n}: ProtectedRouteProps) {\n  const { isSignedIn, isLoaded } = useUser();\n  const router = useRouter();\n\n  useEffect(() => {\n    if (isLoaded && !isSignedIn) {\n      router.push('/auth');\n    }\n  }, [isLoaded, isSignedIn, router]);\n\n  if (!isLoaded) {\n    return <div>Đang tải...</div>;\n  }\n\n  if (!isSignedIn) {\n    return fallback;\n  }\n\n  return <>{children}</>;\n}\n```\n\n## 📚 API Reference\n\n### Exports từ `@cabin-id/nextjs`\n\n| Export | Type | Mô tả |\n|--------|------|-------|\n| `CabinIDProvider` | Component (async) | Provider chính, bọc ứng dụng |\n| `SignInButton` | Component | Nút đăng nhập |\n| `SignOutButton` | Component | Nút đăng xuất |\n| `AuthButton` | Component | Nút đăng nhập/đăng xuất tự động |\n| `useUser` | Hook | Lấy thông tin người dùng (client) |\n| `auth` | Function | Lấy thông tin xác thực (server) |\n| `currentUser` | Function | Lấy chi tiết người dùng (server) |\n| `authMiddleware` | Function | Middleware xác thực |\n\n### Exports từ `@cabin-id/nextjs/server`\n\n| Export | Type | Mô tả |\n|--------|------|-------|\n| `authMiddleware` | Function | Middleware xác thực cho Next.js |\n\n### Subdomain Utilities\n\n```typescript\nimport { \n  detectCabinIdSubdomain, \n  storeCabinIdSubdomain, \n  clearCabinIdSubdomain \n} from '@cabin-id/nextjs';\n```\n\n## 🔧 Cấu hình nâng cao\n\n### Middleware với Custom Logic\n\n```typescript\n// middleware.ts\nimport { authMiddleware } from '@cabin-id/nextjs';\nimport { NextResponse } from 'next/server';\n\nconst adminRoutes = ['/admin', '/admin/(.*)'];\nconst publicRoutes = ['/', '/about', '/contact'];\n\nexport default authMiddleware(async (auth, req) => {\n  const { userId } = auth();\n  const path = req.nextUrl.pathname;\n\n  // Public routes\n  if (publicRoutes.some(r => path === r || path.match(new RegExp(`^${r}$`)))) {\n    return NextResponse.next();\n  }\n\n  // Require authentication\n  if (!userId) {\n    return auth().redirectToSignIn({ returnBackUrl: req.url });\n  }\n\n  // Admin routes - thêm logic kiểm tra quyền admin\n  if (adminRoutes.some(r => path.match(new RegExp(`^${r}$`)))) {\n    // TODO: Kiểm tra quyền admin từ database\n    // const isAdmin = await checkAdminRole(userId);\n    // if (!isAdmin) {\n    //   return NextResponse.redirect(new URL('/unauthorized', req.url));\n    // }\n  }\n\n  return NextResponse.next();\n});\n```\n\n## 🔔 Webhook Integration\n\nCabinID hỗ trợ webhook để thông báo cho ứng dụng của bạn khi có các sự kiện xác thực xảy ra.\n\n### Cấu hình Webhook\n\n1. Đăng nhập vào [CabinID Dashboard](https://dashboard.cabinid.dev)\n2. Chọn project của bạn\n3. Vào **Settings** → **Webhooks**\n4. Thêm URL endpoint của bạn (ví dụ: `https://yourapp.com/api/webhooks/cabinid`)\n\n### Các loại sự kiện\n\n| Event Type | Mô tả |\n|------------|-------|\n| `sign-in` | Người dùng đăng nhập thành công |\n| `sign-up` | Người dùng đăng ký tài khoản mới |\n| `sign-out` | Người dùng đăng xuất |\n\n### Webhook Payload\n\nKhi một sự kiện xảy ra, CabinID sẽ gửi POST request đến webhook URL của bạn với payload sau:\n\n```typescript\ninterface WebhookPayload {\n  eventType: 'sign-in' | 'sign-up' | 'sign-out';\n  date: number; // Unix timestamp (milliseconds)\n  payload: {\n    user: {\n      id: string;\n      avatar: string;\n      email: string;\n      phoneNumber: string;\n      firstName: string;\n      lastName: string;\n      createdAt: number;\n      updatedAt: number;\n    };\n  };\n}\n```\n\n### Xử lý Webhook trong Next.js\n\n```typescript\n// app/api/webhooks/cabinid/route.ts\nimport { NextRequest, NextResponse } from 'next/server';\n\ninterface CabinIDWebhookPayload {\n  eventType: 'sign-in' | 'sign-up' | 'sign-out';\n  date: number;\n  payload: {\n    user: {\n      id: string;\n      email: string;\n      firstName: string;\n      lastName: string;\n    };\n  };\n}\n\nexport async function POST(request: NextRequest) {\n  try {\n    const body: CabinIDWebhookPayload = await request.json();\n    \n    const { eventType, payload } = body;\n    const { user } = payload;\n\n    switch (eventType) {\n      case 'sign-up':\n        // Tạo user mới trong database của bạn\n        await createUserInDatabase(user);\n        console.log(`New user registered: ${user.email}`);\n        break;\n        \n      case 'sign-in':\n        // Cập nhật last login\n        await updateLastLogin(user.id);\n        console.log(`User signed in: ${user.email}`);\n        break;\n        \n      case 'sign-out':\n        // Xử lý đăng xuất (nếu cần)\n        console.log(`User signed out: ${user.email}`);\n        break;\n    }\n\n    return NextResponse.json({ received: true }, { status: 200 });\n  } catch (error) {\n    console.error('Webhook error:', error);\n    return NextResponse.json(\n      { error: 'Webhook processing failed' },\n      { status: 500 }\n    );\n  }\n}\n```\n\n### Best Practices cho Webhook\n\n1. **Respond nhanh**: Trả về response 200 ngay lập tức, sau đó xử lý async\n2. **Idempotency**: Xử lý trường hợp webhook được gửi nhiều lần\n3. **Logging**: Log tất cả webhook events để debug\n4. **Error handling**: Xử lý lỗi gracefully, không để crash server\n\n```typescript\n// Ví dụ với background processing\nexport async function POST(request: NextRequest) {\n  const body = await request.json();\n  \n  // Respond ngay lập tức\n  // Xử lý trong background (ví dụ: queue job)\n  processWebhookAsync(body).catch(console.error);\n  \n  return NextResponse.json({ received: true });\n}\n```\n\n## 🐛 Xử lý lỗi thường gặp\n\n### Lỗi: \"useUser must be used within CabinIDProvider\"\n\nĐảm bảo bạn đã bọc ứng dụng với `CabinIDProvider` trong root layout:\n\n```typescript\n// ✅ Đúng\n<CabinIDProvider>\n  <YourApp />\n</CabinIDProvider>\n\n// ❌ Sai - thiếu provider\n<YourApp />\n```\n\n### Lỗi: Environment variables không được tìm thấy\n\nKiểm tra file `.env.local`:\n\n```bash\n# ✅ Đúng - có prefix NEXT_PUBLIC_ cho client-side\nNEXT_PUBLIC_CABIN_ID_PUBLISH_KEY=cabin_pk_...\nCABIN_ID_SECRET_KEY=cabin_sk_...\n\n# ❌ Sai - thiếu NEXT_PUBLIC_ prefix\nCABIN_ID_PUBLISH_KEY=cabin_pk_...\n```\n\n### Lỗi: Middleware không hoạt động\n\nĐảm bảo file `middleware.ts` nằm ở thư mục gốc (cùng cấp với `app/` hoặc `src/`):\n\n```\nproject-root/\n├── app/\n├── middleware.ts  ✅\n└── .env.local\n```\n\n## 🔗 Liên kết hữu ích\n\n- [Trang chủ CabinID](https://cabinid.dev)\n- [Dashboard CabinID](https://dashboard.cabinid.dev)\n- [Báo lỗi](https://github.com/cabinfood/CABIN-cabinID-sdk/issues)\n\n## 📄 Giấy phép\n\nMIT License - xem file [LICENSE](LICENSE) để biết thêm chi tiết.\n\n---\n\n🚀 **Bắt đầu ngay hôm nay!** Tích hợp CabinID vào ứng dụng của bạn chỉ trong vài phút.","readmeFilename":"README.md"}