@authup/server-core 1.0.0-beta.63 → 1.0.0-beta.64
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/dist/adapters/database/data-source/options/module.d.ts +1 -0
- package/dist/adapters/database/data-source/options/module.d.ts.map +1 -1
- package/dist/adapters/database/data-source/options/module.mjs +33 -4
- package/dist/adapters/database/data-source/options/module.mjs.map +1 -1
- package/dist/adapters/database/domains/client/entity.d.ts +1 -2
- package/dist/adapters/database/domains/client/entity.d.ts.map +1 -1
- package/dist/adapters/database/domains/client/entity.mjs +7 -14
- package/dist/adapters/database/domains/client/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-attribute/subscriber.d.ts +2 -1
- package/dist/adapters/database/domains/identity-provider-attribute/subscriber.d.ts.map +1 -1
- package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs +2 -2
- package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/session/entity.d.ts +8 -0
- package/dist/adapters/database/domains/session/entity.d.ts.map +1 -1
- package/dist/adapters/database/domains/session/entity.mjs +19 -0
- package/dist/adapters/database/domains/session/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/user/entity.d.ts +1 -0
- package/dist/adapters/database/domains/user/entity.d.ts.map +1 -1
- package/dist/adapters/database/domains/user/entity.mjs +6 -0
- package/dist/adapters/database/domains/user/entity.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/repository.mjs +1 -1
- package/dist/adapters/database/extra-attribute-repository/repository.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs +4 -2
- package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs +1 -1
- package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs.map +1 -1
- package/dist/adapters/database/index.mjs +3 -3
- package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.d.ts +56 -0
- package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.d.ts.map +1 -0
- package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.mjs +105 -0
- package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.mjs.map +1 -0
- package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.d.ts +56 -0
- package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.d.ts.map +1 -0
- package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.mjs +104 -0
- package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.mjs.map +1 -0
- package/dist/adapters/database/subscriber/module.d.ts +6 -2
- package/dist/adapters/database/subscriber/module.d.ts.map +1 -1
- package/dist/adapters/database/subscriber/module.mjs +9 -5
- package/dist/adapters/database/subscriber/module.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/authorization/module.mjs +1 -1
- package/dist/adapters/http/adapters/oauth2/authorization/module.mjs.map +1 -1
- package/dist/adapters/http/constants.d.ts +18 -0
- package/dist/adapters/http/constants.d.ts.map +1 -0
- package/dist/adapters/http/constants.mjs +23 -0
- package/dist/adapters/http/constants.mjs.map +1 -0
- package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +3 -3
- package/dist/adapters/http/controllers/entities/identity-provider/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/identity-provider/types.d.ts +6 -0
- package/dist/adapters/http/controllers/entities/identity-provider/types.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/realm/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/realm/module.mjs +2 -0
- package/dist/adapters/http/controllers/entities/realm/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/session/module.d.ts +33 -1
- package/dist/adapters/http/controllers/entities/session/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/session/module.mjs +74 -0
- package/dist/adapters/http/controllers/entities/session/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/index.mjs +3 -1
- package/dist/adapters/http/controllers/workflows/account/index.d.ts +1 -0
- package/dist/adapters/http/controllers/workflows/account/index.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/account/module.d.ts +25 -16
- package/dist/adapters/http/controllers/workflows/account/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/account/module.mjs +40 -17
- package/dist/adapters/http/controllers/workflows/account/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/account/types.d.ts +33 -0
- package/dist/adapters/http/controllers/workflows/account/types.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/activate/module.d.ts +8 -4
- package/dist/adapters/http/controllers/workflows/activate/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/activate/module.mjs +7 -9
- package/dist/adapters/http/controllers/workflows/activate/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/admin/index.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/admin/index.mjs +5 -0
- package/dist/adapters/http/controllers/workflows/admin/module.d.ts +30 -0
- package/dist/adapters/http/controllers/workflows/admin/module.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/admin/module.mjs +88 -0
- package/dist/adapters/http/controllers/workflows/admin/module.mjs.map +1 -0
- package/dist/adapters/http/controllers/workflows/admin/types.d.ts +14 -0
- package/dist/adapters/http/controllers/workflows/admin/types.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/auth-console.d.ts +16 -0
- package/dist/adapters/http/controllers/workflows/auth-console.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/auth-console.mjs +32 -0
- package/dist/adapters/http/controllers/workflows/auth-console.mjs.map +1 -0
- package/dist/adapters/http/controllers/workflows/authorize/module.d.ts +16 -1
- package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/authorize/module.mjs +40 -22
- package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/authorize/types.d.ts +5 -0
- package/dist/adapters/http/controllers/workflows/authorize/types.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/console-login/index.d.ts +3 -0
- package/dist/adapters/http/controllers/workflows/console-login/index.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/console-login/index.mjs +5 -0
- package/dist/adapters/http/controllers/workflows/console-login/module.d.ts +83 -0
- package/dist/adapters/http/controllers/workflows/console-login/module.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/console-login/module.mjs +230 -0
- package/dist/adapters/http/controllers/workflows/console-login/module.mjs.map +1 -0
- package/dist/adapters/http/controllers/workflows/console-login/types.d.ts +58 -0
- package/dist/adapters/http/controllers/workflows/console-login/types.d.ts.map +1 -0
- package/dist/adapters/http/controllers/workflows/index.d.ts +2 -0
- package/dist/adapters/http/controllers/workflows/index.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/index.mjs +5 -1
- package/dist/adapters/http/controllers/workflows/logout/module.d.ts +32 -3
- package/dist/adapters/http/controllers/workflows/logout/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/logout/module.mjs +48 -24
- package/dist/adapters/http/controllers/workflows/logout/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/logout/types.d.ts +1 -1
- package/dist/adapters/http/controllers/workflows/logout/types.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts +8 -4
- package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs +7 -9
- package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts +8 -4
- package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/password-reset/module.mjs +7 -10
- package/dist/adapters/http/controllers/workflows/password-reset/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/register/module.d.ts +8 -4
- package/dist/adapters/http/controllers/workflows/register/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/register/module.mjs +7 -9
- package/dist/adapters/http/controllers/workflows/register/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/status/module.mjs +1 -1
- package/dist/adapters/http/controllers/workflows/token/module.d.ts +45 -2
- package/dist/adapters/http/controllers/workflows/token/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/token/module.mjs +102 -24
- package/dist/adapters/http/controllers/workflows/token/module.mjs.map +1 -1
- package/dist/adapters/http/cookie/index.d.ts +2 -0
- package/dist/adapters/http/cookie/index.d.ts.map +1 -0
- package/dist/adapters/http/cookie/index.mjs +5 -0
- package/dist/adapters/http/cookie/session.d.ts +35 -0
- package/dist/adapters/http/cookie/session.d.ts.map +1 -0
- package/dist/adapters/http/cookie/session.mjs +62 -0
- package/dist/adapters/http/cookie/session.mjs.map +1 -0
- package/dist/adapters/http/index.d.ts +2 -0
- package/dist/adapters/http/index.d.ts.map +1 -1
- package/dist/adapters/http/index.mjs +20 -16
- package/dist/adapters/http/internal-client/index.d.ts +3 -0
- package/dist/adapters/http/internal-client/index.d.ts.map +1 -0
- package/dist/adapters/http/internal-client/index.mjs +5 -0
- package/dist/adapters/http/internal-client/module.d.ts +21 -0
- package/dist/adapters/http/internal-client/module.d.ts.map +1 -0
- package/dist/adapters/http/{ui/auth-console/http-client.mjs → internal-client/module.mjs} +16 -15
- package/dist/adapters/http/internal-client/module.mjs.map +1 -0
- package/dist/adapters/http/internal-client/types.d.ts +13 -0
- package/dist/adapters/http/internal-client/types.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/authorization/index.d.ts +1 -0
- package/dist/adapters/http/middleware/built-in/authorization/index.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/authorization/index.mjs +2 -1
- package/dist/adapters/http/middleware/built-in/authorization/issuance.d.ts +45 -0
- package/dist/adapters/http/middleware/built-in/authorization/issuance.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/authorization/issuance.mjs +61 -0
- package/dist/adapters/http/middleware/built-in/authorization/issuance.mjs.map +1 -0
- package/dist/adapters/http/middleware/built-in/authorization/module.d.ts +26 -2
- package/dist/adapters/http/middleware/built-in/authorization/module.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/authorization/module.mjs +67 -1
- package/dist/adapters/http/middleware/built-in/authorization/module.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/authorization/types.d.ts +21 -1
- package/dist/adapters/http/middleware/built-in/authorization/types.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/basic.d.ts +2 -2
- package/dist/adapters/http/middleware/built-in/basic.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/basic.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/cors.d.ts +8 -2
- package/dist/adapters/http/middleware/built-in/cors.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/cors.mjs +20 -3
- package/dist/adapters/http/middleware/built-in/cors.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/error.d.ts +2 -2
- package/dist/adapters/http/middleware/built-in/error.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/error.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/index.d.ts +1 -4
- package/dist/adapters/http/middleware/built-in/index.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/index.mjs +3 -4
- package/dist/adapters/http/middleware/built-in/internal-http-client.d.ts +17 -0
- package/dist/adapters/http/middleware/built-in/internal-http-client.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/internal-http-client.mjs +27 -0
- package/dist/adapters/http/middleware/built-in/internal-http-client.mjs.map +1 -0
- package/dist/adapters/http/middleware/built-in/logger.mjs +1 -1
- package/dist/adapters/http/middleware/built-in/logger.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/prometheus.d.ts +6 -5
- package/dist/adapters/http/middleware/built-in/prometheus.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/prometheus.mjs +3 -2
- package/dist/adapters/http/middleware/built-in/prometheus.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/rate-limit.d.ts +2 -2
- package/dist/adapters/http/middleware/built-in/rate-limit.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/rate-limit.mjs +15 -0
- package/dist/adapters/http/middleware/built-in/rate-limit.mjs.map +1 -1
- package/dist/adapters/http/middleware/index.mjs +3 -4
- package/dist/adapters/http/request/constants.d.ts +1 -1
- package/dist/adapters/http/request/constants.d.ts.map +1 -1
- package/dist/adapters/http/request/constants.mjs +1 -5
- package/dist/adapters/http/request/constants.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/index.d.ts +1 -1
- package/dist/adapters/http/request/helpers/index.d.ts.map +1 -1
- package/dist/adapters/http/request/helpers/index.mjs +2 -2
- package/dist/adapters/http/request/helpers/locale.d.ts +2 -1
- package/dist/adapters/http/request/helpers/locale.d.ts.map +1 -1
- package/dist/adapters/http/request/helpers/locale.mjs +1 -1
- package/dist/adapters/http/request/helpers/locale.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/same-origin.d.ts +38 -0
- package/dist/adapters/http/request/helpers/same-origin.d.ts.map +1 -0
- package/dist/adapters/http/request/helpers/same-origin.mjs +68 -0
- package/dist/adapters/http/request/helpers/same-origin.mjs.map +1 -0
- package/dist/adapters/http/request/index.mjs +2 -2
- package/dist/adapters/http/request/permission/module.mjs +1 -1
- package/dist/adapters/http/request/permission/module.mjs.map +1 -1
- package/dist/adapters/http/request/types.d.ts +1 -2
- package/dist/adapters/http/request/types.d.ts.map +1 -1
- package/dist/adapters/shared/ldap/module.d.ts.map +1 -1
- package/dist/adapters/shared/ldap/module.mjs +4 -1
- package/dist/adapters/shared/ldap/module.mjs.map +1 -1
- package/dist/app/builder.d.ts +4 -4
- package/dist/app/builder.d.ts.map +1 -1
- package/dist/app/builder.mjs +7 -4
- package/dist/app/builder.mjs.map +1 -1
- package/dist/app/factory.d.ts +10 -0
- package/dist/app/factory.d.ts.map +1 -1
- package/dist/app/factory.mjs +26 -2
- package/dist/app/factory.mjs.map +1 -1
- package/dist/app/index.mjs +17 -19
- package/dist/app/modules/authentication/module.d.ts.map +1 -1
- package/dist/app/modules/authentication/module.mjs +15 -2
- package/dist/app/modules/authentication/module.mjs.map +1 -1
- package/dist/app/modules/authentication/repositories/session.d.ts +4 -1
- package/dist/app/modules/authentication/repositories/session.d.ts.map +1 -1
- package/dist/app/modules/authentication/repositories/session.mjs +20 -3
- package/dist/app/modules/authentication/repositories/session.mjs.map +1 -1
- package/dist/app/modules/components/index.d.ts +1 -0
- package/dist/app/modules/components/index.d.ts.map +1 -1
- package/dist/app/modules/components/module.d.ts +3 -1
- package/dist/app/modules/components/module.d.ts.map +1 -1
- package/dist/app/modules/components/module.mjs +26 -7
- package/dist/app/modules/components/module.mjs.map +1 -1
- package/dist/app/modules/components/types.d.ts +11 -0
- package/dist/app/modules/components/types.d.ts.map +1 -0
- package/dist/app/modules/config/app-origins.d.ts +10 -0
- package/dist/app/modules/config/app-origins.d.ts.map +1 -0
- package/dist/app/modules/config/app-origins.mjs +21 -0
- package/dist/app/modules/config/app-origins.mjs.map +1 -0
- package/dist/app/modules/config/constants.d.ts +23 -50
- package/dist/app/modules/config/constants.d.ts.map +1 -1
- package/dist/app/modules/config/constants.mjs +34 -51
- package/dist/app/modules/config/constants.mjs.map +1 -1
- package/dist/app/modules/config/index.d.ts +2 -3
- package/dist/app/modules/config/index.d.ts.map +1 -1
- package/dist/app/modules/config/index.mjs +4 -8
- package/dist/app/modules/config/module.d.ts +2 -2
- package/dist/app/modules/config/module.d.ts.map +1 -1
- package/dist/app/modules/config/module.mjs +1 -1
- package/dist/app/modules/config/module.mjs.map +1 -1
- package/dist/app/modules/config/read.d.ts +29 -0
- package/dist/app/modules/config/read.d.ts.map +1 -0
- package/dist/app/modules/config/read.mjs +65 -0
- package/dist/app/modules/config/read.mjs.map +1 -0
- package/dist/app/modules/config/types.d.ts +30 -405
- package/dist/app/modules/config/types.d.ts.map +1 -1
- package/dist/app/modules/config/validator.d.ts.map +1 -1
- package/dist/app/modules/config/validator.mjs +3 -87
- package/dist/app/modules/config/validator.mjs.map +1 -1
- package/dist/app/modules/database/index.d.ts +1 -0
- package/dist/app/modules/database/index.d.ts.map +1 -1
- package/dist/app/modules/database/index.mjs +2 -1
- package/dist/app/modules/database/migration.d.ts +33 -0
- package/dist/app/modules/database/migration.d.ts.map +1 -0
- package/dist/app/modules/database/migration.mjs +52 -0
- package/dist/app/modules/database/migration.mjs.map +1 -0
- package/dist/app/modules/database/module.d.ts.map +1 -1
- package/dist/app/modules/database/module.mjs +12 -6
- package/dist/app/modules/database/module.mjs.map +1 -1
- package/dist/app/modules/database/repositories/client/repository.d.ts +6 -1
- package/dist/app/modules/database/repositories/client/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/client/repository.mjs +21 -4
- package/dist/app/modules/database/repositories/client/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/event/repository.d.ts +29 -2
- package/dist/app/modules/database/repositories/event/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/event/repository.mjs +42 -24
- package/dist/app/modules/database/repositories/event/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/helpers.d.ts +24 -1
- package/dist/app/modules/database/repositories/helpers.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/helpers.mjs +38 -1
- package/dist/app/modules/database/repositories/helpers.mjs.map +1 -1
- package/dist/app/modules/database/repositories/identity-provider/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/identity-provider-account/repository.mjs +4 -2
- package/dist/app/modules/database/repositories/identity-provider-account/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/key/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/permission/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/policy/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/role/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/scope/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/trust-anchor/repository.mjs +1 -1
- package/dist/app/modules/database/repositories/user/repository.d.ts +7 -2
- package/dist/app/modules/database/repositories/user/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/user/repository.mjs +21 -4
- package/dist/app/modules/database/repositories/user/repository.mjs.map +1 -1
- package/dist/app/modules/http/constants.d.ts +3 -1
- package/dist/app/modules/http/constants.d.ts.map +1 -1
- package/dist/app/modules/http/constants.mjs +3 -2
- package/dist/app/modules/http/constants.mjs.map +1 -1
- package/dist/app/modules/http/module.d.ts +30 -9
- package/dist/app/modules/http/module.d.ts.map +1 -1
- package/dist/app/modules/http/module.mjs +31 -33
- package/dist/app/modules/http/module.mjs.map +1 -1
- package/dist/app/modules/http/modules/controller.d.ts +4 -3
- package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
- package/dist/app/modules/http/modules/controller.mjs +65 -36
- package/dist/app/modules/http/modules/controller.mjs.map +1 -1
- package/dist/app/modules/http/modules/middleware.d.ts +13 -22
- package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
- package/dist/app/modules/http/modules/middleware.mjs +20 -36
- package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
- package/dist/app/modules/identity/module.mjs +4 -4
- package/dist/app/modules/identity/repositories/client.mjs +4 -2
- package/dist/app/modules/identity/repositories/client.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/user.mjs +4 -2
- package/dist/app/modules/identity/repositories/user.mjs.map +1 -1
- package/dist/app/modules/index.mjs +21 -23
- package/dist/app/modules/logger/module.mjs +1 -1
- package/dist/app/modules/logger/module.mjs.map +1 -1
- package/dist/app/modules/mail/module.d.ts.map +1 -1
- package/dist/app/modules/mail/module.mjs.map +1 -1
- package/dist/app/modules/oauth2/constants.d.ts +2 -1
- package/dist/app/modules/oauth2/constants.d.ts.map +1 -1
- package/dist/app/modules/oauth2/constants.mjs +1 -0
- package/dist/app/modules/oauth2/constants.mjs.map +1 -1
- package/dist/app/modules/oauth2/module.d.ts.map +1 -1
- package/dist/app/modules/oauth2/module.mjs +9 -4
- package/dist/app/modules/oauth2/module.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/client/repository.mjs +4 -2
- package/dist/app/modules/oauth2/repositories/client/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/consent/repository.d.ts.map +1 -1
- package/dist/app/modules/oauth2/repositories/consent/repository.mjs +3 -2
- package/dist/app/modules/oauth2/repositories/consent/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/console-login/index.d.ts +2 -0
- package/dist/app/modules/oauth2/repositories/console-login/index.d.ts.map +1 -0
- package/dist/app/modules/oauth2/repositories/console-login/index.mjs +5 -0
- package/dist/app/modules/oauth2/repositories/console-login/store.d.ts +19 -0
- package/dist/app/modules/oauth2/repositories/console-login/store.d.ts.map +1 -0
- package/dist/app/modules/oauth2/repositories/console-login/store.mjs +47 -0
- package/dist/app/modules/oauth2/repositories/console-login/store.mjs.map +1 -0
- package/dist/app/modules/oauth2/repositories/constants.d.ts +1 -0
- package/dist/app/modules/oauth2/repositories/constants.d.ts.map +1 -1
- package/dist/app/modules/oauth2/repositories/constants.mjs +1 -0
- package/dist/app/modules/oauth2/repositories/constants.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/index.d.ts +1 -0
- package/dist/app/modules/oauth2/repositories/index.d.ts.map +1 -1
- package/dist/app/modules/oauth2/repositories/index.mjs +3 -1
- package/dist/app/modules/oauth2/repositories/session-token/repository.d.ts +2 -2
- package/dist/app/modules/oauth2/repositories/session-token/repository.d.ts.map +1 -1
- package/dist/app/modules/oauth2/repositories/session-token/repository.mjs +5 -3
- package/dist/app/modules/oauth2/repositories/session-token/repository.mjs.map +1 -1
- package/dist/app/modules/provisioning/module.d.ts.map +1 -1
- package/dist/app/modules/provisioning/module.mjs +5 -6
- package/dist/app/modules/provisioning/module.mjs.map +1 -1
- package/dist/app/modules/provisioning/sources/composite/module.d.ts.map +1 -1
- package/dist/app/modules/provisioning/sources/composite/module.mjs +2 -1
- package/dist/app/modules/provisioning/sources/composite/module.mjs.map +1 -1
- package/dist/app/modules/provisioning/sources/default/module.d.ts.map +1 -1
- package/dist/app/modules/provisioning/sources/default/module.mjs +2 -1
- package/dist/app/modules/provisioning/sources/default/module.mjs.map +1 -1
- package/dist/app/modules/runtime/module.d.ts.map +1 -1
- package/dist/app/modules/runtime/module.mjs +2 -1
- package/dist/app/modules/runtime/module.mjs.map +1 -1
- package/dist/app/types.d.ts +16 -0
- package/dist/app/types.d.ts.map +1 -1
- package/dist/cli/commands/config.d.ts +40 -0
- package/dist/cli/commands/config.d.ts.map +1 -0
- package/dist/cli/commands/config.mjs +65 -0
- package/dist/cli/commands/config.mjs.map +1 -0
- package/dist/cli/commands/healthcheck.d.ts +3 -2
- package/dist/cli/commands/healthcheck.d.ts.map +1 -1
- package/dist/cli/commands/healthcheck.mjs +6 -3
- package/dist/cli/commands/healthcheck.mjs.map +1 -1
- package/dist/cli/commands/index.d.ts +3 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.mjs +3 -1
- package/dist/cli/commands/migration.d.ts +3 -10
- package/dist/cli/commands/migration.d.ts.map +1 -1
- package/dist/cli/commands/migration.mjs +17 -9
- package/dist/cli/commands/migration.mjs.map +1 -1
- package/dist/cli/commands/shutdown.d.ts +16 -0
- package/dist/cli/commands/shutdown.d.ts.map +1 -0
- package/dist/cli/commands/shutdown.mjs +41 -0
- package/dist/cli/commands/shutdown.mjs.map +1 -0
- package/dist/cli/commands/start.d.ts +3 -2
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.mjs +3 -21
- package/dist/cli/commands/start.mjs.map +1 -1
- package/dist/cli/commands/types.d.ts.map +1 -0
- package/dist/cli/index.d.ts +8 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.mjs.map +1 -1
- package/dist/cli/module.d.ts +0 -2
- package/dist/cli/module.d.ts.map +1 -1
- package/dist/cli/module.mjs +4 -3
- package/dist/cli/module.mjs.map +1 -1
- package/dist/components/oauth2-cleaner/module.d.ts +2 -2
- package/dist/components/oauth2-cleaner/module.d.ts.map +1 -1
- package/dist/components/oauth2-cleaner/module.mjs +10 -7
- package/dist/components/oauth2-cleaner/module.mjs.map +1 -1
- package/dist/core/authentication/index.mjs +2 -1
- package/dist/core/authentication/session/constants.d.ts +10 -0
- package/dist/core/authentication/session/constants.d.ts.map +1 -0
- package/dist/core/authentication/session/constants.mjs +16 -0
- package/dist/core/authentication/session/constants.mjs.map +1 -0
- package/dist/core/authentication/session/index.d.ts +1 -0
- package/dist/core/authentication/session/index.d.ts.map +1 -1
- package/dist/core/authentication/session/index.mjs +2 -1
- package/dist/core/authentication/session/module.d.ts +2 -1
- package/dist/core/authentication/session/module.d.ts.map +1 -1
- package/dist/core/authentication/session/module.mjs +7 -1
- package/dist/core/authentication/session/module.mjs.map +1 -1
- package/dist/core/authentication/session/types.d.ts +70 -1
- package/dist/core/authentication/session/types.d.ts.map +1 -1
- package/dist/core/authentication/session/types.mjs.map +1 -1
- package/dist/core/entities/client/schema.d.ts.map +1 -1
- package/dist/core/entities/client/schema.mjs +1 -2
- package/dist/core/entities/client/schema.mjs.map +1 -1
- package/dist/core/entities/client/service.d.ts.map +1 -1
- package/dist/core/entities/client/service.mjs +15 -1
- package/dist/core/entities/client/service.mjs.map +1 -1
- package/dist/core/entities/client/system-clients.d.ts +0 -5
- package/dist/core/entities/client/system-clients.d.ts.map +1 -1
- package/dist/core/entities/client/system-clients.mjs +0 -6
- package/dist/core/entities/client/system-clients.mjs.map +1 -1
- package/dist/core/entities/client/types.d.ts +12 -0
- package/dist/core/entities/client/types.d.ts.map +1 -1
- package/dist/core/entities/client-permission/service.mjs +1 -1
- package/dist/core/entities/client-permission/service.mjs.map +1 -1
- package/dist/core/entities/event/constants.d.ts +1 -6
- package/dist/core/entities/event/constants.d.ts.map +1 -1
- package/dist/core/entities/event/constants.mjs +1 -5
- package/dist/core/entities/event/constants.mjs.map +1 -1
- package/dist/core/entities/event/entity-event-handler.d.ts.map +1 -1
- package/dist/core/entities/event/entity-event-handler.mjs +3 -2
- package/dist/core/entities/event/entity-event-handler.mjs.map +1 -1
- package/dist/core/entities/event/service.d.ts.map +1 -1
- package/dist/core/entities/event/service.mjs +3 -3
- package/dist/core/entities/event/service.mjs.map +1 -1
- package/dist/core/entities/event/types.d.ts +15 -1
- package/dist/core/entities/event/types.d.ts.map +1 -1
- package/dist/core/entities/permission/service.mjs +1 -2
- package/dist/core/entities/permission/service.mjs.map +1 -1
- package/dist/core/entities/role-permission/service.mjs +1 -1
- package/dist/core/entities/role-permission/service.mjs.map +1 -1
- package/dist/core/entities/session/service.d.ts +13 -1
- package/dist/core/entities/session/service.d.ts.map +1 -1
- package/dist/core/entities/session/service.mjs +19 -16
- package/dist/core/entities/session/service.mjs.map +1 -1
- package/dist/core/entities/user/schema.d.ts.map +1 -1
- package/dist/core/entities/user/schema.mjs +1 -0
- package/dist/core/entities/user/schema.mjs.map +1 -1
- package/dist/core/entities/user/service.d.ts.map +1 -1
- package/dist/core/entities/user/service.mjs +21 -1
- package/dist/core/entities/user/service.mjs.map +1 -1
- package/dist/core/entities/user/types.d.ts +12 -0
- package/dist/core/entities/user/types.d.ts.map +1 -1
- package/dist/core/entities/user-permission/service.mjs +1 -1
- package/dist/core/entities/user-permission/service.mjs.map +1 -1
- package/dist/core/identity/permission/junction-grant.mjs +1 -1
- package/dist/core/identity/permission/junction-grant.mjs.map +1 -1
- package/dist/core/identity/provider/account/module.mjs +1 -1
- package/dist/core/identity/provider/account/module.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/oauth2/assurance.mjs +1 -1
- package/dist/core/identity/provider/authentication/protocols/oauth2/assurance.mjs.map +1 -1
- package/dist/core/identity/registration/service.d.ts.map +1 -1
- package/dist/core/identity/registration/service.mjs +2 -1
- package/dist/core/identity/registration/service.mjs.map +1 -1
- package/dist/core/index.mjs +11 -3
- package/dist/core/oauth2/authorization/helpers.d.ts +14 -0
- package/dist/core/oauth2/authorization/helpers.d.ts.map +1 -1
- package/dist/core/oauth2/authorization/helpers.mjs +9 -1
- package/dist/core/oauth2/authorization/helpers.mjs.map +1 -1
- package/dist/core/oauth2/authorization/index.mjs +2 -2
- package/dist/core/oauth2/authorization/module.mjs +1 -1
- package/dist/core/oauth2/authorization/module.mjs.map +1 -1
- package/dist/core/oauth2/backchannel-logout/constants.d.ts +16 -0
- package/dist/core/oauth2/backchannel-logout/constants.d.ts.map +1 -0
- package/dist/core/oauth2/backchannel-logout/constants.mjs +20 -0
- package/dist/core/oauth2/backchannel-logout/constants.mjs.map +1 -0
- package/dist/core/oauth2/backchannel-logout/index.d.ts +4 -0
- package/dist/core/oauth2/backchannel-logout/index.d.ts.map +1 -0
- package/dist/core/oauth2/backchannel-logout/index.mjs +6 -0
- package/dist/core/oauth2/backchannel-logout/module.d.ts +26 -0
- package/dist/core/oauth2/backchannel-logout/module.d.ts.map +1 -0
- package/dist/core/oauth2/backchannel-logout/module.mjs +78 -0
- package/dist/core/oauth2/backchannel-logout/module.mjs.map +1 -0
- package/dist/core/oauth2/backchannel-logout/types.d.ts +29 -0
- package/dist/core/oauth2/backchannel-logout/types.d.ts.map +1 -0
- package/dist/core/oauth2/console-login/constants.d.ts +19 -0
- package/dist/core/oauth2/console-login/constants.d.ts.map +1 -0
- package/dist/core/oauth2/console-login/constants.mjs +24 -0
- package/dist/core/oauth2/console-login/constants.mjs.map +1 -0
- package/dist/core/oauth2/console-login/index.d.ts +3 -0
- package/dist/core/oauth2/console-login/index.d.ts.map +1 -0
- package/dist/core/oauth2/console-login/index.mjs +5 -0
- package/dist/core/oauth2/console-login/types.d.ts +53 -0
- package/dist/core/oauth2/console-login/types.d.ts.map +1 -0
- package/dist/core/oauth2/end-session/service.mjs +1 -1
- package/dist/core/oauth2/end-session/service.mjs.map +1 -1
- package/dist/core/oauth2/federated-login/module.mjs +3 -3
- package/dist/core/oauth2/federated-login/module.mjs.map +1 -1
- package/dist/core/oauth2/index.d.ts +4 -0
- package/dist/core/oauth2/index.d.ts.map +1 -1
- package/dist/core/oauth2/index.mjs +13 -3
- package/dist/core/oauth2/introspection/index.d.ts +3 -0
- package/dist/core/oauth2/introspection/index.d.ts.map +1 -0
- package/dist/core/oauth2/introspection/index.mjs +5 -0
- package/dist/core/oauth2/introspection/module.d.ts +14 -0
- package/dist/core/oauth2/introspection/module.d.ts.map +1 -0
- package/dist/core/oauth2/introspection/module.mjs +49 -0
- package/dist/core/oauth2/introspection/module.mjs.map +1 -0
- package/dist/core/oauth2/introspection/types.d.ts +45 -0
- package/dist/core/oauth2/introspection/types.d.ts.map +1 -0
- package/dist/core/oauth2/introspection/types.mjs +4 -0
- package/dist/core/oauth2/openid/claims.d.ts +20 -2
- package/dist/core/oauth2/openid/claims.d.ts.map +1 -1
- package/dist/core/oauth2/openid/claims.mjs +18 -4
- package/dist/core/oauth2/openid/claims.mjs.map +1 -1
- package/dist/core/oauth2/session-credential/constants.d.ts +30 -0
- package/dist/core/oauth2/session-credential/constants.d.ts.map +1 -0
- package/dist/core/oauth2/session-credential/constants.mjs +34 -0
- package/dist/core/oauth2/session-credential/constants.mjs.map +1 -0
- package/dist/core/oauth2/session-credential/index.d.ts +3 -0
- package/dist/core/oauth2/session-credential/index.d.ts.map +1 -0
- package/dist/core/oauth2/session-credential/index.mjs +6 -0
- package/dist/core/oauth2/session-credential/module.d.ts +31 -0
- package/dist/core/oauth2/session-credential/module.d.ts.map +1 -0
- package/dist/core/oauth2/session-credential/module.mjs +43 -0
- package/dist/core/oauth2/session-credential/module.mjs.map +1 -0
- package/dist/core/oauth2/session-token/constants.d.ts +10 -0
- package/dist/core/oauth2/session-token/constants.d.ts.map +1 -0
- package/dist/core/oauth2/session-token/constants.mjs +16 -0
- package/dist/core/oauth2/session-token/constants.mjs.map +1 -0
- package/dist/core/oauth2/session-token/index.d.ts +1 -0
- package/dist/core/oauth2/session-token/index.d.ts.map +1 -1
- package/dist/core/oauth2/session-token/index.mjs +2 -1
- package/dist/core/oauth2/session-token/types.d.ts +13 -2
- package/dist/core/oauth2/session-token/types.d.ts.map +1 -1
- package/dist/core/provisioning/merge/module.mjs +5 -3
- package/dist/core/provisioning/merge/module.mjs.map +1 -1
- package/dist/core/query/module.mjs +1 -1
- package/dist/core/query/module.mjs.map +1 -1
- package/dist/core/security/policy/evaluator.mjs +1 -1
- package/dist/core/security/policy/evaluator.mjs.map +1 -1
- package/dist/index.mjs +62 -59
- package/dist/path.mjs +1 -1
- package/dist/swagger.json +466 -104
- package/dist/utils/error.d.ts +6 -0
- package/dist/utils/error.d.ts.map +1 -1
- package/dist/utils/error.mjs +6 -2
- package/dist/utils/error.mjs.map +1 -1
- package/dist/utils/index.mjs +2 -2
- package/package.json +31 -25
- package/dist/adapters/http/middleware/built-in/assets.d.ts +0 -11
- package/dist/adapters/http/middleware/built-in/assets.d.ts.map +0 -1
- package/dist/adapters/http/middleware/built-in/assets.mjs +0 -91
- package/dist/adapters/http/middleware/built-in/assets.mjs.map +0 -1
- package/dist/adapters/http/middleware/built-in/theme.d.ts +0 -15
- package/dist/adapters/http/middleware/built-in/theme.d.ts.map +0 -1
- package/dist/adapters/http/middleware/built-in/theme.mjs +0 -27
- package/dist/adapters/http/middleware/built-in/theme.mjs.map +0 -1
- package/dist/adapters/http/middleware/built-in/types.d.ts +0 -14
- package/dist/adapters/http/middleware/built-in/types.d.ts.map +0 -1
- package/dist/adapters/http/middleware/built-in/ui-http-client.d.ts +0 -15
- package/dist/adapters/http/middleware/built-in/ui-http-client.d.ts.map +0 -1
- package/dist/adapters/http/middleware/built-in/ui-http-client.mjs +0 -25
- package/dist/adapters/http/middleware/built-in/ui-http-client.mjs.map +0 -1
- package/dist/adapters/http/request/helpers/redirect.d.ts +0 -14
- package/dist/adapters/http/request/helpers/redirect.d.ts.map +0 -1
- package/dist/adapters/http/request/helpers/redirect.mjs +0 -36
- package/dist/adapters/http/request/helpers/redirect.mjs.map +0 -1
- package/dist/adapters/http/ui/account-console/index.d.ts +0 -4
- package/dist/adapters/http/ui/account-console/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/account-console/index.mjs +0 -6
- package/dist/adapters/http/ui/account-console/module.d.ts +0 -28
- package/dist/adapters/http/ui/account-console/module.d.ts.map +0 -1
- package/dist/adapters/http/ui/account-console/module.mjs +0 -80
- package/dist/adapters/http/ui/account-console/module.mjs.map +0 -1
- package/dist/adapters/http/ui/account-console/ref.d.ts +0 -30
- package/dist/adapters/http/ui/account-console/ref.d.ts.map +0 -1
- package/dist/adapters/http/ui/account-console/ref.mjs +0 -50
- package/dist/adapters/http/ui/account-console/ref.mjs.map +0 -1
- package/dist/adapters/http/ui/account-console/types.d.ts +0 -11
- package/dist/adapters/http/ui/account-console/types.d.ts.map +0 -1
- package/dist/adapters/http/ui/auth-console/http-client.d.ts +0 -22
- package/dist/adapters/http/ui/auth-console/http-client.d.ts.map +0 -1
- package/dist/adapters/http/ui/auth-console/http-client.mjs.map +0 -1
- package/dist/adapters/http/ui/auth-console/index.d.ts +0 -6
- package/dist/adapters/http/ui/auth-console/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/auth-console/index.mjs +0 -8
- package/dist/adapters/http/ui/auth-console/module.d.ts +0 -4
- package/dist/adapters/http/ui/auth-console/module.d.ts.map +0 -1
- package/dist/adapters/http/ui/auth-console/module.mjs +0 -73
- package/dist/adapters/http/ui/auth-console/module.mjs.map +0 -1
- package/dist/adapters/http/ui/auth-console/resolve.d.ts +0 -21
- package/dist/adapters/http/ui/auth-console/resolve.d.ts.map +0 -1
- package/dist/adapters/http/ui/auth-console/resolve.mjs +0 -53
- package/dist/adapters/http/ui/auth-console/resolve.mjs.map +0 -1
- package/dist/adapters/http/ui/auth-console/serve.d.ts +0 -9
- package/dist/adapters/http/ui/auth-console/serve.d.ts.map +0 -1
- package/dist/adapters/http/ui/auth-console/serve.mjs +0 -35
- package/dist/adapters/http/ui/auth-console/serve.mjs.map +0 -1
- package/dist/adapters/http/ui/auth-console/types.d.ts +0 -26
- package/dist/adapters/http/ui/auth-console/types.d.ts.map +0 -1
- package/dist/adapters/http/ui/console-packages/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/console-packages/index.mjs +0 -5
- package/dist/adapters/http/ui/console-packages/module.d.ts +0 -33
- package/dist/adapters/http/ui/console-packages/module.d.ts.map +0 -1
- package/dist/adapters/http/ui/console-packages/module.mjs +0 -70
- package/dist/adapters/http/ui/console-packages/module.mjs.map +0 -1
- package/dist/adapters/http/ui/console-packages/types.d.ts +0 -12
- package/dist/adapters/http/ui/console-packages/types.d.ts.map +0 -1
- package/dist/adapters/http/ui/index.d.ts +0 -6
- package/dist/adapters/http/ui/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/index.mjs +0 -25
- package/dist/adapters/http/ui/shared/html.d.ts +0 -76
- package/dist/adapters/http/ui/shared/html.d.ts.map +0 -1
- package/dist/adapters/http/ui/shared/html.mjs +0 -104
- package/dist/adapters/http/ui/shared/html.mjs.map +0 -1
- package/dist/adapters/http/ui/shared/index.d.ts +0 -2
- package/dist/adapters/http/ui/shared/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/shared/index.mjs +0 -5
- package/dist/adapters/http/ui/theme/apply.d.ts +0 -12
- package/dist/adapters/http/ui/theme/apply.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/apply.mjs +0 -29
- package/dist/adapters/http/ui/theme/apply.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/assets.d.ts +0 -20
- package/dist/adapters/http/ui/theme/assets.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/assets.mjs +0 -86
- package/dist/adapters/http/ui/theme/assets.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/constants.d.ts +0 -16
- package/dist/adapters/http/ui/theme/constants.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/constants.mjs +0 -20
- package/dist/adapters/http/ui/theme/constants.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/contract/constants.d.ts +0 -120
- package/dist/adapters/http/ui/theme/contract/constants.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/contract/constants.mjs +0 -136
- package/dist/adapters/http/ui/theme/contract/constants.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/contract/head.d.ts +0 -12
- package/dist/adapters/http/ui/theme/contract/head.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/contract/head.mjs +0 -61
- package/dist/adapters/http/ui/theme/contract/head.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/contract/index.d.ts +0 -6
- package/dist/adapters/http/ui/theme/contract/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/contract/index.mjs +0 -8
- package/dist/adapters/http/ui/theme/contract/manifest.d.ts +0 -25
- package/dist/adapters/http/ui/theme/contract/manifest.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/contract/manifest.mjs +0 -77
- package/dist/adapters/http/ui/theme/contract/manifest.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/contract/types.d.ts +0 -26
- package/dist/adapters/http/ui/theme/contract/types.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/contract/utils.d.ts +0 -11
- package/dist/adapters/http/ui/theme/contract/utils.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/contract/utils.mjs +0 -22
- package/dist/adapters/http/ui/theme/contract/utils.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/index.d.ts +0 -7
- package/dist/adapters/http/ui/theme/index.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/index.mjs +0 -13
- package/dist/adapters/http/ui/theme/module.d.ts +0 -79
- package/dist/adapters/http/ui/theme/module.d.ts.map +0 -1
- package/dist/adapters/http/ui/theme/module.mjs +0 -206
- package/dist/adapters/http/ui/theme/module.mjs.map +0 -1
- package/dist/adapters/http/ui/theme/types.d.ts +0 -42
- package/dist/adapters/http/ui/theme/types.d.ts.map +0 -1
- package/dist/app/modules/config/helpers.d.ts +0 -9
- package/dist/app/modules/config/helpers.d.ts.map +0 -1
- package/dist/app/modules/config/helpers.mjs +0 -22
- package/dist/app/modules/config/helpers.mjs.map +0 -1
- package/dist/app/modules/config/normalize.d.ts +0 -3
- package/dist/app/modules/config/normalize.d.ts.map +0 -1
- package/dist/app/modules/config/normalize.mjs +0 -117
- package/dist/app/modules/config/normalize.mjs.map +0 -1
- package/dist/app/modules/config/origins.d.ts +0 -25
- package/dist/app/modules/config/origins.d.ts.map +0 -1
- package/dist/app/modules/config/origins.mjs +0 -46
- package/dist/app/modules/config/origins.mjs.map +0 -1
- package/dist/app/modules/config/read/env.d.ts +0 -3
- package/dist/app/modules/config/read/env.d.ts.map +0 -1
- package/dist/app/modules/config/read/env.mjs +0 -139
- package/dist/app/modules/config/read/env.mjs.map +0 -1
- package/dist/app/modules/config/read/fs.d.ts +0 -3
- package/dist/app/modules/config/read/fs.d.ts.map +0 -1
- package/dist/app/modules/config/read/fs.mjs +0 -60
- package/dist/app/modules/config/read/fs.mjs.map +0 -1
- package/dist/app/modules/config/read/index.d.ts +0 -5
- package/dist/app/modules/config/read/index.d.ts.map +0 -1
- package/dist/app/modules/config/read/index.mjs +0 -7
- package/dist/app/modules/config/read/module.d.ts +0 -4
- package/dist/app/modules/config/read/module.d.ts.map +0 -1
- package/dist/app/modules/config/read/module.mjs +0 -29
- package/dist/app/modules/config/read/module.mjs.map +0 -1
- package/dist/app/modules/config/read/types.d.ts +0 -9
- package/dist/app/modules/config/read/types.d.ts.map +0 -1
- package/dist/app/modules/config/trust-proxy.d.ts +0 -28
- package/dist/app/modules/config/trust-proxy.d.ts.map +0 -1
- package/dist/app/modules/config/trust-proxy.mjs +0 -64
- package/dist/app/modules/config/trust-proxy.mjs.map +0 -1
- package/dist/cli/config.d.ts +0 -18
- package/dist/cli/config.d.ts.map +0 -1
- package/dist/cli/config.mjs +0 -34
- package/dist/cli/config.mjs.map +0 -1
- package/dist/cli/types.d.ts.map +0 -1
- package/dist/utils/host.d.ts +0 -2
- package/dist/utils/host.d.ts.map +0 -1
- package/dist/utils/host.mjs +0 -12
- package/dist/utils/host.mjs.map +0 -1
- /package/dist/adapters/http/{middleware/built-in → controllers/workflows/account}/types.mjs +0 -0
- /package/dist/adapters/http/{ui/console-packages → controllers/workflows/admin}/index.d.ts +0 -0
- /package/dist/adapters/http/{ui/account-console → controllers/workflows/admin}/types.mjs +0 -0
- /package/dist/adapters/http/{ui/auth-console → controllers/workflows/console-login}/types.mjs +0 -0
- /package/dist/adapters/http/{ui/console-packages → internal-client}/types.mjs +0 -0
- /package/dist/{adapters/http/ui/theme/contract → app/modules/components}/types.mjs +0 -0
- /package/dist/cli/{types.d.ts → commands/types.d.ts} +0 -0
- /package/dist/{adapters/http/ui/theme → cli/commands}/types.mjs +0 -0
- /package/dist/{app/modules/config/read → core/oauth2/backchannel-logout}/types.mjs +0 -0
- /package/dist/{cli → core/oauth2/console-login}/types.mjs +0 -0
|
@@ -3,14 +3,24 @@ import "node:url";
|
|
|
3
3
|
import.meta.url;
|
|
4
4
|
import { RECORD_QUERY_PARAMETERS, describeQuerySchema } from "../../../../../core/query/describe.mjs";
|
|
5
5
|
import { sessionSchema } from "../../../../../core/entities/session/schema.mjs";
|
|
6
|
+
import { SYSTEM_CLIENT_SCOPE_NAMES } from "../../../../../core/entities/client/system-clients.mjs";
|
|
7
|
+
import { deriveAmrAcr } from "../../../../../core/oauth2/authorization/helpers.mjs";
|
|
6
8
|
import { isSelfToken } from "../../../../../utils/self-id.mjs";
|
|
7
9
|
import "../../../../../utils/index.mjs";
|
|
10
|
+
import "../../../../../core/oauth2/session-credential/constants.mjs";
|
|
11
|
+
import { resolveIntrospectionSubject } from "../../../../../core/oauth2/introspection/module.mjs";
|
|
8
12
|
import "../../../../../core/index.mjs";
|
|
13
|
+
import { useRequestIdentity } from "../../../request/helpers/identity.mjs";
|
|
9
14
|
import { buildActorContext } from "../../../request/helpers/actor.mjs";
|
|
10
15
|
import { useRequestSessionId } from "../../../request/helpers/session-id.mjs";
|
|
11
16
|
import "../../../request/index.mjs";
|
|
17
|
+
import { unsetSessionCookie } from "../../../cookie/session.mjs";
|
|
18
|
+
import "../../../cookie/index.mjs";
|
|
12
19
|
import { ForceLoggedInMiddleware } from "../../../middleware/built-in/loggedin/module.mjs";
|
|
13
20
|
import "../../../middleware/index.mjs";
|
|
21
|
+
import { IdentityType } from "@authup/core-kit";
|
|
22
|
+
import { OAuth2SubKind, serializeOAuth2Scope } from "@authup/specs";
|
|
23
|
+
import { useRequestCookie } from "@routup/basic/cookie";
|
|
14
24
|
import { useRequestQuery } from "@routup/basic/query";
|
|
15
25
|
import { DContext, DController, DDelete, DGet, DPath, DTags } from "@routup/decorators";
|
|
16
26
|
//#region src/adapters/http/controllers/entities/session/module.ts
|
|
@@ -30,8 +40,64 @@ function _ts_param(paramIndex, decorator) {
|
|
|
30
40
|
}
|
|
31
41
|
var SessionController = class {
|
|
32
42
|
service;
|
|
43
|
+
baseURL;
|
|
44
|
+
identityResolver;
|
|
45
|
+
identityPermissionProvider;
|
|
46
|
+
sessionRepository;
|
|
33
47
|
constructor(ctx) {
|
|
34
48
|
this.service = ctx.service;
|
|
49
|
+
this.baseURL = ctx.baseURL;
|
|
50
|
+
this.identityResolver = ctx.identityResolver;
|
|
51
|
+
this.identityPermissionProvider = ctx.identityPermissionProvider;
|
|
52
|
+
this.sessionRepository = ctx.sessionRepository;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* The caller's own session as a CONTEXT rather than a row: the identity
|
|
56
|
+
* claims and permission projection a console hydrates its store from, which
|
|
57
|
+
* is what `POST /token/introspect` answers minus everything token-shaped.
|
|
58
|
+
*
|
|
59
|
+
* A sibling of `@me` rather than a replacement for it: `GET /sessions/@me`
|
|
60
|
+
* returns the `auth_sessions` ROW, and a console needs the subject's claims
|
|
61
|
+
* and permissions, which are not on it. Named `introspect` because it is
|
|
62
|
+
* literally the introspection projection, keyed off the request's own
|
|
63
|
+
* credential instead of a token in the body.
|
|
64
|
+
*
|
|
65
|
+
* No client scope on the permission read, deliberately.
|
|
66
|
+
* `reduceBindingsByIdentityClient` keeps only permissions whose own
|
|
67
|
+
* `clientId` matches the one passed, so naming a console's client would
|
|
68
|
+
* drop every global permission — nearly all of them. The bearer path passes
|
|
69
|
+
* the token's `client_id` because a token IS issued to one client; a
|
|
70
|
+
* session is not.
|
|
71
|
+
*/ async getOwnIntrospection(event) {
|
|
72
|
+
event.response.headers.set("cache-control", "no-store");
|
|
73
|
+
event.response.headers.append("vary", "cookie");
|
|
74
|
+
const identity = useRequestIdentity(event);
|
|
75
|
+
const sessionId = useRequestSessionId(event);
|
|
76
|
+
if (!identity || !sessionId || identity.type !== IdentityType.USER || !this.identityResolver || !this.identityPermissionProvider) return { active: false };
|
|
77
|
+
const actor = buildActorContext(event);
|
|
78
|
+
const session = await this.service.getOne(sessionId, actor);
|
|
79
|
+
if (!session) return { active: false };
|
|
80
|
+
const subject = await resolveIntrospectionSubject({
|
|
81
|
+
identityResolver: this.identityResolver,
|
|
82
|
+
identityPermissionProvider: this.identityPermissionProvider
|
|
83
|
+
}, {
|
|
84
|
+
sub: identity.id,
|
|
85
|
+
subKind: identity.type,
|
|
86
|
+
realmId: identity.realmId,
|
|
87
|
+
active: true
|
|
88
|
+
});
|
|
89
|
+
return {
|
|
90
|
+
active: true,
|
|
91
|
+
permissions: subject.permissions,
|
|
92
|
+
sub: identity.id,
|
|
93
|
+
sub_kind: OAuth2SubKind.USER,
|
|
94
|
+
session_id: session.id,
|
|
95
|
+
realm_id: identity.realmId,
|
|
96
|
+
realm_name: identity.realmName,
|
|
97
|
+
scope: serializeOAuth2Scope(SYSTEM_CLIENT_SCOPE_NAMES),
|
|
98
|
+
...deriveAmrAcr(session),
|
|
99
|
+
...subject.claims
|
|
100
|
+
};
|
|
35
101
|
}
|
|
36
102
|
async getMany(event) {
|
|
37
103
|
const actor = buildActorContext(event);
|
|
@@ -65,6 +131,7 @@ var SessionController = class {
|
|
|
65
131
|
const actor = buildActorContext(event);
|
|
66
132
|
const resolvedId = isSelfToken(id) ? useRequestSessionId(event) ?? id : id;
|
|
67
133
|
const entity = await this.service.delete(resolvedId, actor);
|
|
134
|
+
if (this.baseURL && resolvedId === useRequestSessionId(event) && useRequestCookie(event, "authup_session")) unsetSessionCookie(event, this.baseURL);
|
|
68
135
|
event.response.status = 202;
|
|
69
136
|
return {
|
|
70
137
|
data: entity,
|
|
@@ -72,6 +139,13 @@ var SessionController = class {
|
|
|
72
139
|
};
|
|
73
140
|
}
|
|
74
141
|
};
|
|
142
|
+
_ts_decorate([
|
|
143
|
+
DGet("/@me/introspect", [ForceLoggedInMiddleware]),
|
|
144
|
+
_ts_param(0, DContext()),
|
|
145
|
+
_ts_metadata("design:type", Function),
|
|
146
|
+
_ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
|
|
147
|
+
_ts_metadata("design:returntype", Promise)
|
|
148
|
+
], SessionController.prototype, "getOwnIntrospection", null);
|
|
75
149
|
_ts_decorate([
|
|
76
150
|
DGet("", [ForceLoggedInMiddleware]),
|
|
77
151
|
_ts_param(0, DContext()),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":["DContext","DController","DDelete","DGet","DPath","DTags","useRequestQuery","isSelfToken","RECORD_QUERY_PARAMETERS","describeQuerySchema","sessionSchema","ForceLoggedInMiddleware","buildActorContext","useRequestSessionId","SessionController","service","ctx","getMany","event","actor","data","meta","schema","getOne","id","resolvedId","entity","dropMany","result","deleteMany","query","currentSessionId","response","status","drop","delete"],"sources":["../../../../../../src/adapters/http/controllers/entities/session/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DContext,\n DController,\n DDelete,\n DGet,\n DPath,\n DTags,\n} from '@routup/decorators';\nimport type { Session } from '@authup/core-kit';\nimport type { IAppEvent } from 'routup';\nimport { useRequestQuery } from '@routup/basic/query';\nimport type { EntityCollectionResponse, EntityRecordResponse, SessionDeleteManyResponse } from '@authup/core-http-kit';\nimport { isSelfToken } from '../../../../../utils/index.ts';\nimport type { ISessionService } from '../../../../../core/index.ts';\nimport {\n RECORD_QUERY_PARAMETERS,\n describeQuerySchema,\n sessionSchema,\n} from '../../../../../core/index.ts';\nimport { ForceLoggedInMiddleware } from '../../../middleware/index.ts';\nimport { buildActorContext, useRequestSessionId } from '../../../request/index.ts';\n\nexport type SessionControllerContext = {\n service: ISessionService,\n};\n\n@DTags('session')\n@DController(['/sessions', '/realms/:realmId/sessions'])\nexport class SessionController {\n protected service: ISessionService;\n\n constructor(ctx: SessionControllerContext) {\n this.service = ctx.service;\n }\n\n @DGet('', [ForceLoggedInMiddleware])\n async getMany(\n @DContext() event: IAppEvent,\n ): Promise<EntityCollectionResponse<Session>> {\n const actor = buildActorContext(event);\n const {\n data,\n meta,\n } = await this.service.getMany(useRequestQuery(event), actor);\n\n return {\n data,\n meta: {\n ...meta,\n schema: describeQuerySchema(sessionSchema),\n },\n };\n }\n\n @DGet('/:id', [ForceLoggedInMiddleware])\n async getOne(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n // `@me` / `@self` resolve to the caller's current session.\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n\n const entity = await this.service.getOne(resolvedId, actor);\n\n return { data: entity, meta: { schema: describeQuerySchema(sessionSchema, RECORD_QUERY_PARAMETERS) } };\n }\n\n @DDelete('', [ForceLoggedInMiddleware])\n async dropMany(\n @DContext() event: IAppEvent,\n ): Promise<SessionDeleteManyResponse> {\n const actor = buildActorContext(event);\n\n // A recognized target filter (e.g. `?filter[userId]=<uuid>`) → admin\n // force-logout (SESSION_DELETE + per-session realm-match). No filter →\n // self-service \"log out my other devices\" (keeps the current session).\n const result = await this.service.deleteMany(actor, {\n query: useRequestQuery(event),\n currentSessionId: useRequestSessionId(event),\n });\n\n event.response.status = 202;\n return result;\n }\n\n @DDelete('/:id', [ForceLoggedInMiddleware])\n async drop(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n const entity = await this.service.delete(resolvedId, actor);\n\n event.response.status = 202;\n return { data: entity, meta: {} };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,IAAac,oBAAb,MAAaA;CACCC;CAEV,YAAYC,KAA+B;EACvC,KAAKD,UAAUC,IAAID;CACvB;CAEA,MACME,QACF,OAC0C;EAC1C,MAAME,QAAQP,kBAAkBM,KAAAA;EAChC,MAAM,EACFE,MACAC,SACA,MAAM,KAAKN,QAAQE,QAAQX,gBAAgBY,KAAAA,GAAQC,KAAAA;EAEvD,OAAO;GACHC;GACAC,MAAM;IACF,GAAGA;IACHC,QAAQb,oBAAoBC,aAAAA;GAChC;EACJ;CACJ;CAEA,MACMa,OACF,IACA,OACsC;EACtC,MAAMJ,QAAQP,kBAAkBM,KAAAA;EAGhC,MAAMO,aAAalB,YAAYiB,EAAAA,IAAOX,oBAAoBK,KAAAA,KAAUM,KAAMA;EAI1E,OAAO;GAAEJ,MAAMM,MAFM,KAAKX,QAAQQ,OAAOE,YAAYN,KAAAA;GAE9BE,MAAM,EAAEC,QAAQb,oBAAoBC,eAAeF,uBAAAA,EAAyB;EAAE;CACzG;CAEA,MACMmB,SACF,OACkC;EAClC,MAAMR,QAAQP,kBAAkBM,KAAAA;EAKhC,MAAMU,SAAS,MAAM,KAAKb,QAAQc,WAAWV,OAAO;GAChDW,OAAOxB,gBAAgBY,KAAAA;GACvBa,kBAAkBlB,oBAAoBK,KAAAA;EAC1C,CAAA;EAEAA,MAAMc,SAASC,SAAS;EACxB,OAAOL;CACX;CAEA,MACMM,KACF,IACA,OACsC;EACtC,MAAMf,QAAQP,kBAAkBM,KAAAA;EAEhC,MAAMO,aAAalB,YAAYiB,EAAAA,IAAOX,oBAAoBK,KAAAA,KAAUM,KAAMA;EAC1E,MAAME,SAAS,MAAM,KAAKX,QAAQoB,OAAOV,YAAYN,KAAAA;EAErDD,MAAMc,SAASC,SAAS;EACxB,OAAO;GAAEb,MAAMM;GAAQL,MAAM,CAAC;EAAE;CACpC;AACJ;;CAjEeV,KAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAmBIA,KAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;CAeDA,QAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAkBIA,QAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;;CA5DR,YAAA,CAAA,aAAa,2BAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["DContext","DController","DDelete","DGet","DPath","DTags","useRequestQuery","isSelfToken","RECORD_QUERY_PARAMETERS","SESSION_COOKIE","deriveAmrAcr","describeQuerySchema","resolveIntrospectionSubject","sessionSchema","ForceLoggedInMiddleware","buildActorContext","useRequestIdentity","useRequestSessionId","IdentityType","OAuth2SubKind","serializeOAuth2Scope","useRequestCookie","SYSTEM_CLIENT_SCOPE_NAMES","unsetSessionCookie","SessionController","service","baseURL","identityResolver","identityPermissionProvider","sessionRepository","ctx","getOwnIntrospection","event","response","headers","set","append","identity","sessionId","type","USER","active","actor","session","getOne","subject","sub","id","subKind","realmId","permissions","sub_kind","session_id","realm_id","realm_name","realmName","scope","claims","getMany","data","meta","schema","resolvedId","entity","dropMany","result","deleteMany","query","currentSessionId","status","drop","delete"],"sources":["../../../../../../src/adapters/http/controllers/entities/session/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DContext,\n DController,\n DDelete,\n DGet,\n DPath,\n DTags,\n} from '@routup/decorators';\nimport type { Session } from '@authup/core-kit';\nimport type { IAppEvent } from 'routup';\nimport { useRequestQuery } from '@routup/basic/query';\nimport type { EntityCollectionResponse, EntityRecordResponse, SessionDeleteManyResponse } from '@authup/core-http-kit';\nimport { isSelfToken } from '../../../../../utils/index.ts';\nimport type { \n IIdentityPermissionProvider, \n IIdentityResolver, \n ISessionRepository, \n ISessionService, \n} from '../../../../../core/index.ts';\nimport {\n RECORD_QUERY_PARAMETERS,\n SESSION_COOKIE,\n deriveAmrAcr, \n describeQuerySchema, \n resolveIntrospectionSubject, \n sessionSchema, \n} from '../../../../../core/index.ts';\nimport { ForceLoggedInMiddleware } from '../../../middleware/index.ts';\nimport { buildActorContext, useRequestIdentity, useRequestSessionId } from '../../../request/index.ts';\nimport { IdentityType } from '@authup/core-kit';\nimport type { OAuth2TokenIntrospectionResponse } from '@authup/specs';\nimport { OAuth2SubKind, serializeOAuth2Scope } from '@authup/specs';\nimport { useRequestCookie } from '@routup/basic/cookie';\nimport { SYSTEM_CLIENT_SCOPE_NAMES } from '../../../../../core/entities/client/system-clients.ts';\nimport { unsetSessionCookie } from '../../../cookie/index.ts';\n\nexport type SessionControllerContext = {\n /**\n * Only the cookie-session additions below use these (plan 088). The entity\n * routes delegate wholly to `service`, as every entity controller does.\n */\n baseURL?: string,\n identityResolver?: IIdentityResolver,\n identityPermissionProvider?: IIdentityPermissionProvider,\n sessionRepository?: ISessionRepository,\n service: ISessionService,\n};\n\n@DTags('session')\n@DController(['/sessions', '/realms/:realmId/sessions'])\nexport class SessionController {\n protected service: ISessionService;\n\n protected baseURL?: string;\n\n protected identityResolver?: IIdentityResolver;\n\n protected identityPermissionProvider?: IIdentityPermissionProvider;\n\n protected sessionRepository?: ISessionRepository;\n\n constructor(ctx: SessionControllerContext) {\n this.service = ctx.service;\n this.baseURL = ctx.baseURL;\n this.identityResolver = ctx.identityResolver;\n this.identityPermissionProvider = ctx.identityPermissionProvider;\n this.sessionRepository = ctx.sessionRepository;\n }\n\n /**\n * The caller's own session as a CONTEXT rather than a row: the identity\n * claims and permission projection a console hydrates its store from, which\n * is what `POST /token/introspect` answers minus everything token-shaped.\n *\n * A sibling of `@me` rather than a replacement for it: `GET /sessions/@me`\n * returns the `auth_sessions` ROW, and a console needs the subject's claims\n * and permissions, which are not on it. Named `introspect` because it is\n * literally the introspection projection, keyed off the request's own\n * credential instead of a token in the body.\n *\n * No client scope on the permission read, deliberately.\n * `reduceBindingsByIdentityClient` keeps only permissions whose own\n * `clientId` matches the one passed, so naming a console's client would\n * drop every global permission — nearly all of them. The bearer path passes\n * the token's `client_id` because a token IS issued to one client; a\n * session is not.\n */\n @DGet('/@me/introspect', [ForceLoggedInMiddleware])\n async getOwnIntrospection(\n @DContext() event: IAppEvent,\n ): Promise<OAuth2TokenIntrospectionResponse> {\n // A per-user document whose only discriminator may be an opaque\n // cookie, which is exactly what an intermediary can cross-serve.\n // `vary` is APPENDED because @routup/cors already put `origin` there.\n event.response.headers.set('cache-control', 'no-store');\n event.response.headers.append('vary', 'cookie');\n\n const identity = useRequestIdentity(event);\n const sessionId = useRequestSessionId(event);\n\n if (\n !identity ||\n !sessionId ||\n identity.type !== IdentityType.USER ||\n !this.identityResolver ||\n !this.identityPermissionProvider\n ) {\n return { active: false };\n }\n\n const actor = buildActorContext(event);\n const session = await this.service.getOne(sessionId, actor);\n if (!session) {\n return { active: false };\n }\n\n const subject = await resolveIntrospectionSubject({\n identityResolver: this.identityResolver,\n identityPermissionProvider: this.identityPermissionProvider,\n }, {\n sub: identity.id,\n subKind: identity.type,\n realmId: identity.realmId,\n active: true,\n });\n\n return {\n active: true,\n // todo: permissions property should be removed.\n permissions: subject.permissions,\n sub: identity.id,\n sub_kind: OAuth2SubKind.USER,\n session_id: session.id,\n realm_id: identity.realmId,\n realm_name: identity.realmName,\n scope: serializeOAuth2Scope(SYSTEM_CLIENT_SCOPE_NAMES),\n ...deriveAmrAcr(session),\n ...subject.claims,\n };\n }\n\n @DGet('', [ForceLoggedInMiddleware])\n async getMany(\n @DContext() event: IAppEvent,\n ): Promise<EntityCollectionResponse<Session>> {\n const actor = buildActorContext(event);\n const {\n data,\n meta,\n } = await this.service.getMany(useRequestQuery(event), actor);\n\n return {\n data,\n meta: {\n ...meta,\n schema: describeQuerySchema(sessionSchema),\n },\n };\n }\n\n @DGet('/:id', [ForceLoggedInMiddleware])\n async getOne(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n // `@me` / `@self` resolve to the caller's current session.\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n\n const entity = await this.service.getOne(resolvedId, actor);\n\n return { data: entity, meta: { schema: describeQuerySchema(sessionSchema, RECORD_QUERY_PARAMETERS) } };\n }\n\n @DDelete('', [ForceLoggedInMiddleware])\n async dropMany(\n @DContext() event: IAppEvent,\n ): Promise<SessionDeleteManyResponse> {\n const actor = buildActorContext(event);\n\n // A recognized target filter (e.g. `?filter[userId]=<uuid>`) → admin\n // force-logout (SESSION_DELETE + per-session realm-match). No filter →\n // self-service \"log out my other devices\" (keeps the current session).\n const result = await this.service.deleteMany(actor, {\n query: useRequestQuery(event),\n currentSessionId: useRequestSessionId(event),\n });\n\n event.response.status = 202;\n return result;\n }\n\n @DDelete('/:id', [ForceLoggedInMiddleware])\n async drop(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n const entity = await this.service.delete(resolvedId, actor);\n\n // Sign-out for a cookie session, folded in here rather than given its\n // own route (plan 088). Revoking the row was always most of the job;\n // the reason this endpoint could not BE the sign-out was that it left\n // a dead cookie the browser kept presenting on every request. Clearing\n // it removes that, and the same-origin gate is already upstream: a\n // cookie only authenticates at all when the middleware accepted it.\n // Only for the caller's OWN session: revoking another device must not\n // drop the credential of the one doing the revoking.\n if (\n this.baseURL &&\n resolvedId === useRequestSessionId(event) &&\n useRequestCookie(event, SESSION_COOKIE)\n ) {\n unsetSessionCookie(event, this.baseURL);\n }\n\n event.response.status = 202;\n return { data: entity, meta: {} };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,IAAawB,oBAAb,MAAaA;CACCC;CAEAC;CAEAC;CAEAC;CAEAC;CAEV,YAAYC,KAA+B;EACvC,KAAKL,UAAUK,IAAIL;EACnB,KAAKC,UAAUI,IAAIJ;EACnB,KAAKC,mBAAmBG,IAAIH;EAC5B,KAAKC,6BAA6BE,IAAIF;EACtC,KAAKC,oBAAoBC,IAAID;CACjC;;;;;;;;;;;;;;;;;;IAoBA,MACME,oBACF,OACyC;EAIzCC,MAAMC,SAASC,QAAQC,IAAI,iBAAiB,UAAA;EAC5CH,MAAMC,SAASC,QAAQE,OAAO,QAAQ,QAAA;EAEtC,MAAMC,WAAWrB,mBAAmBgB,KAAAA;EACpC,MAAMM,YAAYrB,oBAAoBe,KAAAA;EAEtC,IACI,CAACK,YACD,CAACC,aACDD,SAASE,SAASrB,aAAasB,QAC/B,CAAC,KAAKb,oBACN,CAAC,KAAKC,4BAEN,OAAO,EAAEa,QAAQ,MAAM;EAG3B,MAAMC,QAAQ3B,kBAAkBiB,KAAAA;EAChC,MAAMW,UAAU,MAAM,KAAKlB,QAAQmB,OAAON,WAAWI,KAAAA;EACrD,IAAI,CAACC,SACD,OAAO,EAAEF,QAAQ,MAAM;EAG3B,MAAMI,UAAU,MAAMjC,4BAA4B;GAC9Ce,kBAAkB,KAAKA;GACvBC,4BAA4B,KAAKA;EACrC,GAAG;GACCkB,KAAKT,SAASU;GACdC,SAASX,SAASE;GAClBU,SAASZ,SAASY;GAClBR,QAAQ;EACZ,CAAA;EAEA,OAAO;GACHA,QAAQ;GAERS,aAAaL,QAAQK;GACrBJ,KAAKT,SAASU;GACdI,UAAUhC,cAAcqB;GACxBY,YAAYT,QAAQI;GACpBM,UAAUhB,SAASY;GACnBK,YAAYjB,SAASkB;GACrBC,OAAOpC,qBAAqBE,yBAAAA;GAC5B,GAAGZ,aAAaiC,OAAAA;GAChB,GAAGE,QAAQY;EACf;CACJ;CAEA,MACMC,QACF,OAC0C;EAC1C,MAAMhB,QAAQ3B,kBAAkBiB,KAAAA;EAChC,MAAM,EACF2B,MACAC,SACA,MAAM,KAAKnC,QAAQiC,QAAQpD,gBAAgB0B,KAAAA,GAAQU,KAAAA;EAEvD,OAAO;GACHiB;GACAC,MAAM;IACF,GAAGA;IACHC,QAAQlD,oBAAoBE,aAAAA;GAChC;EACJ;CACJ;CAEA,MACM+B,OACF,IACA,OACsC;EACtC,MAAMF,QAAQ3B,kBAAkBiB,KAAAA;EAGhC,MAAM8B,aAAavD,YAAYwC,EAAAA,IAAO9B,oBAAoBe,KAAAA,KAAUe,KAAMA;EAI1E,OAAO;GAAEY,MAAMI,MAFM,KAAKtC,QAAQmB,OAAOkB,YAAYpB,KAAAA;GAE9BkB,MAAM,EAAEC,QAAQlD,oBAAoBE,eAAeL,uBAAAA,EAAyB;EAAE;CACzG;CAEA,MACMwD,SACF,OACkC;EAClC,MAAMtB,QAAQ3B,kBAAkBiB,KAAAA;EAKhC,MAAMiC,SAAS,MAAM,KAAKxC,QAAQyC,WAAWxB,OAAO;GAChDyB,OAAO7D,gBAAgB0B,KAAAA;GACvBoC,kBAAkBnD,oBAAoBe,KAAAA;EAC1C,CAAA;EAEAA,MAAMC,SAASoC,SAAS;EACxB,OAAOJ;CACX;CAEA,MACMK,KACF,IACA,OACsC;EACtC,MAAM5B,QAAQ3B,kBAAkBiB,KAAAA;EAEhC,MAAM8B,aAAavD,YAAYwC,EAAAA,IAAO9B,oBAAoBe,KAAAA,KAAUe,KAAMA;EAC1E,MAAMgB,SAAS,MAAM,KAAKtC,QAAQ8C,OAAOT,YAAYpB,KAAAA;EAUrD,IACI,KAAKhB,WACLoC,eAAe7C,oBAAoBe,KAAAA,KACnCX,iBAAiBW,OAAAA,gBAAOvB,GAExBc,mBAAmBS,OAAO,KAAKN,OAAO;EAG1CM,MAAMC,SAASoC,SAAS;EACxB,OAAO;GAAEV,MAAMI;GAAQH,MAAM,CAAC;EAAE;CACpC;AACJ;;CAvI8B9C,KAAAA,mBAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAsDfA,KAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAmBIA,KAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;CAeDA,QAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAkBIA,QAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;;CAhJR,YAAA,CAAA,aAAa,2BAAA,CAAA"}
|
|
@@ -16,8 +16,10 @@ import { IdentityProviderRoleMappingController } from "./entities/identity-provi
|
|
|
16
16
|
import { KeyController } from "./entities/key/module.mjs";
|
|
17
17
|
import { PermissionController } from "./entities/permission/module.mjs";
|
|
18
18
|
import { PermissionPolicyController } from "./entities/permission-policy/module.mjs";
|
|
19
|
+
import { ConsoleLogin } from "./workflows/console-login/module.mjs";
|
|
19
20
|
import { AccountController } from "./workflows/account/module.mjs";
|
|
20
21
|
import { ActivateController } from "./workflows/activate/module.mjs";
|
|
22
|
+
import { AdminController } from "./workflows/admin/module.mjs";
|
|
21
23
|
import { AuthenticatorChallengeController } from "./workflows/authenticator-challenge/module.mjs";
|
|
22
24
|
import { AuthorizeController } from "./workflows/authorize/module.mjs";
|
|
23
25
|
import { getJwkRouteHandler, getJwksRouteHandler } from "./workflows/jwks/handlers/read.mjs";
|
|
@@ -53,4 +55,4 @@ import { UserPermissionRequestValidator } from "./entities/user-permission/utils
|
|
|
53
55
|
import { UserRoleController } from "./entities/user-role/module.mjs";
|
|
54
56
|
import { UserRoleRequestValidator } from "./entities/user-role/utils/validation.mjs";
|
|
55
57
|
import "./entities/index.mjs";
|
|
56
|
-
export { AccountController, ActivateController, AuthenticatorChallengeController, AuthorizeController, ClientController, ClientPermissionController, ClientPermissionRequestValidator, ClientRoleController, ClientRoleRequestValidator, ClientScopeController, ClientScopeRequestValidator, ConsentController, EventController, IdentityProviderAccountController, IdentityProviderController, IdentityProviderRoleMappingController, JwkController, KeyController, LogoutController, OpenIDController, PasswordForgotController, PasswordResetController, PermissionController, PermissionPolicyController, PolicyAttributesValidator, PolicyController, PolicyValidator, RealmController, RegisterController, RoleAttributeController, RoleAttributeRequestValidator, RoleController, RolePermissionController, RolePermissionRequestValidator, ScopeController, SessionController, SessionTokenController, StatusController, TokenController, TrustAnchorController, UserAttributeController, UserAttributeRequestValidator, UserAuthenticatorController, UserController, UserInfoController, UserPermissionController, UserPermissionRequestValidator, UserRoleController, UserRoleRequestValidator, getJwkRouteHandler, getJwksRouteHandler };
|
|
58
|
+
export { AccountController, ActivateController, AdminController, AuthenticatorChallengeController, AuthorizeController, ClientController, ClientPermissionController, ClientPermissionRequestValidator, ClientRoleController, ClientRoleRequestValidator, ClientScopeController, ClientScopeRequestValidator, ConsentController, ConsoleLogin, EventController, IdentityProviderAccountController, IdentityProviderController, IdentityProviderRoleMappingController, JwkController, KeyController, LogoutController, OpenIDController, PasswordForgotController, PasswordResetController, PermissionController, PermissionPolicyController, PolicyAttributesValidator, PolicyController, PolicyValidator, RealmController, RegisterController, RoleAttributeController, RoleAttributeRequestValidator, RoleController, RolePermissionController, RolePermissionRequestValidator, ScopeController, SessionController, SessionTokenController, StatusController, TokenController, TrustAnchorController, UserAttributeController, UserAttributeRequestValidator, UserAuthenticatorController, UserController, UserInfoController, UserPermissionController, UserPermissionRequestValidator, UserRoleController, UserRoleRequestValidator, getJwkRouteHandler, getJwksRouteHandler };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -1,24 +1,33 @@
|
|
|
1
|
-
import type { StatusResponseFeatures } from '@authup/core-http-kit';
|
|
2
1
|
import type { IAppEvent } from 'routup';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
features: StatusResponseFeatures;
|
|
6
|
-
trustedOrigins: string[];
|
|
7
|
-
};
|
|
8
|
-
export type AccountControllerContext = {
|
|
9
|
-
options: AccountControllerOptions;
|
|
10
|
-
};
|
|
2
|
+
import { ConsoleLogin } from '../console-login/index.ts';
|
|
3
|
+
import type { AccountControllerContext, AccountControllerOptions } from './types.ts';
|
|
11
4
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* The
|
|
5
|
+
* The account console's server half (plan 088): the login kick and the code
|
|
6
|
+
* redemption, so no OAuth2 token ever reaches the console's JavaScript.
|
|
7
|
+
*
|
|
8
|
+
* The console itself is served by `@authup/server-account-console`, which
|
|
9
|
+
* owns everything else under `/console/account`. These two routes stay here
|
|
10
|
+
* because they are sessions, keys and cache, and because the pending-login
|
|
11
|
+
* cookie has to be issued on the origin that reads it back (plan 101
|
|
12
|
+
* invariant 3). A proxy therefore routes these two exact paths to the API
|
|
13
|
+
* set and the rest of the console's segment to the console set.
|
|
16
14
|
*/
|
|
17
15
|
export declare class AccountController {
|
|
18
16
|
protected options: AccountControllerOptions;
|
|
17
|
+
protected consoleLogin: ConsoleLogin;
|
|
19
18
|
constructor(ctx: AccountControllerContext);
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
/**
|
|
20
|
+
* A path of its own rather than a `realmId`-carrying `/login` (098 C1).
|
|
21
|
+
* The bare `/login` is the console's own page now, served by the console
|
|
22
|
+
* service, so there is nothing left here to dispatch against.
|
|
23
|
+
*/
|
|
24
|
+
login(event: IAppEvent): Promise<Response>;
|
|
25
|
+
callback(event: IAppEvent): Promise<Response>;
|
|
26
|
+
/**
|
|
27
|
+
* Disabled means disabled on the server too: the kick must not mint a
|
|
28
|
+
* pending login and a session for a console nothing is serving. There is
|
|
29
|
+
* no shell to answer with any more, so the route simply does not exist.
|
|
30
|
+
*/
|
|
31
|
+
protected assertEnabled(): void;
|
|
23
32
|
}
|
|
24
33
|
//# sourceMappingURL=module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAErF;;;;;;;;;;GAUG;AACH,qBACa,iBAAiB;IAC1B,SAAS,CAAC,OAAO,EAAE,wBAAwB,CAAC;IAE5C,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEzB,GAAG,EAAE,wBAAwB;IAoBzC;;;;OAIG;IAEG,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtD,QAAQ,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAM/D;;;;OAIG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;CAKlC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import "node:path";
|
|
2
2
|
import "node:url";
|
|
3
3
|
import.meta.url;
|
|
4
|
-
import {
|
|
5
|
-
import "
|
|
4
|
+
import { ACCOUNT_CONSOLE_SEGMENT } from "../../../constants.mjs";
|
|
5
|
+
import { ConsoleLogin } from "../console-login/module.mjs";
|
|
6
|
+
import "../console-login/index.mjs";
|
|
7
|
+
import { CLIENT_ACCOUNT_CONSOLE_NAME } from "@authup/core-kit";
|
|
8
|
+
import { NotFoundError } from "@ebec/http";
|
|
6
9
|
import { DContext, DController, DGet } from "@routup/decorators";
|
|
7
10
|
//#region src/adapters/http/controllers/workflows/account/module.ts
|
|
8
11
|
function _ts_decorate(decorators, target, key, desc) {
|
|
@@ -21,39 +24,59 @@ function _ts_param(paramIndex, decorator) {
|
|
|
21
24
|
}
|
|
22
25
|
var AccountController = class {
|
|
23
26
|
options;
|
|
27
|
+
consoleLogin;
|
|
24
28
|
constructor(ctx) {
|
|
25
29
|
this.options = ctx.options;
|
|
30
|
+
this.consoleLogin = new ConsoleLogin({
|
|
31
|
+
clientName: CLIENT_ACCOUNT_CONSOLE_NAME,
|
|
32
|
+
segment: ACCOUNT_CONSOLE_SEGMENT,
|
|
33
|
+
consoleUrl: ctx.options.consoleUrl
|
|
34
|
+
}, {
|
|
35
|
+
options: { baseURL: ctx.options.baseURL },
|
|
36
|
+
loginStore: ctx.loginStore,
|
|
37
|
+
sessionRepository: ctx.sessionRepository,
|
|
38
|
+
sessionManager: ctx.sessionManager,
|
|
39
|
+
tokenVerifier: ctx.tokenVerifier,
|
|
40
|
+
tokenRevoker: ctx.tokenRevoker,
|
|
41
|
+
logger: ctx.logger
|
|
42
|
+
});
|
|
26
43
|
}
|
|
27
|
-
|
|
28
|
-
|
|
44
|
+
/**
|
|
45
|
+
* A path of its own rather than a `realmId`-carrying `/login` (098 C1).
|
|
46
|
+
* The bare `/login` is the console's own page now, served by the console
|
|
47
|
+
* service, so there is nothing left here to dispatch against.
|
|
48
|
+
*/ async login(event) {
|
|
49
|
+
this.assertEnabled();
|
|
50
|
+
return this.consoleLogin.login(event);
|
|
29
51
|
}
|
|
30
|
-
async
|
|
31
|
-
|
|
52
|
+
async callback(event) {
|
|
53
|
+
this.assertEnabled();
|
|
54
|
+
return this.consoleLogin.callback(event);
|
|
32
55
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
56
|
+
/**
|
|
57
|
+
* Disabled means disabled on the server too: the kick must not mint a
|
|
58
|
+
* pending login and a session for a console nothing is serving. There is
|
|
59
|
+
* no shell to answer with any more, so the route simply does not exist.
|
|
60
|
+
*/ assertEnabled() {
|
|
61
|
+
if (!this.options.enabled) throw new NotFoundError();
|
|
39
62
|
}
|
|
40
63
|
};
|
|
41
64
|
_ts_decorate([
|
|
42
|
-
DGet("", []),
|
|
65
|
+
DGet("/login/start", []),
|
|
43
66
|
_ts_param(0, DContext()),
|
|
44
67
|
_ts_metadata("design:type", Function),
|
|
45
68
|
_ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
|
|
46
69
|
_ts_metadata("design:returntype", Promise)
|
|
47
|
-
], AccountController.prototype, "
|
|
70
|
+
], AccountController.prototype, "login", null);
|
|
48
71
|
_ts_decorate([
|
|
49
|
-
DGet("
|
|
72
|
+
DGet("/callback", []),
|
|
50
73
|
_ts_param(0, DContext()),
|
|
51
74
|
_ts_metadata("design:type", Function),
|
|
52
75
|
_ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
|
|
53
76
|
_ts_metadata("design:returntype", Promise)
|
|
54
|
-
], AccountController.prototype, "
|
|
77
|
+
], AccountController.prototype, "callback", null);
|
|
55
78
|
AccountController = _ts_decorate([
|
|
56
|
-
DController(
|
|
79
|
+
DController(`/${ACCOUNT_CONSOLE_SEGMENT}`),
|
|
57
80
|
_ts_metadata("design:type", Function),
|
|
58
81
|
_ts_metadata("design:paramtypes", [typeof AccountControllerContext === "undefined" ? Object : AccountControllerContext])
|
|
59
82
|
], AccountController);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":["DContext","DController","DGet","
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["CLIENT_ACCOUNT_CONSOLE_NAME","NotFoundError","DContext","DController","DGet","ACCOUNT_CONSOLE_SEGMENT","ConsoleLogin","AccountController","options","consoleLogin","ctx","clientName","segment","consoleUrl","baseURL","loginStore","sessionRepository","sessionManager","tokenVerifier","tokenRevoker","logger","login","event","assertEnabled","callback","enabled"],"sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { CLIENT_ACCOUNT_CONSOLE_NAME } from '@authup/core-kit';\nimport { NotFoundError } from '@ebec/http';\nimport {\n DContext,\n DController,\n DGet,\n} from '@routup/decorators';\nimport type { IAppEvent } from 'routup';\nimport { ACCOUNT_CONSOLE_SEGMENT } from '../../../constants.ts';\nimport { ConsoleLogin } from '../console-login/index.ts';\nimport type { AccountControllerContext, AccountControllerOptions } from './types.ts';\n\n/**\n * The account console's server half (plan 088): the login kick and the code\n * redemption, so no OAuth2 token ever reaches the console's JavaScript.\n *\n * The console itself is served by `@authup/server-account-console`, which\n * owns everything else under `/console/account`. These two routes stay here\n * because they are sessions, keys and cache, and because the pending-login\n * cookie has to be issued on the origin that reads it back (plan 101\n * invariant 3). A proxy therefore routes these two exact paths to the API\n * set and the rest of the console's segment to the console set.\n */\n@DController(`/${ACCOUNT_CONSOLE_SEGMENT}`)\nexport class AccountController {\n protected options: AccountControllerOptions;\n\n protected consoleLogin: ConsoleLogin;\n\n constructor(ctx: AccountControllerContext) {\n this.options = ctx.options;\n this.consoleLogin = new ConsoleLogin(\n {\n clientName: CLIENT_ACCOUNT_CONSOLE_NAME,\n segment: ACCOUNT_CONSOLE_SEGMENT,\n consoleUrl: ctx.options.consoleUrl,\n },\n {\n options: { baseURL: ctx.options.baseURL },\n loginStore: ctx.loginStore,\n sessionRepository: ctx.sessionRepository,\n sessionManager: ctx.sessionManager,\n tokenVerifier: ctx.tokenVerifier,\n tokenRevoker: ctx.tokenRevoker,\n logger: ctx.logger,\n },\n );\n }\n\n /**\n * A path of its own rather than a `realmId`-carrying `/login` (098 C1).\n * The bare `/login` is the console's own page now, served by the console\n * service, so there is nothing left here to dispatch against.\n */\n @DGet('/login/start', [])\n async login(@DContext() event: IAppEvent): Promise<Response> {\n this.assertEnabled();\n\n return this.consoleLogin.login(event);\n }\n\n @DGet('/callback', [])\n async callback(@DContext() event: IAppEvent): Promise<Response> {\n this.assertEnabled();\n\n return this.consoleLogin.callback(event);\n }\n\n /**\n * Disabled means disabled on the server too: the kick must not mint a\n * pending login and a session for a console nothing is serving. There is\n * no shell to answer with any more, so the route simply does not exist.\n */\n protected assertEnabled(): void {\n if (!this.options.enabled) {\n throw new NotFoundError();\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAaO,oBAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYC,KAA+B;EACvC,KAAKF,UAAUE,IAAIF;EACnB,KAAKC,eAAe,IAAIH,aACpB;GACIK,YAAYX;GACZY,SAASP;GACTQ,YAAYH,IAAIF,QAAQK;EAC5B,GACA;GACIL,SAAS,EAAEM,SAASJ,IAAIF,QAAQM,QAAQ;GACxCC,YAAYL,IAAIK;GAChBC,mBAAmBN,IAAIM;GACvBC,gBAAgBP,IAAIO;GACpBC,eAAeR,IAAIQ;GACnBC,cAAcT,IAAIS;GAClBC,QAAQV,IAAIU;EAChB,CAAA;CAER;;;;;IAOA,MACMC,MAAM,OAAiD;EACzD,KAAKE,cAAa;EAElB,OAAO,KAAKd,aAAaY,MAAMC,KAAAA;CACnC;CAEA,MACME,SAAS,OAAiD;EAC5D,KAAKD,cAAa;EAElB,OAAO,KAAKd,aAAae,SAASF,KAAAA;CACtC;;;;;IAOA,gBAAgC;EAC5B,IAAI,CAAC,KAAKd,QAAQiB,SACd,MAAM,IAAIxB,cAAAA;CAElB;AACJ;;;;;;;;;;;;;;;;CAvDc,YAAA,IAAGI,yBAAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Logger } from '@authup/server-kit';
|
|
2
|
+
import type { IConsoleLoginStore, IOAuth2TokenRevoker, IOAuth2TokenVerifier, ISessionManager, ISessionRepository } from '../../../../../core/index.ts';
|
|
3
|
+
export type AccountControllerOptions = {
|
|
4
|
+
baseURL: string;
|
|
5
|
+
/**
|
|
6
|
+
* Where the console this authenticates for is served. The browser lands
|
|
7
|
+
* there once the credential is issued, and a refusal renders there.
|
|
8
|
+
*/
|
|
9
|
+
consoleUrl: string;
|
|
10
|
+
enabled: boolean;
|
|
11
|
+
};
|
|
12
|
+
export type AccountControllerContext = {
|
|
13
|
+
options: AccountControllerOptions;
|
|
14
|
+
/**
|
|
15
|
+
* Holds the PKCE verifier and `state` while the browser is away at
|
|
16
|
+
* `/authorize` (plan 088).
|
|
17
|
+
*/
|
|
18
|
+
loginStore: IConsoleLoginStore;
|
|
19
|
+
/**
|
|
20
|
+
* Writes and clears the opaque credential on the session row. The session
|
|
21
|
+
* MANAGER cannot: the column is `select: false` and has a dedicated write.
|
|
22
|
+
*/
|
|
23
|
+
sessionRepository: ISessionRepository;
|
|
24
|
+
sessionManager: ISessionManager;
|
|
25
|
+
/**
|
|
26
|
+
* Reads the exchanged access token (session, subject) and the refresh
|
|
27
|
+
* token, so both can be revoked before either leaves the process.
|
|
28
|
+
*/
|
|
29
|
+
tokenVerifier: IOAuth2TokenVerifier;
|
|
30
|
+
tokenRevoker: IOAuth2TokenRevoker;
|
|
31
|
+
logger?: Logger;
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EACR,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EACrB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,wBAAwB,CAAC;IAClC;;;OAGG;IACH,UAAU,EAAE,kBAAkB,CAAC;IAC/B;;;OAGG;IACH,iBAAiB,EAAE,kBAAkB,CAAC;IACtC,cAAc,EAAE,eAAe,CAAC;IAChC;;;OAGG;IACH,aAAa,EAAE,oBAAoB,CAAC;IACpC,YAAY,EAAE,mBAAmB,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { IAppEvent } from 'routup';
|
|
2
|
-
import type { ActivatePayload
|
|
2
|
+
import type { ActivatePayload } from '@authup/core-http-kit';
|
|
3
3
|
import type { IRegistrationService } from '../../../../../core/index.ts';
|
|
4
4
|
export type ActivateControllerOptions = {
|
|
5
|
-
|
|
6
|
-
features: StatusResponseFeatures;
|
|
5
|
+
authConsoleUrl: string;
|
|
7
6
|
};
|
|
8
7
|
export type ActivateControllerContext = {
|
|
9
8
|
options: ActivateControllerOptions;
|
|
@@ -13,7 +12,12 @@ export declare class ActivateController {
|
|
|
13
12
|
protected options: ActivateControllerOptions;
|
|
14
13
|
protected service: IRegistrationService;
|
|
15
14
|
constructor(ctx: ActivateControllerContext);
|
|
16
|
-
|
|
15
|
+
/**
|
|
16
|
+
* The page renders in the auth console service; this hop carries the
|
|
17
|
+
* request's own parameters over to it. The POST below stays here:
|
|
18
|
+
* server-core keeps the protocol, the service keeps the render.
|
|
19
|
+
*/
|
|
20
|
+
serve(event: IAppEvent): Promise<Response>;
|
|
17
21
|
execute(data: ActivatePayload, event: IAppEvent): Promise<null>;
|
|
18
22
|
}
|
|
19
23
|
//# sourceMappingURL=module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAIzE,MAAM,MAAM,yBAAyB,GAAG;IACpC,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACpC,OAAO,EAAE,yBAAyB,CAAC;IACnC,OAAO,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,qBACa,kBAAkB;IAC3B,SAAS,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAE7C,SAAS,CAAC,OAAO,EAAE,oBAAoB,CAAC;gBAE5B,GAAG,EAAE,yBAAyB;IAK1C;;;;OAIG;IAEG,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKtD,OAAO,CACA,IAAI,EAAE,eAAe,EAClB,KAAK,EAAE,SAAS,GAC7B,OAAO,CAAC,IAAI,CAAC;CASnB"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import "node:path";
|
|
2
2
|
import "node:url";
|
|
3
3
|
import.meta.url;
|
|
4
|
-
import {
|
|
5
|
-
import "../../../ui/index.mjs";
|
|
4
|
+
import { redirectToAuthConsole } from "../auth-console.mjs";
|
|
6
5
|
import { ActivateRequestValidator } from "./validator.mjs";
|
|
7
6
|
import { DBody, DContext, DController, DGet, DPost } from "@routup/decorators";
|
|
8
7
|
//#region src/adapters/http/controllers/workflows/activate/module.ts
|
|
@@ -27,13 +26,12 @@ var ActivateController = class {
|
|
|
27
26
|
this.options = ctx.options;
|
|
28
27
|
this.service = ctx.service;
|
|
29
28
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
});
|
|
29
|
+
/**
|
|
30
|
+
* The page renders in the auth console service; this hop carries the
|
|
31
|
+
* request's own parameters over to it. The POST below stays here:
|
|
32
|
+
* server-core keeps the protocol, the service keeps the render.
|
|
33
|
+
*/ async serve(event) {
|
|
34
|
+
return redirectToAuthConsole(event, this.options.authConsoleUrl, "/activate");
|
|
37
35
|
}
|
|
38
36
|
async execute(data, event) {
|
|
39
37
|
const validated = await new ActivateRequestValidator().run(data);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":["DBody","DContext","DController","DGet","DPost","
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["DBody","DContext","DController","DGet","DPost","redirectToAuthConsole","ActivateRequestValidator","ActivateController","options","service","ctx","serve","event","authConsoleUrl","execute","data","validator","validated","run","activate","response","status"],"sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DBody,\n DContext,\n DController,\n DGet,\n DPost,\n} from '@routup/decorators';\nimport type { IAppEvent } from 'routup';\nimport type { ActivatePayload } from '@authup/core-http-kit';\nimport type { IRegistrationService } from '../../../../../core/index.ts';\nimport { redirectToAuthConsole } from '../auth-console.ts';\nimport { ActivateRequestValidator } from './validator.ts';\n\nexport type ActivateControllerOptions = {\n authConsoleUrl: string,\n};\n\nexport type ActivateControllerContext = {\n options: ActivateControllerOptions,\n service: IRegistrationService,\n};\n\n@DController('/activate')\nexport class ActivateController {\n protected options: ActivateControllerOptions;\n\n protected service: IRegistrationService;\n\n constructor(ctx: ActivateControllerContext) {\n this.options = ctx.options;\n this.service = ctx.service;\n }\n\n /**\n * The page renders in the auth console service; this hop carries the\n * request's own parameters over to it. The POST below stays here:\n * server-core keeps the protocol, the service keeps the render.\n */\n @DGet('', [])\n async serve(@DContext() event: IAppEvent): Promise<Response> {\n return redirectToAuthConsole(event, this.options.authConsoleUrl, '/activate');\n }\n\n @DPost('', [])\n async execute(\n @DBody() data: ActivatePayload,\n @DContext() event: IAppEvent,\n ): Promise<null> {\n const validator = new ActivateRequestValidator();\n const validated = await validator.run(data);\n\n await this.service.activate(validated);\n\n event.response.status = 202;\n return null;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA8BA,IAAaO,qBAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYC,KAAgC;EACxC,KAAKF,UAAUE,IAAIF;EACnB,KAAKC,UAAUC,IAAID;CACvB;;;;;IAOA,MACME,MAAM,OAAiD;EACzD,OAAON,sBAAsBO,OAAO,KAAKJ,QAAQK,gBAAgB,WAAA;CACrE;CAEA,MACMC,QACF,MACA,OACa;EAEb,MAAMG,YAAY,MAAMD,IADFV,yBACEU,CAAAA,CAAUE,IAAIH,IAAAA;EAEtC,MAAM,KAAKN,QAAQU,SAASF,SAAAA;EAE5BL,MAAMQ,SAASC,SAAS;EACxB,OAAO;CACX;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/admin/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { IAppEvent } from 'routup';
|
|
2
|
+
import { ConsoleLogin } from '../console-login/index.ts';
|
|
3
|
+
import type { AdminControllerContext, AdminControllerOptions } from './types.ts';
|
|
4
|
+
/**
|
|
5
|
+
* The admin console's server half (plan 088): the login kick and the code
|
|
6
|
+
* redemption, bound to the per-realm `admin-console` client.
|
|
7
|
+
*
|
|
8
|
+
* The console itself is served by `@authup/server-admin-console`. See
|
|
9
|
+
* {@link AccountController} for why these two routes stay on the API.
|
|
10
|
+
*/
|
|
11
|
+
export declare class AdminController {
|
|
12
|
+
protected options: AdminControllerOptions;
|
|
13
|
+
protected consoleLogin: ConsoleLogin;
|
|
14
|
+
constructor(ctx: AdminControllerContext);
|
|
15
|
+
/**
|
|
16
|
+
* A path of its own rather than a `realmId`-carrying `/login` (098 C1).
|
|
17
|
+
* One URL used to mean two things: with a realm the server-side kick,
|
|
18
|
+
* without one the console's own login PAGE. The page is served by the
|
|
19
|
+
* console service now, so the kick can no longer fall back to it and the
|
|
20
|
+
* split became required rather than optional.
|
|
21
|
+
*/
|
|
22
|
+
login(event: IAppEvent): Promise<Response>;
|
|
23
|
+
callback(event: IAppEvent): Promise<Response>;
|
|
24
|
+
/**
|
|
25
|
+
* Disabled means disabled on the server too: the kick must not mint a
|
|
26
|
+
* pending login and a session for a console nothing is serving.
|
|
27
|
+
*/
|
|
28
|
+
protected assertEnabled(): void;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/admin/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEjF;;;;;;GAMG;AACH,qBACa,eAAe;IACxB,SAAS,CAAC,OAAO,EAAE,sBAAsB,CAAC;IAE1C,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEzB,GAAG,EAAE,sBAAsB;IAwBvC;;;;;;OAMG;IAEG,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtD,QAAQ,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAM/D;;;OAGG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;CAKlC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import "node:path";
|
|
2
|
+
import "node:url";
|
|
3
|
+
import.meta.url;
|
|
4
|
+
import { ADMIN_CONSOLE_SEGMENT } from "../../../constants.mjs";
|
|
5
|
+
import { ConsoleLogin } from "../console-login/module.mjs";
|
|
6
|
+
import "../console-login/index.mjs";
|
|
7
|
+
import { CLIENT_ADMIN_CONSOLE_NAME } from "@authup/core-kit";
|
|
8
|
+
import { NotFoundError } from "@ebec/http";
|
|
9
|
+
import { DContext, DController, DGet } from "@routup/decorators";
|
|
10
|
+
//#region src/adapters/http/controllers/workflows/admin/module.ts
|
|
11
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
12
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
13
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
14
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
15
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
16
|
+
}
|
|
17
|
+
function _ts_metadata(metadataKey, metadataValue) {
|
|
18
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
|
|
19
|
+
}
|
|
20
|
+
function _ts_param(paramIndex, decorator) {
|
|
21
|
+
return function(target, key) {
|
|
22
|
+
decorator(target, key, paramIndex);
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
var AdminController = class {
|
|
26
|
+
options;
|
|
27
|
+
consoleLogin;
|
|
28
|
+
constructor(ctx) {
|
|
29
|
+
this.options = ctx.options;
|
|
30
|
+
this.consoleLogin = new ConsoleLogin({
|
|
31
|
+
clientName: CLIENT_ADMIN_CONSOLE_NAME,
|
|
32
|
+
segment: ADMIN_CONSOLE_SEGMENT,
|
|
33
|
+
consoleUrl: ctx.options.consoleUrl,
|
|
34
|
+
refusalPath: "login"
|
|
35
|
+
}, {
|
|
36
|
+
options: { baseURL: ctx.options.baseURL },
|
|
37
|
+
loginStore: ctx.loginStore,
|
|
38
|
+
sessionRepository: ctx.sessionRepository,
|
|
39
|
+
sessionManager: ctx.sessionManager,
|
|
40
|
+
tokenVerifier: ctx.tokenVerifier,
|
|
41
|
+
tokenRevoker: ctx.tokenRevoker,
|
|
42
|
+
logger: ctx.logger
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* A path of its own rather than a `realmId`-carrying `/login` (098 C1).
|
|
47
|
+
* One URL used to mean two things: with a realm the server-side kick,
|
|
48
|
+
* without one the console's own login PAGE. The page is served by the
|
|
49
|
+
* console service now, so the kick can no longer fall back to it and the
|
|
50
|
+
* split became required rather than optional.
|
|
51
|
+
*/ async login(event) {
|
|
52
|
+
this.assertEnabled();
|
|
53
|
+
return this.consoleLogin.login(event);
|
|
54
|
+
}
|
|
55
|
+
async callback(event) {
|
|
56
|
+
this.assertEnabled();
|
|
57
|
+
return this.consoleLogin.callback(event);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Disabled means disabled on the server too: the kick must not mint a
|
|
61
|
+
* pending login and a session for a console nothing is serving.
|
|
62
|
+
*/ assertEnabled() {
|
|
63
|
+
if (!this.options.enabled) throw new NotFoundError();
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
_ts_decorate([
|
|
67
|
+
DGet("/login/start", []),
|
|
68
|
+
_ts_param(0, DContext()),
|
|
69
|
+
_ts_metadata("design:type", Function),
|
|
70
|
+
_ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
|
|
71
|
+
_ts_metadata("design:returntype", Promise)
|
|
72
|
+
], AdminController.prototype, "login", null);
|
|
73
|
+
_ts_decorate([
|
|
74
|
+
DGet("/callback", []),
|
|
75
|
+
_ts_param(0, DContext()),
|
|
76
|
+
_ts_metadata("design:type", Function),
|
|
77
|
+
_ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
|
|
78
|
+
_ts_metadata("design:returntype", Promise)
|
|
79
|
+
], AdminController.prototype, "callback", null);
|
|
80
|
+
AdminController = _ts_decorate([
|
|
81
|
+
DController(`/${ADMIN_CONSOLE_SEGMENT}`),
|
|
82
|
+
_ts_metadata("design:type", Function),
|
|
83
|
+
_ts_metadata("design:paramtypes", [typeof AdminControllerContext === "undefined" ? Object : AdminControllerContext])
|
|
84
|
+
], AdminController);
|
|
85
|
+
//#endregion
|
|
86
|
+
export { AdminController };
|
|
87
|
+
|
|
88
|
+
//# sourceMappingURL=module.mjs.map
|