{"_id":"@airdraft/plugin-auth","_rev":"13-37d541b861932f0b1c07b9106abbac12","name":"@airdraft/plugin-auth","dist-tags":{"latest":"0.1.12"},"versions":{"0.1.0":{"name":"@airdraft/plugin-auth","version":"0.1.0","license":"MIT","_id":"@airdraft/plugin-auth@0.1.0","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"e2e9594db955a3ff4b2e2132f7edf6d214fff0d8","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.0.tgz","fileCount":34,"integrity":"sha512-px472Fiun9dNUHJucQgDDSynNBxOe8++Og9Zx1FDvnFeP+JFP4ka9fLQZO0slqKBe+nJ/j3rZemh9++xhcmOCg==","signatures":[{"sig":"MEUCIGnsNKtb9rHjTJ0Bd2yjBwweoWwJ7V8fHtEkxR44g4x0AiEA/8DIaPfTEATaxfmc69da/mRyfOc4x1g+Oyk6wxhAvIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":112017},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d6c85dfed37f11c42151c93b49a80ede90699616","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*","@airdraft/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","standard-version":"^9.5.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.0_1779387959756_0.43726444161710454","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@airdraft/plugin-auth","version":"0.1.1","license":"MIT","_id":"@airdraft/plugin-auth@0.1.1","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"12ab79846fcd157ff21d62018f317d53cc3308d0","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.1.tgz","fileCount":38,"integrity":"sha512-66WexGHqOoUOP7e1r8YIbj0Z6n+nJIpgaFvWfWkSHny72rdLawpNrx/sg3UMvT95am2wFrOwXPZpjrEAgJbsQA==","signatures":[{"sig":"MEUCIQD9pMBAKkDehexNqAyus6r/UpeQ9lks3HmLU6vs7kHNlAIgXvNbQkmcY1OIOCTRZn0nLlATrywiQnRtRMiXrPPTmqo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121093},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7db0ac6a326cb291ec138e24bf81448f1dfc4db6","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*","@airdraft/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","standard-version":"^9.5.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.1_1779487648099_0.1252368215238222","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@airdraft/plugin-auth","version":"0.1.2","license":"MIT","_id":"@airdraft/plugin-auth@0.1.2","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"b5c7638e63192e2fa56ee1889eb09f9d4b8fa4f8","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.2.tgz","fileCount":38,"integrity":"sha512-/Rq4I5TNmHiz16ux2CfuiI7M5A2VSDiaq+uTnJOmnRhYeXLFWWgSA5nrEXbxFAMBbBpmSe6znuey5s/h1AadQA==","signatures":[{"sig":"MEQCIFEkGFRGlN3fECSKpBUXYAlkx3SJsy89l7zSgADDCu1CAiAtRH0egi4IvXsSLvPmF9rCJpqHDVs8zhp/mudK2X5fQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121729},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"277e16b37c997996b49d90ec64fa3f5c023f4d0a","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*","@airdraft/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","standard-version":"^9.5.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.2_1779521560707_0.6409220658833075","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@airdraft/plugin-auth","version":"0.1.3","license":"MIT","_id":"@airdraft/plugin-auth@0.1.3","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"b4453614c21a9b5994edd186caeb62897b338234","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.3.tgz","fileCount":38,"integrity":"sha512-nknLyY0W8XXfTEchMKW/T0AyM9iR4K9nY7IQO/TCs3XrLpsty3fHhW1oAcCo3qBK/+0EsHJlDex1smT1acqy/w==","signatures":[{"sig":"MEQCIB6tfiCGy3lbnmYBLB6Qb+ivAnZSSeKwhDY4er/MJbzVAiBbDbo1QBxtgWd9HFfId07pwFiwEbZbhwmFmYke1DWaiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123075},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8d692f6e9c48b0c7886d404b7bbc9f1b0a79ca7b","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*","@airdraft/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","standard-version":"^9.5.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.3_1779557640544_0.39333829658569774","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@airdraft/plugin-auth","version":"0.1.4","license":"MIT","_id":"@airdraft/plugin-auth@0.1.4","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"5d86462e471b868392afc9b1f86001450c4bd0b5","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.4.tgz","fileCount":38,"integrity":"sha512-tH3KVWXqzwscOAKieplVkEEzvP32uvuhLvJAU5S1jxtqx+J7JN2sIyrq+P3XBuAeZ3hsPojoZxEUcnWsSUSJzg==","signatures":[{"sig":"MEUCIGbVME/EpbcIhD17V/3ldSHqWmzdNcaJc/hiVwSeAzRaAiEAws7iLbbpzERT9RFv5tt9w1CzwBy3myBCQTdv22ffoy4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123943},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"88185ba7e7a5ed54561a09a53f6d13367587bbfb","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.4_1779564505517_0.7303654078010633","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@airdraft/plugin-auth","version":"0.1.5","license":"MIT","_id":"@airdraft/plugin-auth@0.1.5","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"822185d50c70465d6250e09b50b7bc95c97d29d4","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.5.tgz","fileCount":38,"integrity":"sha512-MKYm43Tt9/ZJmGPmisMB4c2KPYh9lw3HQyddWTPlLzDQX7UMXh5LaX3x2Qfa0QWKRbbUNSWkOvMkOnTzzYEZxQ==","signatures":[{"sig":"MEYCIQCZDQbWBTI0JqTbuNOiZULLRj0Dm5XBf9x7YMn7EGTwegIhAO/mcLmpZGV0gA8TXqoTZZUnSvcvtIiifA6M+0WCuTrh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129959},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"829aab190f831c8d252be75e35c26b42715babe2","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.5_1779570890178_0.24193611345792343","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@airdraft/plugin-auth","version":"0.1.6","license":"MIT","_id":"@airdraft/plugin-auth@0.1.6","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"e438ad6b90ab10bd7b8c8e2c7ef67a0a691846ae","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.6.tgz","fileCount":42,"integrity":"sha512-2qT3Br8kBkBESbzDb+mgxQfFUsUbQ97L2XaqfSx8uv2O3wZpE/xZJ1n8XAaLhpRhupcWvTqsIEY97TBfqP8SZg==","signatures":[{"sig":"MEQCICq+xGS+7k0DIWwYWHFMc/6nsyEM6j41inzI+6Lq9aQkAiBmiLsdi6yYkf42oBgjhba0nr4C0MGcrBtccKvk3S0lCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":130366},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","browser":"./dist/index.browser.js"}},"gitHead":"540bd9c02a2a1a5a2ccba324c9579e5091469775","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.6_1779800896072_0.11898865779124601","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@airdraft/plugin-auth","version":"0.1.7","license":"MIT","_id":"@airdraft/plugin-auth@0.1.7","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"26a5f5343ad619d2e77a3bee5ad5325a1910b4d9","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.7.tgz","fileCount":42,"integrity":"sha512-VNy1oH96Iyg8MF+2niYc9Hlt9KZVvuYwQHttWhFDGasxPsCAg6Uy3fsye9SR9U1zY2esBVe+Sn5zLkH2E9j5rQ==","signatures":[{"sig":"MEUCICvbphA1MkVhL2Ikx5wUU6YDhJK2wGZ8KApqPQPjjBziAiEArLneUza9oEOBgE/j6RWlkh9JNM/lo2TnjPse7vSNfIk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134080},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5873c940c628a80f7fac0048abf79fb7956accc7","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.7_1779809883194_0.3343780790520672","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@airdraft/plugin-auth","version":"0.1.8","license":"MIT","_id":"@airdraft/plugin-auth@0.1.8","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"aac8831e8fa6d88eee6015360dbe35e1821b9f6b","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.8.tgz","fileCount":43,"integrity":"sha512-0cXBjfaeOp3nQVKinjgGkfflCFAxbFlHncNBDej+xEuGPumIiuCTYKCY3qszn6vasLDIynEfQAMa7Zjn1jCK4Q==","signatures":[{"sig":"MEYCIQDrtexV/+tJBO1JwPFGdRb0xsfP27ID19CrhT1bchgCVQIhAKUSTa8iwMpWNv/pCw4jCplU7P5NmDCywvroQoC0vtqY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140568},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8c9d4744b92db08fa725d40bc50f9ef0f1392e59","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.8_1780221100303_0.5068784820273233","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@airdraft/plugin-auth","version":"0.1.9","license":"MIT","_id":"@airdraft/plugin-auth@0.1.9","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"53b12f7fa9eab58774db4c7528e6a80540f66784","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.9.tgz","fileCount":43,"integrity":"sha512-iYgyvmPT/8UMEqVgy+bcUWGSo1pIT+4+gW5FCF2GTkc/hFjX+X+ikvQm1D6ASMHpgy7XzIiraqAKMShUisnnGg==","signatures":[{"sig":"MEUCIAtSGDBqHHOvqnLuQKu4FWNYES6GNF1vm5oE8rIaDrgzAiEAvZNruNeGT9Usnh6R8r8lrURBsBa8aO6vi3hVIeIoyLM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143129},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4d70e482082fc1a95cf93353d663ad714c800256","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.9_1780314138819_0.07474452857303593","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@airdraft/plugin-auth","version":"0.1.10","license":"MIT","_id":"@airdraft/plugin-auth@0.1.10","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"491c7b3de1c50fb4dad553194214772bb8d19b1c","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.10.tgz","fileCount":43,"integrity":"sha512-JfbMVycGkvV3P08fynn9eYL/pw9f9ZTT1ZxpgCYvj1enR1bifz4xQCGAkFhWQG8nJkNpLqszKMNOkW9u6fRaFg==","signatures":[{"sig":"MEQCIDPr7Lw/BTn9ddVjQ1s3Buxt9ahls+F8WEBgDbKAygvmAiBah1bFmkZ6PWWDOLGl7X6op/HOPMFLO/Ggfp0mwDQrGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147374},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b440d92b589ede7b2419cdcde79995cd0c760516","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.10_1780475805609_0.14351355456043047","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@airdraft/plugin-auth","version":"0.1.11","license":"MIT","_id":"@airdraft/plugin-auth@0.1.11","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"73428baafa0133519f41434b478b80525ffbaa3e","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.11.tgz","fileCount":43,"integrity":"sha512-BtiKotlA8U7Z9s+C2nEOT+dliY1f098b2hYCb744kARSR5FwKdkR5WUHAzcrsF+dJo/dP371UtE3VPg3knv6jw==","signatures":[{"sig":"MEQCIFFaXGsWti3HaVr8AoAFhQ2ZtSmhNvDsoUSN1DSLFEaKAiBVV60Eeh5zgC5pk5J4/UUd7qTqr2D9H0a29PE9Ot2dNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":149252},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9fdb3e0fbca1e58bb84aca8dd92155d0057ca4b1","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@airdraft/auth":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/plugin-auth_0.1.11_1782407298554_0.6473000039658912","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@airdraft/plugin-auth","version":"0.1.12","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsc","dev":"tsc --watch","clean":"rm -rf dist","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit","prepublishOnly":"npm run build","release":"standard-version","release:patch":"standard-version --release-as patch","release:minor":"standard-version --release-as minor","release:major":"standard-version --release-as major"},"publishConfig":{"access":"public"},"license":"MIT","devDependencies":{"@types/node":"^20.0.0","standard-version":"^9.5.0","tsx":"^4.7.0","typescript":"^5.4.0","vitest":"^5.0.0","@airdraft/core":"*"},"dependencies":{"@airdraft/auth":"*"},"engines":{"node":">=18.0.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_id":"@airdraft/plugin-auth@0.1.12","gitHead":"b1f87e9ff84be997bf5677f4d616418bef10e557","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-97q/D/0lmfVT25lGLu45TPuhb/LgrhgOjBZXWE05PsN2TLJ+ZTnerfiU3NK0Jsd3yya9EyWbt1DCysQrWNUTPA==","shasum":"d7859bd39bb568201e7731520aad3fd4ccdada26","tarball":"https://registry.npmjs.org/@airdraft/plugin-auth/-/plugin-auth-0.1.12.tgz","fileCount":39,"unpackedSize":149310,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD6IFZjBYL8HSFacK/SxHUKiqQixiBbzCP2PdPCQz6ZrQIgDX99H7Srd6WvaL6yZ7Si/P8J4KkKd50gwbe1Azqla5w="}]},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"directories":{},"maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugin-auth_0.1.12_1789506591596_0.07146441482584209"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-21T18:25:59.512Z","modified":"2026-09-15T21:09:51.902Z","0.1.0":"2026-05-21T18:25:59.900Z","0.1.1":"2026-05-22T22:07:28.230Z","0.1.2":"2026-05-23T07:32:40.836Z","0.1.3":"2026-05-23T17:34:00.718Z","0.1.4":"2026-05-23T19:28:25.702Z","0.1.5":"2026-05-23T21:14:50.320Z","0.1.6":"2026-05-26T13:08:16.257Z","0.1.7":"2026-05-26T15:38:03.334Z","0.1.8":"2026-05-31T09:51:40.439Z","0.1.9":"2026-06-01T11:42:18.946Z","0.1.10":"2026-06-03T08:36:45.759Z","0.1.11":"2026-06-25T17:08:18.683Z","0.1.12":"2026-09-15T21:09:51.740Z"},"license":"MIT","description":"Airdraft auth plugin — GitHub OAuth, email/password providers","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"readme":"# @airdraft/plugin-auth\n\nAuthentication plugin for Airdraft. Adds email/password login, OAuth (GitHub, Google), team invitations, and role-based access control to your CMS.\n\n## Installation\n\n```bash\nnpm install @airdraft/plugin-auth\n```\n\n## Usage\n\n### `withAutoAuth` (recommended)\n\nAuto-selects the provider based on environment variables. Uses `CredentialsProvider` when `AIRDRAFT_JWT_SECRET` is set, falling back to a read-only API-key-only mode otherwise.\n\n```ts\nimport { withAutoAuth } from '@airdraft/plugin-auth'\n\nconst auth = await withAutoAuth()\n\nexport const airdraft = defineConfig({\n  adapter,\n  collections,\n  plugins: [auth],\n})\n```\n\n### `withAuth` (explicit)\n\n```ts\nimport { withAuth, CredentialsProvider } from '@airdraft/plugin-auth'\n\nconst auth = withAuth({\n  provider: CredentialsProvider({\n    userStore,\n    secret: process.env.AIRDRAFT_JWT_SECRET!,\n  }),\n  publicPaths: ['/api/cms/posts'],  // optional — bypass auth on specific routes\n})\n```\n\n## Providers\n\n### `CredentialsProvider`\n\nEmail/password login stored in `.airdraft/users.json`.\n\n```ts\nimport { CredentialsProvider, UserStore } from '@airdraft/plugin-auth'\n\nconst userStore = new UserStore()  // reads .airdraft/users.json\n\nCredentialsProvider({\n  userStore,\n  secret: process.env.AIRDRAFT_JWT_SECRET!,\n  roles: { 'admin@example.com': 'admin' },  // optional per-email role overrides\n  basePath: '/api/cms',\n})\n```\n\n### `GitHubOAuthProvider`\n\nGitHub OAuth login. Supports allowlists by user login or organisation membership.\n\n```ts\nimport { GitHubOAuthProvider } from '@airdraft/plugin-auth'\n\nGitHubOAuthProvider({\n  clientId: process.env.GITHUB_CLIENT_ID!,\n  clientSecret: process.env.GITHUB_CLIENT_SECRET!,\n  secret: process.env.AIRDRAFT_JWT_SECRET!,\n  allowedOrgs: ['my-org'],         // optional\n  allowedUsers: ['my-user'],       // optional\n  defaultRole: 'editor',           // default: 'editor'\n})\n```\n\n### `GoogleOAuthProvider`\n\nGoogle OAuth login. Supports allowlists by email address or domain.\n\n```ts\nimport { GoogleOAuthProvider } from '@airdraft/plugin-auth'\n\nGoogleOAuthProvider({\n  clientId: process.env.GOOGLE_CLIENT_ID!,\n  clientSecret: process.env.GOOGLE_CLIENT_SECRET!,\n  secret: process.env.AIRDRAFT_JWT_SECRET!,\n  allowedDomains: ['mycompany.com'],\n  defaultRole: 'editor',\n})\n```\n\n## `UserStore`\n\nManages users and invitations stored in `.airdraft/users.json`.\n\n```ts\nimport { UserStore } from '@airdraft/plugin-auth'\n\nconst userStore = new UserStore()\n\n// Add a user\nawait userStore.addUser({ email: 'alice@example.com', role: 'admin', passwordHash: '...' })\n\n// Create an invite\nconst invite = await userStore.createInvite({ email: 'bob@example.com', role: 'editor' })\n\n// Accept an invite\nawait userStore.acceptInvite(invite.token, { password: 'secure123' })\n```\n\nThe JSON file path can be overridden:\n\n```ts\nconst userStore = new UserStore({ path: './.airdraft/users.json' })\n```\n\n## `getRequestUser(req)`\n\nExtracts and verifies the current user from a request (checks cookie, Bearer token, and `X-API-Key` header). Returns `AuthUser | null`.\n\n```ts\nimport { getRequestUser } from '@airdraft/plugin-auth'\n\nconst user = getRequestUser(request)\n```\n\n## `refreshTokenBlocklist`\n\nIn-memory blocklist for invalidated refresh tokens. Automatically cleared of expired entries on each check.\n\n```ts\nimport { refreshTokenBlocklist } from '@airdraft/plugin-auth'\n\nrefreshTokenBlocklist.add(token)\nrefreshTokenBlocklist.has(token)  // returns false after TTL expires\n```\n\n## Exports\n\n| Export | Description |\n|---|---|\n| `withAuth(options)` | Creates the auth plugin with an explicit provider |\n| `withAutoAuth(options?)` | Auto-configured auth plugin |\n| `CredentialsProvider(options)` | Email/password provider |\n| `GitHubOAuthProvider(options)` | GitHub OAuth provider |\n| `GoogleOAuthProvider(options)` | Google OAuth provider |\n| `UserStore` | User and invite store backed by `.airdraft/users.json` |\n| `getRequestUser(req)` | Extract `AuthUser` from a request |\n| `refreshTokenBlocklist` | In-memory refresh token blocklist |\n| `ROLE_PERMISSIONS` | `Record<Role, RolePermissions>` constant |\n| `can(user)` | Returns `RolePermissions` for a user |\n\n## Changelog\n\nSee [CHANGELOG.md](./CHANGELOG.md).\n","readmeFilename":"README.md"}