{"_id":"@alesha-nov/auth","_rev":"6-455900dbc1e5172c4c01a5474cd78ca1","name":"@alesha-nov/auth","dist-tags":{"latest":"0.2.7"},"versions":{"0.1.0":{"name":"@alesha-nov/auth","version":"0.1.0","_id":"@alesha-nov/auth@0.1.0","maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"dist":{"shasum":"2853ca829e5b2dc63d08c5b265a5c3a000dc4b4d","tarball":"https://registry.npmjs.org/@alesha-nov/auth/-/auth-0.1.0.tgz","fileCount":21,"integrity":"sha512-gSdQT19wgnVj/SPgxWryVtkFWzz/a5+vYUtGWShmgfpSSrm+ZkNznjd9afbsL+5HwZuM22FcWZl5QJ5auiTy0Q==","signatures":[{"sig":"MEUCIQCIiZ7BK30LtxhJrURCTgVibnDHwNBKp+Ri3dRUPVbEWwIgGhE4Ywbj6BlNk6d7oVaJpyErfnkETzLpIBrSyrAnAUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44019},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./service":{"types":"./dist/service.d.ts","import":"./dist/service.js"},"./migrations":{"types":"./dist/migrations.d.ts","import":"./dist/migrations.js"},"./user-store":{"types":"./dist/user-store.d.ts","import":"./dist/user-store.js"}},"gitHead":"500132f4ed68c80b786ce8fe54feb57913ac532e","scripts":{"lint":"eslint src --ext .ts","test":"bun test","build":"tsup src/index.ts src/types.ts src/utils.ts src/migrations.ts src/user-store.ts src/service.ts --format esm --dts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"juniyadi","email":"juniyadi94@gmail.com"},"_npmVersion":"10.9.4","description":"Core auth service for signup/login, magic link, and OAuth account login/linking.","directories":{},"sideEffects":false,"_nodeVersion":"22.21.1","dependencies":{"@alesha-nov/config":"workspace:*"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/auth_0.1.0_1775753974907_0.4465147604305286","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@alesha-nov/auth","version":"0.2.0","keywords":["alesha","auth","authentication","authorization","bun","oauth","magic-link"],"author":{"name":"JuniYadi"},"license":"MIT","_id":"@alesha-nov/auth@0.2.0","maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"homepage":"https://github.com/JuniYadi/alesha-nov#readme","bugs":{"url":"https://github.com/JuniYadi/alesha-nov/issues"},"dist":{"shasum":"51b67e32458cafb9ed5d146ec7a49343b536bef2","tarball":"https://registry.npmjs.org/@alesha-nov/auth/-/auth-0.2.0.tgz","fileCount":18,"integrity":"sha512-I9aTKzuB2CO8KzwqjW06F6Fu/639S01T4f9JpUDYSEmkVZUedAI32Xu45Hm90lAbXTrjI7FswownY24TXrG54w==","signatures":[{"sig":"MEUCIQDZfnpSkoVleHqlqx2HsosY+dL33poncHEdrq29yGuBKQIgO2qJcZrmSl3YyWvbDPuClv5UO+DX7X3BcFVeCgsSyYw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alesha-nov%2fauth@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43228},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0","node":">=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./service":{"types":"./dist/service.d.ts","import":"./dist/service.js"},"./migrations":{"types":"./dist/migrations.d.ts","import":"./dist/migrations.js"},"./user-store":{"types":"./dist/user-store.d.ts","import":"./dist/user-store.js"}},"gitHead":"69121aac3dfd5e332d6c54f9fd27162d99245343","scripts":{"lint":"eslint src --ext .ts","test":"bun test","build":"tsup src/index.ts src/types.ts src/utils.ts src/migrations.ts src/user-store.ts src/service.ts --format esm --dts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca093e05-b412-4326-8257-2db256208cc6"}},"repository":{"url":"git+https://github.com/JuniYadi/alesha-nov.git","type":"git","directory":"packages/auth"},"_npmVersion":"11.11.0","description":"Core auth service for signup/login, magic link, OAuth account login/linking, and security controls.","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@alesha-nov/email":"workspace:*","@alesha-nov/config":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/auth_0.2.0_1775899672718_0.1127617813030477","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@alesha-nov/auth","version":"0.2.1","keywords":["alesha","auth","authentication","authorization","bun","oauth","magic-link"],"author":{"name":"JuniYadi"},"license":"MIT","_id":"@alesha-nov/auth@0.2.1","maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"homepage":"https://github.com/JuniYadi/alesha-nov#readme","bugs":{"url":"https://github.com/JuniYadi/alesha-nov/issues"},"dist":{"shasum":"c49472674184ca8597630397bbd246da75e26997","tarball":"https://registry.npmjs.org/@alesha-nov/auth/-/auth-0.2.1.tgz","fileCount":18,"integrity":"sha512-koBcCpyjysfXrYqMt9PKmv++DPnVVgJjXwEpyzS92J8Yp8q1oZZmwS1zRQBAVM+l+10t5UPRJoLuIVU7xpfazw==","signatures":[{"sig":"MEUCIHoyRaHzdRqNsQ379ffyuP8EnEaXcYbRUXDVOn5+NOZVAiEAnk95genENUCE1pmW9Av4CVCAEI5ZDmJlBBxdjDh9C8k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alesha-nov%2fauth@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43228},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0","node":">=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./service":{"types":"./dist/service.d.ts","import":"./dist/service.js"},"./migrations":{"types":"./dist/migrations.d.ts","import":"./dist/migrations.js"},"./user-store":{"types":"./dist/user-store.d.ts","import":"./dist/user-store.js"}},"gitHead":"271141d2f35fd9e4df0dddf66276721f499e1bbe","scripts":{"lint":"eslint src --ext .ts","test":"bun test","build":"tsup src/index.ts src/types.ts src/utils.ts src/migrations.ts src/user-store.ts src/service.ts --format esm --dts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca093e05-b412-4326-8257-2db256208cc6"}},"repository":{"url":"git+https://github.com/JuniYadi/alesha-nov.git","type":"git","directory":"packages/auth"},"_npmVersion":"11.11.0","description":"Core auth service for signup/login, magic link, OAuth account login/linking, and security controls.","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@alesha-nov/email":"workspace:*","@alesha-nov/config":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/auth_0.2.1_1775920913196_0.242672675195458","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@alesha-nov/auth","version":"0.2.2","keywords":["alesha","auth","authentication","authorization","bun","oauth","magic-link"],"author":{"name":"JuniYadi"},"license":"MIT","_id":"@alesha-nov/auth@0.2.2","maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"homepage":"https://github.com/JuniYadi/alesha-nov#readme","bugs":{"url":"https://github.com/JuniYadi/alesha-nov/issues"},"dist":{"shasum":"5f0cec8b59d354333a16df9d072dbe027c653f9b","tarball":"https://registry.npmjs.org/@alesha-nov/auth/-/auth-0.2.2.tgz","fileCount":18,"integrity":"sha512-CJZbrJ1FPisH3avLHI7OB3sIfJX7e0kYueRvNKlDGoXHAnVcZs1ks/UHtZERqAgP8wkjQw48/10srJKB5yDHUw==","signatures":[{"sig":"MEQCIDDhxcOJlWabeil1GlgH20CeCLLqMGMOuFBEJw+97buCAiACnxCsEr671IYFhShmZ5Zu4mTQSXDSqKb00jm0DzVIpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alesha-nov%2fauth@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43192},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0","node":">=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./service":{"types":"./dist/service.d.ts","import":"./dist/service.js"},"./migrations":{"types":"./dist/migrations.d.ts","import":"./dist/migrations.js"},"./user-store":{"types":"./dist/user-store.d.ts","import":"./dist/user-store.js"}},"gitHead":"df7ffb55716c7e78397e744eddf94510c06e2d27","scripts":{"lint":"eslint src --ext .ts","test":"bun test","build":"tsup src/index.ts src/types.ts src/utils.ts src/migrations.ts src/user-store.ts src/service.ts --format esm --dts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca093e05-b412-4326-8257-2db256208cc6"}},"repository":{"url":"git+https://github.com/JuniYadi/alesha-nov.git","type":"git","directory":"packages/auth"},"_npmVersion":"11.11.0","description":"Core auth service for signup/login, magic link, OAuth account login/linking, and security controls.","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@alesha-nov/db":"workspace:*","@alesha-nov/email":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/auth_0.2.2_1776363185974_0.9851171956168265","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@alesha-nov/auth","version":"0.2.4","keywords":["alesha","auth","authentication","authorization","bun","oauth","magic-link"],"author":{"name":"JuniYadi"},"license":"MIT","_id":"@alesha-nov/auth@0.2.4","maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"homepage":"https://github.com/JuniYadi/alesha-nov#readme","bugs":{"url":"https://github.com/JuniYadi/alesha-nov/issues"},"dist":{"shasum":"900319940c0abd7655a31dcd9dd8d8587599af7c","tarball":"https://registry.npmjs.org/@alesha-nov/auth/-/auth-0.2.4.tgz","fileCount":18,"integrity":"sha512-k7LHNf7zU9p5kH1LpWwqLL+NId7/msE9T9r8XA/BEBXjGnylaKtTgtXMeUy+LZgMzpE7V60+JZwm6BAJPKohSA==","signatures":[{"sig":"MEUCIQCStjHftO7d2DssM7wG0zAlo5dxuhapmLbKRCbLoyuGCwIgcOGCjHaHE5Bk2a4dZUWMWbuWhM0wc86d60e76cZNwMI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alesha-nov%2fauth@0.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43306},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0","node":">=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./service":{"types":"./dist/service.d.ts","import":"./dist/service.js"},"./migrations":{"types":"./dist/migrations.d.ts","import":"./dist/migrations.js"},"./user-store":{"types":"./dist/user-store.d.ts","import":"./dist/user-store.js"}},"gitHead":"5543869c9da53c93f2ce0e123db7bf7e54e25e2d","scripts":{"lint":"eslint src --ext .ts","test":"bun test","build":"tsup src/index.ts src/types.ts src/utils.ts src/migrations.ts src/user-store.ts src/service.ts --format esm --dts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca093e05-b412-4326-8257-2db256208cc6"}},"repository":{"url":"git+https://github.com/JuniYadi/alesha-nov.git","type":"git","directory":"packages/auth"},"_npmVersion":"11.11.0","description":"Core auth service for signup/login, magic link, OAuth account login/linking, and security controls.","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@alesha-nov/db":"workspace:*","@alesha-nov/email":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/auth_0.2.4_1776437228048_0.2603651575674084","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@alesha-nov/auth","version":"0.2.7","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","sideEffects":false,"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./migrations":{"types":"./dist/migrations.d.ts","import":"./dist/migrations.js"},"./user-store":{"types":"./dist/user-store.d.ts","import":"./dist/user-store.js"},"./service":{"types":"./dist/service.d.ts","import":"./dist/service.js"}},"scripts":{"build":"tsup src/index.ts src/types.ts src/utils.ts src/migrations.ts src/user-store.ts src/service.ts --format esm --dts","typecheck":"tsc -p tsconfig.json --noEmit","lint":"eslint src --ext .ts","test":"bun test"},"dependencies":{"@alesha-nov/config":"workspace:*","@alesha-nov/db":"workspace:*","@alesha-nov/email":"workspace:*"},"repository":{"type":"git","url":"git+https://github.com/JuniYadi/alesha-nov.git","directory":"packages/auth"},"license":"MIT","author":{"name":"JuniYadi"},"keywords":["alesha","auth","authentication","authorization","bun","oauth","magic-link"],"homepage":"https://github.com/JuniYadi/alesha-nov#readme","bugs":{"url":"https://github.com/JuniYadi/alesha-nov/issues"},"engines":{"node":">=22.12.0","bun":">=1.3.0"},"publishConfig":{"access":"public"},"gitHead":"c86cb010072f05dd615cc3ff449850ac4a20b7c0","_id":"@alesha-nov/auth@0.2.7","description":"Core auth service for signup/login, magic link, OAuth account login/linking, and security controls.","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-RtM6DoAaHy8N+QkzlwoAXB39Dm1gvU0Ll6cbb1WJyaXqZKnEAy4dvBOodLuZ/V150jNldE42bxhPjt+F4uqeZQ==","shasum":"53ba46d252903296c662ab8d0fcb11df41991474","tarball":"https://registry.npmjs.org/@alesha-nov/auth/-/auth-0.2.7.tgz","fileCount":18,"unpackedSize":45847,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alesha-nov%2fauth@0.2.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCGdSSIAjxcnqOzUUoF/t6jevmSTr9HoFxTYWDDXspmyQIgRD7zIaz7xnH7QsC6ituL5W4latfabCvSs9zdVAy8q/E="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca093e05-b412-4326-8257-2db256208cc6"}},"directories":{},"maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/auth_0.2.7_1776622029886_0.9432270966016518"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-09T16:59:34.848Z","modified":"2026-04-19T18:07:10.354Z","0.1.0":"2026-04-09T16:59:35.073Z","0.2.0":"2026-04-11T09:27:52.844Z","0.2.1":"2026-04-11T15:21:53.369Z","0.2.2":"2026-04-16T18:13:06.103Z","0.2.4":"2026-04-17T14:47:08.181Z","0.2.7":"2026-04-19T18:07:10.027Z"},"bugs":{"url":"https://github.com/JuniYadi/alesha-nov/issues"},"author":{"name":"JuniYadi"},"license":"MIT","homepage":"https://github.com/JuniYadi/alesha-nov#readme","keywords":["alesha","auth","authentication","authorization","bun","oauth","magic-link"],"repository":{"type":"git","url":"git+https://github.com/JuniYadi/alesha-nov.git","directory":"packages/auth"},"description":"Core auth service for signup/login, magic link, OAuth account login/linking, and security controls.","maintainers":[{"name":"juniyadi","email":"juniyadi94@gmail.com"}],"readme":"# @alesha-nov/auth\n\nCore auth service for signup/login, magic link, OAuth account login/linking, and security controls.\n\n## Implemented Features\n\n- Email/password signup + login\n- Password hashing and verification utilities\n- Password strength policy checks\n- Brute-force/rate-limit/lockout controls for login\n- Magic link issue + verify (hashed token storage)\n- Password reset issue + verify flows\n- Email verification issue + verify flows\n- OAuth login for `google` and `github`\n- OAuth account linking + linked accounts list\n- OAuth PKCE authorize request + callback validation helpers\n- Role assignment (`setUserRoles`, `getUserRoles`)\n- Session issuance + refresh contracts (strategy-based)\n- Audit events/hooks for auth lifecycle events\n- Auto migrations for auth tables\n\n## Required for Target Auth (Email/Password, Magic Link, Google/GitHub)\n\n- `signup`, `login`\n- `issueMagicLinkToken`, `verifyMagicLinkToken`\n- `loginWithOAuth(provider=google|github)`\n- Multi-role user model and retrieval\n- Session + refresh strategy integration\n\n## Remaining / Follow-up\n\n- Add/extend persistence-backed session strategy examples for production\n- Expand docs with reference architecture for distributed deployments\n\n## Tracking Issues\n\nCreate/update issues for newly discovered gaps. Historical issues #23/#24/#25/#26/#27 are closed.\n","readmeFilename":"README.md"}