{"_id":"@elyash14/next-keycloak","_rev":"6-439f194fada9836c8cb81bc25680c61c","name":"@elyash14/next-keycloak","dist-tags":{"latest":"2.0.3"},"versions":{"1.0.0":{"name":"@elyash14/next-keycloak","description":"An authentication library based on Keycloak for NextJs applications","author":{"name":"Elyas Mosayebi"},"module":"dist/next-keycloak.esm.js","version":"1.0.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"size-limit":[{"path":"dist/next-keycloak.cjs.production.min.js","limit":"10 KB"},{"path":"dist/next-keycloak.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^5.0.4","@types/react":"^17.0.24","@types/react-dom":"^17.0.9","husky":"^7.0.2","react":"^17.0.2","react-dom":"^17.0.2","size-limit":"^5.0.4","tsdx":"^0.14.1","tslib":"^2.3.1","typescript":"^4.4.3"},"_id":"@elyash14/next-keycloak@1.0.0","_nodeVersion":"12.14.0","_npmVersion":"7.24.1","dist":{"integrity":"sha512-QDlVW9PmTFAI7IpQDLPiO2CT4eTOuhMl2PrMAWsu3xWW10/bcwTEum6Ey0gMauLDXR7N5EQ6+xT0Hay9dlfGwQ==","shasum":"07af82d2394b1e09d203fa60d7c5dc6a738f697f","tarball":"https://registry.npmjs.org/@elyash14/next-keycloak/-/next-keycloak-1.0.0.tgz","fileCount":12,"unpackedSize":5313,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEqxT8/lG26hQF4ZjphYBc9LbMvTRnwdAOvGSUS1CT8eAiEA0VYoxEHZi5Uo9WfsTOC9DYD6wl+AyI0X8v4rBlaeGqg="}]},"_npmUser":{"name":"elyash14","email":"elyas.mosayebi@gmail.com"},"directories":{},"maintainers":[{"name":"elyash14","email":"elyas.mosayebi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/next-keycloak_1.0.0_1632692479445_0.0011622167849807408"},"_hasShrinkwrap":false},"2.0.0":{"name":"@elyash14/next-keycloak","description":"An authentication library based on Keycloak for NextJs applications","author":{"name":"Elyas Mosayebi"},"module":"dist/next-keycloak.esm.js","version":"2.0.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"size-limit":[{"path":"dist/next-keycloak.cjs.production.min.js","limit":"10 KB"},{"path":"dist/next-keycloak.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^5.0.4","@types/react":"^17.0.24","@types/react-dom":"^17.0.9","husky":"^7.0.2","react":"^17.0.2","react-dom":"^17.0.2","size-limit":"^5.0.4","tsdx":"^0.14.1","tslib":"^2.3.1","typescript":"^4.4.3","keycloak-js":"^15.0.1"},"peerDependencies":{"react":">=16","keycloak-js":">=11"},"gitHead":"0119220b849cdb29042ee6b802ae485dbd37da81","_id":"@elyash14/next-keycloak@2.0.0","_nodeVersion":"12.14.0","_npmVersion":"7.24.1","dist":{"integrity":"sha512-uwX25FN4ebEkVCoV/Cbg+tMvVfHz4sZ2Q5K5DScq/x4BVSVaVkaeZUcvs0MyQr7CJMneHlGf0cFLoDiBOONmqg==","shasum":"42773accce5f831031e9f61d87f7a4d4a6f01ee1","tarball":"https://registry.npmjs.org/@elyash14/next-keycloak/-/next-keycloak-2.0.0.tgz","fileCount":26,"unpackedSize":238456,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDQTs9e/HaOTR2jMIvHWgNe8lind+VU4hgxKasC8F0N1AiAd3RTLB6D5ri7WAo5zQ0r5HG/vegi1Vy80X7omHqfbyQ=="}]},"_npmUser":{"name":"elyash14","email":"elyas.mosayebi@gmail.com"},"directories":{},"maintainers":[{"name":"elyash14","email":"elyas.mosayebi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/next-keycloak_2.0.0_1635431977711_0.1995670407783403"},"_hasShrinkwrap":false},"2.0.1":{"name":"@elyash14/next-keycloak","description":"An authentication library based on Keycloak for NextJs applications","author":{"name":"Elyas Mosayebi"},"module":"dist/next-keycloak.esm.js","version":"2.0.1","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"keywords":["Keycloak","React","NextJs","Hook","Authentication"],"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"size-limit":[{"path":"dist/next-keycloak.cjs.production.min.js","limit":"10 KB"},{"path":"dist/next-keycloak.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^5.0.4","@types/react":"^17.0.24","@types/react-dom":"^17.0.9","husky":"^7.0.2","react":"^17.0.2","react-dom":"^17.0.2","size-limit":"^5.0.4","tsdx":"^0.14.1","tslib":"^2.3.1","typescript":"^4.4.3","keycloak-js":"^15.0.1"},"peerDependencies":{"react":">=16","keycloak-js":">=11"},"gitHead":"0119220b849cdb29042ee6b802ae485dbd37da81","_id":"@elyash14/next-keycloak@2.0.1","_nodeVersion":"12.14.0","_npmVersion":"7.24.1","dist":{"integrity":"sha512-2vAIjpnrJYyJakxRpKMnBreI34B5pIzuGxcrfabChKGEridZlo7PBKSEY9pa4EJOtXfxEdnodfp/CYYKHLDpVg==","shasum":"a52fa30d6e83e8667d429563028fc0cc8e02c4ec","tarball":"https://registry.npmjs.org/@elyash14/next-keycloak/-/next-keycloak-2.0.1.tgz","fileCount":26,"unpackedSize":238553,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGbJKdhkOF51krusXP/yGAblrsQHL4MF0h3pm6zxcuMJAiA+jFnfSx467HcBaTyQR3sjdS10FxFC/rGf5Lf06qt2JA=="}]},"_npmUser":{"name":"elyash14","email":"elyas.mosayebi@gmail.com"},"directories":{},"maintainers":[{"name":"elyash14","email":"elyas.mosayebi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/next-keycloak_2.0.1_1635432252160_0.6351853174125213"},"_hasShrinkwrap":false},"2.0.2":{"name":"@elyash14/next-keycloak","description":"An authentication library based on Keycloak for NextJs applications","author":{"name":"Elyas Mosayebi"},"module":"dist/next-keycloak.esm.js","version":"2.0.2","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"keywords":["Keycloak","React","NextJs","Hook","Authentication"],"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"size-limit":[{"path":"dist/next-keycloak.cjs.production.min.js","limit":"10 KB"},{"path":"dist/next-keycloak.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^5.0.4","@types/react":"^17.0.24","@types/react-dom":"^17.0.9","husky":"^7.0.2","react":"^17.0.2","react-dom":"^17.0.2","size-limit":"^5.0.4","tsdx":"^0.14.1","tslib":"^2.3.1","typescript":"^4.4.3","keycloak-js":"^15.0.1"},"peerDependencies":{"react":">=16","keycloak-js":">=11"},"gitHead":"0119220b849cdb29042ee6b802ae485dbd37da81","_id":"@elyash14/next-keycloak@2.0.2","_nodeVersion":"12.14.0","_npmVersion":"7.24.1","dist":{"integrity":"sha512-b6eU7CdU7T1oPDZfeSAVqdEuNkH32bkbv5F+dq/Db6/hukjfKSStuQtynuCNp7hgoWORSCIIR8RVRIY8AUjFzg==","shasum":"69f17ea7bd63497df8c591164200920e64bd8543","tarball":"https://registry.npmjs.org/@elyash14/next-keycloak/-/next-keycloak-2.0.2.tgz","fileCount":26,"unpackedSize":238631,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1t4kCRA9TVsSAnZWagAAUNgP/i10muONBmB0W2P2WIL4\n0n1AGhYOseiCVJ25vqX7j/h0JKUnX17y3KYQcHCPzcJFNaheI51I9z9ncvQ3\n3/NYj3J13Z/gOG8IaKrNLAuR/Tw+aifFN3izzk/DypaML4osAxWVkySZXpVd\nJT2nJpkKnPXpbEqaWDqXPRrB89dDzDkF/zLGcRLgVVDyQ8kBPYciehnzeb6h\nm3y3vmHAmCqs6alNTdx8ogSjyMVTCcD+oOmC+O4uqvJAcxV7k5nDp4S8P8F9\ngFBP0QTiDXJ6Tse0m6sVjotdRTH+CjkMhg/UAn1k0FEBpQK9/fZdNe+w2vg6\nq0Hqdc9G+Eq5VtSBgaC+iULL9jx5pbSINSvPdBxvXAVzXZx6FPXu5OyXfZG1\nbu1IGCTJ5GoXp5RrFrT4oj4qffO33p3aave2MAhpMUfrmzbI2ziWphY6674m\nEIZVNzZsKTvrHj3nUDGWU9K0TzXnert9c7ZDxER9lyClkvN+YGXqorRupqen\n0FHbSONHnW8OvCkXElPXuRqtXkmscj82m0GyUUl5ymEmsoercMFy1uO9XsEU\nGRukxLWhHkiWo5gjkf+ehQk9oKMBkxkRPaU0bo5mnjKBBHokGGhE5i3dLPI7\nC0RMFvyxgeiNoSD8p9n6CNXeVRlQkpNBvOraqEYyMLCHBBqyfdTvnN0Gb4Ho\nlIfp\r\n=oVZk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDbyY/suV6+P5asPquQHKiUg3wlIW9P/V7W9gMzcQCHsAiBklVVZTijJlXPbRzRWkTYVL9fj2MLazFwEg8hxQwOk2w=="}]},"_npmUser":{"name":"elyash14","email":"elyas.mosayebi@gmail.com"},"directories":{},"maintainers":[{"name":"elyash14","email":"elyas.mosayebi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/next-keycloak_2.0.2_1635496587239_0.5600378250261733"},"_hasShrinkwrap":false},"2.0.3":{"name":"@elyash14/next-keycloak","description":"An authentication library based on Keycloak for NextJs applications","author":{"name":"Elyas Mosayebi"},"module":"dist/next-keycloak.esm.js","version":"2.0.3","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"keywords":["Keycloak","React","NextJs","Hook","Authentication"],"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"size-limit":[{"path":"dist/next-keycloak.cjs.production.min.js","limit":"10 KB"},{"path":"dist/next-keycloak.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^5.0.4","@types/react":"^17.0.24","@types/react-dom":"^17.0.9","husky":"^7.0.2","react":"^17.0.2","react-dom":"^17.0.2","size-limit":"^5.0.4","tsdx":"^0.14.1","tslib":"^2.3.1","typescript":"^4.4.3","keycloak-js":"^16.0.0"},"peerDependencies":{"react":">=16","keycloak-js":">=11"},"gitHead":"25e2b11bbd4b73af45210fcc651f512b5d89bafe","_id":"@elyash14/next-keycloak@2.0.3","_nodeVersion":"12.14.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-H+SbvSpXUo0zSiIifaz4Z0mSsaaJdT7o+Vi2/g9ttxbouTcSbmrPOfE4Db9aTtbAVbVpE2DkuLlSJJl1n9ZhrA==","shasum":"92e36e2dd65ff5a4174140b75abf566b46fada1b","tarball":"https://registry.npmjs.org/@elyash14/next-keycloak/-/next-keycloak-2.0.3.tgz","fileCount":26,"unpackedSize":239424,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFTJRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpZtBAAkh1CRODyWdwqcYiYVevLYSR4tkoApLZ3b3j30sOXF6H20lyw\r\nB4lO+cHTirnnKRU5zXz1Q5Adg4x4jbyNi/TAP5mXt8fKmR/+kALKqg8safbv\r\ngMe/2RuE8Y9tMVmS7r3y3udjIKiUHoBUZkPswwEJ1aE+bWWap2puJMUtBLyJ\r\nUIgpAaUWc484LnOhwn0mL7AxwXYyeC2PzyorCRf+0jiJvYShzRUcX+krEQSb\r\noBd0rrpcr9aM7kYiNRrgBnFgWTvBb/myzfI+Ak05uWpuWyvHlDazxC57fsc1\r\nXLUClqEPjjio5JUVE1310BgN+Dz9leNqMgEPdL8XCsWWyPj3EfBN+C3ir5p2\r\nw6qLMOW1WMXAZXKaj8nQbCcnv3pZXYtIMB2MjIpo75Ey4UiZIKdF9lfJ59VI\r\n0Pzd4Y27KUOYwx8Py+bJ9I9AjkqBgJ6MVbEsrk5ugoQ/bqR+RHvPnKGRThay\r\nNz8DIhskLPziuQpgocvNLh8465m0zHc1t4vwTFCoMH4SxWjPGksEiMxmNb2Y\r\njQ2yt8f/Zl+EG1BQY+CEDTYssOddnFycO41R3JJYLZlz0WGPYDRYlddAu6vp\r\nUOR92lrD5roevtBujRhpq8FdCHbdghZTlJx7WhzT/jY6yPjZrBFplYVakUOV\r\nQEWKKbjvwLkiZZtblOO5KbQ/JlCwASFwG58=\r\n=4ojJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7ByR4Mreq1NHAKzJL9iMQdOCVV0UPjRpWPsIRo/yRawIgNCo8VYx9IdsDxpbPw8xdFMo756QXURz72ZgK+ja7m1Y="}]},"_npmUser":{"name":"elyash14","email":"elyas.mosayebi@gmail.com"},"directories":{},"maintainers":[{"name":"elyash14","email":"elyas.mosayebi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/next-keycloak_2.0.3_1645556305406_0.5491665100170617"},"_hasShrinkwrap":false}},"time":{"created":"2021-09-26T21:41:19.398Z","1.0.0":"2021-09-26T21:41:19.594Z","modified":"2022-04-05T07:24:35.347Z","2.0.0":"2021-10-28T14:39:37.912Z","2.0.1":"2021-10-28T14:44:12.375Z","2.0.2":"2021-10-29T08:36:27.404Z","2.0.3":"2022-02-22T18:58:25.600Z"},"maintainers":[{"name":"elyash14","email":"elyas.mosayebi@gmail.com"}],"description":"An authentication library based on Keycloak for NextJs applications","author":{"name":"Elyas Mosayebi"},"license":"MIT","readme":"# Next Keycloak\n\n### _An authentication library based on Keycloak for NextJs applications_\n\nNext Keycloak powered by Typescript, React and keycloak\nUse it as a react provider to authenticate keycloak users\n\n[![NPM version](https://img.shields.io/badge/npm-v2.0.0-blue)]()\n\n## Features\n\n- Support Keycloak public client\n- Access user information and token in both client & server side\n\n## Requirements\n\n- [Keycloak.js](https://www.npmjs.com/package/keycloak-js) version **11** or above\n- React version **16** or above\n- NextJs version **10** or above\n\n## Installation\n\nInstall package with this command\n\n```shell\nnpm i @elyash14/next-keycloak\nor\nyarn add @elyash14/next-keycloak\n```\n\nMake a config file in `_app.tsx` or `_app.jsx` and wrap your component with **NextKeycloakAuthProvider** like this:\n\n```shell\nconst config:KeycloakConfig = {\n  realm: process.env.NEXT_PUBLIC_KEYCLOAK_REAM,\n  url: process.env.NEXT_PUBLIC_KEYCLOAK_URL,\n  clientId: process.env.NEXT_PUBLIC_KEYCLOAK_CLIENT_ID,\n};\n\nconst initOption :KeycloakInitOptions = {\n  onLoad: 'check-sso',\n  silentCheckSsoRedirectUri:\n    'http://localhost:3000/silent-check-sso.html',\n}\n\nfunction MyApp({ Component, pageProps }: AppProps) {\n  return (\n    <NextKeycloakAuthProvider config={config} initOption={initOption}>\n      <Component {...pageProps} />\n     </NextKeycloakAuthProvider>\n  );\n}\nexport default MyApp;\n```\n\nAlso you can provide **initialOption** based on [keycloak documentation](https://www.keycloak.org/docs/latest/securing_apps/index.html#_javascript_adapter) and pass it to the provider. Note that the above example supports \"silent check sso\" and needs an HTML in your public folder. Create the `silent-check-sso.html` file in the public folder and put the below content into it.\n\n```shell\n<html>\n<body>\n    <script>\n        parent.postMessage(location.href, location.origin)\n    </script>\n</body>\n</html>\n```\n\nAnd that's it... now you can use **useNextKeycloakAuth** in your pages and components like this:\n\n```shell\nconst {authenticated, loading } = useNextKeycloakAuth();\n```\n\nSee [this example](https://github.com/elyash14/next-keycloak/tree/main/example) for full example.\n\n## Authors\n\nElyas Mosayebi [@elyash14](https://github.com/elyash14)\n\n## License\n\nMIT\n","readmeFilename":"README.md","keywords":["Keycloak","React","NextJs","Hook","Authentication"]}