@webiny/api-core 6.3.0-beta.4 → 6.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (786) hide show
  1. package/ApiCoreFeature.js +18 -18
  2. package/ApiCoreFeature.js.map +1 -1
  3. package/createApiCore.d.ts +1 -1
  4. package/createApiCore.js +14 -9
  5. package/createApiCore.js.map +1 -1
  6. package/domain/identity/SystemIdentityValue.js +9 -8
  7. package/domain/identity/SystemIdentityValue.js.map +1 -1
  8. package/domain/security/ApiToken.js +5 -11
  9. package/domain/security/ApiToken.js.map +1 -1
  10. package/domain/tenancy/RootTenantValue.js +9 -8
  11. package/domain/tenancy/RootTenantValue.js.map +1 -1
  12. package/domain/tenancy/errors.js +0 -3
  13. package/exports/api/build-params.js +0 -3
  14. package/exports/api/event-publisher.js +0 -3
  15. package/exports/api/graphql.js +0 -2
  16. package/exports/api/key-value-store.js +0 -3
  17. package/exports/api/logger.js +0 -3
  18. package/exports/api/security/api-key.js +0 -2
  19. package/exports/api/security/authentication.js +0 -2
  20. package/exports/api/security/role.js +1 -3
  21. package/exports/api/security/user.js +0 -2
  22. package/exports/api/security.js +3 -7
  23. package/exports/api/system.js +0 -2
  24. package/exports/api/tasks.js +0 -2
  25. package/exports/api/tenancy.js +4 -6
  26. package/exports/api.js +1 -3
  27. package/features/ai/Ai.js +100 -117
  28. package/features/ai/Ai.js.map +1 -1
  29. package/features/ai/AiSdkTools.js +23 -19
  30. package/features/ai/AiSdkTools.js.map +1 -1
  31. package/features/ai/AnthropicSdkFactory.js +82 -65
  32. package/features/ai/AnthropicSdkFactory.js.map +1 -1
  33. package/features/ai/OpenAiSdkFactory.js +234 -181
  34. package/features/ai/OpenAiSdkFactory.js.map +1 -1
  35. package/features/ai/abstractions.js +7 -32
  36. package/features/ai/abstractions.js.map +1 -1
  37. package/features/ai/feature.js +9 -8
  38. package/features/ai/feature.js.map +1 -1
  39. package/features/ai/index.js +1 -3
  40. package/features/buildParams/BuildParams.js +20 -14
  41. package/features/buildParams/BuildParams.js.map +1 -1
  42. package/features/buildParams/abstractions.js +3 -4
  43. package/features/buildParams/abstractions.js.map +1 -1
  44. package/features/buildParams/feature.js +6 -5
  45. package/features/buildParams/feature.js.map +1 -1
  46. package/features/buildParams/index.js +0 -2
  47. package/features/encryption/EncryptionService.js +50 -46
  48. package/features/encryption/EncryptionService.js.map +1 -1
  49. package/features/encryption/abstractions.js +2 -2
  50. package/features/encryption/abstractions.js.map +1 -1
  51. package/features/encryption/feature.js +6 -5
  52. package/features/encryption/feature.js.map +1 -1
  53. package/features/encryption/index.js +0 -2
  54. package/features/eventPublisher/EventPublisher.js +9 -15
  55. package/features/eventPublisher/EventPublisher.js.map +1 -1
  56. package/features/eventPublisher/__tests__/EventPublisher.test.js +385 -419
  57. package/features/eventPublisher/__tests__/EventPublisher.test.js.map +1 -1
  58. package/features/eventPublisher/abstractions.js +7 -12
  59. package/features/eventPublisher/abstractions.js.map +1 -1
  60. package/features/eventPublisher/feature.js +8 -7
  61. package/features/eventPublisher/feature.js.map +1 -1
  62. package/features/eventPublisher/index.js +0 -2
  63. package/features/featureFlags/FeatureFlags.js +15 -12
  64. package/features/featureFlags/FeatureFlags.js.map +1 -1
  65. package/features/featureFlags/abstractions.js +2 -1
  66. package/features/featureFlags/abstractions.js.map +1 -1
  67. package/features/featureFlags/feature.js +6 -5
  68. package/features/featureFlags/feature.js.map +1 -1
  69. package/features/keyValueStore/GlobalKeyValueStore.js +28 -23
  70. package/features/keyValueStore/GlobalKeyValueStore.js.map +1 -1
  71. package/features/keyValueStore/KeyValueStore.js +30 -27
  72. package/features/keyValueStore/KeyValueStore.js.map +1 -1
  73. package/features/keyValueStore/KeyValueStoreRepository.d.ts +2 -2
  74. package/features/keyValueStore/KeyValueStoreRepository.js +34 -41
  75. package/features/keyValueStore/KeyValueStoreRepository.js.map +1 -1
  76. package/features/keyValueStore/abstractions.d.ts +6 -2
  77. package/features/keyValueStore/abstractions.js +5 -20
  78. package/features/keyValueStore/abstractions.js.map +1 -1
  79. package/features/keyValueStore/errors.js +16 -17
  80. package/features/keyValueStore/errors.js.map +1 -1
  81. package/features/keyValueStore/feature.js +9 -9
  82. package/features/keyValueStore/feature.js.map +1 -1
  83. package/features/keyValueStore/index.js +1 -3
  84. package/features/logger/LoggerService.js +41 -45
  85. package/features/logger/LoggerService.js.map +1 -1
  86. package/features/logger/abstractions.js +2 -2
  87. package/features/logger/abstractions.js.map +1 -1
  88. package/features/logger/feature.js +6 -5
  89. package/features/logger/feature.js.map +1 -1
  90. package/features/logger/index.js +0 -2
  91. package/features/masker/Masker.js +11 -14
  92. package/features/masker/Masker.js.map +1 -1
  93. package/features/masker/abstractions.js +2 -1
  94. package/features/masker/abstractions.js.map +1 -1
  95. package/features/masker/feature.js +7 -6
  96. package/features/masker/feature.js.map +1 -1
  97. package/features/masker/index.js +0 -2
  98. package/features/security/IdentityContext/AnonymousIdentity.js +12 -16
  99. package/features/security/IdentityContext/AnonymousIdentity.js.map +1 -1
  100. package/features/security/IdentityContext/AuthenticatedIdentity.js +5 -8
  101. package/features/security/IdentityContext/AuthenticatedIdentity.js.map +1 -1
  102. package/features/security/IdentityContext/Identity.js +63 -71
  103. package/features/security/IdentityContext/Identity.js.map +1 -1
  104. package/features/security/IdentityContext/IdentityContext.js +69 -106
  105. package/features/security/IdentityContext/IdentityContext.js.map +1 -1
  106. package/features/security/IdentityContext/abstractions.js +2 -2
  107. package/features/security/IdentityContext/abstractions.js.map +1 -1
  108. package/features/security/IdentityContext/feature.js +6 -5
  109. package/features/security/IdentityContext/feature.js.map +1 -1
  110. package/features/security/IdentityContext/index.js +0 -3
  111. package/features/security/SecurityFeature.js +13 -21
  112. package/features/security/SecurityFeature.js.map +1 -1
  113. package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js +48 -49
  114. package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js.map +1 -1
  115. package/features/security/apiKeys/CreateApiKey/abstractions.js +2 -2
  116. package/features/security/apiKeys/CreateApiKey/abstractions.js.map +1 -1
  117. package/features/security/apiKeys/CreateApiKey/events.js +17 -16
  118. package/features/security/apiKeys/CreateApiKey/events.js.map +1 -1
  119. package/features/security/apiKeys/CreateApiKey/feature.js +6 -5
  120. package/features/security/apiKeys/CreateApiKey/feature.js.map +1 -1
  121. package/features/security/apiKeys/CreateApiKey/index.js +0 -2
  122. package/features/security/apiKeys/DeleteApiKey/DeleteApiKeyUseCase.js +29 -30
  123. package/features/security/apiKeys/DeleteApiKey/DeleteApiKeyUseCase.js.map +1 -1
  124. package/features/security/apiKeys/DeleteApiKey/abstractions.js +2 -2
  125. package/features/security/apiKeys/DeleteApiKey/abstractions.js.map +1 -1
  126. package/features/security/apiKeys/DeleteApiKey/events.js +17 -16
  127. package/features/security/apiKeys/DeleteApiKey/events.js.map +1 -1
  128. package/features/security/apiKeys/DeleteApiKey/feature.js +6 -5
  129. package/features/security/apiKeys/DeleteApiKey/feature.js.map +1 -1
  130. package/features/security/apiKeys/DeleteApiKey/index.js +0 -2
  131. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.js +16 -14
  132. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.js.map +1 -1
  133. package/features/security/apiKeys/GetApiKey/abstractions.js +2 -2
  134. package/features/security/apiKeys/GetApiKey/abstractions.js.map +1 -1
  135. package/features/security/apiKeys/GetApiKey/feature.js +6 -5
  136. package/features/security/apiKeys/GetApiKey/feature.js.map +1 -1
  137. package/features/security/apiKeys/GetApiKey/index.js +0 -2
  138. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.js +13 -10
  139. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.js.map +1 -1
  140. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js +2 -2
  141. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js.map +1 -1
  142. package/features/security/apiKeys/GetApiKeyBySlug/feature.js +6 -5
  143. package/features/security/apiKeys/GetApiKeyBySlug/feature.js.map +1 -1
  144. package/features/security/apiKeys/GetApiKeyBySlug/index.js +0 -2
  145. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.js +13 -10
  146. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.js.map +1 -1
  147. package/features/security/apiKeys/GetApiKeyByToken/abstractions.js +2 -2
  148. package/features/security/apiKeys/GetApiKeyByToken/abstractions.js.map +1 -1
  149. package/features/security/apiKeys/GetApiKeyByToken/feature.js +6 -5
  150. package/features/security/apiKeys/GetApiKeyByToken/feature.js.map +1 -1
  151. package/features/security/apiKeys/GetApiKeyByToken/index.js +0 -2
  152. package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js +17 -17
  153. package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js.map +1 -1
  154. package/features/security/apiKeys/ListApiKeys/abstractions.js +2 -2
  155. package/features/security/apiKeys/ListApiKeys/abstractions.js.map +1 -1
  156. package/features/security/apiKeys/ListApiKeys/feature.js +6 -5
  157. package/features/security/apiKeys/ListApiKeys/feature.js.map +1 -1
  158. package/features/security/apiKeys/ListApiKeys/index.js +0 -2
  159. package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js +39 -42
  160. package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js.map +1 -1
  161. package/features/security/apiKeys/UpdateApiKey/abstractions.js +2 -2
  162. package/features/security/apiKeys/UpdateApiKey/abstractions.js.map +1 -1
  163. package/features/security/apiKeys/UpdateApiKey/events.js +17 -16
  164. package/features/security/apiKeys/UpdateApiKey/events.js.map +1 -1
  165. package/features/security/apiKeys/UpdateApiKey/feature.js +6 -5
  166. package/features/security/apiKeys/UpdateApiKey/feature.js.map +1 -1
  167. package/features/security/apiKeys/UpdateApiKey/index.js +0 -2
  168. package/features/security/apiKeys/feature.js +14 -16
  169. package/features/security/apiKeys/feature.js.map +1 -1
  170. package/features/security/apiKeys/shared/ApiKeyProvider.js +42 -42
  171. package/features/security/apiKeys/shared/ApiKeyProvider.js.map +1 -1
  172. package/features/security/apiKeys/shared/ApiKeysRepository.js +108 -135
  173. package/features/security/apiKeys/shared/ApiKeysRepository.js.map +1 -1
  174. package/features/security/apiKeys/shared/abstractions.js +4 -6
  175. package/features/security/apiKeys/shared/abstractions.js.map +1 -1
  176. package/features/security/apiKeys/shared/errors.js +29 -32
  177. package/features/security/apiKeys/shared/errors.js.map +1 -1
  178. package/features/security/apiKeys/shared/generateToken.js +6 -16
  179. package/features/security/apiKeys/shared/generateToken.js.map +1 -1
  180. package/features/security/apiKeys/shared/schemas.js +27 -23
  181. package/features/security/apiKeys/shared/schemas.js.map +1 -1
  182. package/features/security/apiKeys/shared/types.js +0 -3
  183. package/features/security/authentication/AuthenticationContext/AuthenticationContext.js +44 -38
  184. package/features/security/authentication/AuthenticationContext/AuthenticationContext.js.map +1 -1
  185. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js +33 -43
  186. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js.map +1 -1
  187. package/features/security/authentication/AuthenticationContext/abstractions.js +2 -2
  188. package/features/security/authentication/AuthenticationContext/abstractions.js.map +1 -1
  189. package/features/security/authentication/AuthenticationContext/errors.js +51 -116
  190. package/features/security/authentication/AuthenticationContext/errors.js.map +1 -1
  191. package/features/security/authentication/AuthenticationContext/events.js +17 -16
  192. package/features/security/authentication/AuthenticationContext/events.js.map +1 -1
  193. package/features/security/authentication/AuthenticationContext/feature.js +6 -5
  194. package/features/security/authentication/AuthenticationContext/feature.js.map +1 -1
  195. package/features/security/authentication/AuthenticationContext/index.js +2 -4
  196. package/features/security/authentication/Authenticator/abstractions.js +2 -2
  197. package/features/security/authentication/Authenticator/abstractions.js.map +1 -1
  198. package/features/security/authentication/Authenticator/index.js +0 -2
  199. package/features/security/authorization/AuthorizationContext/AuthorizationContext.js +46 -59
  200. package/features/security/authorization/AuthorizationContext/AuthorizationContext.js.map +1 -1
  201. package/features/security/authorization/AuthorizationContext/abstractions.js +3 -4
  202. package/features/security/authorization/AuthorizationContext/abstractions.js.map +1 -1
  203. package/features/security/authorization/AuthorizationContext/feature.js +10 -9
  204. package/features/security/authorization/AuthorizationContext/feature.js.map +1 -1
  205. package/features/security/authorization/AuthorizationContext/index.js +1 -4
  206. package/features/security/authorization/Authorizer/abstractions.js +2 -2
  207. package/features/security/authorization/Authorizer/abstractions.js.map +1 -1
  208. package/features/security/authorization/Authorizer/index.js +0 -2
  209. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.js +60 -64
  210. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.js.map +1 -1
  211. package/features/security/authorization/GroupsTeamsAuthorizer/RolesTeamsAuthorizer.js +26 -40
  212. package/features/security/authorization/GroupsTeamsAuthorizer/RolesTeamsAuthorizer.js.map +1 -1
  213. package/features/security/authorization/GroupsTeamsAuthorizer/abstractions.js +2 -1
  214. package/features/security/authorization/GroupsTeamsAuthorizer/abstractions.js.map +1 -1
  215. package/features/security/authorization/GroupsTeamsAuthorizer/feature.js +7 -6
  216. package/features/security/authorization/GroupsTeamsAuthorizer/feature.js.map +1 -1
  217. package/features/security/login/abstractions.js +9 -8
  218. package/features/security/login/abstractions.js.map +1 -1
  219. package/features/security/login/index.js +0 -2
  220. package/features/security/permissions/createPermissionSchema.js +6 -5
  221. package/features/security/permissions/createPermissionSchema.js.map +1 -1
  222. package/features/security/permissions/createPermissions.js +148 -236
  223. package/features/security/permissions/createPermissions.js.map +1 -1
  224. package/features/security/permissions/index.js +0 -2
  225. package/features/security/permissions/types.js +0 -3
  226. package/features/security/roles/CreateRole/CreateRoleUseCase.js +53 -59
  227. package/features/security/roles/CreateRole/CreateRoleUseCase.js.map +1 -1
  228. package/features/security/roles/CreateRole/abstractions.js +2 -2
  229. package/features/security/roles/CreateRole/abstractions.js.map +1 -1
  230. package/features/security/roles/CreateRole/events.js +17 -16
  231. package/features/security/roles/CreateRole/events.js.map +1 -1
  232. package/features/security/roles/CreateRole/feature.js +6 -5
  233. package/features/security/roles/CreateRole/feature.js.map +1 -1
  234. package/features/security/roles/CreateRole/index.js +0 -2
  235. package/features/security/roles/CreateRole/schema.js +8 -7
  236. package/features/security/roles/CreateRole/schema.js.map +1 -1
  237. package/features/security/roles/DeleteRole/DeleteRoleUseCase.js +35 -41
  238. package/features/security/roles/DeleteRole/DeleteRoleUseCase.js.map +1 -1
  239. package/features/security/roles/DeleteRole/abstractions.js +2 -2
  240. package/features/security/roles/DeleteRole/abstractions.js.map +1 -1
  241. package/features/security/roles/DeleteRole/events.js +17 -16
  242. package/features/security/roles/DeleteRole/events.js.map +1 -1
  243. package/features/security/roles/DeleteRole/feature.js +6 -5
  244. package/features/security/roles/DeleteRole/feature.js.map +1 -1
  245. package/features/security/roles/DeleteRole/index.js +0 -2
  246. package/features/security/roles/GetRole/GetRoleUseCase.js +19 -18
  247. package/features/security/roles/GetRole/GetRoleUseCase.js.map +1 -1
  248. package/features/security/roles/GetRole/abstractions.js +2 -2
  249. package/features/security/roles/GetRole/abstractions.js.map +1 -1
  250. package/features/security/roles/GetRole/feature.js +6 -5
  251. package/features/security/roles/GetRole/feature.js.map +1 -1
  252. package/features/security/roles/GetRole/index.js +0 -2
  253. package/features/security/roles/Installer/RolesInstaller.js +38 -35
  254. package/features/security/roles/Installer/RolesInstaller.js.map +1 -1
  255. package/features/security/roles/ListRoles/ListRolesUseCase.js +18 -17
  256. package/features/security/roles/ListRoles/ListRolesUseCase.js.map +1 -1
  257. package/features/security/roles/ListRoles/abstractions.js +2 -2
  258. package/features/security/roles/ListRoles/abstractions.js.map +1 -1
  259. package/features/security/roles/ListRoles/feature.js +6 -5
  260. package/features/security/roles/ListRoles/feature.js.map +1 -1
  261. package/features/security/roles/ListRoles/index.js +0 -2
  262. package/features/security/roles/UpdateRole/UpdateRoleUseCase.js +43 -50
  263. package/features/security/roles/UpdateRole/UpdateRoleUseCase.js.map +1 -1
  264. package/features/security/roles/UpdateRole/abstractions.js +2 -2
  265. package/features/security/roles/UpdateRole/abstractions.js.map +1 -1
  266. package/features/security/roles/UpdateRole/events.js +17 -16
  267. package/features/security/roles/UpdateRole/events.js.map +1 -1
  268. package/features/security/roles/UpdateRole/feature.js +6 -5
  269. package/features/security/roles/UpdateRole/feature.js.map +1 -1
  270. package/features/security/roles/UpdateRole/index.js +0 -2
  271. package/features/security/roles/UpdateRole/schema.js +7 -6
  272. package/features/security/roles/UpdateRole/schema.js.map +1 -1
  273. package/features/security/roles/feature.js +14 -18
  274. package/features/security/roles/feature.js.map +1 -1
  275. package/features/security/roles/shared/RoleProvider.js +27 -21
  276. package/features/security/roles/shared/RoleProvider.js.map +1 -1
  277. package/features/security/roles/shared/RolesRepository.js +96 -113
  278. package/features/security/roles/shared/RolesRepository.js.map +1 -1
  279. package/features/security/roles/shared/abstractions.js +3 -4
  280. package/features/security/roles/shared/abstractions.js.map +1 -1
  281. package/features/security/roles/shared/decorators/ListCache.js +23 -22
  282. package/features/security/roles/shared/decorators/ListCache.js.map +1 -1
  283. package/features/security/roles/shared/decorators/RolesRepositoryCachingDecorator.js +40 -62
  284. package/features/security/roles/shared/decorators/RolesRepositoryCachingDecorator.js.map +1 -1
  285. package/features/security/roles/shared/errors.js +50 -56
  286. package/features/security/roles/shared/errors.js.map +1 -1
  287. package/features/security/roles/shared/types.js +0 -3
  288. package/features/security/shared/abstractions.js +4 -6
  289. package/features/security/shared/abstractions.js.map +1 -1
  290. package/features/security/shared/errors.js +8 -8
  291. package/features/security/shared/errors.js.map +1 -1
  292. package/features/security/shared/index.js +0 -2
  293. package/features/security/teams/CreateTeam/CreateTeamUseCase.js +53 -59
  294. package/features/security/teams/CreateTeam/CreateTeamUseCase.js.map +1 -1
  295. package/features/security/teams/CreateTeam/abstractions.js +2 -2
  296. package/features/security/teams/CreateTeam/abstractions.js.map +1 -1
  297. package/features/security/teams/CreateTeam/events.js +17 -16
  298. package/features/security/teams/CreateTeam/events.js.map +1 -1
  299. package/features/security/teams/CreateTeam/feature.js +6 -5
  300. package/features/security/teams/CreateTeam/feature.js.map +1 -1
  301. package/features/security/teams/CreateTeam/index.js +0 -2
  302. package/features/security/teams/CreateTeam/schema.js +6 -5
  303. package/features/security/teams/CreateTeam/schema.js.map +1 -1
  304. package/features/security/teams/DeleteTeam/DeleteTeamUseCase.js +36 -46
  305. package/features/security/teams/DeleteTeam/DeleteTeamUseCase.js.map +1 -1
  306. package/features/security/teams/DeleteTeam/abstractions.js +2 -2
  307. package/features/security/teams/DeleteTeam/abstractions.js.map +1 -1
  308. package/features/security/teams/DeleteTeam/events.js +17 -16
  309. package/features/security/teams/DeleteTeam/events.js.map +1 -1
  310. package/features/security/teams/DeleteTeam/feature.js +6 -5
  311. package/features/security/teams/DeleteTeam/feature.js.map +1 -1
  312. package/features/security/teams/DeleteTeam/index.js +0 -2
  313. package/features/security/teams/GetTeam/GetTeamUseCase.js +17 -17
  314. package/features/security/teams/GetTeam/GetTeamUseCase.js.map +1 -1
  315. package/features/security/teams/GetTeam/abstractions.js +2 -2
  316. package/features/security/teams/GetTeam/abstractions.js.map +1 -1
  317. package/features/security/teams/GetTeam/feature.js +6 -5
  318. package/features/security/teams/GetTeam/feature.js.map +1 -1
  319. package/features/security/teams/GetTeam/index.js +0 -2
  320. package/features/security/teams/ListTeams/ListTeamsUseCase.js +20 -21
  321. package/features/security/teams/ListTeams/ListTeamsUseCase.js.map +1 -1
  322. package/features/security/teams/ListTeams/abstractions.js +2 -2
  323. package/features/security/teams/ListTeams/abstractions.js.map +1 -1
  324. package/features/security/teams/ListTeams/feature.js +6 -5
  325. package/features/security/teams/ListTeams/feature.js.map +1 -1
  326. package/features/security/teams/ListTeams/index.js +0 -2
  327. package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js +46 -58
  328. package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js.map +1 -1
  329. package/features/security/teams/UpdateTeam/abstractions.js +2 -2
  330. package/features/security/teams/UpdateTeam/abstractions.js.map +1 -1
  331. package/features/security/teams/UpdateTeam/events.js +17 -16
  332. package/features/security/teams/UpdateTeam/events.js.map +1 -1
  333. package/features/security/teams/UpdateTeam/feature.js +6 -5
  334. package/features/security/teams/UpdateTeam/feature.js.map +1 -1
  335. package/features/security/teams/UpdateTeam/index.js +0 -2
  336. package/features/security/teams/UpdateTeam/schema.js +5 -4
  337. package/features/security/teams/UpdateTeam/schema.js.map +1 -1
  338. package/features/security/teams/feature.js +13 -17
  339. package/features/security/teams/feature.js.map +1 -1
  340. package/features/security/teams/shared/TeamProvider.js +27 -21
  341. package/features/security/teams/shared/TeamProvider.js.map +1 -1
  342. package/features/security/teams/shared/TeamsRepository.js +100 -118
  343. package/features/security/teams/shared/TeamsRepository.js.map +1 -1
  344. package/features/security/teams/shared/abstractions.js +3 -4
  345. package/features/security/teams/shared/abstractions.js.map +1 -1
  346. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js +40 -62
  347. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js.map +1 -1
  348. package/features/security/teams/shared/errors.js +62 -70
  349. package/features/security/teams/shared/errors.js.map +1 -1
  350. package/features/security/teams/shared/types.js +0 -3
  351. package/features/security/utils/AppPermissions.js +50 -89
  352. package/features/security/utils/AppPermissions.js.map +1 -1
  353. package/features/security/utils/IdentityValue.js +19 -22
  354. package/features/security/utils/IdentityValue.js.map +1 -1
  355. package/features/security/utils/filterOutCustomWbyAppsPermissions.js +24 -27
  356. package/features/security/utils/filterOutCustomWbyAppsPermissions.js.map +1 -1
  357. package/features/security/utils/getPermissionsFromRoles.js +5 -10
  358. package/features/security/utils/getPermissionsFromRoles.js.map +1 -1
  359. package/features/security/utils/isJwt.js +2 -1
  360. package/features/security/utils/isJwt.js.map +1 -1
  361. package/features/security/utils/verifyJwtUsingJwk.js +6 -7
  362. package/features/security/utils/verifyJwtUsingJwk.js.map +1 -1
  363. package/features/system/InstallSystem/InstallSystemUseCase.js +45 -44
  364. package/features/system/InstallSystem/InstallSystemUseCase.js.map +1 -1
  365. package/features/system/InstallSystem/abstractions.js +3 -17
  366. package/features/system/InstallSystem/abstractions.js.map +1 -1
  367. package/features/system/InstallSystem/errors.js +15 -16
  368. package/features/system/InstallSystem/errors.js.map +1 -1
  369. package/features/system/InstallSystem/events.js +8 -5
  370. package/features/system/InstallSystem/events.js.map +1 -1
  371. package/features/system/InstallSystem/feature.js +6 -7
  372. package/features/system/InstallSystem/feature.js.map +1 -1
  373. package/features/system/InstallSystem/index.js +2 -6
  374. package/features/system/SystemFeature.js +6 -5
  375. package/features/system/SystemFeature.js.map +1 -1
  376. package/features/task/TaskController/abstractions.js +2 -10
  377. package/features/task/TaskController/abstractions.js.map +1 -1
  378. package/features/task/TaskController/index.js +0 -2
  379. package/features/task/TaskDefinition/abstractions.js +8 -40
  380. package/features/task/TaskDefinition/abstractions.js.map +1 -1
  381. package/features/task/TaskDefinition/index.js +0 -2
  382. package/features/task/TaskService/abstractions.js +9 -13
  383. package/features/task/TaskService/abstractions.js.map +1 -1
  384. package/features/task/TaskService/index.js +0 -2
  385. package/features/tenancy/CreateTenant/CreateTenantGateway.js +14 -11
  386. package/features/tenancy/CreateTenant/CreateTenantGateway.js.map +1 -1
  387. package/features/tenancy/CreateTenant/CreateTenantRepository.js +18 -15
  388. package/features/tenancy/CreateTenant/CreateTenantRepository.js.map +1 -1
  389. package/features/tenancy/CreateTenant/CreateTenantUseCase.js +44 -41
  390. package/features/tenancy/CreateTenant/CreateTenantUseCase.js.map +1 -1
  391. package/features/tenancy/CreateTenant/abstractions.js +6 -29
  392. package/features/tenancy/CreateTenant/abstractions.js.map +1 -1
  393. package/features/tenancy/CreateTenant/decorators/CreateTenantWithWcpIncrement.js +16 -15
  394. package/features/tenancy/CreateTenant/decorators/CreateTenantWithWcpIncrement.js.map +1 -1
  395. package/features/tenancy/CreateTenant/errors.js +8 -8
  396. package/features/tenancy/CreateTenant/errors.js.map +1 -1
  397. package/features/tenancy/CreateTenant/events.js +16 -11
  398. package/features/tenancy/CreateTenant/events.js.map +1 -1
  399. package/features/tenancy/CreateTenant/feature.js +9 -8
  400. package/features/tenancy/CreateTenant/feature.js.map +1 -1
  401. package/features/tenancy/CreateTenant/index.js +2 -4
  402. package/features/tenancy/DeleteTenant/DeleteTenantGateway.js +15 -12
  403. package/features/tenancy/DeleteTenant/DeleteTenantGateway.js.map +1 -1
  404. package/features/tenancy/DeleteTenant/DeleteTenantRepository.js +22 -19
  405. package/features/tenancy/DeleteTenant/DeleteTenantRepository.js.map +1 -1
  406. package/features/tenancy/DeleteTenant/DeleteTenantUseCase.js +29 -27
  407. package/features/tenancy/DeleteTenant/DeleteTenantUseCase.js.map +1 -1
  408. package/features/tenancy/DeleteTenant/abstractions.js +6 -10
  409. package/features/tenancy/DeleteTenant/abstractions.js.map +1 -1
  410. package/features/tenancy/DeleteTenant/decorators/DeleteTenantWithWcpDecrement.js +16 -13
  411. package/features/tenancy/DeleteTenant/decorators/DeleteTenantWithWcpDecrement.js.map +1 -1
  412. package/features/tenancy/DeleteTenant/events.js +16 -11
  413. package/features/tenancy/DeleteTenant/events.js.map +1 -1
  414. package/features/tenancy/DeleteTenant/feature.js +9 -8
  415. package/features/tenancy/DeleteTenant/feature.js.map +1 -1
  416. package/features/tenancy/DeleteTenant/index.js +2 -4
  417. package/features/tenancy/GetRootTenant/GetRootTenantUseCase.js +15 -12
  418. package/features/tenancy/GetRootTenant/GetRootTenantUseCase.js.map +1 -1
  419. package/features/tenancy/GetRootTenant/abstractions.js +2 -4
  420. package/features/tenancy/GetRootTenant/abstractions.js.map +1 -1
  421. package/features/tenancy/GetRootTenant/feature.js +6 -5
  422. package/features/tenancy/GetRootTenant/feature.js.map +1 -1
  423. package/features/tenancy/GetRootTenant/index.js +0 -2
  424. package/features/tenancy/GetTenantById/GetTenantByIdGateway.js +17 -12
  425. package/features/tenancy/GetTenantById/GetTenantByIdGateway.js.map +1 -1
  426. package/features/tenancy/GetTenantById/GetTenantByIdRepository.js +18 -19
  427. package/features/tenancy/GetTenantById/GetTenantByIdRepository.js.map +1 -1
  428. package/features/tenancy/GetTenantById/GetTenantByIdUseCase.js +17 -17
  429. package/features/tenancy/GetTenantById/GetTenantByIdUseCase.js.map +1 -1
  430. package/features/tenancy/GetTenantById/abstractions.js +4 -6
  431. package/features/tenancy/GetTenantById/abstractions.js.map +1 -1
  432. package/features/tenancy/GetTenantById/feature.js +8 -12
  433. package/features/tenancy/GetTenantById/feature.js.map +1 -1
  434. package/features/tenancy/GetTenantById/index.js +1 -3
  435. package/features/tenancy/InstallTenant/DependencyResolver.js +53 -65
  436. package/features/tenancy/InstallTenant/DependencyResolver.js.map +1 -1
  437. package/features/tenancy/InstallTenant/InstallTenantUseCase.js +95 -113
  438. package/features/tenancy/InstallTenant/InstallTenantUseCase.js.map +1 -1
  439. package/features/tenancy/InstallTenant/abstractions.js +4 -15
  440. package/features/tenancy/InstallTenant/abstractions.js.map +1 -1
  441. package/features/tenancy/InstallTenant/errors.js +15 -16
  442. package/features/tenancy/InstallTenant/errors.js.map +1 -1
  443. package/features/tenancy/InstallTenant/events.js +8 -5
  444. package/features/tenancy/InstallTenant/events.js.map +1 -1
  445. package/features/tenancy/InstallTenant/feature.js +6 -5
  446. package/features/tenancy/InstallTenant/feature.js.map +1 -1
  447. package/features/tenancy/InstallTenant/index.js +1 -3
  448. package/features/tenancy/ListTenants/ListTenantsGateway.js +14 -11
  449. package/features/tenancy/ListTenants/ListTenantsGateway.js.map +1 -1
  450. package/features/tenancy/ListTenants/ListTenantsRepository.js +14 -12
  451. package/features/tenancy/ListTenants/ListTenantsRepository.js.map +1 -1
  452. package/features/tenancy/ListTenants/ListTenantsUseCase.js +16 -14
  453. package/features/tenancy/ListTenants/ListTenantsUseCase.js.map +1 -1
  454. package/features/tenancy/ListTenants/abstractions.js +4 -12
  455. package/features/tenancy/ListTenants/abstractions.js.map +1 -1
  456. package/features/tenancy/ListTenants/feature.js +8 -7
  457. package/features/tenancy/ListTenants/feature.js.map +1 -1
  458. package/features/tenancy/ListTenants/index.js +1 -3
  459. package/features/tenancy/TenancyFeature.js +20 -26
  460. package/features/tenancy/TenancyFeature.js.map +1 -1
  461. package/features/tenancy/TenantContext/TenantContext.js +46 -48
  462. package/features/tenancy/TenantContext/TenantContext.js.map +1 -1
  463. package/features/tenancy/TenantContext/abstractions.js +2 -2
  464. package/features/tenancy/TenantContext/abstractions.js.map +1 -1
  465. package/features/tenancy/TenantContext/errors.js +7 -7
  466. package/features/tenancy/TenantContext/errors.js.map +1 -1
  467. package/features/tenancy/TenantContext/feature.js +6 -5
  468. package/features/tenancy/TenantContext/feature.js.map +1 -1
  469. package/features/tenancy/TenantContext/index.js +0 -2
  470. package/features/tenancy/UpdateTenant/UpdateTenantGateway.js +14 -11
  471. package/features/tenancy/UpdateTenant/UpdateTenantGateway.js.map +1 -1
  472. package/features/tenancy/UpdateTenant/UpdateTenantRepository.js +19 -16
  473. package/features/tenancy/UpdateTenant/UpdateTenantRepository.js.map +1 -1
  474. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.js +37 -36
  475. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.js.map +1 -1
  476. package/features/tenancy/UpdateTenant/abstractions.js +6 -10
  477. package/features/tenancy/UpdateTenant/abstractions.js.map +1 -1
  478. package/features/tenancy/UpdateTenant/events.js +16 -11
  479. package/features/tenancy/UpdateTenant/events.js.map +1 -1
  480. package/features/tenancy/UpdateTenant/feature.js +8 -7
  481. package/features/tenancy/UpdateTenant/feature.js.map +1 -1
  482. package/features/tenancy/UpdateTenant/index.js +2 -4
  483. package/features/tenancy/shared/TenantCache.js +18 -17
  484. package/features/tenancy/shared/TenantCache.js.map +1 -1
  485. package/features/tenancy/shared/abstractions.js +2 -1
  486. package/features/tenancy/shared/abstractions.js.map +1 -1
  487. package/features/tenancy/shared/storageOperations.js +2 -5
  488. package/features/tenancy/shared/storageOperations.js.map +1 -1
  489. package/features/users/AdminUsersFeature.js +15 -19
  490. package/features/users/AdminUsersFeature.js.map +1 -1
  491. package/features/users/CreateUser/CreateUserUseCase.js +65 -100
  492. package/features/users/CreateUser/CreateUserUseCase.js.map +1 -1
  493. package/features/users/CreateUser/abstractions.js +2 -13
  494. package/features/users/CreateUser/abstractions.js.map +1 -1
  495. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.js +16 -15
  496. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.js.map +1 -1
  497. package/features/users/CreateUser/events.js +17 -18
  498. package/features/users/CreateUser/events.js.map +1 -1
  499. package/features/users/CreateUser/feature.js +7 -6
  500. package/features/users/CreateUser/feature.js.map +1 -1
  501. package/features/users/CreateUser/index.js +0 -2
  502. package/features/users/CreateUser/schema.js +14 -18
  503. package/features/users/CreateUser/schema.js.map +1 -1
  504. package/features/users/DeleteUser/DeleteUserUseCase.js +35 -50
  505. package/features/users/DeleteUser/DeleteUserUseCase.js.map +1 -1
  506. package/features/users/DeleteUser/abstractions.js +2 -13
  507. package/features/users/DeleteUser/abstractions.js.map +1 -1
  508. package/features/users/DeleteUser/decorators/DeleteUserWithWcpDecrement.js +15 -16
  509. package/features/users/DeleteUser/decorators/DeleteUserWithWcpDecrement.js.map +1 -1
  510. package/features/users/DeleteUser/errors.js +7 -7
  511. package/features/users/DeleteUser/errors.js.map +1 -1
  512. package/features/users/DeleteUser/events.js +17 -18
  513. package/features/users/DeleteUser/events.js.map +1 -1
  514. package/features/users/DeleteUser/feature.js +7 -6
  515. package/features/users/DeleteUser/feature.js.map +1 -1
  516. package/features/users/DeleteUser/index.js +0 -2
  517. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js +60 -74
  518. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js.map +1 -1
  519. package/features/users/ExternalIdpUserSync/feature.js +6 -5
  520. package/features/users/ExternalIdpUserSync/feature.js.map +1 -1
  521. package/features/users/ExternalIdpUserSync/index.js +0 -2
  522. package/features/users/GetIdentityProfile/GetIdentityProfileUseCase.js +29 -39
  523. package/features/users/GetIdentityProfile/GetIdentityProfileUseCase.js.map +1 -1
  524. package/features/users/GetIdentityProfile/abstractions.js +2 -11
  525. package/features/users/GetIdentityProfile/abstractions.js.map +1 -1
  526. package/features/users/GetIdentityProfile/feature.js +6 -5
  527. package/features/users/GetIdentityProfile/feature.js.map +1 -1
  528. package/features/users/GetIdentityProfile/index.js +0 -2
  529. package/features/users/GetIdentityProfile/types.js +0 -3
  530. package/features/users/GetUser/GetUserUseCase.js +19 -23
  531. package/features/users/GetUser/GetUserUseCase.js.map +1 -1
  532. package/features/users/GetUser/abstractions.js +2 -11
  533. package/features/users/GetUser/abstractions.js.map +1 -1
  534. package/features/users/GetUser/feature.js +6 -5
  535. package/features/users/GetUser/feature.js.map +1 -1
  536. package/features/users/GetUser/index.js +0 -2
  537. package/features/users/ListUserTeams/ListUserTeamsUseCase.js +33 -42
  538. package/features/users/ListUserTeams/ListUserTeamsUseCase.js.map +1 -1
  539. package/features/users/ListUserTeams/abstractions.js +2 -11
  540. package/features/users/ListUserTeams/abstractions.js.map +1 -1
  541. package/features/users/ListUserTeams/feature.js +6 -5
  542. package/features/users/ListUserTeams/feature.js.map +1 -1
  543. package/features/users/ListUserTeams/index.js +0 -2
  544. package/features/users/ListUsers/ListUsersUseCase.js +19 -23
  545. package/features/users/ListUsers/ListUsersUseCase.js.map +1 -1
  546. package/features/users/ListUsers/abstractions.js +2 -11
  547. package/features/users/ListUsers/abstractions.js.map +1 -1
  548. package/features/users/ListUsers/feature.js +6 -5
  549. package/features/users/ListUsers/feature.js.map +1 -1
  550. package/features/users/ListUsers/index.js +0 -2
  551. package/features/users/UpdateUser/UpdateUserUseCase.js +52 -74
  552. package/features/users/UpdateUser/UpdateUserUseCase.js.map +1 -1
  553. package/features/users/UpdateUser/abstractions.js +2 -13
  554. package/features/users/UpdateUser/abstractions.js.map +1 -1
  555. package/features/users/UpdateUser/events.js +17 -18
  556. package/features/users/UpdateUser/events.js.map +1 -1
  557. package/features/users/UpdateUser/feature.js +6 -5
  558. package/features/users/UpdateUser/feature.js.map +1 -1
  559. package/features/users/UpdateUser/index.js +0 -2
  560. package/features/users/UpdateUser/schema.js +11 -10
  561. package/features/users/UpdateUser/schema.js.map +1 -1
  562. package/features/users/shared/AdminUsersRepository.js +104 -112
  563. package/features/users/shared/AdminUsersRepository.js.map +1 -1
  564. package/features/users/shared/abstractions.js +2 -9
  565. package/features/users/shared/abstractions.js.map +1 -1
  566. package/features/users/shared/errors.js +40 -46
  567. package/features/users/shared/errors.js.map +1 -1
  568. package/features/users/shared/loaders.js +52 -66
  569. package/features/users/shared/loaders.js.map +1 -1
  570. package/features/users/shared/storageAbstractions.js +2 -2
  571. package/features/users/shared/storageAbstractions.js.map +1 -1
  572. package/features/users/shared/types.js +0 -3
  573. package/features/wcp/WcpContext/WcpContext.js +138 -142
  574. package/features/wcp/WcpContext/WcpContext.js.map +1 -1
  575. package/features/wcp/WcpContext/abstractions.js +2 -6
  576. package/features/wcp/WcpContext/abstractions.js.map +1 -1
  577. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js +135 -134
  578. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js.map +1 -1
  579. package/features/wcp/WcpContext/feature.js +6 -5
  580. package/features/wcp/WcpContext/feature.js.map +1 -1
  581. package/features/wcp/WcpContext/index.js +0 -2
  582. package/features/wcp/WcpContext/types.js +0 -3
  583. package/features/wcp/WcpContext/utils.js +35 -53
  584. package/features/wcp/WcpContext/utils.js.map +1 -1
  585. package/features/wcp/WcpFeature.js +7 -6
  586. package/features/wcp/WcpFeature.js.map +1 -1
  587. package/graphql/security/NotAuthorizedResponse.js +11 -14
  588. package/graphql/security/NotAuthorizedResponse.js.map +1 -1
  589. package/graphql/security/ProfileMapper.js +12 -11
  590. package/graphql/security/ProfileMapper.js.map +1 -1
  591. package/graphql/security/apiKey.gql.js +38 -47
  592. package/graphql/security/apiKey.gql.js.map +1 -1
  593. package/graphql/security/base.gql.js +11 -10
  594. package/graphql/security/base.gql.js.map +1 -1
  595. package/graphql/security/identity.gql.js +87 -97
  596. package/graphql/security/identity.gql.js.map +1 -1
  597. package/graphql/security/index.js +13 -8
  598. package/graphql/security/index.js.map +1 -1
  599. package/graphql/security/role.gql.js +49 -57
  600. package/graphql/security/role.gql.js.map +1 -1
  601. package/graphql/security/team.gql.js +61 -69
  602. package/graphql/security/team.gql.js.map +1 -1
  603. package/graphql/system/createSystemGraphQL.js +31 -34
  604. package/graphql/system/createSystemGraphQL.js.map +1 -1
  605. package/graphql/users/user.gql.js +87 -105
  606. package/graphql/users/user.gql.js.map +1 -1
  607. package/graphql/wcp/graphql.js +25 -28
  608. package/graphql/wcp/graphql.js.map +1 -1
  609. package/idp/JwksCache.js +22 -28
  610. package/idp/JwksCache.js.map +1 -1
  611. package/idp/JwtAuthenticator.js +34 -46
  612. package/idp/JwtAuthenticator.js.map +1 -1
  613. package/idp/OidcJwtIdentityProvider.js +55 -82
  614. package/idp/OidcJwtIdentityProvider.js.map +1 -1
  615. package/idp/abstractions.js +5 -14
  616. package/idp/abstractions.js.map +1 -1
  617. package/idp/feature.js +8 -7
  618. package/idp/feature.js.map +1 -1
  619. package/idp/index.js +1 -3
  620. package/idp/types.js +0 -3
  621. package/index.js +0 -2
  622. package/legacy/security/LegacyContext.js +133 -186
  623. package/legacy/security/LegacyContext.js.map +1 -1
  624. package/legacy/security/createSecurityContext.js +5 -9
  625. package/legacy/security/createSecurityContext.js.map +1 -1
  626. package/legacy/security/plugins/apiKeyAuthentication.js +15 -24
  627. package/legacy/security/plugins/apiKeyAuthentication.js.map +1 -1
  628. package/legacy/security/plugins/apiKeyAuthorization.js +9 -18
  629. package/legacy/security/plugins/apiKeyAuthorization.js.map +1 -1
  630. package/legacy/security/plugins/authenticateUsingCookie.js +18 -22
  631. package/legacy/security/plugins/authenticateUsingCookie.js.map +1 -1
  632. package/legacy/security/plugins/authenticateUsingHttpHeader.d.ts +1 -1
  633. package/legacy/security/plugins/authenticateUsingHttpHeader.js +15 -18
  634. package/legacy/security/plugins/authenticateUsingHttpHeader.js.map +1 -1
  635. package/legacy/security/plugins/secureHeaders.js +28 -21
  636. package/legacy/security/plugins/secureHeaders.js.map +1 -1
  637. package/legacy/tenancy/LegacyContext.js +45 -52
  638. package/legacy/tenancy/LegacyContext.js.map +1 -1
  639. package/legacy/tenancy/createTenancyContext.js +22 -42
  640. package/legacy/tenancy/createTenancyContext.js.map +1 -1
  641. package/legacy/users/LegacyContext.js +39 -54
  642. package/legacy/users/LegacyContext.js.map +1 -1
  643. package/legacy/users/createAdminUsersContext.js +7 -7
  644. package/legacy/users/createAdminUsersContext.js.map +1 -1
  645. package/legacy/wcp/LegacyWcpContext.js +80 -79
  646. package/legacy/wcp/LegacyWcpContext.js.map +1 -1
  647. package/legacy/wcp/context.d.ts +1 -3
  648. package/legacy/wcp/context.js +33 -37
  649. package/legacy/wcp/context.js.map +1 -1
  650. package/models/base/BaseModel.js +51 -56
  651. package/models/base/BaseModel.js.map +1 -1
  652. package/models/base/ModelBuilder.js +65 -78
  653. package/models/base/ModelBuilder.js.map +1 -1
  654. package/models/base/ModelFactory.js +0 -3
  655. package/models/base/__tests__/ModelBuilder.test.js +437 -454
  656. package/models/base/__tests__/ModelBuilder.test.js.map +1 -1
  657. package/models/base/abstractions.js +0 -3
  658. package/models/cms/FieldBuilder.js +112 -121
  659. package/models/cms/FieldBuilder.js.map +1 -1
  660. package/models/cms/FieldBuilderRegistry.js +13 -12
  661. package/models/cms/FieldBuilderRegistry.js.map +1 -1
  662. package/models/cms/FieldDefinitionsBuilder.js +37 -54
  663. package/models/cms/FieldDefinitionsBuilder.js.map +1 -1
  664. package/models/cms/PrivateCmsModelBuilder.js +84 -89
  665. package/models/cms/PrivateCmsModelBuilder.js.map +1 -1
  666. package/models/cms/PrivatePage/Page.fields.js +7 -6
  667. package/models/cms/PrivatePage/Page.fields.js.map +1 -1
  668. package/models/cms/PrivatePage/PageModelBuilder.js +18 -15
  669. package/models/cms/PrivatePage/PageModelBuilder.js.map +1 -1
  670. package/models/cms/PrivatePage/PageModelFactory.js +20 -25
  671. package/models/cms/PrivatePage/PageModelFactory.js.map +1 -1
  672. package/models/cms/PrivatePage/__tests__/PageModelFactory.test.js +218 -234
  673. package/models/cms/PrivatePage/__tests__/PageModelFactory.test.js.map +1 -1
  674. package/models/cms/PrivatePage/__tests__/PagePublishingDecorator.js +33 -36
  675. package/models/cms/PrivatePage/__tests__/PagePublishingDecorator.js.map +1 -1
  676. package/models/cms/PrivatePage/__tests__/PageSeoDecorator.js +25 -26
  677. package/models/cms/PrivatePage/__tests__/PageSeoDecorator.js.map +1 -1
  678. package/models/cms/PrivatePage/abstractions.js +3 -9
  679. package/models/cms/PrivatePage/abstractions.js.map +1 -1
  680. package/models/cms/__tests__/PrivateCmsModelBuilder.test.js +173 -185
  681. package/models/cms/__tests__/PrivateCmsModelBuilder.test.js.map +1 -1
  682. package/models/cms/abstractions.js +3 -20
  683. package/models/cms/abstractions.js.map +1 -1
  684. package/models/cms/types.js +0 -3
  685. package/models/simple/Page/PageModelBuilder.js +15 -14
  686. package/models/simple/Page/PageModelBuilder.js.map +1 -1
  687. package/models/simple/Page/PageModelFactory.js +16 -15
  688. package/models/simple/Page/PageModelFactory.js.map +1 -1
  689. package/models/simple/Page/__tests__/PageModelBuilderDecorator.js +21 -20
  690. package/models/simple/Page/__tests__/PageModelBuilderDecorator.js.map +1 -1
  691. package/models/simple/Page/__tests__/PageModelBuilderDecorator2.js +17 -16
  692. package/models/simple/Page/__tests__/PageModelBuilderDecorator2.js.map +1 -1
  693. package/models/simple/Page/__tests__/PageModelFactory.test.js +28 -28
  694. package/models/simple/Page/__tests__/PageModelFactory.test.js.map +1 -1
  695. package/models/simple/Page/abstractions.js +9 -8
  696. package/models/simple/Page/abstractions.js.map +1 -1
  697. package/package.json +21 -21
  698. package/types/core.js +0 -3
  699. package/types/security.js +0 -3
  700. package/types/tenancy.js +0 -3
  701. package/types/users.js +0 -3
  702. package/domain/tenancy/errors.js.map +0 -1
  703. package/exports/api/build-params.js.map +0 -1
  704. package/exports/api/event-publisher.js.map +0 -1
  705. package/exports/api/graphql.js.map +0 -1
  706. package/exports/api/key-value-store.js.map +0 -1
  707. package/exports/api/logger.js.map +0 -1
  708. package/exports/api/security/api-key.js.map +0 -1
  709. package/exports/api/security/authentication.js.map +0 -1
  710. package/exports/api/security/role.js.map +0 -1
  711. package/exports/api/security/user.js.map +0 -1
  712. package/exports/api/security.js.map +0 -1
  713. package/exports/api/system.js.map +0 -1
  714. package/exports/api/tasks.js.map +0 -1
  715. package/exports/api/tenancy.js.map +0 -1
  716. package/exports/api.js.map +0 -1
  717. package/features/ai/index.js.map +0 -1
  718. package/features/buildParams/index.js.map +0 -1
  719. package/features/encryption/index.js.map +0 -1
  720. package/features/eventPublisher/index.js.map +0 -1
  721. package/features/keyValueStore/index.js.map +0 -1
  722. package/features/logger/index.js.map +0 -1
  723. package/features/masker/index.js.map +0 -1
  724. package/features/security/IdentityContext/index.js.map +0 -1
  725. package/features/security/apiKeys/CreateApiKey/index.js.map +0 -1
  726. package/features/security/apiKeys/DeleteApiKey/index.js.map +0 -1
  727. package/features/security/apiKeys/GetApiKey/index.js.map +0 -1
  728. package/features/security/apiKeys/GetApiKeyBySlug/index.js.map +0 -1
  729. package/features/security/apiKeys/GetApiKeyByToken/index.js.map +0 -1
  730. package/features/security/apiKeys/ListApiKeys/index.js.map +0 -1
  731. package/features/security/apiKeys/UpdateApiKey/index.js.map +0 -1
  732. package/features/security/apiKeys/shared/types.js.map +0 -1
  733. package/features/security/authentication/AuthenticationContext/index.js.map +0 -1
  734. package/features/security/authentication/Authenticator/index.js.map +0 -1
  735. package/features/security/authorization/AuthorizationContext/index.js.map +0 -1
  736. package/features/security/authorization/Authorizer/index.js.map +0 -1
  737. package/features/security/login/index.js.map +0 -1
  738. package/features/security/permissions/index.js.map +0 -1
  739. package/features/security/permissions/types.js.map +0 -1
  740. package/features/security/roles/CreateRole/index.js.map +0 -1
  741. package/features/security/roles/DeleteRole/index.js.map +0 -1
  742. package/features/security/roles/GetRole/index.js.map +0 -1
  743. package/features/security/roles/ListRoles/index.js.map +0 -1
  744. package/features/security/roles/UpdateRole/index.js.map +0 -1
  745. package/features/security/roles/shared/types.js.map +0 -1
  746. package/features/security/shared/index.js.map +0 -1
  747. package/features/security/teams/CreateTeam/index.js.map +0 -1
  748. package/features/security/teams/DeleteTeam/index.js.map +0 -1
  749. package/features/security/teams/GetTeam/index.js.map +0 -1
  750. package/features/security/teams/ListTeams/index.js.map +0 -1
  751. package/features/security/teams/UpdateTeam/index.js.map +0 -1
  752. package/features/security/teams/shared/types.js.map +0 -1
  753. package/features/system/InstallSystem/index.js.map +0 -1
  754. package/features/task/TaskController/index.js.map +0 -1
  755. package/features/task/TaskDefinition/index.js.map +0 -1
  756. package/features/task/TaskService/index.js.map +0 -1
  757. package/features/tenancy/CreateTenant/index.js.map +0 -1
  758. package/features/tenancy/DeleteTenant/index.js.map +0 -1
  759. package/features/tenancy/GetRootTenant/index.js.map +0 -1
  760. package/features/tenancy/GetTenantById/index.js.map +0 -1
  761. package/features/tenancy/InstallTenant/index.js.map +0 -1
  762. package/features/tenancy/ListTenants/index.js.map +0 -1
  763. package/features/tenancy/TenantContext/index.js.map +0 -1
  764. package/features/tenancy/UpdateTenant/index.js.map +0 -1
  765. package/features/users/CreateUser/index.js.map +0 -1
  766. package/features/users/DeleteUser/index.js.map +0 -1
  767. package/features/users/ExternalIdpUserSync/index.js.map +0 -1
  768. package/features/users/GetIdentityProfile/index.js.map +0 -1
  769. package/features/users/GetIdentityProfile/types.js.map +0 -1
  770. package/features/users/GetUser/index.js.map +0 -1
  771. package/features/users/ListUserTeams/index.js.map +0 -1
  772. package/features/users/ListUsers/index.js.map +0 -1
  773. package/features/users/UpdateUser/index.js.map +0 -1
  774. package/features/users/shared/types.js.map +0 -1
  775. package/features/wcp/WcpContext/index.js.map +0 -1
  776. package/features/wcp/WcpContext/types.js.map +0 -1
  777. package/idp/index.js.map +0 -1
  778. package/idp/types.js.map +0 -1
  779. package/index.js.map +0 -1
  780. package/models/base/ModelFactory.js.map +0 -1
  781. package/models/base/abstractions.js.map +0 -1
  782. package/models/cms/types.js.map +0 -1
  783. package/types/core.js.map +0 -1
  784. package/types/security.js.map +0 -1
  785. package/types/tenancy.js.map +0 -1
  786. package/types/users.js.map +0 -1
@@ -1,66 +1,60 @@
1
1
  import { BaseError } from "@webiny/feature/api";
2
- export class RoleStorageError extends BaseError {
3
- code = "ROLE_STORAGE_ERROR";
4
- constructor(error) {
5
- super({
6
- message: error.message
7
- });
8
- }
2
+ class RoleStorageError extends BaseError {
3
+ constructor(error){
4
+ super({
5
+ message: error.message
6
+ }), this.code = "ROLE_STORAGE_ERROR";
7
+ }
9
8
  }
10
- export class RoleNotFoundError extends BaseError {
11
- code = "ROLE_NOT_FOUND";
12
- constructor() {
13
- super({
14
- message: `Role was not found!`
15
- });
16
- }
9
+ class RoleNotFoundError extends BaseError {
10
+ constructor(){
11
+ super({
12
+ message: "Role was not found!"
13
+ }), this.code = "ROLE_NOT_FOUND";
14
+ }
17
15
  }
18
- export class NotAuthorizedError extends BaseError {
19
- code = "NOT_AUTHORIZED";
20
- constructor(data = {}) {
21
- super({
22
- message: data.message || "Not authorized!",
23
- data
24
- });
25
- }
16
+ class NotAuthorizedError extends BaseError {
17
+ constructor(data = {}){
18
+ super({
19
+ message: data.message || "Not authorized!",
20
+ data
21
+ }), this.code = "NOT_AUTHORIZED";
22
+ }
26
23
  }
27
- export class RoleExistsError extends BaseError {
28
- code = "ROLE_EXISTS";
29
- constructor(slug) {
30
- super({
31
- message: `Role with slug "${slug}" already exists.`,
32
- data: {
33
- slug
34
- }
35
- });
36
- }
24
+ class RoleExistsError extends BaseError {
25
+ constructor(slug){
26
+ super({
27
+ message: `Role with slug "${slug}" already exists.`,
28
+ data: {
29
+ slug
30
+ }
31
+ }), this.code = "ROLE_EXISTS";
32
+ }
37
33
  }
38
- export class CannotUpdatePluginRolesError extends BaseError {
39
- code = "CANNOT_UPDATE_PLUGIN_ROLES";
40
- constructor() {
41
- super({
42
- message: "Cannot update roles created via plugins."
43
- });
44
- }
34
+ class CannotUpdatePluginRolesError extends BaseError {
35
+ constructor(){
36
+ super({
37
+ message: "Cannot update roles created via plugins."
38
+ }), this.code = "CANNOT_UPDATE_PLUGIN_ROLES";
39
+ }
45
40
  }
46
- export class CannotDeletePluginRolesError extends BaseError {
47
- code = "CANNOT_DELETE_PLUGIN_ROLES";
48
- constructor() {
49
- super({
50
- message: "Cannot delete roles created via plugins."
51
- });
52
- }
41
+ class CannotDeletePluginRolesError extends BaseError {
42
+ constructor(){
43
+ super({
44
+ message: "Cannot delete roles created via plugins."
45
+ }), this.code = "CANNOT_DELETE_PLUGIN_ROLES";
46
+ }
53
47
  }
54
- export class RoleValidationError extends BaseError {
55
- code = "ROLE_VALIDATION_ERROR";
56
- constructor(message) {
57
- super({
58
- message,
59
- data: {
60
- message
61
- }
62
- });
63
- }
48
+ class RoleValidationError extends BaseError {
49
+ constructor(message){
50
+ super({
51
+ message,
52
+ data: {
53
+ message
54
+ }
55
+ }), this.code = "ROLE_VALIDATION_ERROR";
56
+ }
64
57
  }
58
+ export { CannotDeletePluginRolesError, CannotUpdatePluginRolesError, NotAuthorizedError, RoleExistsError, RoleNotFoundError, RoleStorageError, RoleValidationError };
65
59
 
66
60
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseError","RoleStorageError","code","constructor","error","message","RoleNotFoundError","NotAuthorizedError","data","RoleExistsError","slug","CannotUpdatePluginRolesError","CannotDeletePluginRolesError","RoleValidationError"],"sources":["errors.ts"],"sourcesContent":["import { BaseError } from \"@webiny/feature/api\";\n\nexport class RoleStorageError extends BaseError {\n override readonly code = \"ROLE_STORAGE_ERROR\" as const;\n\n constructor(error: Error) {\n super({\n message: error.message\n });\n }\n}\n\nexport class RoleNotFoundError extends BaseError {\n override readonly code = \"ROLE_NOT_FOUND\" as const;\n\n constructor() {\n super({\n message: `Role was not found!`\n });\n }\n}\n\ntype NotAuthorizedErrorData = {\n message?: string;\n};\n\nexport class NotAuthorizedError extends BaseError<NotAuthorizedErrorData> {\n override readonly code = \"NOT_AUTHORIZED\" as const;\n\n constructor(data: NotAuthorizedErrorData = {}) {\n super({\n message: data.message || \"Not authorized!\",\n data\n });\n }\n}\n\ntype RoleExistsErrorData = {\n slug: string;\n};\n\nexport class RoleExistsError extends BaseError<RoleExistsErrorData> {\n override readonly code = \"ROLE_EXISTS\" as const;\n\n constructor(slug: string) {\n super({\n message: `Role with slug \"${slug}\" already exists.`,\n data: { slug }\n });\n }\n}\n\nexport class CannotUpdatePluginRolesError extends BaseError {\n override readonly code = \"CANNOT_UPDATE_PLUGIN_ROLES\" as const;\n\n constructor() {\n super({\n message: \"Cannot update roles created via plugins.\"\n });\n }\n}\n\nexport class CannotDeletePluginRolesError extends BaseError {\n override readonly code = \"CANNOT_DELETE_PLUGIN_ROLES\" as const;\n\n constructor() {\n super({\n message: \"Cannot delete roles created via plugins.\"\n });\n }\n}\n\ntype RoleValidationErrorData = {\n message: string;\n};\n\nexport class RoleValidationError extends BaseError<RoleValidationErrorData> {\n override readonly code = \"ROLE_VALIDATION_ERROR\" as const;\n\n constructor(message: string) {\n super({\n message,\n data: { message }\n });\n }\n}\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,qBAAqB;AAE/C,OAAO,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAC1BE,IAAI,GAAG,oBAAoB;EAE7CC,WAAWA,CAACC,KAAY,EAAE;IACtB,KAAK,CAAC;MACFC,OAAO,EAAED,KAAK,CAACC;IACnB,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMC,iBAAiB,SAASN,SAAS,CAAC;EAC3BE,IAAI,GAAG,gBAAgB;EAEzCC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFE,OAAO,EAAE;IACb,CAAC,CAAC;EACN;AACJ;AAMA,OAAO,MAAME,kBAAkB,SAASP,SAAS,CAAyB;EACpDE,IAAI,GAAG,gBAAgB;EAEzCC,WAAWA,CAACK,IAA4B,GAAG,CAAC,CAAC,EAAE;IAC3C,KAAK,CAAC;MACFH,OAAO,EAAEG,IAAI,CAACH,OAAO,IAAI,iBAAiB;MAC1CG;IACJ,CAAC,CAAC;EACN;AACJ;AAMA,OAAO,MAAMC,eAAe,SAAST,SAAS,CAAsB;EAC9CE,IAAI,GAAG,aAAa;EAEtCC,WAAWA,CAACO,IAAY,EAAE;IACtB,KAAK,CAAC;MACFL,OAAO,EAAE,mBAAmBK,IAAI,mBAAmB;MACnDF,IAAI,EAAE;QAAEE;MAAK;IACjB,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMC,4BAA4B,SAASX,SAAS,CAAC;EACtCE,IAAI,GAAG,4BAA4B;EAErDC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFE,OAAO,EAAE;IACb,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMO,4BAA4B,SAASZ,SAAS,CAAC;EACtCE,IAAI,GAAG,4BAA4B;EAErDC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFE,OAAO,EAAE;IACb,CAAC,CAAC;EACN;AACJ;AAMA,OAAO,MAAMQ,mBAAmB,SAASb,SAAS,CAA0B;EACtDE,IAAI,GAAG,uBAAuB;EAEhDC,WAAWA,CAACE,OAAe,EAAE;IACzB,KAAK,CAAC;MACFA,OAAO;MACPG,IAAI,EAAE;QAAEH;MAAQ;IACpB,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/security/roles/shared/errors.js","sources":["../../../../../src/features/security/roles/shared/errors.ts"],"sourcesContent":["import { BaseError } from \"@webiny/feature/api\";\n\nexport class RoleStorageError extends BaseError {\n override readonly code = \"ROLE_STORAGE_ERROR\" as const;\n\n constructor(error: Error) {\n super({\n message: error.message\n });\n }\n}\n\nexport class RoleNotFoundError extends BaseError {\n override readonly code = \"ROLE_NOT_FOUND\" as const;\n\n constructor() {\n super({\n message: `Role was not found!`\n });\n }\n}\n\ntype NotAuthorizedErrorData = {\n message?: string;\n};\n\nexport class NotAuthorizedError extends BaseError<NotAuthorizedErrorData> {\n override readonly code = \"NOT_AUTHORIZED\" as const;\n\n constructor(data: NotAuthorizedErrorData = {}) {\n super({\n message: data.message || \"Not authorized!\",\n data\n });\n }\n}\n\ntype RoleExistsErrorData = {\n slug: string;\n};\n\nexport class RoleExistsError extends BaseError<RoleExistsErrorData> {\n override readonly code = \"ROLE_EXISTS\" as const;\n\n constructor(slug: string) {\n super({\n message: `Role with slug \"${slug}\" already exists.`,\n data: { slug }\n });\n }\n}\n\nexport class CannotUpdatePluginRolesError extends BaseError {\n override readonly code = \"CANNOT_UPDATE_PLUGIN_ROLES\" as const;\n\n constructor() {\n super({\n message: \"Cannot update roles created via plugins.\"\n });\n }\n}\n\nexport class CannotDeletePluginRolesError extends BaseError {\n override readonly code = \"CANNOT_DELETE_PLUGIN_ROLES\" as const;\n\n constructor() {\n super({\n message: \"Cannot delete roles created via plugins.\"\n });\n }\n}\n\ntype RoleValidationErrorData = {\n message: string;\n};\n\nexport class RoleValidationError extends BaseError<RoleValidationErrorData> {\n override readonly code = \"ROLE_VALIDATION_ERROR\" as const;\n\n constructor(message: string) {\n super({\n message,\n data: { message }\n });\n }\n}\n"],"names":["RoleStorageError","BaseError","error","RoleNotFoundError","NotAuthorizedError","data","RoleExistsError","slug","CannotUpdatePluginRolesError","CannotDeletePluginRolesError","RoleValidationError","message"],"mappings":";AAEO,MAAMA,yBAAyBC;IAGlC,YAAYC,KAAY,CAAE;QACtB,KAAK,CAAC;YACF,SAASA,MAAM,OAAO;QAC1B,SALc,IAAI,GAAG;IAMzB;AACJ;AAEO,MAAMC,0BAA0BF;IAGnC,aAAc;QACV,KAAK,CAAC;YACF,SAAS;QACb,SALc,IAAI,GAAG;IAMzB;AACJ;AAMO,MAAMG,2BAA2BH;IAGpC,YAAYI,OAA+B,CAAC,CAAC,CAAE;QAC3C,KAAK,CAAC;YACF,SAASA,KAAK,OAAO,IAAI;YACzBA;QACJ,SANc,IAAI,GAAG;IAOzB;AACJ;AAMO,MAAMC,wBAAwBL;IAGjC,YAAYM,IAAY,CAAE;QACtB,KAAK,CAAC;YACF,SAAS,CAAC,gBAAgB,EAAEA,KAAK,iBAAiB,CAAC;YACnD,MAAM;gBAAEA;YAAK;QACjB,SANc,IAAI,GAAG;IAOzB;AACJ;AAEO,MAAMC,qCAAqCP;IAG9C,aAAc;QACV,KAAK,CAAC;YACF,SAAS;QACb,SALc,IAAI,GAAG;IAMzB;AACJ;AAEO,MAAMQ,qCAAqCR;IAG9C,aAAc;QACV,KAAK,CAAC;YACF,SAAS;QACb,SALc,IAAI,GAAG;IAMzB;AACJ;AAMO,MAAMS,4BAA4BT;IAGrC,YAAYU,OAAe,CAAE;QACzB,KAAK,CAAC;YACFA;YACA,MAAM;gBAAEA;YAAQ;QACpB,SANc,IAAI,GAAG;IAOzB;AACJ"}
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=types.js.map
@@ -1,9 +1,7 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
- /** Storage operations for all security entities. */
3
- export const SecurityStorageOperations = createAbstraction("SecurityStorageOperations");
4
- /** Provide roles defined via code-based factories. */
5
- export const RolesProvider = createAbstraction("RolesProvider");
6
- /** Provide teams defined via code-based factories. */
7
- export const TeamsProvider = createAbstraction("TeamsProvider");
2
+ const SecurityStorageOperations = createAbstraction("SecurityStorageOperations");
3
+ const RolesProvider = createAbstraction("RolesProvider");
4
+ const TeamsProvider = createAbstraction("TeamsProvider");
5
+ export { RolesProvider, SecurityStorageOperations, TeamsProvider };
8
6
 
9
7
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","SecurityStorageOperations","RolesProvider","TeamsProvider"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type {\n SecurityStorageOperations as ISecurityStorageOperations,\n Role,\n Team\n} from \"~/types/security.js\";\n\n/** Storage operations for all security entities. */\nexport const SecurityStorageOperations = createAbstraction<ISecurityStorageOperations>(\n \"SecurityStorageOperations\"\n);\n\nexport namespace SecurityStorageOperations {\n export type Interface = ISecurityStorageOperations;\n}\n\nexport interface IRolesProvider {\n getRoles(): Promise<Role[]>;\n}\n\n/** Provide roles defined via code-based factories. */\nexport const RolesProvider = createAbstraction<IRolesProvider>(\"RolesProvider\");\n\nexport namespace RolesProvider {\n export type Interface = IRolesProvider;\n}\n\nexport interface ITeamsProvider {\n getTeams(): Promise<Team[]>;\n}\n\n/** Provide teams defined via code-based factories. */\nexport const TeamsProvider = createAbstraction<ITeamsProvider>(\"TeamsProvider\");\n\nexport namespace TeamsProvider {\n export type Interface = ITeamsProvider;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAOvD;AACA,OAAO,MAAMC,yBAAyB,GAAGD,iBAAiB,CACtD,2BACJ,CAAC;AAUD;AACA,OAAO,MAAME,aAAa,GAAGF,iBAAiB,CAAiB,eAAe,CAAC;AAU/E;AACA,OAAO,MAAMG,aAAa,GAAGH,iBAAiB,CAAiB,eAAe,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/security/shared/abstractions.js","sources":["../../../../src/features/security/shared/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type {\n SecurityStorageOperations as ISecurityStorageOperations,\n Role,\n Team\n} from \"~/types/security.js\";\n\n/** Storage operations for all security entities. */\nexport const SecurityStorageOperations = createAbstraction<ISecurityStorageOperations>(\n \"SecurityStorageOperations\"\n);\n\nexport namespace SecurityStorageOperations {\n export type Interface = ISecurityStorageOperations;\n}\n\nexport interface IRolesProvider {\n getRoles(): Promise<Role[]>;\n}\n\n/** Provide roles defined via code-based factories. */\nexport const RolesProvider = createAbstraction<IRolesProvider>(\"RolesProvider\");\n\nexport namespace RolesProvider {\n export type Interface = IRolesProvider;\n}\n\nexport interface ITeamsProvider {\n getTeams(): Promise<Team[]>;\n}\n\n/** Provide teams defined via code-based factories. */\nexport const TeamsProvider = createAbstraction<ITeamsProvider>(\"TeamsProvider\");\n\nexport namespace TeamsProvider {\n export type Interface = ITeamsProvider;\n}\n"],"names":["SecurityStorageOperations","createAbstraction","RolesProvider","TeamsProvider"],"mappings":";AAQO,MAAMA,4BAA4BC,kBACrC;AAYG,MAAMC,gBAAgBD,kBAAkC;AAWxD,MAAME,gBAAgBF,kBAAkC"}
@@ -1,12 +1,12 @@
1
1
  import { BaseError } from "@webiny/feature/api";
2
- export class NotAuthorizedError extends BaseError {
3
- code = "NOT_AUTHORIZED";
4
- constructor(input) {
5
- super({
6
- message: input?.message || "Not authorized!",
7
- data: input?.data
8
- });
9
- }
2
+ class NotAuthorizedError extends BaseError {
3
+ constructor(input){
4
+ super({
5
+ message: input?.message || "Not authorized!",
6
+ data: input?.data
7
+ }), this.code = "NOT_AUTHORIZED";
8
+ }
10
9
  }
10
+ export { NotAuthorizedError };
11
11
 
12
12
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseError","NotAuthorizedError","code","constructor","input","message","data"],"sources":["errors.ts"],"sourcesContent":["import { BaseError } from \"@webiny/feature/api\";\n\ntype ErrorInput = {\n message?: string;\n data?: Record<string, any>;\n};\n\nexport class NotAuthorizedError extends BaseError<Record<string, any> | undefined> {\n override readonly code = \"NOT_AUTHORIZED\" as const;\n\n constructor(input?: ErrorInput) {\n super({\n message: input?.message || \"Not authorized!\",\n data: input?.data\n });\n }\n}\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,qBAAqB;AAO/C,OAAO,MAAMC,kBAAkB,SAASD,SAAS,CAAkC;EAC7DE,IAAI,GAAG,gBAAgB;EAEzCC,WAAWA,CAACC,KAAkB,EAAE;IAC5B,KAAK,CAAC;MACFC,OAAO,EAAED,KAAK,EAAEC,OAAO,IAAI,iBAAiB;MAC5CC,IAAI,EAAEF,KAAK,EAAEE;IACjB,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/security/shared/errors.js","sources":["../../../../src/features/security/shared/errors.ts"],"sourcesContent":["import { BaseError } from \"@webiny/feature/api\";\n\ntype ErrorInput = {\n message?: string;\n data?: Record<string, any>;\n};\n\nexport class NotAuthorizedError extends BaseError<Record<string, any> | undefined> {\n override readonly code = \"NOT_AUTHORIZED\" as const;\n\n constructor(input?: ErrorInput) {\n super({\n message: input?.message || \"Not authorized!\",\n data: input?.data\n });\n }\n}\n"],"names":["NotAuthorizedError","BaseError","input"],"mappings":";AAOO,MAAMA,2BAA2BC;IAGpC,YAAYC,KAAkB,CAAE;QAC5B,KAAK,CAAC;YACF,SAASA,OAAO,WAAW;YAC3B,MAAMA,OAAO;QACjB,SANc,IAAI,GAAG;IAOzB;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export * from "./abstractions.js";
2
2
  export * from "./errors.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,72 +1,66 @@
1
1
  import { mdbid } from "@webiny/utils";
2
- import { createImplementation } from "@webiny/feature/api";
3
- import { Result } from "@webiny/feature/api";
2
+ import { Result, createImplementation } from "@webiny/feature/api";
4
3
  import { EventPublisher } from "../../../eventPublisher/index.js";
5
4
  import { CreateTeam } from "./abstractions.js";
6
5
  import { TeamsRepository } from "../shared/abstractions.js";
7
6
  import { IdentityContext } from "../../IdentityContext/abstractions.js";
8
7
  import { createTeamValidation } from "./schema.js";
9
- import { TeamBeforeCreateEvent, TeamAfterCreateEvent } from "./events.js";
8
+ import { TeamAfterCreateEvent, TeamBeforeCreateEvent } from "./events.js";
10
9
  import { NotAuthorizedError, TeamExistsError, TeamValidationError } from "../shared/errors.js";
11
- export class CreateTeamUseCase {
12
- constructor(identityContext, eventPublisher, repository) {
13
- this.identityContext = identityContext;
14
- this.eventPublisher = eventPublisher;
15
- this.repository = repository;
16
- }
17
- async execute(input) {
18
- const hasPermission = await this.identityContext.getPermission("security.team");
19
- if (!hasPermission) {
20
- return Result.fail(new NotAuthorizedError());
10
+ class CreateTeamUseCase {
11
+ constructor(identityContext, eventPublisher, repository){
12
+ this.identityContext = identityContext;
13
+ this.eventPublisher = eventPublisher;
14
+ this.repository = repository;
21
15
  }
22
- const validation = createTeamValidation.safeParse(input);
23
- if (!validation.success) {
24
- return Result.fail(new TeamValidationError(validation.error.issues[0].message));
16
+ async execute(input) {
17
+ const hasPermission = await this.identityContext.getPermission("security.team");
18
+ if (!hasPermission) return Result.fail(new NotAuthorizedError());
19
+ const validation = createTeamValidation.safeParse(input);
20
+ if (!validation.success) return Result.fail(new TeamValidationError(validation.error.issues[0].message));
21
+ const identity = this.identityContext.getIdentity();
22
+ const data = validation.data;
23
+ const existingTeamResult = await this.repository.get({
24
+ slug: data.slug
25
+ });
26
+ if (existingTeamResult.isOk()) return Result.fail(new TeamExistsError(data.slug));
27
+ const team = {
28
+ id: mdbid(),
29
+ name: data.name,
30
+ slug: data.slug,
31
+ description: data.description,
32
+ roles: data.roles,
33
+ system: input.system || false,
34
+ createdOn: new Date().toISOString(),
35
+ createdBy: {
36
+ id: identity.id,
37
+ displayName: identity.displayName,
38
+ type: identity.type
39
+ },
40
+ plugin: false
41
+ };
42
+ await this.eventPublisher.publish(new TeamBeforeCreateEvent({
43
+ team,
44
+ input: validation.data
45
+ }));
46
+ const result = await this.repository.create(team);
47
+ if (result.isFail()) return Result.fail(result.error);
48
+ await this.eventPublisher.publish(new TeamAfterCreateEvent({
49
+ team,
50
+ input: validation.data
51
+ }));
52
+ return Result.ok(team);
25
53
  }
26
- const identity = this.identityContext.getIdentity();
27
- const data = validation.data;
28
-
29
- // Check if team with same slug already exists
30
- const existingTeamResult = await this.repository.get({
31
- slug: data.slug
32
- });
33
- if (existingTeamResult.isOk()) {
34
- return Result.fail(new TeamExistsError(data.slug));
35
- }
36
- const team = {
37
- id: mdbid(),
38
- name: data.name,
39
- slug: data.slug,
40
- description: data.description,
41
- roles: data.roles,
42
- system: input.system || false,
43
- createdOn: new Date().toISOString(),
44
- createdBy: {
45
- id: identity.id,
46
- displayName: identity.displayName,
47
- type: identity.type
48
- },
49
- plugin: false
50
- };
51
- await this.eventPublisher.publish(new TeamBeforeCreateEvent({
52
- team,
53
- input: validation.data
54
- }));
55
- const result = await this.repository.create(team);
56
- if (result.isFail()) {
57
- return Result.fail(result.error);
58
- }
59
- await this.eventPublisher.publish(new TeamAfterCreateEvent({
60
- team,
61
- input: validation.data
62
- }));
63
- return Result.ok(team);
64
- }
65
54
  }
66
- export const CreateTeamUseCaseImpl = createImplementation({
67
- abstraction: CreateTeam,
68
- implementation: CreateTeamUseCase,
69
- dependencies: [IdentityContext, EventPublisher, TeamsRepository]
55
+ const CreateTeamUseCaseImpl = createImplementation({
56
+ abstraction: CreateTeam,
57
+ implementation: CreateTeamUseCase,
58
+ dependencies: [
59
+ IdentityContext,
60
+ EventPublisher,
61
+ TeamsRepository
62
+ ]
70
63
  });
64
+ export { CreateTeamUseCase, CreateTeamUseCaseImpl };
71
65
 
72
66
  //# sourceMappingURL=CreateTeamUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["mdbid","createImplementation","Result","EventPublisher","CreateTeam","TeamsRepository","IdentityContext","createTeamValidation","TeamBeforeCreateEvent","TeamAfterCreateEvent","NotAuthorizedError","TeamExistsError","TeamValidationError","CreateTeamUseCase","constructor","identityContext","eventPublisher","repository","execute","input","hasPermission","getPermission","fail","validation","safeParse","success","error","issues","message","identity","getIdentity","data","existingTeamResult","get","slug","isOk","team","id","name","description","roles","system","createdOn","Date","toISOString","createdBy","displayName","type","plugin","publish","result","create","isFail","ok","CreateTeamUseCaseImpl","abstraction","implementation","dependencies"],"sources":["CreateTeamUseCase.ts"],"sourcesContent":["import { mdbid } from \"@webiny/utils\";\nimport { createImplementation } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport { CreateTeam } from \"./abstractions.js\";\nimport { TeamsRepository } from \"../shared/abstractions.js\";\nimport { IdentityContext } from \"../../IdentityContext/abstractions.js\";\nimport { createTeamValidation } from \"./schema.js\";\nimport { TeamBeforeCreateEvent, TeamAfterCreateEvent } from \"./events.js\";\nimport type { Team, CreateTeamInput } from \"../shared/types.js\";\nimport { NotAuthorizedError, TeamExistsError, TeamValidationError } from \"../shared/errors.js\";\n\nexport class CreateTeamUseCase implements CreateTeam.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: TeamsRepository.Interface\n ) {}\n\n async execute(input: CreateTeamInput): Promise<Result<Team, CreateTeam.Error>> {\n const hasPermission = await this.identityContext.getPermission(\"security.team\");\n\n if (!hasPermission) {\n return Result.fail(new NotAuthorizedError());\n }\n\n const validation = createTeamValidation.safeParse(input);\n if (!validation.success) {\n return Result.fail(new TeamValidationError(validation.error.issues[0].message));\n }\n\n const identity = this.identityContext.getIdentity();\n const data = validation.data;\n\n // Check if team with same slug already exists\n const existingTeamResult = await this.repository.get({ slug: data.slug });\n if (existingTeamResult.isOk()) {\n return Result.fail(new TeamExistsError(data.slug));\n }\n\n const team: Team = {\n id: mdbid(),\n name: data.name,\n slug: data.slug,\n description: data.description,\n roles: data.roles,\n system: input.system || false,\n createdOn: new Date().toISOString(),\n createdBy: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n },\n plugin: false\n };\n\n await this.eventPublisher.publish(\n new TeamBeforeCreateEvent({ team, input: validation.data })\n );\n\n const result = await this.repository.create(team);\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n await this.eventPublisher.publish(\n new TeamAfterCreateEvent({ team, input: validation.data })\n );\n\n return Result.ok(team);\n }\n}\n\nexport const CreateTeamUseCaseImpl = createImplementation({\n abstraction: CreateTeam,\n implementation: CreateTeamUseCase,\n dependencies: [IdentityContext, EventPublisher, TeamsRepository]\n});\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,eAAe;AACrC,SAASC,oBAAoB,QAAQ,qBAAqB;AAC1D,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,cAAc;AACvB,SAASC,UAAU;AACnB,SAASC,eAAe;AACxB,SAASC,eAAe;AACxB,SAASC,oBAAoB;AAC7B,SAASC,qBAAqB,EAAEC,oBAAoB;AAEpD,SAASC,kBAAkB,EAAEC,eAAe,EAAEC,mBAAmB;AAEjE,OAAO,MAAMC,iBAAiB,CAAiC;EAC3DC,WAAWA,CACCC,eAA0C,EAC1CC,cAAwC,EACxCC,UAAqC,EAC/C;IAAA,KAHUF,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,UAAqC,GAArCA,UAAqC;EAC9C;EAEH,MAAMC,OAAOA,CAACC,KAAsB,EAA2C;IAC3E,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACL,eAAe,CAACM,aAAa,CAAC,eAAe,CAAC;IAE/E,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOlB,MAAM,CAACoB,IAAI,CAAC,IAAIZ,kBAAkB,CAAC,CAAC,CAAC;IAChD;IAEA,MAAMa,UAAU,GAAGhB,oBAAoB,CAACiB,SAAS,CAACL,KAAK,CAAC;IACxD,IAAI,CAACI,UAAU,CAACE,OAAO,EAAE;MACrB,OAAOvB,MAAM,CAACoB,IAAI,CAAC,IAAIV,mBAAmB,CAACW,UAAU,CAACG,KAAK,CAACC,MAAM,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC;IACnF;IAEA,MAAMC,QAAQ,GAAG,IAAI,CAACd,eAAe,CAACe,WAAW,CAAC,CAAC;IACnD,MAAMC,IAAI,GAAGR,UAAU,CAACQ,IAAI;;IAE5B;IACA,MAAMC,kBAAkB,GAAG,MAAM,IAAI,CAACf,UAAU,CAACgB,GAAG,CAAC;MAAEC,IAAI,EAAEH,IAAI,CAACG;IAAK,CAAC,CAAC;IACzE,IAAIF,kBAAkB,CAACG,IAAI,CAAC,CAAC,EAAE;MAC3B,OAAOjC,MAAM,CAACoB,IAAI,CAAC,IAAIX,eAAe,CAACoB,IAAI,CAACG,IAAI,CAAC,CAAC;IACtD;IAEA,MAAME,IAAU,GAAG;MACfC,EAAE,EAAErC,KAAK,CAAC,CAAC;MACXsC,IAAI,EAAEP,IAAI,CAACO,IAAI;MACfJ,IAAI,EAAEH,IAAI,CAACG,IAAI;MACfK,WAAW,EAAER,IAAI,CAACQ,WAAW;MAC7BC,KAAK,EAAET,IAAI,CAACS,KAAK;MACjBC,MAAM,EAAEtB,KAAK,CAACsB,MAAM,IAAI,KAAK;MAC7BC,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;MACnCC,SAAS,EAAE;QACPR,EAAE,EAAER,QAAQ,CAACQ,EAAE;QACfS,WAAW,EAAEjB,QAAQ,CAACiB,WAAW;QACjCC,IAAI,EAAElB,QAAQ,CAACkB;MACnB,CAAC;MACDC,MAAM,EAAE;IACZ,CAAC;IAED,MAAM,IAAI,CAAChC,cAAc,CAACiC,OAAO,CAC7B,IAAIzC,qBAAqB,CAAC;MAAE4B,IAAI;MAAEjB,KAAK,EAAEI,UAAU,CAACQ;IAAK,CAAC,CAC9D,CAAC;IAED,MAAMmB,MAAM,GAAG,MAAM,IAAI,CAACjC,UAAU,CAACkC,MAAM,CAACf,IAAI,CAAC;IAEjD,IAAIc,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOlD,MAAM,CAACoB,IAAI,CAAC4B,MAAM,CAACxB,KAAK,CAAC;IACpC;IAEA,MAAM,IAAI,CAACV,cAAc,CAACiC,OAAO,CAC7B,IAAIxC,oBAAoB,CAAC;MAAE2B,IAAI;MAAEjB,KAAK,EAAEI,UAAU,CAACQ;IAAK,CAAC,CAC7D,CAAC;IAED,OAAO7B,MAAM,CAACmD,EAAE,CAACjB,IAAI,CAAC;EAC1B;AACJ;AAEA,OAAO,MAAMkB,qBAAqB,GAAGrD,oBAAoB,CAAC;EACtDsD,WAAW,EAAEnD,UAAU;EACvBoD,cAAc,EAAE3C,iBAAiB;EACjC4C,YAAY,EAAE,CAACnD,eAAe,EAAEH,cAAc,EAAEE,eAAe;AACnE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/security/teams/CreateTeam/CreateTeamUseCase.js","sources":["../../../../../src/features/security/teams/CreateTeam/CreateTeamUseCase.ts"],"sourcesContent":["import { mdbid } from \"@webiny/utils\";\nimport { createImplementation } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport { CreateTeam } from \"./abstractions.js\";\nimport { TeamsRepository } from \"../shared/abstractions.js\";\nimport { IdentityContext } from \"../../IdentityContext/abstractions.js\";\nimport { createTeamValidation } from \"./schema.js\";\nimport { TeamBeforeCreateEvent, TeamAfterCreateEvent } from \"./events.js\";\nimport type { Team, CreateTeamInput } from \"../shared/types.js\";\nimport { NotAuthorizedError, TeamExistsError, TeamValidationError } from \"../shared/errors.js\";\n\nexport class CreateTeamUseCase implements CreateTeam.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: TeamsRepository.Interface\n ) {}\n\n async execute(input: CreateTeamInput): Promise<Result<Team, CreateTeam.Error>> {\n const hasPermission = await this.identityContext.getPermission(\"security.team\");\n\n if (!hasPermission) {\n return Result.fail(new NotAuthorizedError());\n }\n\n const validation = createTeamValidation.safeParse(input);\n if (!validation.success) {\n return Result.fail(new TeamValidationError(validation.error.issues[0].message));\n }\n\n const identity = this.identityContext.getIdentity();\n const data = validation.data;\n\n // Check if team with same slug already exists\n const existingTeamResult = await this.repository.get({ slug: data.slug });\n if (existingTeamResult.isOk()) {\n return Result.fail(new TeamExistsError(data.slug));\n }\n\n const team: Team = {\n id: mdbid(),\n name: data.name,\n slug: data.slug,\n description: data.description,\n roles: data.roles,\n system: input.system || false,\n createdOn: new Date().toISOString(),\n createdBy: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n },\n plugin: false\n };\n\n await this.eventPublisher.publish(\n new TeamBeforeCreateEvent({ team, input: validation.data })\n );\n\n const result = await this.repository.create(team);\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n await this.eventPublisher.publish(\n new TeamAfterCreateEvent({ team, input: validation.data })\n );\n\n return Result.ok(team);\n }\n}\n\nexport const CreateTeamUseCaseImpl = createImplementation({\n abstraction: CreateTeam,\n implementation: CreateTeamUseCase,\n dependencies: [IdentityContext, EventPublisher, TeamsRepository]\n});\n"],"names":["CreateTeamUseCase","identityContext","eventPublisher","repository","input","hasPermission","Result","NotAuthorizedError","validation","createTeamValidation","TeamValidationError","identity","data","existingTeamResult","TeamExistsError","team","mdbid","Date","TeamBeforeCreateEvent","result","TeamAfterCreateEvent","CreateTeamUseCaseImpl","createImplementation","CreateTeam","IdentityContext","EventPublisher","TeamsRepository"],"mappings":";;;;;;;;;AAYO,MAAMA;IACT,YACYC,eAA0C,EAC1CC,cAAwC,EACxCC,UAAqC,CAC/C;aAHUF,eAAe,GAAfA;aACAC,cAAc,GAAdA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,KAAsB,EAA2C;QAC3E,MAAMC,gBAAgB,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;QAE/D,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,aAAaC,qBAAqB,SAAS,CAACL;QAClD,IAAI,CAACI,WAAW,OAAO,EACnB,OAAOF,OAAO,IAAI,CAAC,IAAII,oBAAoBF,WAAW,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO;QAGjF,MAAMG,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QACjD,MAAMC,OAAOJ,WAAW,IAAI;QAG5B,MAAMK,qBAAqB,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,MAAMD,KAAK,IAAI;QAAC;QACvE,IAAIC,mBAAmB,IAAI,IACvB,OAAOP,OAAO,IAAI,CAAC,IAAIQ,gBAAgBF,KAAK,IAAI;QAGpD,MAAMG,OAAa;YACf,IAAIC;YACJ,MAAMJ,KAAK,IAAI;YACf,MAAMA,KAAK,IAAI;YACf,aAAaA,KAAK,WAAW;YAC7B,OAAOA,KAAK,KAAK;YACjB,QAAQR,MAAM,MAAM,IAAI;YACxB,WAAW,IAAIa,OAAO,WAAW;YACjC,WAAW;gBACP,IAAIN,SAAS,EAAE;gBACf,aAAaA,SAAS,WAAW;gBACjC,MAAMA,SAAS,IAAI;YACvB;YACA,QAAQ;QACZ;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIO,sBAAsB;YAAEH;YAAM,OAAOP,WAAW,IAAI;QAAC;QAG7D,MAAMW,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAACJ;QAE5C,IAAII,OAAO,MAAM,IACb,OAAOb,OAAO,IAAI,CAACa,OAAO,KAAK;QAGnC,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIC,qBAAqB;YAAEL;YAAM,OAAOP,WAAW,IAAI;QAAC;QAG5D,OAAOF,OAAO,EAAE,CAACS;IACrB;AACJ;AAEO,MAAMM,wBAAwBC,qBAAqB;IACtD,aAAaC;IACb,gBAAgBvB;IAChB,cAAc;QAACwB;QAAiBC;QAAgBC;KAAgB;AACpE"}
@@ -1,5 +1,5 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
- /** Create a new team. */
3
- export const CreateTeam = createAbstraction("CreateTeam");
2
+ const CreateTeam = createAbstraction("CreateTeam");
3
+ export { CreateTeam };
4
4
 
5
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","CreateTeam"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { Team, CreateTeamInput } from \"../shared/types.js\";\nimport { TeamsRepository } from \"../shared/abstractions.js\";\nimport { NotAuthorizedError, TeamExistsError, TeamValidationError } from \"../shared/errors.js\";\n\nexport interface ICreateTeamErrors {\n notAuthorized: NotAuthorizedError;\n teamExists: TeamExistsError;\n validation: TeamValidationError;\n}\n\ntype CreateTeamError = ICreateTeamErrors[keyof ICreateTeamErrors] | TeamsRepository.Error;\n\nexport interface ICreateTeam {\n execute(input: CreateTeamInput): Promise<Result<Team, CreateTeamError>>;\n}\n\n/** Create a new team. */\nexport const CreateTeam = createAbstraction<ICreateTeam>(\"CreateTeam\");\n\nexport namespace CreateTeam {\n export type Interface = ICreateTeam;\n export type Error = CreateTeamError;\n}\n\nexport interface TeamBeforeCreatePayload {\n team: Team;\n input: CreateTeamInput;\n}\n\nexport interface TeamAfterCreatePayload {\n team: Team;\n input: CreateTeamInput;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAkBvD;AACA,OAAO,MAAMC,UAAU,GAAGD,iBAAiB,CAAc,YAAY,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/security/teams/CreateTeam/abstractions.js","sources":["../../../../../src/features/security/teams/CreateTeam/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { Team, CreateTeamInput } from \"../shared/types.js\";\nimport { TeamsRepository } from \"../shared/abstractions.js\";\nimport { NotAuthorizedError, TeamExistsError, TeamValidationError } from \"../shared/errors.js\";\n\nexport interface ICreateTeamErrors {\n notAuthorized: NotAuthorizedError;\n teamExists: TeamExistsError;\n validation: TeamValidationError;\n}\n\ntype CreateTeamError = ICreateTeamErrors[keyof ICreateTeamErrors] | TeamsRepository.Error;\n\nexport interface ICreateTeam {\n execute(input: CreateTeamInput): Promise<Result<Team, CreateTeamError>>;\n}\n\n/** Create a new team. */\nexport const CreateTeam = createAbstraction<ICreateTeam>(\"CreateTeam\");\n\nexport namespace CreateTeam {\n export type Interface = ICreateTeam;\n export type Error = CreateTeamError;\n}\n\nexport interface TeamBeforeCreatePayload {\n team: Team;\n input: CreateTeamInput;\n}\n\nexport interface TeamAfterCreatePayload {\n team: Team;\n input: CreateTeamInput;\n}\n"],"names":["CreateTeam","createAbstraction"],"mappings":";AAmBO,MAAMA,aAAaC,kBAA+B"}
@@ -1,22 +1,23 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
2
  import { DomainEvent } from "../../../eventPublisher/index.js";
3
- export class TeamBeforeCreateEvent extends DomainEvent {
4
- eventType = "team.beforeCreate";
5
- getHandlerAbstraction() {
6
- return TeamBeforeCreateEventHandler;
7
- }
3
+ class TeamBeforeCreateEvent extends DomainEvent {
4
+ getHandlerAbstraction() {
5
+ return TeamBeforeCreateEventHandler;
6
+ }
7
+ constructor(...args){
8
+ super(...args), this.eventType = "team.beforeCreate";
9
+ }
8
10
  }
9
-
10
- /** Hook into team lifecycle before a team is created. */
11
- export const TeamBeforeCreateEventHandler = createAbstraction("TeamBeforeCreateEventHandler");
12
- export class TeamAfterCreateEvent extends DomainEvent {
13
- eventType = "team.afterCreate";
14
- getHandlerAbstraction() {
15
- return TeamAfterCreateEventHandler;
16
- }
11
+ const TeamBeforeCreateEventHandler = createAbstraction("TeamBeforeCreateEventHandler");
12
+ class TeamAfterCreateEvent extends DomainEvent {
13
+ getHandlerAbstraction() {
14
+ return TeamAfterCreateEventHandler;
15
+ }
16
+ constructor(...args){
17
+ super(...args), this.eventType = "team.afterCreate";
18
+ }
17
19
  }
18
-
19
- /** Hook into team lifecycle after a team is created. */
20
- export const TeamAfterCreateEventHandler = createAbstraction("TeamAfterCreateEventHandler");
20
+ const TeamAfterCreateEventHandler = createAbstraction("TeamAfterCreateEventHandler");
21
+ export { TeamAfterCreateEvent, TeamAfterCreateEventHandler, TeamBeforeCreateEvent, TeamBeforeCreateEventHandler };
21
22
 
22
23
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","DomainEvent","TeamBeforeCreateEvent","eventType","getHandlerAbstraction","TeamBeforeCreateEventHandler","TeamAfterCreateEvent","TeamAfterCreateEventHandler"],"sources":["events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport type { IEventHandler } from \"~/features/eventPublisher/index.js\";\nimport type { TeamBeforeCreatePayload, TeamAfterCreatePayload } from \"./abstractions.js\";\n\nexport class TeamBeforeCreateEvent extends DomainEvent<TeamBeforeCreatePayload> {\n eventType = \"team.beforeCreate\" as const;\n\n getHandlerAbstraction() {\n return TeamBeforeCreateEventHandler;\n }\n}\n\n/** Hook into team lifecycle before a team is created. */\nexport const TeamBeforeCreateEventHandler = createAbstraction<IEventHandler<TeamBeforeCreateEvent>>(\n \"TeamBeforeCreateEventHandler\"\n);\n\nexport namespace TeamBeforeCreateEventHandler {\n export type Interface = IEventHandler<TeamBeforeCreateEvent>;\n export type Event = TeamBeforeCreateEvent;\n}\n\nexport class TeamAfterCreateEvent extends DomainEvent<TeamAfterCreatePayload> {\n eventType = \"team.afterCreate\" as const;\n\n getHandlerAbstraction() {\n return TeamAfterCreateEventHandler;\n }\n}\n\n/** Hook into team lifecycle after a team is created. */\nexport const TeamAfterCreateEventHandler = createAbstraction<IEventHandler<TeamAfterCreateEvent>>(\n \"TeamAfterCreateEventHandler\"\n);\n\nexport namespace TeamAfterCreateEventHandler {\n export type Interface = IEventHandler<TeamAfterCreateEvent>;\n export type Event = TeamAfterCreateEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,WAAW;AAIpB,OAAO,MAAMC,qBAAqB,SAASD,WAAW,CAA0B;EAC5EE,SAAS,GAAG,mBAAmB;EAE/BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOC,4BAA4B;EACvC;AACJ;;AAEA;AACA,OAAO,MAAMA,4BAA4B,GAAGL,iBAAiB,CACzD,8BACJ,CAAC;AAOD,OAAO,MAAMM,oBAAoB,SAASL,WAAW,CAAyB;EAC1EE,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOG,2BAA2B;EACtC;AACJ;;AAEA;AACA,OAAO,MAAMA,2BAA2B,GAAGP,iBAAiB,CACxD,6BACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/security/teams/CreateTeam/events.js","sources":["../../../../../src/features/security/teams/CreateTeam/events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport type { IEventHandler } from \"~/features/eventPublisher/index.js\";\nimport type { TeamBeforeCreatePayload, TeamAfterCreatePayload } from \"./abstractions.js\";\n\nexport class TeamBeforeCreateEvent extends DomainEvent<TeamBeforeCreatePayload> {\n eventType = \"team.beforeCreate\" as const;\n\n getHandlerAbstraction() {\n return TeamBeforeCreateEventHandler;\n }\n}\n\n/** Hook into team lifecycle before a team is created. */\nexport const TeamBeforeCreateEventHandler = createAbstraction<IEventHandler<TeamBeforeCreateEvent>>(\n \"TeamBeforeCreateEventHandler\"\n);\n\nexport namespace TeamBeforeCreateEventHandler {\n export type Interface = IEventHandler<TeamBeforeCreateEvent>;\n export type Event = TeamBeforeCreateEvent;\n}\n\nexport class TeamAfterCreateEvent extends DomainEvent<TeamAfterCreatePayload> {\n eventType = \"team.afterCreate\" as const;\n\n getHandlerAbstraction() {\n return TeamAfterCreateEventHandler;\n }\n}\n\n/** Hook into team lifecycle after a team is created. */\nexport const TeamAfterCreateEventHandler = createAbstraction<IEventHandler<TeamAfterCreateEvent>>(\n \"TeamAfterCreateEventHandler\"\n);\n\nexport namespace TeamAfterCreateEventHandler {\n export type Interface = IEventHandler<TeamAfterCreateEvent>;\n export type Event = TeamAfterCreateEvent;\n}\n"],"names":["TeamBeforeCreateEvent","DomainEvent","TeamBeforeCreateEventHandler","createAbstraction","TeamAfterCreateEvent","TeamAfterCreateEventHandler"],"mappings":";;AAKO,MAAMA,8BAA8BC;IAGvC,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMA,+BAA+BC,kBACxC;AAQG,MAAMC,6BAA6BH;IAGtC,wBAAwB;QACpB,OAAOI;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMA,8BAA8BF,kBACvC"}
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { CreateTeamUseCaseImpl } from "./CreateTeamUseCase.js";
3
- export const CreateTeamFeature = createFeature({
4
- name: "CreateTeam",
5
- register(container) {
6
- container.register(CreateTeamUseCaseImpl);
7
- }
3
+ const CreateTeamFeature = createFeature({
4
+ name: "CreateTeam",
5
+ register (container) {
6
+ container.register(CreateTeamUseCaseImpl);
7
+ }
8
8
  });
9
+ export { CreateTeamFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","CreateTeamUseCaseImpl","CreateTeamFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateTeamUseCaseImpl } from \"./CreateTeamUseCase.js\";\n\nexport const CreateTeamFeature = createFeature({\n name: \"CreateTeam\",\n register(container) {\n container.register(CreateTeamUseCaseImpl);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,iBAAiB,GAAGF,aAAa,CAAC;EAC3CG,IAAI,EAAE,YAAY;EAClBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,qBAAqB,CAAC;EAC7C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/security/teams/CreateTeam/feature.js","sources":["../../../../../src/features/security/teams/CreateTeam/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateTeamUseCaseImpl } from \"./CreateTeamUseCase.js\";\n\nexport const CreateTeamFeature = createFeature({\n name: \"CreateTeam\",\n register(container) {\n container.register(CreateTeamUseCaseImpl);\n }\n});\n"],"names":["CreateTeamFeature","createFeature","container","CreateTeamUseCaseImpl"],"mappings":";;AAGO,MAAMA,oBAAoBC,cAAc;IAC3C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export { CreateTeam } from "./abstractions.js";
2
2
  export { TeamAfterCreateEventHandler, TeamBeforeCreateEventHandler } from "./events.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,9 +1,10 @@
1
1
  import { z } from "zod";
2
- export const createTeamValidation = z.object({
3
- name: z.string().min(3),
4
- slug: z.string().min(3),
5
- description: z.string().max(500).optional().default(""),
6
- roles: z.array(z.string())
2
+ const createTeamValidation = z.object({
3
+ name: z.string().min(3),
4
+ slug: z.string().min(3),
5
+ description: z.string().max(500).optional().default(""),
6
+ roles: z.array(z.string())
7
7
  });
8
+ export { createTeamValidation };
8
9
 
9
10
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["z","createTeamValidation","object","name","string","min","slug","description","max","optional","default","roles","array"],"sources":["schema.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const createTeamValidation = z.object({\n name: z.string().min(3),\n slug: z.string().min(3),\n description: z.string().max(500).optional().default(\"\"),\n roles: z.array(z.string())\n});\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,oBAAoB,GAAGD,CAAC,CAACE,MAAM,CAAC;EACzCC,IAAI,EAAEH,CAAC,CAACI,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC;EACvBC,IAAI,EAAEN,CAAC,CAACI,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC;EACvBE,WAAW,EAAEP,CAAC,CAACI,MAAM,CAAC,CAAC,CAACI,GAAG,CAAC,GAAG,CAAC,CAACC,QAAQ,CAAC,CAAC,CAACC,OAAO,CAAC,EAAE,CAAC;EACvDC,KAAK,EAAEX,CAAC,CAACY,KAAK,CAACZ,CAAC,CAACI,MAAM,CAAC,CAAC;AAC7B,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/security/teams/CreateTeam/schema.js","sources":["../../../../../src/features/security/teams/CreateTeam/schema.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const createTeamValidation = z.object({\n name: z.string().min(3),\n slug: z.string().min(3),\n description: z.string().max(500).optional().default(\"\"),\n roles: z.array(z.string())\n});\n"],"names":["createTeamValidation","z"],"mappings":";AAEO,MAAMA,uBAAuBC,EAAE,MAAM,CAAC;IACzC,MAAMA,EAAE,MAAM,GAAG,GAAG,CAAC;IACrB,MAAMA,EAAE,MAAM,GAAG,GAAG,CAAC;IACrB,aAAaA,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,QAAQ,GAAG,OAAO,CAAC;IACpD,OAAOA,EAAE,KAAK,CAACA,EAAE,MAAM;AAC3B"}
@@ -1,56 +1,46 @@
1
- import { createImplementation } from "@webiny/feature/api";
2
- import { Result } from "@webiny/feature/api";
1
+ import { Result, createImplementation } from "@webiny/feature/api";
3
2
  import { DeleteTeam } from "./abstractions.js";
4
3
  import { TeamsRepository } from "../shared/abstractions.js";
5
4
  import { IdentityContext } from "../../IdentityContext/abstractions.js";
6
5
  import { EventPublisher } from "../../../eventPublisher/index.js";
7
- import { TeamBeforeDeleteEvent, TeamAfterDeleteEvent } from "./events.js";
8
- import { NotAuthorizedError, CannotDeletePluginTeamsError, CannotDeleteSystemTeamsError } from "../shared/errors.js";
9
- export class DeleteTeamUseCase {
10
- constructor(repository, identityContext, eventPublisher) {
11
- this.repository = repository;
12
- this.identityContext = identityContext;
13
- this.eventPublisher = eventPublisher;
14
- }
15
- async execute(id) {
16
- const hasPermission = await this.identityContext.getPermission("security.team");
17
- if (!hasPermission) {
18
- return Result.fail(new NotAuthorizedError());
6
+ import { TeamAfterDeleteEvent, TeamBeforeDeleteEvent } from "./events.js";
7
+ import { CannotDeletePluginTeamsError, CannotDeleteSystemTeamsError, NotAuthorizedError } from "../shared/errors.js";
8
+ class DeleteTeamUseCase {
9
+ constructor(repository, identityContext, eventPublisher){
10
+ this.repository = repository;
11
+ this.identityContext = identityContext;
12
+ this.eventPublisher = eventPublisher;
19
13
  }
20
- const existingResult = await this.repository.get({
21
- id
22
- });
23
- if (existingResult.isFail()) {
24
- return Result.fail(existingResult.error);
14
+ async execute(id) {
15
+ const hasPermission = await this.identityContext.getPermission("security.team");
16
+ if (!hasPermission) return Result.fail(new NotAuthorizedError());
17
+ const existingResult = await this.repository.get({
18
+ id
19
+ });
20
+ if (existingResult.isFail()) return Result.fail(existingResult.error);
21
+ const existingTeam = existingResult.value;
22
+ if (existingTeam.system) return Result.fail(new CannotDeleteSystemTeamsError());
23
+ if (existingTeam.plugin) return Result.fail(new CannotDeletePluginTeamsError());
24
+ await this.eventPublisher.publish(new TeamBeforeDeleteEvent({
25
+ team: existingTeam
26
+ }));
27
+ const result = await this.repository.delete(existingTeam);
28
+ if (result.isFail()) return result;
29
+ await this.eventPublisher.publish(new TeamAfterDeleteEvent({
30
+ team: existingTeam
31
+ }));
32
+ return Result.ok();
25
33
  }
26
- const existingTeam = existingResult.value;
27
-
28
- // Check if team is system team
29
- if (existingTeam.system) {
30
- return Result.fail(new CannotDeleteSystemTeamsError());
31
- }
32
-
33
- // Check if team is created via plugin
34
- if (existingTeam.plugin) {
35
- return Result.fail(new CannotDeletePluginTeamsError());
36
- }
37
- await this.eventPublisher.publish(new TeamBeforeDeleteEvent({
38
- team: existingTeam
39
- }));
40
- const result = await this.repository.delete(existingTeam);
41
- if (result.isFail()) {
42
- return result;
43
- }
44
- await this.eventPublisher.publish(new TeamAfterDeleteEvent({
45
- team: existingTeam
46
- }));
47
- return Result.ok();
48
- }
49
34
  }
50
- export const DeleteTeamUseCaseImpl = createImplementation({
51
- abstraction: DeleteTeam,
52
- implementation: DeleteTeamUseCase,
53
- dependencies: [TeamsRepository, IdentityContext, EventPublisher]
35
+ const DeleteTeamUseCaseImpl = createImplementation({
36
+ abstraction: DeleteTeam,
37
+ implementation: DeleteTeamUseCase,
38
+ dependencies: [
39
+ TeamsRepository,
40
+ IdentityContext,
41
+ EventPublisher
42
+ ]
54
43
  });
44
+ export { DeleteTeamUseCase, DeleteTeamUseCaseImpl };
55
45
 
56
46
  //# sourceMappingURL=DeleteTeamUseCase.js.map