@authup/server-core 1.0.0-beta.41 → 1.0.0-beta.42
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/cache/module.mjs.map +1 -1
- package/dist/adapters/database/data-source/options/module.mjs.map +1 -1
- package/dist/adapters/database/data-source/singleton.mjs.map +1 -1
- package/dist/adapters/database/domains/client/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/client/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/client-permission/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/client-permission/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/client-role/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/client-role/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/client-scope/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/client-scope/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider/repository.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-account/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-account/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-attribute/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-role-mapping/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/key/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/permission/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/permission/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/permission-policy/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/policy/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/policy/repository.mjs.map +1 -1
- package/dist/adapters/database/domains/policy/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/policy-attribute/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/policy-attribute/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/realm/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/realm/repository.mjs.map +1 -1
- package/dist/adapters/database/domains/realm/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/robot/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/robot/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/robot-permission/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/robot-permission/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/robot-role/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/robot-role/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/role/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/role/repository.mjs.map +1 -1
- package/dist/adapters/database/domains/role/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/role-attribute/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/role-attribute/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/role-permission/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/role-permission/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/scope/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/scope/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/session/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/user/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/user/repository.mjs.map +1 -1
- package/dist/adapters/database/domains/user/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/user-attribute/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/user-attribute/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/user-permission/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/user-permission/subscriber.mjs.map +1 -1
- package/dist/adapters/database/domains/user-role/entity.mjs.map +1 -1
- package/dist/adapters/database/domains/user-role/subscriber.mjs.map +1 -1
- package/dist/adapters/database/errors/conflict.d.ts +2 -2
- package/dist/adapters/database/errors/conflict.d.ts.map +1 -1
- package/dist/adapters/database/errors/conflict.mjs +6 -3
- package/dist/adapters/database/errors/conflict.mjs.map +1 -1
- package/dist/adapters/database/event-publisher/module.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/adapter.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/repository.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs.map +1 -1
- package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs.map +1 -1
- package/dist/adapters/database/helpers/is-supported.mjs.map +1 -1
- package/dist/adapters/database/logger/module.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1673449341125-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1689597906910-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1718790373914-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1722673916392-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1740991051622-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1766830857009-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/mysql/1774800953474-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1673449341125-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1689597906910-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1718790373914-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1722673916392-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1740991051622-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1766830857009-Default.mjs.map +1 -1
- package/dist/adapters/database/migrations/postgres/1774800953474-Default.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/authorization/module.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs +2 -2
- package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs +2 -2
- package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/identity.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs +4 -4
- package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs +4 -4
- package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs.map +1 -1
- package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/client/module.mjs +10 -6
- package/dist/adapters/http/controllers/entities/client/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client-permission/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client-permission/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client-role/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client-role/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client-scope/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/client-scope/utils/validator.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/identity-provide-role/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +19 -17
- package/dist/adapters/http/controllers/entities/identity-provider/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/permission/module.d.ts +3 -10
- package/dist/adapters/http/controllers/entities/permission/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/permission/module.mjs +16 -49
- package/dist/adapters/http/controllers/entities/permission/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/permission-policy/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/policy/module.d.ts +3 -7
- package/dist/adapters/http/controllers/entities/policy/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/policy/module.mjs +16 -39
- package/dist/adapters/http/controllers/entities/policy/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/policy/utils/attributes-validator.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/policy/utils/validation.mjs.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 +1 -1
- package/dist/adapters/http/controllers/entities/realm/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/robot/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/robot/module.mjs +11 -7
- package/dist/adapters/http/controllers/entities/robot/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/robot-permission/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/robot-role/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/robot-role/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/role/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/role-attribute/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/role-permission/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/role-permission/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/scope/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/entities/user/module.mjs +7 -3
- package/dist/adapters/http/controllers/entities/user/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user-attribute/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user-permission/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user-permission/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user-role/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/entities/user-role/utils/validation.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/activate/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/activate/validator.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/authorize/module.mjs +2 -2
- package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/jwks/handlers/read.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs +3 -4
- package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/jwks/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/jwks/module.mjs +3 -4
- package/dist/adapters/http/controllers/workflows/jwks/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/openid/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/password-reset/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/register/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/status/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/token/module.d.ts.map +1 -1
- package/dist/adapters/http/controllers/workflows/token/module.mjs +6 -6
- package/dist/adapters/http/controllers/workflows/token/module.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/token/utils/extract.mjs.map +1 -1
- package/dist/adapters/http/controllers/workflows/token/utils/validator.mjs.map +1 -1
- package/dist/adapters/http/index.mjs +4 -1
- package/dist/adapters/http/middleware/built-in/assets.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/authorization/factory.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/authorization/module.mjs +2 -2
- package/dist/adapters/http/middleware/built-in/authorization/module.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/basic.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/cors.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/error.mjs +5 -3
- package/dist/adapters/http/middleware/built-in/error.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/index.d.ts +1 -0
- package/dist/adapters/http/middleware/built-in/index.d.ts.map +1 -1
- package/dist/adapters/http/middleware/built-in/index.mjs +4 -1
- package/dist/adapters/http/middleware/built-in/loggedin/module.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/loggedin/user.mjs +1 -1
- package/dist/adapters/http/middleware/built-in/loggedin/user.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/logger.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/prometheus.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/rate-limit.mjs.map +1 -1
- package/dist/adapters/http/middleware/built-in/realm-resolver/factory.d.ts +4 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/factory.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/factory.mjs +14 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/factory.mjs.map +1 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/index.d.ts +4 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/index.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/index.mjs +3 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/module.d.ts +9 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/module.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/module.mjs +26 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/module.mjs.map +1 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/types.d.ts +5 -0
- package/dist/adapters/http/middleware/built-in/realm-resolver/types.d.ts.map +1 -0
- package/dist/adapters/http/middleware/built-in/swagger.mjs.map +1 -1
- package/dist/adapters/http/middleware/index.mjs +3 -1
- package/dist/adapters/http/request/helpers/actor.d.ts +1 -1
- package/dist/adapters/http/request/helpers/actor.d.ts.map +1 -1
- package/dist/adapters/http/request/helpers/actor.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/body-realm-id.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/identity.mjs +1 -1
- package/dist/adapters/http/request/helpers/identity.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/index.d.ts +1 -0
- package/dist/adapters/http/request/helpers/index.d.ts.map +1 -1
- package/dist/adapters/http/request/helpers/index.mjs +2 -1
- package/dist/adapters/http/request/helpers/locations.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/param-id.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/realm-id.d.ts +5 -0
- package/dist/adapters/http/request/helpers/realm-id.d.ts.map +1 -0
- package/dist/adapters/http/request/helpers/realm-id.mjs +19 -0
- package/dist/adapters/http/request/helpers/realm-id.mjs.map +1 -0
- package/dist/adapters/http/request/helpers/scopes.mjs.map +1 -1
- package/dist/adapters/http/request/helpers/token.mjs.map +1 -1
- package/dist/adapters/http/request/index.mjs +2 -1
- package/dist/adapters/http/request/permission/helper.mjs.map +1 -1
- package/dist/adapters/http/request/permission/module.mjs.map +1 -1
- package/dist/adapters/shared/ldap/factory.mjs.map +1 -1
- package/dist/adapters/shared/ldap/module.mjs.map +1 -1
- package/dist/app/builder.mjs.map +1 -1
- package/dist/app/factory.mjs.map +1 -1
- package/dist/app/modules/authentication/constants.mjs.map +1 -1
- package/dist/app/modules/authentication/module.mjs.map +1 -1
- package/dist/app/modules/authentication/repositories/session.mjs.map +1 -1
- package/dist/app/modules/cache/constants.mjs.map +1 -1
- package/dist/app/modules/cache/module.mjs.map +1 -1
- package/dist/app/modules/components/module.mjs.map +1 -1
- package/dist/app/modules/config/constants.mjs.map +1 -1
- package/dist/app/modules/config/module.mjs.map +1 -1
- package/dist/app/modules/config/normalize.mjs.map +1 -1
- package/dist/app/modules/config/parse.mjs.map +1 -1
- package/dist/app/modules/config/read/env.mjs.map +1 -1
- package/dist/app/modules/config/read/fs.mjs.map +1 -1
- package/dist/app/modules/config/read/module.mjs.map +1 -1
- package/dist/app/modules/constants.mjs.map +1 -1
- package/dist/app/modules/database/constants.mjs.map +1 -1
- package/dist/app/modules/database/module.mjs.map +1 -1
- package/dist/app/modules/database/repositories/bindings.mjs.map +1 -1
- package/dist/app/modules/database/repositories/client/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/client/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/client/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/client-permission/repository.d.ts +1 -1
- package/dist/app/modules/database/repositories/client-permission/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/client-permission/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/client-role/repository.d.ts +1 -1
- package/dist/app/modules/database/repositories/client-role/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/client-role/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/client-scope/repository.d.ts +1 -1
- package/dist/app/modules/database/repositories/client-scope/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/client-scope/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/helpers.mjs.map +1 -1
- package/dist/app/modules/database/repositories/identity-provider/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/identity-provider/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/identity-provider/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/permission/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/permission/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/permission/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/permission-policy/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/permission-policy/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/permission-policy/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/permission-provider/module.mjs.map +1 -1
- package/dist/app/modules/database/repositories/policy/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/policy/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/policy/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/realm/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/realm/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/realm/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/robot/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/robot/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/robot/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/robot-permission/repository.d.ts +1 -1
- package/dist/app/modules/database/repositories/robot-permission/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/robot-permission/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/robot-role/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/robot-role/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/robot-role/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/role/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/role/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/role/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/role-attribute/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/role-attribute/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/role-attribute/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/role-permission/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/role-permission/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/role-permission/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/scope/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/scope/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/scope/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/user/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/user/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/user/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/user-attribute/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/user-attribute/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/user-attribute/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/user-permission/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/user-permission/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/user-permission/repository.mjs.map +1 -1
- package/dist/app/modules/database/repositories/user-role/repository.d.ts +2 -1
- package/dist/app/modules/database/repositories/user-role/repository.d.ts.map +1 -1
- package/dist/app/modules/database/repositories/user-role/repository.mjs.map +1 -1
- package/dist/app/modules/http/constants.mjs.map +1 -1
- package/dist/app/modules/http/module.mjs.map +1 -1
- package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
- package/dist/app/modules/http/modules/controller.mjs +27 -19
- package/dist/app/modules/http/modules/controller.mjs.map +1 -1
- package/dist/app/modules/http/modules/middleware.d.ts +1 -0
- package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
- package/dist/app/modules/http/modules/middleware.mjs +10 -0
- package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
- package/dist/app/modules/identity/constants.mjs.map +1 -1
- package/dist/app/modules/identity/module.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/client.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/provider/account/module.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/provider/mapper/role.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/robot.mjs.map +1 -1
- package/dist/app/modules/identity/repositories/user.mjs.map +1 -1
- package/dist/app/modules/ldap/constants.mjs.map +1 -1
- package/dist/app/modules/ldap/module.mjs.map +1 -1
- package/dist/app/modules/logger/constants.mjs.map +1 -1
- package/dist/app/modules/logger/module.mjs.map +1 -1
- package/dist/app/modules/mail/adapter/smtp/module.mjs.map +1 -1
- package/dist/app/modules/mail/adapter/smtp/smtp.mjs.map +1 -1
- package/dist/app/modules/mail/adapter/void.mjs.map +1 -1
- package/dist/app/modules/mail/constants.mjs.map +1 -1
- package/dist/app/modules/mail/module.mjs.map +1 -1
- package/dist/app/modules/oauth2/constants.mjs.map +1 -1
- package/dist/app/modules/oauth2/module.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/authorize/code/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/authorize/state/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/client/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/key/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/scope/repository.mjs.map +1 -1
- package/dist/app/modules/oauth2/repositories/token/repository.mjs.map +1 -1
- package/dist/app/modules/provisioning/module.mjs.map +1 -1
- package/dist/app/modules/provisioning/sources/composite/module.mjs.map +1 -1
- package/dist/app/modules/provisioning/sources/default/module.mjs.map +1 -1
- package/dist/app/modules/provisioning/sources/file/module.mjs.map +1 -1
- package/dist/app/modules/runtime/module.mjs.map +1 -1
- package/dist/cli/commands/healthcheck.mjs.map +1 -1
- package/dist/cli/commands/migration.mjs.map +1 -1
- package/dist/cli/commands/reset.mjs.map +1 -1
- package/dist/cli/commands/start.mjs.map +1 -1
- package/dist/cli/index.mjs.map +1 -1
- package/dist/cli/module.mjs.map +1 -1
- package/dist/components/database/unique-entries/factory.mjs.map +1 -1
- package/dist/components/database/unique-entries/module.mjs.map +1 -1
- package/dist/components/oauth2-cleaner/module.mjs.map +1 -1
- package/dist/core/authentication/base.mjs.map +1 -1
- package/dist/core/authentication/credential/entities/client/module.mjs.map +1 -1
- package/dist/core/authentication/credential/entities/robot/module.mjs.map +1 -1
- package/dist/core/authentication/credential/entities/user/module.mjs.map +1 -1
- package/dist/core/authentication/entities/client/module.d.ts.map +1 -1
- package/dist/core/authentication/entities/client/module.mjs +7 -5
- package/dist/core/authentication/entities/client/module.mjs.map +1 -1
- package/dist/core/authentication/entities/robot/module.d.ts.map +1 -1
- package/dist/core/authentication/entities/robot/module.mjs +5 -4
- package/dist/core/authentication/entities/robot/module.mjs.map +1 -1
- package/dist/core/authentication/entities/user/module.d.ts.map +1 -1
- package/dist/core/authentication/entities/user/module.mjs +5 -4
- package/dist/core/authentication/entities/user/module.mjs.map +1 -1
- package/dist/core/authentication/module.mjs.map +1 -1
- package/dist/core/authentication/session/module.mjs.map +1 -1
- package/dist/core/entities/client/service.d.ts +2 -3
- package/dist/core/entities/client/service.d.ts.map +1 -1
- package/dist/core/entities/client/service.mjs +8 -8
- package/dist/core/entities/client/service.mjs.map +1 -1
- package/dist/core/entities/client/types.d.ts +1 -2
- package/dist/core/entities/client/types.d.ts.map +1 -1
- package/dist/core/entities/client-permission/service.d.ts +2 -3
- package/dist/core/entities/client-permission/service.d.ts.map +1 -1
- package/dist/core/entities/client-permission/service.mjs +8 -7
- package/dist/core/entities/client-permission/service.mjs.map +1 -1
- package/dist/core/entities/client-permission/types.d.ts +1 -2
- package/dist/core/entities/client-permission/types.d.ts.map +1 -1
- package/dist/core/entities/client-role/service.d.ts +2 -3
- package/dist/core/entities/client-role/service.d.ts.map +1 -1
- package/dist/core/entities/client-role/service.mjs +9 -8
- package/dist/core/entities/client-role/service.mjs.map +1 -1
- package/dist/core/entities/client-role/types.d.ts +1 -2
- package/dist/core/entities/client-role/types.d.ts.map +1 -1
- package/dist/core/entities/client-scope/service.d.ts +2 -3
- package/dist/core/entities/client-scope/service.d.ts.map +1 -1
- package/dist/core/entities/client-scope/service.mjs +7 -6
- package/dist/core/entities/client-scope/service.mjs.map +1 -1
- package/dist/core/entities/client-scope/types.d.ts +1 -2
- package/dist/core/entities/client-scope/types.d.ts.map +1 -1
- package/dist/core/entities/identity-provider/types.d.ts +1 -1
- package/dist/core/entities/identity-provider/types.d.ts.map +1 -1
- package/dist/core/entities/identity-provider-role-mapping/service.d.ts +2 -3
- package/dist/core/entities/identity-provider-role-mapping/service.d.ts.map +1 -1
- package/dist/core/entities/identity-provider-role-mapping/service.mjs +10 -9
- package/dist/core/entities/identity-provider-role-mapping/service.mjs.map +1 -1
- package/dist/core/entities/identity-provider-role-mapping/types.d.ts +1 -2
- package/dist/core/entities/identity-provider-role-mapping/types.d.ts.map +1 -1
- package/dist/core/entities/index.d.ts +0 -3
- package/dist/core/entities/index.d.ts.map +1 -1
- package/dist/core/entities/index.mjs +1 -2
- package/dist/core/entities/permission/service.d.ts +2 -3
- package/dist/core/entities/permission/service.d.ts.map +1 -1
- package/dist/core/entities/permission/service.mjs +8 -9
- package/dist/core/entities/permission/service.mjs.map +1 -1
- package/dist/core/entities/permission/types.d.ts +1 -2
- package/dist/core/entities/permission/types.d.ts.map +1 -1
- package/dist/core/entities/permission-policy/service.d.ts +2 -3
- package/dist/core/entities/permission-policy/service.d.ts.map +1 -1
- package/dist/core/entities/permission-policy/service.mjs +7 -6
- package/dist/core/entities/permission-policy/service.mjs.map +1 -1
- package/dist/core/entities/permission-policy/types.d.ts +1 -2
- package/dist/core/entities/permission-policy/types.d.ts.map +1 -1
- package/dist/core/entities/policy/attributes-validator.mjs.map +1 -1
- package/dist/core/entities/policy/service.d.ts +2 -3
- package/dist/core/entities/policy/service.d.ts.map +1 -1
- package/dist/core/entities/policy/service.mjs +8 -8
- package/dist/core/entities/policy/service.mjs.map +1 -1
- package/dist/core/entities/policy/types.d.ts +1 -2
- package/dist/core/entities/policy/types.d.ts.map +1 -1
- package/dist/core/entities/realm/service.d.ts +2 -3
- package/dist/core/entities/realm/service.d.ts.map +1 -1
- package/dist/core/entities/realm/service.mjs +8 -8
- package/dist/core/entities/realm/service.mjs.map +1 -1
- package/dist/core/entities/realm/types.d.ts +1 -2
- package/dist/core/entities/realm/types.d.ts.map +1 -1
- package/dist/core/entities/robot/service.d.ts +2 -3
- package/dist/core/entities/robot/service.d.ts.map +1 -1
- package/dist/core/entities/robot/service.mjs +8 -8
- package/dist/core/entities/robot/service.mjs.map +1 -1
- package/dist/core/entities/robot/types.d.ts +1 -2
- package/dist/core/entities/robot/types.d.ts.map +1 -1
- package/dist/core/entities/robot-permission/service.d.ts +2 -3
- package/dist/core/entities/robot-permission/service.d.ts.map +1 -1
- package/dist/core/entities/robot-permission/service.mjs +8 -7
- package/dist/core/entities/robot-permission/service.mjs.map +1 -1
- package/dist/core/entities/robot-permission/types.d.ts +1 -2
- package/dist/core/entities/robot-permission/types.d.ts.map +1 -1
- package/dist/core/entities/robot-role/service.d.ts +2 -3
- package/dist/core/entities/robot-role/service.d.ts.map +1 -1
- package/dist/core/entities/robot-role/service.mjs +9 -8
- package/dist/core/entities/robot-role/service.mjs.map +1 -1
- package/dist/core/entities/robot-role/types.d.ts +1 -2
- package/dist/core/entities/robot-role/types.d.ts.map +1 -1
- package/dist/core/entities/role/service.d.ts +2 -3
- package/dist/core/entities/role/service.d.ts.map +1 -1
- package/dist/core/entities/role/service.mjs +8 -8
- package/dist/core/entities/role/service.mjs.map +1 -1
- package/dist/core/entities/role/types.d.ts +1 -2
- package/dist/core/entities/role/types.d.ts.map +1 -1
- package/dist/core/entities/role-attribute/service.d.ts +2 -3
- package/dist/core/entities/role-attribute/service.d.ts.map +1 -1
- package/dist/core/entities/role-attribute/service.mjs +5 -5
- package/dist/core/entities/role-attribute/service.mjs.map +1 -1
- package/dist/core/entities/role-attribute/types.d.ts +1 -2
- package/dist/core/entities/role-attribute/types.d.ts.map +1 -1
- package/dist/core/entities/role-permission/service.d.ts +2 -3
- package/dist/core/entities/role-permission/service.d.ts.map +1 -1
- package/dist/core/entities/role-permission/service.mjs +8 -7
- package/dist/core/entities/role-permission/service.mjs.map +1 -1
- package/dist/core/entities/role-permission/types.d.ts +1 -2
- package/dist/core/entities/role-permission/types.d.ts.map +1 -1
- package/dist/core/entities/scope/service.d.ts +2 -3
- package/dist/core/entities/scope/service.d.ts.map +1 -1
- package/dist/core/entities/scope/service.mjs +8 -8
- package/dist/core/entities/scope/service.mjs.map +1 -1
- package/dist/core/entities/scope/types.d.ts +1 -2
- package/dist/core/entities/scope/types.d.ts.map +1 -1
- package/dist/core/entities/user/service.d.ts +2 -3
- package/dist/core/entities/user/service.d.ts.map +1 -1
- package/dist/core/entities/user/service.mjs +8 -8
- package/dist/core/entities/user/service.mjs.map +1 -1
- package/dist/core/entities/user/types.d.ts +1 -2
- package/dist/core/entities/user/types.d.ts.map +1 -1
- package/dist/core/entities/user-attribute/service.d.ts +2 -3
- package/dist/core/entities/user-attribute/service.d.ts.map +1 -1
- package/dist/core/entities/user-attribute/service.mjs +8 -8
- package/dist/core/entities/user-attribute/service.mjs.map +1 -1
- package/dist/core/entities/user-attribute/types.d.ts +1 -2
- package/dist/core/entities/user-attribute/types.d.ts.map +1 -1
- package/dist/core/entities/user-permission/service.d.ts +2 -3
- package/dist/core/entities/user-permission/service.d.ts.map +1 -1
- package/dist/core/entities/user-permission/service.mjs +8 -7
- package/dist/core/entities/user-permission/service.mjs.map +1 -1
- package/dist/core/entities/user-permission/types.d.ts +1 -2
- package/dist/core/entities/user-permission/types.d.ts.map +1 -1
- package/dist/core/entities/user-role/service.d.ts +2 -3
- package/dist/core/entities/user-role/service.d.ts.map +1 -1
- package/dist/core/entities/user-role/service.mjs +9 -8
- package/dist/core/entities/user-role/service.mjs.map +1 -1
- package/dist/core/entities/user-role/types.d.ts +1 -2
- package/dist/core/entities/user-role/types.d.ts.map +1 -1
- package/dist/core/identity/index.d.ts +1 -0
- package/dist/core/identity/index.d.ts.map +1 -1
- package/dist/core/identity/index.mjs +4 -1
- package/dist/core/identity/password-recovery/check.d.ts +7 -0
- package/dist/core/identity/password-recovery/check.d.ts.map +1 -0
- package/dist/core/identity/password-recovery/check.mjs +24 -0
- package/dist/core/identity/password-recovery/check.mjs.map +1 -0
- package/dist/core/identity/password-recovery/disabled.d.ts +6 -0
- package/dist/core/identity/password-recovery/disabled.d.ts.map +1 -0
- package/dist/core/identity/password-recovery/disabled.mjs +16 -0
- package/dist/core/identity/password-recovery/disabled.mjs.map +1 -0
- package/dist/core/identity/password-recovery/email-verification-required.d.ts +6 -0
- package/dist/core/identity/password-recovery/email-verification-required.d.ts.map +1 -0
- package/dist/core/identity/password-recovery/email-verification-required.mjs +16 -0
- package/dist/core/identity/password-recovery/email-verification-required.mjs.map +1 -0
- package/dist/core/identity/password-recovery/service.d.ts.map +1 -1
- package/dist/core/identity/password-recovery/service.mjs +10 -7
- package/dist/core/identity/password-recovery/service.mjs.map +1 -1
- package/dist/core/identity/password-recovery/token-expired.d.ts +6 -0
- package/dist/core/identity/password-recovery/token-expired.d.ts.map +1 -0
- package/dist/core/identity/password-recovery/token-expired.mjs +16 -0
- package/dist/core/identity/password-recovery/token-expired.mjs.map +1 -0
- package/dist/core/identity/permission/checker/index.d.ts +3 -0
- package/dist/core/identity/permission/checker/index.d.ts.map +1 -0
- package/dist/core/identity/permission/checker/index.mjs +2 -0
- package/dist/core/identity/permission/checker/service.d.ts +10 -0
- package/dist/core/identity/permission/checker/service.d.ts.map +1 -0
- package/dist/core/identity/permission/checker/service.mjs +55 -0
- package/dist/core/identity/permission/checker/service.mjs.map +1 -0
- package/dist/core/identity/permission/checker/types.d.ts +42 -0
- package/dist/core/identity/permission/checker/types.d.ts.map +1 -0
- package/dist/core/identity/permission/identity-policy-data.d.ts +4 -0
- package/dist/core/identity/permission/identity-policy-data.d.ts.map +1 -0
- package/dist/core/identity/permission/identity-policy-data.mjs +23 -0
- package/dist/core/identity/permission/identity-policy-data.mjs.map +1 -0
- package/dist/core/identity/permission/index.d.ts +1 -0
- package/dist/core/identity/permission/index.d.ts.map +1 -1
- package/dist/core/identity/permission/index.mjs +3 -1
- package/dist/core/identity/permission/module.mjs.map +1 -1
- package/dist/core/identity/policy/checker/index.d.ts +3 -0
- package/dist/core/identity/policy/checker/index.d.ts.map +1 -0
- package/dist/core/identity/policy/checker/index.mjs +2 -0
- package/dist/core/identity/policy/checker/service.d.ts +10 -0
- package/dist/core/identity/policy/checker/service.d.ts.map +1 -0
- package/dist/core/identity/policy/checker/service.mjs +46 -0
- package/dist/core/identity/policy/checker/service.mjs.map +1 -0
- package/dist/core/identity/policy/checker/types.d.ts +40 -0
- package/dist/core/identity/policy/checker/types.d.ts.map +1 -0
- package/dist/core/identity/policy/index.d.ts +2 -0
- package/dist/core/identity/policy/index.d.ts.map +1 -0
- package/dist/core/identity/policy/index.mjs +3 -0
- package/dist/core/identity/provider/account/module.d.ts.map +1 -1
- package/dist/core/identity/provider/account/module.mjs +2 -2
- package/dist/core/identity/provider/account/module.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/constants.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/factory.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/presets/facebook.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/presets/github.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/presets/google.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/presets/instagram.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/presets/paypal.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/ldap/collection.d.ts.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/ldap/collection.mjs +3 -2
- package/dist/core/identity/provider/authentication/protocols/ldap/collection.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/ldap/module.d.ts.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs +7 -4
- package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/oauth2/module.mjs.map +1 -1
- package/dist/core/identity/provider/authentication/protocols/open-id/module.mjs.map +1 -1
- package/dist/core/identity/provider/mapper/attributes/module.mjs.map +1 -1
- package/dist/core/identity/provider/mapper/base.mjs.map +1 -1
- package/dist/core/identity/provider/mapper/permission/module.mjs.map +1 -1
- package/dist/core/identity/provider/mapper/role/module.mjs.map +1 -1
- package/dist/core/identity/registration/check.d.ts +3 -0
- package/dist/core/identity/registration/check.d.ts.map +1 -0
- package/dist/core/identity/registration/check.mjs +12 -0
- package/dist/core/identity/registration/check.mjs.map +1 -0
- package/dist/core/identity/registration/error.d.ts +6 -0
- package/dist/core/identity/registration/error.d.ts.map +1 -0
- package/dist/core/identity/registration/error.mjs +16 -0
- package/dist/core/identity/registration/error.mjs.map +1 -0
- package/dist/core/identity/registration/service.d.ts.map +1 -1
- package/dist/core/identity/registration/service.mjs +4 -3
- package/dist/core/identity/registration/service.mjs.map +1 -1
- package/dist/core/identity/resolver/entities/ldap/module.mjs.map +1 -1
- package/dist/core/identity/resolver/module.mjs.map +1 -1
- package/dist/core/identity/role/module.mjs.map +1 -1
- package/dist/core/index.mjs +5 -4
- package/dist/core/oauth2/authorization/code/issuer/module.mjs.map +1 -1
- package/dist/core/oauth2/authorization/code/verifier/module.mjs +8 -8
- package/dist/core/oauth2/authorization/code/verifier/module.mjs.map +1 -1
- package/dist/core/oauth2/authorization/code-request/validator.mjs +2 -2
- package/dist/core/oauth2/authorization/code-request/validator.mjs.map +1 -1
- package/dist/core/oauth2/authorization/code-request/verifier/module.d.ts.map +1 -1
- package/dist/core/oauth2/authorization/code-request/verifier/module.mjs +8 -8
- package/dist/core/oauth2/authorization/code-request/verifier/module.mjs.map +1 -1
- package/dist/core/oauth2/authorization/helpers.mjs.map +1 -1
- package/dist/core/oauth2/authorization/module.d.ts.map +1 -1
- package/dist/core/oauth2/authorization/module.mjs +4 -4
- package/dist/core/oauth2/authorization/module.mjs.map +1 -1
- package/dist/core/oauth2/authorization/state/module.mjs +4 -4
- package/dist/core/oauth2/authorization/state/module.mjs.map +1 -1
- package/dist/core/oauth2/client/authenticator.mjs +6 -6
- package/dist/core/oauth2/client/authenticator.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/authorize.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/base.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/client-credentials.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/identity.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/password.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/refresh-token.mjs.map +1 -1
- package/dist/core/oauth2/grant-types/robot-credentials.mjs.map +1 -1
- package/dist/core/oauth2/helpers/{erorr.d.ts → error.d.ts} +1 -1
- package/dist/core/oauth2/helpers/error.d.ts.map +1 -0
- package/dist/core/oauth2/helpers/{erorr.mjs → error.mjs} +6 -7
- package/dist/core/oauth2/helpers/error.mjs.map +1 -0
- package/dist/core/oauth2/helpers/index.d.ts +1 -1
- package/dist/core/oauth2/helpers/index.mjs +1 -1
- package/dist/core/oauth2/openid/claims.mjs.map +1 -1
- package/dist/core/oauth2/response/bearer.mjs.map +1 -1
- package/dist/core/oauth2/scope/resolver.mjs.map +1 -1
- package/dist/core/oauth2/token/issuer/access/module.mjs.map +1 -1
- package/dist/core/oauth2/token/issuer/base.mjs.map +1 -1
- package/dist/core/oauth2/token/issuer/open-id/module.mjs.map +1 -1
- package/dist/core/oauth2/token/issuer/refresh/module.mjs.map +1 -1
- package/dist/core/oauth2/token/revoker/module.mjs.map +1 -1
- package/dist/core/oauth2/token/signer/module.mjs.map +1 -1
- package/dist/core/oauth2/token/verifier/module.mjs.map +1 -1
- package/dist/core/provisioning/entities/client/relations-validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/client/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/permission/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/realm/relations-validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/realm/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/robot/relations-validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/robot/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/role/relations-validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/role/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/root/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/scope/validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/user/relations-validator.mjs.map +1 -1
- package/dist/core/provisioning/entities/user/validator.mjs.map +1 -1
- package/dist/core/provisioning/strategy/normalize.mjs.map +1 -1
- package/dist/core/provisioning/strategy/validator.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/base.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/client/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/entity-resolver.d.ts +1 -1
- package/dist/core/provisioning/synchronizer/entity-resolver.d.ts.map +1 -1
- package/dist/core/provisioning/synchronizer/entity-resolver.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/junction-synchronizer.d.ts +1 -1
- package/dist/core/provisioning/synchronizer/junction-synchronizer.d.ts.map +1 -1
- package/dist/core/provisioning/synchronizer/junction-synchronizer.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/permission/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/policy/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/realm/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/robot/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/role/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/root/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/scope/module.mjs.map +1 -1
- package/dist/core/provisioning/synchronizer/user/module.mjs.map +1 -1
- package/dist/core/security/policy/engine.mjs.map +1 -1
- package/dist/core/security/policy/evaluator.mjs.map +1 -1
- package/dist/index.mjs +4 -1
- package/dist/path.mjs.map +1 -1
- package/dist/swagger.json +3125 -1269
- package/dist/ui/client/.vite/ssr-manifest.json +30 -35
- package/dist/ui/client/assets/index-BdPtpN2t.js +66 -0
- package/dist/ui/client/index.html +1 -1
- package/dist/ui/server/server.js +24261 -972
- package/dist/utils/error.d.ts +13 -0
- package/dist/utils/error.d.ts.map +1 -1
- package/dist/utils/error.mjs +26 -23
- package/dist/utils/error.mjs.map +1 -1
- package/dist/utils/host.mjs.map +1 -1
- package/dist/utils/self-id.mjs.map +1 -1
- package/dist/utils/url.mjs.map +1 -1
- package/package.json +26 -27
- package/dist/core/entities/actor/index.d.ts +0 -2
- package/dist/core/entities/actor/index.d.ts.map +0 -1
- package/dist/core/entities/actor/types.d.ts +0 -7
- package/dist/core/entities/actor/types.d.ts.map +0 -1
- package/dist/core/entities/service.d.ts +0 -6
- package/dist/core/entities/service.d.ts.map +0 -1
- package/dist/core/entities/service.mjs +0 -21
- package/dist/core/entities/service.mjs.map +0 -1
- package/dist/core/entities/types.d.ts +0 -22
- package/dist/core/entities/types.d.ts.map +0 -1
- package/dist/core/oauth2/helpers/erorr.d.ts.map +0 -1
- package/dist/core/oauth2/helpers/erorr.mjs.map +0 -1
- package/dist/ui/client/assets/index-DJBdH-x_.js +0 -64
- /package/dist/{core/entities/actor → adapters/http/middleware/built-in/realm-resolver}/types.mjs +0 -0
- /package/dist/core/{entities → identity/permission/checker}/types.mjs +0 -0
- /package/dist/core/{entities/actor/index.mjs → identity/policy/checker/types.mjs} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit.mjs","names":["rateLimit","merge","useRequestIdentity","registerRateLimitMiddleware","router","input","options","max","event","identity","type","windowMs","use"],"sources":["../../../../../src/adapters/http/middleware/built-in/rate-limit.ts"],"sourcesContent":["/*\n * Copyright (c) 2023.\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 type { OptionsInput } from '@routup/rate-limit';\nimport { rateLimit } from '@routup/rate-limit';\nimport type { Router } from 'routup';\nimport { merge } from 'smob';\nimport { useRequestIdentity } from '../../request/index.ts';\n\nexport function registerRateLimitMiddleware(router: Router, input?: OptionsInput) {\n let options : OptionsInput = {\n max(event) {\n const identity = useRequestIdentity(event);\n if (!identity) {\n return 60 * 20; // 20 req. p. sec\n }\n\n switch (identity.type) {\n case 'robot':\n case 'client': {\n return 60 * 5_000; // 1000 req p. sec\n }\n case 'user':\n default: {\n return 60 * 100; // 100 req p. sec\n }\n }\n },\n windowMs: 60 * 1000, // 60 sec\n };\n\n options = merge(input || {}, options);\n\n router.use(rateLimit(options));\n}\n"],"mappings":";;;;;AAaA,SAAgBG,4BAA4BC,QAAgBC,OAAoB;CAC5E,IAAIC,UAAyB;EACzBC,IAAIC,OAAK;GACL,MAAMC,WAAWP,mBAAmBM,
|
|
1
|
+
{"version":3,"file":"rate-limit.mjs","names":["rateLimit","merge","useRequestIdentity","registerRateLimitMiddleware","router","input","options","max","event","identity","type","windowMs","use"],"sources":["../../../../../src/adapters/http/middleware/built-in/rate-limit.ts"],"sourcesContent":["/*\n * Copyright (c) 2023.\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 type { OptionsInput } from '@routup/rate-limit';\nimport { rateLimit } from '@routup/rate-limit';\nimport type { Router } from 'routup';\nimport { merge } from 'smob';\nimport { useRequestIdentity } from '../../request/index.ts';\n\nexport function registerRateLimitMiddleware(router: Router, input?: OptionsInput) {\n let options : OptionsInput = {\n max(event) {\n const identity = useRequestIdentity(event);\n if (!identity) {\n return 60 * 20; // 20 req. p. sec\n }\n\n switch (identity.type) {\n case 'robot':\n case 'client': {\n return 60 * 5_000; // 1000 req p. sec\n }\n case 'user':\n default: {\n return 60 * 100; // 100 req p. sec\n }\n }\n },\n windowMs: 60 * 1000, // 60 sec\n };\n\n options = merge(input || {}, options);\n\n router.use(rateLimit(options));\n}\n"],"mappings":";;;;;AAaA,SAAgBG,4BAA4BC,QAAgBC,OAAoB;CAC5E,IAAIC,UAAyB;EACzBC,IAAIC,OAAK;GACL,MAAMC,WAAWP,mBAAmBM,KAAAA;GACpC,IAAI,CAACC,UACD,OAAO;GAGX,QAAQA,SAASC,MAAjB;IACI,KAAK;IACL,KAAK,UACD,OAAO,KAAK;IAGhB,SACI,OAAO;GAEf;EACJ;EACAC,UAAU,KAAK;CACnB;CAEAL,UAAUL,MAAMI,SAAS,CAAC,GAAGC,OAAAA;CAE7BF,OAAOQ,IAAIZ,UAAUM,OAAAA,CAAAA;AACzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/middleware/built-in/realm-resolver/factory.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAEjE,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,8BAA8B,GAAG,OAAO,CAO1F"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RealmResolverMiddleware } from "./module.mjs";
|
|
2
|
+
import { defineCoreHandler } from "routup";
|
|
3
|
+
//#region src/adapters/http/middleware/built-in/realm-resolver/factory.ts
|
|
4
|
+
function createRealmResolverMiddleware(ctx) {
|
|
5
|
+
const middleware = new RealmResolverMiddleware(ctx);
|
|
6
|
+
return defineCoreHandler(async (event) => {
|
|
7
|
+
await middleware.run(event);
|
|
8
|
+
return event.next();
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { createRealmResolverMiddleware };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=factory.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.mjs","names":["defineCoreHandler","RealmResolverMiddleware","createRealmResolverMiddleware","ctx","middleware","event","run","next"],"sources":["../../../../../../src/adapters/http/middleware/built-in/realm-resolver/factory.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 { defineCoreHandler } from 'routup';\nimport type { Handler } from 'routup';\nimport { RealmResolverMiddleware } from './module.ts';\nimport type { RealmResolverMiddlewareContext } from './types.ts';\n\nexport function createRealmResolverMiddleware(ctx: RealmResolverMiddlewareContext): Handler {\n const middleware = new RealmResolverMiddleware(ctx);\n\n return defineCoreHandler(async (event) => {\n await middleware.run(event);\n return event.next();\n });\n}\n"],"mappings":";;;AAYA,SAAgBE,8BAA8BC,KAAmC;CAC7E,MAAMC,aAAa,IAAIH,wBAAwBE,GAAAA;CAE/C,OAAOH,kBAAkB,OAAOK,UAAAA;EAC5B,MAAMD,WAAWE,IAAID,KAAAA;EACrB,OAAOA,MAAME,KAAI;CACrB,CAAA;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/middleware/built-in/realm-resolver/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IRoutupEvent } from 'routup';
|
|
2
|
+
import type { IRealmRepository } from '../../../../../core/index.ts';
|
|
3
|
+
import type { RealmResolverMiddlewareContext } from './types.ts';
|
|
4
|
+
export declare class RealmResolverMiddleware {
|
|
5
|
+
protected realmRepository: IRealmRepository;
|
|
6
|
+
constructor(ctx: RealmResolverMiddlewareContext);
|
|
7
|
+
run(event: IRoutupEvent): Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/middleware/built-in/realm-resolver/module.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAEjE,qBAAa,uBAAuB;IAChC,SAAS,CAAC,eAAe,EAAE,gBAAgB,CAAC;gBAEhC,GAAG,EAAE,8BAA8B;IAIzC,GAAG,CAAC,KAAK,EAAE,YAAY;CAkBhC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { setRequestRealmID } from "../../../request/helpers/realm-id.mjs";
|
|
2
|
+
import "../../../request/index.mjs";
|
|
3
|
+
import { isUUID } from "@authup/kit";
|
|
4
|
+
import { EntityNotFoundError } from "@authup/errors";
|
|
5
|
+
//#region src/adapters/http/middleware/built-in/realm-resolver/module.ts
|
|
6
|
+
var RealmResolverMiddleware = class {
|
|
7
|
+
realmRepository;
|
|
8
|
+
constructor(ctx) {
|
|
9
|
+
this.realmRepository = ctx.realmRepository;
|
|
10
|
+
}
|
|
11
|
+
async run(event) {
|
|
12
|
+
const value = event.params.realmId;
|
|
13
|
+
if (typeof value !== "string" || !value) return;
|
|
14
|
+
if (isUUID(value)) {
|
|
15
|
+
setRequestRealmID(event, value);
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const realm = await this.realmRepository.resolve(value);
|
|
19
|
+
if (!realm) throw new EntityNotFoundError(`realm '${value}' not found`);
|
|
20
|
+
setRequestRealmID(event, realm.id);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
//#endregion
|
|
24
|
+
export { RealmResolverMiddleware };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=module.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["isUUID","EntityNotFoundError","setRequestRealmID","RealmResolverMiddleware","realmRepository","ctx","run","event","value","params","realmId","realm","resolve","id"],"sources":["../../../../../../src/adapters/http/middleware/built-in/realm-resolver/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 { isUUID } from '@authup/kit';\nimport { EntityNotFoundError } from '@authup/errors';\nimport type { IRoutupEvent } from 'routup';\nimport type { IRealmRepository } from '../../../../../core/index.ts';\nimport { setRequestRealmID } from '../../../request/index.ts';\nimport type { RealmResolverMiddlewareContext } from './types.ts';\n\nexport class RealmResolverMiddleware {\n protected realmRepository: IRealmRepository;\n\n constructor(ctx: RealmResolverMiddlewareContext) {\n this.realmRepository = ctx.realmRepository;\n }\n\n async run(event: IRoutupEvent) {\n const value = event.params.realmId;\n if (typeof value !== 'string' || !value) {\n return;\n }\n\n if (isUUID(value)) {\n setRequestRealmID(event, value);\n return;\n }\n\n const realm = await this.realmRepository.resolve(value);\n if (!realm) {\n throw new EntityNotFoundError(`realm '${value}' not found`);\n }\n\n setRequestRealmID(event, realm.id);\n }\n}\n"],"mappings":";;;;;AAcA,IAAaG,0BAAb,MAAaA;CACCC;CAEV,YAAYC,KAAqC;EAC7C,KAAKD,kBAAkBC,IAAID;CAC/B;CAEA,MAAME,IAAIC,OAAqB;EAC3B,MAAMC,QAAQD,MAAME,OAAOC;EAC3B,IAAI,OAAOF,UAAU,YAAY,CAACA,OAC9B;EAGJ,IAAIR,OAAOQ,KAAAA,GAAQ;GACfN,kBAAkBK,OAAOC,KAAAA;GACzB;EACJ;EAEA,MAAMG,QAAQ,MAAM,KAAKP,gBAAgBQ,QAAQJ,KAAAA;EACjD,IAAI,CAACG,OACD,MAAM,IAAIV,oBAAoB,UAAUO,MAAM,YAAY;EAG9DN,kBAAkBK,OAAOI,MAAME,EAAE;CACrC;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/middleware/built-in/realm-resolver/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,MAAM,8BAA8B,GAAG;IACzC,eAAe,EAAE,gBAAgB,CAAC;CACrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swagger.mjs","names":["swaggerUI","createSwaggerMiddleware","input","documentPath","options"],"sources":["../../../../../src/adapters/http/middleware/built-in/swagger.ts"],"sourcesContent":["/*\n * Copyright (c) 2023.\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 type { UIOptions as SwaggerUIOptions } from '@routup/swagger-ui';\nimport { swaggerUI } from '@routup/swagger-ui';\nimport type { Plugin } from 'routup';\n\ntype SwaggerMiddlewareOptions = SwaggerUIOptions & {\n documentPath: string,\n};\n\nexport function createSwaggerMiddleware(input: SwaggerMiddlewareOptions) : Plugin {\n const { documentPath, ...options } = input;\n\n return swaggerUI(documentPath, options);\n}\n"],"mappings":";;AAeA,SAAgBC,wBAAwBC,OAA+B;CACnE,MAAM,EAAEC,cAAc,GAAGC,YAAYF;
|
|
1
|
+
{"version":3,"file":"swagger.mjs","names":["swaggerUI","createSwaggerMiddleware","input","documentPath","options"],"sources":["../../../../../src/adapters/http/middleware/built-in/swagger.ts"],"sourcesContent":["/*\n * Copyright (c) 2023.\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 type { UIOptions as SwaggerUIOptions } from '@routup/swagger-ui';\nimport { swaggerUI } from '@routup/swagger-ui';\nimport type { Plugin } from 'routup';\n\ntype SwaggerMiddlewareOptions = SwaggerUIOptions & {\n documentPath: string,\n};\n\nexport function createSwaggerMiddleware(input: SwaggerMiddlewareOptions) : Plugin {\n const { documentPath, ...options } = input;\n\n return swaggerUI(documentPath, options);\n}\n"],"mappings":";;AAeA,SAAgBC,wBAAwBC,OAA+B;CACnE,MAAM,EAAEC,cAAc,GAAGC,YAAYF;CAErC,OAAOF,UAAUG,cAAcC,OAAAA;AACnC"}
|
|
@@ -2,6 +2,8 @@ import { AuthorizationMiddleware } from "./built-in/authorization/module.mjs";
|
|
|
2
2
|
import { createAuthorizationMiddleware } from "./built-in/authorization/factory.mjs";
|
|
3
3
|
import { ForceLoggedInMiddleware } from "./built-in/loggedin/module.mjs";
|
|
4
4
|
import { ForceUserLoggedInMiddleware } from "./built-in/loggedin/user.mjs";
|
|
5
|
+
import { RealmResolverMiddleware } from "./built-in/realm-resolver/module.mjs";
|
|
6
|
+
import { createRealmResolverMiddleware } from "./built-in/realm-resolver/factory.mjs";
|
|
5
7
|
import { VITE_SERVER_STORE_KEY, registerAssetsMiddleware } from "./built-in/assets.mjs";
|
|
6
8
|
import { registerBasicMiddleware } from "./built-in/basic.mjs";
|
|
7
9
|
import { registerCorsMiddleware } from "./built-in/cors.mjs";
|
|
@@ -11,4 +13,4 @@ import { registerPrometheusMiddleware } from "./built-in/prometheus.mjs";
|
|
|
11
13
|
import { registerRateLimitMiddleware } from "./built-in/rate-limit.mjs";
|
|
12
14
|
import { createSwaggerMiddleware } from "./built-in/swagger.mjs";
|
|
13
15
|
import "./built-in/index.mjs";
|
|
14
|
-
export { AuthorizationMiddleware, ForceLoggedInMiddleware, ForceUserLoggedInMiddleware, VITE_SERVER_STORE_KEY, createAuthorizationMiddleware, createLoggerMiddleware, createSwaggerMiddleware, registerAssetsMiddleware, registerBasicMiddleware, registerCorsMiddleware, registerErrorMiddleware, registerPrometheusMiddleware, registerRateLimitMiddleware };
|
|
16
|
+
export { AuthorizationMiddleware, ForceLoggedInMiddleware, ForceUserLoggedInMiddleware, RealmResolverMiddleware, VITE_SERVER_STORE_KEY, createAuthorizationMiddleware, createLoggerMiddleware, createRealmResolverMiddleware, createSwaggerMiddleware, registerAssetsMiddleware, registerBasicMiddleware, registerCorsMiddleware, registerErrorMiddleware, registerPrometheusMiddleware, registerRateLimitMiddleware };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { IRoutupEvent } from 'routup';
|
|
2
|
-
import type { ActorContext } from '
|
|
2
|
+
import type { ActorContext } from '@authup/server-kit';
|
|
3
3
|
export declare function buildActorContext(event: IRoutupEvent): ActorContext;
|
|
4
4
|
//# sourceMappingURL=actor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/http/request/helpers/actor.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/http/request/helpers/actor.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIvD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAOnE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.mjs","names":["useRequestPermissionEvaluator","useRequestIdentity","buildActorContext","event","identity","permissionEvaluator","raw","undefined"],"sources":["../../../../../src/adapters/http/request/helpers/actor.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { IRoutupEvent } from 'routup';\nimport type { ActorContext } from '
|
|
1
|
+
{"version":3,"file":"actor.mjs","names":["useRequestPermissionEvaluator","useRequestIdentity","buildActorContext","event","identity","permissionEvaluator","raw","undefined"],"sources":["../../../../../src/adapters/http/request/helpers/actor.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { IRoutupEvent } from 'routup';\nimport type { ActorContext } from '@authup/server-kit';\nimport { useRequestPermissionEvaluator } from '../permission/helper.ts';\nimport { useRequestIdentity } from './identity.ts';\n\nexport function buildActorContext(event: IRoutupEvent): ActorContext {\n const identity = useRequestIdentity(event);\n\n return {\n permissionEvaluator: useRequestPermissionEvaluator(event),\n identity: identity ? identity.raw : undefined,\n };\n}\n"],"mappings":";;;AAYA,SAAgBE,kBAAkBC,OAAmB;CACjD,MAAMC,WAAWH,mBAAmBE,KAAAA;CAEpC,OAAO;EACHE,qBAAqBL,8BAA8BG,KAAAA;EACnDC,UAAUA,WAAWA,SAASE,MAAMC,KAAAA;CACxC;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body-realm-id.mjs","names":["isUUID","getBodyRealmID","body","realmId","realm_id","undefined"],"sources":["../../../../../src/adapters/http/request/helpers/body-realm-id.ts"],"sourcesContent":["/*\n * Copyright (c) 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 { isUUID } from '@authup/kit';\n\nexport function getBodyRealmID(body: Record<string, any> | undefined) : string | undefined {\n const realmId = body?.realm_id;\n if (typeof realmId !== 'string') {\n return undefined;\n }\n\n if (!isUUID(realmId)) {\n return undefined;\n }\n\n return realmId;\n}\n"],"mappings":";;AASA,SAAgBC,eAAeC,MAAqC;CAChE,MAAMC,UAAUD,MAAME;
|
|
1
|
+
{"version":3,"file":"body-realm-id.mjs","names":["isUUID","getBodyRealmID","body","realmId","realm_id","undefined"],"sources":["../../../../../src/adapters/http/request/helpers/body-realm-id.ts"],"sourcesContent":["/*\n * Copyright (c) 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 { isUUID } from '@authup/kit';\n\nexport function getBodyRealmID(body: Record<string, any> | undefined) : string | undefined {\n const realmId = body?.realm_id;\n if (typeof realmId !== 'string') {\n return undefined;\n }\n\n if (!isUUID(realmId)) {\n return undefined;\n }\n\n return realmId;\n}\n"],"mappings":";;AASA,SAAgBC,eAAeC,MAAqC;CAChE,MAAMC,UAAUD,MAAME;CACtB,IAAI,OAAOD,YAAY,UACnB;CAGJ,IAAI,CAACH,OAAOG,OAAAA,GACR;CAGJ,OAAOA;AACX"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IdentityType, REALM_MASTER_NAME } from "@authup/core-kit";
|
|
2
|
-
import { UnauthorizedError } from "@
|
|
2
|
+
import { UnauthorizedError } from "@authup/errors";
|
|
3
3
|
//#region src/adapters/http/request/helpers/identity.ts
|
|
4
4
|
const sym = Symbol("RIdentity");
|
|
5
5
|
var RequestIdentity = class {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.mjs","names":["IdentityType","REALM_MASTER_NAME","UnauthorizedError","sym","Symbol","RequestIdentity","raw","identity","clientId","type","CLIENT","data","id","client_id","realmId","realm_id","realm","realmName","name","useRequestIdentity","event","store","setRequestIdentity","input","useRequestIdentityOrFail","isRequestIdentityMasterRealmMember"],"sources":["../../../../../src/adapters/http/request/helpers/identity.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { Identity } from '@authup/core-kit';\nimport { IdentityType, REALM_MASTER_NAME } from '@authup/core-kit';\nimport { UnauthorizedError } from '@
|
|
1
|
+
{"version":3,"file":"identity.mjs","names":["IdentityType","REALM_MASTER_NAME","UnauthorizedError","sym","Symbol","RequestIdentity","raw","identity","clientId","type","CLIENT","data","id","client_id","realmId","realm_id","realm","realmName","name","useRequestIdentity","event","store","setRequestIdentity","input","useRequestIdentityOrFail","isRequestIdentityMasterRealmMember"],"sources":["../../../../../src/adapters/http/request/helpers/identity.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { Identity } from '@authup/core-kit';\nimport { IdentityType, REALM_MASTER_NAME } from '@authup/core-kit';\nimport { UnauthorizedError } from '@authup/errors';\nimport type { IRoutupEvent } from 'routup';\n\nconst sym = Symbol('RIdentity');\n\nexport class RequestIdentity {\n public readonly raw : Identity;\n\n constructor(identity: Identity) {\n this.raw = identity;\n }\n\n get clientId() {\n const { raw } = this;\n if (raw.type === IdentityType.CLIENT) {\n return raw.data.id;\n }\n\n return raw.data.client_id || null;\n }\n\n get data() {\n return this.raw.data;\n }\n\n get type() {\n return this.raw.type;\n }\n\n get id() {\n return this.raw.data.id;\n }\n\n get realmId() {\n return this.raw.data.realm_id || this.raw.data.realm?.id;\n }\n\n get realmName() {\n return this.raw.data.realm?.name;\n }\n}\n\nexport function useRequestIdentity(event: IRoutupEvent) : RequestIdentity | undefined {\n return event.store[sym] as RequestIdentity | undefined;\n}\n\nexport function setRequestIdentity(event: IRoutupEvent, input: Identity | RequestIdentity) : void {\n let data : RequestIdentity;\n\n if (input instanceof RequestIdentity) {\n data = input;\n } else {\n data = new RequestIdentity(input);\n }\n\n event.store[sym] = data;\n}\n\nexport function useRequestIdentityOrFail(event: IRoutupEvent) : RequestIdentity {\n const identity = useRequestIdentity(event);\n if (!identity) {\n throw new UnauthorizedError();\n }\n\n return identity;\n}\n\nexport function isRequestIdentityMasterRealmMember(input: RequestIdentity) : boolean {\n return input.realmName === REALM_MASTER_NAME;\n}\n"],"mappings":";;;AAYA,MAAMG,MAAMC,OAAO,WAAA;AAEnB,IAAaC,kBAAb,MAAaA;CACOC;CAEhB,YAAYC,UAAoB;EAC5B,KAAKD,MAAMC;CACf;CAEA,IAAIC,WAAW;EACX,MAAM,EAAEF,QAAQ;EAChB,IAAIA,IAAIG,SAAST,aAAaU,QAC1B,OAAOJ,IAAIK,KAAKC;EAGpB,OAAON,IAAIK,KAAKE,aAAa;CACjC;CAEA,IAAIF,OAAO;EACP,OAAO,KAAKL,IAAIK;CACpB;CAEA,IAAIF,OAAO;EACP,OAAO,KAAKH,IAAIG;CACpB;CAEA,IAAIG,KAAK;EACL,OAAO,KAAKN,IAAIK,KAAKC;CACzB;CAEA,IAAIE,UAAU;EACV,OAAO,KAAKR,IAAIK,KAAKI,YAAY,KAAKT,IAAIK,KAAKK,OAAOJ;CAC1D;CAEA,IAAIK,YAAY;EACZ,OAAO,KAAKX,IAAIK,KAAKK,OAAOE;CAChC;AACJ;AAEA,SAAgBC,mBAAmBC,OAAmB;CAClD,OAAOA,MAAMC,MAAMlB;AACvB;AAEA,SAAgBmB,mBAAmBF,OAAqBG,OAAiC;CACrF,IAAIZ;CAEJ,IAAIY,iBAAiBlB,iBACjBM,OAAOY;MAEPZ,OAAO,IAAIN,gBAAgBkB,KAAAA;CAG/BH,MAAMC,MAAMlB,OAAOQ;AACvB;AAEA,SAAgBa,yBAAyBJ,OAAmB;CACxD,MAAMb,WAAWY,mBAAmBC,KAAAA;CACpC,IAAI,CAACb,UACD,MAAM,IAAIL,kBAAAA;CAGd,OAAOK;AACX;AAEA,SAAgBkB,mCAAmCF,OAAsB;CACrE,OAAOA,MAAMN,cAAchB;AAC/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/http/request/helpers/index.ts"],"names":[],"mappings":"AAOA,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/http/request/helpers/index.ts"],"names":[],"mappings":"AAOA,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -3,6 +3,7 @@ import { buildActorContext } from "./actor.mjs";
|
|
|
3
3
|
import { getBodyRealmID } from "./body-realm-id.mjs";
|
|
4
4
|
import { readFromLocations } from "./locations.mjs";
|
|
5
5
|
import { getRequestParamID, getRequestStringParam, getRequestStringParamOrFail, useRequestParamID } from "./param-id.mjs";
|
|
6
|
+
import { applyRouteRealmIDToBody, getRequestRealmID, setRequestRealmID } from "./realm-id.mjs";
|
|
6
7
|
import { setRequestScopes, useRequestScopes } from "./scopes.mjs";
|
|
7
8
|
import { setRequestToken, useRequestToken } from "./token.mjs";
|
|
8
|
-
export { RequestIdentity, buildActorContext, getBodyRealmID, getRequestParamID, getRequestStringParam, getRequestStringParamOrFail, isRequestIdentityMasterRealmMember, readFromLocations, setRequestIdentity, setRequestScopes, setRequestToken, useRequestIdentity, useRequestIdentityOrFail, useRequestParamID, useRequestScopes, useRequestToken };
|
|
9
|
+
export { RequestIdentity, applyRouteRealmIDToBody, buildActorContext, getBodyRealmID, getRequestParamID, getRequestRealmID, getRequestStringParam, getRequestStringParamOrFail, isRequestIdentityMasterRealmMember, readFromLocations, setRequestIdentity, setRequestRealmID, setRequestScopes, setRequestToken, useRequestIdentity, useRequestIdentityOrFail, useRequestParamID, useRequestScopes, useRequestToken };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locations.mjs","names":["readRequestBody","useRequestCookies","useRequestQuery","readFromLocations","event","locations","out","loc","body","Object","assign","params"],"sources":["../../../../../src/adapters/http/request/helpers/locations.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 type { IRoutupEvent } from 'routup';\nimport { readRequestBody } from '@routup/basic/body';\nimport { useRequestCookies } from '@routup/basic/cookie';\nimport { useRequestQuery } from '@routup/basic/query';\n\nexport type RequestDataLocation = 'body' | 'query' | 'params' | 'cookies';\n\nexport async function readFromLocations(\n event: IRoutupEvent,\n locations: RequestDataLocation[],\n): Promise<Record<string, any>> {\n const out: Record<string, any> = {};\n for (const loc of locations) {\n switch (loc) {\n case 'body': {\n const body = await readRequestBody(event);\n if (body && typeof body === 'object') {\n Object.assign(out, body);\n }\n break;\n }\n case 'query': {\n Object.assign(out, useRequestQuery(event));\n break;\n }\n case 'params': {\n Object.assign(out, event.params);\n break;\n }\n case 'cookies': {\n Object.assign(out, useRequestCookies(event));\n break;\n }\n }\n }\n return out;\n}\n"],"mappings":";;;;AAcA,eAAsBG,kBAClBC,OACAC,WAAgC;CAEhC,MAAMC,MAA2B,
|
|
1
|
+
{"version":3,"file":"locations.mjs","names":["readRequestBody","useRequestCookies","useRequestQuery","readFromLocations","event","locations","out","loc","body","Object","assign","params"],"sources":["../../../../../src/adapters/http/request/helpers/locations.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 type { IRoutupEvent } from 'routup';\nimport { readRequestBody } from '@routup/basic/body';\nimport { useRequestCookies } from '@routup/basic/cookie';\nimport { useRequestQuery } from '@routup/basic/query';\n\nexport type RequestDataLocation = 'body' | 'query' | 'params' | 'cookies';\n\nexport async function readFromLocations(\n event: IRoutupEvent,\n locations: RequestDataLocation[],\n): Promise<Record<string, any>> {\n const out: Record<string, any> = {};\n for (const loc of locations) {\n switch (loc) {\n case 'body': {\n const body = await readRequestBody(event);\n if (body && typeof body === 'object') {\n Object.assign(out, body);\n }\n break;\n }\n case 'query': {\n Object.assign(out, useRequestQuery(event));\n break;\n }\n case 'params': {\n Object.assign(out, event.params);\n break;\n }\n case 'cookies': {\n Object.assign(out, useRequestCookies(event));\n break;\n }\n }\n }\n return out;\n}\n"],"mappings":";;;;AAcA,eAAsBG,kBAClBC,OACAC,WAAgC;CAEhC,MAAMC,MAA2B,CAAC;CAClC,KAAK,MAAMC,OAAOF,WACd,QAAQE,KAAR;EACI,KAAK,QAAQ;GACT,MAAMC,OAAO,MAAMR,gBAAgBI,KAAAA;GACnC,IAAII,QAAQ,OAAOA,SAAS,UACxBC,OAAOC,OAAOJ,KAAKE,IAAAA;GAEvB;EACJ;EACA,KAAK;GACDC,OAAOC,OAAOJ,KAAKJ,gBAAgBE,KAAAA,CAAAA;GACnC;EAEJ,KAAK;GACDK,OAAOC,OAAOJ,KAAKF,MAAMO,MAAM;GAC/B;EAEJ,KAAK;GACDF,OAAOC,OAAOJ,KAAKL,kBAAkBG,KAAAA,CAAAA;GACrC;CAER;CAEJ,OAAOE;AACX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"param-id.mjs","names":["isUUID","ValidupError","buildErrorMessageForAttribute","defineIssueItem","useRequestParamID","event","options","id","getRequestParamID","path","message","getRequestStringParam","undefined","key","value","params","length","getRequestStringParamOrFail"],"sources":["../../../../../src/adapters/http/request/helpers/param-id.ts"],"sourcesContent":["/*\n * Copyright (c) 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 { isUUID } from '@authup/kit';\nimport type { IRoutupEvent } from 'routup';\nimport { ValidupError, buildErrorMessageForAttribute, defineIssueItem } from 'validup';\n\ntype RequestIDParamOptions = {\n /**\n * default: true\n */\n isUUID?: boolean\n};\n\nexport function useRequestParamID(event: IRoutupEvent, options: RequestIDParamOptions = {}) : string {\n const id = getRequestParamID(event, options);\n if (typeof id === 'undefined') {\n throw new ValidupError([\n defineIssueItem({\n path: ['id'],\n message: buildErrorMessageForAttribute('id'),\n }),\n ]);\n }\n\n return id;\n}\n\nexport function getRequestParamID(event: IRoutupEvent, options: RequestIDParamOptions = {}) : string | undefined {\n const id = getRequestStringParam(event, 'id');\n if (!id) {\n return undefined;\n }\n\n options.isUUID = options.isUUID ?? true;\n if (options.isUUID && !isUUID(id)) {\n return undefined;\n }\n\n return id;\n}\n\nexport function getRequestStringParam(event: IRoutupEvent, key: string) : string | undefined {\n const value = event.params[key];\n if (typeof value !== 'string' || value.length === 0) {\n return undefined;\n }\n\n return value;\n}\n\nexport function getRequestStringParamOrFail(event: IRoutupEvent, key: string) : string | undefined {\n const value = getRequestStringParam(event, key);\n if (typeof value === 'undefined') {\n throw new ValidupError([\n defineIssueItem({\n path: [key],\n message: buildErrorMessageForAttribute(key),\n }),\n ]);\n }\n\n return value;\n}\n"],"mappings":";;;AAkBA,SAAgBI,kBAAkBC,OAAqBC,UAAiC,
|
|
1
|
+
{"version":3,"file":"param-id.mjs","names":["isUUID","ValidupError","buildErrorMessageForAttribute","defineIssueItem","useRequestParamID","event","options","id","getRequestParamID","path","message","getRequestStringParam","undefined","key","value","params","length","getRequestStringParamOrFail"],"sources":["../../../../../src/adapters/http/request/helpers/param-id.ts"],"sourcesContent":["/*\n * Copyright (c) 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 { isUUID } from '@authup/kit';\nimport type { IRoutupEvent } from 'routup';\nimport { ValidupError, buildErrorMessageForAttribute, defineIssueItem } from 'validup';\n\ntype RequestIDParamOptions = {\n /**\n * default: true\n */\n isUUID?: boolean\n};\n\nexport function useRequestParamID(event: IRoutupEvent, options: RequestIDParamOptions = {}) : string {\n const id = getRequestParamID(event, options);\n if (typeof id === 'undefined') {\n throw new ValidupError([\n defineIssueItem({\n path: ['id'],\n message: buildErrorMessageForAttribute('id'),\n }),\n ]);\n }\n\n return id;\n}\n\nexport function getRequestParamID(event: IRoutupEvent, options: RequestIDParamOptions = {}) : string | undefined {\n const id = getRequestStringParam(event, 'id');\n if (!id) {\n return undefined;\n }\n\n options.isUUID = options.isUUID ?? true;\n if (options.isUUID && !isUUID(id)) {\n return undefined;\n }\n\n return id;\n}\n\nexport function getRequestStringParam(event: IRoutupEvent, key: string) : string | undefined {\n const value = event.params[key];\n if (typeof value !== 'string' || value.length === 0) {\n return undefined;\n }\n\n return value;\n}\n\nexport function getRequestStringParamOrFail(event: IRoutupEvent, key: string) : string | undefined {\n const value = getRequestStringParam(event, key);\n if (typeof value === 'undefined') {\n throw new ValidupError([\n defineIssueItem({\n path: [key],\n message: buildErrorMessageForAttribute(key),\n }),\n ]);\n }\n\n return value;\n}\n"],"mappings":";;;AAkBA,SAAgBI,kBAAkBC,OAAqBC,UAAiC,CAAC,GAAC;CACtF,MAAMC,KAAKC,kBAAkBH,OAAOC,OAAAA;CACpC,IAAI,OAAOC,OAAO,aACd,MAAM,IAAIN,aAAa,CACnBE,gBAAgB;EACZM,MAAM,CAAC,IAAA;EACPC,SAASR,8BAA8B,IAAA;CAC3C,CAAA,CAAA,CACH;CAGL,OAAOK;AACX;AAEA,SAAgBC,kBAAkBH,OAAqBC,UAAiC,CAAC,GAAC;CACtF,MAAMC,KAAKI,sBAAsBN,OAAO,IAAA;CACxC,IAAI,CAACE,IACD;CAGJD,QAAQN,SAASM,QAAQN,UAAU;CACnC,IAAIM,QAAQN,UAAU,CAACA,OAAOO,EAAAA,GAC1B;CAGJ,OAAOA;AACX;AAEA,SAAgBI,sBAAsBN,OAAqBQ,KAAW;CAClE,MAAMC,QAAQT,MAAMU,OAAOF;CAC3B,IAAI,OAAOC,UAAU,YAAYA,MAAME,WAAW,GAC9C;CAGJ,OAAOF;AACX;AAEA,SAAgBG,4BAA4BZ,OAAqBQ,KAAW;CACxE,MAAMC,QAAQH,sBAAsBN,OAAOQ,GAAAA;CAC3C,IAAI,OAAOC,UAAU,aACjB,MAAM,IAAIb,aAAa,CACnBE,gBAAgB;EACZM,MAAM,CAACI,GAAAA;EACPH,SAASR,8BAA8BW,GAAAA;CAC3C,CAAA,CAAA,CACH;CAGL,OAAOC;AACX"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { IRoutupEvent } from 'routup';
|
|
2
|
+
export declare function setRequestRealmID(event: IRoutupEvent, id: string): void;
|
|
3
|
+
export declare function getRequestRealmID(event: IRoutupEvent): string | undefined;
|
|
4
|
+
export declare function applyRouteRealmIDToBody(event: IRoutupEvent, data: Record<string, any>): void;
|
|
5
|
+
//# sourceMappingURL=realm-id.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realm-id.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/http/request/helpers/realm-id.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAK3C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAEvE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAMzE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAK5F"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { getRequestStringParam } from "./param-id.mjs";
|
|
2
|
+
//#region src/adapters/http/request/helpers/realm-id.ts
|
|
3
|
+
const sym = Symbol("RRealmID");
|
|
4
|
+
function setRequestRealmID(event, id) {
|
|
5
|
+
event.store[sym] = id;
|
|
6
|
+
}
|
|
7
|
+
function getRequestRealmID(event) {
|
|
8
|
+
const stored = event.store[sym];
|
|
9
|
+
if (stored) return stored;
|
|
10
|
+
return getRequestStringParam(event, "realmId");
|
|
11
|
+
}
|
|
12
|
+
function applyRouteRealmIDToBody(event, data) {
|
|
13
|
+
const routeRealmId = getRequestRealmID(event);
|
|
14
|
+
if (routeRealmId) data.realm_id = routeRealmId;
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { applyRouteRealmIDToBody, getRequestRealmID, setRequestRealmID };
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=realm-id.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realm-id.mjs","names":["getRequestStringParam","sym","Symbol","setRequestRealmID","event","id","store","getRequestRealmID","stored","applyRouteRealmIDToBody","data","routeRealmId","realm_id"],"sources":["../../../../../src/adapters/http/request/helpers/realm-id.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 type { IRoutupEvent } from 'routup';\nimport { getRequestStringParam } from './param-id.ts';\n\nconst sym = Symbol('RRealmID');\n\nexport function setRequestRealmID(event: IRoutupEvent, id: string): void {\n event.store[sym] = id;\n}\n\nexport function getRequestRealmID(event: IRoutupEvent): string | undefined {\n const stored = event.store[sym] as string | undefined;\n if (stored) {\n return stored;\n }\n return getRequestStringParam(event, 'realmId');\n}\n\nexport function applyRouteRealmIDToBody(event: IRoutupEvent, data: Record<string, any>): void {\n const routeRealmId = getRequestRealmID(event);\n if (routeRealmId) {\n data.realm_id = routeRealmId;\n }\n}\n"],"mappings":";;AAUA,MAAMC,MAAMC,OAAO,UAAA;AAEnB,SAAgBC,kBAAkBC,OAAqBC,IAAU;CAC7DD,MAAME,MAAML,OAAOI;AACvB;AAEA,SAAgBE,kBAAkBH,OAAmB;CACjD,MAAMI,SAASJ,MAAME,MAAML;CAC3B,IAAIO,QACA,OAAOA;CAEX,OAAOR,sBAAsBI,OAAO,SAAA;AACxC;AAEA,SAAgBK,wBAAwBL,OAAqBM,MAAyB;CAClF,MAAMC,eAAeJ,kBAAkBH,KAAAA;CACvC,IAAIO,cACAD,KAAKE,WAAWD;AAExB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopes.mjs","names":["sym","Symbol","useRequestScopes","event","scopes","store","setRequestScopes"],"sources":["../../../../../src/adapters/http/request/helpers/scopes.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { IRoutupEvent } from 'routup';\n\nconst sym = Symbol('Scopes');\n\nexport function useRequestScopes(event: IRoutupEvent) : string[] {\n const scopes = event.store[sym] as string[] | undefined;\n\n return scopes || [];\n}\n\nexport function setRequestScopes(event: IRoutupEvent, scopes: string[]) {\n event.store[sym] = scopes;\n}\n"],"mappings":";AASA,MAAMA,MAAMC,OAAO,
|
|
1
|
+
{"version":3,"file":"scopes.mjs","names":["sym","Symbol","useRequestScopes","event","scopes","store","setRequestScopes"],"sources":["../../../../../src/adapters/http/request/helpers/scopes.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { IRoutupEvent } from 'routup';\n\nconst sym = Symbol('Scopes');\n\nexport function useRequestScopes(event: IRoutupEvent) : string[] {\n const scopes = event.store[sym] as string[] | undefined;\n\n return scopes || [];\n}\n\nexport function setRequestScopes(event: IRoutupEvent, scopes: string[]) {\n event.store[sym] = scopes;\n}\n"],"mappings":";AASA,MAAMA,MAAMC,OAAO,QAAA;AAEnB,SAAgBC,iBAAiBC,OAAmB;CAGhD,OAFeA,MAAME,MAAML,QAEV,CAAA;AACrB;AAEA,SAAgBM,iBAAiBH,OAAqBC,QAAgB;CAClED,MAAME,MAAML,OAAOI;AACvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.mjs","names":["sym","Symbol","useRequestToken","event","store","setRequestToken","token"],"sources":["../../../../../src/adapters/http/request/helpers/token.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { IRoutupEvent } from 'routup';\n\nconst sym = Symbol('Token');\n\nexport function useRequestToken(event: IRoutupEvent) {\n return event.store[sym] as string | undefined;\n}\n\nexport function setRequestToken(event: IRoutupEvent, token: string) {\n event.store[sym] = token;\n}\n"],"mappings":";AASA,MAAMA,MAAMC,OAAO,
|
|
1
|
+
{"version":3,"file":"token.mjs","names":["sym","Symbol","useRequestToken","event","store","setRequestToken","token"],"sources":["../../../../../src/adapters/http/request/helpers/token.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { IRoutupEvent } from 'routup';\n\nconst sym = Symbol('Token');\n\nexport function useRequestToken(event: IRoutupEvent) {\n return event.store[sym] as string | undefined;\n}\n\nexport function setRequestToken(event: IRoutupEvent, token: string) {\n event.store[sym] = token;\n}\n"],"mappings":";AASA,MAAMA,MAAMC,OAAO,OAAA;AAEnB,SAAgBC,gBAAgBC,OAAmB;CAC/C,OAAOA,MAAMC,MAAMJ;AACvB;AAEA,SAAgBK,gBAAgBF,OAAqBG,OAAa;CAC9DH,MAAMC,MAAMJ,OAAOM;AACvB"}
|
|
@@ -5,9 +5,10 @@ import { buildActorContext } from "./helpers/actor.mjs";
|
|
|
5
5
|
import { getBodyRealmID } from "./helpers/body-realm-id.mjs";
|
|
6
6
|
import { readFromLocations } from "./helpers/locations.mjs";
|
|
7
7
|
import { getRequestParamID, getRequestStringParam, getRequestStringParamOrFail, useRequestParamID } from "./helpers/param-id.mjs";
|
|
8
|
+
import { applyRouteRealmIDToBody, getRequestRealmID, setRequestRealmID } from "./helpers/realm-id.mjs";
|
|
8
9
|
import { setRequestScopes, useRequestScopes } from "./helpers/scopes.mjs";
|
|
9
10
|
import { setRequestToken, useRequestToken } from "./helpers/token.mjs";
|
|
10
11
|
import "./helpers/index.mjs";
|
|
11
12
|
import { RequestPermissionEvaluator } from "./permission/module.mjs";
|
|
12
13
|
import "./permission/index.mjs";
|
|
13
|
-
export { RequestHandlerOperation, RequestIdentity, RequestPermissionEvaluator, buildActorContext, getBodyRealmID, getRequestParamID, getRequestStringParam, getRequestStringParamOrFail, isRequestIdentityMasterRealmMember, readFromLocations, setRequestIdentity, setRequestPermissionEvaluator, setRequestScopes, setRequestToken, useRequestIdentity, useRequestIdentityOrFail, useRequestParamID, useRequestPermissionEvaluator, useRequestScopes, useRequestToken };
|
|
14
|
+
export { RequestHandlerOperation, RequestIdentity, RequestPermissionEvaluator, applyRouteRealmIDToBody, buildActorContext, getBodyRealmID, getRequestParamID, getRequestRealmID, getRequestStringParam, getRequestStringParamOrFail, isRequestIdentityMasterRealmMember, readFromLocations, setRequestIdentity, setRequestPermissionEvaluator, setRequestRealmID, setRequestScopes, setRequestToken, useRequestIdentity, useRequestIdentityOrFail, useRequestParamID, useRequestPermissionEvaluator, useRequestScopes, useRequestToken };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.mjs","names":["sym","Symbol","useRequestPermissionEvaluator","event","instance","store","Error","setRequestPermissionEvaluator","ctx"],"sources":["../../../../../src/adapters/http/request/permission/helper.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { IRoutupEvent } from 'routup';\nimport type { RequestPermissionEvaluator } from './module.ts';\n\nconst sym = Symbol('RequestPermissionEvaluator');\n\nexport function useRequestPermissionEvaluator(event: IRoutupEvent) : RequestPermissionEvaluator {\n const instance = event.store[sym];\n if (!instance) {\n throw new Error('The request permission evaluator is not initialised.');\n }\n\n return instance as RequestPermissionEvaluator;\n}\n\nexport function setRequestPermissionEvaluator(event: IRoutupEvent, ctx: RequestPermissionEvaluator) {\n event.store[sym] = ctx;\n}\n"],"mappings":";AAUA,MAAMA,MAAMC,OAAO,
|
|
1
|
+
{"version":3,"file":"helper.mjs","names":["sym","Symbol","useRequestPermissionEvaluator","event","instance","store","Error","setRequestPermissionEvaluator","ctx"],"sources":["../../../../../src/adapters/http/request/permission/helper.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { IRoutupEvent } from 'routup';\nimport type { RequestPermissionEvaluator } from './module.ts';\n\nconst sym = Symbol('RequestPermissionEvaluator');\n\nexport function useRequestPermissionEvaluator(event: IRoutupEvent) : RequestPermissionEvaluator {\n const instance = event.store[sym];\n if (!instance) {\n throw new Error('The request permission evaluator is not initialised.');\n }\n\n return instance as RequestPermissionEvaluator;\n}\n\nexport function setRequestPermissionEvaluator(event: IRoutupEvent, ctx: RequestPermissionEvaluator) {\n event.store[sym] = ctx;\n}\n"],"mappings":";AAUA,MAAMA,MAAMC,OAAO,4BAAA;AAEnB,SAAgBC,8BAA8BC,OAAmB;CAC7D,MAAMC,WAAWD,MAAME,MAAML;CAC7B,IAAI,CAACI,UACD,MAAM,IAAIE,MAAM,sDAAA;CAGpB,OAAOF;AACX;AAEA,SAAgBG,8BAA8BJ,OAAqBK,KAA+B;CAC9FL,MAAME,MAAML,OAAOQ;AACvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":["ScopeName","BuiltInPolicyType","PolicyData","useRequestIdentity","useRequestScopes","RequestPermissionEvaluator","event","evaluator","evaluate","ctx","extendContext","preEvaluate","preEvaluateOneOf","evaluateOneOf","scopes","includes","GLOBAL","input","set","IDENTITY"],"sources":["../../../../../src/adapters/http/request/permission/module.ts"],"sourcesContent":["/*\n * Copyright (c) 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 { ScopeName } from '@authup/core-kit';\nimport type {\n IPermissionEvaluator,\n PermissionEvaluationContext,\n} from '@authup/access';\nimport { BuiltInPolicyType, PolicyData } from '@authup/access';\nimport type { IRoutupEvent } from 'routup';\nimport { useRequestIdentity, useRequestScopes } from '../helpers/index.ts';\n\nexport class RequestPermissionEvaluator implements IPermissionEvaluator {\n protected event: IRoutupEvent;\n\n protected evaluator: IPermissionEvaluator;\n\n constructor(event: IRoutupEvent, evaluator: IPermissionEvaluator) {\n this.event = event;\n this.evaluator = evaluator;\n }\n\n // --------------------------------------------------------------\n\n async evaluate(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.evaluate(this.extendContext(ctx));\n }\n\n async preEvaluate(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.preEvaluate(this.extendContext(ctx));\n }\n\n // --------------------------------------------------------------\n\n async preEvaluateOneOf(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.preEvaluateOneOf(this.extendContext(ctx));\n }\n\n async evaluateOneOf(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.evaluateOneOf(this.extendContext(ctx));\n }\n\n // --------------------------------------------------------------\n\n protected extendContext(ctx: PermissionEvaluationContext) {\n const scopes = useRequestScopes(this.event);\n if (scopes.includes(ScopeName.GLOBAL)) {\n ctx.input = ctx.input || new PolicyData();\n ctx.input.set(BuiltInPolicyType.IDENTITY, useRequestIdentity(this.event));\n }\n\n return ctx;\n }\n}\n"],"mappings":";;;;;;AAgBA,IAAaK,6BAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYD,OAAqBC,WAAiC;
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["ScopeName","BuiltInPolicyType","PolicyData","useRequestIdentity","useRequestScopes","RequestPermissionEvaluator","event","evaluator","evaluate","ctx","extendContext","preEvaluate","preEvaluateOneOf","evaluateOneOf","scopes","includes","GLOBAL","input","set","IDENTITY"],"sources":["../../../../../src/adapters/http/request/permission/module.ts"],"sourcesContent":["/*\n * Copyright (c) 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 { ScopeName } from '@authup/core-kit';\nimport type {\n IPermissionEvaluator,\n PermissionEvaluationContext,\n} from '@authup/access';\nimport { BuiltInPolicyType, PolicyData } from '@authup/access';\nimport type { IRoutupEvent } from 'routup';\nimport { useRequestIdentity, useRequestScopes } from '../helpers/index.ts';\n\nexport class RequestPermissionEvaluator implements IPermissionEvaluator {\n protected event: IRoutupEvent;\n\n protected evaluator: IPermissionEvaluator;\n\n constructor(event: IRoutupEvent, evaluator: IPermissionEvaluator) {\n this.event = event;\n this.evaluator = evaluator;\n }\n\n // --------------------------------------------------------------\n\n async evaluate(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.evaluate(this.extendContext(ctx));\n }\n\n async preEvaluate(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.preEvaluate(this.extendContext(ctx));\n }\n\n // --------------------------------------------------------------\n\n async preEvaluateOneOf(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.preEvaluateOneOf(this.extendContext(ctx));\n }\n\n async evaluateOneOf(ctx: PermissionEvaluationContext) : Promise<void> {\n return this.evaluator.evaluateOneOf(this.extendContext(ctx));\n }\n\n // --------------------------------------------------------------\n\n protected extendContext(ctx: PermissionEvaluationContext) {\n const scopes = useRequestScopes(this.event);\n if (scopes.includes(ScopeName.GLOBAL)) {\n ctx.input = ctx.input || new PolicyData();\n ctx.input.set(BuiltInPolicyType.IDENTITY, useRequestIdentity(this.event));\n }\n\n return ctx;\n }\n}\n"],"mappings":";;;;;;AAgBA,IAAaK,6BAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYD,OAAqBC,WAAiC;EAC9D,KAAKD,QAAQA;EACb,KAAKC,YAAYA;CACrB;CAIA,MAAMC,SAASC,KAAkD;EAC7D,OAAO,KAAKF,UAAUC,SAAS,KAAKE,cAAcD,GAAAA,CAAAA;CACtD;CAEA,MAAME,YAAYF,KAAkD;EAChE,OAAO,KAAKF,UAAUI,YAAY,KAAKD,cAAcD,GAAAA,CAAAA;CACzD;CAIA,MAAMG,iBAAiBH,KAAkD;EACrE,OAAO,KAAKF,UAAUK,iBAAiB,KAAKF,cAAcD,GAAAA,CAAAA;CAC9D;CAEA,MAAMI,cAAcJ,KAAkD;EAClE,OAAO,KAAKF,UAAUM,cAAc,KAAKH,cAAcD,GAAAA,CAAAA;CAC3D;CAIUC,cAAcD,KAAkC;EAEtD,IADeL,iBAAiB,KAAKE,KACjCQ,EAAOC,SAASf,UAAUgB,MAAM,GAAG;GACnCP,IAAIQ,QAAQR,IAAIQ,SAAS,IAAIf,WAAAA;GAC7BO,IAAIQ,MAAMC,IAAIjB,kBAAkBkB,UAAUhB,mBAAmB,KAAKG,KAAK,CAAA;EAC3E;EAEA,OAAOG;CACX;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.mjs","names":["LdapClient","LdapClientFactory","create","options"],"sources":["../../../../src/adapters/shared/ldap/factory.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { ILdapClient, ILdapClientFactory } from '../../../core/index.ts';\nimport { LdapClient } from './module.ts';\nimport type { LdapClientOptions } from './types.ts';\n\nexport class LdapClientFactory implements ILdapClientFactory {\n create(options: LdapClientOptions): ILdapClient {\n return new LdapClient(options);\n }\n}\n"],"mappings":";;AAWA,IAAaC,oBAAb,MAAaA;CACTC,OAAOC,SAAyC;
|
|
1
|
+
{"version":3,"file":"factory.mjs","names":["LdapClient","LdapClientFactory","create","options"],"sources":["../../../../src/adapters/shared/ldap/factory.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { ILdapClient, ILdapClientFactory } from '../../../core/index.ts';\nimport { LdapClient } from './module.ts';\nimport type { LdapClientOptions } from './types.ts';\n\nexport class LdapClientFactory implements ILdapClientFactory {\n create(options: LdapClientOptions): ILdapClient {\n return new LdapClient(options);\n }\n}\n"],"mappings":";;AAWA,IAAaC,oBAAb,MAAaA;CACTC,OAAOC,SAAyC;EAC5C,OAAO,IAAIH,WAAWG,OAAAA;CAC1B;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":["ldap","LdapClient","options","driver","createClient","url","tlsOptions","tls","connectTimeout","connect","Promise","resolve","reject","listener","startTLS","starttls","err","connected","errorListener","error","once","bind","user","password","then","Error","catch","e","unbind","add","name","data","del","modify","change","search","dn","resolveDn","baseDn","scope","res","entries","on","searchEntry","entry","pojo","objectName","i","attributes","length","attribute","type","Array","isArray","values","map","el","trim","filter","Boolean","push","searchResult","status","input","output","parseDN","childOf","equals","SyntaxError","isDn","DN","isDN","fromString","test"],"sources":["../../../../src/adapters/shared/ldap/module.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { Change, Client, SearchOptions } from 'ldapjs';\nimport ldap from 'ldapjs';\nimport type { ILdapClient } from '../../../core/index.ts';\nimport type { LdapClientOptions } from './types.ts';\n\nexport class LdapClient implements ILdapClient {\n protected options : LdapClientOptions;\n\n protected driver : Client;\n\n constructor(options: LdapClientOptions) {\n this.options = options;\n this.driver = ldap.createClient({\n url: options.url,\n tlsOptions: options.tls,\n connectTimeout: 3000,\n });\n }\n\n async connect() : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n const listener = () => {\n if (this.options.startTLS) {\n this.driver.starttls(\n this.options.tls || {},\n null,\n (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n },\n );\n } else {\n resolve();\n }\n };\n\n if (this.driver.connected) {\n listener();\n return;\n }\n\n const errorListener = (error?: Error | null) => {\n if (error) {\n reject(error);\n }\n\n resolve();\n };\n\n this.driver.connect();\n this.driver.once('connect', listener);\n this.driver.once('timeout', errorListener);\n this.driver.once('connectTimeout', errorListener);\n this.driver.once('error', errorListener);\n this.driver.once('connectError', errorListener);\n });\n }\n\n get connected() : boolean {\n return this.driver.connected;\n }\n\n public async bind(user?: string, password?: string) : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.connect()\n .then(() => {\n if (!user) {\n user = this.options.user;\n password = this.options.password;\n }\n\n if (!user) {\n reject(new Error('User name not defined.'));\n return;\n }\n\n if (!password) {\n reject(new Error('User password not defined.'));\n return;\n }\n\n this.driver.bind(user, password, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n })\n .catch((e) => reject(e));\n });\n }\n\n async unbind() : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.driver.unbind((err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async add(name: string, data: Record<string, any>) {\n return new Promise<void>((resolve, reject) => {\n this.driver.add(name, data, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async del(name: string) : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.driver.del(name, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async modify(name: string, change: Change | Change[]) : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.driver.modify(name, change, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async search(options: SearchOptions, dn?: string) : Promise<Record<string, any>[]> {\n return new Promise((resolve, reject) => {\n this.driver.search(\n this.resolveDn(dn, this.options.baseDn),\n {\n scope: 'sub',\n ...options,\n },\n (err, res) => {\n if (err) {\n reject(err);\n return;\n }\n\n const entries : Record<string, any>[] = [];\n\n res.on('searchEntry', (searchEntry) => {\n const entry : Record<string, any> = { dn: searchEntry.pojo.objectName };\n\n for (let i = 0; i < searchEntry.attributes.length; i++) {\n const attribute = searchEntry.attributes[i];\n\n entry[attribute.type] = Array.isArray(attribute.values) ?\n attribute.values.map((el: string) => el.trim()).filter(Boolean) :\n attribute.values;\n }\n\n entries.push(entry);\n });\n\n res.on('error', (err) => {\n reject(err);\n });\n\n res.on('end', (searchResult) => {\n if (!searchResult || searchResult.status !== 0) {\n reject(new Error('The ldap search was not successfully'));\n } else {\n resolve(entries);\n }\n });\n },\n );\n });\n }\n\n resolveDn(...input: unknown[]) : string {\n let output : string | undefined;\n\n for (let i = 0; i <= input.length; i++) {\n const el = input[i];\n if (typeof el !== 'string') {\n continue;\n }\n\n if (!output) {\n output = el;\n continue;\n }\n\n const dn = ldap.parseDN(output);\n if (dn.childOf(el) || dn.equals(el)) {\n continue;\n }\n\n output += `,${input[i]}`;\n }\n\n if (!output) {\n throw new SyntaxError('Dn could not be resolved.');\n }\n\n return output;\n }\n\n isDn(input: string | ldap.DN) : boolean {\n try {\n if (typeof input !== 'string') {\n return ldap.DN.isDN(input);\n }\n\n if (typeof (ldap.DN as Record<string, any>).fromString === 'function') {\n const dn = (ldap.DN as Record<string, any>).fromString(input);\n return typeof dn !== 'undefined';\n }\n\n return /^(?:(?:(?:[a-zA-Z0-9]+(?:[-._][a-zA-Z0-9]+)*)=(?:[\\s]*[^,+\\n=]+[\\s]*)*)(?:[,][\\s]*)?)+$/.test(input);\n } catch {\n return false;\n }\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["ldap","LdapClient","options","driver","createClient","url","tlsOptions","tls","connectTimeout","connect","Promise","resolve","reject","listener","startTLS","starttls","err","connected","errorListener","error","once","bind","user","password","then","Error","catch","e","unbind","add","name","data","del","modify","change","search","dn","resolveDn","baseDn","scope","res","entries","on","searchEntry","entry","pojo","objectName","i","attributes","length","attribute","type","Array","isArray","values","map","el","trim","filter","Boolean","push","searchResult","status","input","output","parseDN","childOf","equals","SyntaxError","isDn","DN","isDN","fromString","test"],"sources":["../../../../src/adapters/shared/ldap/module.ts"],"sourcesContent":["/*\n * Copyright (c) 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 type { Change, Client, SearchOptions } from 'ldapjs';\nimport ldap from 'ldapjs';\nimport type { ILdapClient } from '../../../core/index.ts';\nimport type { LdapClientOptions } from './types.ts';\n\nexport class LdapClient implements ILdapClient {\n protected options : LdapClientOptions;\n\n protected driver : Client;\n\n constructor(options: LdapClientOptions) {\n this.options = options;\n this.driver = ldap.createClient({\n url: options.url,\n tlsOptions: options.tls,\n connectTimeout: 3000,\n });\n }\n\n async connect() : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n const listener = () => {\n if (this.options.startTLS) {\n this.driver.starttls(\n this.options.tls || {},\n null,\n (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n },\n );\n } else {\n resolve();\n }\n };\n\n if (this.driver.connected) {\n listener();\n return;\n }\n\n const errorListener = (error?: Error | null) => {\n if (error) {\n reject(error);\n }\n\n resolve();\n };\n\n this.driver.connect();\n this.driver.once('connect', listener);\n this.driver.once('timeout', errorListener);\n this.driver.once('connectTimeout', errorListener);\n this.driver.once('error', errorListener);\n this.driver.once('connectError', errorListener);\n });\n }\n\n get connected() : boolean {\n return this.driver.connected;\n }\n\n public async bind(user?: string, password?: string) : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.connect()\n .then(() => {\n if (!user) {\n user = this.options.user;\n password = this.options.password;\n }\n\n if (!user) {\n reject(new Error('User name not defined.'));\n return;\n }\n\n if (!password) {\n reject(new Error('User password not defined.'));\n return;\n }\n\n this.driver.bind(user, password, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n })\n .catch((e) => reject(e));\n });\n }\n\n async unbind() : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.driver.unbind((err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async add(name: string, data: Record<string, any>) {\n return new Promise<void>((resolve, reject) => {\n this.driver.add(name, data, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async del(name: string) : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.driver.del(name, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async modify(name: string, change: Change | Change[]) : Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.driver.modify(name, change, (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n }\n\n async search(options: SearchOptions, dn?: string) : Promise<Record<string, any>[]> {\n return new Promise((resolve, reject) => {\n this.driver.search(\n this.resolveDn(dn, this.options.baseDn),\n {\n scope: 'sub',\n ...options,\n },\n (err, res) => {\n if (err) {\n reject(err);\n return;\n }\n\n const entries : Record<string, any>[] = [];\n\n res.on('searchEntry', (searchEntry) => {\n const entry : Record<string, any> = { dn: searchEntry.pojo.objectName };\n\n for (let i = 0; i < searchEntry.attributes.length; i++) {\n const attribute = searchEntry.attributes[i];\n\n entry[attribute.type] = Array.isArray(attribute.values) ?\n attribute.values.map((el: string) => el.trim()).filter(Boolean) :\n attribute.values;\n }\n\n entries.push(entry);\n });\n\n res.on('error', (err) => {\n reject(err);\n });\n\n res.on('end', (searchResult) => {\n if (!searchResult || searchResult.status !== 0) {\n reject(new Error('The ldap search was not successfully'));\n } else {\n resolve(entries);\n }\n });\n },\n );\n });\n }\n\n resolveDn(...input: unknown[]) : string {\n let output : string | undefined;\n\n for (let i = 0; i <= input.length; i++) {\n const el = input[i];\n if (typeof el !== 'string') {\n continue;\n }\n\n if (!output) {\n output = el;\n continue;\n }\n\n const dn = ldap.parseDN(output);\n if (dn.childOf(el) || dn.equals(el)) {\n continue;\n }\n\n output += `,${input[i]}`;\n }\n\n if (!output) {\n throw new SyntaxError('Dn could not be resolved.');\n }\n\n return output;\n }\n\n isDn(input: string | ldap.DN) : boolean {\n try {\n if (typeof input !== 'string') {\n return ldap.DN.isDN(input);\n }\n\n if (typeof (ldap.DN as Record<string, any>).fromString === 'function') {\n const dn = (ldap.DN as Record<string, any>).fromString(input);\n return typeof dn !== 'undefined';\n }\n\n return /^(?:(?:(?:[a-zA-Z0-9]+(?:[-._][a-zA-Z0-9]+)*)=(?:[\\s]*[^,+\\n=]+[\\s]*)*)(?:[,][\\s]*)?)+$/.test(input);\n } catch {\n return false;\n }\n }\n}\n"],"mappings":"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"}
|
package/dist/app/builder.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.mjs","names":["Application","AuthenticationModule","CacheModule","ComponentsModule","ConfigModule","DatabaseModule","HTTPModule","IdentityModule","LdapModule","LoggerModule","MailModule","ModuleName","OAuth2Module","ProvisionerModule","RuntimeModule","defaultFactories","CONFIG","LOGGER","CACHE","MAIL","RUNTIME","DATABASE","PROVISIONING","LDAP","AUTHENTICATION","IDENTITY","OAUTH2","COMPONENTS","HTTP","ApplicationBuilder","slots","Map","withConfig","instance","set","withLogger","withCache","withMail","withRuntime","withDatabase","withProvisioning","withLdap","withAuthentication","withIdentity","withOAuth2","withComponents","withHTTP","buildModules","modules","forEach","slot","name","push","factory","build","undefined"],"sources":["../../src/app/builder.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 Application,\n type IApplication,\n type IModule,\n} from 'orkos';\nimport {\n AuthenticationModule,\n CacheModule,\n ComponentsModule,\n ConfigModule,\n DatabaseModule,\n HTTPModule,\n IdentityModule,\n LdapModule,\n LoggerModule,\n MailModule,\n ModuleName,\n OAuth2Module,\n ProvisionerModule,\n RuntimeModule,\n} from './modules/index.ts';\n\ntype ModuleSlot = IModule | false | undefined;\n\ntype ModuleFactory = () => IModule;\n\nconst defaultFactories: Record<string, ModuleFactory> = {\n [ModuleName.CONFIG]: () => new ConfigModule(),\n [ModuleName.LOGGER]: () => new LoggerModule(),\n [ModuleName.CACHE]: () => new CacheModule(),\n [ModuleName.MAIL]: () => new MailModule(),\n [ModuleName.RUNTIME]: () => new RuntimeModule(),\n [ModuleName.DATABASE]: () => new DatabaseModule(),\n [ModuleName.PROVISIONING]: () => new ProvisionerModule(),\n [ModuleName.LDAP]: () => new LdapModule(),\n [ModuleName.AUTHENTICATION]: () => new AuthenticationModule(),\n [ModuleName.IDENTITY]: () => new IdentityModule(),\n [ModuleName.OAUTH2]: () => new OAuth2Module(),\n [ModuleName.COMPONENTS]: () => new ComponentsModule(),\n [ModuleName.HTTP]: () => new HTTPModule(),\n};\n\nexport class ApplicationBuilder {\n protected slots: Map<string, ModuleSlot>;\n\n constructor() {\n this.slots = new Map();\n }\n\n // ----------------------------------------------------\n\n withConfig(instance?: ConfigModule | false): this {\n return this.set(ModuleName.CONFIG, instance);\n }\n\n withLogger(instance?: LoggerModule | false): this {\n return this.set(ModuleName.LOGGER, instance);\n }\n\n withCache(instance?: CacheModule | false): this {\n return this.set(ModuleName.CACHE, instance);\n }\n\n withMail(instance?: MailModule | false): this {\n return this.set(ModuleName.MAIL, instance);\n }\n\n withRuntime(instance?: RuntimeModule | false): this {\n return this.set(ModuleName.RUNTIME, instance);\n }\n\n withDatabase(instance?: DatabaseModule | false): this {\n return this.set(ModuleName.DATABASE, instance);\n }\n\n withProvisioning(instance?: ProvisionerModule | false): this {\n return this.set(ModuleName.PROVISIONING, instance);\n }\n\n withLdap(instance?: LdapModule | false): this {\n return this.set(ModuleName.LDAP, instance);\n }\n\n withAuthentication(instance?: AuthenticationModule | false): this {\n return this.set(ModuleName.AUTHENTICATION, instance);\n }\n\n withIdentity(instance?: IdentityModule | false): this {\n return this.set(ModuleName.IDENTITY, instance);\n }\n\n withOAuth2(instance?: OAuth2Module | false): this {\n return this.set(ModuleName.OAUTH2, instance);\n }\n\n withComponents(instance?: ComponentsModule | false): this {\n return this.set(ModuleName.COMPONENTS, instance);\n }\n\n withHTTP(instance?: HTTPModule | false): this {\n return this.set(ModuleName.HTTP, instance);\n }\n\n // ----------------------------------------------------\n\n buildModules(): IModule[] {\n const modules: IModule[] = [];\n\n this.slots.forEach((slot, name) => {\n if (slot === false) {\n return;\n }\n\n if (slot) {\n modules.push(slot);\n return;\n }\n\n const factory = defaultFactories[name];\n if (factory) {\n modules.push(factory());\n }\n });\n\n return modules;\n }\n\n build(): IApplication {\n return new Application({ modules: this.buildModules() });\n }\n\n // ----------------------------------------------------\n\n protected set(name: string, instance?: IModule | false): this {\n if (instance === false) {\n this.slots.set(name, false);\n } else if (instance) {\n this.slots.set(name, instance);\n } else {\n this.slots.set(name, undefined);\n }\n\n return this;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAiCA,MAAMe,mBAAkD;EACnDJ,WAAWK,eAAe,IAAIZ,
|
|
1
|
+
{"version":3,"file":"builder.mjs","names":["Application","AuthenticationModule","CacheModule","ComponentsModule","ConfigModule","DatabaseModule","HTTPModule","IdentityModule","LdapModule","LoggerModule","MailModule","ModuleName","OAuth2Module","ProvisionerModule","RuntimeModule","defaultFactories","CONFIG","LOGGER","CACHE","MAIL","RUNTIME","DATABASE","PROVISIONING","LDAP","AUTHENTICATION","IDENTITY","OAUTH2","COMPONENTS","HTTP","ApplicationBuilder","slots","Map","withConfig","instance","set","withLogger","withCache","withMail","withRuntime","withDatabase","withProvisioning","withLdap","withAuthentication","withIdentity","withOAuth2","withComponents","withHTTP","buildModules","modules","forEach","slot","name","push","factory","build","undefined"],"sources":["../../src/app/builder.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 Application,\n type IApplication,\n type IModule,\n} from 'orkos';\nimport {\n AuthenticationModule,\n CacheModule,\n ComponentsModule,\n ConfigModule,\n DatabaseModule,\n HTTPModule,\n IdentityModule,\n LdapModule,\n LoggerModule,\n MailModule,\n ModuleName,\n OAuth2Module,\n ProvisionerModule,\n RuntimeModule,\n} from './modules/index.ts';\n\ntype ModuleSlot = IModule | false | undefined;\n\ntype ModuleFactory = () => IModule;\n\nconst defaultFactories: Record<string, ModuleFactory> = {\n [ModuleName.CONFIG]: () => new ConfigModule(),\n [ModuleName.LOGGER]: () => new LoggerModule(),\n [ModuleName.CACHE]: () => new CacheModule(),\n [ModuleName.MAIL]: () => new MailModule(),\n [ModuleName.RUNTIME]: () => new RuntimeModule(),\n [ModuleName.DATABASE]: () => new DatabaseModule(),\n [ModuleName.PROVISIONING]: () => new ProvisionerModule(),\n [ModuleName.LDAP]: () => new LdapModule(),\n [ModuleName.AUTHENTICATION]: () => new AuthenticationModule(),\n [ModuleName.IDENTITY]: () => new IdentityModule(),\n [ModuleName.OAUTH2]: () => new OAuth2Module(),\n [ModuleName.COMPONENTS]: () => new ComponentsModule(),\n [ModuleName.HTTP]: () => new HTTPModule(),\n};\n\nexport class ApplicationBuilder {\n protected slots: Map<string, ModuleSlot>;\n\n constructor() {\n this.slots = new Map();\n }\n\n // ----------------------------------------------------\n\n withConfig(instance?: ConfigModule | false): this {\n return this.set(ModuleName.CONFIG, instance);\n }\n\n withLogger(instance?: LoggerModule | false): this {\n return this.set(ModuleName.LOGGER, instance);\n }\n\n withCache(instance?: CacheModule | false): this {\n return this.set(ModuleName.CACHE, instance);\n }\n\n withMail(instance?: MailModule | false): this {\n return this.set(ModuleName.MAIL, instance);\n }\n\n withRuntime(instance?: RuntimeModule | false): this {\n return this.set(ModuleName.RUNTIME, instance);\n }\n\n withDatabase(instance?: DatabaseModule | false): this {\n return this.set(ModuleName.DATABASE, instance);\n }\n\n withProvisioning(instance?: ProvisionerModule | false): this {\n return this.set(ModuleName.PROVISIONING, instance);\n }\n\n withLdap(instance?: LdapModule | false): this {\n return this.set(ModuleName.LDAP, instance);\n }\n\n withAuthentication(instance?: AuthenticationModule | false): this {\n return this.set(ModuleName.AUTHENTICATION, instance);\n }\n\n withIdentity(instance?: IdentityModule | false): this {\n return this.set(ModuleName.IDENTITY, instance);\n }\n\n withOAuth2(instance?: OAuth2Module | false): this {\n return this.set(ModuleName.OAUTH2, instance);\n }\n\n withComponents(instance?: ComponentsModule | false): this {\n return this.set(ModuleName.COMPONENTS, instance);\n }\n\n withHTTP(instance?: HTTPModule | false): this {\n return this.set(ModuleName.HTTP, instance);\n }\n\n // ----------------------------------------------------\n\n buildModules(): IModule[] {\n const modules: IModule[] = [];\n\n this.slots.forEach((slot, name) => {\n if (slot === false) {\n return;\n }\n\n if (slot) {\n modules.push(slot);\n return;\n }\n\n const factory = defaultFactories[name];\n if (factory) {\n modules.push(factory());\n }\n });\n\n return modules;\n }\n\n build(): IApplication {\n return new Application({ modules: this.buildModules() });\n }\n\n // ----------------------------------------------------\n\n protected set(name: string, instance?: IModule | false): this {\n if (instance === false) {\n this.slots.set(name, false);\n } else if (instance) {\n this.slots.set(name, instance);\n } else {\n this.slots.set(name, undefined);\n }\n\n return this;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAiCA,MAAMe,mBAAkD;EACnDJ,WAAWK,eAAe,IAAIZ,aAAAA;EAC9BO,WAAWM,eAAe,IAAIR,aAAAA;EAC9BE,WAAWO,cAAc,IAAIhB,YAAAA;EAC7BS,WAAWQ,aAAa,IAAIT,WAAAA;EAC5BC,WAAWS,gBAAgB,IAAIN,cAAAA;EAC/BH,WAAWU,iBAAiB,IAAIhB,eAAAA;EAChCM,WAAWW,qBAAqB,IAAIT,kBAAAA;EACpCF,WAAWY,aAAa,IAAIf,WAAAA;EAC5BG,WAAWa,uBAAuB,IAAIvB,qBAAAA;EACtCU,WAAWc,iBAAiB,IAAIlB,eAAAA;EAChCI,WAAWe,eAAe,IAAId,aAAAA;EAC9BD,WAAWgB,mBAAmB,IAAIxB,iBAAAA;EAClCQ,WAAWiB,aAAa,IAAItB,WAAAA;AACjC;AAEA,IAAauB,qBAAb,MAAaA;CACCC;CAEV,cAAc;EACV,KAAKA,wBAAQ,IAAIC,IAAAA;CACrB;CAIAC,WAAWC,UAAuC;EAC9C,OAAO,KAAKC,IAAIvB,WAAWK,QAAQiB,QAAAA;CACvC;CAEAE,WAAWF,UAAuC;EAC9C,OAAO,KAAKC,IAAIvB,WAAWM,QAAQgB,QAAAA;CACvC;CAEAG,UAAUH,UAAsC;EAC5C,OAAO,KAAKC,IAAIvB,WAAWO,OAAOe,QAAAA;CACtC;CAEAI,SAASJ,UAAqC;EAC1C,OAAO,KAAKC,IAAIvB,WAAWQ,MAAMc,QAAAA;CACrC;CAEAK,YAAYL,UAAwC;EAChD,OAAO,KAAKC,IAAIvB,WAAWS,SAASa,QAAAA;CACxC;CAEAM,aAAaN,UAAyC;EAClD,OAAO,KAAKC,IAAIvB,WAAWU,UAAUY,QAAAA;CACzC;CAEAO,iBAAiBP,UAA4C;EACzD,OAAO,KAAKC,IAAIvB,WAAWW,cAAcW,QAAAA;CAC7C;CAEAQ,SAASR,UAAqC;EAC1C,OAAO,KAAKC,IAAIvB,WAAWY,MAAMU,QAAAA;CACrC;CAEAS,mBAAmBT,UAA+C;EAC9D,OAAO,KAAKC,IAAIvB,WAAWa,gBAAgBS,QAAAA;CAC/C;CAEAU,aAAaV,UAAyC;EAClD,OAAO,KAAKC,IAAIvB,WAAWc,UAAUQ,QAAAA;CACzC;CAEAW,WAAWX,UAAuC;EAC9C,OAAO,KAAKC,IAAIvB,WAAWe,QAAQO,QAAAA;CACvC;CAEAY,eAAeZ,UAA2C;EACtD,OAAO,KAAKC,IAAIvB,WAAWgB,YAAYM,QAAAA;CAC3C;CAEAa,SAASb,UAAqC;EAC1C,OAAO,KAAKC,IAAIvB,WAAWiB,MAAMK,QAAAA;CACrC;CAIAc,eAA0B;EACtB,MAAMC,UAAqB,CAAA;EAE3B,KAAKlB,MAAMmB,SAASC,MAAMC,SAAAA;GACtB,IAAID,SAAS,OACT;GAGJ,IAAIA,MAAM;IACNF,QAAQI,KAAKF,IAAAA;IACb;GACJ;GAEA,MAAMG,UAAUtC,iBAAiBoC;GACjC,IAAIE,SACAL,QAAQI,KAAKC,QAAAA,CAAAA;EAErB,CAAA;EAEA,OAAOL;CACX;CAEAM,QAAsB;EAClB,OAAO,IAAItD,YAAY,EAAEgD,SAAS,KAAKD,aAAY,EAAG,CAAA;CAC1D;CAIUb,IAAIiB,MAAclB,UAAkC;EAC1D,IAAIA,aAAa,OACb,KAAKH,MAAMI,IAAIiB,MAAM,KAAA;OAClB,IAAIlB,UACP,KAAKH,MAAMI,IAAIiB,MAAMlB,QAAAA;OAErB,KAAKH,MAAMI,IAAIiB,MAAMI,KAAAA,CAAAA;EAGzB,OAAO;CACX;AACJ"}
|
package/dist/app/factory.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.mjs","names":["ApplicationBuilder","DefaultProvisioningSource","ProvisionerModule","createApplication","withConfig","withLogger","withCache","withMail","withRuntime","withDatabase","withProvisioning","withLdap","withAuthentication","withIdentity","withOAuth2","withComponents","withHTTP","build"],"sources":["../../src/app/factory.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { ApplicationBuilder } from './builder.ts';\nimport {\n DefaultProvisioningSource,\n ProvisionerModule,\n} from './modules/index.ts';\n\nexport function createApplication() {\n return new ApplicationBuilder()\n .withConfig()\n .withLogger()\n .withCache()\n .withMail()\n .withRuntime()\n .withDatabase()\n .withProvisioning(new ProvisionerModule([\n new DefaultProvisioningSource(),\n ]))\n .withLdap()\n .withAuthentication()\n .withIdentity()\n .withOAuth2()\n .withComponents()\n .withHTTP()\n .build();\n}\n"],"mappings":";;;;;AAaA,SAAgBG,oBAAAA;
|
|
1
|
+
{"version":3,"file":"factory.mjs","names":["ApplicationBuilder","DefaultProvisioningSource","ProvisionerModule","createApplication","withConfig","withLogger","withCache","withMail","withRuntime","withDatabase","withProvisioning","withLdap","withAuthentication","withIdentity","withOAuth2","withComponents","withHTTP","build"],"sources":["../../src/app/factory.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { ApplicationBuilder } from './builder.ts';\nimport {\n DefaultProvisioningSource,\n ProvisionerModule,\n} from './modules/index.ts';\n\nexport function createApplication() {\n return new ApplicationBuilder()\n .withConfig()\n .withLogger()\n .withCache()\n .withMail()\n .withRuntime()\n .withDatabase()\n .withProvisioning(new ProvisionerModule([\n new DefaultProvisioningSource(),\n ]))\n .withLdap()\n .withAuthentication()\n .withIdentity()\n .withOAuth2()\n .withComponents()\n .withHTTP()\n .build();\n}\n"],"mappings":";;;;;AAaA,SAAgBG,oBAAAA;CACZ,OAAO,IAAIH,mBAAAA,EACNI,WAAU,EACVC,WAAU,EACVC,UAAS,EACTC,SAAQ,EACRC,YAAW,EACXC,aAAY,EACZC,iBAAiB,IAAIR,kBAAkB,CACpC,IAAID,0BAAAA,CAAAA,CACP,CAAA,EACAU,SAAQ,EACRC,mBAAkB,EAClBC,aAAY,EACZC,WAAU,EACVC,eAAc,EACdC,SAAQ,EACRC,MAAK;AACd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.mjs","names":["TypedToken","AuthenticationInjectionKey","SessionManager","SessionRepository"],"sources":["../../../../src/app/modules/authentication/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { TypedToken } from 'eldin';\nimport type { ISessionManager, ISessionRepository } from '../../../core/index.ts';\n\nexport const AuthenticationInjectionKey = {\n SessionManager: new TypedToken<ISessionManager>('SessionManager'),\n SessionRepository: new TypedToken<ISessionRepository>('SessionRepository'),\n} as const;\n"],"mappings":";;AAUA,MAAaC,6BAA6B;CACtCC,gBAAgB,IAAIF,WAA4B,
|
|
1
|
+
{"version":3,"file":"constants.mjs","names":["TypedToken","AuthenticationInjectionKey","SessionManager","SessionRepository"],"sources":["../../../../src/app/modules/authentication/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { TypedToken } from 'eldin';\nimport type { ISessionManager, ISessionRepository } from '../../../core/index.ts';\n\nexport const AuthenticationInjectionKey = {\n SessionManager: new TypedToken<ISessionManager>('SessionManager'),\n SessionRepository: new TypedToken<ISessionRepository>('SessionRepository'),\n} as const;\n"],"mappings":";;AAUA,MAAaC,6BAA6B;CACtCC,gBAAgB,IAAIF,WAA4B,gBAAA;CAChDG,mBAAmB,IAAIH,WAA+B,mBAAA;AAC1D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":["SessionEntity","SessionManager","CacheInjectionKey","ConfigInjectionKey","ModuleName","AuthenticationInjectionKey","SessionRepository","AuthenticationModule","name","dependencies","AUTHENTICATION","DATABASE","CACHE","CONFIG","setup","container","register","useFactory","c","cache","resolve","repository","config","options","maxAge","tokenRefreshMaxAge"],"sources":["../../../../src/app/modules/authentication/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { Session } from '@authup/core-kit';\nimport type { Repository } from 'typeorm';\nimport { SessionEntity } from '../../../adapters/database/domains/index.ts';\nimport type { IContainer } from 'eldin';\nimport { SessionManager } from '../../../core/index.ts';\nimport { CacheInjectionKey } from '../cache/index.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\n\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\nimport { AuthenticationInjectionKey } from './constants.ts';\nimport { SessionRepository } from './repositories/index.ts';\n\nexport class AuthenticationModule implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.AUTHENTICATION;\n this.dependencies = [ModuleName.DATABASE, ModuleName.CACHE, ModuleName.CONFIG];\n }\n\n async setup(container: IContainer): Promise<void> {\n container.register(AuthenticationInjectionKey.SessionRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n const repository = c.resolve<Repository<Session>>(SessionEntity);\n return new SessionRepository({\n cache,\n repository,\n });\n },\n });\n\n container.register(AuthenticationInjectionKey.SessionManager, {\n useFactory: (c) => {\n const config = c.resolve(ConfigInjectionKey);\n const repository = c.resolve(AuthenticationInjectionKey.SessionRepository);\n return new SessionManager({\n repository,\n options: { maxAge: config.tokenRefreshMaxAge + 3_600 },\n });\n },\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAoBA,IAAaO,uBAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;
|
|
1
|
+
{"version":3,"file":"module.mjs","names":["SessionEntity","SessionManager","CacheInjectionKey","ConfigInjectionKey","ModuleName","AuthenticationInjectionKey","SessionRepository","AuthenticationModule","name","dependencies","AUTHENTICATION","DATABASE","CACHE","CONFIG","setup","container","register","useFactory","c","cache","resolve","repository","config","options","maxAge","tokenRefreshMaxAge"],"sources":["../../../../src/app/modules/authentication/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { Session } from '@authup/core-kit';\nimport type { Repository } from 'typeorm';\nimport { SessionEntity } from '../../../adapters/database/domains/index.ts';\nimport type { IContainer } from 'eldin';\nimport { SessionManager } from '../../../core/index.ts';\nimport { CacheInjectionKey } from '../cache/index.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\n\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\nimport { AuthenticationInjectionKey } from './constants.ts';\nimport { SessionRepository } from './repositories/index.ts';\n\nexport class AuthenticationModule implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.AUTHENTICATION;\n this.dependencies = [ModuleName.DATABASE, ModuleName.CACHE, ModuleName.CONFIG];\n }\n\n async setup(container: IContainer): Promise<void> {\n container.register(AuthenticationInjectionKey.SessionRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n const repository = c.resolve<Repository<Session>>(SessionEntity);\n return new SessionRepository({\n cache,\n repository,\n });\n },\n });\n\n container.register(AuthenticationInjectionKey.SessionManager, {\n useFactory: (c) => {\n const config = c.resolve(ConfigInjectionKey);\n const repository = c.resolve(AuthenticationInjectionKey.SessionRepository);\n return new SessionManager({\n repository,\n options: { maxAge: config.tokenRefreshMaxAge + 3_600 },\n });\n },\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAoBA,IAAaO,uBAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;EACV,KAAKD,OAAOJ,WAAWM;EACvB,KAAKD,eAAe;GAACL,WAAWO;GAAUP,WAAWQ;GAAOR,WAAWS;;CAC3E;CAEA,MAAMC,MAAMC,WAAsC;EAC9CA,UAAUC,SAASX,2BAA2BC,mBAAmB,EAC7DW,aAAaC,MAAAA;GAGT,OAAO,IAAIZ,kBAAkB;IACzBa,OAHUD,EAAEE,QAAQlB,iBAGpBiB;IACAE,YAHeH,EAAEE,QAA6BpB,aAG9CqB;GACJ,CAAA;EACJ,EACJ,CAAA;EAEAN,UAAUC,SAASX,2BAA2BJ,gBAAgB,EAC1DgB,aAAaC,MAAAA;GACT,MAAMI,SAASJ,EAAEE,QAAQjB,kBAAAA;GAEzB,OAAO,IAAIF,eAAe;IACtBoB,YAFeH,EAAEE,QAAQf,2BAA2BC,iBAEpDe;IACAE,SAAS,EAAEC,QAAQF,OAAOG,qBAAqB,KAAM;GACzD,CAAA;EACJ,EACJ,CAAA;CACJ;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.mjs","names":["buildCacheKey","AuthenticationCachePrefix","SessionRepository","cache","repository","ctx","findOneById","id","session","get","prefix","SESSION","key","findOneBy","save","input","create","set","ttl","Date","expires_at","getTime","now","remove","drop","removeById"],"sources":["../../../../../src/app/modules/authentication/repositories/session.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { Session } from '@authup/core-kit';\nimport type { ICache } from '@authup/server-kit';\nimport { buildCacheKey } from '@authup/server-kit';\nimport type { Repository } from 'typeorm';\nimport type { ISessionRepository } from '../../../../core/index.ts';\nimport { AuthenticationCachePrefix } from './constants.ts';\n\ntype SessionRepositoryContext = {\n repository: Repository<Session>,\n cache: ICache\n};\n\nexport class SessionRepository implements ISessionRepository {\n protected cache : ICache;\n\n protected repository : Repository<Session>;\n\n // -----------------------------------------------------\n\n constructor(ctx: SessionRepositoryContext) {\n this.cache = ctx.cache;\n this.repository = ctx.repository;\n }\n\n // -----------------------------------------------------\n\n async findOneById(id: string): Promise<Session | null> {\n const session = await this.cache.get<Session>(\n buildCacheKey({\n prefix: AuthenticationCachePrefix.SESSION,\n key: id, \n }),\n );\n\n if (session) {\n return session;\n }\n\n return this.repository.findOneBy({ id });\n }\n\n // -----------------------------------------------------\n\n async save(input: Partial<Session>): Promise<Session> {\n const session = this.repository.create(input);\n await this.repository.save(session);\n\n await this.cache.set(\n buildCacheKey({\n prefix: AuthenticationCachePrefix.SESSION,\n key: session.id, \n }),\n session,\n { ttl: new Date(session.expires_at).getTime() - Date.now() },\n );\n\n return session;\n }\n\n // -----------------------------------------------------\n\n async remove(session: Session): Promise<void> {\n await this.repository.remove(session);\n await this.cache.drop(\n buildCacheKey({\n prefix: AuthenticationCachePrefix.SESSION,\n key: session.id, \n }),\n );\n }\n\n async removeById(id: string): Promise<void> {\n const session = await this.findOneById(id);\n\n if (session) {\n await this.remove(session);\n }\n }\n}\n"],"mappings":";;;AAmBA,IAAaE,oBAAb,MAAaA;CACCC;CAEAC;CAIV,YAAYC,KAA+B;
|
|
1
|
+
{"version":3,"file":"session.mjs","names":["buildCacheKey","AuthenticationCachePrefix","SessionRepository","cache","repository","ctx","findOneById","id","session","get","prefix","SESSION","key","findOneBy","save","input","create","set","ttl","Date","expires_at","getTime","now","remove","drop","removeById"],"sources":["../../../../../src/app/modules/authentication/repositories/session.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { Session } from '@authup/core-kit';\nimport type { ICache } from '@authup/server-kit';\nimport { buildCacheKey } from '@authup/server-kit';\nimport type { Repository } from 'typeorm';\nimport type { ISessionRepository } from '../../../../core/index.ts';\nimport { AuthenticationCachePrefix } from './constants.ts';\n\ntype SessionRepositoryContext = {\n repository: Repository<Session>,\n cache: ICache\n};\n\nexport class SessionRepository implements ISessionRepository {\n protected cache : ICache;\n\n protected repository : Repository<Session>;\n\n // -----------------------------------------------------\n\n constructor(ctx: SessionRepositoryContext) {\n this.cache = ctx.cache;\n this.repository = ctx.repository;\n }\n\n // -----------------------------------------------------\n\n async findOneById(id: string): Promise<Session | null> {\n const session = await this.cache.get<Session>(\n buildCacheKey({\n prefix: AuthenticationCachePrefix.SESSION,\n key: id, \n }),\n );\n\n if (session) {\n return session;\n }\n\n return this.repository.findOneBy({ id });\n }\n\n // -----------------------------------------------------\n\n async save(input: Partial<Session>): Promise<Session> {\n const session = this.repository.create(input);\n await this.repository.save(session);\n\n await this.cache.set(\n buildCacheKey({\n prefix: AuthenticationCachePrefix.SESSION,\n key: session.id, \n }),\n session,\n { ttl: new Date(session.expires_at).getTime() - Date.now() },\n );\n\n return session;\n }\n\n // -----------------------------------------------------\n\n async remove(session: Session): Promise<void> {\n await this.repository.remove(session);\n await this.cache.drop(\n buildCacheKey({\n prefix: AuthenticationCachePrefix.SESSION,\n key: session.id, \n }),\n );\n }\n\n async removeById(id: string): Promise<void> {\n const session = await this.findOneById(id);\n\n if (session) {\n await this.remove(session);\n }\n }\n}\n"],"mappings":";;;AAmBA,IAAaE,oBAAb,MAAaA;CACCC;CAEAC;CAIV,YAAYC,KAA+B;EACvC,KAAKF,QAAQE,IAAIF;EACjB,KAAKC,aAAaC,IAAID;CAC1B;CAIA,MAAME,YAAYC,IAAqC;EACnD,MAAMC,UAAU,MAAM,KAAKL,MAAMM,IAC7BT,cAAc;GACVU,QAAQT,0BAA0BU;GAClCC,KAAKL;EACT,CAAA,CAAA;EAGJ,IAAIC,SACA,OAAOA;EAGX,OAAO,KAAKJ,WAAWS,UAAU,EAAEN,GAAG,CAAA;CAC1C;CAIA,MAAMO,KAAKC,OAA2C;EAClD,MAAMP,UAAU,KAAKJ,WAAWY,OAAOD,KAAAA;EACvC,MAAM,KAAKX,WAAWU,KAAKN,OAAAA;EAE3B,MAAM,KAAKL,MAAMc,IACbjB,cAAc;GACVU,QAAQT,0BAA0BU;GAClCC,KAAKJ,QAAQD;EACjB,CAAA,GACAC,SACA,EAAEU,KAAK,IAAIC,KAAKX,QAAQY,UAAU,EAAEC,QAAO,IAAKF,KAAKG,IAAG,EAAG,CAAA;EAG/D,OAAOd;CACX;CAIA,MAAMe,OAAOf,SAAiC;EAC1C,MAAM,KAAKJ,WAAWmB,OAAOf,OAAAA;EAC7B,MAAM,KAAKL,MAAMqB,KACbxB,cAAc;GACVU,QAAQT,0BAA0BU;GAClCC,KAAKJ,QAAQD;EACjB,CAAA,CAAA;CAER;CAEA,MAAMkB,WAAWlB,IAA2B;EACxC,MAAMC,UAAU,MAAM,KAAKF,YAAYC,EAAAA;EAEvC,IAAIC,SACA,MAAM,KAAKe,OAAOf,OAAAA;CAE1B;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.mjs","names":["TypedToken","CacheInjectionKey"],"sources":["../../../../src/app/modules/cache/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { ICache } from '@authup/server-kit';\nimport { TypedToken } from 'eldin';\n\nexport const CacheInjectionKey = new TypedToken<ICache>('Cache');\n"],"mappings":";;AAUA,MAAaC,oBAAoB,IAAID,WAAmB,
|
|
1
|
+
{"version":3,"file":"constants.mjs","names":["TypedToken","CacheInjectionKey"],"sources":["../../../../src/app/modules/cache/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 type { ICache } from '@authup/server-kit';\nimport { TypedToken } from 'eldin';\n\nexport const CacheInjectionKey = new TypedToken<ICache>('Cache');\n"],"mappings":";;AAUA,MAAaC,oBAAoB,IAAID,WAAmB,OAAA"}
|