@nocobase/plugin-idp-oauth 2.2.16 → 2.2.18

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 (598) hide show
  1. package/build.config.ts +1 -1
  2. package/dist/externalVersion.js +8 -8
  3. package/dist/node_modules/light-my-request/index.js +2 -2
  4. package/dist/node_modules/light-my-request/node_modules/cookie/dist/index.d.ts +148 -0
  5. package/dist/node_modules/light-my-request/node_modules/cookie/dist/index.js +350 -0
  6. package/dist/node_modules/light-my-request/node_modules/cookie/package.json +47 -0
  7. package/dist/node_modules/light-my-request/package.json +1 -1
  8. package/dist/node_modules/ms/package.json +1 -1
  9. package/dist/node_modules/oidc-provider/README.md +28 -25
  10. package/dist/node_modules/oidc-provider/THIRD-PARTY-NOTICES.md +184 -0
  11. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba.js +169 -0
  12. package/dist/node_modules/oidc-provider/lib/actions/authorization/claims.js +132 -0
  13. package/dist/node_modules/oidc-provider/lib/actions/authorization/client.js +50 -0
  14. package/dist/node_modules/oidc-provider/lib/actions/authorization/device.js +164 -0
  15. package/dist/node_modules/oidc-provider/lib/actions/authorization/index.js +112 -163
  16. package/dist/node_modules/oidc-provider/lib/actions/authorization/interactions.js +32 -13
  17. package/dist/node_modules/oidc-provider/lib/actions/authorization/process_request_object.js +47 -25
  18. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_requests.js +127 -0
  19. package/dist/node_modules/oidc-provider/lib/actions/authorization/request_parameters.js +188 -0
  20. package/dist/node_modules/oidc-provider/lib/actions/authorization/respond.js +15 -10
  21. package/dist/node_modules/oidc-provider/lib/actions/authorization/response_parameters.js +175 -0
  22. package/dist/node_modules/oidc-provider/lib/actions/authorization/resume.js +8 -4
  23. package/dist/node_modules/oidc-provider/lib/actions/authorization/scopes.js +109 -0
  24. package/dist/node_modules/oidc-provider/lib/actions/authorization/{check_pkce.js → sender_constraints.js} +31 -8
  25. package/dist/node_modules/oidc-provider/lib/actions/authorization/{load_grant.js → session.js} +21 -4
  26. package/dist/node_modules/oidc-provider/lib/actions/challenge.js +6 -1
  27. package/dist/node_modules/oidc-provider/lib/actions/code_verification.js +1 -3
  28. package/dist/node_modules/oidc-provider/lib/actions/credential.js +757 -0
  29. package/dist/node_modules/oidc-provider/lib/actions/discovery.js +11 -2
  30. package/dist/node_modules/oidc-provider/lib/actions/end_session.js +23 -15
  31. package/dist/node_modules/oidc-provider/lib/actions/grants/authorization_code.js +24 -94
  32. package/dist/node_modules/oidc-provider/lib/actions/grants/ciba.js +22 -86
  33. package/dist/node_modules/oidc-provider/lib/actions/grants/client_credentials.js +26 -45
  34. package/dist/node_modules/oidc-provider/lib/actions/grants/device_code.js +23 -83
  35. package/dist/node_modules/oidc-provider/lib/actions/grants/index.js +1 -2
  36. package/dist/node_modules/oidc-provider/lib/actions/grants/pre_authorized_code.js +70 -0
  37. package/dist/node_modules/oidc-provider/lib/actions/grants/refresh_token.js +46 -59
  38. package/dist/node_modules/oidc-provider/lib/actions/index.js +10 -6
  39. package/dist/node_modules/oidc-provider/lib/actions/interaction.js +124 -113
  40. package/dist/node_modules/oidc-provider/lib/actions/introspection.js +137 -141
  41. package/dist/node_modules/oidc-provider/lib/actions/openid_credential_issuer.js +17 -0
  42. package/dist/node_modules/oidc-provider/lib/actions/registration.js +30 -6
  43. package/dist/node_modules/oidc-provider/lib/actions/revocation.js +56 -61
  44. package/dist/node_modules/oidc-provider/lib/actions/token.js +98 -54
  45. package/dist/node_modules/oidc-provider/lib/actions/userinfo.js +24 -102
  46. package/dist/node_modules/oidc-provider/lib/adapters/memory_adapter.js +107 -23
  47. package/dist/node_modules/oidc-provider/lib/consts/client_attributes.js +5 -5
  48. package/dist/node_modules/oidc-provider/lib/consts/jwa.js +3 -3
  49. package/dist/node_modules/oidc-provider/lib/consts/param_list.js +1 -1
  50. package/dist/node_modules/oidc-provider/lib/helpers/_/defaults.js +0 -2
  51. package/dist/node_modules/oidc-provider/lib/helpers/_/is_json_object.js +1 -0
  52. package/dist/node_modules/oidc-provider/lib/helpers/_/merge.js +0 -2
  53. package/dist/node_modules/oidc-provider/lib/helpers/_/omit_by.js +0 -2
  54. package/dist/node_modules/oidc-provider/lib/helpers/_/pick.js +1 -1
  55. package/dist/node_modules/oidc-provider/lib/helpers/_/remove.js +1 -1
  56. package/dist/node_modules/oidc-provider/lib/helpers/add_client.js +0 -1
  57. package/dist/node_modules/oidc-provider/lib/helpers/assert_provider_context.js +5 -0
  58. package/dist/node_modules/oidc-provider/lib/helpers/attention.js +2 -2
  59. package/dist/node_modules/oidc-provider/lib/helpers/challenge.js +29 -42
  60. package/dist/node_modules/oidc-provider/lib/helpers/claims.js +2 -1
  61. package/dist/node_modules/oidc-provider/lib/helpers/client_id_metadata_document.js +131 -62
  62. package/dist/node_modules/oidc-provider/lib/helpers/client_schema.js +46 -24
  63. package/dist/node_modules/oidc-provider/lib/helpers/configuration.js +363 -29
  64. package/dist/node_modules/oidc-provider/lib/helpers/configuration_result.js +84 -0
  65. package/dist/node_modules/oidc-provider/lib/helpers/constant_equals.js +1 -1
  66. package/dist/node_modules/oidc-provider/lib/helpers/defaults.js +3166 -2757
  67. package/dist/node_modules/oidc-provider/lib/helpers/errors.js +52 -34
  68. package/dist/node_modules/oidc-provider/lib/helpers/features.js +6 -8
  69. package/dist/node_modules/oidc-provider/lib/helpers/fetch_request.js +136 -99
  70. package/dist/node_modules/oidc-provider/lib/helpers/filter_claims.js +0 -1
  71. package/dist/node_modules/oidc-provider/lib/helpers/grant_authorization.js +78 -0
  72. package/dist/node_modules/oidc-provider/lib/helpers/grant_common.js +77 -103
  73. package/dist/node_modules/oidc-provider/lib/helpers/grant_refresh_token.js +22 -0
  74. package/dist/node_modules/oidc-provider/lib/helpers/grant_response.js +58 -0
  75. package/dist/node_modules/oidc-provider/lib/helpers/grant_source.js +60 -0
  76. package/dist/node_modules/oidc-provider/lib/helpers/grants.js +33 -0
  77. package/dist/node_modules/oidc-provider/lib/helpers/initialize_adapter.js +4 -2
  78. package/dist/node_modules/oidc-provider/lib/helpers/initialize_app.js +114 -90
  79. package/dist/node_modules/oidc-provider/lib/helpers/initialize_keystore.js +61 -54
  80. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/check.js +0 -2
  81. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/index.js +3 -1
  82. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompt.js +3 -4
  83. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/consent.js +2 -5
  84. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/login.js +3 -6
  85. package/dist/node_modules/oidc-provider/lib/helpers/is_valid_scope.js +5 -0
  86. package/dist/node_modules/oidc-provider/lib/helpers/jwt.js +26 -11
  87. package/dist/node_modules/oidc-provider/lib/helpers/keystore.js +2 -4
  88. package/dist/node_modules/oidc-provider/lib/helpers/lru.js +111 -0
  89. package/dist/node_modules/oidc-provider/lib/helpers/nanoid.js +80 -3
  90. package/dist/node_modules/oidc-provider/lib/helpers/normalize_authorization_details.js +54 -0
  91. package/dist/node_modules/oidc-provider/lib/helpers/oidc_context.js +18 -33
  92. package/dist/node_modules/oidc-provider/lib/helpers/params.js +8 -19
  93. package/dist/node_modules/oidc-provider/lib/helpers/pkce.js +5 -5
  94. package/dist/node_modules/oidc-provider/lib/helpers/process_response_types.js +23 -14
  95. package/dist/node_modules/oidc-provider/lib/helpers/re_render_errors.js +4 -6
  96. package/dist/node_modules/oidc-provider/lib/helpers/resolve_resource.js +5 -2
  97. package/dist/node_modules/oidc-provider/lib/helpers/resource_server.js +0 -2
  98. package/dist/node_modules/oidc-provider/lib/helpers/revoke.js +9 -2
  99. package/dist/node_modules/oidc-provider/lib/helpers/router.js +221 -0
  100. package/dist/node_modules/oidc-provider/lib/helpers/sector_validate.js +19 -13
  101. package/dist/node_modules/oidc-provider/lib/helpers/sender_constraints.js +24 -0
  102. package/dist/node_modules/oidc-provider/lib/helpers/set_rt_bindings.js +0 -2
  103. package/dist/node_modules/oidc-provider/lib/helpers/token_find.js +36 -43
  104. package/dist/node_modules/oidc-provider/lib/helpers/user_codes.js +1 -1
  105. package/dist/node_modules/oidc-provider/lib/helpers/validate_dpop.js +40 -21
  106. package/dist/node_modules/oidc-provider/lib/helpers/weak_cache.js +4 -4
  107. package/dist/node_modules/oidc-provider/lib/index.js +1 -3
  108. package/dist/node_modules/oidc-provider/lib/models/access_token.js +42 -17
  109. package/dist/node_modules/oidc-provider/lib/models/authorization_code.js +39 -17
  110. package/dist/node_modules/oidc-provider/lib/models/backchannel_authentication_request.js +37 -15
  111. package/dist/node_modules/oidc-provider/lib/models/base_model.js +42 -21
  112. package/dist/node_modules/oidc-provider/lib/models/base_token.js +5 -3
  113. package/dist/node_modules/oidc-provider/lib/models/client.js +113 -67
  114. package/dist/node_modules/oidc-provider/lib/models/client_credentials.js +30 -9
  115. package/dist/node_modules/oidc-provider/lib/models/device_code.js +40 -17
  116. package/dist/node_modules/oidc-provider/lib/models/formats/index.js +20 -12
  117. package/dist/node_modules/oidc-provider/lib/models/formats/jwt.js +165 -166
  118. package/dist/node_modules/oidc-provider/lib/models/formats/opaque.js +57 -48
  119. package/dist/node_modules/oidc-provider/lib/models/grant.js +1 -9
  120. package/dist/node_modules/oidc-provider/lib/models/id_token.js +13 -14
  121. package/dist/node_modules/oidc-provider/lib/models/index.js +2 -0
  122. package/dist/node_modules/oidc-provider/lib/models/initial_access_token.js +14 -8
  123. package/dist/node_modules/oidc-provider/lib/models/interaction.js +2 -4
  124. package/dist/node_modules/oidc-provider/lib/models/payload.js +33 -0
  125. package/dist/node_modules/oidc-provider/lib/models/pre_authorized_code.js +28 -0
  126. package/dist/node_modules/oidc-provider/lib/models/pushed_authorization_request.js +17 -9
  127. package/dist/node_modules/oidc-provider/lib/models/refresh_token.js +57 -25
  128. package/dist/node_modules/oidc-provider/lib/models/registration_access_token.js +20 -7
  129. package/dist/node_modules/oidc-provider/lib/models/replay_detection.js +1 -3
  130. package/dist/node_modules/oidc-provider/lib/models/session.js +12 -16
  131. package/dist/node_modules/oidc-provider/lib/models/token_helpers.js +79 -0
  132. package/dist/node_modules/oidc-provider/lib/provider.js +50 -23
  133. package/dist/node_modules/oidc-provider/lib/response_modes/index.js +0 -2
  134. package/dist/node_modules/oidc-provider/lib/response_modes/jwt.js +0 -1
  135. package/dist/node_modules/oidc-provider/lib/response_modes/web_message.js +14 -4
  136. package/dist/node_modules/oidc-provider/lib/shared/access_token.js +85 -0
  137. package/dist/node_modules/oidc-provider/lib/shared/assemble_params.js +1 -1
  138. package/dist/node_modules/oidc-provider/lib/shared/attest_client_auth.js +39 -16
  139. package/dist/node_modules/oidc-provider/lib/shared/authorization_error_handler.js +79 -77
  140. package/dist/node_modules/oidc-provider/lib/shared/check_rar.js +13 -28
  141. package/dist/node_modules/oidc-provider/lib/shared/check_resource.js +20 -11
  142. package/dist/node_modules/oidc-provider/lib/shared/client_auth.js +265 -201
  143. package/dist/node_modules/oidc-provider/lib/shared/cors.js +48 -16
  144. package/dist/node_modules/oidc-provider/lib/shared/error_handler.js +13 -4
  145. package/dist/node_modules/oidc-provider/lib/shared/jwt_client_auth.js +9 -3
  146. package/dist/node_modules/oidc-provider/lib/shared/reject_dupes.js +12 -32
  147. package/dist/node_modules/oidc-provider/lib/shared/selective_body.js +54 -14
  148. package/dist/node_modules/oidc-provider/lib/shared/session.js +6 -6
  149. package/dist/node_modules/oidc-provider/lib/shared/set_www_authenticate_header.js +1 -2
  150. package/dist/node_modules/oidc-provider/lib/shared/validate_json_body.js +11 -0
  151. package/dist/node_modules/oidc-provider/lib/views/index.js +43 -14
  152. package/dist/node_modules/oidc-provider/lib/views/interaction.js +62 -144
  153. package/dist/node_modules/oidc-provider/lib/views/layout.js +29 -216
  154. package/dist/node_modules/oidc-provider/lib/views/login.js +14 -23
  155. package/dist/node_modules/{undici/lib/web/fetch/LICENSE → oidc-provider/node_modules/jose/LICENSE.md} +2 -2
  156. package/dist/node_modules/oidc-provider/node_modules/jose/README.md +150 -0
  157. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/index.d.ts +55 -0
  158. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +24 -0
  159. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +40 -0
  160. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +24 -0
  161. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +46 -0
  162. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +28 -0
  163. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +51 -0
  164. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwk/embedded.d.ts +10 -0
  165. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwk/thumbprint.d.ts +15 -0
  166. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwks/local.d.ts +17 -0
  167. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwks/remote.d.ts +94 -0
  168. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/compact/sign.d.ts +20 -0
  169. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/compact/verify.d.ts +25 -0
  170. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/flattened/sign.d.ts +22 -0
  171. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/flattened/verify.d.ts +25 -0
  172. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/general/sign.d.ts +38 -0
  173. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/general/verify.d.ts +29 -0
  174. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/decrypt.d.ts +34 -0
  175. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/encrypt.d.ts +57 -0
  176. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/sign.d.ts +21 -0
  177. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/unsecured.d.ts +19 -0
  178. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/verify.d.ts +35 -0
  179. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/export.d.ts +19 -0
  180. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/generate_key_pair.d.ts +33 -0
  181. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/generate_secret.d.ts +30 -0
  182. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/import.d.ts +67 -0
  183. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/types.d.ts +736 -0
  184. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/base64url.d.ts +16 -0
  185. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/decode_jwt.d.ts +8 -0
  186. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/decode_protected_header.d.ts +10 -0
  187. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/errors.d.ts +182 -0
  188. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/index.js +70 -0
  189. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +7 -0
  190. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +26 -0
  191. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +15 -0
  192. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +35 -0
  193. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/general/decrypt.js +40 -0
  194. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/general/encrypt.js +105 -0
  195. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwk/embedded.js +30 -0
  196. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwk/thumbprint.js +55 -0
  197. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwks/local.js +59 -0
  198. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwks/remote.js +101 -0
  199. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/compact/sign.js +20 -0
  200. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/compact/verify.js +8 -0
  201. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/flattened/sign.js +23 -0
  202. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/flattened/verify.js +12 -0
  203. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/general/sign.js +58 -0
  204. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/general/verify.js +48 -0
  205. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/decrypt.js +13 -0
  206. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/encrypt.js +45 -0
  207. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/sign.js +19 -0
  208. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/unsecured.js +34 -0
  209. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/verify.js +13 -0
  210. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/export.js +35 -0
  211. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/generate_key_pair.js +35 -0
  212. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/generate_secret.js +36 -0
  213. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/import.js +53 -0
  214. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/asn1.js +138 -0
  215. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/buffer_utils.js +75 -0
  216. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/content_encryption.js +90 -0
  217. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/deflate.js +40 -0
  218. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +116 -0
  219. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +187 -0
  220. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +75 -0
  221. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_algorithms.js +74 -0
  222. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_sign.js +46 -0
  223. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_verify.js +86 -0
  224. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +146 -0
  225. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key.js +155 -0
  226. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_algorithm.js +15 -0
  227. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_descriptor.js +9 -0
  228. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_management.js +196 -0
  229. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/validate.js +122 -0
  230. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/base64url.js +16 -0
  231. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/decode_jwt.js +33 -0
  232. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/decode_protected_header.js +19 -0
  233. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/errors.js +109 -0
  234. package/dist/node_modules/oidc-provider/node_modules/jose/package.json +134 -0
  235. package/dist/node_modules/oidc-provider/node_modules/{jsesc/LICENSE-MIT.txt → koa/LICENSE} +10 -8
  236. package/dist/node_modules/oidc-provider/node_modules/koa/Readme.md +279 -0
  237. package/dist/node_modules/oidc-provider/node_modules/koa/dist/koa.mjs +4 -0
  238. package/dist/node_modules/oidc-provider/node_modules/koa/lib/application.js +344 -0
  239. package/dist/node_modules/oidc-provider/node_modules/koa/lib/context.js +248 -0
  240. package/dist/node_modules/oidc-provider/node_modules/koa/lib/is-stream.js +20 -0
  241. package/dist/node_modules/oidc-provider/node_modules/koa/lib/only.js +9 -0
  242. package/dist/node_modules/oidc-provider/node_modules/koa/lib/request.js +748 -0
  243. package/dist/node_modules/oidc-provider/node_modules/koa/lib/response.js +660 -0
  244. package/dist/node_modules/oidc-provider/node_modules/koa/lib/search-params.js +33 -0
  245. package/dist/node_modules/oidc-provider/node_modules/koa/package.json +73 -0
  246. package/dist/node_modules/oidc-provider/node_modules/media-typer/HISTORY.md +50 -0
  247. package/dist/node_modules/oidc-provider/node_modules/media-typer/LICENSE +22 -0
  248. package/dist/node_modules/oidc-provider/node_modules/media-typer/README.md +93 -0
  249. package/dist/node_modules/oidc-provider/node_modules/media-typer/index.js +143 -0
  250. package/dist/node_modules/oidc-provider/node_modules/media-typer/package.json +33 -0
  251. package/dist/node_modules/oidc-provider/node_modules/mime-db/HISTORY.md +541 -0
  252. package/dist/node_modules/oidc-provider/node_modules/mime-db/LICENSE +23 -0
  253. package/dist/node_modules/oidc-provider/node_modules/mime-db/README.md +109 -0
  254. package/dist/node_modules/oidc-provider/node_modules/mime-db/db.json +9342 -0
  255. package/dist/node_modules/oidc-provider/node_modules/mime-db/index.js +12 -0
  256. package/dist/node_modules/oidc-provider/node_modules/mime-db/package.json +56 -0
  257. package/dist/node_modules/oidc-provider/node_modules/mime-types/HISTORY.md +421 -0
  258. package/dist/node_modules/oidc-provider/node_modules/mime-types/LICENSE +23 -0
  259. package/dist/node_modules/oidc-provider/node_modules/mime-types/README.md +126 -0
  260. package/dist/node_modules/oidc-provider/node_modules/mime-types/index.js +211 -0
  261. package/dist/node_modules/oidc-provider/node_modules/mime-types/mimeScore.js +52 -0
  262. package/dist/node_modules/oidc-provider/node_modules/mime-types/package.json +45 -0
  263. package/dist/node_modules/oidc-provider/node_modules/type-is/HISTORY.md +292 -0
  264. package/dist/node_modules/oidc-provider/node_modules/type-is/LICENSE +23 -0
  265. package/dist/node_modules/oidc-provider/node_modules/type-is/README.md +198 -0
  266. package/dist/node_modules/oidc-provider/node_modules/type-is/index.js +250 -0
  267. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/HISTORY.md +428 -0
  268. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/LICENSE +23 -0
  269. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/README.md +126 -0
  270. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/index.js +211 -0
  271. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/mimeScore.js +57 -0
  272. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/package.json +49 -0
  273. package/dist/node_modules/oidc-provider/node_modules/type-is/package.json +47 -0
  274. package/dist/node_modules/oidc-provider/package.json +5 -42
  275. package/package.json +3 -3
  276. package/dist/node_modules/eta/LICENSE +0 -7
  277. package/dist/node_modules/eta/README.md +0 -185
  278. package/dist/node_modules/eta/dist/core.d.ts +0 -179
  279. package/dist/node_modules/eta/dist/core.d.ts.map +0 -1
  280. package/dist/node_modules/eta/dist/core.js +0 -42
  281. package/dist/node_modules/eta/dist/core.js.map +0 -1
  282. package/dist/node_modules/eta/dist/index.cjs +0 -542
  283. package/dist/node_modules/eta/dist/index.cjs.map +0 -1
  284. package/dist/node_modules/eta/dist/index.d.cts +0 -187
  285. package/dist/node_modules/eta/dist/index.d.cts.map +0 -1
  286. package/dist/node_modules/eta/dist/index.d.mts +0 -187
  287. package/dist/node_modules/eta/dist/index.d.mts.map +0 -1
  288. package/dist/node_modules/eta/dist/index.mjs +0 -512
  289. package/dist/node_modules/eta/dist/index.mjs.map +0 -1
  290. package/dist/node_modules/eta/package.json +0 -75
  291. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_claims.js +0 -28
  292. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_defaults.js +0 -17
  293. package/dist/node_modules/oidc-provider/lib/actions/authorization/authenticated_client_id.js +0 -6
  294. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_remap_errors.js +0 -17
  295. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_response.js +0 -41
  296. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_ciba_context.js +0 -12
  297. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_claims.js +0 -68
  298. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client.js +0 -21
  299. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client_grant_type.js +0 -21
  300. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_dpop_jkt.js +0 -35
  301. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_extra_params.js +0 -18
  302. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_id_token_hint.js +0 -23
  303. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_max_age.js +0 -25
  304. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_openid_scope.js +0 -47
  305. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_prompt.js +0 -25
  306. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_redirect_uri.js +0 -41
  307. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_requested_expiry.js +0 -16
  308. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_mode.js +0 -54
  309. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_type.js +0 -26
  310. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_scope.js +0 -53
  311. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_load_account.js +0 -58
  312. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_required.js +0 -13
  313. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_authorization_response.js +0 -31
  314. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow.js +0 -31
  315. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_errors.js +0 -37
  316. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_response.js +0 -55
  317. package/dist/node_modules/oidc-provider/lib/actions/authorization/interaction_emit.js +0 -9
  318. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_account.js +0 -15
  319. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_pushed_authorization_request.js +0 -36
  320. package/dist/node_modules/oidc-provider/lib/actions/authorization/oauth_required.js +0 -11
  321. package/dist/node_modules/oidc-provider/lib/actions/authorization/oidc_required.js +0 -27
  322. package/dist/node_modules/oidc-provider/lib/actions/authorization/one_redirect_uri_clients.js +0 -20
  323. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_remap_errors.js +0 -17
  324. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_response.js +0 -65
  325. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_registration.js +0 -12
  326. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_request_and_uri.js +0 -12
  327. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_unsupported.js +0 -33
  328. package/dist/node_modules/oidc-provider/lib/actions/authorization/strip_outside_jar_params.js +0 -19
  329. package/dist/node_modules/oidc-provider/lib/actions/authorization/unsupported_rar.js +0 -9
  330. package/dist/node_modules/oidc-provider/lib/helpers/_/pick_by.js +0 -10
  331. package/dist/node_modules/oidc-provider/lib/models/formats/dynamic.js +0 -21
  332. package/dist/node_modules/oidc-provider/lib/models/mixins/apply.js +0 -4
  333. package/dist/node_modules/oidc-provider/lib/models/mixins/consumable.js +0 -17
  334. package/dist/node_modules/oidc-provider/lib/models/mixins/has_format.js +0 -46
  335. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_id.js +0 -12
  336. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_type.js +0 -8
  337. package/dist/node_modules/oidc-provider/lib/models/mixins/has_policies.js +0 -38
  338. package/dist/node_modules/oidc-provider/lib/models/mixins/is_attestation_constrained.js +0 -15
  339. package/dist/node_modules/oidc-provider/lib/models/mixins/is_sender_constrained.js +0 -50
  340. package/dist/node_modules/oidc-provider/lib/models/mixins/is_session_bound.js +0 -38
  341. package/dist/node_modules/oidc-provider/lib/models/mixins/set_audience.js +0 -21
  342. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_auth.js +0 -16
  343. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_pkce.js +0 -9
  344. package/dist/node_modules/oidc-provider/lib/shared/conditional_body.js +0 -9
  345. package/dist/node_modules/oidc-provider/node_modules/@koa/router/LICENSE +0 -21
  346. package/dist/node_modules/oidc-provider/node_modules/@koa/router/README.md +0 -1370
  347. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.mts +0 -1003
  348. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.ts +0 -1003
  349. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.js +0 -1616
  350. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.mjs +0 -1573
  351. package/dist/node_modules/oidc-provider/node_modules/@koa/router/package.json +0 -122
  352. package/dist/node_modules/oidc-provider/node_modules/http-errors/HISTORY.md +0 -186
  353. package/dist/node_modules/oidc-provider/node_modules/http-errors/LICENSE +0 -23
  354. package/dist/node_modules/oidc-provider/node_modules/http-errors/README.md +0 -169
  355. package/dist/node_modules/oidc-provider/node_modules/http-errors/index.js +0 -290
  356. package/dist/node_modules/oidc-provider/node_modules/http-errors/package.json +0 -54
  357. package/dist/node_modules/oidc-provider/node_modules/jsesc/README.md +0 -422
  358. package/dist/node_modules/oidc-provider/node_modules/jsesc/bin/jsesc +0 -148
  359. package/dist/node_modules/oidc-provider/node_modules/jsesc/jsesc.js +0 -337
  360. package/dist/node_modules/oidc-provider/node_modules/jsesc/man/jsesc.1 +0 -94
  361. package/dist/node_modules/oidc-provider/node_modules/jsesc/package.json +0 -56
  362. package/dist/node_modules/oidc-provider/node_modules/nanoid/LICENSE +0 -20
  363. package/dist/node_modules/oidc-provider/node_modules/nanoid/README.md +0 -38
  364. package/dist/node_modules/oidc-provider/node_modules/nanoid/bin/nanoid.js +0 -55
  365. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.browser.js +0 -29
  366. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.d.ts +0 -106
  367. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.js +0 -47
  368. package/dist/node_modules/oidc-provider/node_modules/nanoid/nanoid.js +0 -1
  369. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.d.ts +0 -48
  370. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.js +0 -21
  371. package/dist/node_modules/oidc-provider/node_modules/nanoid/package.json +0 -46
  372. package/dist/node_modules/oidc-provider/node_modules/nanoid/url-alphabet/index.js +0 -2
  373. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/LICENSE +0 -21
  374. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/Readme.md +0 -224
  375. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.d.ts +0 -147
  376. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js +0 -431
  377. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js.map +0 -1
  378. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/package.json +0 -64
  379. package/dist/node_modules/quick-lru/index.d.ts +0 -178
  380. package/dist/node_modules/quick-lru/index.js +0 -329
  381. package/dist/node_modules/quick-lru/license +0 -9
  382. package/dist/node_modules/quick-lru/package.json +0 -54
  383. package/dist/node_modules/quick-lru/readme.md +0 -236
  384. package/dist/node_modules/statuses/HISTORY.md +0 -87
  385. package/dist/node_modules/statuses/LICENSE +0 -23
  386. package/dist/node_modules/statuses/README.md +0 -139
  387. package/dist/node_modules/statuses/codes.json +0 -65
  388. package/dist/node_modules/statuses/index.js +0 -146
  389. package/dist/node_modules/statuses/package.json +0 -49
  390. package/dist/node_modules/undici/LICENSE +0 -21
  391. package/dist/node_modules/undici/README.md +0 -741
  392. package/dist/node_modules/undici/docs/docs/api/Agent.md +0 -84
  393. package/dist/node_modules/undici/docs/docs/api/BalancedPool.md +0 -99
  394. package/dist/node_modules/undici/docs/docs/api/CacheStorage.md +0 -30
  395. package/dist/node_modules/undici/docs/docs/api/CacheStore.md +0 -164
  396. package/dist/node_modules/undici/docs/docs/api/Client.md +0 -285
  397. package/dist/node_modules/undici/docs/docs/api/ClientStats.md +0 -27
  398. package/dist/node_modules/undici/docs/docs/api/Connector.md +0 -115
  399. package/dist/node_modules/undici/docs/docs/api/ContentType.md +0 -57
  400. package/dist/node_modules/undici/docs/docs/api/Cookies.md +0 -101
  401. package/dist/node_modules/undici/docs/docs/api/Debug.md +0 -62
  402. package/dist/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +0 -315
  403. package/dist/node_modules/undici/docs/docs/api/Dispatcher.md +0 -1392
  404. package/dist/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +0 -159
  405. package/dist/node_modules/undici/docs/docs/api/Errors.md +0 -49
  406. package/dist/node_modules/undici/docs/docs/api/EventSource.md +0 -45
  407. package/dist/node_modules/undici/docs/docs/api/Fetch.md +0 -60
  408. package/dist/node_modules/undici/docs/docs/api/GlobalInstallation.md +0 -139
  409. package/dist/node_modules/undici/docs/docs/api/H2CClient.md +0 -263
  410. package/dist/node_modules/undici/docs/docs/api/MockAgent.md +0 -603
  411. package/dist/node_modules/undici/docs/docs/api/MockCallHistory.md +0 -197
  412. package/dist/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +0 -43
  413. package/dist/node_modules/undici/docs/docs/api/MockClient.md +0 -81
  414. package/dist/node_modules/undici/docs/docs/api/MockErrors.md +0 -12
  415. package/dist/node_modules/undici/docs/docs/api/MockPool.md +0 -555
  416. package/dist/node_modules/undici/docs/docs/api/Pool.md +0 -84
  417. package/dist/node_modules/undici/docs/docs/api/PoolStats.md +0 -35
  418. package/dist/node_modules/undici/docs/docs/api/ProxyAgent.md +0 -229
  419. package/dist/node_modules/undici/docs/docs/api/RedirectHandler.md +0 -93
  420. package/dist/node_modules/undici/docs/docs/api/RetryAgent.md +0 -50
  421. package/dist/node_modules/undici/docs/docs/api/RetryHandler.md +0 -118
  422. package/dist/node_modules/undici/docs/docs/api/RoundRobinPool.md +0 -145
  423. package/dist/node_modules/undici/docs/docs/api/SnapshotAgent.md +0 -616
  424. package/dist/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +0 -274
  425. package/dist/node_modules/undici/docs/docs/api/Util.md +0 -25
  426. package/dist/node_modules/undici/docs/docs/api/WebSocket.md +0 -141
  427. package/dist/node_modules/undici/docs/docs/api/api-lifecycle.md +0 -91
  428. package/dist/node_modules/undici/docs/docs/best-practices/client-certificate.md +0 -64
  429. package/dist/node_modules/undici/docs/docs/best-practices/crawling.md +0 -58
  430. package/dist/node_modules/undici/docs/docs/best-practices/mocking-request.md +0 -190
  431. package/dist/node_modules/undici/docs/docs/best-practices/proxy.md +0 -127
  432. package/dist/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +0 -224
  433. package/dist/node_modules/undici/docs/docs/best-practices/writing-tests.md +0 -63
  434. package/dist/node_modules/undici/index-fetch.js +0 -65
  435. package/dist/node_modules/undici/index.d.ts +0 -3
  436. package/dist/node_modules/undici/index.js +0 -234
  437. package/dist/node_modules/undici/lib/api/abort-signal.js +0 -59
  438. package/dist/node_modules/undici/lib/api/api-connect.js +0 -110
  439. package/dist/node_modules/undici/lib/api/api-pipeline.js +0 -252
  440. package/dist/node_modules/undici/lib/api/api-request.js +0 -214
  441. package/dist/node_modules/undici/lib/api/api-stream.js +0 -209
  442. package/dist/node_modules/undici/lib/api/api-upgrade.js +0 -111
  443. package/dist/node_modules/undici/lib/api/index.js +0 -7
  444. package/dist/node_modules/undici/lib/api/readable.js +0 -580
  445. package/dist/node_modules/undici/lib/cache/memory-cache-store.js +0 -234
  446. package/dist/node_modules/undici/lib/cache/sqlite-cache-store.js +0 -461
  447. package/dist/node_modules/undici/lib/core/connect.js +0 -137
  448. package/dist/node_modules/undici/lib/core/constants.js +0 -143
  449. package/dist/node_modules/undici/lib/core/diagnostics.js +0 -227
  450. package/dist/node_modules/undici/lib/core/errors.js +0 -477
  451. package/dist/node_modules/undici/lib/core/request.js +0 -438
  452. package/dist/node_modules/undici/lib/core/socks5-client.js +0 -407
  453. package/dist/node_modules/undici/lib/core/socks5-utils.js +0 -203
  454. package/dist/node_modules/undici/lib/core/symbols.js +0 -75
  455. package/dist/node_modules/undici/lib/core/tree.js +0 -160
  456. package/dist/node_modules/undici/lib/core/util.js +0 -992
  457. package/dist/node_modules/undici/lib/dispatcher/agent.js +0 -158
  458. package/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -219
  459. package/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1610
  460. package/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -995
  461. package/dist/node_modules/undici/lib/dispatcher/client.js +0 -659
  462. package/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -165
  463. package/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -48
  464. package/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -146
  465. package/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -135
  466. package/dist/node_modules/undici/lib/dispatcher/h2c-client.js +0 -51
  467. package/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -214
  468. package/dist/node_modules/undici/lib/dispatcher/pool.js +0 -118
  469. package/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -318
  470. package/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  471. package/dist/node_modules/undici/lib/dispatcher/round-robin-pool.js +0 -137
  472. package/dist/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +0 -249
  473. package/dist/node_modules/undici/lib/encoding/index.js +0 -33
  474. package/dist/node_modules/undici/lib/global.js +0 -50
  475. package/dist/node_modules/undici/lib/handler/cache-handler.js +0 -578
  476. package/dist/node_modules/undici/lib/handler/cache-revalidation-handler.js +0 -124
  477. package/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -67
  478. package/dist/node_modules/undici/lib/handler/deduplication-handler.js +0 -460
  479. package/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -238
  480. package/dist/node_modules/undici/lib/handler/retry-handler.js +0 -394
  481. package/dist/node_modules/undici/lib/handler/unwrap-handler.js +0 -100
  482. package/dist/node_modules/undici/lib/handler/wrap-handler.js +0 -105
  483. package/dist/node_modules/undici/lib/interceptor/cache.js +0 -495
  484. package/dist/node_modules/undici/lib/interceptor/decompress.js +0 -259
  485. package/dist/node_modules/undici/lib/interceptor/deduplicate.js +0 -117
  486. package/dist/node_modules/undici/lib/interceptor/dns.js +0 -571
  487. package/dist/node_modules/undici/lib/interceptor/dump.js +0 -112
  488. package/dist/node_modules/undici/lib/interceptor/redirect.js +0 -21
  489. package/dist/node_modules/undici/lib/interceptor/response-error.js +0 -95
  490. package/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  491. package/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  492. package/dist/node_modules/undici/lib/llhttp/constants.d.ts +0 -195
  493. package/dist/node_modules/undici/lib/llhttp/constants.js +0 -531
  494. package/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -15
  495. package/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -15
  496. package/dist/node_modules/undici/lib/llhttp/utils.d.ts +0 -2
  497. package/dist/node_modules/undici/lib/llhttp/utils.js +0 -12
  498. package/dist/node_modules/undici/lib/mock/mock-agent.js +0 -232
  499. package/dist/node_modules/undici/lib/mock/mock-call-history.js +0 -248
  500. package/dist/node_modules/undici/lib/mock/mock-client.js +0 -68
  501. package/dist/node_modules/undici/lib/mock/mock-errors.js +0 -29
  502. package/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -209
  503. package/dist/node_modules/undici/lib/mock/mock-pool.js +0 -68
  504. package/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -32
  505. package/dist/node_modules/undici/lib/mock/mock-utils.js +0 -486
  506. package/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  507. package/dist/node_modules/undici/lib/mock/snapshot-agent.js +0 -353
  508. package/dist/node_modules/undici/lib/mock/snapshot-recorder.js +0 -588
  509. package/dist/node_modules/undici/lib/mock/snapshot-utils.js +0 -158
  510. package/dist/node_modules/undici/lib/util/cache.js +0 -407
  511. package/dist/node_modules/undici/lib/util/date.js +0 -653
  512. package/dist/node_modules/undici/lib/util/promise.js +0 -28
  513. package/dist/node_modules/undici/lib/util/runtime-features.js +0 -124
  514. package/dist/node_modules/undici/lib/util/stats.js +0 -32
  515. package/dist/node_modules/undici/lib/util/timers.js +0 -425
  516. package/dist/node_modules/undici/lib/web/cache/cache.js +0 -864
  517. package/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  518. package/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  519. package/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  520. package/dist/node_modules/undici/lib/web/cookies/index.js +0 -199
  521. package/dist/node_modules/undici/lib/web/cookies/parse.js +0 -322
  522. package/dist/node_modules/undici/lib/web/cookies/util.js +0 -282
  523. package/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -399
  524. package/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -501
  525. package/dist/node_modules/undici/lib/web/eventsource/util.js +0 -29
  526. package/dist/node_modules/undici/lib/web/fetch/body.js +0 -509
  527. package/dist/node_modules/undici/lib/web/fetch/constants.js +0 -131
  528. package/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -596
  529. package/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -575
  530. package/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -259
  531. package/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  532. package/dist/node_modules/undici/lib/web/fetch/headers.js +0 -719
  533. package/dist/node_modules/undici/lib/web/fetch/index.js +0 -2397
  534. package/dist/node_modules/undici/lib/web/fetch/request.js +0 -1115
  535. package/dist/node_modules/undici/lib/web/fetch/response.js +0 -641
  536. package/dist/node_modules/undici/lib/web/fetch/util.js +0 -1520
  537. package/dist/node_modules/undici/lib/web/infra/index.js +0 -229
  538. package/dist/node_modules/undici/lib/web/subresource-integrity/Readme.md +0 -9
  539. package/dist/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js +0 -307
  540. package/dist/node_modules/undici/lib/web/webidl/index.js +0 -1006
  541. package/dist/node_modules/undici/lib/web/websocket/connection.js +0 -329
  542. package/dist/node_modules/undici/lib/web/websocket/constants.js +0 -126
  543. package/dist/node_modules/undici/lib/web/websocket/events.js +0 -331
  544. package/dist/node_modules/undici/lib/web/websocket/frame.js +0 -133
  545. package/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -118
  546. package/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -450
  547. package/dist/node_modules/undici/lib/web/websocket/sender.js +0 -109
  548. package/dist/node_modules/undici/lib/web/websocket/stream/websocketerror.js +0 -104
  549. package/dist/node_modules/undici/lib/web/websocket/stream/websocketstream.js +0 -497
  550. package/dist/node_modules/undici/lib/web/websocket/util.js +0 -347
  551. package/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -751
  552. package/dist/node_modules/undici/package.json +0 -152
  553. package/dist/node_modules/undici/scripts/strip-comments.js +0 -10
  554. package/dist/node_modules/undici/types/README.md +0 -6
  555. package/dist/node_modules/undici/types/agent.d.ts +0 -32
  556. package/dist/node_modules/undici/types/api.d.ts +0 -43
  557. package/dist/node_modules/undici/types/balanced-pool.d.ts +0 -30
  558. package/dist/node_modules/undici/types/cache-interceptor.d.ts +0 -179
  559. package/dist/node_modules/undici/types/cache.d.ts +0 -36
  560. package/dist/node_modules/undici/types/client-stats.d.ts +0 -15
  561. package/dist/node_modules/undici/types/client.d.ts +0 -123
  562. package/dist/node_modules/undici/types/connector.d.ts +0 -36
  563. package/dist/node_modules/undici/types/content-type.d.ts +0 -21
  564. package/dist/node_modules/undici/types/cookies.d.ts +0 -30
  565. package/dist/node_modules/undici/types/diagnostics-channel.d.ts +0 -74
  566. package/dist/node_modules/undici/types/dispatcher.d.ts +0 -273
  567. package/dist/node_modules/undici/types/env-http-proxy-agent.d.ts +0 -22
  568. package/dist/node_modules/undici/types/errors.d.ts +0 -177
  569. package/dist/node_modules/undici/types/eventsource.d.ts +0 -66
  570. package/dist/node_modules/undici/types/fetch.d.ts +0 -231
  571. package/dist/node_modules/undici/types/formdata.d.ts +0 -114
  572. package/dist/node_modules/undici/types/global-dispatcher.d.ts +0 -9
  573. package/dist/node_modules/undici/types/global-origin.d.ts +0 -7
  574. package/dist/node_modules/undici/types/h2c-client.d.ts +0 -73
  575. package/dist/node_modules/undici/types/handlers.d.ts +0 -14
  576. package/dist/node_modules/undici/types/header.d.ts +0 -160
  577. package/dist/node_modules/undici/types/index.d.ts +0 -91
  578. package/dist/node_modules/undici/types/interceptors.d.ts +0 -80
  579. package/dist/node_modules/undici/types/mock-agent.d.ts +0 -68
  580. package/dist/node_modules/undici/types/mock-call-history.d.ts +0 -111
  581. package/dist/node_modules/undici/types/mock-client.d.ts +0 -27
  582. package/dist/node_modules/undici/types/mock-errors.d.ts +0 -12
  583. package/dist/node_modules/undici/types/mock-interceptor.d.ts +0 -94
  584. package/dist/node_modules/undici/types/mock-pool.d.ts +0 -27
  585. package/dist/node_modules/undici/types/patch.d.ts +0 -29
  586. package/dist/node_modules/undici/types/pool-stats.d.ts +0 -19
  587. package/dist/node_modules/undici/types/pool.d.ts +0 -41
  588. package/dist/node_modules/undici/types/proxy-agent.d.ts +0 -29
  589. package/dist/node_modules/undici/types/readable.d.ts +0 -68
  590. package/dist/node_modules/undici/types/retry-agent.d.ts +0 -8
  591. package/dist/node_modules/undici/types/retry-handler.d.ts +0 -125
  592. package/dist/node_modules/undici/types/round-robin-pool.d.ts +0 -41
  593. package/dist/node_modules/undici/types/snapshot-agent.d.ts +0 -109
  594. package/dist/node_modules/undici/types/socks5-proxy-agent.d.ts +0 -25
  595. package/dist/node_modules/undici/types/util.d.ts +0 -18
  596. package/dist/node_modules/undici/types/utility.d.ts +0 -7
  597. package/dist/node_modules/undici/types/webidl.d.ts +0 -347
  598. package/dist/node_modules/undici/types/websocket.d.ts +0 -188
@@ -1,74 +1,118 @@
1
1
  import presence from '../helpers/validate_presence.js';
2
2
  import instance from '../helpers/weak_cache.js';
3
- import { UnsupportedGrantType, InvalidRequest } from '../helpers/errors.js';
3
+ import isValidScope from '../helpers/is_valid_scope.js';
4
+ import {
5
+ InvalidRequest,
6
+ InvalidScope,
7
+ InvalidTarget,
8
+ UnsupportedGrantType,
9
+ } from '../helpers/errors.js';
4
10
  import noCache from '../shared/no_cache.js';
5
- import getClientAuth from '../shared/client_auth.js';
11
+ import clientAuth, { getClientAuthParams } from '../shared/client_auth.js';
6
12
  import { urlencoded as parseBody } from '../shared/selective_body.js';
7
13
  import rejectDupes from '../shared/reject_dupes.js';
8
14
  import paramsMiddleware from '../shared/assemble_params.js';
15
+ import checkRar from '../shared/check_rar.js';
9
16
 
10
17
  const grantTypeSet = new Set(['grant_type']);
11
18
 
12
- export default function tokenAction(provider) {
13
- const { params: authParams, middleware: clientAuth } = getClientAuth(provider);
14
- const { grantTypeParams } = instance(provider);
15
-
16
- return [
17
- noCache,
18
- parseBody,
19
- paramsMiddleware.bind(undefined, grantTypeParams.get(undefined)),
20
- ...clientAuth,
21
-
22
- rejectDupes.bind(undefined, { only: grantTypeSet }),
23
-
24
- async function stripGrantIrrelevantParams(ctx, next) {
25
- const grantParams = grantTypeParams.get(ctx.oidc.params.grant_type);
26
- if (grantParams) {
27
- Object.keys(ctx.oidc.params).forEach((key) => {
28
- if (!(authParams.has(key) || grantParams.has(key))) {
29
- delete ctx.oidc.params[key];
30
- }
31
- });
32
- }
33
- await next();
34
- },
19
+ export default [
20
+ noCache,
21
+ parseBody,
22
+ function assembleTokenParams(ctx, next) {
23
+ const { grantTypeParams } = instance(ctx.oidc.provider);
24
+ const allowList = new Set([
25
+ ...grantTypeParams.get(undefined),
26
+ ...getClientAuthParams(ctx),
27
+ ]);
28
+ return paramsMiddleware(allowList, ctx, next);
29
+ },
30
+ ...clientAuth,
35
31
 
36
- async function supportedGrantTypeCheck(ctx, next) {
37
- presence(ctx, 'grant_type');
32
+ rejectDupes.bind(undefined, { only: grantTypeSet }),
38
33
 
39
- const supported = instance(provider).configuration.grantTypes;
34
+ async function stripGrantIrrelevantParams(ctx, next) {
35
+ const { grantTypeParams } = instance(ctx.oidc.provider);
36
+ const authParams = getClientAuthParams(ctx);
37
+ const grantParams = grantTypeParams.get(ctx.oidc.params.grant_type);
38
+ if (grantParams) {
39
+ Object.keys(ctx.oidc.params).forEach((key) => {
40
+ if (!(authParams.has(key) || grantParams.has(key))) {
41
+ delete ctx.oidc.params[key];
42
+ }
43
+ });
44
+ }
45
+ await next();
46
+ },
40
47
 
41
- if (!supported.has(ctx.oidc.params.grant_type) || ctx.oidc.params.grant_type === 'implicit') {
42
- throw new UnsupportedGrantType();
43
- }
48
+ async function supportedGrantTypeCheck(ctx, next) {
49
+ presence(ctx, 'grant_type');
44
50
 
45
- await next();
46
- },
51
+ const supported = instance(ctx.oidc.provider).configuration.grantTypes;
47
52
 
48
- async function allowedGrantTypeCheck(ctx, next) {
49
- if (!ctx.oidc.client.grantTypeAllowed(ctx.oidc.params.grant_type)) {
50
- throw new InvalidRequest('requested grant type is not allowed for this client');
51
- }
53
+ if (!supported.has(ctx.oidc.params.grant_type) || ctx.oidc.params.grant_type === 'implicit') {
54
+ throw new UnsupportedGrantType();
55
+ }
56
+
57
+ await next();
58
+ },
59
+
60
+ async function allowedGrantTypeCheck(ctx, next) {
61
+ if (!ctx.oidc.client.grantTypeAllowed(ctx.oidc.params.grant_type)) {
62
+ throw new InvalidRequest('requested grant type is not allowed for this client');
63
+ }
64
+
65
+ await next();
66
+ },
52
67
 
53
- await next();
54
- },
68
+ async function rejectDupesOptionalExcept(ctx, next) {
69
+ const { grantTypeDupes } = instance(ctx.oidc.provider);
70
+ const grantType = ctx.oidc.params.grant_type;
71
+ if (grantTypeDupes.has(grantType)) {
72
+ return rejectDupes({ except: grantTypeDupes.get(grantType) }, ctx, next);
73
+ }
74
+ return rejectDupes({}, ctx, next);
75
+ },
55
76
 
56
- async function rejectDupesOptionalExcept(ctx, next) {
57
- const { grantTypeDupes } = instance(provider);
58
- const grantType = ctx.oidc.params.grant_type;
59
- if (grantTypeDupes.has(grantType)) {
60
- return rejectDupes({ except: grantTypeDupes.get(grantType) }, ctx, next);
77
+ async function validateScope(ctx, next) {
78
+ if (!isValidScope(ctx.oidc.params.scope)) {
79
+ throw new InvalidScope('scope contains invalid characters');
80
+ }
81
+
82
+ return next();
83
+ },
84
+
85
+ checkRar,
86
+
87
+ async function ensureRarResource(ctx, next) {
88
+ if (ctx.oidc.params.authorization_details !== undefined) {
89
+ if (ctx.oidc.params.resource === undefined) {
90
+ const { defaultResource } = instance(ctx.oidc.provider).features.resourceIndicators;
91
+ ctx.oidc.params.resource = await defaultResource(ctx, ctx.oidc.client);
61
92
  }
62
- return rejectDupes({}, ctx, next);
63
- },
64
93
 
65
- async function callTokenHandler(ctx) {
66
- const grantType = ctx.oidc.params.grant_type;
94
+ if (
95
+ !ctx.oidc.params.resource
96
+ || (
97
+ Array.isArray(ctx.oidc.params.resource)
98
+ && ctx.oidc.params.resource.length === 0
99
+ )
100
+ ) {
101
+ throw new InvalidTarget(
102
+ 'resource indicator must be provided or defaulted to when Rich Authorization Requests are used',
103
+ );
104
+ }
105
+ }
106
+
107
+ return next();
108
+ },
109
+
110
+ async function callTokenHandler(ctx) {
111
+ const grantType = ctx.oidc.params.grant_type;
67
112
 
68
- const { grantTypeHandlers } = instance(provider);
113
+ const { grantTypeHandlers } = instance(ctx.oidc.provider);
69
114
 
70
- await grantTypeHandlers.get(grantType)(ctx);
71
- provider.emit('grant.success', ctx);
72
- },
73
- ];
74
- }
115
+ await grantTypeHandlers.get(grantType)(ctx);
116
+ ctx.oidc.provider.emit('grant.success', ctx);
117
+ },
118
+ ];
@@ -1,23 +1,32 @@
1
1
  import difference from '../helpers/_/difference.js';
2
- import bodyParser from '../shared/conditional_body.js';
2
+ import { urlencoded as parseBody } from '../shared/selective_body.js';
3
3
  import rejectDupes from '../shared/reject_dupes.js';
4
4
  import paramsMiddleware from '../shared/assemble_params.js';
5
5
  import noCache from '../shared/no_cache.js';
6
- import certificateThumbprint from '../helpers/certificate_thumbprint.js';
7
- import instance from '../helpers/weak_cache.js';
8
6
  import filterClaims from '../helpers/filter_claims.js';
9
- import dpopValidate, { CHALLENGE_OK_WINDOW } from '../helpers/validate_dpop.js';
10
- import epochTime from '../helpers/epoch_time.js';
11
- import { InvalidToken, InsufficientScope } from '../helpers/errors.js';
7
+ import isValidScope from '../helpers/is_valid_scope.js';
8
+ import { InvalidRequest, InvalidToken, InsufficientScope } from '../helpers/errors.js';
12
9
  import getCtxAccountClaims from '../helpers/account_claims.js';
13
10
  import getSetWWWAuthenticateHeader from '../shared/set_www_authenticate_header.js';
11
+ import {
12
+ getValidateAccessToken,
13
+ loadAccessTokenAccount,
14
+ loadAccessTokenClient,
15
+ loadAccessTokenGrant,
16
+ } from '../shared/access_token.js';
14
17
 
15
18
  const PARAM_LIST = new Set([
16
19
  'scope',
17
20
  'access_token',
18
21
  ]);
19
22
 
20
- const parseBody = bodyParser.bind(undefined, 'application/x-www-form-urlencoded');
23
+ const validateAccessToken = getValidateAccessToken({
24
+ afterFind(_ctx, accessToken) {
25
+ if (!accessToken.scopes.size || !accessToken.scopes.has('openid')) {
26
+ throw new InsufficientScope('access token missing openid scope', 'openid');
27
+ }
28
+ },
29
+ });
21
30
 
22
31
  export default [
23
32
  noCache,
@@ -28,54 +37,7 @@ export default [
28
37
  paramsMiddleware.bind(undefined, PARAM_LIST),
29
38
  rejectDupes.bind(undefined, {}),
30
39
 
31
- async function validateAccessToken(ctx, next) {
32
- const accessTokenValue = ctx.oidc.getAccessToken({ acceptDPoP: true });
33
-
34
- const dPoP = await dpopValidate(ctx, accessTokenValue);
35
-
36
- const accessToken = await ctx.oidc.provider.AccessToken.find(accessTokenValue);
37
-
38
- ctx.assert(accessToken, new InvalidToken('access token not found'));
39
-
40
- ctx.oidc.entity('AccessToken', accessToken);
41
-
42
- const { scopes } = accessToken;
43
- if (!scopes.size || !scopes.has('openid')) {
44
- throw new InsufficientScope('access token missing openid scope', 'openid');
45
- }
46
-
47
- if (accessToken['x5t#S256']) {
48
- const { getCertificate } = instance(ctx.oidc.provider).features.mTLS;
49
- const cert = getCertificate(ctx);
50
- if (!cert || accessToken['x5t#S256'] !== certificateThumbprint(cert)) {
51
- throw new InvalidToken('failed x5t#S256 verification');
52
- }
53
- }
54
-
55
- if (dPoP) {
56
- const { allowReplay } = instance(ctx.oidc.provider).features.dPoP;
57
-
58
- if (!allowReplay) {
59
- const unique = await ctx.oidc.provider.ReplayDetection.unique(
60
- accessToken.clientId,
61
- dPoP.jti,
62
- epochTime() + CHALLENGE_OK_WINDOW,
63
- );
64
-
65
- ctx.assert(unique, new InvalidToken('DPoP proof JWT Replay detected'));
66
- }
67
-
68
- if (!accessToken.jkt) {
69
- throw new InvalidToken('access token is not sender-constrained but proof of possession was provided');
70
- }
71
- }
72
-
73
- if (accessToken.jkt && (!dPoP || accessToken.jkt !== dPoP.thumbprint)) {
74
- throw new InvalidToken('failed jkt verification');
75
- }
76
-
77
- await next();
78
- },
40
+ validateAccessToken,
79
41
 
80
42
  function validateAudience(ctx, next) {
81
43
  const { oidc: { entities: { AccessToken: accessToken } } } = ctx;
@@ -89,6 +51,10 @@ export default [
89
51
 
90
52
  async function validateScope(ctx, next) {
91
53
  if (ctx.oidc.params.scope) {
54
+ if (!isValidScope(ctx.oidc.params.scope)) {
55
+ throw new InvalidRequest('scope contains invalid characters');
56
+ }
57
+
92
58
  const missing = difference(ctx.oidc.params.scope.split(' '), [...ctx.oidc.accessToken.scopes]);
93
59
 
94
60
  if (missing.length !== 0) {
@@ -98,53 +64,9 @@ export default [
98
64
  await next();
99
65
  },
100
66
 
101
- async function loadClient(ctx, next) {
102
- const client = await ctx.oidc.provider.Client.find(ctx.oidc.accessToken.clientId);
103
- ctx.assert(client, new InvalidToken('associated client not found'));
104
-
105
- ctx.oidc.entity('Client', client);
106
-
107
- await next();
108
- },
109
-
110
- async function loadAccount(ctx, next) {
111
- const account = await instance(ctx.oidc.provider).configuration.findAccount(
112
- ctx,
113
- ctx.oidc.accessToken.accountId,
114
- ctx.oidc.accessToken,
115
- );
116
-
117
- ctx.assert(account, new InvalidToken('associated account not found'));
118
- ctx.oidc.entity('Account', account);
119
-
120
- await next();
121
- },
122
-
123
- async function loadGrant(ctx, next) {
124
- const grant = await ctx.oidc.provider.Grant.find(ctx.oidc.accessToken.grantId, {
125
- ignoreExpiration: true,
126
- });
127
-
128
- if (!grant) {
129
- throw new InvalidToken('grant not found');
130
- }
131
-
132
- if (grant.isExpired) {
133
- throw new InvalidToken('grant is expired');
134
- }
135
-
136
- if (grant.clientId !== ctx.oidc.accessToken.clientId) {
137
- throw new InvalidToken('clientId mismatch');
138
- }
139
-
140
- if (grant.accountId !== ctx.oidc.accessToken.accountId) {
141
- throw new InvalidToken('accountId mismatch');
142
- }
143
-
144
- ctx.oidc.entity('Grant', grant);
145
-
146
- await next();
147
- },
67
+ loadAccessTokenClient,
68
+ loadAccessTokenAccount,
69
+ loadAccessTokenGrant,
148
70
 
149
71
  async function respond(ctx) {
150
72
  const claims = filterClaims(ctx.oidc.accessToken.claims, 'userinfo', ctx.oidc.grant);
@@ -1,8 +1,12 @@
1
- import QuickLRU from 'quick-lru';
1
+ import LRU from '../helpers/lru.js';
2
2
 
3
3
  import epochTime from '../helpers/epoch_time.js';
4
4
 
5
- let storage = new QuickLRU({ maxSize: 1000 });
5
+ function createStorage() {
6
+ return new LRU({ maxSize: 1000 });
7
+ }
8
+
9
+ let storage = createStorage();
6
10
 
7
11
  function grantKeyFor(id) {
8
12
  return `grant:${id}`;
@@ -22,11 +26,71 @@ const grantable = new Set([
22
26
  'RefreshToken',
23
27
  'DeviceCode',
24
28
  'BackchannelAuthenticationRequest',
29
+ 'PreAuthorizedCode',
25
30
  ]);
26
31
 
32
+ function storageOptions(expiresIn, clockTolerance) {
33
+ if (typeof expiresIn === 'number') {
34
+ return { maxAge: (expiresIn + clockTolerance) * 1000 };
35
+ }
36
+ return undefined;
37
+ }
38
+
39
+ function getGrantMembers(store, grantId) {
40
+ const stored = store.get(grantKeyFor(grantId));
41
+ if (stored instanceof Map) {
42
+ return stored;
43
+ }
44
+ return new Map([...stored ?? []].map((key) => [key, Infinity]));
45
+ }
46
+
47
+ function setGrantMembers(store, grantId, members) {
48
+ const now = Date.now();
49
+ for (const [key, expiresAt] of members) {
50
+ if (expiresAt <= now) {
51
+ members.delete(key);
52
+ }
53
+ }
54
+
55
+ const grantKey = grantKeyFor(grantId);
56
+ if (members.size === 0) {
57
+ store.delete(grantKey);
58
+ return;
59
+ }
60
+
61
+ const expiresAt = Math.max(...members.values());
62
+ const options = Number.isFinite(expiresAt) ? { maxAge: expiresAt - now } : undefined;
63
+ store.set(grantKey, members, options);
64
+ }
65
+
66
+ function removeSecondaryIndexes(store, id, payload) {
67
+ if (payload.uid && store.get(sessionUidKeyFor(payload.uid)) === id) {
68
+ store.delete(sessionUidKeyFor(payload.uid));
69
+ }
70
+ if (payload.userCode && store.get(userCodeKeyFor(payload.userCode)) === id) {
71
+ store.delete(userCodeKeyFor(payload.userCode));
72
+ }
73
+ }
74
+
75
+ function removeIndexes(store, model, id, key, payload) {
76
+ removeSecondaryIndexes(store, id, payload);
77
+
78
+ if (grantable.has(model) && payload.grantId) {
79
+ const members = getGrantMembers(store, payload.grantId);
80
+ members.delete(key);
81
+ setGrantMembers(store, payload.grantId, members);
82
+ }
83
+ }
84
+
27
85
  class MemoryAdapter {
28
- constructor(model) {
86
+ constructor(model, store, clockTolerance = 0) {
29
87
  this.model = model;
88
+ this.store = store;
89
+ this.clockTolerance = clockTolerance;
90
+ }
91
+
92
+ get storage() {
93
+ return this.store ?? storage;
30
94
  }
31
95
 
32
96
  key(id) {
@@ -35,61 +99,81 @@ class MemoryAdapter {
35
99
 
36
100
  async destroy(id) {
37
101
  const key = this.key(id);
38
- storage.delete(key);
102
+ const payload = this.storage.get(key);
103
+ this.storage.delete(key);
104
+ if (payload) {
105
+ removeIndexes(this.storage, this.model, id, key, payload);
106
+ }
39
107
  }
40
108
 
41
109
  async consume(id) {
42
- storage.get(this.key(id)).consumed = epochTime();
110
+ this.storage.get(this.key(id)).consumed = epochTime();
43
111
  }
44
112
 
45
113
  async find(id) {
46
- return storage.get(this.key(id));
114
+ return this.storage.get(this.key(id));
47
115
  }
48
116
 
49
117
  async findByUid(uid) {
50
- const id = storage.get(sessionUidKeyFor(uid));
118
+ const id = this.storage.get(sessionUidKeyFor(uid));
51
119
  return this.find(id);
52
120
  }
53
121
 
54
122
  async findByUserCode(userCode) {
55
- const id = storage.get(userCodeKeyFor(userCode));
123
+ const id = this.storage.get(userCodeKeyFor(userCode));
56
124
  return this.find(id);
57
125
  }
58
126
 
59
127
  async upsert(id, payload, expiresIn) {
60
128
  const key = this.key(id);
129
+ const options = storageOptions(expiresIn, this.clockTolerance);
130
+ const previous = this.storage.get(key);
131
+
132
+ if (previous) {
133
+ removeIndexes(this.storage, this.model, id, key, previous);
134
+ }
61
135
 
62
136
  if (this.model === 'Session') {
63
- storage.set(sessionUidKeyFor(payload.uid), id, expiresIn * 1000);
137
+ this.storage.set(sessionUidKeyFor(payload.uid), id, options);
64
138
  }
65
139
 
66
140
  const { grantId, userCode } = payload;
67
141
  if (grantable.has(this.model) && grantId) {
68
- const grantKey = grantKeyFor(grantId);
69
- const grant = storage.get(grantKey);
70
- if (!grant) {
71
- storage.set(grantKey, [key]);
72
- } else {
73
- grant.push(key);
74
- }
142
+ const members = getGrantMembers(this.storage, grantId);
143
+ const expiresAt = typeof expiresIn === 'number'
144
+ ? Date.now() + ((expiresIn + this.clockTolerance) * 1000)
145
+ : Infinity;
146
+ members.set(key, expiresAt);
147
+ setGrantMembers(this.storage, grantId, members);
75
148
  }
76
149
 
77
150
  if (userCode) {
78
- storage.set(userCodeKeyFor(userCode), id, expiresIn * 1000);
151
+ this.storage.set(userCodeKeyFor(userCode), id, options);
79
152
  }
80
153
 
81
- storage.set(key, payload, expiresIn * 1000);
154
+ this.storage.set(key, payload, options);
82
155
  }
83
156
 
84
- async revokeByGrantId(grantId) { // eslint-disable-line class-methods-use-this
157
+ async revokeByGrantId(grantId) {
85
158
  const grantKey = grantKeyFor(grantId);
86
- const grant = storage.get(grantKey);
87
- if (grant) {
88
- grant.forEach((token) => storage.delete(token));
89
- storage.delete(grantKey);
159
+ const members = getGrantMembers(this.storage, grantId);
160
+ if (members.size) {
161
+ for (const token of members.keys()) {
162
+ const payload = this.storage.get(token);
163
+ this.storage.delete(token);
164
+ if (payload) {
165
+ const id = payload.jti ?? token.slice(token.indexOf(':') + 1);
166
+ removeSecondaryIndexes(this.storage, id, payload);
167
+ }
168
+ }
169
+ this.storage.delete(grantKey);
90
170
  }
91
171
  }
92
172
  }
93
173
 
94
174
  export default MemoryAdapter;
175
+ export function createMemoryAdapter(clockTolerance = 0) {
176
+ const store = createStorage();
177
+ return (model) => new MemoryAdapter(model, store, clockTolerance);
178
+ }
95
179
  export function setStorage(store) { storage = store; }
@@ -49,8 +49,8 @@ const DEFAULTS = {
49
49
 
50
50
  const REQUIRED = [
51
51
  'client_id',
52
- // 'client_secret', => validated elsewhere and only needed somewhen
53
- // 'redirect_uris', => validated elsewhere and handled elsewhere
52
+
53
+
54
54
  ];
55
55
 
56
56
  const BOOL = [
@@ -115,7 +115,7 @@ const STRING = [
115
115
  'userinfo_encrypted_response_enc',
116
116
  'userinfo_signed_response_alg',
117
117
 
118
- // in arrays
118
+
119
119
  'contacts',
120
120
  'default_acr_values',
121
121
  'grant_types',
@@ -164,8 +164,8 @@ const ENUM = {
164
164
  };
165
165
 
166
166
  export const noVSCHAR = /[^\x20-\x7E]/;
167
- // const noNQCHAR = /[^\x21\x23-\x5B\x5D-\x7E]/;
168
- // const noNQSCHAR = /[^\x20-\x21\x23-\x5B\x5D-\x7E]/;
167
+
168
+
169
169
 
170
170
  const SYNTAX = {
171
171
  client_id: noVSCHAR,
@@ -13,13 +13,13 @@ if (version[0] > 24 || (version[0] === 24 && version[1] >= 7)) {
13
13
  }
14
14
 
15
15
  const encryptionAlgValues = [
16
- // asymmetric
16
+
17
17
  'RSA-OAEP',
18
18
  'RSA-OAEP-256', 'RSA-OAEP-384', 'RSA-OAEP-512',
19
19
  'ECDH-ES', 'ECDH-ES+A128KW', 'ECDH-ES+A192KW', 'ECDH-ES+A256KW',
20
- // symmetric
20
+
21
21
  'A128GCMKW', 'A192GCMKW', 'A256GCMKW', 'A128KW', 'A192KW', 'A256KW',
22
- // direct
22
+
23
23
  'dir',
24
24
  ];
25
25
 
@@ -1,6 +1,6 @@
1
1
  export default [
2
2
  'acr_values',
3
- // 'claims', // added conditionally depending on feature flag
3
+
4
4
  'claims_locales',
5
5
  'client_id',
6
6
  'code_challenge',
@@ -1,5 +1,3 @@
1
- /* eslint-disable no-continue, no-param-reassign */
2
-
3
1
  import isPlainObject from './is_plain_object.js';
4
2
 
5
3
  function defaults(deep, target, ...sources) {
@@ -0,0 +1 @@
1
+ export default (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
@@ -1,5 +1,3 @@
1
- /* eslint-disable no-param-reassign, no-continue */
2
-
3
1
  import isPlainObject from './is_plain_object.js';
4
2
 
5
3
  function merge(target, ...sources) {
@@ -1,5 +1,3 @@
1
- /* eslint-disable no-param-reassign */
2
-
3
1
  export default (object, predicate) => {
4
2
  Object.entries(object).forEach(([key, value]) => {
5
3
  if (predicate(value, key)) {
@@ -1,7 +1,7 @@
1
1
  export default (object = {}, ...properties) => {
2
2
  const result = {};
3
3
  properties.forEach((property) => {
4
- if (Object.prototype.hasOwnProperty.call(object, property)) {
4
+ if (Object.hasOwn(object, property)) {
5
5
  result[property] = object[property];
6
6
  }
7
7
  });
@@ -5,5 +5,5 @@ export default (array, predicate) => {
5
5
  remove.unshift(index);
6
6
  }
7
7
  });
8
- remove.forEach((i) => array.splice(i, 1));
8
+ remove.forEach((i) => { array.splice(i, 1); });
9
9
  };
@@ -1,4 +1,3 @@
1
- /* eslint-disable no-param-reassign */
2
1
  import sectorValidate from './sector_validate.js';
3
2
 
4
3
  export default async function add(provider, metadata, { ctx, store, cimd } = {}) {
@@ -0,0 +1,5 @@
1
+ export default function assertProviderContext(provider, ctx) {
2
+ if (ctx?.oidc?.provider !== provider) {
3
+ throw new TypeError('provider does not match ctx.oidc.provider');
4
+ }
5
+ }
@@ -14,10 +14,10 @@ if (globalThis.process?.stderr?.isTTY) {
14
14
 
15
15
  export function info(str) {
16
16
  const notice = `oidc-provider NOTICE: ${str}`;
17
- console.info(stdout ? stdout(notice) : notice); // eslint-disable-line no-console
17
+ console.info(stdout ? stdout(notice) : notice);
18
18
  }
19
19
 
20
20
  export function warn(str) {
21
21
  const warning = `oidc-provider WARNING: ${str}`;
22
- console.warn(stderr ? stderr(warning) : warning); // eslint-disable-line no-console
22
+ console.warn(stderr ? stderr(warning) : warning);
23
23
  }