@nocobase/plugin-idp-oauth 2.3.0-beta.9 → 2.4.0-alpha.10

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 (602) hide show
  1. package/build.config.ts +1 -1
  2. package/dist/client/index.js +1 -1
  3. package/dist/client-v2/{711.89a4c42afec82a37.js → 711.b95ec5ff736ba34c.js} +1 -1
  4. package/dist/client-v2/index.js +1 -1
  5. package/dist/externalVersion.js +8 -8
  6. package/dist/node_modules/light-my-request/index.js +2 -2
  7. package/dist/node_modules/light-my-request/node_modules/cookie/dist/index.d.ts +148 -0
  8. package/dist/node_modules/light-my-request/node_modules/cookie/dist/index.js +350 -0
  9. package/dist/node_modules/light-my-request/node_modules/cookie/package.json +47 -0
  10. package/dist/node_modules/light-my-request/package.json +1 -1
  11. package/dist/node_modules/ms/package.json +1 -1
  12. package/dist/node_modules/oidc-provider/README.md +28 -25
  13. package/dist/node_modules/oidc-provider/THIRD-PARTY-NOTICES.md +184 -0
  14. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba.js +169 -0
  15. package/dist/node_modules/oidc-provider/lib/actions/authorization/claims.js +132 -0
  16. package/dist/node_modules/oidc-provider/lib/actions/authorization/client.js +50 -0
  17. package/dist/node_modules/oidc-provider/lib/actions/authorization/device.js +164 -0
  18. package/dist/node_modules/oidc-provider/lib/actions/authorization/index.js +112 -163
  19. package/dist/node_modules/oidc-provider/lib/actions/authorization/interactions.js +32 -13
  20. package/dist/node_modules/oidc-provider/lib/actions/authorization/process_request_object.js +47 -25
  21. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_requests.js +127 -0
  22. package/dist/node_modules/oidc-provider/lib/actions/authorization/request_parameters.js +188 -0
  23. package/dist/node_modules/oidc-provider/lib/actions/authorization/respond.js +15 -10
  24. package/dist/node_modules/oidc-provider/lib/actions/authorization/response_parameters.js +175 -0
  25. package/dist/node_modules/oidc-provider/lib/actions/authorization/resume.js +8 -4
  26. package/dist/node_modules/oidc-provider/lib/actions/authorization/scopes.js +109 -0
  27. package/dist/node_modules/oidc-provider/lib/actions/authorization/{check_pkce.js → sender_constraints.js} +31 -8
  28. package/dist/node_modules/oidc-provider/lib/actions/authorization/{load_grant.js → session.js} +21 -4
  29. package/dist/node_modules/oidc-provider/lib/actions/challenge.js +6 -1
  30. package/dist/node_modules/oidc-provider/lib/actions/code_verification.js +1 -3
  31. package/dist/node_modules/oidc-provider/lib/actions/credential.js +757 -0
  32. package/dist/node_modules/oidc-provider/lib/actions/discovery.js +11 -2
  33. package/dist/node_modules/oidc-provider/lib/actions/end_session.js +23 -15
  34. package/dist/node_modules/oidc-provider/lib/actions/grants/authorization_code.js +24 -94
  35. package/dist/node_modules/oidc-provider/lib/actions/grants/ciba.js +22 -86
  36. package/dist/node_modules/oidc-provider/lib/actions/grants/client_credentials.js +26 -45
  37. package/dist/node_modules/oidc-provider/lib/actions/grants/device_code.js +23 -83
  38. package/dist/node_modules/oidc-provider/lib/actions/grants/index.js +1 -2
  39. package/dist/node_modules/oidc-provider/lib/actions/grants/pre_authorized_code.js +70 -0
  40. package/dist/node_modules/oidc-provider/lib/actions/grants/refresh_token.js +46 -59
  41. package/dist/node_modules/oidc-provider/lib/actions/index.js +10 -6
  42. package/dist/node_modules/oidc-provider/lib/actions/interaction.js +124 -113
  43. package/dist/node_modules/oidc-provider/lib/actions/introspection.js +137 -141
  44. package/dist/node_modules/oidc-provider/lib/actions/openid_credential_issuer.js +17 -0
  45. package/dist/node_modules/oidc-provider/lib/actions/registration.js +30 -6
  46. package/dist/node_modules/oidc-provider/lib/actions/revocation.js +56 -61
  47. package/dist/node_modules/oidc-provider/lib/actions/token.js +98 -54
  48. package/dist/node_modules/oidc-provider/lib/actions/userinfo.js +24 -102
  49. package/dist/node_modules/oidc-provider/lib/adapters/memory_adapter.js +107 -23
  50. package/dist/node_modules/oidc-provider/lib/consts/client_attributes.js +5 -5
  51. package/dist/node_modules/oidc-provider/lib/consts/jwa.js +3 -3
  52. package/dist/node_modules/oidc-provider/lib/consts/param_list.js +1 -1
  53. package/dist/node_modules/oidc-provider/lib/helpers/_/defaults.js +0 -2
  54. package/dist/node_modules/oidc-provider/lib/helpers/_/is_json_object.js +1 -0
  55. package/dist/node_modules/oidc-provider/lib/helpers/_/merge.js +0 -2
  56. package/dist/node_modules/oidc-provider/lib/helpers/_/omit_by.js +0 -2
  57. package/dist/node_modules/oidc-provider/lib/helpers/_/pick.js +1 -1
  58. package/dist/node_modules/oidc-provider/lib/helpers/_/remove.js +1 -1
  59. package/dist/node_modules/oidc-provider/lib/helpers/add_client.js +0 -1
  60. package/dist/node_modules/oidc-provider/lib/helpers/assert_provider_context.js +5 -0
  61. package/dist/node_modules/oidc-provider/lib/helpers/attention.js +2 -2
  62. package/dist/node_modules/oidc-provider/lib/helpers/challenge.js +29 -42
  63. package/dist/node_modules/oidc-provider/lib/helpers/claims.js +2 -1
  64. package/dist/node_modules/oidc-provider/lib/helpers/client_id_metadata_document.js +131 -62
  65. package/dist/node_modules/oidc-provider/lib/helpers/client_schema.js +46 -24
  66. package/dist/node_modules/oidc-provider/lib/helpers/configuration.js +363 -29
  67. package/dist/node_modules/oidc-provider/lib/helpers/configuration_result.js +84 -0
  68. package/dist/node_modules/oidc-provider/lib/helpers/constant_equals.js +1 -1
  69. package/dist/node_modules/oidc-provider/lib/helpers/defaults.js +3166 -2757
  70. package/dist/node_modules/oidc-provider/lib/helpers/errors.js +52 -34
  71. package/dist/node_modules/oidc-provider/lib/helpers/features.js +6 -8
  72. package/dist/node_modules/oidc-provider/lib/helpers/fetch_request.js +136 -99
  73. package/dist/node_modules/oidc-provider/lib/helpers/filter_claims.js +0 -1
  74. package/dist/node_modules/oidc-provider/lib/helpers/grant_authorization.js +78 -0
  75. package/dist/node_modules/oidc-provider/lib/helpers/grant_common.js +77 -103
  76. package/dist/node_modules/oidc-provider/lib/helpers/grant_refresh_token.js +22 -0
  77. package/dist/node_modules/oidc-provider/lib/helpers/grant_response.js +58 -0
  78. package/dist/node_modules/oidc-provider/lib/helpers/grant_source.js +60 -0
  79. package/dist/node_modules/oidc-provider/lib/helpers/grants.js +33 -0
  80. package/dist/node_modules/oidc-provider/lib/helpers/initialize_adapter.js +4 -2
  81. package/dist/node_modules/oidc-provider/lib/helpers/initialize_app.js +114 -90
  82. package/dist/node_modules/oidc-provider/lib/helpers/initialize_keystore.js +61 -54
  83. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/check.js +0 -2
  84. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/index.js +3 -1
  85. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompt.js +3 -4
  86. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/consent.js +2 -5
  87. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/login.js +3 -6
  88. package/dist/node_modules/oidc-provider/lib/helpers/is_valid_scope.js +5 -0
  89. package/dist/node_modules/oidc-provider/lib/helpers/jwt.js +26 -11
  90. package/dist/node_modules/oidc-provider/lib/helpers/keystore.js +2 -4
  91. package/dist/node_modules/oidc-provider/lib/helpers/lru.js +111 -0
  92. package/dist/node_modules/oidc-provider/lib/helpers/nanoid.js +80 -3
  93. package/dist/node_modules/oidc-provider/lib/helpers/normalize_authorization_details.js +54 -0
  94. package/dist/node_modules/oidc-provider/lib/helpers/oidc_context.js +18 -33
  95. package/dist/node_modules/oidc-provider/lib/helpers/params.js +8 -19
  96. package/dist/node_modules/oidc-provider/lib/helpers/pkce.js +5 -5
  97. package/dist/node_modules/oidc-provider/lib/helpers/process_response_types.js +23 -14
  98. package/dist/node_modules/oidc-provider/lib/helpers/re_render_errors.js +4 -6
  99. package/dist/node_modules/oidc-provider/lib/helpers/resolve_resource.js +5 -2
  100. package/dist/node_modules/oidc-provider/lib/helpers/resource_server.js +0 -2
  101. package/dist/node_modules/oidc-provider/lib/helpers/revoke.js +9 -2
  102. package/dist/node_modules/oidc-provider/lib/helpers/router.js +221 -0
  103. package/dist/node_modules/oidc-provider/lib/helpers/sector_validate.js +19 -13
  104. package/dist/node_modules/oidc-provider/lib/helpers/sender_constraints.js +24 -0
  105. package/dist/node_modules/oidc-provider/lib/helpers/set_rt_bindings.js +0 -2
  106. package/dist/node_modules/oidc-provider/lib/helpers/token_find.js +36 -43
  107. package/dist/node_modules/oidc-provider/lib/helpers/user_codes.js +1 -1
  108. package/dist/node_modules/oidc-provider/lib/helpers/validate_dpop.js +40 -21
  109. package/dist/node_modules/oidc-provider/lib/helpers/weak_cache.js +4 -4
  110. package/dist/node_modules/oidc-provider/lib/index.js +1 -3
  111. package/dist/node_modules/oidc-provider/lib/models/access_token.js +42 -17
  112. package/dist/node_modules/oidc-provider/lib/models/authorization_code.js +39 -17
  113. package/dist/node_modules/oidc-provider/lib/models/backchannel_authentication_request.js +37 -15
  114. package/dist/node_modules/oidc-provider/lib/models/base_model.js +42 -21
  115. package/dist/node_modules/oidc-provider/lib/models/base_token.js +5 -3
  116. package/dist/node_modules/oidc-provider/lib/models/client.js +113 -67
  117. package/dist/node_modules/oidc-provider/lib/models/client_credentials.js +30 -9
  118. package/dist/node_modules/oidc-provider/lib/models/device_code.js +40 -17
  119. package/dist/node_modules/oidc-provider/lib/models/formats/index.js +20 -12
  120. package/dist/node_modules/oidc-provider/lib/models/formats/jwt.js +165 -166
  121. package/dist/node_modules/oidc-provider/lib/models/formats/opaque.js +57 -48
  122. package/dist/node_modules/oidc-provider/lib/models/grant.js +1 -9
  123. package/dist/node_modules/oidc-provider/lib/models/id_token.js +13 -14
  124. package/dist/node_modules/oidc-provider/lib/models/index.js +2 -0
  125. package/dist/node_modules/oidc-provider/lib/models/initial_access_token.js +14 -8
  126. package/dist/node_modules/oidc-provider/lib/models/interaction.js +2 -4
  127. package/dist/node_modules/oidc-provider/lib/models/payload.js +33 -0
  128. package/dist/node_modules/oidc-provider/lib/models/pre_authorized_code.js +28 -0
  129. package/dist/node_modules/oidc-provider/lib/models/pushed_authorization_request.js +17 -9
  130. package/dist/node_modules/oidc-provider/lib/models/refresh_token.js +57 -25
  131. package/dist/node_modules/oidc-provider/lib/models/registration_access_token.js +20 -7
  132. package/dist/node_modules/oidc-provider/lib/models/replay_detection.js +1 -3
  133. package/dist/node_modules/oidc-provider/lib/models/session.js +12 -16
  134. package/dist/node_modules/oidc-provider/lib/models/token_helpers.js +79 -0
  135. package/dist/node_modules/oidc-provider/lib/provider.js +50 -23
  136. package/dist/node_modules/oidc-provider/lib/response_modes/index.js +0 -2
  137. package/dist/node_modules/oidc-provider/lib/response_modes/jwt.js +0 -1
  138. package/dist/node_modules/oidc-provider/lib/response_modes/web_message.js +14 -4
  139. package/dist/node_modules/oidc-provider/lib/shared/access_token.js +85 -0
  140. package/dist/node_modules/oidc-provider/lib/shared/assemble_params.js +1 -1
  141. package/dist/node_modules/oidc-provider/lib/shared/attest_client_auth.js +39 -16
  142. package/dist/node_modules/oidc-provider/lib/shared/authorization_error_handler.js +79 -77
  143. package/dist/node_modules/oidc-provider/lib/shared/check_rar.js +13 -28
  144. package/dist/node_modules/oidc-provider/lib/shared/check_resource.js +20 -11
  145. package/dist/node_modules/oidc-provider/lib/shared/client_auth.js +265 -201
  146. package/dist/node_modules/oidc-provider/lib/shared/cors.js +48 -16
  147. package/dist/node_modules/oidc-provider/lib/shared/error_handler.js +13 -4
  148. package/dist/node_modules/oidc-provider/lib/shared/jwt_client_auth.js +9 -3
  149. package/dist/node_modules/oidc-provider/lib/shared/reject_dupes.js +12 -32
  150. package/dist/node_modules/oidc-provider/lib/shared/selective_body.js +54 -14
  151. package/dist/node_modules/oidc-provider/lib/shared/session.js +6 -6
  152. package/dist/node_modules/oidc-provider/lib/shared/set_www_authenticate_header.js +1 -2
  153. package/dist/node_modules/oidc-provider/lib/shared/validate_json_body.js +11 -0
  154. package/dist/node_modules/oidc-provider/lib/views/index.js +43 -14
  155. package/dist/node_modules/oidc-provider/lib/views/interaction.js +62 -144
  156. package/dist/node_modules/oidc-provider/lib/views/layout.js +29 -216
  157. package/dist/node_modules/oidc-provider/lib/views/login.js +14 -23
  158. package/dist/node_modules/{undici/lib/web/fetch/LICENSE → oidc-provider/node_modules/jose/LICENSE.md} +2 -2
  159. package/dist/node_modules/oidc-provider/node_modules/jose/README.md +150 -0
  160. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/index.d.ts +55 -0
  161. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +24 -0
  162. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +40 -0
  163. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +24 -0
  164. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +46 -0
  165. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +28 -0
  166. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +51 -0
  167. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwk/embedded.d.ts +10 -0
  168. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwk/thumbprint.d.ts +15 -0
  169. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwks/local.d.ts +17 -0
  170. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwks/remote.d.ts +94 -0
  171. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/compact/sign.d.ts +20 -0
  172. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/compact/verify.d.ts +25 -0
  173. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/flattened/sign.d.ts +22 -0
  174. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/flattened/verify.d.ts +25 -0
  175. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/general/sign.d.ts +38 -0
  176. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/general/verify.d.ts +29 -0
  177. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/decrypt.d.ts +34 -0
  178. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/encrypt.d.ts +57 -0
  179. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/sign.d.ts +21 -0
  180. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/unsecured.d.ts +19 -0
  181. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/verify.d.ts +35 -0
  182. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/export.d.ts +19 -0
  183. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/generate_key_pair.d.ts +33 -0
  184. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/generate_secret.d.ts +30 -0
  185. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/import.d.ts +67 -0
  186. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/types.d.ts +736 -0
  187. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/base64url.d.ts +16 -0
  188. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/decode_jwt.d.ts +8 -0
  189. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/decode_protected_header.d.ts +10 -0
  190. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/errors.d.ts +182 -0
  191. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/index.js +70 -0
  192. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +7 -0
  193. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +26 -0
  194. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +15 -0
  195. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +35 -0
  196. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/general/decrypt.js +40 -0
  197. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/general/encrypt.js +105 -0
  198. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwk/embedded.js +30 -0
  199. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwk/thumbprint.js +55 -0
  200. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwks/local.js +59 -0
  201. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwks/remote.js +101 -0
  202. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/compact/sign.js +20 -0
  203. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/compact/verify.js +8 -0
  204. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/flattened/sign.js +23 -0
  205. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/flattened/verify.js +12 -0
  206. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/general/sign.js +58 -0
  207. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/general/verify.js +48 -0
  208. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/decrypt.js +13 -0
  209. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/encrypt.js +45 -0
  210. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/sign.js +19 -0
  211. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/unsecured.js +34 -0
  212. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/verify.js +13 -0
  213. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/export.js +35 -0
  214. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/generate_key_pair.js +35 -0
  215. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/generate_secret.js +36 -0
  216. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/import.js +53 -0
  217. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/asn1.js +138 -0
  218. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/buffer_utils.js +75 -0
  219. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/content_encryption.js +90 -0
  220. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/deflate.js +40 -0
  221. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +116 -0
  222. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +187 -0
  223. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +75 -0
  224. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_algorithms.js +74 -0
  225. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_sign.js +46 -0
  226. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_verify.js +86 -0
  227. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +146 -0
  228. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key.js +155 -0
  229. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_algorithm.js +15 -0
  230. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_descriptor.js +9 -0
  231. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_management.js +196 -0
  232. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/validate.js +122 -0
  233. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/base64url.js +16 -0
  234. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/decode_jwt.js +33 -0
  235. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/decode_protected_header.js +19 -0
  236. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/errors.js +109 -0
  237. package/dist/node_modules/oidc-provider/node_modules/jose/package.json +134 -0
  238. package/dist/node_modules/oidc-provider/node_modules/{jsesc/LICENSE-MIT.txt → koa/LICENSE} +10 -8
  239. package/dist/node_modules/oidc-provider/node_modules/koa/Readme.md +279 -0
  240. package/dist/node_modules/oidc-provider/node_modules/koa/dist/koa.mjs +4 -0
  241. package/dist/node_modules/oidc-provider/node_modules/koa/lib/application.js +344 -0
  242. package/dist/node_modules/oidc-provider/node_modules/koa/lib/context.js +248 -0
  243. package/dist/node_modules/oidc-provider/node_modules/koa/lib/is-stream.js +20 -0
  244. package/dist/node_modules/oidc-provider/node_modules/koa/lib/only.js +9 -0
  245. package/dist/node_modules/oidc-provider/node_modules/koa/lib/request.js +748 -0
  246. package/dist/node_modules/oidc-provider/node_modules/koa/lib/response.js +660 -0
  247. package/dist/node_modules/oidc-provider/node_modules/koa/lib/search-params.js +33 -0
  248. package/dist/node_modules/oidc-provider/node_modules/koa/package.json +73 -0
  249. package/dist/node_modules/oidc-provider/node_modules/media-typer/HISTORY.md +50 -0
  250. package/dist/node_modules/oidc-provider/node_modules/media-typer/LICENSE +22 -0
  251. package/dist/node_modules/oidc-provider/node_modules/media-typer/README.md +93 -0
  252. package/dist/node_modules/oidc-provider/node_modules/media-typer/index.js +143 -0
  253. package/dist/node_modules/oidc-provider/node_modules/media-typer/package.json +33 -0
  254. package/dist/node_modules/oidc-provider/node_modules/mime-db/HISTORY.md +541 -0
  255. package/dist/node_modules/oidc-provider/node_modules/mime-db/LICENSE +23 -0
  256. package/dist/node_modules/oidc-provider/node_modules/mime-db/README.md +109 -0
  257. package/dist/node_modules/oidc-provider/node_modules/mime-db/db.json +9342 -0
  258. package/dist/node_modules/oidc-provider/node_modules/mime-db/index.js +12 -0
  259. package/dist/node_modules/oidc-provider/node_modules/mime-db/package.json +56 -0
  260. package/dist/node_modules/oidc-provider/node_modules/mime-types/HISTORY.md +421 -0
  261. package/dist/node_modules/oidc-provider/node_modules/mime-types/LICENSE +23 -0
  262. package/dist/node_modules/oidc-provider/node_modules/mime-types/README.md +126 -0
  263. package/dist/node_modules/oidc-provider/node_modules/mime-types/index.js +211 -0
  264. package/dist/node_modules/oidc-provider/node_modules/mime-types/mimeScore.js +52 -0
  265. package/dist/node_modules/oidc-provider/node_modules/mime-types/package.json +45 -0
  266. package/dist/node_modules/oidc-provider/node_modules/type-is/HISTORY.md +292 -0
  267. package/dist/node_modules/oidc-provider/node_modules/type-is/LICENSE +23 -0
  268. package/dist/node_modules/oidc-provider/node_modules/type-is/README.md +198 -0
  269. package/dist/node_modules/oidc-provider/node_modules/type-is/index.js +250 -0
  270. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/HISTORY.md +428 -0
  271. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/LICENSE +23 -0
  272. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/README.md +126 -0
  273. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/index.js +211 -0
  274. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/mimeScore.js +57 -0
  275. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/package.json +49 -0
  276. package/dist/node_modules/oidc-provider/node_modules/type-is/package.json +47 -0
  277. package/dist/node_modules/oidc-provider/package.json +5 -42
  278. package/dist/server/service.js +7 -2
  279. package/package.json +3 -3
  280. package/dist/node_modules/eta/LICENSE +0 -7
  281. package/dist/node_modules/eta/README.md +0 -185
  282. package/dist/node_modules/eta/dist/core.d.ts +0 -179
  283. package/dist/node_modules/eta/dist/core.d.ts.map +0 -1
  284. package/dist/node_modules/eta/dist/core.js +0 -42
  285. package/dist/node_modules/eta/dist/core.js.map +0 -1
  286. package/dist/node_modules/eta/dist/index.cjs +0 -542
  287. package/dist/node_modules/eta/dist/index.cjs.map +0 -1
  288. package/dist/node_modules/eta/dist/index.d.cts +0 -187
  289. package/dist/node_modules/eta/dist/index.d.cts.map +0 -1
  290. package/dist/node_modules/eta/dist/index.d.mts +0 -187
  291. package/dist/node_modules/eta/dist/index.d.mts.map +0 -1
  292. package/dist/node_modules/eta/dist/index.mjs +0 -512
  293. package/dist/node_modules/eta/dist/index.mjs.map +0 -1
  294. package/dist/node_modules/eta/package.json +0 -75
  295. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_claims.js +0 -28
  296. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_defaults.js +0 -17
  297. package/dist/node_modules/oidc-provider/lib/actions/authorization/authenticated_client_id.js +0 -6
  298. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_remap_errors.js +0 -17
  299. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_response.js +0 -41
  300. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_ciba_context.js +0 -12
  301. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_claims.js +0 -68
  302. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client.js +0 -21
  303. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client_grant_type.js +0 -21
  304. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_dpop_jkt.js +0 -35
  305. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_extra_params.js +0 -18
  306. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_id_token_hint.js +0 -23
  307. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_max_age.js +0 -25
  308. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_openid_scope.js +0 -47
  309. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_prompt.js +0 -25
  310. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_redirect_uri.js +0 -41
  311. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_requested_expiry.js +0 -16
  312. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_mode.js +0 -54
  313. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_type.js +0 -26
  314. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_scope.js +0 -53
  315. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_load_account.js +0 -58
  316. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_required.js +0 -13
  317. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_authorization_response.js +0 -31
  318. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow.js +0 -31
  319. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_errors.js +0 -37
  320. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_response.js +0 -55
  321. package/dist/node_modules/oidc-provider/lib/actions/authorization/interaction_emit.js +0 -9
  322. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_account.js +0 -15
  323. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_pushed_authorization_request.js +0 -36
  324. package/dist/node_modules/oidc-provider/lib/actions/authorization/oauth_required.js +0 -11
  325. package/dist/node_modules/oidc-provider/lib/actions/authorization/oidc_required.js +0 -27
  326. package/dist/node_modules/oidc-provider/lib/actions/authorization/one_redirect_uri_clients.js +0 -20
  327. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_remap_errors.js +0 -17
  328. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_response.js +0 -65
  329. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_registration.js +0 -12
  330. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_request_and_uri.js +0 -12
  331. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_unsupported.js +0 -33
  332. package/dist/node_modules/oidc-provider/lib/actions/authorization/strip_outside_jar_params.js +0 -19
  333. package/dist/node_modules/oidc-provider/lib/actions/authorization/unsupported_rar.js +0 -9
  334. package/dist/node_modules/oidc-provider/lib/helpers/_/pick_by.js +0 -10
  335. package/dist/node_modules/oidc-provider/lib/models/formats/dynamic.js +0 -21
  336. package/dist/node_modules/oidc-provider/lib/models/mixins/apply.js +0 -4
  337. package/dist/node_modules/oidc-provider/lib/models/mixins/consumable.js +0 -17
  338. package/dist/node_modules/oidc-provider/lib/models/mixins/has_format.js +0 -46
  339. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_id.js +0 -12
  340. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_type.js +0 -8
  341. package/dist/node_modules/oidc-provider/lib/models/mixins/has_policies.js +0 -38
  342. package/dist/node_modules/oidc-provider/lib/models/mixins/is_attestation_constrained.js +0 -15
  343. package/dist/node_modules/oidc-provider/lib/models/mixins/is_sender_constrained.js +0 -50
  344. package/dist/node_modules/oidc-provider/lib/models/mixins/is_session_bound.js +0 -38
  345. package/dist/node_modules/oidc-provider/lib/models/mixins/set_audience.js +0 -21
  346. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_auth.js +0 -16
  347. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_pkce.js +0 -9
  348. package/dist/node_modules/oidc-provider/lib/shared/conditional_body.js +0 -9
  349. package/dist/node_modules/oidc-provider/node_modules/@koa/router/LICENSE +0 -21
  350. package/dist/node_modules/oidc-provider/node_modules/@koa/router/README.md +0 -1370
  351. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.mts +0 -1003
  352. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.ts +0 -1003
  353. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.js +0 -1616
  354. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.mjs +0 -1573
  355. package/dist/node_modules/oidc-provider/node_modules/@koa/router/package.json +0 -122
  356. package/dist/node_modules/oidc-provider/node_modules/http-errors/HISTORY.md +0 -186
  357. package/dist/node_modules/oidc-provider/node_modules/http-errors/LICENSE +0 -23
  358. package/dist/node_modules/oidc-provider/node_modules/http-errors/README.md +0 -169
  359. package/dist/node_modules/oidc-provider/node_modules/http-errors/index.js +0 -290
  360. package/dist/node_modules/oidc-provider/node_modules/http-errors/package.json +0 -54
  361. package/dist/node_modules/oidc-provider/node_modules/jsesc/README.md +0 -422
  362. package/dist/node_modules/oidc-provider/node_modules/jsesc/bin/jsesc +0 -148
  363. package/dist/node_modules/oidc-provider/node_modules/jsesc/jsesc.js +0 -337
  364. package/dist/node_modules/oidc-provider/node_modules/jsesc/man/jsesc.1 +0 -94
  365. package/dist/node_modules/oidc-provider/node_modules/jsesc/package.json +0 -56
  366. package/dist/node_modules/oidc-provider/node_modules/nanoid/LICENSE +0 -20
  367. package/dist/node_modules/oidc-provider/node_modules/nanoid/README.md +0 -38
  368. package/dist/node_modules/oidc-provider/node_modules/nanoid/bin/nanoid.js +0 -55
  369. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.browser.js +0 -29
  370. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.d.ts +0 -106
  371. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.js +0 -47
  372. package/dist/node_modules/oidc-provider/node_modules/nanoid/nanoid.js +0 -1
  373. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.d.ts +0 -48
  374. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.js +0 -21
  375. package/dist/node_modules/oidc-provider/node_modules/nanoid/package.json +0 -46
  376. package/dist/node_modules/oidc-provider/node_modules/nanoid/url-alphabet/index.js +0 -2
  377. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/LICENSE +0 -21
  378. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/Readme.md +0 -224
  379. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.d.ts +0 -147
  380. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js +0 -431
  381. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js.map +0 -1
  382. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/package.json +0 -64
  383. package/dist/node_modules/quick-lru/index.d.ts +0 -178
  384. package/dist/node_modules/quick-lru/index.js +0 -329
  385. package/dist/node_modules/quick-lru/license +0 -9
  386. package/dist/node_modules/quick-lru/package.json +0 -54
  387. package/dist/node_modules/quick-lru/readme.md +0 -236
  388. package/dist/node_modules/statuses/HISTORY.md +0 -87
  389. package/dist/node_modules/statuses/LICENSE +0 -23
  390. package/dist/node_modules/statuses/README.md +0 -139
  391. package/dist/node_modules/statuses/codes.json +0 -65
  392. package/dist/node_modules/statuses/index.js +0 -146
  393. package/dist/node_modules/statuses/package.json +0 -49
  394. package/dist/node_modules/undici/LICENSE +0 -21
  395. package/dist/node_modules/undici/README.md +0 -741
  396. package/dist/node_modules/undici/docs/docs/api/Agent.md +0 -84
  397. package/dist/node_modules/undici/docs/docs/api/BalancedPool.md +0 -99
  398. package/dist/node_modules/undici/docs/docs/api/CacheStorage.md +0 -30
  399. package/dist/node_modules/undici/docs/docs/api/CacheStore.md +0 -164
  400. package/dist/node_modules/undici/docs/docs/api/Client.md +0 -285
  401. package/dist/node_modules/undici/docs/docs/api/ClientStats.md +0 -27
  402. package/dist/node_modules/undici/docs/docs/api/Connector.md +0 -115
  403. package/dist/node_modules/undici/docs/docs/api/ContentType.md +0 -57
  404. package/dist/node_modules/undici/docs/docs/api/Cookies.md +0 -101
  405. package/dist/node_modules/undici/docs/docs/api/Debug.md +0 -62
  406. package/dist/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +0 -315
  407. package/dist/node_modules/undici/docs/docs/api/Dispatcher.md +0 -1392
  408. package/dist/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +0 -159
  409. package/dist/node_modules/undici/docs/docs/api/Errors.md +0 -49
  410. package/dist/node_modules/undici/docs/docs/api/EventSource.md +0 -45
  411. package/dist/node_modules/undici/docs/docs/api/Fetch.md +0 -60
  412. package/dist/node_modules/undici/docs/docs/api/GlobalInstallation.md +0 -139
  413. package/dist/node_modules/undici/docs/docs/api/H2CClient.md +0 -263
  414. package/dist/node_modules/undici/docs/docs/api/MockAgent.md +0 -603
  415. package/dist/node_modules/undici/docs/docs/api/MockCallHistory.md +0 -197
  416. package/dist/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +0 -43
  417. package/dist/node_modules/undici/docs/docs/api/MockClient.md +0 -81
  418. package/dist/node_modules/undici/docs/docs/api/MockErrors.md +0 -12
  419. package/dist/node_modules/undici/docs/docs/api/MockPool.md +0 -555
  420. package/dist/node_modules/undici/docs/docs/api/Pool.md +0 -84
  421. package/dist/node_modules/undici/docs/docs/api/PoolStats.md +0 -35
  422. package/dist/node_modules/undici/docs/docs/api/ProxyAgent.md +0 -229
  423. package/dist/node_modules/undici/docs/docs/api/RedirectHandler.md +0 -93
  424. package/dist/node_modules/undici/docs/docs/api/RetryAgent.md +0 -50
  425. package/dist/node_modules/undici/docs/docs/api/RetryHandler.md +0 -118
  426. package/dist/node_modules/undici/docs/docs/api/RoundRobinPool.md +0 -145
  427. package/dist/node_modules/undici/docs/docs/api/SnapshotAgent.md +0 -616
  428. package/dist/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +0 -274
  429. package/dist/node_modules/undici/docs/docs/api/Util.md +0 -25
  430. package/dist/node_modules/undici/docs/docs/api/WebSocket.md +0 -141
  431. package/dist/node_modules/undici/docs/docs/api/api-lifecycle.md +0 -91
  432. package/dist/node_modules/undici/docs/docs/best-practices/client-certificate.md +0 -64
  433. package/dist/node_modules/undici/docs/docs/best-practices/crawling.md +0 -58
  434. package/dist/node_modules/undici/docs/docs/best-practices/mocking-request.md +0 -190
  435. package/dist/node_modules/undici/docs/docs/best-practices/proxy.md +0 -127
  436. package/dist/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +0 -224
  437. package/dist/node_modules/undici/docs/docs/best-practices/writing-tests.md +0 -63
  438. package/dist/node_modules/undici/index-fetch.js +0 -65
  439. package/dist/node_modules/undici/index.d.ts +0 -3
  440. package/dist/node_modules/undici/index.js +0 -234
  441. package/dist/node_modules/undici/lib/api/abort-signal.js +0 -59
  442. package/dist/node_modules/undici/lib/api/api-connect.js +0 -110
  443. package/dist/node_modules/undici/lib/api/api-pipeline.js +0 -252
  444. package/dist/node_modules/undici/lib/api/api-request.js +0 -214
  445. package/dist/node_modules/undici/lib/api/api-stream.js +0 -209
  446. package/dist/node_modules/undici/lib/api/api-upgrade.js +0 -111
  447. package/dist/node_modules/undici/lib/api/index.js +0 -7
  448. package/dist/node_modules/undici/lib/api/readable.js +0 -580
  449. package/dist/node_modules/undici/lib/cache/memory-cache-store.js +0 -234
  450. package/dist/node_modules/undici/lib/cache/sqlite-cache-store.js +0 -461
  451. package/dist/node_modules/undici/lib/core/connect.js +0 -137
  452. package/dist/node_modules/undici/lib/core/constants.js +0 -143
  453. package/dist/node_modules/undici/lib/core/diagnostics.js +0 -227
  454. package/dist/node_modules/undici/lib/core/errors.js +0 -477
  455. package/dist/node_modules/undici/lib/core/request.js +0 -438
  456. package/dist/node_modules/undici/lib/core/socks5-client.js +0 -407
  457. package/dist/node_modules/undici/lib/core/socks5-utils.js +0 -203
  458. package/dist/node_modules/undici/lib/core/symbols.js +0 -75
  459. package/dist/node_modules/undici/lib/core/tree.js +0 -160
  460. package/dist/node_modules/undici/lib/core/util.js +0 -992
  461. package/dist/node_modules/undici/lib/dispatcher/agent.js +0 -158
  462. package/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -219
  463. package/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1610
  464. package/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -995
  465. package/dist/node_modules/undici/lib/dispatcher/client.js +0 -659
  466. package/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -165
  467. package/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -48
  468. package/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -146
  469. package/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -135
  470. package/dist/node_modules/undici/lib/dispatcher/h2c-client.js +0 -51
  471. package/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -214
  472. package/dist/node_modules/undici/lib/dispatcher/pool.js +0 -118
  473. package/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -318
  474. package/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  475. package/dist/node_modules/undici/lib/dispatcher/round-robin-pool.js +0 -137
  476. package/dist/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +0 -249
  477. package/dist/node_modules/undici/lib/encoding/index.js +0 -33
  478. package/dist/node_modules/undici/lib/global.js +0 -50
  479. package/dist/node_modules/undici/lib/handler/cache-handler.js +0 -578
  480. package/dist/node_modules/undici/lib/handler/cache-revalidation-handler.js +0 -124
  481. package/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -67
  482. package/dist/node_modules/undici/lib/handler/deduplication-handler.js +0 -460
  483. package/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -238
  484. package/dist/node_modules/undici/lib/handler/retry-handler.js +0 -394
  485. package/dist/node_modules/undici/lib/handler/unwrap-handler.js +0 -100
  486. package/dist/node_modules/undici/lib/handler/wrap-handler.js +0 -105
  487. package/dist/node_modules/undici/lib/interceptor/cache.js +0 -495
  488. package/dist/node_modules/undici/lib/interceptor/decompress.js +0 -259
  489. package/dist/node_modules/undici/lib/interceptor/deduplicate.js +0 -117
  490. package/dist/node_modules/undici/lib/interceptor/dns.js +0 -571
  491. package/dist/node_modules/undici/lib/interceptor/dump.js +0 -112
  492. package/dist/node_modules/undici/lib/interceptor/redirect.js +0 -21
  493. package/dist/node_modules/undici/lib/interceptor/response-error.js +0 -95
  494. package/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  495. package/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  496. package/dist/node_modules/undici/lib/llhttp/constants.d.ts +0 -195
  497. package/dist/node_modules/undici/lib/llhttp/constants.js +0 -531
  498. package/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -15
  499. package/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -15
  500. package/dist/node_modules/undici/lib/llhttp/utils.d.ts +0 -2
  501. package/dist/node_modules/undici/lib/llhttp/utils.js +0 -12
  502. package/dist/node_modules/undici/lib/mock/mock-agent.js +0 -232
  503. package/dist/node_modules/undici/lib/mock/mock-call-history.js +0 -248
  504. package/dist/node_modules/undici/lib/mock/mock-client.js +0 -68
  505. package/dist/node_modules/undici/lib/mock/mock-errors.js +0 -29
  506. package/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -209
  507. package/dist/node_modules/undici/lib/mock/mock-pool.js +0 -68
  508. package/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -32
  509. package/dist/node_modules/undici/lib/mock/mock-utils.js +0 -486
  510. package/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  511. package/dist/node_modules/undici/lib/mock/snapshot-agent.js +0 -353
  512. package/dist/node_modules/undici/lib/mock/snapshot-recorder.js +0 -588
  513. package/dist/node_modules/undici/lib/mock/snapshot-utils.js +0 -158
  514. package/dist/node_modules/undici/lib/util/cache.js +0 -407
  515. package/dist/node_modules/undici/lib/util/date.js +0 -653
  516. package/dist/node_modules/undici/lib/util/promise.js +0 -28
  517. package/dist/node_modules/undici/lib/util/runtime-features.js +0 -124
  518. package/dist/node_modules/undici/lib/util/stats.js +0 -32
  519. package/dist/node_modules/undici/lib/util/timers.js +0 -425
  520. package/dist/node_modules/undici/lib/web/cache/cache.js +0 -864
  521. package/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  522. package/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  523. package/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  524. package/dist/node_modules/undici/lib/web/cookies/index.js +0 -199
  525. package/dist/node_modules/undici/lib/web/cookies/parse.js +0 -322
  526. package/dist/node_modules/undici/lib/web/cookies/util.js +0 -282
  527. package/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -399
  528. package/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -501
  529. package/dist/node_modules/undici/lib/web/eventsource/util.js +0 -29
  530. package/dist/node_modules/undici/lib/web/fetch/body.js +0 -509
  531. package/dist/node_modules/undici/lib/web/fetch/constants.js +0 -131
  532. package/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -596
  533. package/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -575
  534. package/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -259
  535. package/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  536. package/dist/node_modules/undici/lib/web/fetch/headers.js +0 -719
  537. package/dist/node_modules/undici/lib/web/fetch/index.js +0 -2397
  538. package/dist/node_modules/undici/lib/web/fetch/request.js +0 -1115
  539. package/dist/node_modules/undici/lib/web/fetch/response.js +0 -641
  540. package/dist/node_modules/undici/lib/web/fetch/util.js +0 -1520
  541. package/dist/node_modules/undici/lib/web/infra/index.js +0 -229
  542. package/dist/node_modules/undici/lib/web/subresource-integrity/Readme.md +0 -9
  543. package/dist/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js +0 -307
  544. package/dist/node_modules/undici/lib/web/webidl/index.js +0 -1006
  545. package/dist/node_modules/undici/lib/web/websocket/connection.js +0 -329
  546. package/dist/node_modules/undici/lib/web/websocket/constants.js +0 -126
  547. package/dist/node_modules/undici/lib/web/websocket/events.js +0 -331
  548. package/dist/node_modules/undici/lib/web/websocket/frame.js +0 -133
  549. package/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -118
  550. package/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -450
  551. package/dist/node_modules/undici/lib/web/websocket/sender.js +0 -109
  552. package/dist/node_modules/undici/lib/web/websocket/stream/websocketerror.js +0 -104
  553. package/dist/node_modules/undici/lib/web/websocket/stream/websocketstream.js +0 -497
  554. package/dist/node_modules/undici/lib/web/websocket/util.js +0 -347
  555. package/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -751
  556. package/dist/node_modules/undici/package.json +0 -152
  557. package/dist/node_modules/undici/scripts/strip-comments.js +0 -10
  558. package/dist/node_modules/undici/types/README.md +0 -6
  559. package/dist/node_modules/undici/types/agent.d.ts +0 -32
  560. package/dist/node_modules/undici/types/api.d.ts +0 -43
  561. package/dist/node_modules/undici/types/balanced-pool.d.ts +0 -30
  562. package/dist/node_modules/undici/types/cache-interceptor.d.ts +0 -179
  563. package/dist/node_modules/undici/types/cache.d.ts +0 -36
  564. package/dist/node_modules/undici/types/client-stats.d.ts +0 -15
  565. package/dist/node_modules/undici/types/client.d.ts +0 -123
  566. package/dist/node_modules/undici/types/connector.d.ts +0 -36
  567. package/dist/node_modules/undici/types/content-type.d.ts +0 -21
  568. package/dist/node_modules/undici/types/cookies.d.ts +0 -30
  569. package/dist/node_modules/undici/types/diagnostics-channel.d.ts +0 -74
  570. package/dist/node_modules/undici/types/dispatcher.d.ts +0 -273
  571. package/dist/node_modules/undici/types/env-http-proxy-agent.d.ts +0 -22
  572. package/dist/node_modules/undici/types/errors.d.ts +0 -177
  573. package/dist/node_modules/undici/types/eventsource.d.ts +0 -66
  574. package/dist/node_modules/undici/types/fetch.d.ts +0 -231
  575. package/dist/node_modules/undici/types/formdata.d.ts +0 -114
  576. package/dist/node_modules/undici/types/global-dispatcher.d.ts +0 -9
  577. package/dist/node_modules/undici/types/global-origin.d.ts +0 -7
  578. package/dist/node_modules/undici/types/h2c-client.d.ts +0 -73
  579. package/dist/node_modules/undici/types/handlers.d.ts +0 -14
  580. package/dist/node_modules/undici/types/header.d.ts +0 -160
  581. package/dist/node_modules/undici/types/index.d.ts +0 -91
  582. package/dist/node_modules/undici/types/interceptors.d.ts +0 -80
  583. package/dist/node_modules/undici/types/mock-agent.d.ts +0 -68
  584. package/dist/node_modules/undici/types/mock-call-history.d.ts +0 -111
  585. package/dist/node_modules/undici/types/mock-client.d.ts +0 -27
  586. package/dist/node_modules/undici/types/mock-errors.d.ts +0 -12
  587. package/dist/node_modules/undici/types/mock-interceptor.d.ts +0 -94
  588. package/dist/node_modules/undici/types/mock-pool.d.ts +0 -27
  589. package/dist/node_modules/undici/types/patch.d.ts +0 -29
  590. package/dist/node_modules/undici/types/pool-stats.d.ts +0 -19
  591. package/dist/node_modules/undici/types/pool.d.ts +0 -41
  592. package/dist/node_modules/undici/types/proxy-agent.d.ts +0 -29
  593. package/dist/node_modules/undici/types/readable.d.ts +0 -68
  594. package/dist/node_modules/undici/types/retry-agent.d.ts +0 -8
  595. package/dist/node_modules/undici/types/retry-handler.d.ts +0 -125
  596. package/dist/node_modules/undici/types/round-robin-pool.d.ts +0 -41
  597. package/dist/node_modules/undici/types/snapshot-agent.d.ts +0 -109
  598. package/dist/node_modules/undici/types/socks5-proxy-agent.d.ts +0 -25
  599. package/dist/node_modules/undici/types/util.d.ts +0 -18
  600. package/dist/node_modules/undici/types/utility.d.ts +0 -7
  601. package/dist/node_modules/undici/types/webidl.d.ts +0 -347
  602. package/dist/node_modules/undici/types/websocket.d.ts +0 -188
@@ -1,14 +1,14 @@
1
1
  import { JWA } from '../consts/index.js';
2
-
3
2
  import isPlainObject from './_/is_plain_object.js';
4
- import remove from './_/remove.js';
5
3
  import merge from './_/merge.js';
6
4
  import pick from './_/pick.js';
5
+ import remove from './_/remove.js';
7
6
  import set from './_/set.js';
8
- import * as formatters from './formatters.js';
9
- import getDefaults from './defaults.js';
10
- import { STABLE, EXPERIMENTS } from './features.js';
11
7
  import * as attention from './attention.js';
8
+ import getDefaults from './defaults.js';
9
+ import { InvalidAuthorizationDetails } from './errors.js';
10
+ import { EXPERIMENTS, STABLE } from './features.js';
11
+ import * as formatters from './formatters.js';
12
12
 
13
13
  function featuresTypeErrorCheck({ features }) {
14
14
  for (const value of Object.values(features)) {
@@ -18,20 +18,116 @@ function featuresTypeErrorCheck({ features }) {
18
18
  }
19
19
  }
20
20
 
21
+ const requiredFeatureMembers = {
22
+ attestClientAuth: ['additionalSecuritySignal'],
23
+ ciba: ['deliveryModes'],
24
+ };
25
+
26
+ const requiredEnabledFeatureMembers = {
27
+ deviceFlow: ['enabled', 'charset', 'mask'],
28
+ fapi: ['enabled', 'profile'],
29
+ openid4vci: [
30
+ 'enabled',
31
+ 'metadata',
32
+ 'preAuthorizedCodeGrant',
33
+ 'credentialConfigurationsSupported',
34
+ 'credentialConfigurationPolicy',
35
+ 'issueCredential',
36
+ ],
37
+ richAuthorizationRequests: ['enabled', 'types'],
38
+ };
39
+
40
+ function checkFeatureConfigurationOwnProperties({ features }) {
41
+ const featureNames = [
42
+ ...Object.keys(requiredFeatureMembers),
43
+ ...Object.keys(requiredEnabledFeatureMembers),
44
+ ];
45
+
46
+ if (features && !isPlainObject(features) && ['object', 'function'].includes(typeof features)) {
47
+ for (const name of featureNames) {
48
+ if (!Object.hasOwn(features, name)) {
49
+ throw new TypeError(`features.${name} must be an own property`);
50
+ }
51
+ }
52
+ }
53
+
54
+ for (const [name, members] of Object.entries(requiredFeatureMembers)) {
55
+ const feature = features?.[name];
56
+ if (feature && !isPlainObject(feature) && ['object', 'function'].includes(typeof feature)) {
57
+ for (const member of members) {
58
+ if (!Object.hasOwn(feature, member)) {
59
+ throw new TypeError(`features.${name}.${member} must be an own property`);
60
+ }
61
+ }
62
+ }
63
+ }
64
+
65
+ for (const [name, members] of Object.entries(requiredEnabledFeatureMembers)) {
66
+ const feature = features?.[name];
67
+ if (feature && !isPlainObject(feature)
68
+ && ['object', 'function'].includes(typeof feature)) {
69
+ if (!Object.hasOwn(feature, 'enabled')) {
70
+ throw new TypeError(`features.${name}.enabled must be an own property`);
71
+ }
72
+
73
+ if (feature.enabled) {
74
+ for (const member of members) {
75
+ if (!Object.hasOwn(feature, member)) {
76
+ throw new TypeError(`features.${name}.${member} must be an own property`);
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }
83
+
84
+ function checkKeyAttestationsRequired(proofTypeConfig, prefix) {
85
+ if (proofTypeConfig === undefined) {
86
+ return;
87
+ }
88
+ if (proofTypeConfig === null) {
89
+ throw new TypeError(`${prefix} must be an object`);
90
+ }
91
+
92
+ const { key_attestations_required: keyAttestationsRequired } = proofTypeConfig;
93
+ if (keyAttestationsRequired !== undefined) {
94
+ if (!isPlainObject(keyAttestationsRequired)) {
95
+ throw new TypeError(
96
+ `${prefix}.key_attestations_required must be a plain object`,
97
+ );
98
+ }
99
+
100
+ for (const claim of ['key_storage', 'user_authentication']) {
101
+ const values = keyAttestationsRequired[claim];
102
+ if (values !== undefined) {
103
+ if (
104
+ !Array.isArray(values)
105
+ || values.length === 0
106
+ || !values.every((v) => typeof v === 'string' && v.length > 0)
107
+ ) {
108
+ throw new TypeError(
109
+ `${prefix}.key_attestations_required.${claim} must be a non-empty array of non-empty strings`,
110
+ );
111
+ }
112
+ }
113
+ }
114
+ }
115
+ }
116
+
21
117
  function filterHS(alg) {
22
118
  return alg.startsWith('HS');
23
119
  }
24
120
 
25
121
  function filterAsymmetricSig(alg) {
26
122
  switch (alg.slice(0, 2)) {
27
- case 'ML': // ML-DSA-*, ML-KEM-*
28
- case 'RS': // RS\d{3}, RSA-OAEP
29
- case 'PS': // PS\d{3}
30
- case 'ES': // ECDSA
31
- case 'EC': // ECDH
32
- case 'Ed': // Ed*
33
- case 'X2': // X25519
34
- case 'X4': // X448
123
+ case 'ML':
124
+ case 'RS':
125
+ case 'PS':
126
+ case 'ES':
127
+ case 'EC':
128
+ case 'Ed':
129
+ case 'X2':
130
+ case 'X4':
35
131
  return true;
36
132
  default:
37
133
  return false;
@@ -41,15 +137,71 @@ function filterAsymmetricSig(alg) {
41
137
  const supportedResponseTypes = new Set(['none', 'code', 'id_token', 'token']);
42
138
  const fapiProfiles = new Set(['1.0 Final', '2.0']);
43
139
 
140
+ function cloneConfiguration(value) {
141
+ if (Array.isArray(value)) {
142
+ return value.map(cloneConfiguration);
143
+ }
144
+
145
+ if (value instanceof Set) {
146
+ return new Set([...value].map(cloneConfiguration));
147
+ }
148
+
149
+ if (isPlainObject(value)) {
150
+ return Object.fromEntries(
151
+ Object.entries(value).map(([key, entry]) => [key, cloneConfiguration(entry)]),
152
+ );
153
+ }
154
+
155
+ return value;
156
+ }
157
+
158
+ function validateOpenid4vciClaims(claims) {
159
+ if (!Array.isArray(claims) || claims.length === 0) {
160
+ throw new InvalidAuthorizationDetails("'claims' must be a non-empty array when provided");
161
+ }
162
+
163
+ for (const claim of claims) {
164
+ if (!isPlainObject(claim)) {
165
+ throw new InvalidAuthorizationDetails('claims description entries must be JSON objects');
166
+ }
167
+
168
+ if (!Array.isArray(claim.path) || claim.path.length === 0) {
169
+ throw new InvalidAuthorizationDetails('claims description path must be a non-empty array');
170
+ }
171
+
172
+ for (const component of claim.path) {
173
+ const valid = (
174
+ (typeof component === 'string' && component.length)
175
+ || component === null
176
+ || (Number.isInteger(component) && component >= 0)
177
+ );
178
+
179
+ if (!valid) {
180
+ throw new InvalidAuthorizationDetails('claims description path entries must be non-empty strings, null, or non-negative integers');
181
+ }
182
+ }
183
+
184
+ if ('mandatory' in claim && typeof claim.mandatory !== 'boolean') {
185
+ throw new InvalidAuthorizationDetails('claims description mandatory must be a boolean when provided');
186
+ }
187
+ }
188
+ }
189
+
44
190
  class Configuration {
45
191
  #defaults = getDefaults();
46
192
 
47
193
  constructor(config) {
48
- Object.assign(this, merge({}, this.#defaults, pick(config, ...Object.keys(this.#defaults))));
49
-
194
+ const recognizedFeatures = { ...this.#defaults.features };
195
+ const recognizedRichAuthorizationRequestOptions = new Set(
196
+ Object.keys(this.#defaults.features.richAuthorizationRequests),
197
+ );
198
+ const input = cloneConfiguration(pick(config, ...Object.keys(this.#defaults)));
199
+ Object.assign(this, merge({}, this.#defaults, input));
200
+
201
+ checkFeatureConfigurationOwnProperties(this);
50
202
  featuresTypeErrorCheck(this);
51
203
 
52
- this.logDraftNotice();
204
+ this.logDraftNotice(recognizedFeatures);
53
205
 
54
206
  this.registerExtraParamsValidations();
55
207
  this.ensureSets();
@@ -68,10 +220,12 @@ class Configuration {
68
220
  this.checkSubjectTypes();
69
221
  this.checkDependantFeatures();
70
222
  this.checkDeviceFlow();
223
+ this.checkAttestClientAuth();
71
224
  this.checkAuthMethods();
72
225
  this.checkTTL();
73
226
  this.checkCibaDeliveryModes();
74
- this.checkRichAuthorizationRequests();
227
+ this.checkRichAuthorizationRequests(recognizedRichAuthorizationRequestOptions);
228
+ this.checkOpenid4vci();
75
229
  this.checkPostMethods();
76
230
  this.checkFetchResponseBodyLimits();
77
231
 
@@ -80,17 +234,58 @@ class Configuration {
80
234
  delete this.cookies.short.maxAge;
81
235
  delete this.cookies.short.expires;
82
236
 
83
- // release #defaults
237
+
84
238
  this.#defaults = undefined;
85
239
  }
86
240
 
87
- checkRichAuthorizationRequests() {
241
+ checkRichAuthorizationRequests(recognizedOptions) {
242
+ const { richAuthorizationRequests } = this.features;
243
+
244
+ for (const option of Object.keys(richAuthorizationRequests)) {
245
+ if (!recognizedOptions.has(option)) {
246
+ throw new TypeError(`Unknown feature configuration: richAuthorizationRequests.${option}`);
247
+ }
248
+ }
249
+
250
+ for (const option of [
251
+ 'authorizationDetailsForGrantSource',
252
+ 'authorizationDetailsForAccessToken',
253
+ 'authorizationDetailsForIntrospection',
254
+ ]) {
255
+ const callback = richAuthorizationRequests[option];
256
+ if (
257
+ typeof callback !== 'function'
258
+ || !['Function', 'AsyncFunction'].includes(callback.constructor.name)
259
+ ) {
260
+ throw new TypeError(`features.richAuthorizationRequests.${option} must be a function`);
261
+ }
262
+ }
263
+
88
264
  if (this.features.richAuthorizationRequests.enabled) {
89
- if (!isPlainObject(this.features.richAuthorizationRequests.types)) {
265
+ const { openid4vci } = this.features;
266
+
267
+ if (!isPlainObject(richAuthorizationRequests.types)) {
90
268
  throw new TypeError('features.richAuthorizationRequests.types must be an object');
91
269
  }
92
270
 
93
- for (const [k, v] of Object.entries(this.features.richAuthorizationRequests.types)) {
271
+ if (openid4vci.enabled && !Object.hasOwn(richAuthorizationRequests.types, 'openid_credential')) {
272
+ richAuthorizationRequests.types.openid_credential = {
273
+ validate(_ctx, detail) {
274
+ if (typeof detail.credential_configuration_id !== 'string' || !detail.credential_configuration_id.length) {
275
+ throw new InvalidAuthorizationDetails("'credential_configuration_id' must be a non-empty string");
276
+ }
277
+ if (!Object.hasOwn(openid4vci.credentialConfigurationsSupported, detail.credential_configuration_id)) {
278
+ throw new InvalidAuthorizationDetails("'credential_configuration_id' must reference an entry in credential_configurations_supported");
279
+ }
280
+
281
+ if ('claims' in detail) {
282
+ validateOpenid4vciClaims(detail.claims);
283
+ }
284
+ },
285
+ };
286
+ }
287
+
288
+ for (const [k, v] of Object.entries(richAuthorizationRequests.types)) {
94
289
  if (!isPlainObject(v)) {
95
290
  throw new TypeError('features.richAuthorizationRequests.types attribute values must be objects');
96
291
  }
@@ -101,6 +296,126 @@ class Configuration {
101
296
  }
102
297
  }
103
298
 
299
+ checkOpenid4vci() {
300
+ const { openid4vci } = this.features;
301
+
302
+ if (!openid4vci.enabled) {
303
+ return;
304
+ }
305
+
306
+ if (!isPlainObject(openid4vci.metadata)) {
307
+ throw new TypeError('features.openid4vci.metadata must be an object');
308
+ }
309
+
310
+ if (typeof openid4vci.preAuthorizedCodeGrant !== 'boolean') {
311
+ throw new TypeError('features.openid4vci.preAuthorizedCodeGrant must be a boolean');
312
+ }
313
+
314
+ const batchCredentialIssuance = openid4vci.metadata.batch_credential_issuance;
315
+ if (batchCredentialIssuance !== undefined) {
316
+ if (!isPlainObject(batchCredentialIssuance)) {
317
+ throw new TypeError('features.openid4vci.metadata.batch_credential_issuance must be an object');
318
+ }
319
+
320
+ if (
321
+ !Number.isSafeInteger(batchCredentialIssuance.batch_size)
322
+ || batchCredentialIssuance.batch_size < 2
323
+ ) {
324
+ throw new TypeError('features.openid4vci.metadata.batch_credential_issuance.batch_size must be an integer greater than or equal to 2');
325
+ }
326
+ }
327
+
328
+ if (
329
+ !isPlainObject(openid4vci.credentialConfigurationsSupported)
330
+ || !Object.keys(openid4vci.credentialConfigurationsSupported).length
331
+ ) {
332
+ throw new TypeError('features.openid4vci.credentialConfigurationsSupported must be a non-empty object');
333
+ }
334
+
335
+ for (
336
+ const [credentialConfigurationId, credentialConfiguration]
337
+ of Object.entries(openid4vci.credentialConfigurationsSupported)
338
+ ) {
339
+ if (!isPlainObject(credentialConfiguration)) {
340
+ throw new TypeError(`features.openid4vci.credentialConfigurationsSupported['${credentialConfigurationId}'] must be an object`);
341
+ }
342
+
343
+ const ccPrefix = `features.openid4vci.credentialConfigurationsSupported['${credentialConfigurationId}']`;
344
+
345
+ if (typeof credentialConfiguration.format !== 'string' || !credentialConfiguration.format.length) {
346
+ throw new TypeError(`${ccPrefix}.format must be a non-empty string`);
347
+ }
348
+
349
+ const proofTypesSupported = credentialConfiguration.proof_types_supported;
350
+ if (isPlainObject(proofTypesSupported)) {
351
+ const supportedProofTypes = new Set(['jwt', 'attestation']);
352
+ const unsupportedProofTypes = Object.keys(proofTypesSupported)
353
+ .filter((t) => !supportedProofTypes.has(t));
354
+ if (unsupportedProofTypes.length) {
355
+ throw new TypeError(
356
+ `${ccPrefix}.proof_types_supported contains unsupported proof type(s): ${unsupportedProofTypes.join(', ')}`,
357
+ );
358
+ }
359
+
360
+ if (Object.hasOwn(proofTypesSupported, 'jwt')) {
361
+ const cryptographicBindingMethodsSupported = credentialConfiguration
362
+ .cryptographic_binding_methods_supported;
363
+
364
+ if (
365
+ !Array.isArray(cryptographicBindingMethodsSupported)
366
+ || !cryptographicBindingMethodsSupported.includes('jwk')
367
+ ) {
368
+ throw new TypeError(
369
+ `${ccPrefix}.cryptographic_binding_methods_supported must include 'jwk' when jwt proofs are supported`,
370
+ );
371
+ }
372
+
373
+ checkKeyAttestationsRequired(proofTypesSupported.jwt, `${ccPrefix}.proof_types_supported.jwt`);
374
+ }
375
+
376
+ if (Object.hasOwn(proofTypesSupported, 'attestation')) {
377
+ checkKeyAttestationsRequired(proofTypesSupported.attestation, `${ccPrefix}.proof_types_supported.attestation`);
378
+ }
379
+ }
380
+
381
+
382
+ const cryptographicBindingMethodsSupported = credentialConfiguration
383
+ .cryptographic_binding_methods_supported;
384
+ if (Array.isArray(cryptographicBindingMethodsSupported)) {
385
+ const unsupportedMethods = cryptographicBindingMethodsSupported.filter((m) => m !== 'jwk');
386
+ if (unsupportedMethods.length) {
387
+ throw new TypeError(
388
+ `${ccPrefix}.cryptographic_binding_methods_supported contains unsupported method(s): ${unsupportedMethods.join(', ')}`,
389
+ );
390
+ }
391
+ }
392
+
393
+
394
+ if (credentialConfiguration.credential_response_encryption !== undefined) {
395
+ throw new TypeError(
396
+ `${ccPrefix}.credential_response_encryption is not supported`,
397
+ );
398
+ }
399
+ }
400
+
401
+
402
+ if (openid4vci.metadata.credential_response_encryption !== undefined) {
403
+ throw new TypeError(
404
+ 'features.openid4vci.metadata.credential_response_encryption is not supported',
405
+ );
406
+ }
407
+
408
+ const policy = openid4vci.credentialConfigurationPolicy;
409
+ if (typeof policy !== 'function' || !['Function', 'AsyncFunction'].includes(policy.constructor.name)) {
410
+ throw new TypeError('features.openid4vci.credentialConfigurationPolicy must be a function');
411
+ }
412
+
413
+ const { issueCredential } = openid4vci;
414
+ if (typeof issueCredential !== 'function' || !['Function', 'AsyncFunction'].includes(issueCredential.constructor.name)) {
415
+ throw new TypeError('features.openid4vci.issueCredential must be a function');
416
+ }
417
+ }
418
+
104
419
  registerExtraParamsValidations() {
105
420
  if (!isPlainObject(this.extraParams)) {
106
421
  return;
@@ -185,6 +500,10 @@ class Configuration {
185
500
  if (this.features.ciba.enabled) {
186
501
  this.grantTypes.add('urn:openid:params:grant-type:ciba');
187
502
  }
503
+
504
+ if (this.features.openid4vci.enabled && this.features.openid4vci.preAuthorizedCodeGrant) {
505
+ this.grantTypes.add('urn:ietf:params:oauth:grant-type:pre-authorized_code');
506
+ }
188
507
  }
189
508
 
190
509
  collectScopes() {
@@ -250,6 +569,10 @@ class Configuration {
250
569
  }
251
570
 
252
571
  checkAllowedJWA() {
572
+ if (this.enabledJWA === null) {
573
+ throw new TypeError('enabledJWA must be an object');
574
+ }
575
+
253
576
  Object.entries(this.enabledJWA).forEach(([key, value]) => {
254
577
  if (!JWA[key]) {
255
578
  throw new TypeError(`invalid property enabledJWA.${key} provided`);
@@ -359,26 +682,26 @@ class Configuration {
359
682
  const { features } = this;
360
683
 
361
684
  if (features.jwtIntrospection.enabled && !features.introspection.enabled) {
362
- throw new TypeError('jwtIntrospection is only available in conjuction with introspection');
685
+ throw new TypeError('jwtIntrospection is only available in conjunction with introspection');
363
686
  }
364
687
 
365
688
  if (features.jwtUserinfo.enabled && !features.userinfo.enabled) {
366
- throw new TypeError('jwtUserinfo is only available in conjuction with userinfo');
689
+ throw new TypeError('jwtUserinfo is only available in conjunction with userinfo');
367
690
  }
368
691
 
369
692
  if (features.registrationManagement.enabled && !features.registration.enabled) {
370
- throw new TypeError('registrationManagement is only available in conjuction with registration');
693
+ throw new TypeError('registrationManagement is only available in conjunction with registration');
371
694
  }
372
695
 
373
696
  if (
374
697
  (features.registration.enabled && features.registration.policies)
375
698
  && !features.registration.initialAccessToken
376
699
  ) {
377
- throw new TypeError('registration policies are only available in conjuction with adapter-backed initial access tokens');
700
+ throw new TypeError('registration policies are only available in conjunction with adapter-backed initial access tokens');
378
701
  }
379
702
 
380
703
  if (features.richAuthorizationRequests.enabled && !features.resourceIndicators.enabled) {
381
- throw new TypeError('richAuthorizationRequests is only available in conjuction with enabled resourceIndicators');
704
+ throw new TypeError('richAuthorizationRequests is only available in conjunction with enabled resourceIndicators');
382
705
  }
383
706
  }
384
707
 
@@ -396,7 +719,7 @@ class Configuration {
396
719
  valid = true;
397
720
  }
398
721
  break;
399
- case 'undefined': // does not expire
722
+ case 'undefined':
400
723
  valid = true;
401
724
  break;
402
725
  default:
@@ -434,6 +757,18 @@ class Configuration {
434
757
  }
435
758
  }
436
759
 
760
+ checkAttestClientAuth() {
761
+ const { additionalSecuritySignal } = this.features.attestClientAuth;
762
+
763
+ if (
764
+ additionalSecuritySignal !== false
765
+ && additionalSecuritySignal !== 'optional'
766
+ && additionalSecuritySignal !== 'required'
767
+ ) {
768
+ throw new TypeError('features.attestClientAuth.additionalSecuritySignal must be false, optional, or required');
769
+ }
770
+ }
771
+
437
772
  checkAuthMethods() {
438
773
  const authMethods = new Set([
439
774
  'none',
@@ -489,12 +824,11 @@ class Configuration {
489
824
  }
490
825
  }
491
826
 
492
- logDraftNotice() {
827
+ logDraftNotice(recognizedFeatures = getDefaults().features) {
493
828
  const ENABLED_EXPERIMENTS = new Set();
494
829
  let throwExperiment = false;
495
830
 
496
831
  Object.entries(this.features).forEach(([flag, { enabled, ack }]) => {
497
- const { features: recognizedFeatures } = getDefaults();
498
832
  if (!(flag in recognizedFeatures)) {
499
833
  throw new TypeError(`Unknown feature configuration: ${flag}`);
500
834
  }
@@ -0,0 +1,84 @@
1
+ import isPlainObject from './_/is_plain_object.js';
2
+
3
+ function invalid(path, expected) {
4
+ return new TypeError(`${path} must ${expected}`);
5
+ }
6
+
7
+ function ignoreThenableRejection(value) {
8
+ if (value !== null && (typeof value === 'object' || typeof value === 'function')) {
9
+ if (typeof value.then === 'function') {
10
+ Promise.resolve(value).catch(() => {});
11
+ }
12
+ }
13
+ }
14
+
15
+ export function boolean(value, path) {
16
+ if (typeof value !== 'boolean') {
17
+ ignoreThenableRejection(value);
18
+ throw invalid(path, 'return a Boolean');
19
+ }
20
+
21
+ return value;
22
+ }
23
+
24
+ export function positiveInteger(value, path) {
25
+ if (!Number.isSafeInteger(value) || value <= 0) {
26
+ ignoreThenableRejection(value);
27
+ throw invalid(path, 'return a positive integer');
28
+ }
29
+
30
+ return value;
31
+ }
32
+
33
+ export function account(value, path = 'findAccount') {
34
+ if (value === undefined) {
35
+ return value;
36
+ }
37
+
38
+ if (
39
+ value === null
40
+ || typeof value !== 'object'
41
+ || typeof value.accountId !== 'string'
42
+ || value.accountId.length === 0
43
+ || typeof value.claims !== 'function'
44
+ ) {
45
+ throw invalid(path, 'return undefined or an object with a non-empty accountId and a claims function');
46
+ }
47
+
48
+ return value;
49
+ }
50
+
51
+ export function resourceServer(value, path = 'features.resourceIndicators.getResourceServerInfo') {
52
+ if (value === null || typeof value !== 'object' || Array.isArray(value)) {
53
+ throw invalid(path, 'return an object');
54
+ }
55
+
56
+ if (typeof value.scope !== 'string') {
57
+ throw invalid(path, 'return an object with a scope string');
58
+ }
59
+
60
+ if (value.audience !== undefined && typeof value.audience !== 'string') {
61
+ throw invalid(path, 'return an object whose audience is a string when provided');
62
+ }
63
+
64
+ if (value.accessTokenTTL !== undefined) {
65
+ positiveInteger(value.accessTokenTTL, `${path}.accessTokenTTL`);
66
+ }
67
+
68
+ if (
69
+ value.accessTokenFormat !== undefined
70
+ && !['opaque', 'jwt'].includes(value.accessTokenFormat)
71
+ ) {
72
+ throw invalid(path, 'return an object whose accessTokenFormat is "opaque" or "jwt" when provided');
73
+ }
74
+
75
+ return value;
76
+ }
77
+
78
+ export function extraTokenClaims(value, path = 'extraTokenClaims') {
79
+ if (value !== undefined && !isPlainObject(value)) {
80
+ throw invalid(path, 'return undefined or a plain object');
81
+ }
82
+
83
+ return value;
84
+ }
@@ -13,7 +13,7 @@ function constantEquals(a, b, minComp = 0) {
13
13
  if (typeof a !== 'string' || typeof b !== 'string') {
14
14
  throw new TypeError('arguments must be strings');
15
15
  }
16
- const length = Math.max(a.length, b.length, minComp);
16
+ const length = Math.max(Buffer.byteLength(a), Buffer.byteLength(b), minComp);
17
17
  return timingSafeEqual(paddedBuffer(a, length), paddedBuffer(b, length));
18
18
  }
19
19