@nocobase/plugin-idp-oauth 2.1.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.
- package/LICENSE.txt +107 -0
- package/README.md +14 -0
- package/build.config.ts +46 -0
- package/client.d.ts +2 -0
- package/client.js +1 -0
- package/dist/client/ErrorPage.d.ts +11 -0
- package/dist/client/InteractionPage.d.ts +11 -0
- package/dist/client/index.d.ts +9 -0
- package/dist/client/index.js +10 -0
- package/dist/client/locale.d.ts +10 -0
- package/dist/client/models/index.d.ts +11 -0
- package/dist/client/plugin.d.ts +13 -0
- package/dist/externalVersion.js +18 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +48 -0
- package/dist/locale/en-US.json +1 -0
- package/dist/locale/zh-CN.json +1 -0
- package/dist/node_modules/eta/LICENSE +7 -0
- package/dist/node_modules/eta/README.md +185 -0
- package/dist/node_modules/eta/dist/core.d.ts +179 -0
- package/dist/node_modules/eta/dist/core.d.ts.map +1 -0
- package/dist/node_modules/eta/dist/core.js +42 -0
- package/dist/node_modules/eta/dist/core.js.map +1 -0
- package/dist/node_modules/eta/dist/index.cjs +542 -0
- package/dist/node_modules/eta/dist/index.cjs.map +1 -0
- package/dist/node_modules/eta/dist/index.d.cts +187 -0
- package/dist/node_modules/eta/dist/index.d.cts.map +1 -0
- package/dist/node_modules/eta/dist/index.d.mts +187 -0
- package/dist/node_modules/eta/dist/index.d.mts.map +1 -0
- package/dist/node_modules/eta/dist/index.mjs +512 -0
- package/dist/node_modules/eta/dist/index.mjs.map +1 -0
- package/dist/node_modules/eta/package.json +75 -0
- package/dist/node_modules/jose/LICENSE.md +21 -0
- package/dist/node_modules/jose/README.md +153 -0
- package/dist/node_modules/jose/dist/types/index.d.ts +55 -0
- package/dist/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +31 -0
- package/dist/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +65 -0
- package/dist/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +31 -0
- package/dist/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +83 -0
- package/dist/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +38 -0
- package/dist/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +74 -0
- package/dist/node_modules/jose/dist/types/jwk/embedded.d.ts +17 -0
- package/dist/node_modules/jose/dist/types/jwk/thumbprint.d.ts +32 -0
- package/dist/node_modules/jose/dist/types/jwks/local.d.ts +29 -0
- package/dist/node_modules/jose/dist/types/jwks/remote.d.ts +237 -0
- package/dist/node_modules/jose/dist/types/jws/compact/sign.d.ts +36 -0
- package/dist/node_modules/jose/dist/types/jws/compact/verify.d.ts +33 -0
- package/dist/node_modules/jose/dist/types/jws/flattened/sign.d.ts +42 -0
- package/dist/node_modules/jose/dist/types/jws/flattened/verify.d.ts +33 -0
- package/dist/node_modules/jose/dist/types/jws/general/sign.d.ts +53 -0
- package/dist/node_modules/jose/dist/types/jws/general/verify.d.ts +41 -0
- package/dist/node_modules/jose/dist/types/jwt/decrypt.d.ts +35 -0
- package/dist/node_modules/jose/dist/types/jwt/encrypt.d.ts +91 -0
- package/dist/node_modules/jose/dist/types/jwt/sign.d.ts +43 -0
- package/dist/node_modules/jose/dist/types/jwt/unsecured.d.ts +43 -0
- package/dist/node_modules/jose/dist/types/jwt/verify.d.ts +37 -0
- package/dist/node_modules/jose/dist/types/key/export.d.ts +33 -0
- package/dist/node_modules/jose/dist/types/key/generate_key_pair.d.ts +47 -0
- package/dist/node_modules/jose/dist/types/key/generate_secret.d.ts +35 -0
- package/dist/node_modules/jose/dist/types/key/import.d.ts +83 -0
- package/dist/node_modules/jose/dist/types/types.d.ts +852 -0
- package/dist/node_modules/jose/dist/types/util/base64url.d.ts +9 -0
- package/dist/node_modules/jose/dist/types/util/decode_jwt.d.ts +18 -0
- package/dist/node_modules/jose/dist/types/util/decode_protected_header.d.ts +17 -0
- package/dist/node_modules/jose/dist/types/util/errors.d.ts +213 -0
- package/dist/node_modules/jose/dist/webapi/index.js +32 -0
- package/dist/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +27 -0
- package/dist/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +27 -0
- package/dist/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +155 -0
- package/dist/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +165 -0
- package/dist/node_modules/jose/dist/webapi/jwe/general/decrypt.js +31 -0
- package/dist/node_modules/jose/dist/webapi/jwe/general/encrypt.js +182 -0
- package/dist/node_modules/jose/dist/webapi/jwk/embedded.js +17 -0
- package/dist/node_modules/jose/dist/webapi/jwk/thumbprint.js +68 -0
- package/dist/node_modules/jose/dist/webapi/jwks/local.js +119 -0
- package/dist/node_modules/jose/dist/webapi/jwks/remote.js +179 -0
- package/dist/node_modules/jose/dist/webapi/jws/compact/sign.js +18 -0
- package/dist/node_modules/jose/dist/webapi/jws/compact/verify.js +21 -0
- package/dist/node_modules/jose/dist/webapi/jws/flattened/sign.js +89 -0
- package/dist/node_modules/jose/dist/webapi/jws/flattened/verify.js +110 -0
- package/dist/node_modules/jose/dist/webapi/jws/general/sign.js +70 -0
- package/dist/node_modules/jose/dist/webapi/jws/general/verify.js +24 -0
- package/dist/node_modules/jose/dist/webapi/jwt/decrypt.js +23 -0
- package/dist/node_modules/jose/dist/webapi/jwt/encrypt.js +101 -0
- package/dist/node_modules/jose/dist/webapi/jwt/sign.js +52 -0
- package/dist/node_modules/jose/dist/webapi/jwt/unsecured.js +63 -0
- package/dist/node_modules/jose/dist/webapi/jwt/verify.js +15 -0
- package/dist/node_modules/jose/dist/webapi/key/export.js +11 -0
- package/dist/node_modules/jose/dist/webapi/key/generate_key_pair.js +97 -0
- package/dist/node_modules/jose/dist/webapi/key/generate_secret.js +40 -0
- package/dist/node_modules/jose/dist/webapi/key/import.js +57 -0
- package/dist/node_modules/jose/dist/webapi/lib/aesgcmkw.js +15 -0
- package/dist/node_modules/jose/dist/webapi/lib/aeskw.js +25 -0
- package/dist/node_modules/jose/dist/webapi/lib/asn1.js +243 -0
- package/dist/node_modules/jose/dist/webapi/lib/base64.js +22 -0
- package/dist/node_modules/jose/dist/webapi/lib/buffer_utils.js +43 -0
- package/dist/node_modules/jose/dist/webapi/lib/check_key_type.js +122 -0
- package/dist/node_modules/jose/dist/webapi/lib/content_encryption.js +217 -0
- package/dist/node_modules/jose/dist/webapi/lib/crypto_key.js +136 -0
- package/dist/node_modules/jose/dist/webapi/lib/deflate.js +44 -0
- package/dist/node_modules/jose/dist/webapi/lib/ecdhes.js +52 -0
- package/dist/node_modules/jose/dist/webapi/lib/helpers.js +19 -0
- package/dist/node_modules/jose/dist/webapi/lib/invalid_key_input.js +27 -0
- package/dist/node_modules/jose/dist/webapi/lib/is_key_like.js +17 -0
- package/dist/node_modules/jose/dist/webapi/lib/jwk_to_key.js +107 -0
- package/dist/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +238 -0
- package/dist/node_modules/jose/dist/webapi/lib/key_management.js +186 -0
- package/dist/node_modules/jose/dist/webapi/lib/key_to_jwk.js +31 -0
- package/dist/node_modules/jose/dist/webapi/lib/normalize_key.js +166 -0
- package/dist/node_modules/jose/dist/webapi/lib/pbes2kw.js +39 -0
- package/dist/node_modules/jose/dist/webapi/lib/rsaes.js +24 -0
- package/dist/node_modules/jose/dist/webapi/lib/signing.js +68 -0
- package/dist/node_modules/jose/dist/webapi/lib/type_checks.js +40 -0
- package/dist/node_modules/jose/dist/webapi/lib/validate_algorithms.js +10 -0
- package/dist/node_modules/jose/dist/webapi/lib/validate_crit.js +33 -0
- package/dist/node_modules/jose/dist/webapi/util/base64url.js +30 -0
- package/dist/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -0
- package/dist/node_modules/jose/dist/webapi/util/decode_protected_header.js +34 -0
- package/dist/node_modules/jose/dist/webapi/util/errors.js +99 -0
- package/dist/node_modules/jose/package.json +200 -0
- package/dist/node_modules/light-my-request/.gitattributes +2 -0
- package/dist/node_modules/light-my-request/.github/dependabot.yml +13 -0
- package/dist/node_modules/light-my-request/.github/stale.yml +21 -0
- package/dist/node_modules/light-my-request/.github/workflows/benchmark.yml +30 -0
- package/dist/node_modules/light-my-request/.github/workflows/ci.yml +23 -0
- package/dist/node_modules/light-my-request/LICENSE +32 -0
- package/dist/node_modules/light-my-request/benchmark/benchmark.js +164 -0
- package/dist/node_modules/light-my-request/build/build-validation.js +100 -0
- package/dist/node_modules/light-my-request/eslint.config.js +9 -0
- package/dist/node_modules/light-my-request/index.js +2 -0
- package/dist/node_modules/light-my-request/lib/config-validator.js +919 -0
- package/dist/node_modules/light-my-request/lib/form-data.js +79 -0
- package/dist/node_modules/light-my-request/lib/parse-url.js +47 -0
- package/dist/node_modules/light-my-request/lib/request.js +290 -0
- package/dist/node_modules/light-my-request/lib/response.js +240 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/.gitattributes +2 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/.github/dependabot.yml +13 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/.github/workflows/ci.yml +24 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/.taprc +2 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/benchmarks/warn.js +25 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/eslint.config.js +6 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/examples/example.js +11 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/index.js +124 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/package.json +73 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-interpolated-string.test.js +29 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-once-only.test.js +28 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-reset.test.js +36 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-set.test.js +30 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-unlimited.test.js +37 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/index.test.js +99 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/issue-88.test.js +33 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/jest.test.js +22 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/test/no-warnings.test.js +80 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/types/index.d.ts +37 -0
- package/dist/node_modules/light-my-request/node_modules/process-warning/types/index.test-d.ts +36 -0
- package/dist/node_modules/light-my-request/package.json +1 -0
- package/dist/node_modules/light-my-request/test/async-await.test.js +55 -0
- package/dist/node_modules/light-my-request/test/index.test.js +2316 -0
- package/dist/node_modules/light-my-request/test/request.test.js +16 -0
- package/dist/node_modules/light-my-request/test/response.test.js +19 -0
- package/dist/node_modules/light-my-request/test/stream.test.js +359 -0
- package/dist/node_modules/light-my-request/types/index.d.ts +128 -0
- package/dist/node_modules/light-my-request/types/index.test-d.ts +149 -0
- package/dist/node_modules/oidc-provider/LICENSE.md +21 -0
- package/dist/node_modules/oidc-provider/README.md +174 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_claims.js +28 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_defaults.js +17 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/authenticated_client_id.js +6 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_remap_errors.js +17 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_response.js +41 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_ciba_context.js +12 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_claims.js +68 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client.js +21 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client_grant_type.js +21 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_dpop_jkt.js +35 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_extra_params.js +18 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_id_token_hint.js +23 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_max_age.js +25 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_openid_scope.js +47 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_pkce.js +41 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_prompt.js +25 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_redirect_uri.js +41 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_requested_expiry.js +16 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_mode.js +54 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_type.js +26 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/check_scope.js +53 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_load_account.js +58 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_required.js +13 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/device_authorization_response.js +31 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow.js +31 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_errors.js +37 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_response.js +55 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/index.js +200 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/interaction_emit.js +9 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/interactions.js +149 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/load_account.js +15 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/load_grant.js +29 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/load_pushed_authorization_request.js +36 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/oauth_required.js +11 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/oidc_required.js +27 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/one_redirect_uri_clients.js +20 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/process_request_object.js +214 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_remap_errors.js +17 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_response.js +65 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_registration.js +12 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_request_and_uri.js +12 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_unsupported.js +33 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/respond.js +46 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/resume.js +111 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/strip_outside_jar_params.js +19 -0
- package/dist/node_modules/oidc-provider/lib/actions/authorization/unsupported_rar.js +9 -0
- package/dist/node_modules/oidc-provider/lib/actions/challenge.js +22 -0
- package/dist/node_modules/oidc-provider/lib/actions/code_verification.js +122 -0
- package/dist/node_modules/oidc-provider/lib/actions/discovery.js +151 -0
- package/dist/node_modules/oidc-provider/lib/actions/end_session.js +222 -0
- package/dist/node_modules/oidc-provider/lib/actions/grants/authorization_code.js +144 -0
- package/dist/node_modules/oidc-provider/lib/actions/grants/ciba.js +127 -0
- package/dist/node_modules/oidc-provider/lib/actions/grants/client_credentials.js +79 -0
- package/dist/node_modules/oidc-provider/lib/actions/grants/device_code.js +125 -0
- package/dist/node_modules/oidc-provider/lib/actions/grants/index.js +7 -0
- package/dist/node_modules/oidc-provider/lib/actions/grants/refresh_token.js +229 -0
- package/dist/node_modules/oidc-provider/lib/actions/index.js +25 -0
- package/dist/node_modules/oidc-provider/lib/actions/interaction.js +150 -0
- package/dist/node_modules/oidc-provider/lib/actions/introspection.js +164 -0
- package/dist/node_modules/oidc-provider/lib/actions/jwks.js +7 -0
- package/dist/node_modules/oidc-provider/lib/actions/registration.js +274 -0
- package/dist/node_modules/oidc-provider/lib/actions/revocation.js +81 -0
- package/dist/node_modules/oidc-provider/lib/actions/token.js +74 -0
- package/dist/node_modules/oidc-provider/lib/actions/userinfo.js +183 -0
- package/dist/node_modules/oidc-provider/lib/adapters/memory_adapter.js +95 -0
- package/dist/node_modules/oidc-provider/lib/consts/client_attributes.js +211 -0
- package/dist/node_modules/oidc-provider/lib/consts/dev_keystore.js +18 -0
- package/dist/node_modules/oidc-provider/lib/consts/index.js +13 -0
- package/dist/node_modules/oidc-provider/lib/consts/jwa.js +47 -0
- package/dist/node_modules/oidc-provider/lib/consts/non_rejectable_claims.js +1 -0
- package/dist/node_modules/oidc-provider/lib/consts/param_list.js +23 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/camel_case.js +1 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/defaults.js +28 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/difference.js +1 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/is_plain_object.js +1 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/map_keys.js +9 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/merge.js +25 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/omit_by.js +11 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/pick.js +10 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/pick_by.js +10 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/remove.js +9 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/set.js +18 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/snake_case.js +1 -0
- package/dist/node_modules/oidc-provider/lib/helpers/_/upper_first.js +1 -0
- package/dist/node_modules/oidc-provider/lib/helpers/account_claims.js +6 -0
- package/dist/node_modules/oidc-provider/lib/helpers/add_client.js +14 -0
- package/dist/node_modules/oidc-provider/lib/helpers/als.js +3 -0
- package/dist/node_modules/oidc-provider/lib/helpers/append_www_authenticate.js +9 -0
- package/dist/node_modules/oidc-provider/lib/helpers/attention.js +23 -0
- package/dist/node_modules/oidc-provider/lib/helpers/base64url.js +11 -0
- package/dist/node_modules/oidc-provider/lib/helpers/certificate_thumbprint.js +15 -0
- package/dist/node_modules/oidc-provider/lib/helpers/challenge.js +111 -0
- package/dist/node_modules/oidc-provider/lib/helpers/check_attest_binding.js +10 -0
- package/dist/node_modules/oidc-provider/lib/helpers/claims.js +79 -0
- package/dist/node_modules/oidc-provider/lib/helpers/client_id_metadata_document.js +198 -0
- package/dist/node_modules/oidc-provider/lib/helpers/client_schema.js +700 -0
- package/dist/node_modules/oidc-provider/lib/helpers/combined_scope.js +17 -0
- package/dist/node_modules/oidc-provider/lib/helpers/configuration.js +544 -0
- package/dist/node_modules/oidc-provider/lib/helpers/constant_equals.js +20 -0
- package/dist/node_modules/oidc-provider/lib/helpers/defaults.js +3510 -0
- package/dist/node_modules/oidc-provider/lib/helpers/epoch_time.js +1 -0
- package/dist/node_modules/oidc-provider/lib/helpers/err_out.js +17 -0
- package/dist/node_modules/oidc-provider/lib/helpers/errors.js +161 -0
- package/dist/node_modules/oidc-provider/lib/helpers/features.js +51 -0
- package/dist/node_modules/oidc-provider/lib/helpers/fetch_body_check.js +25 -0
- package/dist/node_modules/oidc-provider/lib/helpers/fetch_request.js +221 -0
- package/dist/node_modules/oidc-provider/lib/helpers/filter_claims.js +16 -0
- package/dist/node_modules/oidc-provider/lib/helpers/formatters.js +24 -0
- package/dist/node_modules/oidc-provider/lib/helpers/grant_common.js +214 -0
- package/dist/node_modules/oidc-provider/lib/helpers/html_safe.js +19 -0
- package/dist/node_modules/oidc-provider/lib/helpers/initialize_adapter.js +24 -0
- package/dist/node_modules/oidc-provider/lib/helpers/initialize_app.js +243 -0
- package/dist/node_modules/oidc-provider/lib/helpers/initialize_clients.js +24 -0
- package/dist/node_modules/oidc-provider/lib/helpers/initialize_keystore.js +310 -0
- package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/check.js +21 -0
- package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/index.js +43 -0
- package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompt.js +95 -0
- package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/consent.js +105 -0
- package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/login.js +162 -0
- package/dist/node_modules/oidc-provider/lib/helpers/jwt.js +211 -0
- package/dist/node_modules/oidc-provider/lib/helpers/keystore.js +301 -0
- package/dist/node_modules/oidc-provider/lib/helpers/nanoid.js +5 -0
- package/dist/node_modules/oidc-provider/lib/helpers/oidc_context.js +284 -0
- package/dist/node_modules/oidc-provider/lib/helpers/params.js +27 -0
- package/dist/node_modules/oidc-provider/lib/helpers/pkce.js +30 -0
- package/dist/node_modules/oidc-provider/lib/helpers/pkce_format.js +17 -0
- package/dist/node_modules/oidc-provider/lib/helpers/process_response_types.js +202 -0
- package/dist/node_modules/oidc-provider/lib/helpers/re_render_errors.js +39 -0
- package/dist/node_modules/oidc-provider/lib/helpers/redirect_uri.js +16 -0
- package/dist/node_modules/oidc-provider/lib/helpers/resolve_resource.js +33 -0
- package/dist/node_modules/oidc-provider/lib/helpers/resolve_response_mode.js +7 -0
- package/dist/node_modules/oidc-provider/lib/helpers/resource_server.js +20 -0
- package/dist/node_modules/oidc-provider/lib/helpers/revoke.js +27 -0
- package/dist/node_modules/oidc-provider/lib/helpers/script_src_sha.js +21 -0
- package/dist/node_modules/oidc-provider/lib/helpers/sector_identifier.js +19 -0
- package/dist/node_modules/oidc-provider/lib/helpers/sector_validate.js +55 -0
- package/dist/node_modules/oidc-provider/lib/helpers/set_rt_bindings.js +21 -0
- package/dist/node_modules/oidc-provider/lib/helpers/token_find.js +51 -0
- package/dist/node_modules/oidc-provider/lib/helpers/type_validators.js +8 -0
- package/dist/node_modules/oidc-provider/lib/helpers/user_code_form.js +19 -0
- package/dist/node_modules/oidc-provider/lib/helpers/user_codes.js +38 -0
- package/dist/node_modules/oidc-provider/lib/helpers/valid_url.js +8 -0
- package/dist/node_modules/oidc-provider/lib/helpers/validate_dpop.js +129 -0
- package/dist/node_modules/oidc-provider/lib/helpers/validate_presence.js +17 -0
- package/dist/node_modules/oidc-provider/lib/helpers/weak_cache.js +11 -0
- package/dist/node_modules/oidc-provider/lib/index.js +21 -0
- package/dist/node_modules/oidc-provider/lib/models/access_token.js +31 -0
- package/dist/node_modules/oidc-provider/lib/models/authorization_code.js +27 -0
- package/dist/node_modules/oidc-provider/lib/models/backchannel_authentication_request.js +26 -0
- package/dist/node_modules/oidc-provider/lib/models/base_model.js +141 -0
- package/dist/node_modules/oidc-provider/lib/models/base_token.js +86 -0
- package/dist/node_modules/oidc-provider/lib/models/client.js +593 -0
- package/dist/node_modules/oidc-provider/lib/models/client_credentials.js +19 -0
- package/dist/node_modules/oidc-provider/lib/models/device_code.js +44 -0
- package/dist/node_modules/oidc-provider/lib/models/formats/dynamic.js +21 -0
- package/dist/node_modules/oidc-provider/lib/models/formats/index.js +14 -0
- package/dist/node_modules/oidc-provider/lib/models/formats/jwt.js +198 -0
- package/dist/node_modules/oidc-provider/lib/models/formats/opaque.js +58 -0
- package/dist/node_modules/oidc-provider/lib/models/grant.js +243 -0
- package/dist/node_modules/oidc-provider/lib/models/id_token.js +271 -0
- package/dist/node_modules/oidc-provider/lib/models/index.js +37 -0
- package/dist/node_modules/oidc-provider/lib/models/initial_access_token.js +12 -0
- package/dist/node_modules/oidc-provider/lib/models/interaction.js +73 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/apply.js +4 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/consumable.js +17 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/has_format.js +46 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_id.js +12 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_type.js +8 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/has_policies.js +38 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/is_attestation_constrained.js +15 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/is_sender_constrained.js +50 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/is_session_bound.js +38 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/set_audience.js +21 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/stores_auth.js +16 -0
- package/dist/node_modules/oidc-provider/lib/models/mixins/stores_pkce.js +9 -0
- package/dist/node_modules/oidc-provider/lib/models/pushed_authorization_request.js +21 -0
- package/dist/node_modules/oidc-provider/lib/models/refresh_token.js +47 -0
- package/dist/node_modules/oidc-provider/lib/models/registration_access_token.js +8 -0
- package/dist/node_modules/oidc-provider/lib/models/replay_detection.js +31 -0
- package/dist/node_modules/oidc-provider/lib/models/session.js +192 -0
- package/dist/node_modules/oidc-provider/lib/provider.js +453 -0
- package/dist/node_modules/oidc-provider/lib/response_modes/form_post.js +36 -0
- package/dist/node_modules/oidc-provider/lib/response_modes/fragment.js +7 -0
- package/dist/node_modules/oidc-provider/lib/response_modes/index.js +15 -0
- package/dist/node_modules/oidc-provider/lib/response_modes/jwt.js +43 -0
- package/dist/node_modules/oidc-provider/lib/response_modes/query.js +7 -0
- package/dist/node_modules/oidc-provider/lib/response_modes/web_message.js +55 -0
- package/dist/node_modules/oidc-provider/lib/shared/assemble_params.js +7 -0
- package/dist/node_modules/oidc-provider/lib/shared/attest_client_auth.js +111 -0
- package/dist/node_modules/oidc-provider/lib/shared/authorization_error_handler.js +104 -0
- package/dist/node_modules/oidc-provider/lib/shared/check_rar.js +75 -0
- package/dist/node_modules/oidc-provider/lib/shared/check_resource.js +77 -0
- package/dist/node_modules/oidc-provider/lib/shared/client_auth.js +263 -0
- package/dist/node_modules/oidc-provider/lib/shared/conditional_body.js +9 -0
- package/dist/node_modules/oidc-provider/lib/shared/cors.js +49 -0
- package/dist/node_modules/oidc-provider/lib/shared/error_handler.js +59 -0
- package/dist/node_modules/oidc-provider/lib/shared/jwt_client_auth.js +79 -0
- package/dist/node_modules/oidc-provider/lib/shared/no_cache.js +4 -0
- package/dist/node_modules/oidc-provider/lib/shared/reject_dupes.js +45 -0
- package/dist/node_modules/oidc-provider/lib/shared/reject_structured_tokens.js +18 -0
- package/dist/node_modules/oidc-provider/lib/shared/selective_body.js +60 -0
- package/dist/node_modules/oidc-provider/lib/shared/session.js +68 -0
- package/dist/node_modules/oidc-provider/lib/shared/set_www_authenticate_header.js +52 -0
- package/dist/node_modules/oidc-provider/lib/views/index.js +22 -0
- package/dist/node_modules/oidc-provider/lib/views/interaction.js +171 -0
- package/dist/node_modules/oidc-provider/lib/views/layout.js +237 -0
- package/dist/node_modules/oidc-provider/lib/views/login.js +43 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/LICENSE +21 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/README.md +1370 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.mts +1003 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.ts +1003 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.js +1616 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.mjs +1573 -0
- package/dist/node_modules/oidc-provider/node_modules/@koa/router/package.json +122 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/LICENSE +20 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/README.md +481 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/package.json +64 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/src/browser.js +272 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/src/common.js +292 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/src/index.js +10 -0
- package/dist/node_modules/oidc-provider/node_modules/debug/src/node.js +263 -0
- package/dist/node_modules/oidc-provider/node_modules/http-errors/HISTORY.md +186 -0
- package/dist/node_modules/oidc-provider/node_modules/http-errors/LICENSE +23 -0
- package/dist/node_modules/oidc-provider/node_modules/http-errors/README.md +169 -0
- package/dist/node_modules/oidc-provider/node_modules/http-errors/index.js +290 -0
- package/dist/node_modules/oidc-provider/node_modules/http-errors/package.json +54 -0
- package/dist/node_modules/oidc-provider/node_modules/jsesc/LICENSE-MIT.txt +20 -0
- package/dist/node_modules/oidc-provider/node_modules/jsesc/README.md +422 -0
- package/dist/node_modules/oidc-provider/node_modules/jsesc/bin/jsesc +148 -0
- package/dist/node_modules/oidc-provider/node_modules/jsesc/jsesc.js +337 -0
- package/dist/node_modules/oidc-provider/node_modules/jsesc/man/jsesc.1 +94 -0
- package/dist/node_modules/oidc-provider/node_modules/jsesc/package.json +56 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/LICENSE +20 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/README.md +38 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/bin/nanoid.js +55 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/index.browser.js +29 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/index.d.ts +106 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/index.js +47 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/nanoid.js +1 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.d.ts +48 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.js +21 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/package.json +46 -0
- package/dist/node_modules/oidc-provider/node_modules/nanoid/url-alphabet/index.js +2 -0
- package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/LICENSE +21 -0
- package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/Readme.md +224 -0
- package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.d.ts +144 -0
- package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js +409 -0
- package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js.map +1 -0
- package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/package.json +64 -0
- package/dist/node_modules/oidc-provider/node_modules/statuses/HISTORY.md +87 -0
- package/dist/node_modules/oidc-provider/node_modules/statuses/LICENSE +23 -0
- package/dist/node_modules/oidc-provider/node_modules/statuses/README.md +139 -0
- package/dist/node_modules/oidc-provider/node_modules/statuses/codes.json +65 -0
- package/dist/node_modules/oidc-provider/node_modules/statuses/index.js +146 -0
- package/dist/node_modules/oidc-provider/node_modules/statuses/package.json +49 -0
- package/dist/node_modules/oidc-provider/package.json +95 -0
- package/dist/node_modules/quick-lru/index.d.ts +178 -0
- package/dist/node_modules/quick-lru/index.js +329 -0
- package/dist/node_modules/quick-lru/license +9 -0
- package/dist/node_modules/quick-lru/package.json +54 -0
- package/dist/node_modules/quick-lru/readme.md +236 -0
- package/dist/node_modules/statuses/HISTORY.md +65 -0
- package/dist/node_modules/statuses/LICENSE +23 -0
- package/dist/node_modules/statuses/README.md +127 -0
- package/dist/node_modules/statuses/codes.json +66 -0
- package/dist/node_modules/statuses/index.js +113 -0
- package/dist/node_modules/statuses/package.json +48 -0
- package/dist/server/cache-adapter.d.ts +33 -0
- package/dist/server/cache-adapter.js +159 -0
- package/dist/server/index.d.ts +10 -0
- package/dist/server/index.js +48 -0
- package/dist/server/interaction.d.ts +26 -0
- package/dist/server/interaction.js +172 -0
- package/dist/server/paths.d.ts +19 -0
- package/dist/server/paths.js +64 -0
- package/dist/server/plugin.d.ts +16 -0
- package/dist/server/plugin.js +108 -0
- package/dist/server/provider-dispatch.d.ts +32 -0
- package/dist/server/provider-dispatch.js +252 -0
- package/dist/server/service.d.ts +63 -0
- package/dist/server/service.js +540 -0
- package/dist/server/utils.d.ts +12 -0
- package/dist/server/utils.js +58 -0
- package/package.json +24 -0
- package/server.d.ts +2 -0
- package/server.js +1 -0
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const object = {};
|
|
4
|
+
const hasOwnProperty = object.hasOwnProperty;
|
|
5
|
+
const forOwn = (object, callback) => {
|
|
6
|
+
for (const key in object) {
|
|
7
|
+
if (hasOwnProperty.call(object, key)) {
|
|
8
|
+
callback(key, object[key]);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const extend = (destination, source) => {
|
|
14
|
+
if (!source) {
|
|
15
|
+
return destination;
|
|
16
|
+
}
|
|
17
|
+
forOwn(source, (key, value) => {
|
|
18
|
+
destination[key] = value;
|
|
19
|
+
});
|
|
20
|
+
return destination;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const forEach = (array, callback) => {
|
|
24
|
+
const length = array.length;
|
|
25
|
+
let index = -1;
|
|
26
|
+
while (++index < length) {
|
|
27
|
+
callback(array[index]);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
const fourHexEscape = (hex) => {
|
|
32
|
+
return '\\u' + ('0000' + hex).slice(-4);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const hexadecimal = (code, lowercase) => {
|
|
36
|
+
let hexadecimal = code.toString(16);
|
|
37
|
+
if (lowercase) return hexadecimal;
|
|
38
|
+
return hexadecimal.toUpperCase();
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
const toString = object.toString;
|
|
42
|
+
const isArray = Array.isArray;
|
|
43
|
+
const isBuffer = (value) => {
|
|
44
|
+
return typeof Buffer === 'function' && Buffer.isBuffer(value);
|
|
45
|
+
};
|
|
46
|
+
const isObject = (value) => {
|
|
47
|
+
// This is a very simple check, but it’s good enough for what we need.
|
|
48
|
+
return toString.call(value) == '[object Object]';
|
|
49
|
+
};
|
|
50
|
+
const isString = (value) => {
|
|
51
|
+
return typeof value == 'string' ||
|
|
52
|
+
toString.call(value) == '[object String]';
|
|
53
|
+
};
|
|
54
|
+
const isNumber = (value) => {
|
|
55
|
+
return typeof value == 'number' ||
|
|
56
|
+
toString.call(value) == '[object Number]';
|
|
57
|
+
};
|
|
58
|
+
const isBigInt = (value) => {
|
|
59
|
+
return typeof value == 'bigint';
|
|
60
|
+
};
|
|
61
|
+
const isFunction = (value) => {
|
|
62
|
+
return typeof value == 'function';
|
|
63
|
+
};
|
|
64
|
+
const isMap = (value) => {
|
|
65
|
+
return toString.call(value) == '[object Map]';
|
|
66
|
+
};
|
|
67
|
+
const isSet = (value) => {
|
|
68
|
+
return toString.call(value) == '[object Set]';
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
/*--------------------------------------------------------------------------*/
|
|
72
|
+
|
|
73
|
+
// https://mathiasbynens.be/notes/javascript-escapes#single
|
|
74
|
+
const singleEscapes = {
|
|
75
|
+
'\\': '\\\\',
|
|
76
|
+
'\b': '\\b',
|
|
77
|
+
'\f': '\\f',
|
|
78
|
+
'\n': '\\n',
|
|
79
|
+
'\r': '\\r',
|
|
80
|
+
'\t': '\\t'
|
|
81
|
+
// `\v` is omitted intentionally, because in IE < 9, '\v' == 'v'.
|
|
82
|
+
// '\v': '\\x0B'
|
|
83
|
+
};
|
|
84
|
+
const regexSingleEscape = /[\\\b\f\n\r\t]/;
|
|
85
|
+
|
|
86
|
+
const regexDigit = /[0-9]/;
|
|
87
|
+
const regexWhitespace = /[\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;
|
|
88
|
+
|
|
89
|
+
const escapeEverythingRegex = /([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g;
|
|
90
|
+
const escapeNonAsciiRegex = /([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g;
|
|
91
|
+
|
|
92
|
+
const jsesc = (argument, options) => {
|
|
93
|
+
const increaseIndentation = () => {
|
|
94
|
+
oldIndent = indent;
|
|
95
|
+
++options.indentLevel;
|
|
96
|
+
indent = options.indent.repeat(options.indentLevel)
|
|
97
|
+
};
|
|
98
|
+
// Handle options
|
|
99
|
+
const defaults = {
|
|
100
|
+
'escapeEverything': false,
|
|
101
|
+
'minimal': false,
|
|
102
|
+
'isScriptContext': false,
|
|
103
|
+
'quotes': 'single',
|
|
104
|
+
'wrap': false,
|
|
105
|
+
'es6': false,
|
|
106
|
+
'json': false,
|
|
107
|
+
'compact': true,
|
|
108
|
+
'lowercaseHex': false,
|
|
109
|
+
'numbers': 'decimal',
|
|
110
|
+
'indent': '\t',
|
|
111
|
+
'indentLevel': 0,
|
|
112
|
+
'__inline1__': false,
|
|
113
|
+
'__inline2__': false
|
|
114
|
+
};
|
|
115
|
+
const json = options && options.json;
|
|
116
|
+
if (json) {
|
|
117
|
+
defaults.quotes = 'double';
|
|
118
|
+
defaults.wrap = true;
|
|
119
|
+
}
|
|
120
|
+
options = extend(defaults, options);
|
|
121
|
+
if (
|
|
122
|
+
options.quotes != 'single' &&
|
|
123
|
+
options.quotes != 'double' &&
|
|
124
|
+
options.quotes != 'backtick'
|
|
125
|
+
) {
|
|
126
|
+
options.quotes = 'single';
|
|
127
|
+
}
|
|
128
|
+
const quote = options.quotes == 'double' ?
|
|
129
|
+
'"' :
|
|
130
|
+
(options.quotes == 'backtick' ?
|
|
131
|
+
'`' :
|
|
132
|
+
'\''
|
|
133
|
+
);
|
|
134
|
+
const compact = options.compact;
|
|
135
|
+
const lowercaseHex = options.lowercaseHex;
|
|
136
|
+
let indent = options.indent.repeat(options.indentLevel);
|
|
137
|
+
let oldIndent = '';
|
|
138
|
+
const inline1 = options.__inline1__;
|
|
139
|
+
const inline2 = options.__inline2__;
|
|
140
|
+
const newLine = compact ? '' : '\n';
|
|
141
|
+
let result;
|
|
142
|
+
let isEmpty = true;
|
|
143
|
+
const useBinNumbers = options.numbers == 'binary';
|
|
144
|
+
const useOctNumbers = options.numbers == 'octal';
|
|
145
|
+
const useDecNumbers = options.numbers == 'decimal';
|
|
146
|
+
const useHexNumbers = options.numbers == 'hexadecimal';
|
|
147
|
+
|
|
148
|
+
if (json && argument && isFunction(argument.toJSON)) {
|
|
149
|
+
argument = argument.toJSON();
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
if (!isString(argument)) {
|
|
153
|
+
if (isMap(argument)) {
|
|
154
|
+
if (argument.size == 0) {
|
|
155
|
+
return 'new Map()';
|
|
156
|
+
}
|
|
157
|
+
if (!compact) {
|
|
158
|
+
options.__inline1__ = true;
|
|
159
|
+
options.__inline2__ = false;
|
|
160
|
+
}
|
|
161
|
+
return 'new Map(' + jsesc(Array.from(argument), options) + ')';
|
|
162
|
+
}
|
|
163
|
+
if (isSet(argument)) {
|
|
164
|
+
if (argument.size == 0) {
|
|
165
|
+
return 'new Set()';
|
|
166
|
+
}
|
|
167
|
+
return 'new Set(' + jsesc(Array.from(argument), options) + ')';
|
|
168
|
+
}
|
|
169
|
+
if (isBuffer(argument)) {
|
|
170
|
+
if (argument.length == 0) {
|
|
171
|
+
return 'Buffer.from([])';
|
|
172
|
+
}
|
|
173
|
+
return 'Buffer.from(' + jsesc(Array.from(argument), options) + ')';
|
|
174
|
+
}
|
|
175
|
+
if (isArray(argument)) {
|
|
176
|
+
result = [];
|
|
177
|
+
options.wrap = true;
|
|
178
|
+
if (inline1) {
|
|
179
|
+
options.__inline1__ = false;
|
|
180
|
+
options.__inline2__ = true;
|
|
181
|
+
}
|
|
182
|
+
if (!inline2) {
|
|
183
|
+
increaseIndentation();
|
|
184
|
+
}
|
|
185
|
+
forEach(argument, (value) => {
|
|
186
|
+
isEmpty = false;
|
|
187
|
+
if (inline2) {
|
|
188
|
+
options.__inline2__ = false;
|
|
189
|
+
}
|
|
190
|
+
result.push(
|
|
191
|
+
(compact || inline2 ? '' : indent) +
|
|
192
|
+
jsesc(value, options)
|
|
193
|
+
);
|
|
194
|
+
});
|
|
195
|
+
if (isEmpty) {
|
|
196
|
+
return '[]';
|
|
197
|
+
}
|
|
198
|
+
if (inline2) {
|
|
199
|
+
return '[' + result.join(', ') + ']';
|
|
200
|
+
}
|
|
201
|
+
return '[' + newLine + result.join(',' + newLine) + newLine +
|
|
202
|
+
(compact ? '' : oldIndent) + ']';
|
|
203
|
+
} else if (isNumber(argument) || isBigInt(argument)) {
|
|
204
|
+
if (json) {
|
|
205
|
+
// Some number values (e.g. `Infinity`) cannot be represented in JSON.
|
|
206
|
+
// `BigInt` values less than `-Number.MAX_VALUE` or greater than
|
|
207
|
+
// `Number.MAX_VALUE` cannot be represented in JSON so they will become
|
|
208
|
+
// `-Infinity` or `Infinity`, respectively, and then become `null` when
|
|
209
|
+
// stringified.
|
|
210
|
+
return JSON.stringify(Number(argument));
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
let result;
|
|
214
|
+
if (useDecNumbers) {
|
|
215
|
+
result = String(argument);
|
|
216
|
+
} else if (useHexNumbers) {
|
|
217
|
+
let hexadecimal = argument.toString(16);
|
|
218
|
+
if (!lowercaseHex) {
|
|
219
|
+
hexadecimal = hexadecimal.toUpperCase();
|
|
220
|
+
}
|
|
221
|
+
result = '0x' + hexadecimal;
|
|
222
|
+
} else if (useBinNumbers) {
|
|
223
|
+
result = '0b' + argument.toString(2);
|
|
224
|
+
} else if (useOctNumbers) {
|
|
225
|
+
result = '0o' + argument.toString(8);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
if (isBigInt(argument)) {
|
|
229
|
+
return result + 'n';
|
|
230
|
+
}
|
|
231
|
+
return result;
|
|
232
|
+
} else if (isBigInt(argument)) {
|
|
233
|
+
if (json) {
|
|
234
|
+
// `BigInt` values less than `-Number.MAX_VALUE` or greater than
|
|
235
|
+
// `Number.MAX_VALUE` will become `-Infinity` or `Infinity`,
|
|
236
|
+
// respectively, and cannot be represented in JSON.
|
|
237
|
+
return JSON.stringify(Number(argument));
|
|
238
|
+
}
|
|
239
|
+
return argument + 'n';
|
|
240
|
+
} else if (!isObject(argument)) {
|
|
241
|
+
if (json) {
|
|
242
|
+
// For some values (e.g. `undefined`, `function` objects),
|
|
243
|
+
// `JSON.stringify(value)` returns `undefined` (which isn’t valid
|
|
244
|
+
// JSON) instead of `'null'`.
|
|
245
|
+
return JSON.stringify(argument) || 'null';
|
|
246
|
+
}
|
|
247
|
+
return String(argument);
|
|
248
|
+
} else { // it’s an object
|
|
249
|
+
result = [];
|
|
250
|
+
options.wrap = true;
|
|
251
|
+
increaseIndentation();
|
|
252
|
+
forOwn(argument, (key, value) => {
|
|
253
|
+
isEmpty = false;
|
|
254
|
+
result.push(
|
|
255
|
+
(compact ? '' : indent) +
|
|
256
|
+
jsesc(key, options) + ':' +
|
|
257
|
+
(compact ? '' : ' ') +
|
|
258
|
+
jsesc(value, options)
|
|
259
|
+
);
|
|
260
|
+
});
|
|
261
|
+
if (isEmpty) {
|
|
262
|
+
return '{}';
|
|
263
|
+
}
|
|
264
|
+
return '{' + newLine + result.join(',' + newLine) + newLine +
|
|
265
|
+
(compact ? '' : oldIndent) + '}';
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
const regex = options.escapeEverything ? escapeEverythingRegex : escapeNonAsciiRegex;
|
|
270
|
+
result = argument.replace(regex, (char, pair, lone, quoteChar, index, string) => {
|
|
271
|
+
if (pair) {
|
|
272
|
+
if (options.minimal) return pair;
|
|
273
|
+
const first = pair.charCodeAt(0);
|
|
274
|
+
const second = pair.charCodeAt(1);
|
|
275
|
+
if (options.es6) {
|
|
276
|
+
// https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
|
|
277
|
+
const codePoint = (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;
|
|
278
|
+
const hex = hexadecimal(codePoint, lowercaseHex);
|
|
279
|
+
return '\\u{' + hex + '}';
|
|
280
|
+
}
|
|
281
|
+
return fourHexEscape(hexadecimal(first, lowercaseHex)) + fourHexEscape(hexadecimal(second, lowercaseHex));
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
if (lone) {
|
|
285
|
+
return fourHexEscape(hexadecimal(lone.charCodeAt(0), lowercaseHex));
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
if (
|
|
289
|
+
char == '\0' &&
|
|
290
|
+
!json &&
|
|
291
|
+
!regexDigit.test(string.charAt(index + 1))
|
|
292
|
+
) {
|
|
293
|
+
return '\\0';
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
if (quoteChar) {
|
|
297
|
+
if (quoteChar == quote || options.escapeEverything) {
|
|
298
|
+
return '\\' + quoteChar;
|
|
299
|
+
}
|
|
300
|
+
return quoteChar;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
if (regexSingleEscape.test(char)) {
|
|
304
|
+
// no need for a `hasOwnProperty` check here
|
|
305
|
+
return singleEscapes[char];
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
if (options.minimal && !regexWhitespace.test(char)) {
|
|
309
|
+
return char;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
const hex = hexadecimal(char.charCodeAt(0), lowercaseHex);
|
|
313
|
+
if (json || hex.length > 2) {
|
|
314
|
+
return fourHexEscape(hex);
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
return '\\x' + ('00' + hex).slice(-2);
|
|
318
|
+
});
|
|
319
|
+
|
|
320
|
+
if (quote == '`') {
|
|
321
|
+
result = result.replace(/\$\{/g, '\\${');
|
|
322
|
+
}
|
|
323
|
+
if (options.isScriptContext) {
|
|
324
|
+
// https://mathiasbynens.be/notes/etago
|
|
325
|
+
result = result
|
|
326
|
+
.replace(/<\/(script|style)/gi, '<\\/$1')
|
|
327
|
+
.replace(/<!--/g, json ? '\\u003C!--' : '\\x3C!--');
|
|
328
|
+
}
|
|
329
|
+
if (options.wrap) {
|
|
330
|
+
result = quote + result + quote;
|
|
331
|
+
}
|
|
332
|
+
return result;
|
|
333
|
+
};
|
|
334
|
+
|
|
335
|
+
jsesc.version = '3.0.2';
|
|
336
|
+
|
|
337
|
+
module.exports = jsesc;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
.Dd May 13, 2016
|
|
2
|
+
.Dt jsesc 1
|
|
3
|
+
.Sh NAME
|
|
4
|
+
.Nm jsesc
|
|
5
|
+
.Nd escape strings for use in JavaScript string literals
|
|
6
|
+
.Sh SYNOPSIS
|
|
7
|
+
.Nm
|
|
8
|
+
.Op Fl s | -single-quotes Ar string
|
|
9
|
+
.br
|
|
10
|
+
.Op Fl d | -double-quotes Ar string
|
|
11
|
+
.br
|
|
12
|
+
.Op Fl w | -wrap Ar string
|
|
13
|
+
.br
|
|
14
|
+
.Op Fl e | -escape-everything Ar string
|
|
15
|
+
.br
|
|
16
|
+
.Op Fl 6 | -es6 Ar string
|
|
17
|
+
.br
|
|
18
|
+
.Op Fl l | -lowercase-hex Ar string
|
|
19
|
+
.br
|
|
20
|
+
.Op Fl j | -json Ar string
|
|
21
|
+
.br
|
|
22
|
+
.Op Fl p | -object Ar string
|
|
23
|
+
.br
|
|
24
|
+
.Op Fl p | -pretty Ar string
|
|
25
|
+
.br
|
|
26
|
+
.Op Fl v | -version
|
|
27
|
+
.br
|
|
28
|
+
.Op Fl h | -help
|
|
29
|
+
.Sh DESCRIPTION
|
|
30
|
+
.Nm
|
|
31
|
+
escapes strings for use in JavaScript string literals while generating the shortest possible valid ASCII-only output.
|
|
32
|
+
.Sh OPTIONS
|
|
33
|
+
.Bl -ohang -offset
|
|
34
|
+
.It Sy "-s, --single-quotes"
|
|
35
|
+
Escape any occurrences of ' in the input string as \\', so that the output can be used in a JavaScript string literal wrapped in single quotes.
|
|
36
|
+
.It Sy "-d, --double-quotes"
|
|
37
|
+
Escape any occurrences of " in the input string as \\", so that the output can be used in a JavaScript string literal wrapped in double quotes.
|
|
38
|
+
.It Sy "-w, --wrap"
|
|
39
|
+
Make sure the output is a valid JavaScript string literal wrapped in quotes. The type of quotes can be specified using the
|
|
40
|
+
.Ar -s | --single-quotes
|
|
41
|
+
or
|
|
42
|
+
.Ar -d | --double-quotes
|
|
43
|
+
settings.
|
|
44
|
+
.It Sy "-6, --es6"
|
|
45
|
+
Escape any astral Unicode symbols using ECMAScript 6 Unicode code point escape sequences.
|
|
46
|
+
.It Sy "-e, --escape-everything"
|
|
47
|
+
Escape all the symbols in the output, even printable ASCII symbols.
|
|
48
|
+
.It Sy "-j, --json"
|
|
49
|
+
Make sure the output is valid JSON. Hexadecimal character escape sequences and the \\v or \\0 escape sequences will not be used. Setting this flag enables the
|
|
50
|
+
.Ar -d | --double-quotes
|
|
51
|
+
and
|
|
52
|
+
.Ar -w | --wrap
|
|
53
|
+
settings.
|
|
54
|
+
.It Sy "-o, --object"
|
|
55
|
+
Treat the input as a JavaScript object rather than a string. Accepted values are flat arrays containing only string values, and flat objects containing only string values.
|
|
56
|
+
.It Sy "-p, --pretty"
|
|
57
|
+
Pretty-print the output for objects, using whitespace to make it more readable. Setting this flag enables the
|
|
58
|
+
.It Sy "-l, --lowercase-hex"
|
|
59
|
+
Use lowercase for alphabetical hexadecimal digits in escape sequences.
|
|
60
|
+
.Ar -o | --object
|
|
61
|
+
setting.
|
|
62
|
+
.It Sy "-v, --version"
|
|
63
|
+
Print jsesc's version.
|
|
64
|
+
.It Sy "-h, --help"
|
|
65
|
+
Show the help screen.
|
|
66
|
+
.El
|
|
67
|
+
.Sh EXIT STATUS
|
|
68
|
+
The
|
|
69
|
+
.Nm jsesc
|
|
70
|
+
utility exits with one of the following values:
|
|
71
|
+
.Pp
|
|
72
|
+
.Bl -tag -width flag -compact
|
|
73
|
+
.It Li 0
|
|
74
|
+
.Nm
|
|
75
|
+
successfully escaped the given string and printed the result.
|
|
76
|
+
.It Li 1
|
|
77
|
+
.Nm
|
|
78
|
+
wasn't instructed to escape anything (for example, the
|
|
79
|
+
.Ar --help
|
|
80
|
+
flag was set); or, an error occurred.
|
|
81
|
+
.El
|
|
82
|
+
.Sh EXAMPLES
|
|
83
|
+
.Bl -ohang -offset
|
|
84
|
+
.It Sy "jsesc 'foo bar baz'"
|
|
85
|
+
Print an escaped version of the given string.
|
|
86
|
+
.It Sy echo\ 'foo bar baz'\ |\ jsesc
|
|
87
|
+
Print an escaped version of the string that gets piped in.
|
|
88
|
+
.El
|
|
89
|
+
.Sh BUGS
|
|
90
|
+
jsesc's bug tracker is located at <https://github.com/mathiasbynens/jsesc/issues>.
|
|
91
|
+
.Sh AUTHOR
|
|
92
|
+
Mathias Bynens <https://mathiasbynens.be/>
|
|
93
|
+
.Sh WWW
|
|
94
|
+
<https://mths.be/jsesc>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "jsesc",
|
|
3
|
+
"version": "3.1.0",
|
|
4
|
+
"description": "Given some data, jsesc returns the shortest possible stringified & ASCII-safe representation of that data.",
|
|
5
|
+
"homepage": "https://mths.be/jsesc",
|
|
6
|
+
"engines": {
|
|
7
|
+
"node": ">=6"
|
|
8
|
+
},
|
|
9
|
+
"main": "jsesc.js",
|
|
10
|
+
"bin": "bin/jsesc",
|
|
11
|
+
"man": "man/jsesc.1",
|
|
12
|
+
"keywords": [
|
|
13
|
+
"buffer",
|
|
14
|
+
"escape",
|
|
15
|
+
"javascript",
|
|
16
|
+
"json",
|
|
17
|
+
"map",
|
|
18
|
+
"set",
|
|
19
|
+
"string",
|
|
20
|
+
"stringify",
|
|
21
|
+
"tool"
|
|
22
|
+
],
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"author": {
|
|
25
|
+
"name": "Mathias Bynens",
|
|
26
|
+
"url": "https://mathiasbynens.be/"
|
|
27
|
+
},
|
|
28
|
+
"repository": {
|
|
29
|
+
"type": "git",
|
|
30
|
+
"url": "https://github.com/mathiasbynens/jsesc.git"
|
|
31
|
+
},
|
|
32
|
+
"bugs": "https://github.com/mathiasbynens/jsesc/issues",
|
|
33
|
+
"files": [
|
|
34
|
+
"LICENSE-MIT.txt",
|
|
35
|
+
"jsesc.js",
|
|
36
|
+
"bin/",
|
|
37
|
+
"man/"
|
|
38
|
+
],
|
|
39
|
+
"scripts": {
|
|
40
|
+
"build": "grunt template",
|
|
41
|
+
"coveralls": "istanbul cover --verbose --dir 'coverage' 'tests/tests.js' && coveralls < coverage/lcov.info'",
|
|
42
|
+
"cover": "istanbul cover --report 'html' --verbose --dir 'coverage' 'tests/tests.js'",
|
|
43
|
+
"test": "mocha tests"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"coveralls": "^2.11.6",
|
|
47
|
+
"grunt": "^0.4.5",
|
|
48
|
+
"grunt-cli": "^1.3.2",
|
|
49
|
+
"grunt-template": "^0.2.3",
|
|
50
|
+
"istanbul": "^0.4.2",
|
|
51
|
+
"mocha": "^5.2.0",
|
|
52
|
+
"regenerate": "^1.3.0",
|
|
53
|
+
"requirejs": "^2.1.22",
|
|
54
|
+
"unicode-13.0.0": "0.8.0"
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright 2017 Andrey Sitnik <andrey@sitnik.ru>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
6
|
+
this software and associated documentation files (the "Software"), to deal in
|
|
7
|
+
the Software without restriction, including without limitation the rights to
|
|
8
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
+
the Software, and to permit persons to whom the Software is furnished to do so,
|
|
10
|
+
subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
17
|
+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
18
|
+
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
19
|
+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
20
|
+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Nano ID
|
|
2
|
+
|
|
3
|
+
<img src="https://ai.github.io/nanoid/logo.svg" align="right"
|
|
4
|
+
alt="Nano ID logo by Anton Lovchikov" width="180" height="94">
|
|
5
|
+
|
|
6
|
+
**English** | [日本語](./README.ja.md) | [Русский](./README.ru.md) | [简体中文](./README.zh-CN.md) | [Bahasa Indonesia](./README.id-ID.md) | [한국어](./README.ko.md) | [العربية](./README.ar.md)
|
|
7
|
+
|
|
8
|
+
A tiny, secure, URL-friendly, unique string ID generator for JavaScript.
|
|
9
|
+
|
|
10
|
+
> “An amazing level of senseless perfectionism,
|
|
11
|
+
> which is simply impossible not to respect.”
|
|
12
|
+
|
|
13
|
+
* **Small.** 118 bytes (minified and brotlied). No dependencies.
|
|
14
|
+
[Size Limit] controls the size.
|
|
15
|
+
* **Safe.** It uses hardware random generator. Can be used in clusters.
|
|
16
|
+
* **Short IDs.** It uses a larger alphabet than UUID (`A-Za-z0-9_-`).
|
|
17
|
+
So ID size was reduced from 36 to 21 symbols.
|
|
18
|
+
* **Portable.** Nano ID was ported
|
|
19
|
+
to over [20 programming languages](./README.md#other-programming-languages).
|
|
20
|
+
|
|
21
|
+
```js
|
|
22
|
+
import { nanoid } from 'nanoid'
|
|
23
|
+
model.id = nanoid() //=> "V1StGXR8_Z5jdHi6B-myT"
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
<img src="https://cdn.evilmartians.com/badges/logo-no-label.svg" alt="" width="22" height="16" /> Made at <b><a href="https://evilmartians.com/devtools?utm_source=nanoid&utm_campaign=devtools-button&utm_medium=github">Evil Martians</a></b>, product consulting for <b>developer tools</b>.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
[online tool]: https://gitpod.io/#https://github.com/ai/nanoid/
|
|
33
|
+
[with Babel]: https://developer.epages.com/blog/coding/how-to-transpile-node-modules-with-babel-and-webpack-in-a-monorepo/
|
|
34
|
+
[Size Limit]: https://github.com/ai/size-limit
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
## Docs
|
|
38
|
+
Read full docs **[here](https://github.com/ai/nanoid#readme)**.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { readFileSync } from 'node:fs'
|
|
3
|
+
import { dirname, join } from 'node:path'
|
|
4
|
+
import { fileURLToPath } from 'node:url'
|
|
5
|
+
import { customAlphabet, nanoid } from '../index.js'
|
|
6
|
+
function print(msg) {
|
|
7
|
+
process.stdout.write(msg + '\n')
|
|
8
|
+
}
|
|
9
|
+
function error(msg) {
|
|
10
|
+
process.stderr.write(msg + '\n')
|
|
11
|
+
process.exit(1)
|
|
12
|
+
}
|
|
13
|
+
if (process.argv.includes('--version') || process.argv.includes('-v')) {
|
|
14
|
+
let root = dirname(fileURLToPath(import.meta.url))
|
|
15
|
+
let pkg = JSON.parse(readFileSync(join(root, '..', 'package.json'), 'utf8'))
|
|
16
|
+
print(pkg.version)
|
|
17
|
+
process.exit()
|
|
18
|
+
}
|
|
19
|
+
if (process.argv.includes('--help') || process.argv.includes('-h')) {
|
|
20
|
+
print(`Usage
|
|
21
|
+
$ nanoid [options]
|
|
22
|
+
Options
|
|
23
|
+
-s, --size Generated ID size
|
|
24
|
+
-a, --alphabet Alphabet to use
|
|
25
|
+
-v, --version Show version number
|
|
26
|
+
-h, --help Show this help
|
|
27
|
+
Examples
|
|
28
|
+
$ nanoid -s 15
|
|
29
|
+
S9sBF77U6sDB8Yg
|
|
30
|
+
$ nanoid --size 10 --alphabet abc
|
|
31
|
+
bcabababca`)
|
|
32
|
+
process.exit()
|
|
33
|
+
}
|
|
34
|
+
let alphabet, size
|
|
35
|
+
for (let i = 2; i < process.argv.length; i++) {
|
|
36
|
+
let arg = process.argv[i]
|
|
37
|
+
if (arg === '--size' || arg === '-s') {
|
|
38
|
+
size = Number(process.argv[i + 1])
|
|
39
|
+
i += 1
|
|
40
|
+
if (Number.isNaN(size) || size <= 0) {
|
|
41
|
+
error('Size must be positive integer')
|
|
42
|
+
}
|
|
43
|
+
} else if (arg === '--alphabet' || arg === '-a') {
|
|
44
|
+
alphabet = process.argv[i + 1]
|
|
45
|
+
i += 1
|
|
46
|
+
} else {
|
|
47
|
+
error('Unknown argument ' + arg)
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (alphabet) {
|
|
51
|
+
let customNanoid = customAlphabet(alphabet, size)
|
|
52
|
+
print(customNanoid())
|
|
53
|
+
} else {
|
|
54
|
+
print(nanoid(size))
|
|
55
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/* @ts-self-types="./index.d.ts" */
|
|
2
|
+
import { urlAlphabet as scopedUrlAlphabet } from './url-alphabet/index.js'
|
|
3
|
+
export { urlAlphabet } from './url-alphabet/index.js'
|
|
4
|
+
export let random = bytes => crypto.getRandomValues(new Uint8Array(bytes))
|
|
5
|
+
export let customRandom = (alphabet, defaultSize, getRandom) => {
|
|
6
|
+
let mask = (2 << Math.log2(alphabet.length - 1)) - 1
|
|
7
|
+
let step = -~((1.6 * mask * defaultSize) / alphabet.length)
|
|
8
|
+
return (size = defaultSize) => {
|
|
9
|
+
let id = ''
|
|
10
|
+
while (true) {
|
|
11
|
+
let bytes = getRandom(step)
|
|
12
|
+
let j = step | 0
|
|
13
|
+
while (j--) {
|
|
14
|
+
id += alphabet[bytes[j] & mask] || ''
|
|
15
|
+
if (id.length >= size) return id
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export let customAlphabet = (alphabet, size = 21) =>
|
|
21
|
+
customRandom(alphabet, size | 0, random)
|
|
22
|
+
export let nanoid = (size = 21) => {
|
|
23
|
+
let id = ''
|
|
24
|
+
let bytes = crypto.getRandomValues(new Uint8Array((size |= 0)))
|
|
25
|
+
while (size--) {
|
|
26
|
+
id += scopedUrlAlphabet[bytes[size] & 63]
|
|
27
|
+
}
|
|
28
|
+
return id
|
|
29
|
+
}
|