@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,83 @@
1
+ /**
2
+ * <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>LINE</b> integration.</span>
4
+ * <a href="https://LINE.com">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/line.svg" height="48" width="48"/>
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/line
10
+ */
11
+ import type { OAuthConfig, OAuthUserConfig } from "./index.js";
12
+ export interface LineProfile extends Record<string, any> {
13
+ iss: string;
14
+ sub: string;
15
+ aud: string;
16
+ exp: number;
17
+ iat: number;
18
+ amr: string[];
19
+ name: string;
20
+ picture: string;
21
+ user: any;
22
+ }
23
+ /**
24
+ * Add LINE login to your page.
25
+ *
26
+ * ### Setup
27
+ *
28
+ * #### Callback URL
29
+ * ```
30
+ * https://example.com/api/auth/callback/line
31
+ * ```
32
+ *
33
+ * #### Configuration
34
+ *```ts
35
+ * import { Auth } from "@auth/core"
36
+ * import LINE from "@auth/core/providers/line"
37
+ *
38
+ * const request = new Request(origin)
39
+ * const response = await Auth(request, {
40
+ * providers: [
41
+ * LINE({ clientId: LINE_CLIENT_ID, clientSecret: LINE_CLIENT_SECRET }),
42
+ * ],
43
+ * })
44
+ * ```
45
+ *
46
+ * ### Resources
47
+ *
48
+ * - [LINE Login documentation](https://developers.line.biz/en/docs/line-login/integrate-line-login/)
49
+ * - [LINE app console](https://developers.line.biz/console/)
50
+ *
51
+ * ## Configuration
52
+ * Create a provider and a LINE login channel at https://developers.line.biz/console/. In the settings of the channel under LINE Login, activate web app and configure the following: Callback URL `http://localhost:3000/api/auth/callback/line`
53
+ *
54
+ * ### Notes
55
+ *
56
+ * By default, Auth.js assumes that the LINE provider is
57
+ * based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
58
+ *
59
+ * :::tip
60
+ *
61
+ * To retrieve email address, you need to apply for Email address permission. Open [Line Developer Console](https://developers.line.biz/console/), go to your Login Channel. Scroll down bottom to find **OpenID Connect** -> **Email address permission**. Click **Apply** and follow the instruction.
62
+ *
63
+ * :::
64
+ *
65
+ * :::tip
66
+ *
67
+ * The LINE provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/line.ts).
68
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
69
+ *
70
+ * :::
71
+ *
72
+ * :::info **Disclaimer**
73
+ *
74
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
75
+ *
76
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
77
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
78
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
79
+ *
80
+ * :::
81
+ */
82
+ export default function LINE<P extends LineProfile>(options: OAuthUserConfig<P>): OAuthConfig<P>;
83
+ //# sourceMappingURL=line.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../src/providers/line.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,EAAE,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,GAAG,CAAA;CACV;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC,SAAS,WAAW,EAChD,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAC1B,WAAW,CAAC,CAAC,CAAC,CAahB"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Add LINE login to your page.
3
+ *
4
+ * ### Setup
5
+ *
6
+ * #### Callback URL
7
+ * ```
8
+ * https://example.com/api/auth/callback/line
9
+ * ```
10
+ *
11
+ * #### Configuration
12
+ *```ts
13
+ * import { Auth } from "@auth/core"
14
+ * import LINE from "@auth/core/providers/line"
15
+ *
16
+ * const request = new Request(origin)
17
+ * const response = await Auth(request, {
18
+ * providers: [
19
+ * LINE({ clientId: LINE_CLIENT_ID, clientSecret: LINE_CLIENT_SECRET }),
20
+ * ],
21
+ * })
22
+ * ```
23
+ *
24
+ * ### Resources
25
+ *
26
+ * - [LINE Login documentation](https://developers.line.biz/en/docs/line-login/integrate-line-login/)
27
+ * - [LINE app console](https://developers.line.biz/console/)
28
+ *
29
+ * ## Configuration
30
+ * Create a provider and a LINE login channel at https://developers.line.biz/console/. In the settings of the channel under LINE Login, activate web app and configure the following: Callback URL `http://localhost:3000/api/auth/callback/line`
31
+ *
32
+ * ### Notes
33
+ *
34
+ * By default, Auth.js assumes that the LINE 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
+ * To retrieve email address, you need to apply for Email address permission. Open [Line Developer Console](https://developers.line.biz/console/), go to your Login Channel. Scroll down bottom to find **OpenID Connect** -> **Email address permission**. Click **Apply** and follow the instruction.
40
+ *
41
+ * :::
42
+ *
43
+ * :::tip
44
+ *
45
+ * The LINE provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/line.ts).
46
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
47
+ *
48
+ * :::
49
+ *
50
+ * :::info **Disclaimer**
51
+ *
52
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
53
+ *
54
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
55
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
56
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
57
+ *
58
+ * :::
59
+ */
60
+ export default function LINE(options) {
61
+ return {
62
+ id: "line",
63
+ name: "LINE",
64
+ type: "oidc",
65
+ issuer: "https://access.line.me",
66
+ client: {
67
+ id_token_signed_response_alg: "HS256",
68
+ },
69
+ style: { bg: "#00C300", text: "#fff" },
70
+ options,
71
+ checks: ["state"],
72
+ };
73
+ }
@@ -0,0 +1,77 @@
1
+ /**
2
+ * <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>LinkedIn</b> integration.</span>
4
+ * <a href="https://linkedin.com">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/linkedin.svg" height="48" width="48"/>
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/linkedin
10
+ */
11
+ import type { OIDCConfig, OIDCUserConfig } from "./index.js";
12
+ /** @see https://learn.microsoft.com/en-us/linkedin/consumer/integrations/self-serve/sign-in-with-linkedin-v2#response-body-schema */
13
+ export interface LinkedInProfile extends Record<string, any> {
14
+ sub: string;
15
+ name: string;
16
+ given_name: string;
17
+ family_name: string;
18
+ picture: string;
19
+ locale: string;
20
+ email: string;
21
+ email_verified: boolean;
22
+ }
23
+ /**
24
+ * Add LinkedIn login to your page.
25
+ *
26
+ * ### Setup
27
+ *
28
+ * #### Callback URL
29
+ * ```
30
+ * https://example.com/api/auth/callback/linkedin
31
+ * ```
32
+ *
33
+ * #### Configuration
34
+ *```ts
35
+ * import { Auth } from "@auth/core"
36
+ * import LinkedIn from "@auth/core/providers/linkedin"
37
+ *
38
+ * const request = new Request(origin)
39
+ * const response = await Auth(request, {
40
+ * providers: [
41
+ * LinkedIn({
42
+ * clientId: LINKEDIN_CLIENT_ID,
43
+ * clientSecret: LINKEDIN_CLIENT_SECRET,
44
+ * }),
45
+ * ],
46
+ * })
47
+ * ```
48
+ *
49
+ * ### Resources
50
+ *
51
+ * - [LinkedIn OAuth documentation](https://docs.microsoft.com/en-us/linkedin/shared/authentication/authorization-code-flow)
52
+ * - [LinkedIn app console](https://www.linkedin.com/developers/apps/)
53
+ *
54
+ * ### Notes
55
+ *
56
+ * By default, Auth.js assumes that the LinkedIn provider is
57
+ * based on the [OIDC](https://openid.net/specs/openid-connect-core-1_0.html) specification.
58
+ *
59
+ * :::tip
60
+ *
61
+ * The LinkedIn provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/linkedin.ts).
62
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
63
+ *
64
+ * :::
65
+ *
66
+ * :::info **Disclaimer**
67
+ *
68
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
69
+ *
70
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
71
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
72
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
73
+ *
74
+ * :::
75
+ */
76
+ export default function LinkedIn<P extends LinkedInProfile>(options: OIDCUserConfig<P>): OIDCConfig<P>;
77
+ //# sourceMappingURL=linkedin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkedin.d.ts","sourceRoot":"","sources":["../src/providers/linkedin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE5D,qIAAqI;AACrI,MAAM,WAAW,eAAgB,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC1D,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,OAAO,CAAA;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,eAAe,EACxD,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,GACzB,UAAU,CAAC,CAAC,CAAC,CAWf"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Add LinkedIn login to your page.
3
+ *
4
+ * ### Setup
5
+ *
6
+ * #### Callback URL
7
+ * ```
8
+ * https://example.com/api/auth/callback/linkedin
9
+ * ```
10
+ *
11
+ * #### Configuration
12
+ *```ts
13
+ * import { Auth } from "@auth/core"
14
+ * import LinkedIn from "@auth/core/providers/linkedin"
15
+ *
16
+ * const request = new Request(origin)
17
+ * const response = await Auth(request, {
18
+ * providers: [
19
+ * LinkedIn({
20
+ * clientId: LINKEDIN_CLIENT_ID,
21
+ * clientSecret: LINKEDIN_CLIENT_SECRET,
22
+ * }),
23
+ * ],
24
+ * })
25
+ * ```
26
+ *
27
+ * ### Resources
28
+ *
29
+ * - [LinkedIn OAuth documentation](https://docs.microsoft.com/en-us/linkedin/shared/authentication/authorization-code-flow)
30
+ * - [LinkedIn app console](https://www.linkedin.com/developers/apps/)
31
+ *
32
+ * ### Notes
33
+ *
34
+ * By default, Auth.js assumes that the LinkedIn provider is
35
+ * based on the [OIDC](https://openid.net/specs/openid-connect-core-1_0.html) specification.
36
+ *
37
+ * :::tip
38
+ *
39
+ * The LinkedIn provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/linkedin.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 LinkedIn(options) {
55
+ return {
56
+ id: "linkedin",
57
+ name: "LinkedIn",
58
+ type: "oidc",
59
+ client: { token_endpoint_auth_method: "client_secret_post" },
60
+ issuer: "https://www.linkedin.com/oauth",
61
+ style: { bg: "#069", text: "#fff" },
62
+ checks: ["state"],
63
+ options,
64
+ };
65
+ }
@@ -0,0 +1,98 @@
1
+ /**
2
+ * <div style={{display: "flex", justifyContent: "space-between", alignItems: "center"}}>
3
+ * <span style={{fontSize: "1.35rem" }}>
4
+ * Built-in sign in with <b>Logto</b> integration.
5
+ * </span>
6
+ * <a href="https://logto.io" style={{backgroundColor: "black", padding: "12px", borderRadius: "100%" }}>
7
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/logto.svg" width="24"/>
8
+ * </a>
9
+ * </div>
10
+ *
11
+ * @module providers/logto
12
+ */
13
+ import type { OIDCConfig, OIDCUserConfig } from "./index.js";
14
+ /** The returned user profile from Logto when using the profile callback. [Reference](https://docs.logto.io/quick-starts/next-auth#scopes-and-claims). */
15
+ export interface LogtoProfile {
16
+ /** The user's unique ID */
17
+ sub: string;
18
+ /** The user's name */
19
+ name: string;
20
+ /** The user's username */
21
+ username: string;
22
+ /** The user's picture */
23
+ picture: string;
24
+ /** The user's email */
25
+ email: string;
26
+ /** A boolean indicating if the user's email is verified */
27
+ email_verified: boolean;
28
+ /** The user's phone number */
29
+ phone_number: string;
30
+ /** A boolean indicating if the user's phone number is verified */
31
+ phone_number_verified: boolean;
32
+ /** The user's address */
33
+ address: string;
34
+ /** Custom fields */
35
+ custom_data: object;
36
+ /** The linked identities of the user */
37
+ identities: object;
38
+ /** The linked SSO identities of the user */
39
+ sso_identities: object[];
40
+ /** The organization IDs the user belongs to */
41
+ organizations: string[];
42
+ /** The organization data the user belongs to */
43
+ organization_data: object[];
44
+ /** The organization roles the user belongs to with the format of organization_id:/role_name */
45
+ organization_roles: string[];
46
+ /** The user's custom attributes */
47
+ [claim: string]: unknown;
48
+ }
49
+ /**
50
+ *
51
+ * ### Setup
52
+ *
53
+ * #### Callback URL
54
+ * ```
55
+ * https://example.com/api/auth/callback/logto
56
+ * ```
57
+ *
58
+ * #### Configuration
59
+ * ```ts
60
+ * import { Auth } from "@auth/core"
61
+ * import Logto from "@auth/core/providers/logto"
62
+ *
63
+ * const request = new Request(origin)
64
+ * const response = await Auth(request, {
65
+ * providers: [
66
+ * Logto({
67
+ * clientId: LOGTO_ID,
68
+ * clientSecret: LOGTO_SECRET,
69
+ * issuer: LOGTO_ISSUER
70
+ * }),
71
+ * ],
72
+ * })
73
+ * ```
74
+ *
75
+ *
76
+ * ### Resources
77
+ *
78
+ * - [Logto Auth.js quickstart](https://docs.logto.io/quick-starts/next-auth)
79
+ * - [Integrate Logto in your application](https://docs.logto.io/integrate-logto/integrate-logto-into-your-application)
80
+ *
81
+ * ### Notes
82
+ *
83
+ * The Logto provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/logto.ts). To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
84
+ *
85
+ * :::info
86
+ * By default, Auth.js assumes that the Logto provider is based on the [OIDC](https://openid.net/specs/openid-connect-core-1_0.html) spec
87
+ * :::
88
+ *
89
+ * ## Help
90
+ *
91
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
92
+ *
93
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
94
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
95
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
96
+ */
97
+ export default function Logto(options: OIDCUserConfig<LogtoProfile>): OIDCConfig<LogtoProfile>;
98
+ //# sourceMappingURL=logto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logto.d.ts","sourceRoot":"","sources":["../src/providers/logto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE5D,yJAAyJ;AACzJ,MAAM,WAAW,YAAY;IAC3B,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,2DAA2D;IAC3D,cAAc,EAAE,OAAO,CAAA;IACvB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAA;IACpB,kEAAkE;IAClE,qBAAqB,EAAE,OAAO,CAAA;IAC9B,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,oBAAoB;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,+FAA+F;IAC/F,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAC5B,mCAAmC;IACnC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,GACpC,UAAU,CAAC,YAAY,CAAC,CAoB1B"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * <div style={{display: "flex", justifyContent: "space-between", alignItems: "center"}}>
3
+ * <span style={{fontSize: "1.35rem" }}>
4
+ * Built-in sign in with <b>Logto</b> integration.
5
+ * </span>
6
+ * <a href="https://logto.io" style={{backgroundColor: "black", padding: "12px", borderRadius: "100%" }}>
7
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/logto.svg" width="24"/>
8
+ * </a>
9
+ * </div>
10
+ *
11
+ * @module providers/logto
12
+ */
13
+ /**
14
+ *
15
+ * ### Setup
16
+ *
17
+ * #### Callback URL
18
+ * ```
19
+ * https://example.com/api/auth/callback/logto
20
+ * ```
21
+ *
22
+ * #### Configuration
23
+ * ```ts
24
+ * import { Auth } from "@auth/core"
25
+ * import Logto from "@auth/core/providers/logto"
26
+ *
27
+ * const request = new Request(origin)
28
+ * const response = await Auth(request, {
29
+ * providers: [
30
+ * Logto({
31
+ * clientId: LOGTO_ID,
32
+ * clientSecret: LOGTO_SECRET,
33
+ * issuer: LOGTO_ISSUER
34
+ * }),
35
+ * ],
36
+ * })
37
+ * ```
38
+ *
39
+ *
40
+ * ### Resources
41
+ *
42
+ * - [Logto Auth.js quickstart](https://docs.logto.io/quick-starts/next-auth)
43
+ * - [Integrate Logto in your application](https://docs.logto.io/integrate-logto/integrate-logto-into-your-application)
44
+ *
45
+ * ### Notes
46
+ *
47
+ * The Logto provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/logto.ts). To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
48
+ *
49
+ * :::info
50
+ * By default, Auth.js assumes that the Logto provider is based on the [OIDC](https://openid.net/specs/openid-connect-core-1_0.html) spec
51
+ * :::
52
+ *
53
+ * ## Help
54
+ *
55
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
56
+ *
57
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
58
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
59
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
60
+ */
61
+ export default function Logto(options) {
62
+ return {
63
+ id: "logto",
64
+ name: "Logto",
65
+ type: "oidc",
66
+ authorization: {
67
+ params: {
68
+ scope: "offline_access openid email profile",
69
+ },
70
+ },
71
+ profile(profile) {
72
+ return {
73
+ id: profile.sub,
74
+ name: profile.name ?? profile.username,
75
+ email: profile.email,
76
+ image: profile.picture,
77
+ };
78
+ },
79
+ options,
80
+ };
81
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * <div style={{backgroundColor: "#24292f", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>Loops</b> integration.</span>
4
+ * <a href="https://loops.so">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/loops.svg" width="48"/>
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/loops
10
+ */
11
+ import type { EmailConfig } from "./email.js";
12
+ export type LoopsUserConfig = Omit<Partial<LoopsConfig>, "options" | "type">;
13
+ export interface LoopsConfig extends Omit<EmailConfig, "sendVerificationRequest" | "options"> {
14
+ id: string;
15
+ apiKey: string;
16
+ transactionalId: string;
17
+ sendVerificationRequest: (params: Params) => Promise<void>;
18
+ options: LoopsUserConfig;
19
+ }
20
+ type Params = Parameters<EmailConfig["sendVerificationRequest"]>[0] & {
21
+ provider: LoopsConfig;
22
+ };
23
+ /**
24
+ *
25
+ * @param config
26
+ * @returns LoopsConfig
27
+ * @requires LoopsUserConfig
28
+ * @example
29
+ * ```ts
30
+ * Loops({
31
+ * apiKey: process.env.AUTH_LOOPS_KEY,
32
+ * transactionalId: process.env.AUTH_LOOPS_TRANSACTIONAL_ID,
33
+ * })
34
+ * ```
35
+ *
36
+ * @typedef LoopsUserConfig
37
+ */
38
+ export default function Loops(config: LoopsUserConfig): LoopsConfig;
39
+ export {};
40
+ //# sourceMappingURL=loops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loops.d.ts","sourceRoot":"","sources":["../src/providers/loops.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,YAAY,CAAA;AAE9D,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,CAAA;AAE5E,MAAM,WAAW,WACf,SAAQ,IAAI,CAAC,WAAW,EAAE,yBAAyB,GAAG,SAAS,CAAC;IAChE,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,MAAM,CAAA;IACvB,uBAAuB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1D,OAAO,EAAE,eAAe,CAAA;CACzB;AAED,KAAK,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;IACpE,QAAQ,EAAE,WAAW,CAAA;CACtB,CAAA;AAED;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,MAAM,EAAE,eAAe,GAAG,WAAW,CAkClE"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * <div style={{backgroundColor: "#24292f", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>Loops</b> integration.</span>
4
+ * <a href="https://loops.so">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/loops.svg" width="48"/>
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/loops
10
+ */
11
+ /**
12
+ *
13
+ * @param config
14
+ * @returns LoopsConfig
15
+ * @requires LoopsUserConfig
16
+ * @example
17
+ * ```ts
18
+ * Loops({
19
+ * apiKey: process.env.AUTH_LOOPS_KEY,
20
+ * transactionalId: process.env.AUTH_LOOPS_TRANSACTIONAL_ID,
21
+ * })
22
+ * ```
23
+ *
24
+ * @typedef LoopsUserConfig
25
+ */
26
+ export default function Loops(config) {
27
+ return {
28
+ id: "loops",
29
+ apiKey: "",
30
+ type: "email",
31
+ name: "Loops",
32
+ from: "Auth.js <no-reply@authjs.dev>",
33
+ maxAge: 24 * 60 * 60,
34
+ transactionalId: config.transactionalId || "",
35
+ async sendVerificationRequest(params) {
36
+ const { identifier: to, provider, url } = params;
37
+ if (!provider.apiKey || !provider.transactionalId)
38
+ throw new TypeError("Missing Loops API Key or TransactionalId");
39
+ const res = await fetch("https://app.loops.so/api/v1/transactional", {
40
+ method: "POST",
41
+ headers: {
42
+ Authorization: `Bearer ${provider.apiKey}`,
43
+ "Content-Type": "application/json",
44
+ },
45
+ body: JSON.stringify({
46
+ transactionalId: provider.transactionalId,
47
+ email: to,
48
+ dataVariables: {
49
+ url: url,
50
+ },
51
+ }),
52
+ });
53
+ if (!res.ok) {
54
+ throw new Error("Loops Send Error: " + JSON.stringify(await res.json()));
55
+ }
56
+ },
57
+ options: config,
58
+ };
59
+ }
@@ -0,0 +1,66 @@
1
+ /**
2
+ * <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
3
+ * <span>Built-in <b>Mailchimp</b> integration.</span>
4
+ * <a href="https://mailchimp.com">
5
+ * <img style={{display: "block"}} src="https://authjs.dev/img/providers/mailchimp.svg" height="48" width="48"/>
6
+ * </a>
7
+ * </div>
8
+ *
9
+ * @module providers/mailchimp
10
+ */
11
+ import type { OAuthConfig, OAuthUserConfig } from "./index.js";
12
+ /**
13
+ * Add Mailchimp login to your page.
14
+ *
15
+ * ### Setup
16
+ *
17
+ * #### Callback URL
18
+ * ```
19
+ * https://example.com/api/auth/callback/mailchimp
20
+ * ```
21
+ *
22
+ * #### Configuration
23
+ *```ts
24
+ * import { Auth } from "@auth/core"
25
+ * import Mailchimp from "@auth/core/providers/mailchimp"
26
+ *
27
+ * const request = new Request(origin)
28
+ * const response = await Auth(request, {
29
+ * providers: [
30
+ * Mailchimp({
31
+ * clientId: MAILCHIMP_CLIENT_ID,
32
+ * clientSecret: MAILCHIMP_CLIENT_SECRET,
33
+ * }),
34
+ * ],
35
+ * })
36
+ * ```
37
+ *
38
+ * ### Resources
39
+ *
40
+ * - [Mailchimp OAuth documentation](https://admin.mailchimp.com/account/oauth2/client/)
41
+ * - [Mailchimp documentation: Access user data](https://mailchimp.com/developer/marketing/guides/access-user-data-oauth-2/)
42
+ *
43
+ * ### Notes
44
+ *
45
+ * By default, Auth.js assumes that the Mailchimp provider is
46
+ * based on the [OAuth 2](https://www.rfc-editor.org/rfc/rfc6749.html) specification.
47
+ *
48
+ * :::tip
49
+ *
50
+ * The Mailchimp provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/mailchimp.ts).
51
+ * To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
52
+ *
53
+ * :::
54
+ *
55
+ * :::info **Disclaimer**
56
+ *
57
+ * If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
58
+ *
59
+ * Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
60
+ * the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
61
+ * we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
62
+ *
63
+ * :::
64
+ */
65
+ export default function Mailchimp(config: OAuthUserConfig<Record<string, any>>): OAuthConfig<Record<string, any>>;
66
+ //# sourceMappingURL=mailchimp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mailchimp.d.ts","sourceRoot":"","sources":["../src/providers/mailchimp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAC3C,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAsBlC"}