{"_id":"@2077collective/persona","_rev":"2-f75d10ddb3b3c30c001c1c3513b30aa0","name":"@2077collective/persona","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@2077collective/persona","version":"0.0.1","_id":"@2077collective/persona@0.0.1","maintainers":[{"name":"iankressin","email":"ianguimaraes31@gmail.com"}],"dist":{"shasum":"6636a8e36629d1562cef72dbe63eba6dfb8b6a97","tarball":"https://registry.npmjs.org/@2077collective/persona/-/persona-0.0.1.tgz","fileCount":14,"integrity":"sha512-cEGIoClaqKZrm8jFithtIgFVZKCBX9ygwwKx6O3T774Grex+TgMv/FFY6wb0TFWBk3uu3F+D9ShCccLUtgO3Eg==","signatures":[{"sig":"MEUCIF9fqbO6MBJjsYxHsI6e2WY2usJ+c1TpeMhc+0EHqeSyAiEAje0T8yGE8Oz9Euas01ZrlWUgId3/KepspCr4gZpL+YM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16049},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"gitHead":"092ecf8fceefec7d278c4beaf209ad7ad5e2a7d4","scripts":{"dev":"vite dev","lint":"prettier --check . && eslint .","test":"vitest","build":"vite build && npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","format":"prettier --write .","package":"svelte-kit sync && svelte-package && publint","preview":"vite preview","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prepublishOnly":"npm run package"},"_npmUser":{"name":"iankressin","email":"ianguimaraes31@gmail.com"},"_npmVersion":"10.8.1","description":"A sveltekit library for handling authentication for web3 and web2 providers.","directories":{},"_nodeVersion":"20.16.0","dependencies":{"jose":"^5.7.0","viem":"^2.19.6","arctic":"^1.9.2","@sveltejs/kit":"^2.0.0","@metamask/providers":"^17.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.0.11","eslint":"^9.0.0","svelte":"^5.0.0-next.1","vitest":"^2.0.0","globals":"^15.0.0","publint":"^0.1.9","prettier":"^3.1.1","typescript":"^5.0.0","svelte-check":"^3.6.0","@types/eslint":"^9.6.0","@sveltejs/package":"^2.0.0","typescript-eslint":"^8.0.0","eslint-plugin-svelte":"^2.36.0","@sveltejs/adapter-auto":"^3.0.0","eslint-config-prettier":"^9.1.0","prettier-plugin-svelte":"^3.1.2","vite-plugin-node-polyfills":"^0.22.0","@sveltejs/vite-plugin-svelte":"^3.0.0"},"peerDependencies":{"svelte":"^5.0.0-next.1","@sveltejs/kit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/persona_0.0.1_1725731180509_0.04829612441860931","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"@2077collective/persona","version":"0.0.2","_id":"@2077collective/persona@0.0.2","maintainers":[{"name":"iankressin","email":"ianguimaraes31@gmail.com"}],"dist":{"shasum":"d5f9d325447763a511940ea419582111d8d80a0c","tarball":"https://registry.npmjs.org/@2077collective/persona/-/persona-0.0.2.tgz","fileCount":14,"integrity":"sha512-3p5FTylRcgf5xIe2NhfWGzCm9sPRyGQvJ8m86vlo+LVIUrKRxKPStN5jR2Xc70niyyTVOvm6u24yFp0YWX8Vzg==","signatures":[{"sig":"MEYCIQCkFMLCgPI0j4mDxfCidzOZ/B34hT50k1NhUOXdbiMpoQIhALcs4k+IxaYTLAIe5U/ANU8FtHVbNPIBSReHs+FThFmX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16255},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"gitHead":"dae62d220be0934325f4c4073bf01cf73a6a5e50","scripts":{"dev":"vite dev","lint":"prettier --check . && eslint .","test":"vitest","build":"vite build && npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","format":"prettier --write .","package":"svelte-kit sync && svelte-package && publint","preview":"vite preview","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prepublishOnly":"npm run package"},"_npmUser":{"name":"iankressin","email":"ianguimaraes31@gmail.com"},"_npmVersion":"10.8.1","description":"A sveltekit library for handling authentication for web3 and web2 providers.","directories":{},"_nodeVersion":"20.16.0","dependencies":{"jose":"^5.7.0","viem":"^2.19.6","arctic":"^1.9.2","@sveltejs/kit":"^2.0.0","@metamask/providers":"^17.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.0.11","eslint":"^9.0.0","svelte":"^5.0.0-next.1","vitest":"^2.0.0","globals":"^15.0.0","publint":"^0.1.9","prettier":"^3.1.1","typescript":"^5.0.0","svelte-check":"^3.6.0","@types/eslint":"^9.6.0","@sveltejs/package":"^2.0.0","typescript-eslint":"^8.0.0","eslint-plugin-svelte":"^2.36.0","@sveltejs/adapter-auto":"^3.0.0","eslint-config-prettier":"^9.1.0","prettier-plugin-svelte":"^3.1.2","vite-plugin-node-polyfills":"^0.22.0","@sveltejs/vite-plugin-svelte":"^3.0.0"},"peerDependencies":{"svelte":"^5.0.0-next.1","@sveltejs/kit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/persona_0.0.2_1727808619869_0.777092239769481","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@2077collective/persona","version":"0.0.3","scripts":{"dev":"vite dev","build":"vite build && npm run package","preview":"vite preview","package":"svelte-kit sync && svelte-package && publint","prepublishOnly":"npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","test":"vitest","lint":"prettier --check . && eslint .","format":"prettier --write ."},"exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"peerDependencies":{"@sveltejs/kit":"^2.0.0","svelte":"^5.0.0-next.1"},"devDependencies":{"@sveltejs/adapter-auto":"^3.0.0","@sveltejs/package":"^2.0.0","@sveltejs/vite-plugin-svelte":"^3.0.0","@types/eslint":"^9.6.0","eslint":"^9.0.0","eslint-config-prettier":"^9.1.0","eslint-plugin-svelte":"^2.36.0","globals":"^15.0.0","prettier":"^3.1.1","prettier-plugin-svelte":"^3.1.2","publint":"^0.1.9","svelte":"^5.0.0-next.1","svelte-check":"^3.6.0","typescript":"^5.0.0","typescript-eslint":"^8.0.0","vite":"^5.0.11","vite-plugin-node-polyfills":"^0.22.0","vitest":"^2.0.0"},"svelte":"./dist/index.js","types":"./dist/index.d.ts","type":"module","dependencies":{"@metamask/providers":"^17.1.2","@sveltejs/kit":"^2.0.0","arctic":"^1.9.2","jose":"^5.7.0","viem":"^2.19.6"},"_id":"@2077collective/persona@0.0.3","gitHead":"6482badf66d74336e8ac71b3e333491f209daaf5","description":"A sveltekit library for handling authentication for web3 and web2 providers.","_nodeVersion":"20.16.0","_npmVersion":"10.8.1","dist":{"integrity":"sha512-4lbQ7g3J3d2Wuxx/MU+4TxK1ccmy4vb8DGTAIaw6b9EjtrOLvlZaeH/uOnKQRvpzWjqYDYqnTBHkDjeSPa/1KA==","shasum":"28bf5867f9a3c02bc24fdaf8780d19f103fd8bb9","tarball":"https://registry.npmjs.org/@2077collective/persona/-/persona-0.0.3.tgz","fileCount":14,"unpackedSize":16294,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRZ+vGHQJ0wkmtR19j5kCb9KNuOhcWFadR2qpBelUxpwIgVLak701SOIesZPFWalxxCkX1yrd3u0Ace2J+TIyUKqg="}]},"_npmUser":{"name":"iankressin","email":"ianguimaraes31@gmail.com"},"directories":{},"maintainers":[{"name":"iankressin","email":"ianguimaraes31@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persona_0.0.3_1727809629739_0.6193712840177472"},"_hasShrinkwrap":false}},"time":{"created":"2024-09-07T17:46:20.432Z","modified":"2024-10-01T19:07:10.157Z","0.0.1":"2024-09-07T17:46:20.831Z","0.0.2":"2024-10-01T18:50:20.061Z","0.0.3":"2024-10-01T19:07:09.959Z"},"description":"A sveltekit library for handling authentication for web3 and web2 providers.","maintainers":[{"name":"iankressin","email":"ianguimaraes31@gmail.com"}],"readme":"# 2077 Auth\n\nA sveltekit library for handling authentication for web3 and web2 providers.\n\n## Installation\n\n```bash\n// TODO: add actual package name once published\nnpm install @2077/auth\n```\n## Usage\n\nThe library provides three methods of authentication:\n1. Browser wallet: connect to a wallet provider\n2. SIWE + JWT: generates a JWT based on a signature created from a SIWE message\n2. Web2 providers: Google, X, Github\n\n### Browser Wallet\nThis method connects to a wallet provider and returns the wallet address and chainId.\n\n```svelte\n<script>\n  import { Auth } from '$lib/index';\n</script>\n\n{#snippet header()}\n  <h4>Connect wallet</h4>\n{/snippet}\n<Auth\n  header={header}\n  walletLoginCallback={(walletInfo) => /*Do something with walletInfo*/}\n/>\n```\n\n### SIWE + JWT\nThis method generates a JWT based on a signature created from a SIWE message.\n\n@2077/auth provides the request handlers that will create a [SIWE-style](https://eips.ethereum.org/EIPS/eip-4361) messages, forward them to the client, sign the message, and send it back to the server in order to validate and generate a JWT.\n\n```svelte\n// +page.svelte\n<script>\n  import { Auth } from '$lib/index';\n  export let data;\n</script>\n\n{#snippet header()}\n  <h4>SIWE + JWT</h4>\n{/snippet}\n<Auth\n  header={header}\n  enableSocial={true}\n  walletLoginCallback={(walletInfo) => /*Do something with walletInfo*/}\n  signatureEndpoint=\"/\"\n  authenticationEndpoint=\"/\"\n/>\n```\n```ts\n// TODO: rename import to actual package name when published\nimport { getSignatureMessage, authenticate } from '@2077/auth';\n\nexport const GET = getSignatureMessage;\nexport const POST = authenticate({ jwtSecret: 'secret' });\n```\n### Web2 Providers\nTODO\n","readmeFilename":"README.md"}