@webiny/api-core 0.0.0-unstable.e622468070 → 0.0.0-unstable.e6f0dc8ca7
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/ApiCoreFeature.d.ts +5 -1
- package/ApiCoreFeature.js +8 -0
- package/ApiCoreFeature.js.map +1 -1
- package/createApiCore.d.ts +1 -1
- package/createApiCore.js +2 -3
- package/createApiCore.js.map +1 -1
- package/domain/security/ApiToken.d.ts +1 -0
- package/domain/security/ApiToken.js +1 -0
- package/domain/security/ApiToken.js.map +1 -1
- package/exports/api/{buildParams.d.ts → build-params.d.ts} +1 -0
- package/exports/api/build-params.js +4 -0
- package/exports/api/build-params.js.map +1 -0
- package/exports/api/{eventPublisher.js → event-publisher.d.ts} +1 -2
- package/exports/api/event-publisher.js +4 -0
- package/exports/api/event-publisher.js.map +1 -0
- package/exports/api/{keyValueStore.d.ts → key-value-store.d.ts} +1 -0
- package/exports/api/key-value-store.js +4 -0
- package/exports/api/key-value-store.js.map +1 -0
- package/exports/api/logger.d.ts +1 -0
- package/exports/api/logger.js +1 -0
- package/exports/api/logger.js.map +1 -1
- package/exports/api/security/api-key.d.ts +7 -0
- package/exports/api/security/api-key.js +9 -0
- package/exports/api/security/api-key.js.map +1 -0
- package/exports/api/security/authentication.d.ts +1 -1
- package/exports/api/security/authentication.js +1 -1
- package/exports/api/security/authentication.js.map +1 -1
- package/exports/api/security/role.d.ts +3 -3
- package/exports/api/security/role.js +3 -3
- package/exports/api/security/role.js.map +1 -1
- package/exports/api/security/user.d.ts +3 -3
- package/exports/api/security/user.js +3 -3
- package/exports/api/security/user.js.map +1 -1
- package/exports/api/security.d.ts +6 -0
- package/exports/api/security.js +5 -0
- package/exports/api/security.js.map +1 -1
- package/exports/api/system.d.ts +1 -1
- package/exports/api/system.js +1 -1
- package/exports/api/system.js.map +1 -1
- package/exports/api/tenancy.d.ts +4 -4
- package/exports/api/tenancy.js +4 -4
- package/exports/api/tenancy.js.map +1 -1
- package/exports/api.d.ts +7 -0
- package/exports/api.js +8 -0
- package/exports/api.js.map +1 -0
- package/features/ai/Ai.d.ts +26 -0
- package/features/ai/Ai.js +133 -0
- package/features/ai/Ai.js.map +1 -0
- package/features/ai/AiSdkTools.d.ts +11 -0
- package/features/ai/AiSdkTools.js +25 -0
- package/features/ai/AiSdkTools.js.map +1 -0
- package/features/ai/AnthropicSdkFactory.d.ts +10 -0
- package/features/ai/AnthropicSdkFactory.js +71 -0
- package/features/ai/AnthropicSdkFactory.js.map +1 -0
- package/features/ai/OpenAiSdkFactory.d.ts +10 -0
- package/features/ai/OpenAiSdkFactory.js +187 -0
- package/features/ai/OpenAiSdkFactory.js.map +1 -0
- package/features/ai/abstractions.d.ts +92 -0
- package/features/ai/abstractions.js +35 -0
- package/features/ai/abstractions.js.map +1 -0
- package/features/ai/feature.d.ts +4 -0
- package/features/ai/feature.js +16 -0
- package/features/ai/feature.js.map +1 -0
- package/features/ai/index.d.ts +3 -0
- package/features/ai/index.js +4 -0
- package/features/ai/index.js.map +1 -0
- package/features/buildParams/abstractions.d.ts +2 -0
- package/features/buildParams/abstractions.js +2 -0
- package/features/buildParams/abstractions.js.map +1 -1
- package/features/buildParams/feature.d.ts +5 -1
- package/features/encryption/EncryptionService.d.ts +10 -0
- package/features/encryption/EncryptionService.js +58 -0
- package/features/encryption/EncryptionService.js.map +1 -0
- package/features/encryption/abstractions.d.ts +9 -0
- package/features/encryption/abstractions.js +5 -0
- package/features/encryption/abstractions.js.map +1 -0
- package/features/encryption/feature.d.ts +4 -0
- package/features/encryption/feature.js +10 -0
- package/features/encryption/feature.js.map +1 -0
- package/features/encryption/index.d.ts +1 -0
- package/features/encryption/index.js +3 -0
- package/features/encryption/index.js.map +1 -0
- package/features/eventPublisher/abstractions.d.ts +2 -0
- package/features/eventPublisher/abstractions.js +3 -0
- package/features/eventPublisher/abstractions.js.map +1 -1
- package/features/eventPublisher/feature.d.ts +5 -1
- package/features/featureFlags/FeatureFlags.d.ts +12 -0
- package/features/featureFlags/FeatureFlags.js +18 -0
- package/features/featureFlags/FeatureFlags.js.map +1 -0
- package/features/featureFlags/abstractions.d.ts +8 -0
- package/features/featureFlags/abstractions.js +4 -0
- package/features/featureFlags/abstractions.js.map +1 -0
- package/features/featureFlags/feature.d.ts +5 -0
- package/features/featureFlags/feature.js +10 -0
- package/features/featureFlags/feature.js.map +1 -0
- package/features/keyValueStore/GlobalKeyValueStore.js +3 -1
- package/features/keyValueStore/GlobalKeyValueStore.js.map +1 -1
- package/features/keyValueStore/KeyValueStoreRepository.d.ts +2 -2
- package/features/keyValueStore/KeyValueStoreRepository.js +2 -2
- package/features/keyValueStore/KeyValueStoreRepository.js.map +1 -1
- package/features/keyValueStore/abstractions.d.ts +10 -2
- package/features/keyValueStore/abstractions.js +4 -0
- package/features/keyValueStore/abstractions.js.map +1 -1
- package/features/keyValueStore/feature.d.ts +4 -1
- package/features/keyValueStore/feature.js.map +1 -1
- package/features/logger/abstractions.d.ts +1 -0
- package/features/logger/abstractions.js +1 -0
- package/features/logger/abstractions.js.map +1 -1
- package/features/logger/feature.d.ts +4 -1
- package/features/masker/Masker.d.ts +8 -0
- package/features/masker/Masker.js +21 -0
- package/features/masker/Masker.js.map +1 -0
- package/features/masker/abstractions.d.ts +11 -0
- package/features/masker/abstractions.js +4 -0
- package/features/masker/abstractions.js.map +1 -0
- package/features/masker/feature.d.ts +4 -0
- package/features/masker/feature.js +10 -0
- package/features/masker/feature.js.map +1 -0
- package/features/masker/index.d.ts +1 -0
- package/features/masker/index.js +3 -0
- package/features/masker/index.js.map +1 -0
- package/features/security/IdentityContext/IdentityContext.js +1 -1
- package/features/security/IdentityContext/IdentityContext.js.map +1 -1
- package/features/security/IdentityContext/abstractions.d.ts +1 -0
- package/features/security/IdentityContext/abstractions.js +1 -0
- package/features/security/IdentityContext/abstractions.js.map +1 -1
- package/features/security/IdentityContext/feature.d.ts +4 -1
- package/features/security/SecurityFeature.d.ts +5 -1
- package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js +1 -1
- package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js.map +1 -1
- package/features/security/apiKeys/CreateApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/CreateApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/CreateApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/CreateApiKey/events.d.ts +6 -4
- package/features/security/apiKeys/CreateApiKey/events.js +8 -4
- package/features/security/apiKeys/CreateApiKey/events.js.map +1 -1
- package/features/security/apiKeys/CreateApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/DeleteApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/DeleteApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/DeleteApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/DeleteApiKey/events.d.ts +6 -4
- package/features/security/apiKeys/DeleteApiKey/events.js +8 -4
- package/features/security/apiKeys/DeleteApiKey/events.js.map +1 -1
- package/features/security/apiKeys/DeleteApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/GetApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/GetApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/GetApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/GetApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/GetApiKeyBySlug/abstractions.d.ts +1 -0
- package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js +1 -0
- package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js.map +1 -1
- package/features/security/apiKeys/GetApiKeyBySlug/feature.d.ts +4 -1
- package/features/security/apiKeys/GetApiKeyByToken/abstractions.d.ts +1 -0
- package/features/security/apiKeys/GetApiKeyByToken/abstractions.js +1 -0
- package/features/security/apiKeys/GetApiKeyByToken/abstractions.js.map +1 -1
- package/features/security/apiKeys/GetApiKeyByToken/feature.d.ts +4 -1
- package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js +1 -1
- package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js.map +1 -1
- package/features/security/apiKeys/ListApiKeys/abstractions.d.ts +1 -0
- package/features/security/apiKeys/ListApiKeys/abstractions.js +1 -0
- package/features/security/apiKeys/ListApiKeys/abstractions.js.map +1 -1
- package/features/security/apiKeys/ListApiKeys/feature.d.ts +4 -1
- package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js +1 -1
- package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js.map +1 -1
- package/features/security/apiKeys/UpdateApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/UpdateApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/UpdateApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/UpdateApiKey/events.d.ts +6 -4
- package/features/security/apiKeys/UpdateApiKey/events.js +8 -4
- package/features/security/apiKeys/UpdateApiKey/events.js.map +1 -1
- package/features/security/apiKeys/UpdateApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/feature.d.ts +4 -1
- package/features/security/apiKeys/shared/abstractions.d.ts +5 -2
- package/features/security/apiKeys/shared/abstractions.js +3 -0
- package/features/security/apiKeys/shared/abstractions.js.map +1 -1
- package/features/security/apiKeys/shared/schemas.d.ts +10 -71
- package/features/security/apiKeys/shared/schemas.js +4 -4
- package/features/security/apiKeys/shared/schemas.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.d.ts +2 -2
- package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js +2 -2
- package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/abstractions.d.ts +1 -0
- package/features/security/authentication/AuthenticationContext/abstractions.js +1 -0
- package/features/security/authentication/AuthenticationContext/abstractions.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/events.d.ts +6 -4
- package/features/security/authentication/AuthenticationContext/events.js +8 -4
- package/features/security/authentication/AuthenticationContext/events.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/feature.d.ts +4 -1
- package/features/security/authentication/Authenticator/abstractions.d.ts +1 -0
- package/features/security/authentication/Authenticator/abstractions.js +1 -0
- package/features/security/authentication/Authenticator/abstractions.js.map +1 -1
- package/features/security/authorization/AuthorizationContext/AuthorizationContext.d.ts +1 -0
- package/features/security/authorization/AuthorizationContext/AuthorizationContext.js +14 -2
- package/features/security/authorization/AuthorizationContext/AuthorizationContext.js.map +1 -1
- package/features/security/authorization/AuthorizationContext/abstractions.d.ts +2 -0
- package/features/security/authorization/AuthorizationContext/abstractions.js +2 -0
- package/features/security/authorization/AuthorizationContext/abstractions.js.map +1 -1
- package/features/security/authorization/AuthorizationContext/feature.d.ts +4 -1
- package/features/security/authorization/Authorizer/abstractions.d.ts +1 -0
- package/features/security/authorization/Authorizer/abstractions.js +1 -0
- package/features/security/authorization/Authorizer/abstractions.js.map +1 -1
- package/features/security/authorization/GroupsTeamsAuthorizer/feature.d.ts +4 -1
- package/features/security/login/abstractions.d.ts +3 -2
- package/features/security/login/abstractions.js +4 -2
- package/features/security/login/abstractions.js.map +1 -1
- package/features/security/permissions/createPermissionSchema.d.ts +2 -0
- package/features/security/permissions/createPermissionSchema.js +8 -0
- package/features/security/permissions/createPermissionSchema.js.map +1 -0
- package/features/security/permissions/createPermissions.d.ts +8 -0
- package/features/security/permissions/createPermissions.js +250 -0
- package/features/security/permissions/createPermissions.js.map +1 -0
- package/features/security/permissions/index.d.ts +3 -0
- package/features/security/permissions/index.js +4 -0
- package/features/security/permissions/index.js.map +1 -0
- package/features/security/permissions/types.d.ts +137 -0
- package/features/security/permissions/types.js +3 -0
- package/features/security/permissions/types.js.map +1 -0
- package/features/security/roles/CreateRole/CreateRoleUseCase.d.ts +1 -3
- package/features/security/roles/CreateRole/CreateRoleUseCase.js +3 -7
- package/features/security/roles/CreateRole/CreateRoleUseCase.js.map +1 -1
- package/features/security/roles/CreateRole/abstractions.d.ts +1 -0
- package/features/security/roles/CreateRole/abstractions.js +1 -0
- package/features/security/roles/CreateRole/abstractions.js.map +1 -1
- package/features/security/roles/CreateRole/events.d.ts +6 -4
- package/features/security/roles/CreateRole/events.js +8 -4
- package/features/security/roles/CreateRole/events.js.map +1 -1
- package/features/security/roles/CreateRole/feature.d.ts +4 -1
- package/features/security/roles/CreateRole/schema.d.ts +2 -20
- package/features/security/roles/CreateRole/schema.js +2 -2
- package/features/security/roles/CreateRole/schema.js.map +1 -1
- package/features/security/roles/DeleteRole/abstractions.d.ts +1 -0
- package/features/security/roles/DeleteRole/abstractions.js +1 -0
- package/features/security/roles/DeleteRole/abstractions.js.map +1 -1
- package/features/security/roles/DeleteRole/events.d.ts +6 -4
- package/features/security/roles/DeleteRole/events.js +8 -4
- package/features/security/roles/DeleteRole/events.js.map +1 -1
- package/features/security/roles/DeleteRole/feature.d.ts +4 -1
- package/features/security/roles/GetRole/abstractions.d.ts +1 -0
- package/features/security/roles/GetRole/abstractions.js +1 -0
- package/features/security/roles/GetRole/abstractions.js.map +1 -1
- package/features/security/roles/GetRole/feature.d.ts +4 -1
- package/features/security/roles/ListRoles/abstractions.d.ts +1 -0
- package/features/security/roles/ListRoles/abstractions.js +1 -0
- package/features/security/roles/ListRoles/abstractions.js.map +1 -1
- package/features/security/roles/ListRoles/feature.d.ts +4 -1
- package/features/security/roles/UpdateRole/UpdateRoleUseCase.js +1 -1
- package/features/security/roles/UpdateRole/UpdateRoleUseCase.js.map +1 -1
- package/features/security/roles/UpdateRole/abstractions.d.ts +1 -0
- package/features/security/roles/UpdateRole/abstractions.js +1 -0
- package/features/security/roles/UpdateRole/abstractions.js.map +1 -1
- package/features/security/roles/UpdateRole/events.d.ts +6 -4
- package/features/security/roles/UpdateRole/events.js +8 -4
- package/features/security/roles/UpdateRole/events.js.map +1 -1
- package/features/security/roles/UpdateRole/feature.d.ts +4 -1
- package/features/security/roles/UpdateRole/schema.d.ts +2 -18
- package/features/security/roles/UpdateRole/schema.js +2 -2
- package/features/security/roles/UpdateRole/schema.js.map +1 -1
- package/features/security/roles/feature.d.ts +4 -1
- package/features/security/roles/feature.js +2 -0
- package/features/security/roles/feature.js.map +1 -1
- package/features/security/roles/shared/RoleProvider.d.ts +13 -0
- package/features/security/roles/shared/RoleProvider.js +29 -0
- package/features/security/roles/shared/RoleProvider.js.map +1 -0
- package/features/security/roles/shared/RolesRepository.d.ts +3 -1
- package/features/security/roles/shared/RolesRepository.js +19 -18
- package/features/security/roles/shared/RolesRepository.js.map +1 -1
- package/features/security/roles/shared/abstractions.d.ts +19 -0
- package/features/security/roles/shared/abstractions.js +3 -0
- package/features/security/roles/shared/abstractions.js.map +1 -1
- package/features/security/shared/abstractions.d.ts +5 -14
- package/features/security/shared/abstractions.js +3 -16
- package/features/security/shared/abstractions.js.map +1 -1
- package/features/security/teams/CreateTeam/CreateTeamUseCase.d.ts +1 -3
- package/features/security/teams/CreateTeam/CreateTeamUseCase.js +3 -7
- package/features/security/teams/CreateTeam/CreateTeamUseCase.js.map +1 -1
- package/features/security/teams/CreateTeam/abstractions.d.ts +1 -0
- package/features/security/teams/CreateTeam/abstractions.js +1 -0
- package/features/security/teams/CreateTeam/abstractions.js.map +1 -1
- package/features/security/teams/CreateTeam/events.d.ts +6 -4
- package/features/security/teams/CreateTeam/events.js +8 -4
- package/features/security/teams/CreateTeam/events.js.map +1 -1
- package/features/security/teams/CreateTeam/feature.d.ts +4 -1
- package/features/security/teams/CreateTeam/index.d.ts +1 -1
- package/features/security/teams/CreateTeam/index.js +1 -1
- package/features/security/teams/CreateTeam/index.js.map +1 -1
- package/features/security/teams/CreateTeam/schema.d.ts +2 -12
- package/features/security/teams/DeleteTeam/abstractions.d.ts +1 -0
- package/features/security/teams/DeleteTeam/abstractions.js +1 -0
- package/features/security/teams/DeleteTeam/abstractions.js.map +1 -1
- package/features/security/teams/DeleteTeam/events.d.ts +6 -4
- package/features/security/teams/DeleteTeam/events.js +8 -4
- package/features/security/teams/DeleteTeam/events.js.map +1 -1
- package/features/security/teams/DeleteTeam/feature.d.ts +4 -1
- package/features/security/teams/GetTeam/abstractions.d.ts +1 -0
- package/features/security/teams/GetTeam/abstractions.js +1 -0
- package/features/security/teams/GetTeam/abstractions.js.map +1 -1
- package/features/security/teams/GetTeam/feature.d.ts +4 -1
- package/features/security/teams/ListTeams/abstractions.d.ts +1 -0
- package/features/security/teams/ListTeams/abstractions.js +1 -0
- package/features/security/teams/ListTeams/abstractions.js.map +1 -1
- package/features/security/teams/ListTeams/feature.d.ts +4 -1
- package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js +1 -1
- package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js.map +1 -1
- package/features/security/teams/UpdateTeam/abstractions.d.ts +1 -0
- package/features/security/teams/UpdateTeam/abstractions.js +1 -0
- package/features/security/teams/UpdateTeam/abstractions.js.map +1 -1
- package/features/security/teams/UpdateTeam/events.d.ts +6 -4
- package/features/security/teams/UpdateTeam/events.js +8 -4
- package/features/security/teams/UpdateTeam/events.js.map +1 -1
- package/features/security/teams/UpdateTeam/feature.d.ts +4 -1
- package/features/security/teams/UpdateTeam/schema.d.ts +2 -10
- package/features/security/teams/feature.d.ts +4 -1
- package/features/security/teams/feature.js +6 -0
- package/features/security/teams/feature.js.map +1 -1
- package/features/security/teams/shared/TeamProvider.d.ts +13 -0
- package/features/security/teams/shared/TeamProvider.js +29 -0
- package/features/security/teams/shared/TeamProvider.js.map +1 -0
- package/features/security/teams/shared/TeamsRepository.js +20 -18
- package/features/security/teams/shared/TeamsRepository.js.map +1 -1
- package/features/security/teams/shared/abstractions.d.ts +18 -0
- package/features/security/teams/shared/abstractions.js +3 -0
- package/features/security/teams/shared/abstractions.js.map +1 -1
- package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.d.ts +17 -0
- package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js +76 -0
- package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js.map +1 -0
- package/features/security/utils/verifyJwtUsingJwk.d.ts +2 -4
- package/features/security/utils/verifyJwtUsingJwk.js +1 -1
- package/features/security/utils/verifyJwtUsingJwk.js.map +1 -1
- package/features/system/InstallSystem/abstractions.d.ts +4 -5
- package/features/system/InstallSystem/abstractions.js +3 -4
- package/features/system/InstallSystem/abstractions.js.map +1 -1
- package/features/system/InstallSystem/events.js +2 -2
- package/features/system/InstallSystem/events.js.map +1 -1
- package/features/system/InstallSystem/feature.d.ts +5 -1
- package/features/system/InstallSystem/index.d.ts +1 -1
- package/features/system/InstallSystem/index.js +1 -1
- package/features/system/InstallSystem/index.js.map +1 -1
- package/features/system/SystemFeature.d.ts +4 -1
- package/features/task/TaskController/abstractions.d.ts +1 -0
- package/features/task/TaskController/abstractions.js +1 -0
- package/features/task/TaskController/abstractions.js.map +1 -1
- package/features/task/TaskDefinition/abstractions.d.ts +7 -1
- package/features/task/TaskDefinition/abstractions.js +1 -0
- package/features/task/TaskDefinition/abstractions.js.map +1 -1
- package/features/task/TaskService/abstractions.d.ts +1 -0
- package/features/task/TaskService/abstractions.js +1 -0
- package/features/task/TaskService/abstractions.js.map +1 -1
- package/features/tenancy/CreateTenant/abstractions.d.ts +9 -7
- package/features/tenancy/CreateTenant/abstractions.js +7 -5
- package/features/tenancy/CreateTenant/abstractions.js.map +1 -1
- package/features/tenancy/CreateTenant/events.js +3 -3
- package/features/tenancy/CreateTenant/events.js.map +1 -1
- package/features/tenancy/CreateTenant/feature.d.ts +5 -1
- package/features/tenancy/CreateTenant/index.d.ts +1 -1
- package/features/tenancy/CreateTenant/index.js +1 -1
- package/features/tenancy/CreateTenant/index.js.map +1 -1
- package/features/tenancy/DeleteTenant/abstractions.d.ts +9 -4
- package/features/tenancy/DeleteTenant/abstractions.js +7 -2
- package/features/tenancy/DeleteTenant/abstractions.js.map +1 -1
- package/features/tenancy/DeleteTenant/events.js +3 -3
- package/features/tenancy/DeleteTenant/events.js.map +1 -1
- package/features/tenancy/DeleteTenant/feature.d.ts +5 -1
- package/features/tenancy/DeleteTenant/index.d.ts +1 -1
- package/features/tenancy/DeleteTenant/index.js +1 -1
- package/features/tenancy/DeleteTenant/index.js.map +1 -1
- package/features/tenancy/GetRootTenant/feature.d.ts +5 -1
- package/features/tenancy/GetTenantById/abstractions.d.ts +3 -0
- package/features/tenancy/GetTenantById/abstractions.js +3 -9
- package/features/tenancy/GetTenantById/abstractions.js.map +1 -1
- package/features/tenancy/GetTenantById/feature.d.ts +5 -1
- package/features/tenancy/InstallTenant/abstractions.d.ts +5 -11
- package/features/tenancy/InstallTenant/abstractions.js +4 -13
- package/features/tenancy/InstallTenant/abstractions.js.map +1 -1
- package/features/tenancy/InstallTenant/events.js +2 -2
- package/features/tenancy/InstallTenant/events.js.map +1 -1
- package/features/tenancy/InstallTenant/feature.d.ts +5 -1
- package/features/tenancy/InstallTenant/index.d.ts +1 -1
- package/features/tenancy/InstallTenant/index.js +1 -1
- package/features/tenancy/InstallTenant/index.js.map +1 -1
- package/features/tenancy/ListTenants/feature.d.ts +5 -1
- package/features/tenancy/TenancyFeature.d.ts +4 -1
- package/features/tenancy/TenancyFeature.js.map +1 -1
- package/features/tenancy/TenantContext/abstractions.d.ts +1 -0
- package/features/tenancy/TenantContext/abstractions.js +1 -0
- package/features/tenancy/TenantContext/abstractions.js.map +1 -1
- package/features/tenancy/TenantContext/feature.d.ts +4 -1
- package/features/tenancy/UpdateTenant/abstractions.d.ts +9 -4
- package/features/tenancy/UpdateTenant/abstractions.js +7 -2
- package/features/tenancy/UpdateTenant/abstractions.js.map +1 -1
- package/features/tenancy/UpdateTenant/events.js +3 -3
- package/features/tenancy/UpdateTenant/events.js.map +1 -1
- package/features/tenancy/UpdateTenant/feature.d.ts +5 -1
- package/features/tenancy/UpdateTenant/index.d.ts +1 -1
- package/features/tenancy/UpdateTenant/index.js +1 -1
- package/features/tenancy/UpdateTenant/index.js.map +1 -1
- package/features/users/AdminUsersFeature.d.ts +4 -1
- package/features/users/AdminUsersFeature.js.map +1 -1
- package/features/users/CreateUser/CreateUserUseCase.js +1 -1
- package/features/users/CreateUser/CreateUserUseCase.js.map +1 -1
- package/features/users/CreateUser/abstractions.d.ts +1 -0
- package/features/users/CreateUser/abstractions.js +1 -1
- package/features/users/CreateUser/abstractions.js.map +1 -1
- package/features/users/CreateUser/events.d.ts +6 -4
- package/features/users/CreateUser/events.js +8 -4
- package/features/users/CreateUser/events.js.map +1 -1
- package/features/users/CreateUser/feature.d.ts +4 -1
- package/features/users/CreateUser/schema.d.ts +4 -36
- package/features/users/DeleteUser/abstractions.d.ts +1 -0
- package/features/users/DeleteUser/abstractions.js +1 -1
- package/features/users/DeleteUser/abstractions.js.map +1 -1
- package/features/users/DeleteUser/events.d.ts +6 -4
- package/features/users/DeleteUser/events.js +8 -4
- package/features/users/DeleteUser/events.js.map +1 -1
- package/features/users/DeleteUser/feature.d.ts +4 -1
- package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.d.ts +3 -3
- package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js +2 -2
- package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js.map +1 -1
- package/features/users/ExternalIdpUserSync/feature.d.ts +4 -1
- package/features/users/GetIdentityProfile/feature.d.ts +4 -1
- package/features/users/GetUser/abstractions.d.ts +1 -0
- package/features/users/GetUser/abstractions.js +1 -1
- package/features/users/GetUser/abstractions.js.map +1 -1
- package/features/users/GetUser/feature.d.ts +4 -1
- package/features/users/ListUserTeams/abstractions.d.ts +1 -0
- package/features/users/ListUserTeams/abstractions.js +1 -1
- package/features/users/ListUserTeams/abstractions.js.map +1 -1
- package/features/users/ListUserTeams/feature.d.ts +4 -1
- package/features/users/ListUsers/abstractions.d.ts +1 -0
- package/features/users/ListUsers/abstractions.js +1 -1
- package/features/users/ListUsers/abstractions.js.map +1 -1
- package/features/users/ListUsers/feature.d.ts +4 -1
- package/features/users/UpdateUser/UpdateUserUseCase.js +1 -1
- package/features/users/UpdateUser/UpdateUserUseCase.js.map +1 -1
- package/features/users/UpdateUser/abstractions.d.ts +1 -0
- package/features/users/UpdateUser/abstractions.js +1 -1
- package/features/users/UpdateUser/abstractions.js.map +1 -1
- package/features/users/UpdateUser/events.d.ts +6 -4
- package/features/users/UpdateUser/events.js +8 -4
- package/features/users/UpdateUser/events.js.map +1 -1
- package/features/users/UpdateUser/feature.d.ts +4 -1
- package/features/users/UpdateUser/schema.d.ts +4 -30
- package/features/users/shared/abstractions.d.ts +1 -0
- package/features/users/shared/abstractions.js +1 -1
- package/features/users/shared/abstractions.js.map +1 -1
- package/features/wcp/WcpContext/WcpContext.d.ts +5 -0
- package/features/wcp/WcpContext/WcpContext.js +15 -0
- package/features/wcp/WcpContext/WcpContext.js.map +1 -1
- package/features/wcp/WcpContext/abstractions.d.ts +1 -0
- package/features/wcp/WcpContext/abstractions.js.map +1 -1
- package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.d.ts +94 -0
- package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js +142 -0
- package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js.map +1 -0
- package/features/wcp/WcpContext/feature.d.ts +5 -1
- package/features/wcp/WcpFeature.d.ts +4 -1
- package/features/wcp/WcpFeature.js +2 -0
- package/features/wcp/WcpFeature.js.map +1 -1
- package/graphql/security/NotAuthorizedResponse.d.ts +1 -0
- package/graphql/security/NotAuthorizedResponse.js +1 -0
- package/graphql/security/NotAuthorizedResponse.js.map +1 -1
- package/graphql/wcp/graphql.js +2 -1
- package/graphql/wcp/graphql.js.map +1 -1
- package/idp/abstractions.d.ts +4 -0
- package/idp/abstractions.js +4 -0
- package/idp/abstractions.js.map +1 -1
- package/idp/feature.d.ts +4 -1
- package/legacy/security/createSecurityContext.js +0 -11
- package/legacy/security/createSecurityContext.js.map +1 -1
- package/legacy/security/plugins/authenticateUsingHttpHeader.d.ts +1 -1
- package/legacy/wcp/LegacyWcpContext.d.ts +5 -0
- package/legacy/wcp/LegacyWcpContext.js +15 -0
- package/legacy/wcp/LegacyWcpContext.js.map +1 -1
- package/legacy/wcp/context.d.ts +1 -3
- package/legacy/wcp/context.js +4 -2
- package/legacy/wcp/context.js.map +1 -1
- package/models/base/BaseModel.js +2 -2
- package/models/base/BaseModel.js.map +1 -1
- package/models/base/ModelBuilder.d.ts +2 -2
- package/models/base/ModelBuilder.js +21 -2
- package/models/base/ModelBuilder.js.map +1 -1
- package/models/cms/FieldBuilder.d.ts +4 -3
- package/models/cms/FieldBuilder.js +17 -22
- package/models/cms/FieldBuilder.js.map +1 -1
- package/models/cms/FieldBuilderRegistry.d.ts +1 -1
- package/models/cms/FieldBuilderRegistry.js.map +1 -1
- package/models/cms/FieldDefinitionsBuilder.d.ts +1 -0
- package/models/cms/FieldDefinitionsBuilder.js +15 -17
- package/models/cms/FieldDefinitionsBuilder.js.map +1 -1
- package/models/cms/PrivateCmsModelBuilder.js +1 -1
- package/models/cms/PrivateCmsModelBuilder.js.map +1 -1
- package/models/cms/abstractions.d.ts +1 -1
- package/models/cms/abstractions.js.map +1 -1
- package/models/cms/fieldsBuilder.md +6 -4
- package/models/cms/types.d.ts +2 -2
- package/models/cms/types.js.map +1 -1
- package/models/simple/Page/abstractions.d.ts +1 -11
- package/package.json +28 -70
- package/types/security.d.ts +13 -10
- package/types/security.js.map +1 -1
- package/exports/api/buildParams.js +0 -3
- package/exports/api/buildParams.js.map +0 -1
- package/exports/api/eventPublisher.d.ts +0 -1
- package/exports/api/eventPublisher.js.map +0 -1
- package/exports/api/keyValueStore.js +0 -3
- package/exports/api/keyValueStore.js.map +0 -1
- package/exports/api/security/apiKey.d.ts +0 -7
- package/exports/api/security/apiKey.js +0 -9
- package/exports/api/security/apiKey.js.map +0 -1
- package/extensions/BuildParam.d.ts +0 -11
- package/extensions/BuildParam.js +0 -119
- package/extensions/BuildParam.js.map +0 -1
- package/extensions/GenericExtension.d.ts +0 -10
- package/extensions/GenericExtension.js +0 -7
- package/extensions/GenericExtension.js.map +0 -1
- package/extensions/eventHandlers/AfterAuthentication.d.ts +0 -10
- package/extensions/eventHandlers/AfterAuthentication.js +0 -9
- package/extensions/eventHandlers/AfterAuthentication.js.map +0 -1
- package/extensions/eventHandlers/ApiKeyAfterCreate.d.ts +0 -10
- package/extensions/eventHandlers/ApiKeyAfterCreate.js +0 -9
- package/extensions/eventHandlers/ApiKeyAfterCreate.js.map +0 -1
- package/extensions/eventHandlers/ApiKeyAfterDelete.d.ts +0 -10
- package/extensions/eventHandlers/ApiKeyAfterDelete.js +0 -9
- package/extensions/eventHandlers/ApiKeyAfterDelete.js.map +0 -1
- package/extensions/eventHandlers/ApiKeyAfterUpdate.d.ts +0 -10
- package/extensions/eventHandlers/ApiKeyAfterUpdate.js +0 -9
- package/extensions/eventHandlers/ApiKeyAfterUpdate.js.map +0 -1
- package/extensions/eventHandlers/ApiKeyBeforeCreate.d.ts +0 -10
- package/extensions/eventHandlers/ApiKeyBeforeCreate.js +0 -9
- package/extensions/eventHandlers/ApiKeyBeforeCreate.js.map +0 -1
- package/extensions/eventHandlers/ApiKeyBeforeDelete.d.ts +0 -10
- package/extensions/eventHandlers/ApiKeyBeforeDelete.js +0 -9
- package/extensions/eventHandlers/ApiKeyBeforeDelete.js.map +0 -1
- package/extensions/eventHandlers/ApiKeyBeforeUpdate.d.ts +0 -10
- package/extensions/eventHandlers/ApiKeyBeforeUpdate.js +0 -9
- package/extensions/eventHandlers/ApiKeyBeforeUpdate.js.map +0 -1
- package/extensions/eventHandlers/BeforeAuthentication.d.ts +0 -10
- package/extensions/eventHandlers/BeforeAuthentication.js +0 -9
- package/extensions/eventHandlers/BeforeAuthentication.js.map +0 -1
- package/extensions/eventHandlers/RoleAfterCreate.d.ts +0 -10
- package/extensions/eventHandlers/RoleAfterCreate.js +0 -9
- package/extensions/eventHandlers/RoleAfterCreate.js.map +0 -1
- package/extensions/eventHandlers/RoleAfterDelete.d.ts +0 -10
- package/extensions/eventHandlers/RoleAfterDelete.js +0 -9
- package/extensions/eventHandlers/RoleAfterDelete.js.map +0 -1
- package/extensions/eventHandlers/RoleAfterUpdate.d.ts +0 -10
- package/extensions/eventHandlers/RoleAfterUpdate.js +0 -9
- package/extensions/eventHandlers/RoleAfterUpdate.js.map +0 -1
- package/extensions/eventHandlers/RoleBeforeCreate.d.ts +0 -10
- package/extensions/eventHandlers/RoleBeforeCreate.js +0 -9
- package/extensions/eventHandlers/RoleBeforeCreate.js.map +0 -1
- package/extensions/eventHandlers/RoleBeforeDelete.d.ts +0 -10
- package/extensions/eventHandlers/RoleBeforeDelete.js +0 -9
- package/extensions/eventHandlers/RoleBeforeDelete.js.map +0 -1
- package/extensions/eventHandlers/RoleBeforeUpdate.d.ts +0 -10
- package/extensions/eventHandlers/RoleBeforeUpdate.js +0 -9
- package/extensions/eventHandlers/RoleBeforeUpdate.js.map +0 -1
- package/extensions/eventHandlers/SystemInstalled.d.ts +0 -10
- package/extensions/eventHandlers/SystemInstalled.js +0 -9
- package/extensions/eventHandlers/SystemInstalled.js.map +0 -1
- package/extensions/eventHandlers/TeamAfterCreate.d.ts +0 -10
- package/extensions/eventHandlers/TeamAfterCreate.js +0 -9
- package/extensions/eventHandlers/TeamAfterCreate.js.map +0 -1
- package/extensions/eventHandlers/TeamAfterDelete.d.ts +0 -10
- package/extensions/eventHandlers/TeamAfterDelete.js +0 -9
- package/extensions/eventHandlers/TeamAfterDelete.js.map +0 -1
- package/extensions/eventHandlers/TeamAfterUpdate.d.ts +0 -10
- package/extensions/eventHandlers/TeamAfterUpdate.js +0 -9
- package/extensions/eventHandlers/TeamAfterUpdate.js.map +0 -1
- package/extensions/eventHandlers/TeamBeforeCreate.d.ts +0 -10
- package/extensions/eventHandlers/TeamBeforeCreate.js +0 -9
- package/extensions/eventHandlers/TeamBeforeCreate.js.map +0 -1
- package/extensions/eventHandlers/TeamBeforeDelete.d.ts +0 -10
- package/extensions/eventHandlers/TeamBeforeDelete.js +0 -9
- package/extensions/eventHandlers/TeamBeforeDelete.js.map +0 -1
- package/extensions/eventHandlers/TeamBeforeUpdate.d.ts +0 -10
- package/extensions/eventHandlers/TeamBeforeUpdate.js +0 -9
- package/extensions/eventHandlers/TeamBeforeUpdate.js.map +0 -1
- package/extensions/eventHandlers/TenantAfterCreate.d.ts +0 -10
- package/extensions/eventHandlers/TenantAfterCreate.js +0 -9
- package/extensions/eventHandlers/TenantAfterCreate.js.map +0 -1
- package/extensions/eventHandlers/TenantAfterDelete.d.ts +0 -10
- package/extensions/eventHandlers/TenantAfterDelete.js +0 -9
- package/extensions/eventHandlers/TenantAfterDelete.js.map +0 -1
- package/extensions/eventHandlers/TenantAfterUpdate.d.ts +0 -10
- package/extensions/eventHandlers/TenantAfterUpdate.js +0 -9
- package/extensions/eventHandlers/TenantAfterUpdate.js.map +0 -1
- package/extensions/eventHandlers/TenantBeforeCreate.d.ts +0 -10
- package/extensions/eventHandlers/TenantBeforeCreate.js +0 -9
- package/extensions/eventHandlers/TenantBeforeCreate.js.map +0 -1
- package/extensions/eventHandlers/TenantBeforeDelete.d.ts +0 -10
- package/extensions/eventHandlers/TenantBeforeDelete.js +0 -9
- package/extensions/eventHandlers/TenantBeforeDelete.js.map +0 -1
- package/extensions/eventHandlers/TenantBeforeUpdate.d.ts +0 -10
- package/extensions/eventHandlers/TenantBeforeUpdate.js +0 -9
- package/extensions/eventHandlers/TenantBeforeUpdate.js.map +0 -1
- package/extensions/eventHandlers/TenantInstalled.d.ts +0 -10
- package/extensions/eventHandlers/TenantInstalled.js +0 -9
- package/extensions/eventHandlers/TenantInstalled.js.map +0 -1
- package/extensions/eventHandlers/UserAfterCreate.d.ts +0 -10
- package/extensions/eventHandlers/UserAfterCreate.js +0 -9
- package/extensions/eventHandlers/UserAfterCreate.js.map +0 -1
- package/extensions/eventHandlers/UserAfterDelete.d.ts +0 -10
- package/extensions/eventHandlers/UserAfterDelete.js +0 -9
- package/extensions/eventHandlers/UserAfterDelete.js.map +0 -1
- package/extensions/eventHandlers/UserAfterUpdate.d.ts +0 -10
- package/extensions/eventHandlers/UserAfterUpdate.js +0 -9
- package/extensions/eventHandlers/UserAfterUpdate.js.map +0 -1
- package/extensions/eventHandlers/UserBeforeCreate.d.ts +0 -10
- package/extensions/eventHandlers/UserBeforeCreate.js +0 -9
- package/extensions/eventHandlers/UserBeforeCreate.js.map +0 -1
- package/extensions/eventHandlers/UserBeforeDelete.d.ts +0 -10
- package/extensions/eventHandlers/UserBeforeDelete.js +0 -9
- package/extensions/eventHandlers/UserBeforeDelete.js.map +0 -1
- package/extensions/eventHandlers/UserBeforeUpdate.d.ts +0 -10
- package/extensions/eventHandlers/UserBeforeUpdate.js +0 -9
- package/extensions/eventHandlers/UserBeforeUpdate.js.map +0 -1
- package/extensions/eventHandlers/index.d.ts +0 -34
- package/extensions/eventHandlers/index.js +0 -49
- package/extensions/eventHandlers/index.js.map +0 -1
- package/extensions/index.d.ts +0 -58
- package/extensions/index.js +0 -49
- package/extensions/index.js.map +0 -1
- package/features/security/shared/abstractions.ts.bak +0 -52
- package/legacy/security/plugins/SecurityRolePlugin.d.ts +0 -16
- package/legacy/security/plugins/SecurityRolePlugin.js +0 -33
- package/legacy/security/plugins/SecurityRolePlugin.js.map +0 -1
- package/legacy/security/plugins/SecurityTeamPlugin.d.ts +0 -16
- package/legacy/security/plugins/SecurityTeamPlugin.js +0 -33
- package/legacy/security/plugins/SecurityTeamPlugin.js.map +0 -1
|
@@ -8,6 +8,7 @@ export declare class LegacyWcpContext implements WcpContextObject {
|
|
|
8
8
|
private getWcpContext;
|
|
9
9
|
getRawLicense(): DecryptedWcpProjectLicense | null;
|
|
10
10
|
getProject(): WcpProject | null;
|
|
11
|
+
getProjectWithFeatureFlags(): WcpProject | null;
|
|
11
12
|
getProjectLicense(): ILicense;
|
|
12
13
|
getProjectEnvironment(): WcpProjectEnvironment | null;
|
|
13
14
|
canUseFeature(wcpFeatureId: keyof typeof WCP_FEATURE_LABEL): boolean;
|
|
@@ -19,6 +20,10 @@ export declare class LegacyWcpContext implements WcpContextObject {
|
|
|
19
20
|
canUseRecordLocking(): boolean;
|
|
20
21
|
canUseFileManagerThreatDetection(): boolean;
|
|
21
22
|
canUseWorkflows(): boolean;
|
|
23
|
+
canUseHcmsFieldPermissions(): boolean;
|
|
24
|
+
canUseAiImageEnrichment(): boolean;
|
|
25
|
+
canUseAiPageGeneration(): boolean;
|
|
26
|
+
canUseAiLexicalGeneration(): boolean;
|
|
22
27
|
ensureCanUseFeature(featureId: keyof typeof WCP_FEATURE_LABEL): void;
|
|
23
28
|
incrementSeats(): Promise<void>;
|
|
24
29
|
decrementSeats(): Promise<void>;
|
|
@@ -12,6 +12,9 @@ export class LegacyWcpContext {
|
|
|
12
12
|
getProject() {
|
|
13
13
|
return this.getWcpContext().getProject();
|
|
14
14
|
}
|
|
15
|
+
getProjectWithFeatureFlags() {
|
|
16
|
+
return this.getWcpContext().getProjectWithFeatureFlags();
|
|
17
|
+
}
|
|
15
18
|
getProjectLicense() {
|
|
16
19
|
return this.getWcpContext().getProjectLicense();
|
|
17
20
|
}
|
|
@@ -45,6 +48,18 @@ export class LegacyWcpContext {
|
|
|
45
48
|
canUseWorkflows() {
|
|
46
49
|
return this.getWcpContext().canUseWorkflows();
|
|
47
50
|
}
|
|
51
|
+
canUseHcmsFieldPermissions() {
|
|
52
|
+
return this.getWcpContext().canUseHcmsFieldPermissions();
|
|
53
|
+
}
|
|
54
|
+
canUseAiImageEnrichment() {
|
|
55
|
+
return this.getWcpContext().canUseAiImageEnrichment();
|
|
56
|
+
}
|
|
57
|
+
canUseAiPageGeneration() {
|
|
58
|
+
return this.getWcpContext().canUseAiPageGeneration();
|
|
59
|
+
}
|
|
60
|
+
canUseAiLexicalGeneration() {
|
|
61
|
+
return this.getWcpContext().canUseAiLexicalGeneration();
|
|
62
|
+
}
|
|
48
63
|
ensureCanUseFeature(featureId) {
|
|
49
64
|
this.getWcpContext().ensureCanUseFeature(featureId);
|
|
50
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WcpContext","LegacyWcpContext","constructor","container","getWcpContext","resolve","getRawLicense","getProject","getProjectLicense","getProjectEnvironment","canUseFeature","wcpFeatureId","canUseAacl","canUseTeams","canUseFolderLevelPermissions","canUsePrivateFiles","canUseAuditLogs","canUseRecordLocking","canUseFileManagerThreatDetection","canUseWorkflows","ensureCanUseFeature","featureId","incrementSeats","decrementSeats","incrementTenants","decrementTenants","toDto"],"sources":["LegacyWcpContext.ts"],"sourcesContent":["import { Container } from \"@webiny/di\";\nimport type { WCP_FEATURE_LABEL } from \"@webiny/wcp\";\nimport type {\n DecryptedWcpProjectLicense,\n ILicense,\n WcpProject,\n WcpProjectEnvironment\n} from \"@webiny/wcp/types.js\";\nimport { WcpContextObject } from \"~/features/wcp/WcpContext/types.js\";\nimport { WcpContext } from \"~/features/wcp/WcpContext/index.js\";\n\nexport class LegacyWcpContext implements WcpContextObject {\n constructor(private container: Container) {}\n\n private getWcpContext(): WcpContext.Interface {\n return this.container.resolve(WcpContext);\n }\n\n getRawLicense(): DecryptedWcpProjectLicense | null {\n return this.getWcpContext().getRawLicense();\n }\n\n getProject(): WcpProject | null {\n return this.getWcpContext().getProject();\n }\n\n getProjectLicense(): ILicense {\n return this.getWcpContext().getProjectLicense();\n }\n\n getProjectEnvironment(): WcpProjectEnvironment | null {\n return this.getWcpContext().getProjectEnvironment();\n }\n\n canUseFeature(wcpFeatureId: keyof typeof WCP_FEATURE_LABEL): boolean {\n return this.getWcpContext().canUseFeature(wcpFeatureId);\n }\n\n canUseAacl(): boolean {\n return this.getWcpContext().canUseAacl();\n }\n\n canUseTeams(): boolean {\n return this.getWcpContext().canUseTeams();\n }\n\n canUseFolderLevelPermissions(): boolean {\n return this.getWcpContext().canUseFolderLevelPermissions();\n }\n\n canUsePrivateFiles(): boolean {\n return this.getWcpContext().canUsePrivateFiles();\n }\n\n canUseAuditLogs(): boolean {\n return this.getWcpContext().canUseAuditLogs();\n }\n\n canUseRecordLocking(): boolean {\n return this.getWcpContext().canUseRecordLocking();\n }\n\n canUseFileManagerThreatDetection(): boolean {\n return this.getWcpContext().canUseFileManagerThreatDetection();\n }\n\n canUseWorkflows(): boolean {\n return this.getWcpContext().canUseWorkflows();\n }\n\n ensureCanUseFeature(featureId: keyof typeof WCP_FEATURE_LABEL): void {\n this.getWcpContext().ensureCanUseFeature(featureId);\n }\n\n async incrementSeats(): Promise<void> {\n await this.getWcpContext().incrementSeats();\n }\n\n async decrementSeats(): Promise<void> {\n await this.getWcpContext().decrementSeats();\n }\n\n async incrementTenants(): Promise<void> {\n await this.getWcpContext().incrementTenants();\n }\n\n async decrementTenants(): Promise<void> {\n await this.getWcpContext().decrementTenants();\n }\n\n toDto(): DecryptedWcpProjectLicense | null {\n return this.getWcpContext().toDto();\n }\n}\n"],"mappings":"AASA,SAASA,UAAU;AAEnB,OAAO,MAAMC,gBAAgB,CAA6B;EACtDC,WAAWA,CAASC,SAAoB,EAAE;IAAA,KAAtBA,SAAoB,GAApBA,SAAoB;EAAG;EAEnCC,aAAaA,CAAA,EAAyB;IAC1C,OAAO,IAAI,CAACD,SAAS,CAACE,OAAO,CAACL,UAAU,CAAC;EAC7C;EAEAM,aAAaA,CAAA,EAAsC;IAC/C,OAAO,IAAI,CAACF,aAAa,CAAC,CAAC,CAACE,aAAa,CAAC,CAAC;EAC/C;EAEAC,UAAUA,CAAA,EAAsB;IAC5B,OAAO,IAAI,CAACH,aAAa,CAAC,CAAC,CAACG,UAAU,CAAC,CAAC;EAC5C;EAEAC,iBAAiBA,CAAA,EAAa;IAC1B,OAAO,IAAI,
|
|
1
|
+
{"version":3,"names":["WcpContext","LegacyWcpContext","constructor","container","getWcpContext","resolve","getRawLicense","getProject","getProjectWithFeatureFlags","getProjectLicense","getProjectEnvironment","canUseFeature","wcpFeatureId","canUseAacl","canUseTeams","canUseFolderLevelPermissions","canUsePrivateFiles","canUseAuditLogs","canUseRecordLocking","canUseFileManagerThreatDetection","canUseWorkflows","canUseHcmsFieldPermissions","canUseAiImageEnrichment","canUseAiPageGeneration","canUseAiLexicalGeneration","ensureCanUseFeature","featureId","incrementSeats","decrementSeats","incrementTenants","decrementTenants","toDto"],"sources":["LegacyWcpContext.ts"],"sourcesContent":["import { Container } from \"@webiny/di\";\nimport type { WCP_FEATURE_LABEL } from \"@webiny/wcp\";\nimport type {\n DecryptedWcpProjectLicense,\n ILicense,\n WcpProject,\n WcpProjectEnvironment\n} from \"@webiny/wcp/types.js\";\nimport { WcpContextObject } from \"~/features/wcp/WcpContext/types.js\";\nimport { WcpContext } from \"~/features/wcp/WcpContext/index.js\";\n\nexport class LegacyWcpContext implements WcpContextObject {\n constructor(private container: Container) {}\n\n private getWcpContext(): WcpContext.Interface {\n return this.container.resolve(WcpContext);\n }\n\n getRawLicense(): DecryptedWcpProjectLicense | null {\n return this.getWcpContext().getRawLicense();\n }\n\n getProject(): WcpProject | null {\n return this.getWcpContext().getProject();\n }\n\n getProjectWithFeatureFlags(): WcpProject | null {\n return this.getWcpContext().getProjectWithFeatureFlags();\n }\n\n getProjectLicense(): ILicense {\n return this.getWcpContext().getProjectLicense();\n }\n\n getProjectEnvironment(): WcpProjectEnvironment | null {\n return this.getWcpContext().getProjectEnvironment();\n }\n\n canUseFeature(wcpFeatureId: keyof typeof WCP_FEATURE_LABEL): boolean {\n return this.getWcpContext().canUseFeature(wcpFeatureId);\n }\n\n canUseAacl(): boolean {\n return this.getWcpContext().canUseAacl();\n }\n\n canUseTeams(): boolean {\n return this.getWcpContext().canUseTeams();\n }\n\n canUseFolderLevelPermissions(): boolean {\n return this.getWcpContext().canUseFolderLevelPermissions();\n }\n\n canUsePrivateFiles(): boolean {\n return this.getWcpContext().canUsePrivateFiles();\n }\n\n canUseAuditLogs(): boolean {\n return this.getWcpContext().canUseAuditLogs();\n }\n\n canUseRecordLocking(): boolean {\n return this.getWcpContext().canUseRecordLocking();\n }\n\n canUseFileManagerThreatDetection(): boolean {\n return this.getWcpContext().canUseFileManagerThreatDetection();\n }\n\n canUseWorkflows(): boolean {\n return this.getWcpContext().canUseWorkflows();\n }\n\n canUseHcmsFieldPermissions(): boolean {\n return this.getWcpContext().canUseHcmsFieldPermissions();\n }\n\n canUseAiImageEnrichment(): boolean {\n return this.getWcpContext().canUseAiImageEnrichment();\n }\n\n canUseAiPageGeneration(): boolean {\n return this.getWcpContext().canUseAiPageGeneration();\n }\n\n canUseAiLexicalGeneration(): boolean {\n return this.getWcpContext().canUseAiLexicalGeneration();\n }\n\n ensureCanUseFeature(featureId: keyof typeof WCP_FEATURE_LABEL): void {\n this.getWcpContext().ensureCanUseFeature(featureId);\n }\n\n async incrementSeats(): Promise<void> {\n await this.getWcpContext().incrementSeats();\n }\n\n async decrementSeats(): Promise<void> {\n await this.getWcpContext().decrementSeats();\n }\n\n async incrementTenants(): Promise<void> {\n await this.getWcpContext().incrementTenants();\n }\n\n async decrementTenants(): Promise<void> {\n await this.getWcpContext().decrementTenants();\n }\n\n toDto(): DecryptedWcpProjectLicense | null {\n return this.getWcpContext().toDto();\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/legacy/wcp/context.d.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
import { ContextPlugin } from "@webiny/api";
|
|
2
1
|
import type { DecryptedWcpProjectLicense } from "@webiny/wcp/types.js";
|
|
3
|
-
import type { WcpContext } from "../../features/wcp/WcpContext/types.js";
|
|
4
2
|
export interface CreateWcpContextParams {
|
|
5
3
|
testProjectLicense?: DecryptedWcpProjectLicense;
|
|
6
4
|
}
|
|
7
|
-
export declare const createWcpContext: (params?: CreateWcpContextParams) =>
|
|
5
|
+
export declare const createWcpContext: (params?: CreateWcpContextParams) => import("@webiny/handler/index.js").RegisterExtensionPlugin<import("@webiny/handler/types.js").Context>;
|
package/legacy/wcp/context.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ContextPlugin } from "@webiny/api";
|
|
2
1
|
import { getWcpProjectLicense, getWcpProjectEnvironment, NullLicense } from "@webiny/wcp";
|
|
3
2
|
import { License } from "@webiny/wcp";
|
|
3
|
+
import { createRegisterExtensionPlugin } from "@webiny/handler/plugins/RegisterExtensionPlugin.js";
|
|
4
4
|
import { getWcpProjectLicenseCacheKey } from "../../features/wcp/WcpContext/utils.js";
|
|
5
5
|
import { WcpFeature } from "../../features/wcp/WcpFeature.js";
|
|
6
6
|
import { LegacyWcpContext } from "./LegacyWcpContext.js";
|
|
@@ -37,9 +37,11 @@ async function loadLicense(testProjectLicense) {
|
|
|
37
37
|
return cachedLicense.license;
|
|
38
38
|
}
|
|
39
39
|
export const createWcpContext = (params = {}) => {
|
|
40
|
-
const plugin =
|
|
40
|
+
const plugin = createRegisterExtensionPlugin(async context => {
|
|
41
41
|
const license = await loadLicense(params.testProjectLicense);
|
|
42
42
|
WcpFeature.register(context.container, license);
|
|
43
|
+
|
|
44
|
+
// @ts-expect-error This is a legacy property
|
|
43
45
|
context.wcp = new LegacyWcpContext(context.container);
|
|
44
46
|
context.plugins.register(createWcpGraphQL());
|
|
45
47
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["getWcpProjectLicense","getWcpProjectEnvironment","NullLicense","License","createRegisterExtensionPlugin","getWcpProjectLicenseCacheKey","WcpFeature","LegacyWcpContext","createWcpGraphQL","wcpProjectEnvironment","cachedLicense","cacheKey","project","license","loadLicense","testProjectLicense","fromLicenseDto","currentCacheKey","decryptedLicenseDto","orgId","org","id","projectId","projectEnvironmentApiKey","apiKey","package","createWcpContext","params","plugin","context","register","container","wcp","plugins","name"],"sources":["context.ts"],"sourcesContent":["import { getWcpProjectLicense, getWcpProjectEnvironment, NullLicense } from \"@webiny/wcp\";\nimport type { DecryptedWcpProjectLicense, ILicense } from \"@webiny/wcp/types.js\";\nimport { License } from \"@webiny/wcp\";\nimport { createRegisterExtensionPlugin } from \"@webiny/handler/plugins/RegisterExtensionPlugin.js\";\nimport type { CachedWcpProjectLicense } from \"~/features/wcp/WcpContext/types.js\";\nimport { getWcpProjectLicenseCacheKey } from \"~/features/wcp/WcpContext/utils.js\";\nimport { WcpFeature } from \"~/features/wcp/WcpFeature.js\";\nimport { LegacyWcpContext } from \"./LegacyWcpContext.js\";\nimport { createWcpGraphQL } from \"~/graphql/wcp/graphql.js\";\n\nconst wcpProjectEnvironment = getWcpProjectEnvironment();\n\nconst cachedLicense: CachedWcpProjectLicense = {\n cacheKey: null,\n project: null,\n license: new NullLicense()\n};\n\nasync function loadLicense(testProjectLicense?: DecryptedWcpProjectLicense): Promise<ILicense> {\n if (testProjectLicense) {\n cachedLicense.license = License.fromLicenseDto(testProjectLicense);\n } else if (wcpProjectEnvironment) {\n const currentCacheKey = getWcpProjectLicenseCacheKey();\n if (cachedLicense.cacheKey !== currentCacheKey) {\n cachedLicense.cacheKey = currentCacheKey;\n // Pull the project license from the WCP API.\n const decryptedLicenseDto = await getWcpProjectLicense({\n orgId: wcpProjectEnvironment.org.id,\n projectId: wcpProjectEnvironment.project.id,\n projectEnvironmentApiKey: wcpProjectEnvironment.apiKey\n });\n\n if (decryptedLicenseDto) {\n cachedLicense.project = {\n orgId: decryptedLicenseDto.orgId,\n projectId: decryptedLicenseDto.projectId,\n package: decryptedLicenseDto.package\n };\n }\n\n cachedLicense.license = License.fromLicenseDto(decryptedLicenseDto);\n }\n }\n\n return cachedLicense.license;\n}\n\nexport interface CreateWcpContextParams {\n testProjectLicense?: DecryptedWcpProjectLicense;\n}\n\nexport const createWcpContext = (params: CreateWcpContextParams = {}) => {\n const plugin = createRegisterExtensionPlugin(async context => {\n const license = await loadLicense(params.testProjectLicense);\n\n WcpFeature.register(context.container, license);\n\n // @ts-expect-error This is a legacy property\n context.wcp = new LegacyWcpContext(context.container);\n\n context.plugins.register(createWcpGraphQL());\n });\n\n plugin.name = \"wcp.context.create\";\n\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,oBAAoB,EAAEC,wBAAwB,EAAEC,WAAW,QAAQ,aAAa;AAEzF,SAASC,OAAO,QAAQ,aAAa;AACrC,SAASC,6BAA6B,QAAQ,oDAAoD;AAElG,SAASC,4BAA4B;AACrC,SAASC,UAAU;AACnB,SAASC,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,MAAMC,qBAAqB,GAAGR,wBAAwB,CAAC,CAAC;AAExD,MAAMS,aAAsC,GAAG;EAC3CC,QAAQ,EAAE,IAAI;EACdC,OAAO,EAAE,IAAI;EACbC,OAAO,EAAE,IAAIX,WAAW,CAAC;AAC7B,CAAC;AAED,eAAeY,WAAWA,CAACC,kBAA+C,EAAqB;EAC3F,IAAIA,kBAAkB,EAAE;IACpBL,aAAa,CAACG,OAAO,GAAGV,OAAO,CAACa,cAAc,CAACD,kBAAkB,CAAC;EACtE,CAAC,MAAM,IAAIN,qBAAqB,EAAE;IAC9B,MAAMQ,eAAe,GAAGZ,4BAA4B,CAAC,CAAC;IACtD,IAAIK,aAAa,CAACC,QAAQ,KAAKM,eAAe,EAAE;MAC5CP,aAAa,CAACC,QAAQ,GAAGM,eAAe;MACxC;MACA,MAAMC,mBAAmB,GAAG,MAAMlB,oBAAoB,CAAC;QACnDmB,KAAK,EAAEV,qBAAqB,CAACW,GAAG,CAACC,EAAE;QACnCC,SAAS,EAAEb,qBAAqB,CAACG,OAAO,CAACS,EAAE;QAC3CE,wBAAwB,EAAEd,qBAAqB,CAACe;MACpD,CAAC,CAAC;MAEF,IAAIN,mBAAmB,EAAE;QACrBR,aAAa,CAACE,OAAO,GAAG;UACpBO,KAAK,EAAED,mBAAmB,CAACC,KAAK;UAChCG,SAAS,EAAEJ,mBAAmB,CAACI,SAAS;UACxCG,OAAO,EAAEP,mBAAmB,CAACO;QACjC,CAAC;MACL;MAEAf,aAAa,CAACG,OAAO,GAAGV,OAAO,CAACa,cAAc,CAACE,mBAAmB,CAAC;IACvE;EACJ;EAEA,OAAOR,aAAa,CAACG,OAAO;AAChC;AAMA,OAAO,MAAMa,gBAAgB,GAAGA,CAACC,MAA8B,GAAG,CAAC,CAAC,KAAK;EACrE,MAAMC,MAAM,GAAGxB,6BAA6B,CAAC,MAAMyB,OAAO,IAAI;IAC1D,MAAMhB,OAAO,GAAG,MAAMC,WAAW,CAACa,MAAM,CAACZ,kBAAkB,CAAC;IAE5DT,UAAU,CAACwB,QAAQ,CAACD,OAAO,CAACE,SAAS,EAAElB,OAAO,CAAC;;IAE/C;IACAgB,OAAO,CAACG,GAAG,GAAG,IAAIzB,gBAAgB,CAACsB,OAAO,CAACE,SAAS,CAAC;IAErDF,OAAO,CAACI,OAAO,CAACH,QAAQ,CAACtB,gBAAgB,CAAC,CAAC,CAAC;EAChD,CAAC,CAAC;EAEFoB,MAAM,CAACM,IAAI,GAAG,oBAAoB;EAElC,OAAON,MAAM;AACjB,CAAC","ignoreList":[]}
|
package/models/base/BaseModel.js
CHANGED
|
@@ -27,7 +27,7 @@ export class BaseModel {
|
|
|
27
27
|
return new Constructor(this.toData());
|
|
28
28
|
}
|
|
29
29
|
toData() {
|
|
30
|
-
if (this.__schema && this.__schema.
|
|
30
|
+
if (this.__schema && this.__schema.def?.type === "object") {
|
|
31
31
|
const result = {};
|
|
32
32
|
const shape = this.__schema.shape;
|
|
33
33
|
for (const key in shape) {
|
|
@@ -55,7 +55,7 @@ export class BaseModel {
|
|
|
55
55
|
throw new WebinyError({
|
|
56
56
|
message: "Validation error",
|
|
57
57
|
code: "DOMAIN_MODEL_VALIDATION_ERROR",
|
|
58
|
-
data: result.error.
|
|
58
|
+
data: result.error.issues
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Result","WebinyError","BaseModel","__schema","Error","constructor","data","validateData","populate","Object","assign","validate","toData","ok","error","fail","validateOrThrow","clone","Constructor","
|
|
1
|
+
{"version":3,"names":["Result","WebinyError","BaseModel","__schema","Error","constructor","data","validateData","populate","Object","assign","validate","toData","ok","error","fail","validateOrThrow","clone","Constructor","def","type","result","shape","key","structuredClone","updateWith","partial","updated","safeParse","success","message","code","issues"],"sources":["BaseModel.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { WebinyError } from \"@webiny/error\";\nimport z from \"zod\";\n\ntype DataProperties<T> = Omit<T, \"__schema\">;\n\nexport type IModelData<T> = {\n // oxlint-disable-next-line typescript/no-unsafe-function-type\n [K in keyof DataProperties<T> as T[K] extends Function ? never : K]: T[K];\n};\n\nexport type IModelInput<T> = IModelData<T>;\n\nexport abstract class BaseModel<TModel extends z.ZodObject<any> = any> {\n get __schema(): TModel {\n throw new Error(\"Schema getter is not implemented!\");\n }\n\n constructor(data: IModelData<TModel>) {\n this.validateData(data);\n this.populate(data);\n }\n\n populate(data: IModelData<TModel>): void {\n Object.assign(this, data);\n }\n\n validate(): Result<true, WebinyError> {\n try {\n this.validateData(this.toData());\n return Result.ok(true);\n } catch (error) {\n return Result.fail(error);\n }\n }\n\n validateOrThrow(): void {\n this.validateData(this.toData());\n }\n\n clone(): this {\n const Constructor = this.constructor as new (data: IModelData<TModel>) => this;\n return new Constructor(this.toData());\n }\n\n toData(): IModelData<TModel> {\n if (this.__schema && this.__schema.def?.type === \"object\") {\n const result = {} as IModelData<TModel>;\n const shape = this.__schema.shape;\n for (const key in shape) {\n // always use structuredClone for safety.\n // @ts-expect-error allow index.\n result[key] = structuredClone(this[key]);\n }\n return result;\n }\n\n return { ...(this as any) } as IModelData<TModel>;\n }\n\n updateWith(partial: Partial<IModelData<this>>): void {\n const updated = { ...this.toData(), ...partial };\n this.validateData(updated);\n this.populate(updated);\n }\n\n protected validateData(data: IModelData<TModel>): void {\n const result = this.__schema.safeParse(data);\n if (!result.success) {\n throw new WebinyError({\n message: \"Validation error\",\n code: \"DOMAIN_MODEL_VALIDATION_ERROR\",\n data: result.error.issues\n });\n }\n }\n}\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,WAAW,QAAQ,eAAe;AAY3C,OAAO,MAAeC,SAAS,CAAwC;EACnE,IAAIC,QAAQA,CAAA,EAAW;IACnB,MAAM,IAAIC,KAAK,CAAC,mCAAmC,CAAC;EACxD;EAEAC,WAAWA,CAACC,IAAwB,EAAE;IAClC,IAAI,CAACC,YAAY,CAACD,IAAI,CAAC;IACvB,IAAI,CAACE,QAAQ,CAACF,IAAI,CAAC;EACvB;EAEAE,QAAQA,CAACF,IAAwB,EAAQ;IACrCG,MAAM,CAACC,MAAM,CAAC,IAAI,EAAEJ,IAAI,CAAC;EAC7B;EAEAK,QAAQA,CAAA,EAA8B;IAClC,IAAI;MACA,IAAI,CAACJ,YAAY,CAAC,IAAI,CAACK,MAAM,CAAC,CAAC,CAAC;MAChC,OAAOZ,MAAM,CAACa,EAAE,CAAC,IAAI,CAAC;IAC1B,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZ,OAAOd,MAAM,CAACe,IAAI,CAACD,KAAK,CAAC;IAC7B;EACJ;EAEAE,eAAeA,CAAA,EAAS;IACpB,IAAI,CAACT,YAAY,CAAC,IAAI,CAACK,MAAM,CAAC,CAAC,CAAC;EACpC;EAEAK,KAAKA,CAAA,EAAS;IACV,MAAMC,WAAW,GAAG,IAAI,CAACb,WAAqD;IAC9E,OAAO,IAAIa,WAAW,CAAC,IAAI,CAACN,MAAM,CAAC,CAAC,CAAC;EACzC;EAEAA,MAAMA,CAAA,EAAuB;IACzB,IAAI,IAAI,CAACT,QAAQ,IAAI,IAAI,CAACA,QAAQ,CAACgB,GAAG,EAAEC,IAAI,KAAK,QAAQ,EAAE;MACvD,MAAMC,MAAM,GAAG,CAAC,CAAuB;MACvC,MAAMC,KAAK,GAAG,IAAI,CAACnB,QAAQ,CAACmB,KAAK;MACjC,KAAK,MAAMC,GAAG,IAAID,KAAK,EAAE;QACrB;QACA;QACAD,MAAM,CAACE,GAAG,CAAC,GAAGC,eAAe,CAAC,IAAI,CAACD,GAAG,CAAC,CAAC;MAC5C;MACA,OAAOF,MAAM;IACjB;IAEA,OAAO;MAAE,GAAI;IAAa,CAAC;EAC/B;EAEAI,UAAUA,CAACC,OAAkC,EAAQ;IACjD,MAAMC,OAAO,GAAG;MAAE,GAAG,IAAI,CAACf,MAAM,CAAC,CAAC;MAAE,GAAGc;IAAQ,CAAC;IAChD,IAAI,CAACnB,YAAY,CAACoB,OAAO,CAAC;IAC1B,IAAI,CAACnB,QAAQ,CAACmB,OAAO,CAAC;EAC1B;EAEUpB,YAAYA,CAACD,IAAwB,EAAQ;IACnD,MAAMe,MAAM,GAAG,IAAI,CAAClB,QAAQ,CAACyB,SAAS,CAACtB,IAAI,CAAC;IAC5C,IAAI,CAACe,MAAM,CAACQ,OAAO,EAAE;MACjB,MAAM,IAAI5B,WAAW,CAAC;QAClB6B,OAAO,EAAE,kBAAkB;QAC3BC,IAAI,EAAE,+BAA+B;QACrCzB,IAAI,EAAEe,MAAM,CAACP,KAAK,CAACkB;MACvB,CAAC,CAAC;IACN;EACJ;AACJ","ignoreList":[]}
|
|
@@ -5,11 +5,11 @@ export type ModelClass<TModel extends BaseModel<any>> = {
|
|
|
5
5
|
new (data: ExtractModelData<TModel>): TModel;
|
|
6
6
|
create(data: ExtractModelData<TModel>): TModel;
|
|
7
7
|
};
|
|
8
|
-
export declare const createModelSchema: <TReturn extends z.ZodRawShape>(factory: (zod: typeof z) => TReturn) => z.ZodObject<
|
|
8
|
+
export declare const createModelSchema: <TReturn extends z.ZodRawShape>(factory: (zod: typeof z) => TReturn) => z.ZodObject<{ -readonly [P in keyof TReturn]: TReturn[P]; }, z.core.$strip>;
|
|
9
9
|
export declare class ModelBuilder<TModel extends BaseModel<any>> {
|
|
10
10
|
private name;
|
|
11
11
|
private schema;
|
|
12
|
-
private methods;
|
|
12
|
+
private readonly methods;
|
|
13
13
|
constructor(name: string, schema: TModel["__schema"]);
|
|
14
14
|
extendSchema<TExt extends z.ZodRawShape>(extensionFn: (zod: typeof z) => TExt): this;
|
|
15
15
|
withMethods<TExtMethods extends object>(methods: TExtMethods & ThisType<TModel & TExtMethods>): ModelBuilder<TModel & TExtMethods>;
|
|
@@ -1,10 +1,29 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { BaseModel } from "./BaseModel.js";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Custom type to compare Zod types and extract the inner type if it's wrapped in ZodOptional, ZodNullable, or ZodDefault.
|
|
6
|
+
*/
|
|
7
|
+
|
|
3
8
|
export const createModelSchema = factory => {
|
|
4
9
|
return z.object({
|
|
5
10
|
...factory(z)
|
|
6
11
|
});
|
|
7
12
|
};
|
|
13
|
+
const shouldAssign = inner => {
|
|
14
|
+
if (!inner) {
|
|
15
|
+
return false;
|
|
16
|
+
} else if (!("def" in inner)) {
|
|
17
|
+
return false;
|
|
18
|
+
} else if (inner.def.type === "optional") {
|
|
19
|
+
return true;
|
|
20
|
+
} else if (inner.def.type === "nullable") {
|
|
21
|
+
return true;
|
|
22
|
+
} else if (inner.def.type === "default") {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
};
|
|
8
27
|
export class ModelBuilder {
|
|
9
28
|
methods = {};
|
|
10
29
|
constructor(name, schema) {
|
|
@@ -20,8 +39,8 @@ export class ModelBuilder {
|
|
|
20
39
|
baseExtensionsObject = baseExtensions;
|
|
21
40
|
} else if (baseExtensions) {
|
|
22
41
|
let inner = baseExtensions;
|
|
23
|
-
while (
|
|
24
|
-
inner = inner.
|
|
42
|
+
while (shouldAssign(inner)) {
|
|
43
|
+
inner = inner.def.innerType;
|
|
25
44
|
}
|
|
26
45
|
baseExtensionsObject = inner instanceof z.ZodObject ? inner : z.object({});
|
|
27
46
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["z","BaseModel","createModelSchema","factory","object","ModelBuilder","methods","constructor","name","schema","extendSchema","extensionFn","shape","baseExtensions","extensions","baseExtensionsObject","ZodObject","
|
|
1
|
+
{"version":3,"names":["z","BaseModel","createModelSchema","factory","object","shouldAssign","inner","def","type","ModelBuilder","methods","constructor","name","schema","extendSchema","extensionFn","shape","baseExtensions","extensions","baseExtensionsObject","ZodObject","innerType","newExtensions","extend","withMethods","Object","assign","getSchema","build","Model","__schema","create","data","clone","Constructor","toData","prototype","defineProperty","Symbol","toStringTag","value"],"sources":["ModelBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { BaseModel, type IModelData as ExtractModelData } from \"./BaseModel.js\";\nimport type { $ZodTypeDef } from \"zod/v4/core\";\n\nexport type ModelClass<TModel extends BaseModel<any>> = {\n __schema: TModel[\"__schema\"];\n new (data: ExtractModelData<TModel>): TModel;\n create(data: ExtractModelData<TModel>): TModel;\n};\n\n/**\n * Custom type to compare Zod types and extract the inner type if it's wrapped in ZodOptional, ZodNullable, or ZodDefault.\n */\ntype InnerType = z.ZodTypeAny & {\n def: $ZodTypeDef & {\n innerType?: z.ZodObject<any>;\n };\n};\n\nexport const createModelSchema = <TReturn extends z.ZodRawShape>(\n factory: (zod: typeof z) => TReturn\n) => {\n return z.object({ ...factory(z) });\n};\n\nconst shouldAssign = (inner: InnerType): boolean => {\n if (!inner) {\n return false;\n } else if (!(\"def\" in inner)) {\n return false;\n } else if (inner.def.type === \"optional\") {\n return true;\n } else if (inner.def.type === \"nullable\") {\n return true;\n } else if (inner.def.type === \"default\") {\n return true;\n }\n return false;\n};\n\nexport class ModelBuilder<TModel extends BaseModel<any>> {\n private readonly methods: Partial<Record<keyof TModel, any>> = {};\n\n constructor(\n private name: string,\n private schema: TModel[\"__schema\"]\n ) {\n this.methods = {};\n }\n\n extendSchema<TExt extends z.ZodRawShape>(extensionFn: (zod: typeof z) => TExt): this {\n const shape = extensionFn(z);\n const baseExtensions = this.schema.shape.extensions;\n\n let baseExtensionsObject: z.ZodObject<any>;\n if (baseExtensions instanceof z.ZodObject) {\n baseExtensionsObject = baseExtensions;\n } else if (baseExtensions) {\n let inner = baseExtensions as InnerType;\n\n while (shouldAssign(inner)) {\n inner = inner.def.innerType!;\n }\n baseExtensionsObject = inner instanceof z.ZodObject ? inner : z.object({});\n } else {\n baseExtensionsObject = z.object({});\n }\n\n const newExtensions = baseExtensionsObject.extend(shape);\n this.schema = this.schema.extend({\n extensions: newExtensions\n }) as TModel[\"__schema\"];\n\n return this;\n }\n\n withMethods<TExtMethods extends object>(\n methods: TExtMethods & ThisType<TModel & TExtMethods>\n ): ModelBuilder<TModel & TExtMethods> {\n Object.assign(this.methods, methods);\n return this as unknown as ModelBuilder<TModel & TExtMethods>;\n }\n\n getSchema() {\n return this.schema;\n }\n\n build(): ModelClass<TModel> {\n const schema = this.schema;\n const methods = this.methods;\n const name = this.name;\n\n type ModelData = ExtractModelData<TModel>;\n\n class Model extends BaseModel<TModel[\"__schema\"]> {\n public override get __schema() {\n return schema;\n }\n\n static __schema = schema;\n\n static create(data: ModelData) {\n return new this(data) as unknown as TModel;\n }\n\n override clone(): this {\n const Constructor = this.constructor as new (data: ModelData) => this;\n return new Constructor(this.toData());\n }\n }\n\n Object.assign(Model.prototype, methods);\n\n Object.defineProperty(Model.prototype, Symbol.toStringTag, {\n value: name\n });\n\n return Model as unknown as ModelClass<TModel>;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ export declare abstract class FieldBuilder<TZod extends z.ZodTypeAny> {
|
|
|
6
6
|
protected zodSchema: TZod;
|
|
7
7
|
constructor(type: string, initialSchema: TZod);
|
|
8
8
|
label(text: string): this;
|
|
9
|
-
|
|
9
|
+
help(text: string): this;
|
|
10
10
|
placeholder(text: string): this;
|
|
11
11
|
toConfig(): FieldConfig;
|
|
12
12
|
getZodSchema(): TZod;
|
|
@@ -19,12 +19,13 @@ export declare class TextFieldBuilder<TZod extends z.ZodString = z.ZodString> ex
|
|
|
19
19
|
slug(): this;
|
|
20
20
|
email(): this;
|
|
21
21
|
url(): this;
|
|
22
|
+
private addStringValidator;
|
|
22
23
|
unique(): this;
|
|
23
24
|
}
|
|
24
25
|
export declare class ObjectFieldBuilder<TShape extends z.ZodRawShape> extends FieldBuilder<z.ZodObject<TShape>> {
|
|
25
|
-
private nestedFields;
|
|
26
|
+
private readonly nestedFields;
|
|
26
27
|
constructor(fields: (registry: IFieldBuilderRegistry) => {
|
|
27
|
-
[K in keyof TShape]: FieldBuilder<TShape[K]>;
|
|
28
|
+
[K in keyof TShape]: FieldBuilder<TShape[K] & z.ZodTypeAny>;
|
|
28
29
|
}, registry: IFieldBuilderRegistry);
|
|
29
30
|
optional(): ObjectFieldBuilder<TShape> & {
|
|
30
31
|
getZodSchema(): z.ZodOptional<z.ZodObject<TShape>>;
|
|
@@ -12,12 +12,12 @@ export class FieldBuilder {
|
|
|
12
12
|
this.config.label = text;
|
|
13
13
|
return this;
|
|
14
14
|
}
|
|
15
|
-
|
|
16
|
-
this.config.
|
|
15
|
+
help(text) {
|
|
16
|
+
this.config.help = text;
|
|
17
17
|
return this;
|
|
18
18
|
}
|
|
19
19
|
placeholder(text) {
|
|
20
|
-
this.config.
|
|
20
|
+
this.config.placeholder = text;
|
|
21
21
|
return this;
|
|
22
22
|
}
|
|
23
23
|
toConfig() {
|
|
@@ -25,8 +25,8 @@ export class FieldBuilder {
|
|
|
25
25
|
fieldId: "",
|
|
26
26
|
type: this.config.type,
|
|
27
27
|
label: this.config.label,
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
help: this.config.help,
|
|
29
|
+
placeholder: this.config.placeholder,
|
|
30
30
|
validation: this.config.validation || [],
|
|
31
31
|
settings: this.config.settings || {},
|
|
32
32
|
zodSchema: this.zodSchema
|
|
@@ -61,28 +61,19 @@ export class TextFieldBuilder extends FieldBuilder {
|
|
|
61
61
|
return this;
|
|
62
62
|
}
|
|
63
63
|
slug() {
|
|
64
|
-
this.
|
|
65
|
-
this.config.validation?.push({
|
|
66
|
-
name: "slug",
|
|
67
|
-
message: "Must be a valid slug",
|
|
68
|
-
settings: {}
|
|
69
|
-
});
|
|
70
|
-
return this;
|
|
64
|
+
return this.addStringValidator(this.zodSchema.regex(/^[a-z0-9-]+$/, "Must be a valid slug (lowercase letters, numbers, and hyphens only)"), "slug", "Must be a valid slug");
|
|
71
65
|
}
|
|
72
66
|
email() {
|
|
73
|
-
this.
|
|
74
|
-
this.config.validation?.push({
|
|
75
|
-
name: "email",
|
|
76
|
-
message: "Must be a valid email",
|
|
77
|
-
settings: {}
|
|
78
|
-
});
|
|
79
|
-
return this;
|
|
67
|
+
return this.addStringValidator(this.zodSchema.email("Must be a valid email"), "email", "Must be a valid email");
|
|
80
68
|
}
|
|
81
69
|
url() {
|
|
82
|
-
this.
|
|
70
|
+
return this.addStringValidator(this.zodSchema.url("Must be a valid URL"), "url", "Must be a valid URL");
|
|
71
|
+
}
|
|
72
|
+
addStringValidator(schema, name, message) {
|
|
73
|
+
this.zodSchema = schema;
|
|
83
74
|
this.config.validation?.push({
|
|
84
|
-
name
|
|
85
|
-
message
|
|
75
|
+
name,
|
|
76
|
+
message,
|
|
86
77
|
settings: {}
|
|
87
78
|
});
|
|
88
79
|
return this;
|
|
@@ -115,11 +106,15 @@ export class ObjectFieldBuilder extends FieldBuilder {
|
|
|
115
106
|
this.config.fields = nestedConfigs;
|
|
116
107
|
}
|
|
117
108
|
optional() {
|
|
109
|
+
// @ts-expect-error
|
|
118
110
|
this.zodSchema = this.zodSchema.optional();
|
|
111
|
+
// @ts-expect-error
|
|
119
112
|
return this;
|
|
120
113
|
}
|
|
121
114
|
nullable() {
|
|
115
|
+
// @ts-expect-error
|
|
122
116
|
this.zodSchema = this.zodSchema.nullable();
|
|
117
|
+
// @ts-expect-error
|
|
123
118
|
return this;
|
|
124
119
|
}
|
|
125
120
|
toConfig() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["z","FieldBuilder","config","validation","constructor","type","initialSchema","zodSchema","label","text","
|
|
1
|
+
{"version":3,"names":["z","FieldBuilder","config","validation","constructor","type","initialSchema","zodSchema","label","text","help","placeholder","toConfig","fieldId","settings","getZodSchema","TextFieldBuilder","schema","string","required","message","newSchema","min","push","name","minLength","length","maxLength","max","slug","addStringValidator","regex","email","url","unique","ObjectFieldBuilder","nestedFields","fields","registry","fieldBuilders","shape","nestedConfigs","builder","Object","entries","object","optional","nullable"],"sources":["FieldBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport type { FieldConfig } from \"./types.js\";\nimport type { IFieldBuilderRegistry } from \"./abstractions.js\";\n\n// Make FieldBuilder return the Zod type it produces\nexport abstract class FieldBuilder<TZod extends z.ZodTypeAny> {\n protected config: Partial<FieldConfig> = {\n validation: []\n };\n protected zodSchema: TZod;\n\n constructor(type: string, initialSchema: TZod) {\n this.config.type = type;\n this.zodSchema = initialSchema;\n }\n\n label(text: string): this {\n this.config.label = text;\n return this;\n }\n\n help(text: string): this {\n this.config.help = text;\n return this;\n }\n\n placeholder(text: string): this {\n this.config.placeholder = text;\n return this;\n }\n\n toConfig(): FieldConfig {\n return {\n fieldId: \"\",\n type: this.config.type!,\n label: this.config.label,\n help: this.config.help,\n placeholder: this.config.placeholder,\n validation: this.config.validation || [],\n settings: this.config.settings || {},\n zodSchema: this.zodSchema\n };\n }\n\n getZodSchema(): TZod {\n return this.zodSchema;\n }\n}\n\n// Text Field Builder - properly track type transformations\nexport class TextFieldBuilder<TZod extends z.ZodString = z.ZodString> extends FieldBuilder<TZod> {\n constructor(schema?: TZod) {\n super(\"text\", (schema || z.string()) as TZod);\n }\n\n required(message?: string): TextFieldBuilder<z.ZodString> {\n const newSchema = this.zodSchema.min(1, message || \"Field is required\");\n this.zodSchema = newSchema;\n this.config.validation?.push({\n name: \"required\",\n message: message || \"Field is required\",\n settings: {}\n });\n return this;\n }\n\n minLength(length: number, message?: string): this {\n this.zodSchema = this.zodSchema.min(length, message) as TZod;\n return this;\n }\n\n maxLength(length: number, message?: string): this {\n this.zodSchema = this.zodSchema.max(length, message) as TZod;\n return this;\n }\n\n slug(): this {\n return this.addStringValidator(\n this.zodSchema.regex(\n /^[a-z0-9-]+$/,\n \"Must be a valid slug (lowercase letters, numbers, and hyphens only)\"\n ),\n \"slug\",\n \"Must be a valid slug\"\n );\n }\n\n email(): this {\n return this.addStringValidator(\n this.zodSchema.email(\"Must be a valid email\"),\n \"email\",\n \"Must be a valid email\"\n );\n }\n\n url(): this {\n return this.addStringValidator(\n this.zodSchema.url(\"Must be a valid URL\"),\n \"url\",\n \"Must be a valid URL\"\n );\n }\n\n private addStringValidator(schema: z.ZodString, name: string, message: string): this {\n this.zodSchema = schema as TZod;\n this.config.validation?.push({ name, message, settings: {} });\n return this;\n }\n\n unique(): this {\n this.config.validation?.push({\n name: \"unique\",\n message: \"Value must be unique\",\n settings: {}\n });\n return this;\n }\n}\n\n// Object Field Builder - track the shape type\nexport class ObjectFieldBuilder<TShape extends z.ZodRawShape> extends FieldBuilder<\n z.ZodObject<TShape>\n> {\n private readonly nestedFields: FieldConfig[] = [];\n\n constructor(\n fields: (registry: IFieldBuilderRegistry) => {\n [K in keyof TShape]: FieldBuilder<TShape[K] & z.ZodTypeAny>;\n },\n registry: IFieldBuilderRegistry\n ) {\n const fieldBuilders = fields(registry);\n const shape = {} as TShape;\n const nestedConfigs: FieldConfig[] = [];\n\n for (const [fieldId, builder] of Object.entries(fieldBuilders) as Array<\n [keyof TShape, FieldBuilder<any>]\n >) {\n const config = builder.toConfig();\n config.fieldId = fieldId as string;\n nestedConfigs.push(config);\n shape[fieldId] = builder.getZodSchema() as TShape[keyof TShape];\n }\n\n super(\"object\", z.object(shape));\n this.nestedFields = nestedConfigs;\n this.config.fields = nestedConfigs;\n }\n\n optional(): ObjectFieldBuilder<TShape> & {\n getZodSchema(): z.ZodOptional<z.ZodObject<TShape>>;\n } {\n // @ts-expect-error\n this.zodSchema = this.zodSchema.optional();\n // @ts-expect-error\n return this;\n }\n\n nullable(): ObjectFieldBuilder<TShape> & {\n getZodSchema(): z.ZodNullable<z.ZodObject<TShape>>;\n } {\n // @ts-expect-error\n this.zodSchema = this.zodSchema.nullable();\n // @ts-expect-error\n return this;\n }\n\n override toConfig(): FieldConfig {\n const config = super.toConfig();\n config.fields = this.nestedFields;\n return config;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@ import { TextFieldBuilder, ObjectFieldBuilder, type FieldBuilder } from "./Field
|
|
|
3
3
|
import { type IFieldBuilderRegistry } from "./abstractions.js";
|
|
4
4
|
declare class FieldBuilderRegistryImpl implements IFieldBuilderRegistry {
|
|
5
5
|
text(): TextFieldBuilder<z.ZodString>;
|
|
6
|
-
object<TShape extends z.
|
|
6
|
+
object<TShape extends Record<string, z.ZodTypeAny>>(fields: (registry: IFieldBuilderRegistry) => {
|
|
7
7
|
[K in keyof TShape]: FieldBuilder<TShape[K]>;
|
|
8
8
|
}): ObjectFieldBuilder<TShape>;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createImplementation","TextFieldBuilder","ObjectFieldBuilder","FieldBuilderRegistry","RegistryAbstraction","FieldBuilderRegistryImpl","text","object","fields","abstraction","implementation","dependencies"],"sources":["FieldBuilderRegistry.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { createImplementation } from \"@webiny/di\";\nimport { TextFieldBuilder, ObjectFieldBuilder, type FieldBuilder } from \"./FieldBuilder.js\";\nimport {\n FieldBuilderRegistry as RegistryAbstraction,\n type IFieldBuilderRegistry\n} from \"./abstractions.js\";\n\nclass FieldBuilderRegistryImpl implements IFieldBuilderRegistry {\n text(): TextFieldBuilder<z.ZodString> {\n return new TextFieldBuilder();\n }\n\n object<TShape extends z.
|
|
1
|
+
{"version":3,"names":["createImplementation","TextFieldBuilder","ObjectFieldBuilder","FieldBuilderRegistry","RegistryAbstraction","FieldBuilderRegistryImpl","text","object","fields","abstraction","implementation","dependencies"],"sources":["FieldBuilderRegistry.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { createImplementation } from \"@webiny/di\";\nimport { TextFieldBuilder, ObjectFieldBuilder, type FieldBuilder } from \"./FieldBuilder.js\";\nimport {\n FieldBuilderRegistry as RegistryAbstraction,\n type IFieldBuilderRegistry\n} from \"./abstractions.js\";\n\nclass FieldBuilderRegistryImpl implements IFieldBuilderRegistry {\n text(): TextFieldBuilder<z.ZodString> {\n return new TextFieldBuilder();\n }\n\n object<TShape extends Record<string, z.ZodTypeAny>>(\n fields: (registry: IFieldBuilderRegistry) => {\n [K in keyof TShape]: FieldBuilder<TShape[K]>;\n }\n ): ObjectFieldBuilder<TShape> {\n return new ObjectFieldBuilder(fields, this);\n }\n}\n\nexport const FieldBuilderRegistry = createImplementation({\n abstraction: RegistryAbstraction,\n implementation: FieldBuilderRegistryImpl,\n dependencies: []\n});\n"],"mappings":"AACA,SAASA,oBAAoB,QAAQ,YAAY;AACjD,SAASC,gBAAgB,EAAEC,kBAAkB;AAC7C,SACIC,oBAAoB,IAAIC,mBAAmB;AAI/C,MAAMC,wBAAwB,CAAkC;EAC5DC,IAAIA,CAAA,EAAkC;IAClC,OAAO,IAAIL,gBAAgB,CAAC,CAAC;EACjC;EAEAM,MAAMA,CACFC,MAEC,EACyB;IAC1B,OAAO,IAAIN,kBAAkB,CAACM,MAAM,EAAE,IAAI,CAAC;EAC/C;AACJ;AAEA,OAAO,MAAML,oBAAoB,GAAGH,oBAAoB,CAAC;EACrDS,WAAW,EAAEL,mBAAmB;EAChCM,cAAc,EAAEL,wBAAwB;EACxCM,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -10,6 +10,7 @@ export declare class FieldDefinitionsBuilder<TFields extends z.ZodRawShape = {}>
|
|
|
10
10
|
__fromObject<TShape extends Record<string, FieldBuilder<any>>>(shape: TShape): FieldDefinitionsBuilder<{
|
|
11
11
|
[K in keyof TShape]: ReturnType<TShape[K]["getZodSchema"]>;
|
|
12
12
|
}>;
|
|
13
|
+
private registerField;
|
|
13
14
|
__toZodSchema(): z.ZodObject<TFields>;
|
|
14
15
|
__getFields(): FieldConfig[];
|
|
15
16
|
__getFieldsMap(): Map<string, FieldBuilderConfig>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
//
|
|
2
|
+
// oxlint-disable-next-line
|
|
3
3
|
export class FieldDefinitionsBuilder {
|
|
4
4
|
fields = new Map();
|
|
5
5
|
constructor(registry) {
|
|
@@ -8,30 +8,28 @@ export class FieldDefinitionsBuilder {
|
|
|
8
8
|
|
|
9
9
|
// Keep the old .field() method for internal use
|
|
10
10
|
field(name, configure) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
config.fieldId = name;
|
|
14
|
-
this.fields.set(name, {
|
|
15
|
-
fieldId: name,
|
|
16
|
-
config,
|
|
17
|
-
zodSchema: fieldBuilder.getZodSchema()
|
|
18
|
-
});
|
|
11
|
+
this.registerField(name, configure(this.registry));
|
|
12
|
+
// @ts-expect-error
|
|
19
13
|
return this;
|
|
20
14
|
}
|
|
21
15
|
|
|
22
16
|
// Internal method to build from object
|
|
23
17
|
__fromObject(shape) {
|
|
24
18
|
for (const [fieldId, fieldBuilder] of Object.entries(shape)) {
|
|
25
|
-
|
|
26
|
-
config.fieldId = fieldId;
|
|
27
|
-
this.fields.set(fieldId, {
|
|
28
|
-
fieldId,
|
|
29
|
-
config,
|
|
30
|
-
zodSchema: fieldBuilder.getZodSchema()
|
|
31
|
-
});
|
|
19
|
+
this.registerField(fieldId, fieldBuilder);
|
|
32
20
|
}
|
|
21
|
+
// @ts-expect-error
|
|
33
22
|
return this;
|
|
34
23
|
}
|
|
24
|
+
registerField(fieldId, fieldBuilder) {
|
|
25
|
+
const config = fieldBuilder.toConfig();
|
|
26
|
+
config.fieldId = fieldId;
|
|
27
|
+
this.fields.set(fieldId, {
|
|
28
|
+
fieldId,
|
|
29
|
+
config,
|
|
30
|
+
zodSchema: fieldBuilder.getZodSchema()
|
|
31
|
+
});
|
|
32
|
+
}
|
|
35
33
|
__toZodSchema() {
|
|
36
34
|
const schemaShape = {};
|
|
37
35
|
for (const [fieldId, {
|
|
@@ -58,6 +56,6 @@ export function createFieldDefinitions(factory) {
|
|
|
58
56
|
}
|
|
59
57
|
|
|
60
58
|
// TODO: check the unused generic
|
|
61
|
-
//
|
|
59
|
+
// oxlint-disable-next-line
|
|
62
60
|
|
|
63
61
|
//# sourceMappingURL=FieldDefinitionsBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["z","FieldDefinitionsBuilder","fields","Map","constructor","registry","field","name","configure","
|
|
1
|
+
{"version":3,"names":["z","FieldDefinitionsBuilder","fields","Map","constructor","registry","field","name","configure","registerField","__fromObject","shape","fieldId","fieldBuilder","Object","entries","config","toConfig","set","zodSchema","getZodSchema","__toZodSchema","schemaShape","object","__getFields","Array","from","values","map","f","__getFieldsMap","createFieldDefinitions","factory","__type"],"sources":["FieldDefinitionsBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport type { FieldBuilder } from \"./FieldBuilder.js\";\nimport type { IFieldBuilderRegistry } from \"./abstractions.js\";\nimport type { FieldConfig, FieldBuilderConfig } from \"./types.js\";\n\n// oxlint-disable-next-line\nexport class FieldDefinitionsBuilder<TFields extends z.ZodRawShape = {}> {\n private fields = new Map<string, FieldBuilderConfig>();\n\n constructor(private registry: IFieldBuilderRegistry) {}\n\n // Keep the old .field() method for internal use\n field<K extends string, TZod extends z.ZodTypeAny>(\n name: K,\n configure: (field: IFieldBuilderRegistry) => FieldBuilder<TZod>\n ): FieldDefinitionsBuilder<TFields & Record<K, TZod>> {\n this.registerField(name, configure(this.registry));\n // @ts-expect-error\n return this;\n }\n\n // Internal method to build from object\n __fromObject<TShape extends Record<string, FieldBuilder<any>>>(\n shape: TShape\n ): FieldDefinitionsBuilder<{ [K in keyof TShape]: ReturnType<TShape[K][\"getZodSchema\"]> }> {\n for (const [fieldId, fieldBuilder] of Object.entries(shape)) {\n this.registerField(fieldId, fieldBuilder);\n }\n // @ts-expect-error\n return this;\n }\n\n private registerField(fieldId: string, fieldBuilder: FieldBuilder<any>): void {\n const config = fieldBuilder.toConfig();\n config.fieldId = fieldId;\n this.fields.set(fieldId, { fieldId, config, zodSchema: fieldBuilder.getZodSchema() });\n }\n\n __toZodSchema(): z.ZodObject<TFields> {\n const schemaShape = {} as TFields;\n\n for (const [fieldId, { zodSchema }] of this.fields) {\n schemaShape[fieldId as keyof TFields] = zodSchema as unknown as TFields[keyof TFields];\n }\n\n return z.object(schemaShape);\n }\n\n __getFields(): FieldConfig[] {\n return Array.from(this.fields.values()).map(f => f.config);\n }\n\n __getFieldsMap(): Map<string, FieldBuilderConfig> {\n return new Map(this.fields);\n }\n}\n\n// Updated factory function - now takes an object!\nexport function createFieldDefinitions<TShape extends Record<string, FieldBuilder<any>>>(\n factory: (fields: IFieldBuilderRegistry) => TShape\n): FieldDefinitionsFactory<{ [K in keyof TShape]: ReturnType<TShape[K][\"getZodSchema\"]> }> {\n return {\n __type: \"FieldDefinitionsFactory\" as const,\n factory\n };\n}\n\n// TODO: check the unused generic\n// oxlint-disable-next-line\nexport interface FieldDefinitionsFactory<TFields extends z.ZodRawShape> {\n __type: \"FieldDefinitionsFactory\";\n factory: (fields: IFieldBuilderRegistry) => Record<string, FieldBuilder<any>>;\n}\n\nexport type InferFieldSchema<T> =\n T extends FieldDefinitionsFactory<infer TFields> ? z.ZodObject<TFields> : never;\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AAKvB;AACA,OAAO,MAAMC,uBAAuB,CAAqC;EAC7DC,MAAM,GAAG,IAAIC,GAAG,CAA6B,CAAC;EAEtDC,WAAWA,CAASC,QAA+B,EAAE;IAAA,KAAjCA,QAA+B,GAA/BA,QAA+B;EAAG;;EAEtD;EACAC,KAAKA,CACDC,IAAO,EACPC,SAA+D,EACb;IAClD,IAAI,CAACC,aAAa,CAACF,IAAI,EAAEC,SAAS,CAAC,IAAI,CAACH,QAAQ,CAAC,CAAC;IAClD;IACA,OAAO,IAAI;EACf;;EAEA;EACAK,YAAYA,CACRC,KAAa,EAC0E;IACvF,KAAK,MAAM,CAACC,OAAO,EAAEC,YAAY,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;MACzD,IAAI,CAACF,aAAa,CAACG,OAAO,EAAEC,YAAY,CAAC;IAC7C;IACA;IACA,OAAO,IAAI;EACf;EAEQJ,aAAaA,CAACG,OAAe,EAAEC,YAA+B,EAAQ;IAC1E,MAAMG,MAAM,GAAGH,YAAY,CAACI,QAAQ,CAAC,CAAC;IACtCD,MAAM,CAACJ,OAAO,GAAGA,OAAO;IACxB,IAAI,CAACV,MAAM,CAACgB,GAAG,CAACN,OAAO,EAAE;MAAEA,OAAO;MAAEI,MAAM;MAAEG,SAAS,EAAEN,YAAY,CAACO,YAAY,CAAC;IAAE,CAAC,CAAC;EACzF;EAEAC,aAAaA,CAAA,EAAyB;IAClC,MAAMC,WAAW,GAAG,CAAC,CAAY;IAEjC,KAAK,MAAM,CAACV,OAAO,EAAE;MAAEO;IAAU,CAAC,CAAC,IAAI,IAAI,CAACjB,MAAM,EAAE;MAChDoB,WAAW,CAACV,OAAO,CAAkB,GAAGO,SAA8C;IAC1F;IAEA,OAAOnB,CAAC,CAACuB,MAAM,CAACD,WAAW,CAAC;EAChC;EAEAE,WAAWA,CAAA,EAAkB;IACzB,OAAOC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACxB,MAAM,CAACyB,MAAM,CAAC,CAAC,CAAC,CAACC,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACb,MAAM,CAAC;EAC9D;EAEAc,cAAcA,CAAA,EAAoC;IAC9C,OAAO,IAAI3B,GAAG,CAAC,IAAI,CAACD,MAAM,CAAC;EAC/B;AACJ;;AAEA;AACA,OAAO,SAAS6B,sBAAsBA,CAClCC,OAAkD,EACqC;EACvF,OAAO;IACHC,MAAM,EAAE,yBAAkC;IAC1CD;EACJ,CAAC;AACL;;AAEA;AACA","ignoreList":[]}
|
|
@@ -19,7 +19,7 @@ class PrivateCmsModelBuilderImpl {
|
|
|
19
19
|
}
|
|
20
20
|
class PrivateCmsModelConfiguration {
|
|
21
21
|
metadata = {};
|
|
22
|
-
//
|
|
22
|
+
// oxlint-disable-next-line
|
|
23
23
|
modelMethods = {};
|
|
24
24
|
extensionFields = new Map();
|
|
25
25
|
constructor(modelId, fieldBuilderRegistry, fieldDefinitionsBuilder) {
|