@mulverse/mulguard-core 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/README.md +24 -0
  2. package/adapters.d.ts +522 -0
  3. package/adapters.d.ts.map +1 -0
  4. package/adapters.js +170 -0
  5. package/errors.d.ts +429 -0
  6. package/errors.d.ts.map +1 -0
  7. package/errors.js +473 -0
  8. package/index.d.ts +547 -0
  9. package/index.d.ts.map +1 -0
  10. package/index.js +142 -0
  11. package/jwt.d.ts +132 -0
  12. package/jwt.d.ts.map +1 -0
  13. package/jwt.js +123 -0
  14. package/lib/actions/callback/handle-login.d.ts +35 -0
  15. package/lib/actions/callback/handle-login.d.ts.map +1 -0
  16. package/lib/actions/callback/handle-login.js +275 -0
  17. package/lib/actions/callback/index.d.ts +5 -0
  18. package/lib/actions/callback/index.d.ts.map +1 -0
  19. package/lib/actions/callback/index.js +409 -0
  20. package/lib/actions/callback/oauth/callback.d.ts +36 -0
  21. package/lib/actions/callback/oauth/callback.d.ts.map +1 -0
  22. package/lib/actions/callback/oauth/callback.js +248 -0
  23. package/lib/actions/callback/oauth/checks.d.ts +70 -0
  24. package/lib/actions/callback/oauth/checks.d.ts.map +1 -0
  25. package/lib/actions/callback/oauth/checks.js +188 -0
  26. package/lib/actions/callback/oauth/csrf-token.d.ts +33 -0
  27. package/lib/actions/callback/oauth/csrf-token.d.ts.map +1 -0
  28. package/lib/actions/callback/oauth/csrf-token.js +39 -0
  29. package/lib/actions/index.d.ts +6 -0
  30. package/lib/actions/index.d.ts.map +1 -0
  31. package/lib/actions/index.js +5 -0
  32. package/lib/actions/session.d.ts +5 -0
  33. package/lib/actions/session.d.ts.map +1 -0
  34. package/lib/actions/session.js +127 -0
  35. package/lib/actions/signin/authorization-url.d.ts +12 -0
  36. package/lib/actions/signin/authorization-url.d.ts.map +1 -0
  37. package/lib/actions/signin/authorization-url.js +94 -0
  38. package/lib/actions/signin/index.d.ts +4 -0
  39. package/lib/actions/signin/index.d.ts.map +1 -0
  40. package/lib/actions/signin/index.js +22 -0
  41. package/lib/actions/signin/send-token.d.ts +10 -0
  42. package/lib/actions/signin/send-token.d.ts.map +1 -0
  43. package/lib/actions/signin/send-token.js +98 -0
  44. package/lib/actions/signout.d.ts +11 -0
  45. package/lib/actions/signout.d.ts.map +1 -0
  46. package/lib/actions/signout.js +30 -0
  47. package/lib/actions/webauthn-options.d.ts +8 -0
  48. package/lib/actions/webauthn-options.d.ts.map +1 -0
  49. package/lib/actions/webauthn-options.js +60 -0
  50. package/lib/index.d.ts +2 -0
  51. package/lib/index.d.ts.map +1 -0
  52. package/lib/index.js +70 -0
  53. package/lib/init.d.ts +25 -0
  54. package/lib/init.d.ts.map +1 -0
  55. package/lib/init.js +172 -0
  56. package/lib/pages/error.d.ts +17 -0
  57. package/lib/pages/error.d.ts.map +1 -0
  58. package/lib/pages/error.js +40 -0
  59. package/lib/pages/index.d.ts +42 -0
  60. package/lib/pages/index.d.ts.map +1 -0
  61. package/lib/pages/index.js +136 -0
  62. package/lib/pages/signin.d.ts +10 -0
  63. package/lib/pages/signin.d.ts.map +1 -0
  64. package/lib/pages/signin.js +75 -0
  65. package/lib/pages/signout.d.ts +8 -0
  66. package/lib/pages/signout.d.ts.map +1 -0
  67. package/lib/pages/signout.js +17 -0
  68. package/lib/pages/styles.d.ts +3 -0
  69. package/lib/pages/styles.d.ts.map +1 -0
  70. package/lib/pages/styles.js +381 -0
  71. package/lib/pages/verify-request.d.ts +8 -0
  72. package/lib/pages/verify-request.d.ts.map +1 -0
  73. package/lib/pages/verify-request.js +11 -0
  74. package/lib/symbols.d.ts +50 -0
  75. package/lib/symbols.d.ts.map +1 -0
  76. package/lib/symbols.js +57 -0
  77. package/lib/utils/actions.d.ts +3 -0
  78. package/lib/utils/actions.d.ts.map +1 -0
  79. package/lib/utils/actions.js +14 -0
  80. package/lib/utils/assert.d.ts +14 -0
  81. package/lib/utils/assert.d.ts.map +1 -0
  82. package/lib/utils/assert.js +168 -0
  83. package/lib/utils/callback-url.d.ts +17 -0
  84. package/lib/utils/callback-url.d.ts.map +1 -0
  85. package/lib/utils/callback-url.js +27 -0
  86. package/lib/utils/cookie.d.ts +111 -0
  87. package/lib/utils/cookie.d.ts.map +1 -0
  88. package/lib/utils/cookie.js +205 -0
  89. package/lib/utils/date.d.ts +7 -0
  90. package/lib/utils/date.d.ts.map +1 -0
  91. package/lib/utils/date.js +8 -0
  92. package/lib/utils/email.d.ts +20 -0
  93. package/lib/utils/email.d.ts.map +1 -0
  94. package/lib/utils/email.js +57 -0
  95. package/lib/utils/env.d.ts +9 -0
  96. package/lib/utils/env.d.ts.map +1 -0
  97. package/lib/utils/env.js +96 -0
  98. package/lib/utils/logger.d.ts +18 -0
  99. package/lib/utils/logger.d.ts.map +1 -0
  100. package/lib/utils/logger.js +50 -0
  101. package/lib/utils/merge.d.ts +3 -0
  102. package/lib/utils/merge.d.ts.map +1 -0
  103. package/lib/utils/merge.js +23 -0
  104. package/lib/utils/providers.d.ts +19 -0
  105. package/lib/utils/providers.d.ts.map +1 -0
  106. package/lib/utils/providers.js +149 -0
  107. package/lib/utils/session.d.ts +7 -0
  108. package/lib/utils/session.d.ts.map +1 -0
  109. package/lib/utils/session.js +29 -0
  110. package/lib/utils/web.d.ts +10 -0
  111. package/lib/utils/web.d.ts.map +1 -0
  112. package/lib/utils/web.js +109 -0
  113. package/lib/utils/webauthn-client.d.ts +30 -0
  114. package/lib/utils/webauthn-client.d.ts.map +1 -0
  115. package/lib/utils/webauthn-client.js +197 -0
  116. package/lib/utils/webauthn-utils.d.ts +81 -0
  117. package/lib/utils/webauthn-utils.d.ts.map +1 -0
  118. package/lib/utils/webauthn-utils.js +343 -0
  119. package/lib/vendored/cookie.d.ts +120 -0
  120. package/lib/vendored/cookie.d.ts.map +1 -0
  121. package/lib/vendored/cookie.js +237 -0
  122. package/package.json +118 -0
  123. package/providers/42-school.d.ts +240 -0
  124. package/providers/42-school.d.ts.map +1 -0
  125. package/providers/42-school.js +78 -0
  126. package/providers/apple.d.ts +149 -0
  127. package/providers/apple.d.ts.map +1 -0
  128. package/providers/apple.js +104 -0
  129. package/providers/asgardeo.d.ts +102 -0
  130. package/providers/asgardeo.d.ts.map +1 -0
  131. package/providers/asgardeo.js +93 -0
  132. package/providers/atlassian.d.ts +94 -0
  133. package/providers/atlassian.d.ts.map +1 -0
  134. package/providers/atlassian.js +84 -0
  135. package/providers/auth0.d.ts +116 -0
  136. package/providers/auth0.d.ts.map +1 -0
  137. package/providers/auth0.js +49 -0
  138. package/providers/authentik.d.ts +90 -0
  139. package/providers/authentik.d.ts.map +1 -0
  140. package/providers/authentik.js +65 -0
  141. package/providers/azure-ad-b2c.d.ts +104 -0
  142. package/providers/azure-ad-b2c.d.ts.map +1 -0
  143. package/providers/azure-ad-b2c.js +100 -0
  144. package/providers/azure-ad.d.ts +19 -0
  145. package/providers/azure-ad.d.ts.map +1 -0
  146. package/providers/azure-ad.js +23 -0
  147. package/providers/azure-devops.d.ts +128 -0
  148. package/providers/azure-devops.d.ts.map +1 -0
  149. package/providers/azure-devops.js +158 -0
  150. package/providers/bankid-no.d.ts +134 -0
  151. package/providers/bankid-no.d.ts.map +1 -0
  152. package/providers/bankid-no.js +65 -0
  153. package/providers/battlenet.d.ts +85 -0
  154. package/providers/battlenet.d.ts.map +1 -0
  155. package/providers/battlenet.js +81 -0
  156. package/providers/beyondidentity.d.ts +77 -0
  157. package/providers/beyondidentity.d.ts.map +1 -0
  158. package/providers/beyondidentity.js +84 -0
  159. package/providers/bitbucket.d.ts +89 -0
  160. package/providers/bitbucket.d.ts.map +1 -0
  161. package/providers/bitbucket.js +92 -0
  162. package/providers/box.d.ts +63 -0
  163. package/providers/box.d.ts.map +1 -0
  164. package/providers/box.js +73 -0
  165. package/providers/boxyhq-saml.d.ts +121 -0
  166. package/providers/boxyhq-saml.d.ts.map +1 -0
  167. package/providers/boxyhq-saml.js +127 -0
  168. package/providers/bungie.d.ts +167 -0
  169. package/providers/bungie.d.ts.map +1 -0
  170. package/providers/bungie.js +174 -0
  171. package/providers/click-up.d.ts +75 -0
  172. package/providers/click-up.d.ts.map +1 -0
  173. package/providers/click-up.js +89 -0
  174. package/providers/cognito.d.ts +81 -0
  175. package/providers/cognito.d.ts.map +1 -0
  176. package/providers/cognito.js +73 -0
  177. package/providers/coinbase.d.ts +69 -0
  178. package/providers/coinbase.d.ts.map +1 -0
  179. package/providers/coinbase.js +78 -0
  180. package/providers/concept2.d.ts +81 -0
  181. package/providers/concept2.d.ts.map +1 -0
  182. package/providers/concept2.js +86 -0
  183. package/providers/credentials.d.ts +132 -0
  184. package/providers/credentials.d.ts.map +1 -0
  185. package/providers/credentials.js +74 -0
  186. package/providers/descope.d.ts +91 -0
  187. package/providers/descope.d.ts.map +1 -0
  188. package/providers/descope.js +78 -0
  189. package/providers/discord.d.ts +139 -0
  190. package/providers/discord.d.ts.map +1 -0
  191. package/providers/discord.js +86 -0
  192. package/providers/dribbble.d.ts +88 -0
  193. package/providers/dribbble.d.ts.map +1 -0
  194. package/providers/dribbble.js +85 -0
  195. package/providers/dropbox.d.ts +65 -0
  196. package/providers/dropbox.d.ts.map +1 -0
  197. package/providers/dropbox.js +88 -0
  198. package/providers/duende-identity-server6.d.ts +91 -0
  199. package/providers/duende-identity-server6.d.ts.map +1 -0
  200. package/providers/duende-identity-server6.js +80 -0
  201. package/providers/email.d.ts +41 -0
  202. package/providers/email.d.ts.map +1 -0
  203. package/providers/email.js +18 -0
  204. package/providers/eventbrite.d.ts +78 -0
  205. package/providers/eventbrite.d.ts.map +1 -0
  206. package/providers/eventbrite.js +88 -0
  207. package/providers/eveonline.d.ts +94 -0
  208. package/providers/eveonline.d.ts.map +1 -0
  209. package/providers/eveonline.js +92 -0
  210. package/providers/facebook.d.ts +84 -0
  211. package/providers/facebook.d.ts.map +1 -0
  212. package/providers/facebook.js +93 -0
  213. package/providers/faceit.d.ts +64 -0
  214. package/providers/faceit.d.ts.map +1 -0
  215. package/providers/faceit.js +74 -0
  216. package/providers/figma.d.ts +75 -0
  217. package/providers/figma.d.ts.map +1 -0
  218. package/providers/figma.js +81 -0
  219. package/providers/forwardemail.d.ts +4 -0
  220. package/providers/forwardemail.d.ts.map +1 -0
  221. package/providers/forwardemail.js +32 -0
  222. package/providers/foursquare.d.ts +71 -0
  223. package/providers/foursquare.d.ts.map +1 -0
  224. package/providers/foursquare.js +91 -0
  225. package/providers/freshbooks.d.ts +66 -0
  226. package/providers/freshbooks.d.ts.map +1 -0
  227. package/providers/freshbooks.js +76 -0
  228. package/providers/frontegg.d.ts +95 -0
  229. package/providers/frontegg.d.ts.map +1 -0
  230. package/providers/frontegg.js +88 -0
  231. package/providers/fusionauth.d.ts +279 -0
  232. package/providers/fusionauth.d.ts.map +1 -0
  233. package/providers/fusionauth.js +292 -0
  234. package/providers/github.d.ts +127 -0
  235. package/providers/github.d.ts.map +1 -0
  236. package/providers/github.js +115 -0
  237. package/providers/gitlab.d.ts +115 -0
  238. package/providers/gitlab.d.ts.map +1 -0
  239. package/providers/gitlab.js +75 -0
  240. package/providers/google.d.ts +138 -0
  241. package/providers/google.d.ts.map +1 -0
  242. package/providers/google.js +119 -0
  243. package/providers/hubspot.d.ts +76 -0
  244. package/providers/hubspot.d.ts.map +1 -0
  245. package/providers/hubspot.js +93 -0
  246. package/providers/huggingface.d.ts +216 -0
  247. package/providers/huggingface.d.ts.map +1 -0
  248. package/providers/huggingface.js +101 -0
  249. package/providers/identity-server4.d.ts +69 -0
  250. package/providers/identity-server4.d.ts.map +1 -0
  251. package/providers/identity-server4.js +64 -0
  252. package/providers/index.d.ts +61 -0
  253. package/providers/index.d.ts.map +1 -0
  254. package/providers/index.js +3 -0
  255. package/providers/instagram.d.ts +74 -0
  256. package/providers/instagram.d.ts.map +1 -0
  257. package/providers/instagram.js +87 -0
  258. package/providers/kakao.d.ts +148 -0
  259. package/providers/kakao.d.ts.map +1 -0
  260. package/providers/kakao.js +103 -0
  261. package/providers/keycloak.d.ts +100 -0
  262. package/providers/keycloak.d.ts.map +1 -0
  263. package/providers/keycloak.js +73 -0
  264. package/providers/kinde.d.ts +73 -0
  265. package/providers/kinde.d.ts.map +1 -0
  266. package/providers/kinde.js +51 -0
  267. package/providers/line.d.ts +83 -0
  268. package/providers/line.d.ts.map +1 -0
  269. package/providers/line.js +73 -0
  270. package/providers/linkedin.d.ts +77 -0
  271. package/providers/linkedin.d.ts.map +1 -0
  272. package/providers/linkedin.js +65 -0
  273. package/providers/logto.d.ts +98 -0
  274. package/providers/logto.d.ts.map +1 -0
  275. package/providers/logto.js +81 -0
  276. package/providers/loops.d.ts +40 -0
  277. package/providers/loops.d.ts.map +1 -0
  278. package/providers/loops.js +59 -0
  279. package/providers/mailchimp.d.ts +66 -0
  280. package/providers/mailchimp.d.ts.map +1 -0
  281. package/providers/mailchimp.js +76 -0
  282. package/providers/mailgun.d.ts +55 -0
  283. package/providers/mailgun.d.ts.map +1 -0
  284. package/providers/mailgun.js +74 -0
  285. package/providers/mailru.d.ts +63 -0
  286. package/providers/mailru.d.ts.map +1 -0
  287. package/providers/mailru.js +61 -0
  288. package/providers/mastodon.d.ts +90 -0
  289. package/providers/mastodon.d.ts.map +1 -0
  290. package/providers/mastodon.js +75 -0
  291. package/providers/mattermost.d.ts +132 -0
  292. package/providers/mattermost.d.ts.map +1 -0
  293. package/providers/mattermost.js +83 -0
  294. package/providers/medium.d.ts +68 -0
  295. package/providers/medium.d.ts.map +1 -0
  296. package/providers/medium.js +84 -0
  297. package/providers/microsoft-entra-id.d.ts +428 -0
  298. package/providers/microsoft-entra-id.d.ts.map +1 -0
  299. package/providers/microsoft-entra-id.js +156 -0
  300. package/providers/naver.d.ts +80 -0
  301. package/providers/naver.d.ts.map +1 -0
  302. package/providers/naver.js +79 -0
  303. package/providers/netlify.d.ts +66 -0
  304. package/providers/netlify.d.ts.map +1 -0
  305. package/providers/netlify.js +85 -0
  306. package/providers/netsuite.d.ts +189 -0
  307. package/providers/netsuite.d.ts.map +1 -0
  308. package/providers/netsuite.js +170 -0
  309. package/providers/nextcloud.d.ts +150 -0
  310. package/providers/nextcloud.d.ts.map +1 -0
  311. package/providers/nextcloud.js +99 -0
  312. package/providers/nodemailer.d.ts +27 -0
  313. package/providers/nodemailer.d.ts.map +1 -0
  314. package/providers/nodemailer.js +34 -0
  315. package/providers/notion.d.ts +99 -0
  316. package/providers/notion.d.ts.map +1 -0
  317. package/providers/notion.js +110 -0
  318. package/providers/oauth.d.ts +188 -0
  319. package/providers/oauth.d.ts.map +1 -0
  320. package/providers/oauth.js +1 -0
  321. package/providers/okta.d.ts +99 -0
  322. package/providers/okta.d.ts.map +1 -0
  323. package/providers/okta.js +63 -0
  324. package/providers/onelogin.d.ts +65 -0
  325. package/providers/onelogin.d.ts.map +1 -0
  326. package/providers/onelogin.js +61 -0
  327. package/providers/ory-hydra.d.ts +79 -0
  328. package/providers/ory-hydra.d.ts.map +1 -0
  329. package/providers/ory-hydra.js +67 -0
  330. package/providers/osso.d.ts +79 -0
  331. package/providers/osso.d.ts.map +1 -0
  332. package/providers/osso.js +77 -0
  333. package/providers/osu.d.ts +116 -0
  334. package/providers/osu.d.ts.map +1 -0
  335. package/providers/osu.js +75 -0
  336. package/providers/passage.d.ts +88 -0
  337. package/providers/passage.d.ts.map +1 -0
  338. package/providers/passage.js +75 -0
  339. package/providers/passkey.d.ts +65 -0
  340. package/providers/passkey.d.ts.map +1 -0
  341. package/providers/passkey.js +87 -0
  342. package/providers/patreon.d.ts +73 -0
  343. package/providers/patreon.d.ts.map +1 -0
  344. package/providers/patreon.js +77 -0
  345. package/providers/ping-id.d.ts +57 -0
  346. package/providers/ping-id.d.ts.map +1 -0
  347. package/providers/ping-id.js +40 -0
  348. package/providers/pinterest.d.ts +79 -0
  349. package/providers/pinterest.d.ts.map +1 -0
  350. package/providers/pinterest.js +85 -0
  351. package/providers/pipedrive.d.ts +99 -0
  352. package/providers/pipedrive.d.ts.map +1 -0
  353. package/providers/pipedrive.js +71 -0
  354. package/providers/postmark.d.ts +4 -0
  355. package/providers/postmark.d.ts.map +1 -0
  356. package/providers/postmark.js +36 -0
  357. package/providers/provider-types.d.ts +3 -0
  358. package/providers/provider-types.d.ts.map +1 -0
  359. package/providers/provider-types.js +1 -0
  360. package/providers/reddit.d.ts +88 -0
  361. package/providers/reddit.d.ts.map +1 -0
  362. package/providers/reddit.js +90 -0
  363. package/providers/resend.d.ts +4 -0
  364. package/providers/resend.d.ts.map +1 -0
  365. package/providers/resend.js +32 -0
  366. package/providers/roblox.d.ts +67 -0
  367. package/providers/roblox.d.ts.map +1 -0
  368. package/providers/roblox.js +53 -0
  369. package/providers/salesforce.d.ts +59 -0
  370. package/providers/salesforce.d.ts.map +1 -0
  371. package/providers/salesforce.js +52 -0
  372. package/providers/sendgrid.d.ts +4 -0
  373. package/providers/sendgrid.d.ts.map +1 -0
  374. package/providers/sendgrid.js +35 -0
  375. package/providers/simplelogin.d.ts +87 -0
  376. package/providers/simplelogin.d.ts.map +1 -0
  377. package/providers/simplelogin.js +83 -0
  378. package/providers/slack.d.ts +102 -0
  379. package/providers/slack.d.ts.map +1 -0
  380. package/providers/slack.js +69 -0
  381. package/providers/spotify.d.ts +75 -0
  382. package/providers/spotify.d.ts.map +1 -0
  383. package/providers/spotify.js +73 -0
  384. package/providers/strava.d.ts +68 -0
  385. package/providers/strava.d.ts.map +1 -0
  386. package/providers/strava.js +80 -0
  387. package/providers/threads.d.ts +108 -0
  388. package/providers/threads.d.ts.map +1 -0
  389. package/providers/threads.js +89 -0
  390. package/providers/tiktok.d.ts +248 -0
  391. package/providers/tiktok.d.ts.map +1 -0
  392. package/providers/tiktok.js +195 -0
  393. package/providers/todoist.d.ts +76 -0
  394. package/providers/todoist.d.ts.map +1 -0
  395. package/providers/todoist.js +97 -0
  396. package/providers/trakt.d.ts +93 -0
  397. package/providers/trakt.d.ts.map +1 -0
  398. package/providers/trakt.js +91 -0
  399. package/providers/twitch.d.ts +71 -0
  400. package/providers/twitch.d.ts.map +1 -0
  401. package/providers/twitch.js +96 -0
  402. package/providers/twitter.d.ts +183 -0
  403. package/providers/twitter.d.ts.map +1 -0
  404. package/providers/twitter.js +100 -0
  405. package/providers/united-effects.d.ts +80 -0
  406. package/providers/united-effects.d.ts.map +1 -0
  407. package/providers/united-effects.js +72 -0
  408. package/providers/vipps.d.ts +71 -0
  409. package/providers/vipps.d.ts.map +1 -0
  410. package/providers/vipps.js +33 -0
  411. package/providers/vk.d.ts +334 -0
  412. package/providers/vk.d.ts.map +1 -0
  413. package/providers/vk.js +103 -0
  414. package/providers/webauthn.d.ts +148 -0
  415. package/providers/webauthn.d.ts.map +1 -0
  416. package/providers/webauthn.js +128 -0
  417. package/providers/webex.d.ts +78 -0
  418. package/providers/webex.d.ts.map +1 -0
  419. package/providers/webex.js +73 -0
  420. package/providers/wechat.d.ts +78 -0
  421. package/providers/wechat.d.ts.map +1 -0
  422. package/providers/wechat.js +105 -0
  423. package/providers/wikimedia.d.ts +99 -0
  424. package/providers/wikimedia.d.ts.map +1 -0
  425. package/providers/wikimedia.js +90 -0
  426. package/providers/wordpress.d.ts +65 -0
  427. package/providers/wordpress.d.ts.map +1 -0
  428. package/providers/wordpress.js +71 -0
  429. package/providers/workos.d.ts +154 -0
  430. package/providers/workos.d.ts.map +1 -0
  431. package/providers/workos.js +143 -0
  432. package/providers/yandex.d.ts +131 -0
  433. package/providers/yandex.d.ts.map +1 -0
  434. package/providers/yandex.js +80 -0
  435. package/providers/zitadel.d.ts +117 -0
  436. package/providers/zitadel.d.ts.map +1 -0
  437. package/providers/zitadel.js +95 -0
  438. package/providers/zoho.d.ts +63 -0
  439. package/providers/zoho.d.ts.map +1 -0
  440. package/providers/zoho.js +79 -0
  441. package/providers/zoom.d.ts +93 -0
  442. package/providers/zoom.d.ts.map +1 -0
  443. package/providers/zoom.js +82 -0
  444. package/src/adapters/server-actions-helpers.ts +126 -0
  445. package/src/adapters.ts +603 -0
  446. package/src/errors.ts +551 -0
  447. package/src/index.ts +689 -0
  448. package/src/jwt.ts +283 -0
  449. package/src/lib/actions/callback/handle-login.ts +334 -0
  450. package/src/lib/actions/callback/index.ts +554 -0
  451. package/src/lib/actions/callback/oauth/callback.ts +347 -0
  452. package/src/lib/actions/callback/oauth/checks.ts +258 -0
  453. package/src/lib/actions/callback/oauth/csrf-token.ts +60 -0
  454. package/src/lib/actions/index.ts +5 -0
  455. package/src/lib/actions/session.ts +167 -0
  456. package/src/lib/actions/signin/authorization-url.ts +123 -0
  457. package/src/lib/actions/signin/index.ts +37 -0
  458. package/src/lib/actions/signin/send-token.ts +124 -0
  459. package/src/lib/actions/signout.ts +38 -0
  460. package/src/lib/actions/webauthn-options.ts +100 -0
  461. package/src/lib/index.ts +97 -0
  462. package/src/lib/init.ts +236 -0
  463. package/src/lib/pages/error.tsx +106 -0
  464. package/src/lib/pages/index.ts +181 -0
  465. package/src/lib/pages/signin.tsx +255 -0
  466. package/src/lib/pages/signout.tsx +49 -0
  467. package/src/lib/pages/styles.css +377 -0
  468. package/src/lib/pages/styles.ts +381 -0
  469. package/src/lib/pages/verify-request.tsx +36 -0
  470. package/src/lib/symbols.ts +60 -0
  471. package/src/lib/utils/actions.ts +17 -0
  472. package/src/lib/utils/assert.ts +259 -0
  473. package/src/lib/utils/callback-url.ts +42 -0
  474. package/src/lib/utils/cookie.ts +248 -0
  475. package/src/lib/utils/date.ts +8 -0
  476. package/src/lib/utils/email.ts +65 -0
  477. package/src/lib/utils/env.ts +113 -0
  478. package/src/lib/utils/logger.ts +75 -0
  479. package/src/lib/utils/merge.ts +30 -0
  480. package/src/lib/utils/providers.ts +203 -0
  481. package/src/lib/utils/session.ts +41 -0
  482. package/src/lib/utils/web.ts +151 -0
  483. package/src/lib/utils/webauthn-client.js +229 -0
  484. package/src/lib/utils/webauthn-utils.ts +531 -0
  485. package/src/lib/vendored/cookie.ts +383 -0
  486. package/src/providers/42-school.ts +256 -0
  487. package/src/providers/apple.ts +206 -0
  488. package/src/providers/asgardeo.ts +118 -0
  489. package/src/providers/atlassian.ts +120 -0
  490. package/src/providers/auth0.ts +127 -0
  491. package/src/providers/authentik.ts +100 -0
  492. package/src/providers/azure-ad-b2c.ts +124 -0
  493. package/src/providers/azure-ad.ts +30 -0
  494. package/src/providers/azure-devops.ts +184 -0
  495. package/src/providers/bankid-no.ts +161 -0
  496. package/src/providers/battlenet.ts +107 -0
  497. package/src/providers/beyondidentity.ts +102 -0
  498. package/src/providers/bitbucket.ts +122 -0
  499. package/src/providers/box.ts +87 -0
  500. package/src/providers/boxyhq-saml.ts +148 -0
  501. package/src/providers/bungie.ts +192 -0
  502. package/src/providers/click-up.ts +104 -0
  503. package/src/providers/cognito.ts +94 -0
  504. package/src/providers/coinbase.ts +93 -0
  505. package/src/providers/concept2.ts +108 -0
  506. package/src/providers/credentials.ts +157 -0
  507. package/src/providers/descope.ts +105 -0
  508. package/src/providers/discord.ts +176 -0
  509. package/src/providers/dribbble.ts +122 -0
  510. package/src/providers/dropbox.ts +102 -0
  511. package/src/providers/duende-identity-server6.ts +101 -0
  512. package/src/providers/email.ts +60 -0
  513. package/src/providers/eventbrite.ts +105 -0
  514. package/src/providers/eveonline.ts +117 -0
  515. package/src/providers/facebook.ts +119 -0
  516. package/src/providers/faceit.ts +90 -0
  517. package/src/providers/figma.ts +105 -0
  518. package/src/providers/forwardemail.ts +37 -0
  519. package/src/providers/foursquare.ts +105 -0
  520. package/src/providers/freshbooks.ts +90 -0
  521. package/src/providers/frontegg.ts +111 -0
  522. package/src/providers/fusionauth.ts +336 -0
  523. package/src/providers/github.ts +187 -0
  524. package/src/providers/gitlab.ts +140 -0
  525. package/src/providers/google.ts +152 -0
  526. package/src/providers/hubspot.ts +117 -0
  527. package/src/providers/huggingface.ts +234 -0
  528. package/src/providers/identity-server4.ts +78 -0
  529. package/src/providers/index.ts +115 -0
  530. package/src/providers/instagram.ts +103 -0
  531. package/src/providers/kakao.ts +184 -0
  532. package/src/providers/keycloak.ts +111 -0
  533. package/src/providers/kinde.ts +85 -0
  534. package/src/providers/line.ts +99 -0
  535. package/src/providers/linkedin.ts +91 -0
  536. package/src/providers/logto.ts +122 -0
  537. package/src/providers/loops.ts +79 -0
  538. package/src/providers/mailchimp.ts +90 -0
  539. package/src/providers/mailgun.ts +98 -0
  540. package/src/providers/mailru.ts +75 -0
  541. package/src/providers/mastodon.ts +112 -0
  542. package/src/providers/mattermost.ts +154 -0
  543. package/src/providers/medium.ts +89 -0
  544. package/src/providers/microsoft-entra-id.ts +497 -0
  545. package/src/providers/naver.ts +102 -0
  546. package/src/providers/netlify.ts +90 -0
  547. package/src/providers/netsuite.ts +225 -0
  548. package/src/providers/nextcloud.ts +207 -0
  549. package/src/providers/nodemailer.ts +84 -0
  550. package/src/providers/notion.ts +166 -0
  551. package/src/providers/oauth.ts +310 -0
  552. package/src/providers/okta.ts +111 -0
  553. package/src/providers/onelogin.ts +75 -0
  554. package/src/providers/ory-hydra.ts +93 -0
  555. package/src/providers/osso.ts +91 -0
  556. package/src/providers/osu.ts +138 -0
  557. package/src/providers/passage.ts +103 -0
  558. package/src/providers/passkey.ts +94 -0
  559. package/src/providers/patreon.ts +98 -0
  560. package/src/providers/ping-id.ts +68 -0
  561. package/src/providers/pinterest.ts +106 -0
  562. package/src/providers/pipedrive.ts +120 -0
  563. package/src/providers/postmark.ts +38 -0
  564. package/src/providers/provider-types.ts +107 -0
  565. package/src/providers/reddit.ts +104 -0
  566. package/src/providers/resend.ts +35 -0
  567. package/src/providers/roblox.ts +94 -0
  568. package/src/providers/salesforce.ts +73 -0
  569. package/src/providers/sendgrid.ts +36 -0
  570. package/src/providers/simplelogin.ts +107 -0
  571. package/src/providers/slack.ts +115 -0
  572. package/src/providers/spotify.ts +99 -0
  573. package/src/providers/strava.ts +101 -0
  574. package/src/providers/threads.ts +135 -0
  575. package/src/providers/tiktok.ts +319 -0
  576. package/src/providers/todoist.ts +122 -0
  577. package/src/providers/trakt.ts +120 -0
  578. package/src/providers/twitch.ts +121 -0
  579. package/src/providers/twitter.ts +207 -0
  580. package/src/providers/united-effects.ts +89 -0
  581. package/src/providers/vipps.ts +86 -0
  582. package/src/providers/vk.ts +401 -0
  583. package/src/providers/webauthn.ts +296 -0
  584. package/src/providers/webex.ts +102 -0
  585. package/src/providers/wechat.ts +141 -0
  586. package/src/providers/wikimedia.ts +258 -0
  587. package/src/providers/wordpress.ts +86 -0
  588. package/src/providers/workos.ts +180 -0
  589. package/src/providers/yandex.ts +159 -0
  590. package/src/providers/zitadel.ts +128 -0
  591. package/src/providers/zoho.ts +84 -0
  592. package/src/providers/zoom.ts +119 -0
  593. package/src/types.ts +430 -0
  594. package/src/warnings.ts +21 -0
  595. package/types.d.ts +309 -0
  596. package/types.d.ts.map +1 -0
  597. package/types.js +53 -0
  598. package/warnings.d.ts +17 -0
  599. package/warnings.d.ts.map +1 -0
  600. package/warnings.js +1 -0
@@ -0,0 +1,110 @@
1
+ /**
2
+ * <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>Notion</b> integration.</span>
4
+ * <a href="https://notion.so">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/notion.svg" height="48" width="48"/>
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/notion
10
+ */
11
+ const NOTION_HOST = "https://api.notion.com";
12
+ const NOTION_API_VERSION = "2022-06-28";
13
+ /**
14
+ * Add Notion login to your page.
15
+ *
16
+ * ### Setup
17
+ *
18
+ * #### Callback URL
19
+ * ```
20
+ * https://example.com/api/auth/callback/notion
21
+ * ```
22
+ *
23
+ * #### Configuration
24
+ *```ts
25
+ * import { Auth } from "@auth/core"
26
+ * import Notion from "@auth/core/providers/notion"
27
+ *
28
+ * const request = new Request(origin)
29
+ * const response = await Auth(request, {
30
+ * providers: [
31
+ * Notion({
32
+ * clientId: NOTION_CLIENT_ID,
33
+ * clientSecret: NOTION_CLIENT_SECRET,
34
+ * redirectUri: NOTION_CLIENT_REDIRECT_URI,
35
+ * }),
36
+ * ],
37
+ * })
38
+ * ```
39
+ *
40
+ * ### Resources
41
+ * - [Notion Docs](https://developers.notion.com/docs)
42
+ * - [Notion Authorization Docs](https://developers.notion.com/docs/authorization)
43
+ * - [Notion Integrations](https://www.notion.so/my-integrations)
44
+ *
45
+ * ### Notes
46
+ * You need to select "Public Integration" on the configuration page to get an `oauth_id` and `oauth_secret`. Private integrations do not provide these details.
47
+ * You must provide a `clientId` and `clientSecret` to use this provider, as-well as a redirect URI (due to this being required by Notion endpoint to fetch tokens).
48
+ *
49
+ * :::tip
50
+ *
51
+ * The Notion provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/notion.ts).
52
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
53
+ *
54
+ * :::
55
+ *
56
+ * :::info **Disclaimer**
57
+ *
58
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
59
+ *
60
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
61
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
62
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
63
+ *
64
+ * :::
65
+ */
66
+ export default function NotionProvider(options) {
67
+ return {
68
+ id: "notion",
69
+ name: "Notion",
70
+ type: "oauth",
71
+ token: {
72
+ url: `${NOTION_HOST}/v1/oauth/token`,
73
+ },
74
+ userinfo: {
75
+ url: `${NOTION_HOST}/v1/users`,
76
+ // The result of this method will be the input to the `profile` callback.
77
+ // We use a custom request handler, since we need to do things such as pass the "Notion-Version" header
78
+ // More info: https://authjs.dev/getting-started/providers/notion
79
+ async request(context) {
80
+ const profile = await fetch(`${NOTION_HOST}/v1/users/me`, {
81
+ headers: {
82
+ Authorization: `Bearer ${context.tokens.access_token}`,
83
+ "Notion-Version": NOTION_API_VERSION,
84
+ },
85
+ });
86
+ const { bot: { owner: { user }, }, } = await profile.json();
87
+ return user;
88
+ },
89
+ },
90
+ authorization: {
91
+ params: {
92
+ client_id: options.clientId,
93
+ response_type: "code",
94
+ owner: "user",
95
+ redirect_uri: options.redirectUri,
96
+ },
97
+ url: `${NOTION_HOST}/v1/oauth/authorize`,
98
+ },
99
+ async profile(profile) {
100
+ return {
101
+ id: profile.id,
102
+ name: profile.name,
103
+ email: profile.person.email,
104
+ image: profile.avatar_url,
105
+ };
106
+ },
107
+ style: { bg: "#fff", text: "#000" },
108
+ options,
109
+ };
110
+ }
@@ -0,0 +1,188 @@
1
+ import type { Client } from "oauth4webapi";
2
+ import type { CommonProviderOptions } from "../providers/index.js";
3
+ import type { Awaitable, Profile, TokenSet, User } from "../types.js";
4
+ import type { AuthConfig } from "../index.js";
5
+ import type { customFetch } from "../lib/symbols.js";
6
+ type AuthorizationParameters = any;
7
+ type CallbackParamsType = any;
8
+ type IssuerMetadata = any;
9
+ type OAuthCallbackChecks = any;
10
+ type OpenIDCallbackChecks = any;
11
+ export type { OAuthProviderId } from "./provider-types.js";
12
+ export type OAuthChecks = OpenIDCallbackChecks | OAuthCallbackChecks;
13
+ type PartialIssuer = Partial<Pick<IssuerMetadata, "jwks_endpoint" | "issuer">>;
14
+ type UrlParams = Record<string, unknown>;
15
+ export type AuthorizationEndpointHandler = EndpointHandler<AuthorizationParameters>;
16
+ export type TokenEndpointHandler = EndpointHandler<UrlParams, {
17
+ /**
18
+ * Parameters extracted from the request to the `/api/auth/callback/:providerId` endpoint.
19
+ * Contains params like `state`.
20
+ */
21
+ params: CallbackParamsType;
22
+ /**
23
+ * When using this custom flow, make sure to do all the necessary security checks.
24
+ * This object contains parameters you have to match against the request to make sure it is valid.
25
+ */
26
+ checks: OAuthChecks;
27
+ }, {
28
+ tokens: TokenSet;
29
+ }>;
30
+ export type UserinfoEndpointHandler = EndpointHandler<UrlParams, {
31
+ tokens: TokenSet;
32
+ }, Profile>;
33
+ export type ProfileCallback<Profile> = (profile: Profile, tokens: TokenSet) => Awaitable<User>;
34
+ export type AccountCallback = (tokens: TokenSet) => TokenSet | undefined | void;
35
+ export interface OAuthProviderButtonStyles {
36
+ logo?: string;
37
+ /**
38
+ * @deprecated
39
+ */
40
+ text?: string;
41
+ /**
42
+ * @deprecated Please use 'brandColor' instead
43
+ */
44
+ bg?: string;
45
+ brandColor?: string;
46
+ }
47
+ /** TODO: Document */
48
+ export interface OAuth2Config<Profile> extends CommonProviderOptions, PartialIssuer {
49
+ /**
50
+ * Identifies the provider when you want to sign in to
51
+ * a specific provider.
52
+ *
53
+ * @example
54
+ * ```ts
55
+ * signIn('github') // "github" is the provider ID
56
+ * ```
57
+ */
58
+ id: string;
59
+ /** The name of the provider. shown on the default sign in page. */
60
+ name: string;
61
+ /**
62
+ * OpenID Connect (OIDC) compliant providers can configure
63
+ * this instead of `authorize`/`token`/`userinfo` options
64
+ * without further configuration needed in most cases.
65
+ * You can still use the `authorize`/`token`/`userinfo`
66
+ * options for advanced control.
67
+ *
68
+ * [Authorization Server Metadata](https://datatracker.ietf.org/doc/html/rfc8414#section-3)
69
+ */
70
+ wellKnown?: string;
71
+ issuer?: string;
72
+ /**
73
+ * The login process will be initiated by sending the user to this URL.
74
+ *
75
+ * [Authorization endpoint](https://datatracker.ietf.org/doc/html/rfc6749#section-3.1)
76
+ */
77
+ authorization?: string | AuthorizationEndpointHandler;
78
+ token?: string | TokenEndpointHandler;
79
+ userinfo?: string | UserinfoEndpointHandler;
80
+ type: "oauth";
81
+ /**
82
+ * Receives the full {@link Profile} returned by the OAuth provider, and returns a subset.
83
+ * It is used to create the user in the database.
84
+ *
85
+ * Defaults to: `id`, `email`, `name`, `image`
86
+ *
87
+ * @see [Database Adapter: User model](https://authjs.dev/reference/core/adapters#user)
88
+ */
89
+ profile?: ProfileCallback<Profile>;
90
+ /**
91
+ * Receives the full {@link TokenSet} returned by the OAuth provider, and returns a subset.
92
+ * It is used to create the account associated with a user in the database.
93
+ *
94
+ * :::note
95
+ * You need to adjust your database's [Account model](https://authjs.dev/reference/core/adapters#account) to match the returned properties.
96
+ * Check out the documentation of your [database adapter](https://authjs.dev/reference/core/adapters) for more information.
97
+ * :::
98
+ *
99
+ * Defaults to: `access_token`, `id_token`, `refresh_token`, `expires_at`, `scope`, `token_type`, `session_state`
100
+ *
101
+ * @example
102
+ * ```ts
103
+ * import GitHub from "@auth/core/providers/github"
104
+ * // ...
105
+ * GitHub({
106
+ * account(account) {
107
+ * // https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/refreshing-user-access-tokens#refreshing-a-user-access-token-with-a-refresh-token
108
+ * const refresh_token_expires_at =
109
+ * Math.floor(Date.now() / 1000) + Number(account.refresh_token_expires_in)
110
+ * return {
111
+ * access_token: account.access_token,
112
+ * expires_at: account.expires_at,
113
+ * refresh_token: account.refresh_token,
114
+ * refresh_token_expires_at
115
+ * }
116
+ * }
117
+ * })
118
+ * ```
119
+ *
120
+ * @see [Database Adapter: Account model](https://authjs.dev/reference/core/adapters#account)
121
+ * @see https://openid.net/specs/openid-connect-core-1_0.html#TokenResponse
122
+ * @see https://www.ietf.org/rfc/rfc6749.html#section-5.1
123
+ */
124
+ account?: AccountCallback;
125
+ /**
126
+ * The CSRF protection performed on the callback endpoint.
127
+ * @default ["pkce"]
128
+ *
129
+ * @note When `redirectProxyUrl` or {@link AuthConfig.redirectProxyUrl} is set,
130
+ * `"state"` will be added to checks automatically.
131
+ *
132
+ * [RFC 7636 - Proof Key for Code Exchange by OAuth Public Clients (PKCE)](https://www.rfc-editor.org/rfc/rfc7636.html#section-4) |
133
+ * [RFC 6749 - The OAuth 2.0 Authorization Framework](https://www.rfc-editor.org/rfc/rfc6749.html#section-4.1.1) |
134
+ * [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#IDToken) |
135
+ */
136
+ checks?: Array<"pkce" | "state" | "none">;
137
+ clientId?: string;
138
+ clientSecret?: string;
139
+ /**
140
+ * Pass overrides to the underlying OAuth library.
141
+ * See [`oauth4webapi` client](https://github.com/panva/oauth4webapi/blob/main/docs/interfaces/Client.md) for details.
142
+ */
143
+ client?: Partial<Client & {
144
+ token_endpoint_auth_method: string;
145
+ }>;
146
+ style?: OAuthProviderButtonStyles;
147
+ /**
148
+ * Normally, when you sign in with an OAuth provider and another account
149
+ * with the same email address already exists,
150
+ * the accounts are not linked automatically.
151
+ *
152
+ * Automatic account linking on sign in is not secure
153
+ * between arbitrary providers and is disabled by default.
154
+ * Learn more in our [Security FAQ](https://authjs.dev/concepts#security).
155
+ *
156
+ * However, it may be desirable to allow automatic account linking if you trust that the provider involved has securely verified the email address
157
+ * associated with the account. Set `allowDangerousEmailAccountLinking: true`
158
+ * to enable automatic account linking.
159
+ */
160
+ allowDangerousEmailAccountLinking?: boolean;
161
+ redirectProxyUrl?: AuthConfig["redirectProxyUrl"];
162
+ /** @see {customFetch} */
163
+ [customFetch]?: typeof fetch;
164
+ options?: OAuthUserConfig<Profile>;
165
+ }
166
+ /**
167
+ * Extension of the {@link OAuth2Config}.
168
+ *
169
+ * @see https://openid.net/specs/openid-connect-core-1_0.html
170
+ */
171
+ export interface OIDCConfig<Profile> extends Omit<OAuth2Config<Profile>, "type" | "checks"> {
172
+ type: "oidc";
173
+ checks?: Array<NonNullable<OAuth2Config<Profile>["checks"]>[number] | "nonce">;
174
+ /**
175
+ * If set to `false`, the `userinfo_endpoint` will be fetched for the user data.
176
+ * @note An `id_token` is still required to be returned during the authorization flow.
177
+ */
178
+ idToken?: boolean;
179
+ }
180
+ export type OAuthConfig<Profile> = OIDCConfig<Profile> | OAuth2Config<Profile>;
181
+ export type OAuthEndpointType = "authorization" | "token" | "userinfo";
182
+ export type OIDCConfigInternal<Profile> = OAuthConfigInternal<Profile> & {
183
+ checks: OIDCConfig<Profile>["checks"];
184
+ idToken: OIDCConfig<Profile>["idToken"];
185
+ };
186
+ export type OAuthUserConfig<Profile> = Omit<Partial<OAuthConfig<Profile>>, "options" | "type">;
187
+ export type OIDCUserConfig<Profile> = Omit<Partial<OIDCConfig<Profile>>, "options" | "type">;
188
+ //# sourceMappingURL=oauth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/providers/oauth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,99 @@
1
+ /**
2
+ * <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>Okta</b> integration.</span>
4
+ * <a href="https://okta.com/">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/okta.svg" height="48" />
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/okta
10
+ */
11
+ import type { OAuthConfig, OAuthUserConfig } from "./index.js";
12
+ export interface OktaProfile extends Record<string, any> {
13
+ iss: string;
14
+ ver: string;
15
+ sub: string;
16
+ aud: string;
17
+ iat: string;
18
+ exp: string;
19
+ jti: string;
20
+ auth_time: string;
21
+ amr: string;
22
+ idp: string;
23
+ nonce: string;
24
+ name: string;
25
+ nickname: string;
26
+ preferred_username: string;
27
+ given_name: string;
28
+ middle_name: string;
29
+ family_name: string;
30
+ email: string;
31
+ email_verified: string;
32
+ profile: string;
33
+ zoneinfo: string;
34
+ locale: string;
35
+ address: string;
36
+ phone_number: string;
37
+ picture: string;
38
+ website: string;
39
+ gender: string;
40
+ birthdate: string;
41
+ updated_at: string;
42
+ at_hash: string;
43
+ c_hash: string;
44
+ }
45
+ /**
46
+ * Add Okta login to your page.
47
+ *
48
+ * ### Setup
49
+ *
50
+ * #### Callback URL
51
+ * ```
52
+ * https://example.com/api/auth/callback/okta
53
+ * ```
54
+ *
55
+ * #### Configuration
56
+ *```ts
57
+ * import { Auth } from "@auth/core"
58
+ * import Okta from "@auth/core/providers/okta"
59
+ *
60
+ * const request = new Request(origin)
61
+ * const response = await Auth(request, {
62
+ * providers: [
63
+ * Okta({
64
+ * clientId: OKTA_CLIENT_ID,
65
+ * clientSecret: OKTA_CLIENT_SECRET,
66
+ * issuer: OKTA_ISSUER,
67
+ * }),
68
+ * ],
69
+ * })
70
+ * ```
71
+ *
72
+ * ### Resources
73
+ *
74
+ * - [Okta OAuth documentation](https://developer.okta.com/docs/reference/api/oidc)
75
+ *
76
+ * ### Notes
77
+ *
78
+ * By default, Auth.js assumes that the Okta provider is
79
+ * based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
80
+ *
81
+ * :::tip
82
+ *
83
+ * The Okta provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/okta.ts).
84
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
85
+ *
86
+ * :::
87
+ *
88
+ * :::info **Disclaimer**
89
+ *
90
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
91
+ *
92
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
93
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
94
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
95
+ *
96
+ * :::
97
+ */
98
+ export default function Okta<P extends OktaProfile>(options: OAuthUserConfig<P>): OAuthConfig<P>;
99
+ //# sourceMappingURL=okta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"okta.d.ts","sourceRoot":"","sources":["../src/providers/okta.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE9D,MAAM,WAAW,WAAY,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACtD,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC,SAAS,WAAW,EAChD,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAC1B,WAAW,CAAC,CAAC,CAAC,CAShB"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Add Okta login to your page.
3
+ *
4
+ * ### Setup
5
+ *
6
+ * #### Callback URL
7
+ * ```
8
+ * https://example.com/api/auth/callback/okta
9
+ * ```
10
+ *
11
+ * #### Configuration
12
+ *```ts
13
+ * import { Auth } from "@auth/core"
14
+ * import Okta from "@auth/core/providers/okta"
15
+ *
16
+ * const request = new Request(origin)
17
+ * const response = await Auth(request, {
18
+ * providers: [
19
+ * Okta({
20
+ * clientId: OKTA_CLIENT_ID,
21
+ * clientSecret: OKTA_CLIENT_SECRET,
22
+ * issuer: OKTA_ISSUER,
23
+ * }),
24
+ * ],
25
+ * })
26
+ * ```
27
+ *
28
+ * ### Resources
29
+ *
30
+ * - [Okta OAuth documentation](https://developer.okta.com/docs/reference/api/oidc)
31
+ *
32
+ * ### Notes
33
+ *
34
+ * By default, Auth.js assumes that the Okta provider is
35
+ * based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
36
+ *
37
+ * :::tip
38
+ *
39
+ * The Okta provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/okta.ts).
40
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
41
+ *
42
+ * :::
43
+ *
44
+ * :::info **Disclaimer**
45
+ *
46
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
47
+ *
48
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
49
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
50
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
51
+ *
52
+ * :::
53
+ */
54
+ export default function Okta(options) {
55
+ return {
56
+ id: "okta",
57
+ name: "Okta",
58
+ type: "oidc",
59
+ style: { bg: "#000", text: "#fff" },
60
+ checks: ["pkce", "state"],
61
+ options,
62
+ };
63
+ }
@@ -0,0 +1,65 @@
1
+ /**
2
+ * <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>OneLogin</b> integration.</span>
4
+ * <a href="https://onelogin.com/">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/onelogin.svg" height="48" />
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/onelogin
10
+ */
11
+ import type { OAuthConfig, OAuthUserConfig } from "./index.js";
12
+ /**
13
+ * Add OneLogin login to your page.
14
+ *
15
+ * ### Setup
16
+ *
17
+ * #### Callback URL
18
+ * ```
19
+ * https://example.com/api/auth/callback/onelogin
20
+ * ```
21
+ *
22
+ * #### Configuration
23
+ *```ts
24
+ * import { Auth } from "@auth/core"
25
+ * import OneLogin from "@auth/core/providers/onelogin"
26
+ *
27
+ * const request = new Request(origin)
28
+ * const response = await Auth(request, {
29
+ * providers: [
30
+ * OneLogin({
31
+ * clientId: ONELOGIN_CLIENT_ID,
32
+ * clientSecret: ONELOGIN_CLIENT_SECRET,
33
+ * }),
34
+ * ],
35
+ * })
36
+ * ```
37
+ *
38
+ * ### Resources
39
+ *
40
+ * - [OneLogin OAuth documentation](https://example.com)
41
+ *
42
+ * ### Notes
43
+ *
44
+ * By default, Auth.js assumes that the OneLogin provider is
45
+ * based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
46
+ *
47
+ * :::tip
48
+ *
49
+ * The OneLogin provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/onelogin.ts).
50
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
51
+ *
52
+ * :::
53
+ *
54
+ * :::info **Disclaimer**
55
+ *
56
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
57
+ *
58
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
59
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
60
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
61
+ *
62
+ * :::
63
+ */
64
+ export default function OneLogin(config: OAuthUserConfig<Record<string, any>>): OAuthConfig<Record<string, any>>;
65
+ //# sourceMappingURL=onelogin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onelogin.d.ts","sourceRoot":"","sources":["../src/providers/onelogin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAC3C,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAQlC"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Add OneLogin login to your page.
3
+ *
4
+ * ### Setup
5
+ *
6
+ * #### Callback URL
7
+ * ```
8
+ * https://example.com/api/auth/callback/onelogin
9
+ * ```
10
+ *
11
+ * #### Configuration
12
+ *```ts
13
+ * import { Auth } from "@auth/core"
14
+ * import OneLogin from "@auth/core/providers/onelogin"
15
+ *
16
+ * const request = new Request(origin)
17
+ * const response = await Auth(request, {
18
+ * providers: [
19
+ * OneLogin({
20
+ * clientId: ONELOGIN_CLIENT_ID,
21
+ * clientSecret: ONELOGIN_CLIENT_SECRET,
22
+ * }),
23
+ * ],
24
+ * })
25
+ * ```
26
+ *
27
+ * ### Resources
28
+ *
29
+ * - [OneLogin OAuth documentation](https://example.com)
30
+ *
31
+ * ### Notes
32
+ *
33
+ * By default, Auth.js assumes that the OneLogin provider is
34
+ * based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
35
+ *
36
+ * :::tip
37
+ *
38
+ * The OneLogin provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/onelogin.ts).
39
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
40
+ *
41
+ * :::
42
+ *
43
+ * :::info **Disclaimer**
44
+ *
45
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
46
+ *
47
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
48
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
49
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
50
+ *
51
+ * :::
52
+ */
53
+ export default function OneLogin(config) {
54
+ return {
55
+ id: "onelogin",
56
+ name: "OneLogin",
57
+ type: "oidc",
58
+ wellKnown: `${config.issuer}/oidc/2/.well-known/openid-configuration`,
59
+ options: config,
60
+ };
61
+ }