@strapi/plugin-users-permissions 0.0.0-experimental.6340da17068c3bed7fb006e7bcc554c71129e282 → 0.0.0-experimental.63624e21eb5b0713345a0cf2f68f1c40eab427bc

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 (371) hide show
  1. package/.eslintrc.cjs +2 -0
  2. package/admin/src/pages/EmailTemplates/components/EmailForm.jsx +3 -1
  3. package/admin/src/pages/Roles/pages/EditPage.jsx +1 -1
  4. package/admin/src/pages/Roles/pages/ListPage/index.jsx +1 -1
  5. package/admin/src/translations/en.json +1 -0
  6. package/admin/src/translations/es.json +1 -1
  7. package/admin/src/translations/ko.json +2 -1
  8. package/admin/src/translations/sv.json +1 -1
  9. package/admin/src/translations/uk.json +1 -1
  10. package/dist/admin/pages/EmailTemplates/components/EmailForm.js +2 -1
  11. package/dist/admin/pages/EmailTemplates/components/EmailForm.js.map +1 -1
  12. package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs +2 -1
  13. package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs.map +1 -1
  14. package/dist/admin/pages/Roles/pages/EditPage.js +1 -1
  15. package/dist/admin/pages/Roles/pages/EditPage.js.map +1 -1
  16. package/dist/admin/pages/Roles/pages/EditPage.mjs +1 -1
  17. package/dist/admin/pages/Roles/pages/EditPage.mjs.map +1 -1
  18. package/dist/admin/pages/Roles/pages/ListPage/index.js +1 -1
  19. package/dist/admin/pages/Roles/pages/ListPage/index.js.map +1 -1
  20. package/dist/admin/pages/Roles/pages/ListPage/index.mjs +1 -1
  21. package/dist/admin/pages/Roles/pages/ListPage/index.mjs.map +1 -1
  22. package/dist/admin/translations/en.json.js +1 -0
  23. package/dist/admin/translations/en.json.js.map +1 -1
  24. package/dist/admin/translations/en.json.mjs +1 -0
  25. package/dist/admin/translations/en.json.mjs.map +1 -1
  26. package/dist/admin/translations/es.json.js +1 -1
  27. package/dist/admin/translations/es.json.mjs +1 -1
  28. package/dist/admin/translations/ko.json.js +2 -1
  29. package/dist/admin/translations/ko.json.js.map +1 -1
  30. package/dist/admin/translations/ko.json.mjs +2 -1
  31. package/dist/admin/translations/ko.json.mjs.map +1 -1
  32. package/dist/admin/translations/sv.json.js +1 -1
  33. package/dist/admin/translations/sv.json.mjs +1 -1
  34. package/dist/admin/translations/uk.json.js +1 -1
  35. package/dist/admin/translations/uk.json.mjs +1 -1
  36. package/dist/server/_virtual/_node_crypto.js +10 -0
  37. package/dist/server/_virtual/_node_crypto.js.map +1 -0
  38. package/dist/server/_virtual/_node_crypto.mjs +7 -0
  39. package/dist/server/_virtual/_node_crypto.mjs.map +1 -0
  40. package/dist/server/_virtual/_node_url.js +10 -0
  41. package/dist/server/_virtual/_node_url.js.map +1 -0
  42. package/dist/server/_virtual/_node_url.mjs +7 -0
  43. package/dist/server/_virtual/_node_url.mjs.map +1 -0
  44. package/dist/server/bootstrap/index.js.map +1 -1
  45. package/dist/server/bootstrap/index.mjs.map +1 -1
  46. package/dist/server/bootstrap/users-permissions-actions.js.map +1 -1
  47. package/dist/server/bootstrap/users-permissions-actions.mjs.map +1 -1
  48. package/dist/server/config.js.map +1 -1
  49. package/dist/server/config.mjs.map +1 -1
  50. package/dist/server/content-types/index.js.map +1 -1
  51. package/dist/server/content-types/index.mjs.map +1 -1
  52. package/dist/server/content-types/permission/index.js.map +1 -1
  53. package/dist/server/content-types/permission/index.mjs.map +1 -1
  54. package/dist/server/content-types/role/index.js.map +1 -1
  55. package/dist/server/content-types/role/index.mjs.map +1 -1
  56. package/dist/server/content-types/user/index.js.map +1 -1
  57. package/dist/server/content-types/user/index.mjs.map +1 -1
  58. package/dist/server/content-types/user/schema-config.js.map +1 -1
  59. package/dist/server/content-types/user/schema-config.mjs.map +1 -1
  60. package/dist/server/controllers/auth.js +38 -30
  61. package/dist/server/controllers/auth.js.map +1 -1
  62. package/dist/server/controllers/auth.mjs +38 -28
  63. package/dist/server/controllers/auth.mjs.map +1 -1
  64. package/dist/server/controllers/content-manager-user.js.map +1 -1
  65. package/dist/server/controllers/content-manager-user.mjs.map +1 -1
  66. package/dist/server/controllers/index.js.map +1 -1
  67. package/dist/server/controllers/index.mjs.map +1 -1
  68. package/dist/server/controllers/permissions.js.map +1 -1
  69. package/dist/server/controllers/permissions.mjs.map +1 -1
  70. package/dist/server/controllers/role.js.map +1 -1
  71. package/dist/server/controllers/role.mjs.map +1 -1
  72. package/dist/server/controllers/settings.js.map +1 -1
  73. package/dist/server/controllers/settings.mjs.map +1 -1
  74. package/dist/server/controllers/user.js.map +1 -1
  75. package/dist/server/controllers/user.mjs.map +1 -1
  76. package/dist/server/controllers/validation/auth.js +6 -6
  77. package/dist/server/controllers/validation/auth.js.map +1 -1
  78. package/dist/server/controllers/validation/auth.mjs +6 -6
  79. package/dist/server/controllers/validation/auth.mjs.map +1 -1
  80. package/dist/server/controllers/validation/email-template.js +1 -4
  81. package/dist/server/controllers/validation/email-template.js.map +1 -1
  82. package/dist/server/controllers/validation/email-template.mjs +1 -3
  83. package/dist/server/controllers/validation/email-template.mjs.map +1 -1
  84. package/dist/server/controllers/validation/user.js.map +1 -1
  85. package/dist/server/controllers/validation/user.mjs.map +1 -1
  86. package/dist/server/graphql/index.js.map +1 -1
  87. package/dist/server/graphql/index.mjs.map +1 -1
  88. package/dist/server/graphql/mutations/auth/change-password.js +7 -4
  89. package/dist/server/graphql/mutations/auth/change-password.js.map +1 -1
  90. package/dist/server/graphql/mutations/auth/change-password.mjs +7 -4
  91. package/dist/server/graphql/mutations/auth/change-password.mjs.map +1 -1
  92. package/dist/server/graphql/mutations/auth/email-confirmation.js +1 -1
  93. package/dist/server/graphql/mutations/auth/email-confirmation.js.map +1 -1
  94. package/dist/server/graphql/mutations/auth/email-confirmation.mjs +1 -1
  95. package/dist/server/graphql/mutations/auth/email-confirmation.mjs.map +1 -1
  96. package/dist/server/graphql/mutations/auth/forgot-password.js +7 -4
  97. package/dist/server/graphql/mutations/auth/forgot-password.js.map +1 -1
  98. package/dist/server/graphql/mutations/auth/forgot-password.mjs +7 -4
  99. package/dist/server/graphql/mutations/auth/forgot-password.mjs.map +1 -1
  100. package/dist/server/graphql/mutations/auth/login.js +10 -7
  101. package/dist/server/graphql/mutations/auth/login.js.map +1 -1
  102. package/dist/server/graphql/mutations/auth/login.mjs +10 -7
  103. package/dist/server/graphql/mutations/auth/login.mjs.map +1 -1
  104. package/dist/server/graphql/mutations/auth/rate-limit.js +63 -0
  105. package/dist/server/graphql/mutations/auth/rate-limit.js.map +1 -0
  106. package/dist/server/graphql/mutations/auth/rate-limit.mjs +61 -0
  107. package/dist/server/graphql/mutations/auth/rate-limit.mjs.map +1 -0
  108. package/dist/server/graphql/mutations/auth/register.js +7 -4
  109. package/dist/server/graphql/mutations/auth/register.js.map +1 -1
  110. package/dist/server/graphql/mutations/auth/register.mjs +7 -4
  111. package/dist/server/graphql/mutations/auth/register.mjs.map +1 -1
  112. package/dist/server/graphql/mutations/auth/reset-password.js +7 -4
  113. package/dist/server/graphql/mutations/auth/reset-password.js.map +1 -1
  114. package/dist/server/graphql/mutations/auth/reset-password.mjs +7 -4
  115. package/dist/server/graphql/mutations/auth/reset-password.mjs.map +1 -1
  116. package/dist/server/graphql/mutations/crud/role/create-role.js +1 -1
  117. package/dist/server/graphql/mutations/crud/role/create-role.js.map +1 -1
  118. package/dist/server/graphql/mutations/crud/role/create-role.mjs +1 -1
  119. package/dist/server/graphql/mutations/crud/role/create-role.mjs.map +1 -1
  120. package/dist/server/graphql/mutations/crud/role/delete-role.js.map +1 -1
  121. package/dist/server/graphql/mutations/crud/role/delete-role.mjs.map +1 -1
  122. package/dist/server/graphql/mutations/crud/role/update-role.js.map +1 -1
  123. package/dist/server/graphql/mutations/crud/role/update-role.mjs.map +1 -1
  124. package/dist/server/graphql/mutations/crud/user/create-user.js +1 -1
  125. package/dist/server/graphql/mutations/crud/user/create-user.js.map +1 -1
  126. package/dist/server/graphql/mutations/crud/user/create-user.mjs +1 -1
  127. package/dist/server/graphql/mutations/crud/user/create-user.mjs.map +1 -1
  128. package/dist/server/graphql/mutations/crud/user/delete-user.js.map +1 -1
  129. package/dist/server/graphql/mutations/crud/user/delete-user.mjs.map +1 -1
  130. package/dist/server/graphql/mutations/crud/user/update-user.js +1 -1
  131. package/dist/server/graphql/mutations/crud/user/update-user.js.map +1 -1
  132. package/dist/server/graphql/mutations/crud/user/update-user.mjs +1 -1
  133. package/dist/server/graphql/mutations/crud/user/update-user.mjs.map +1 -1
  134. package/dist/server/graphql/mutations/index.js.map +1 -1
  135. package/dist/server/graphql/mutations/index.mjs.map +1 -1
  136. package/dist/server/graphql/queries/index.js.map +1 -1
  137. package/dist/server/graphql/queries/index.mjs.map +1 -1
  138. package/dist/server/graphql/queries/me.js.map +1 -1
  139. package/dist/server/graphql/queries/me.mjs.map +1 -1
  140. package/dist/server/graphql/resolvers-configs.js.map +1 -1
  141. package/dist/server/graphql/resolvers-configs.mjs.map +1 -1
  142. package/dist/server/graphql/types/create-role-payload.js.map +1 -1
  143. package/dist/server/graphql/types/create-role-payload.mjs.map +1 -1
  144. package/dist/server/graphql/types/delete-role-payload.js.map +1 -1
  145. package/dist/server/graphql/types/delete-role-payload.mjs.map +1 -1
  146. package/dist/server/graphql/types/index.js.map +1 -1
  147. package/dist/server/graphql/types/index.mjs.map +1 -1
  148. package/dist/server/graphql/types/login-input.js.map +1 -1
  149. package/dist/server/graphql/types/login-input.mjs.map +1 -1
  150. package/dist/server/graphql/types/login-payload.js.map +1 -1
  151. package/dist/server/graphql/types/login-payload.mjs.map +1 -1
  152. package/dist/server/graphql/types/me-role.js.map +1 -1
  153. package/dist/server/graphql/types/me-role.mjs.map +1 -1
  154. package/dist/server/graphql/types/me.js.map +1 -1
  155. package/dist/server/graphql/types/me.mjs.map +1 -1
  156. package/dist/server/graphql/types/password-payload.js.map +1 -1
  157. package/dist/server/graphql/types/password-payload.mjs.map +1 -1
  158. package/dist/server/graphql/types/register-input.js.map +1 -1
  159. package/dist/server/graphql/types/register-input.mjs.map +1 -1
  160. package/dist/server/graphql/types/update-role-payload.js.map +1 -1
  161. package/dist/server/graphql/types/update-role-payload.mjs.map +1 -1
  162. package/dist/server/graphql/types/user-input.js.map +1 -1
  163. package/dist/server/graphql/types/user-input.mjs.map +1 -1
  164. package/dist/server/graphql/utils.js +4 -4
  165. package/dist/server/graphql/utils.js.map +1 -1
  166. package/dist/server/graphql/utils.mjs +4 -4
  167. package/dist/server/graphql/utils.mjs.map +1 -1
  168. package/dist/server/index.js +2 -2
  169. package/dist/server/index.js.map +1 -1
  170. package/dist/server/index.mjs +3 -3
  171. package/dist/server/index.mjs.map +1 -1
  172. package/dist/server/index2.js +8 -8
  173. package/dist/server/index2.js.map +1 -1
  174. package/dist/server/index2.mjs +8 -8
  175. package/dist/server/index2.mjs.map +1 -1
  176. package/dist/server/middlewares/index.js.map +1 -1
  177. package/dist/server/middlewares/index.mjs.map +1 -1
  178. package/dist/server/middlewares/rateLimit.js +5 -5
  179. package/dist/server/middlewares/rateLimit.js.map +1 -1
  180. package/dist/server/middlewares/rateLimit.mjs +5 -5
  181. package/dist/server/middlewares/rateLimit.mjs.map +1 -1
  182. package/dist/server/register.js.map +1 -1
  183. package/dist/server/register.mjs.map +1 -1
  184. package/dist/server/routes/admin/index.js.map +1 -1
  185. package/dist/server/routes/admin/index.mjs.map +1 -1
  186. package/dist/server/routes/admin/permissions.js.map +1 -1
  187. package/dist/server/routes/admin/permissions.mjs.map +1 -1
  188. package/dist/server/routes/admin/role.js.map +1 -1
  189. package/dist/server/routes/admin/role.mjs.map +1 -1
  190. package/dist/server/routes/admin/settings.js.map +1 -1
  191. package/dist/server/routes/admin/settings.mjs.map +1 -1
  192. package/dist/server/routes/content-api/auth.js.map +1 -1
  193. package/dist/server/routes/content-api/auth.mjs.map +1 -1
  194. package/dist/server/routes/content-api/index.js.map +1 -1
  195. package/dist/server/routes/content-api/index.mjs.map +1 -1
  196. package/dist/server/routes/content-api/permissions.js.map +1 -1
  197. package/dist/server/routes/content-api/permissions.mjs.map +1 -1
  198. package/dist/server/routes/content-api/role.js.map +1 -1
  199. package/dist/server/routes/content-api/role.mjs.map +1 -1
  200. package/dist/server/routes/content-api/user.js.map +1 -1
  201. package/dist/server/routes/content-api/user.mjs.map +1 -1
  202. package/dist/server/routes/content-api/validation.js.map +1 -1
  203. package/dist/server/routes/content-api/validation.mjs.map +1 -1
  204. package/dist/server/routes/index.js.map +1 -1
  205. package/dist/server/routes/index.mjs.map +1 -1
  206. package/dist/server/services/constants.js.map +1 -1
  207. package/dist/server/services/constants.mjs.map +1 -1
  208. package/dist/server/services/index.js.map +1 -1
  209. package/dist/server/services/index.mjs.map +1 -1
  210. package/dist/server/services/jwt.js.map +1 -1
  211. package/dist/server/services/jwt.mjs.map +1 -1
  212. package/dist/server/services/permission.js.map +1 -1
  213. package/dist/server/services/permission.mjs.map +1 -1
  214. package/dist/server/services/providers-registry.js +188 -248
  215. package/dist/server/services/providers-registry.js.map +1 -1
  216. package/dist/server/services/providers-registry.mjs +188 -245
  217. package/dist/server/services/providers-registry.mjs.map +1 -1
  218. package/dist/server/services/providers.js +15 -11
  219. package/dist/server/services/providers.js.map +1 -1
  220. package/dist/server/services/providers.mjs +14 -10
  221. package/dist/server/services/providers.mjs.map +1 -1
  222. package/dist/server/services/role.js +2 -2
  223. package/dist/server/services/role.js.map +1 -1
  224. package/dist/server/services/role.mjs +2 -2
  225. package/dist/server/services/role.mjs.map +1 -1
  226. package/dist/server/services/user.js +14 -14
  227. package/dist/server/services/user.js.map +1 -1
  228. package/dist/server/services/user.mjs +13 -13
  229. package/dist/server/services/user.mjs.map +1 -1
  230. package/dist/server/services/users-permissions.js +17 -20
  231. package/dist/server/services/users-permissions.js.map +1 -1
  232. package/dist/server/services/users-permissions.mjs +16 -18
  233. package/dist/server/services/users-permissions.mjs.map +1 -1
  234. package/dist/server/strategies/users-permissions.js +9 -8
  235. package/dist/server/strategies/users-permissions.js.map +1 -1
  236. package/dist/server/strategies/users-permissions.mjs +9 -8
  237. package/dist/server/strategies/users-permissions.mjs.map +1 -1
  238. package/dist/server/utils/index.js.map +1 -1
  239. package/dist/server/utils/index.mjs.map +1 -1
  240. package/dist/server/utils/oauth-connect/index.js +241 -0
  241. package/dist/server/utils/oauth-connect/index.js.map +1 -0
  242. package/dist/server/utils/oauth-connect/index.mjs +235 -0
  243. package/dist/server/utils/oauth-connect/index.mjs.map +1 -0
  244. package/dist/server/utils/oauth-connect/oauth1.js +138 -0
  245. package/dist/server/utils/oauth-connect/oauth1.js.map +1 -0
  246. package/dist/server/utils/oauth-connect/oauth1.mjs +136 -0
  247. package/dist/server/utils/oauth-connect/oauth1.mjs.map +1 -0
  248. package/dist/server/utils/oauth-connect/oauth2.js +117 -0
  249. package/dist/server/utils/oauth-connect/oauth2.js.map +1 -0
  250. package/dist/server/utils/oauth-connect/oauth2.mjs +115 -0
  251. package/dist/server/utils/oauth-connect/oauth2.mjs.map +1 -0
  252. package/dist/server/utils/oauth-connect/providers.js +109 -0
  253. package/dist/server/utils/oauth-connect/providers.js.map +1 -0
  254. package/dist/server/utils/oauth-connect/providers.mjs +107 -0
  255. package/dist/server/utils/oauth-connect/providers.mjs.map +1 -0
  256. package/dist/server/utils/provider-http.js +52 -0
  257. package/dist/server/utils/provider-http.js.map +1 -0
  258. package/dist/server/utils/provider-http.mjs +50 -0
  259. package/dist/server/utils/provider-http.mjs.map +1 -0
  260. package/dist/server/utils/refresh-cookie-options.js.map +1 -1
  261. package/dist/server/utils/refresh-cookie-options.mjs.map +1 -1
  262. package/dist/server/utils/sanitize/index.js.map +1 -1
  263. package/dist/server/utils/sanitize/index.mjs.map +1 -1
  264. package/dist/server/utils/sanitize/sanitizers.js +1 -1
  265. package/dist/server/utils/sanitize/sanitizers.js.map +1 -1
  266. package/dist/server/utils/sanitize/sanitizers.mjs +1 -1
  267. package/dist/server/utils/sanitize/sanitizers.mjs.map +1 -1
  268. package/dist/server/utils/sanitize/visitors/index.js.map +1 -1
  269. package/dist/server/utils/sanitize/visitors/index.mjs.map +1 -1
  270. package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.js.map +1 -1
  271. package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.mjs.map +1 -1
  272. package/dist/server/utils/trim-grant-session-response.js +67 -0
  273. package/dist/server/utils/trim-grant-session-response.js.map +1 -0
  274. package/dist/server/utils/trim-grant-session-response.mjs +65 -0
  275. package/dist/server/utils/trim-grant-session-response.mjs.map +1 -0
  276. package/dist/server/utils/verify-jwt-with-jwks.js +60 -0
  277. package/dist/server/utils/verify-jwt-with-jwks.js.map +1 -0
  278. package/dist/server/utils/verify-jwt-with-jwks.mjs +54 -0
  279. package/dist/server/utils/verify-jwt-with-jwks.mjs.map +1 -0
  280. package/jsconfig.json +7 -0
  281. package/package.json +28 -18
  282. package/rollup.config.mjs +2 -2
  283. package/server/{controllers → src/controllers}/auth.js +36 -29
  284. package/server/{controllers → src/controllers}/validation/auth.js +6 -6
  285. package/server/{controllers → src/controllers}/validation/email-template.js +1 -2
  286. package/server/{graphql → src/graphql}/mutations/auth/change-password.js +6 -6
  287. package/server/{graphql → src/graphql}/mutations/auth/email-confirmation.js +1 -1
  288. package/server/{graphql → src/graphql}/mutations/auth/forgot-password.js +6 -6
  289. package/server/{graphql → src/graphql}/mutations/auth/login.js +11 -7
  290. package/server/src/graphql/mutations/auth/rate-limit.js +62 -0
  291. package/server/{graphql → src/graphql}/mutations/auth/register.js +6 -6
  292. package/server/{graphql → src/graphql}/mutations/auth/reset-password.js +6 -6
  293. package/server/{graphql → src/graphql}/mutations/crud/role/create-role.js +1 -1
  294. package/server/{graphql → src/graphql}/mutations/crud/user/create-user.js +1 -1
  295. package/server/{graphql → src/graphql}/mutations/crud/user/update-user.js +1 -1
  296. package/server/{graphql → src/graphql}/utils.js +3 -3
  297. package/server/{middlewares → src/middlewares}/rateLimit.js +4 -4
  298. package/server/src/services/providers-registry.js +487 -0
  299. package/server/{services → src/services}/providers.js +9 -7
  300. package/server/{services → src/services}/role.js +2 -2
  301. package/server/{services → src/services}/user.js +16 -6
  302. package/server/{services → src/services}/users-permissions.js +14 -16
  303. package/server/{strategies → src/strategies}/users-permissions.js +14 -10
  304. package/server/src/utils/oauth-connect/index.js +262 -0
  305. package/server/src/utils/oauth-connect/oauth1.js +169 -0
  306. package/server/src/utils/oauth-connect/oauth2.js +123 -0
  307. package/server/src/utils/oauth-connect/providers.js +100 -0
  308. package/server/src/utils/provider-http.js +49 -0
  309. package/server/{utils → src/utils}/sanitize/sanitizers.js +1 -1
  310. package/server/src/utils/trim-grant-session-response.js +70 -0
  311. package/server/src/utils/verify-jwt-with-jwks.js +43 -0
  312. package/types/strapi-server.d.ts +65 -0
  313. package/server/services/providers-registry.js +0 -567
  314. package/server/utils/index.d.ts +0 -23
  315. /package/server/{bootstrap → src/bootstrap}/index.js +0 -0
  316. /package/server/{bootstrap → src/bootstrap}/users-permissions-actions.js +0 -0
  317. /package/server/{config.js → src/config.js} +0 -0
  318. /package/server/{content-types → src/content-types}/index.js +0 -0
  319. /package/server/{content-types → src/content-types}/permission/index.js +0 -0
  320. /package/server/{content-types → src/content-types}/role/index.js +0 -0
  321. /package/server/{content-types → src/content-types}/user/index.js +0 -0
  322. /package/server/{content-types → src/content-types}/user/schema-config.js +0 -0
  323. /package/server/{controllers → src/controllers}/content-manager-user.js +0 -0
  324. /package/server/{controllers → src/controllers}/index.js +0 -0
  325. /package/server/{controllers → src/controllers}/permissions.js +0 -0
  326. /package/server/{controllers → src/controllers}/role.js +0 -0
  327. /package/server/{controllers → src/controllers}/settings.js +0 -0
  328. /package/server/{controllers → src/controllers}/user.js +0 -0
  329. /package/server/{controllers → src/controllers}/validation/user.js +0 -0
  330. /package/server/{graphql → src/graphql}/index.js +0 -0
  331. /package/server/{graphql → src/graphql}/mutations/crud/role/delete-role.js +0 -0
  332. /package/server/{graphql → src/graphql}/mutations/crud/role/update-role.js +0 -0
  333. /package/server/{graphql → src/graphql}/mutations/crud/user/delete-user.js +0 -0
  334. /package/server/{graphql → src/graphql}/mutations/index.js +0 -0
  335. /package/server/{graphql → src/graphql}/queries/index.js +0 -0
  336. /package/server/{graphql → src/graphql}/queries/me.js +0 -0
  337. /package/server/{graphql → src/graphql}/resolvers-configs.js +0 -0
  338. /package/server/{graphql → src/graphql}/types/create-role-payload.js +0 -0
  339. /package/server/{graphql → src/graphql}/types/delete-role-payload.js +0 -0
  340. /package/server/{graphql → src/graphql}/types/index.js +0 -0
  341. /package/server/{graphql → src/graphql}/types/login-input.js +0 -0
  342. /package/server/{graphql → src/graphql}/types/login-payload.js +0 -0
  343. /package/server/{graphql → src/graphql}/types/me-role.js +0 -0
  344. /package/server/{graphql → src/graphql}/types/me.js +0 -0
  345. /package/server/{graphql → src/graphql}/types/password-payload.js +0 -0
  346. /package/server/{graphql → src/graphql}/types/register-input.js +0 -0
  347. /package/server/{graphql → src/graphql}/types/update-role-payload.js +0 -0
  348. /package/server/{graphql → src/graphql}/types/user-input.js +0 -0
  349. /package/server/{index.js → src/index.js} +0 -0
  350. /package/server/{middlewares → src/middlewares}/index.js +0 -0
  351. /package/server/{register.js → src/register.js} +0 -0
  352. /package/server/{routes → src/routes}/admin/index.js +0 -0
  353. /package/server/{routes → src/routes}/admin/permissions.js +0 -0
  354. /package/server/{routes → src/routes}/admin/role.js +0 -0
  355. /package/server/{routes → src/routes}/admin/settings.js +0 -0
  356. /package/server/{routes → src/routes}/content-api/auth.js +0 -0
  357. /package/server/{routes → src/routes}/content-api/index.js +0 -0
  358. /package/server/{routes → src/routes}/content-api/permissions.js +0 -0
  359. /package/server/{routes → src/routes}/content-api/role.js +0 -0
  360. /package/server/{routes → src/routes}/content-api/user.js +0 -0
  361. /package/server/{routes → src/routes}/content-api/validation.js +0 -0
  362. /package/server/{routes → src/routes}/index.js +0 -0
  363. /package/server/{services → src/services}/constants.js +0 -0
  364. /package/server/{services → src/services}/index.js +0 -0
  365. /package/server/{services → src/services}/jwt.js +0 -0
  366. /package/server/{services → src/services}/permission.js +0 -0
  367. /package/server/{utils → src/utils}/index.js +0 -0
  368. /package/server/{utils → src/utils}/refresh-cookie-options.js +0 -0
  369. /package/server/{utils → src/utils}/sanitize/index.js +0 -0
  370. /package/server/{utils → src/utils}/sanitize/visitors/index.js +0 -0
  371. /package/server/{utils → src/utils}/sanitize/visitors/remove-user-relation-from-role-entities.js +0 -0
@@ -1,8 +1,8 @@
1
1
  import require$$0 from 'assert';
2
- import require$$1 from 'jsonwebtoken';
3
- import require$$2 from 'url-join';
4
- import require$$3 from 'jwk-to-pem';
5
- import require$$4 from 'purest';
2
+ import require$$1 from 'url-join';
3
+ import { __require as requireVerifyJwtWithJwks } from '../utils/verify-jwt-with-jwks.mjs';
4
+ import { __require as requireProviderHttp } from '../utils/provider-http.mjs';
5
+ import { __require as requireOauth1 } from '../utils/oauth-connect/oauth1.mjs';
6
6
 
7
7
  var providersRegistry;
8
8
  var hasRequiredProvidersRegistry;
@@ -10,53 +10,10 @@ function requireProvidersRegistry() {
10
10
  if (hasRequiredProvidersRegistry) return providersRegistry;
11
11
  hasRequiredProvidersRegistry = 1;
12
12
  const { strict: assert } = require$$0;
13
- const jwt = require$$1;
14
- const urljoin = require$$2;
15
- const jwkToPem = require$$3;
16
- const getCognitoPayload = async ({ idToken, jwksUrl, purest })=>{
17
- const { header: { kid }, payload } = jwt.decode(idToken, {
18
- complete: true
19
- });
20
- if (!payload || !kid) {
21
- throw new Error('The provided token is not valid');
22
- }
23
- const config = {
24
- cognito: {
25
- discovery: {
26
- origin: jwksUrl.origin,
27
- path: jwksUrl.pathname
28
- }
29
- }
30
- };
31
- try {
32
- const cognito = purest({
33
- provider: 'cognito',
34
- config
35
- });
36
- // get the JSON Web Key (JWK) for the user pool
37
- const { body: jwk } = await cognito('discovery').request();
38
- // Get the key with the same Key ID as the provided token
39
- const key = jwk.keys.find(({ kid: jwkKid })=>jwkKid === kid);
40
- const pem = jwkToPem(key);
41
- // https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-verifying-a-jwt.html
42
- const decodedToken = await new Promise((resolve, reject)=>{
43
- jwt.verify(idToken, pem, {
44
- algorithms: [
45
- 'RS256'
46
- ]
47
- }, (err, decodedToken)=>{
48
- if (err) {
49
- reject();
50
- }
51
- resolve(decodedToken);
52
- });
53
- });
54
- return decodedToken;
55
- } catch (err) {
56
- throw new Error('There was an error verifying the token');
57
- }
58
- };
59
- const initProviders = ({ baseURL, purest })=>({
13
+ const urljoin = require$$1;
14
+ const { verifyJwtWithJwks } = requireVerifyJwtWithJwks();
15
+ const { bearerGet, fetchJson } = requireProviderHttp();
16
+ const initProviders = ({ baseURL })=>({
60
17
  email: {
61
18
  enabled: true,
62
19
  icon: 'envelope',
@@ -75,17 +32,15 @@ function requireProvidersRegistry() {
75
32
  ]
76
33
  },
77
34
  async authCallback ({ accessToken }) {
78
- const discord = purest({
79
- provider: 'discord'
80
- });
81
- return discord.get('users/@me').auth(accessToken).request().then(({ body })=>{
82
- // Combine username and discriminator (if discriminator exists and not equal to 0)
83
- const username = body.discriminator && body.discriminator !== '0' ? `${body.username}#${body.discriminator}` : body.username;
84
- return {
85
- username,
86
- email: body.email
87
- };
88
- });
35
+ const { body } = await bearerGet('https://discord.com/api/users/@me', accessToken);
36
+ if (body.verified !== true) {
37
+ throw new Error('Email not verified by Discord');
38
+ }
39
+ const username = body.discriminator && body.discriminator !== '0' ? `${body.username}#${body.discriminator}` : body.username;
40
+ return {
41
+ username,
42
+ email: body.email
43
+ };
89
44
  }
90
45
  },
91
46
  facebook: {
@@ -100,15 +55,18 @@ function requireProvidersRegistry() {
100
55
  ]
101
56
  },
102
57
  async authCallback ({ accessToken }) {
103
- const facebook = purest({
104
- provider: 'facebook'
58
+ const { body } = await bearerGet('https://graph.facebook.com/me', accessToken, {
59
+ qs: {
60
+ fields: 'name,email'
61
+ }
105
62
  });
106
- return facebook.get('me').auth(accessToken).qs({
107
- fields: 'name,email'
108
- }).request().then(({ body })=>({
109
- username: body.name,
110
- email: body.email
111
- }));
63
+ if (!body.email) {
64
+ throw new Error('Email not verified by Facebook');
65
+ }
66
+ return {
67
+ username: body.name,
68
+ email: body.email
69
+ };
112
70
  }
113
71
  },
114
72
  google: {
@@ -123,15 +81,15 @@ function requireProvidersRegistry() {
123
81
  ]
124
82
  },
125
83
  async authCallback ({ accessToken }) {
126
- const google = purest({
127
- provider: 'google'
128
- });
129
- return google.query('oauth').get('tokeninfo').qs({
130
- accessToken
131
- }).request().then(({ body })=>({
132
- username: body.email.split('@')[0],
133
- email: body.email
134
- }));
84
+ const { body } = await fetchJson(`https://oauth2.googleapis.com/tokeninfo?access_token=${encodeURIComponent(accessToken)}`);
85
+ const verified = body.verified_email ?? body.email_verified;
86
+ if (verified !== true && verified !== 'true') {
87
+ throw new Error('Email not verified by Google');
88
+ }
89
+ return {
90
+ username: body.email.split('@')[0],
91
+ email: body.email
92
+ };
135
93
  }
136
94
  },
137
95
  github: {
@@ -147,27 +105,33 @@ function requireProvidersRegistry() {
147
105
  ]
148
106
  },
149
107
  async authCallback ({ accessToken }) {
150
- const github = purest({
151
- provider: 'github',
152
- defaults: {
153
- headers: {
154
- 'user-agent': 'strapi'
155
- }
108
+ const { body: userBody } = await bearerGet('https://api.github.com/user', accessToken, {
109
+ headers: {
110
+ 'user-agent': 'strapi'
111
+ }
112
+ });
113
+ const { body: emailBody } = await bearerGet('https://api.github.com/user/emails', accessToken, {
114
+ headers: {
115
+ 'user-agent': 'strapi'
156
116
  }
157
117
  });
158
- const { body: userBody } = await github.get('user').auth(accessToken).request();
159
- // This is the public email on the github profile
160
118
  if (userBody.email) {
119
+ const verifiedPublicEmail = Array.isArray(emailBody) ? emailBody.find((entry)=>entry.email === userBody.email && entry.verified === true) : null;
120
+ if (!verifiedPublicEmail) {
121
+ throw new Error('Email not verified by GitHub');
122
+ }
161
123
  return {
162
124
  username: userBody.login,
163
125
  email: userBody.email
164
126
  };
165
127
  }
166
- // Get the email with Github's user/emails API
167
- const { body: emailBody } = await github.get('user/emails').auth(accessToken).request();
128
+ const primaryEmail = Array.isArray(emailBody) ? emailBody.find((email)=>email.primary === true) : null;
129
+ if (!primaryEmail || primaryEmail.verified !== true) {
130
+ throw new Error('Email not verified by GitHub');
131
+ }
168
132
  return {
169
133
  username: userBody.login,
170
- email: Array.isArray(emailBody) ? emailBody.find((email)=>email.primary === true).email : null
134
+ email: primaryEmail.email
171
135
  };
172
136
  }
173
137
  },
@@ -183,13 +147,11 @@ function requireProvidersRegistry() {
183
147
  ]
184
148
  },
185
149
  async authCallback ({ accessToken }) {
186
- const microsoft = purest({
187
- provider: 'microsoft'
188
- });
189
- return microsoft.get('me').auth(accessToken).request().then(({ body })=>({
190
- username: body.userPrincipalName,
191
- email: body.userPrincipalName
192
- }));
150
+ const { body } = await bearerGet('https://graph.microsoft.com/v1.0/me', accessToken);
151
+ return {
152
+ username: body.userPrincipalName,
153
+ email: body.userPrincipalName
154
+ };
193
155
  }
194
156
  },
195
157
  twitter: {
@@ -200,23 +162,31 @@ function requireProvidersRegistry() {
200
162
  secret: '',
201
163
  callbackUrl: `${baseURL}/twitter/callback`
202
164
  },
203
- async authCallback ({ accessToken, query, providers }) {
204
- const twitter = purest({
205
- provider: 'twitter',
206
- defaults: {
207
- oauth: {
208
- consumer_key: providers.twitter.key,
209
- consumer_secret: providers.twitter.secret
210
- }
165
+ async authCallback ({ accessToken, providers, grantResponse }) {
166
+ const accessSecret = grantResponse?.access_secret;
167
+ const screenName = grantResponse?.raw?.screen_name;
168
+ if (!accessSecret) {
169
+ throw new Error('Twitter authentication requires a completed OAuth session');
170
+ }
171
+ const { twitterGet } = requireOauth1();
172
+ const { body } = await twitterGet({
173
+ url: 'https://api.twitter.com/1.1/account/verify_credentials.json',
174
+ accessToken,
175
+ accessCredential: accessSecret,
176
+ consumerKey: providers.twitter.key,
177
+ clientCredential: providers.twitter.secret,
178
+ qs: {
179
+ include_email: 'true',
180
+ screen_name: screenName
211
181
  }
212
182
  });
213
- return twitter.get('account/verify_credentials').auth(accessToken, query.access_secret).qs({
214
- screen_name: query['raw[screen_name]'],
215
- include_email: 'true'
216
- }).request().then(({ body })=>({
217
- username: body.screen_name,
218
- email: body.email
219
- }));
183
+ if (!body.email) {
184
+ throw new Error('Email not verified by Twitter');
185
+ }
186
+ return {
187
+ username: body.screen_name,
188
+ email: body.email
189
+ };
220
190
  }
221
191
  },
222
192
  instagram: {
@@ -231,15 +201,15 @@ function requireProvidersRegistry() {
231
201
  ]
232
202
  },
233
203
  async authCallback ({ accessToken }) {
234
- const instagram = purest({
235
- provider: 'instagram'
204
+ const { body } = await bearerGet('https://graph.instagram.com/me', accessToken, {
205
+ qs: {
206
+ fields: 'id,username'
207
+ }
236
208
  });
237
- return instagram.get('me').auth(accessToken).qs({
238
- fields: 'id,username'
239
- }).request().then(({ body })=>({
240
- username: body.username,
241
- email: `${body.username}@strapi.io`
242
- }));
209
+ return {
210
+ username: body.username,
211
+ email: `${body.username}@strapi.io`
212
+ };
243
213
  }
244
214
  },
245
215
  vk: {
@@ -253,17 +223,25 @@ function requireProvidersRegistry() {
253
223
  'email'
254
224
  ]
255
225
  },
256
- async authCallback ({ accessToken, query }) {
257
- const vk = purest({
258
- provider: 'vk'
226
+ async authCallback ({ accessToken, grantResponse }) {
227
+ const email = grantResponse?.raw?.email;
228
+ const userId = grantResponse?.raw?.user_id;
229
+ if (!email || !userId) {
230
+ throw new Error('VK authentication requires a completed OAuth session');
231
+ }
232
+ const { body } = await bearerGet('https://api.vk.com/method/users.get', accessToken, {
233
+ qs: {
234
+ user_ids: userId,
235
+ v: '5.122'
236
+ }
259
237
  });
260
- return vk.get('users').auth(accessToken).qs({
261
- id: query.raw.user_id,
262
- v: '5.122'
263
- }).request().then(({ body })=>({
264
- username: `${body.response[0].last_name} ${body.response[0].first_name}`,
265
- email: query.raw.email
266
- }));
238
+ if (!body.response?.[0]) {
239
+ throw new Error('Invalid VK access token');
240
+ }
241
+ return {
242
+ username: `${body.response[0].last_name} ${body.response[0].first_name}`,
243
+ email
244
+ };
267
245
  }
268
246
  },
269
247
  twitch: {
@@ -278,25 +256,19 @@ function requireProvidersRegistry() {
278
256
  ]
279
257
  },
280
258
  async authCallback ({ accessToken, providers }) {
281
- const twitch = purest({
282
- provider: 'twitch',
283
- config: {
284
- twitch: {
285
- default: {
286
- origin: 'https://api.twitch.tv',
287
- path: 'helix/{path}',
288
- headers: {
289
- Authorization: 'Bearer {auth}',
290
- 'Client-Id': '{auth}'
291
- }
292
- }
293
- }
259
+ const { body } = await bearerGet('https://api.twitch.tv/helix/users', accessToken, {
260
+ headers: {
261
+ 'Client-Id': providers.twitch.key
294
262
  }
295
263
  });
296
- return twitch.get('users').auth(accessToken, providers.twitch.key).request().then(({ body })=>({
297
- username: body.data[0].login,
298
- email: body.data[0].email
299
- }));
264
+ const email = body.data?.[0]?.email;
265
+ if (!email) {
266
+ throw new Error('Email not verified by Twitch');
267
+ }
268
+ return {
269
+ username: body.data[0].login,
270
+ email
271
+ };
300
272
  }
301
273
  },
302
274
  linkedin: {
@@ -312,14 +284,14 @@ function requireProvidersRegistry() {
312
284
  ]
313
285
  },
314
286
  async authCallback ({ accessToken }) {
315
- const linkedIn = purest({
316
- provider: 'linkedin'
317
- });
318
- const { body: { localizedFirstName } } = await linkedIn.get('me').auth(accessToken).request();
319
- const { body: { elements } } = await linkedIn.get('emailAddress?q=members&projection=(elements*(handle~))').auth(accessToken).request();
320
- const email = elements[0]['handle~'];
287
+ const { body: profileBody } = await bearerGet('https://api.linkedin.com/v2/me', accessToken);
288
+ const { body: emailBody } = await bearerGet('https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~))', accessToken);
289
+ const email = emailBody.elements[0]?.['handle~'];
290
+ if (!email?.emailAddress) {
291
+ throw new Error('Email not verified by LinkedIn');
292
+ }
321
293
  return {
322
- username: localizedFirstName,
294
+ username: profileBody.localizedFirstName,
323
295
  email: email.emailAddress
324
296
  };
325
297
  }
@@ -338,14 +310,19 @@ function requireProvidersRegistry() {
338
310
  'profile'
339
311
  ]
340
312
  },
341
- async authCallback ({ query, providers }) {
313
+ async authCallback ({ providers, grantResponse }) {
342
314
  const jwksUrl = new URL(providers.cognito.jwksurl);
343
- const idToken = query.id_token;
344
- const tokenPayload = await getCognitoPayload({
315
+ const idToken = grantResponse?.id_token;
316
+ if (!idToken) {
317
+ throw new Error('Cognito authentication requires a completed OAuth session');
318
+ }
319
+ const tokenPayload = await verifyJwtWithJwks({
345
320
  idToken,
346
- jwksUrl,
347
- purest
321
+ jwksUrl
348
322
  });
323
+ if (tokenPayload.email_verified !== true) {
324
+ throw new Error('Email not verified by Cognito');
325
+ }
349
326
  return {
350
327
  username: tokenPayload['cognito:username'],
351
328
  email: tokenPayload.email
@@ -364,26 +341,15 @@ function requireProvidersRegistry() {
364
341
  ]
365
342
  },
366
343
  async authCallback ({ accessToken }) {
367
- const reddit = purest({
368
- provider: 'reddit',
369
- config: {
370
- reddit: {
371
- default: {
372
- origin: 'https://oauth.reddit.com',
373
- path: 'api/{version}/{path}',
374
- version: 'v1',
375
- headers: {
376
- Authorization: 'Bearer {auth}',
377
- 'user-agent': 'strapi'
378
- }
379
- }
380
- }
344
+ const { body } = await bearerGet('https://oauth.reddit.com/api/v1/me', accessToken, {
345
+ headers: {
346
+ 'user-agent': 'strapi'
381
347
  }
382
348
  });
383
- return reddit.get('me').auth(accessToken).request().then(({ body })=>({
384
- username: body.name,
385
- email: `${body.name}@strapi.io`
386
- }));
349
+ return {
350
+ username: body.name,
351
+ email: `${body.name}@strapi.io`
352
+ };
387
353
  }
388
354
  },
389
355
  auth0: {
@@ -401,17 +367,16 @@ function requireProvidersRegistry() {
401
367
  ]
402
368
  },
403
369
  async authCallback ({ accessToken, providers }) {
404
- const auth0 = purest({
405
- provider: 'auth0'
406
- });
407
- return auth0.get('userinfo').subdomain(providers.auth0.subdomain).auth(accessToken).request().then(({ body })=>{
408
- const username = body.username || body.nickname || body.name || body.email.split('@')[0];
409
- const email = body.email || `${username.replace(/\s+/g, '.')}@strapi.io`;
410
- return {
411
- username,
412
- email
413
- };
414
- });
370
+ const { body } = await bearerGet(`https://${providers.auth0.subdomain}.auth0.com/userinfo`, accessToken);
371
+ if (body.email && body.email_verified !== true) {
372
+ throw new Error('Email not verified by Auth0');
373
+ }
374
+ const username = body.username || body.nickname || body.name || body.email.split('@')[0];
375
+ const email = body.email || `${username.replace(/\s+/g, '.')}@strapi.io`;
376
+ return {
377
+ username,
378
+ email
379
+ };
415
380
  }
416
381
  },
417
382
  cas: {
@@ -427,21 +392,20 @@ function requireProvidersRegistry() {
427
392
  subdomain: 'my.subdomain.com/cas'
428
393
  },
429
394
  async authCallback ({ accessToken, providers }) {
430
- const cas = purest({
431
- provider: 'cas'
432
- });
433
- return cas.get('oidc/profile').subdomain(providers.cas.subdomain).auth(accessToken).request().then(({ body })=>{
434
- // CAS attribute may be in body.attributes or "FLAT", depending on CAS config
435
- const username = body.attributes ? body.attributes.strapiusername || body.id || body.sub : body.strapiusername || body.id || body.sub;
436
- const email = body.attributes ? body.attributes.strapiemail || body.attributes.email : body.strapiemail || body.email;
437
- if (!username || !email) {
438
- strapi.log.warn(`CAS Response Body did not contain required attributes: ${JSON.stringify(body)}`);
439
- }
440
- return {
441
- username,
442
- email
443
- };
444
- });
395
+ const { body } = await bearerGet(`https://${providers.cas.subdomain}/oidc/profile`, accessToken);
396
+ const username = body.attributes ? body.attributes.strapiusername || body.id || body.sub : body.strapiusername || body.id || body.sub;
397
+ const email = body.attributes ? body.attributes.strapiemail || body.attributes.email : body.strapiemail || body.email;
398
+ const emailVerified = body.email_verified ?? body.attributes?.email_verified;
399
+ if (!username || !email) {
400
+ strapi.log.warn(`CAS Response Body did not contain required attributes: ${JSON.stringify(body)}`);
401
+ }
402
+ if (email && emailVerified !== true) {
403
+ throw new Error('Email not verified by CAS');
404
+ }
405
+ return {
406
+ username,
407
+ email
408
+ };
445
409
  }
446
410
  },
447
411
  patreon: {
@@ -457,29 +421,15 @@ function requireProvidersRegistry() {
457
421
  ]
458
422
  },
459
423
  async authCallback ({ accessToken }) {
460
- const patreon = purest({
461
- provider: 'patreon',
462
- config: {
463
- patreon: {
464
- default: {
465
- origin: 'https://www.patreon.com',
466
- path: 'api/oauth2/{path}',
467
- headers: {
468
- authorization: 'Bearer {auth}'
469
- }
470
- }
471
- }
472
- }
473
- });
474
- return patreon.get('v2/identity').auth(accessToken).qs(new URLSearchParams({
475
- 'fields[user]': 'full_name,email'
476
- }).toString()).request().then(({ body })=>{
477
- const patreonData = body.data.attributes;
478
- return {
479
- username: patreonData.full_name,
480
- email: patreonData.email
481
- };
482
- });
424
+ const { body } = await bearerGet('https://www.patreon.com/api/oauth2/v2/identity?fields[user]=full_name,email,is_email_verified', accessToken);
425
+ const patreonData = body.data.attributes;
426
+ if (patreonData.is_email_verified !== true) {
427
+ throw new Error('Email not verified by Patreon');
428
+ }
429
+ return {
430
+ username: patreonData.full_name,
431
+ email: patreonData.email
432
+ };
483
433
  }
484
434
  },
485
435
  keycloak: {
@@ -497,29 +447,24 @@ function requireProvidersRegistry() {
497
447
  ]
498
448
  },
499
449
  async authCallback ({ accessToken, providers }) {
500
- const keycloak = purest({
501
- provider: 'keycloak'
502
- });
503
- return keycloak.subdomain(providers.keycloak.subdomain).get('protocol/openid-connect/userinfo').auth(accessToken).request().then(({ body })=>{
504
- return {
505
- username: body.preferred_username,
506
- email: body.email
507
- };
508
- });
450
+ const { body } = await bearerGet(`https://${providers.keycloak.subdomain}/protocol/openid-connect/userinfo`, accessToken);
451
+ if (body.email_verified !== true) {
452
+ throw new Error('Email not verified by Keycloak');
453
+ }
454
+ return {
455
+ username: body.preferred_username,
456
+ email: body.email
457
+ };
509
458
  }
510
459
  }
511
460
  });
512
461
  providersRegistry = ()=>{
513
- const purest = require$$4;
514
462
  const apiPrefix = strapi.config.get('api.rest.prefix');
515
463
  const baseURL = urljoin(strapi.config.server.url, apiPrefix, 'auth');
516
464
  const authProviders = initProviders({
517
- baseURL,
518
- purest
465
+ baseURL
519
466
  });
520
- /**
521
- * @public
522
- */ return {
467
+ return {
523
468
  getAll () {
524
469
  return authProviders;
525
470
  },
@@ -532,16 +477,14 @@ function requireProvidersRegistry() {
532
477
  remove (name) {
533
478
  delete authProviders[name];
534
479
  },
535
- /**
536
- * @internal
537
- */ async run ({ provider, accessToken, query, providers }) {
480
+ async run ({ provider, accessToken, query, providers, grantResponse }) {
538
481
  const authProvider = authProviders[provider];
539
482
  assert(authProvider, 'Unknown auth provider');
540
483
  return authProvider.authCallback({
541
484
  accessToken,
542
485
  query,
543
486
  providers,
544
- purest
487
+ grantResponse
545
488
  });
546
489
  }
547
490
  };