@webiny/api-core 0.0.0-unstable.ac6ebf63c6 → 0.0.0-unstable.b6d7105cee

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 (1167) hide show
  1. package/ApiCoreFeature.d.ts +5 -1
  2. package/ApiCoreFeature.js +26 -14
  3. package/ApiCoreFeature.js.map +1 -1
  4. package/createApiCore.d.ts +1 -1
  5. package/createApiCore.js +17 -8
  6. package/createApiCore.js.map +1 -1
  7. package/domain/identity/SystemIdentityValue.js +9 -8
  8. package/domain/identity/SystemIdentityValue.js.map +1 -1
  9. package/domain/security/ApiToken.d.ts +1 -0
  10. package/domain/security/ApiToken.js +5 -10
  11. package/domain/security/ApiToken.js.map +1 -1
  12. package/domain/tenancy/RootTenantValue.js +9 -8
  13. package/domain/tenancy/RootTenantValue.js.map +1 -1
  14. package/domain/tenancy/errors.js +0 -3
  15. package/exports/api/{buildParams.js → build-params.d.ts} +1 -2
  16. package/exports/api/{eventPublisher.js → event-publisher.d.ts} +1 -2
  17. package/exports/api/graphql.js +0 -2
  18. package/exports/api/{keyValueStore.js → key-value-store.d.ts} +1 -2
  19. package/exports/api/logger.d.ts +1 -0
  20. package/exports/api/logger.js +0 -2
  21. package/exports/api/security/api-key.d.ts +8 -0
  22. package/exports/api/security/api-key.js +8 -0
  23. package/exports/api/security/authentication.d.ts +1 -1
  24. package/exports/api/security/authentication.js +1 -3
  25. package/exports/api/security/role.d.ts +3 -3
  26. package/exports/api/security/role.js +3 -5
  27. package/exports/api/security/user.d.ts +3 -3
  28. package/exports/api/security/user.js +3 -5
  29. package/exports/api/security.d.ts +6 -0
  30. package/exports/api/security.js +5 -4
  31. package/exports/api/system.d.ts +1 -1
  32. package/exports/api/system.js +1 -3
  33. package/exports/api/tasks.js +0 -2
  34. package/exports/api/tenancy.d.ts +4 -4
  35. package/exports/api/tenancy.js +4 -6
  36. package/exports/api/webhooks.d.ts +1 -0
  37. package/exports/api/webhooks.js +1 -0
  38. package/exports/api.d.ts +7 -0
  39. package/exports/api.js +6 -0
  40. package/features/ai/Ai.d.ts +28 -0
  41. package/features/ai/Ai.js +151 -0
  42. package/features/ai/Ai.js.map +1 -0
  43. package/features/ai/AiSdkTools.d.ts +11 -0
  44. package/features/ai/AiSdkTools.js +29 -0
  45. package/features/ai/AiSdkTools.js.map +1 -0
  46. package/features/ai/AnthropicSdkFactory.d.ts +10 -0
  47. package/features/ai/AnthropicSdkFactory.js +52 -0
  48. package/features/ai/AnthropicSdkFactory.js.map +1 -0
  49. package/features/ai/OpenAiSdkFactory.d.ts +10 -0
  50. package/features/ai/OpenAiSdkFactory.js +76 -0
  51. package/features/ai/OpenAiSdkFactory.js.map +1 -0
  52. package/features/ai/TextExtractor/DefaultTextExtractor.d.ts +9 -0
  53. package/features/ai/TextExtractor/DefaultTextExtractor.js +28 -0
  54. package/features/ai/TextExtractor/DefaultTextExtractor.js.map +1 -0
  55. package/features/ai/TextExtractor/abstractions.d.ts +12 -0
  56. package/features/ai/TextExtractor/abstractions.js +5 -0
  57. package/features/ai/TextExtractor/abstractions.js.map +1 -0
  58. package/features/ai/TextExtractor/index.d.ts +3 -0
  59. package/features/ai/TextExtractor/index.js +2 -0
  60. package/features/ai/TextExtractor/parsers/docxParser.d.ts +1 -0
  61. package/features/ai/TextExtractor/parsers/docxParser.js +111 -0
  62. package/features/ai/TextExtractor/parsers/docxParser.js.map +1 -0
  63. package/features/ai/abstractions.d.ts +92 -0
  64. package/features/ai/abstractions.js +10 -0
  65. package/features/ai/abstractions.js.map +1 -0
  66. package/features/ai/events.d.ts +59 -0
  67. package/features/ai/events.js +41 -0
  68. package/features/ai/events.js.map +1 -0
  69. package/features/ai/feature.d.ts +4 -0
  70. package/features/ai/feature.js +23 -0
  71. package/features/ai/feature.js.map +1 -0
  72. package/features/ai/index.d.ts +9 -0
  73. package/features/ai/index.js +5 -0
  74. package/features/ai/toolPipeline/AiOutputToolRegistry.d.ts +11 -0
  75. package/features/ai/toolPipeline/AiOutputToolRegistry.js +31 -0
  76. package/features/ai/toolPipeline/AiOutputToolRegistry.js.map +1 -0
  77. package/features/ai/toolPipeline/AiToolPipelineRunner.d.ts +10 -0
  78. package/features/ai/toolPipeline/AiToolPipelineRunner.js +36 -0
  79. package/features/ai/toolPipeline/AiToolPipelineRunner.js.map +1 -0
  80. package/features/ai/toolPipeline/abstractions.d.ts +23 -0
  81. package/features/ai/toolPipeline/abstractions.js +7 -0
  82. package/features/ai/toolPipeline/abstractions.js.map +1 -0
  83. package/features/ai/toolPipeline/index.d.ts +2 -0
  84. package/features/ai/toolPipeline/index.js +1 -0
  85. package/features/buildParams/BuildParams.js +20 -14
  86. package/features/buildParams/BuildParams.js.map +1 -1
  87. package/features/buildParams/abstractions.d.ts +2 -0
  88. package/features/buildParams/abstractions.js +3 -2
  89. package/features/buildParams/abstractions.js.map +1 -1
  90. package/features/buildParams/feature.d.ts +5 -1
  91. package/features/buildParams/feature.js +6 -5
  92. package/features/buildParams/feature.js.map +1 -1
  93. package/features/buildParams/index.js +0 -2
  94. package/features/encryption/EncryptionService.d.ts +10 -0
  95. package/features/encryption/EncryptionService.js +62 -0
  96. package/features/encryption/EncryptionService.js.map +1 -0
  97. package/features/encryption/abstractions.d.ts +9 -0
  98. package/features/encryption/abstractions.js +5 -0
  99. package/features/encryption/abstractions.js.map +1 -0
  100. package/features/encryption/feature.d.ts +4 -0
  101. package/features/encryption/feature.js +11 -0
  102. package/features/encryption/feature.js.map +1 -0
  103. package/features/encryption/index.d.ts +1 -0
  104. package/features/encryption/index.js +1 -0
  105. package/features/eventPublisher/EventPublisher.js +9 -15
  106. package/features/eventPublisher/EventPublisher.js.map +1 -1
  107. package/features/eventPublisher/__tests__/EventPublisher.test.js +385 -419
  108. package/features/eventPublisher/__tests__/EventPublisher.test.js.map +1 -1
  109. package/features/eventPublisher/abstractions.d.ts +2 -0
  110. package/features/eventPublisher/abstractions.js +7 -9
  111. package/features/eventPublisher/abstractions.js.map +1 -1
  112. package/features/eventPublisher/feature.d.ts +5 -1
  113. package/features/eventPublisher/feature.js +8 -7
  114. package/features/eventPublisher/feature.js.map +1 -1
  115. package/features/eventPublisher/index.js +0 -2
  116. package/features/featureFlags/FeatureFlags.d.ts +12 -0
  117. package/features/featureFlags/FeatureFlags.js +21 -0
  118. package/features/featureFlags/FeatureFlags.js.map +1 -0
  119. package/features/featureFlags/abstractions.d.ts +8 -0
  120. package/features/featureFlags/abstractions.js +5 -0
  121. package/features/featureFlags/abstractions.js.map +1 -0
  122. package/features/featureFlags/feature.d.ts +5 -0
  123. package/features/featureFlags/feature.js +11 -0
  124. package/features/featureFlags/feature.js.map +1 -0
  125. package/features/keyValueStore/GlobalKeyValueStore.js +28 -23
  126. package/features/keyValueStore/GlobalKeyValueStore.js.map +1 -1
  127. package/features/keyValueStore/KeyValueStore.js +30 -27
  128. package/features/keyValueStore/KeyValueStore.js.map +1 -1
  129. package/features/keyValueStore/KeyValueStoreRepository.d.ts +2 -2
  130. package/features/keyValueStore/KeyValueStoreRepository.js +34 -41
  131. package/features/keyValueStore/KeyValueStoreRepository.js.map +1 -1
  132. package/features/keyValueStore/abstractions.d.ts +10 -2
  133. package/features/keyValueStore/abstractions.js +5 -16
  134. package/features/keyValueStore/abstractions.js.map +1 -1
  135. package/features/keyValueStore/errors.js +16 -17
  136. package/features/keyValueStore/errors.js.map +1 -1
  137. package/features/keyValueStore/feature.d.ts +4 -1
  138. package/features/keyValueStore/feature.js +9 -9
  139. package/features/keyValueStore/feature.js.map +1 -1
  140. package/features/keyValueStore/index.js +1 -3
  141. package/features/logger/LoggerService.js +41 -45
  142. package/features/logger/LoggerService.js.map +1 -1
  143. package/features/logger/abstractions.d.ts +1 -0
  144. package/features/logger/abstractions.js +2 -1
  145. package/features/logger/abstractions.js.map +1 -1
  146. package/features/logger/feature.d.ts +4 -1
  147. package/features/logger/feature.js +6 -5
  148. package/features/logger/feature.js.map +1 -1
  149. package/features/logger/index.js +0 -2
  150. package/features/masker/Masker.d.ts +8 -0
  151. package/features/masker/Masker.js +18 -0
  152. package/features/masker/Masker.js.map +1 -0
  153. package/features/masker/abstractions.d.ts +11 -0
  154. package/features/masker/abstractions.js +5 -0
  155. package/features/masker/abstractions.js.map +1 -0
  156. package/features/masker/feature.d.ts +4 -0
  157. package/features/masker/feature.js +11 -0
  158. package/features/masker/feature.js.map +1 -0
  159. package/features/masker/index.d.ts +1 -0
  160. package/features/masker/index.js +1 -0
  161. package/features/security/IdentityContext/AnonymousIdentity.js +12 -16
  162. package/features/security/IdentityContext/AnonymousIdentity.js.map +1 -1
  163. package/features/security/IdentityContext/AuthenticatedIdentity.js +5 -8
  164. package/features/security/IdentityContext/AuthenticatedIdentity.js.map +1 -1
  165. package/features/security/IdentityContext/Identity.js +63 -71
  166. package/features/security/IdentityContext/Identity.js.map +1 -1
  167. package/features/security/IdentityContext/IdentityContext.js +70 -107
  168. package/features/security/IdentityContext/IdentityContext.js.map +1 -1
  169. package/features/security/IdentityContext/abstractions.d.ts +1 -0
  170. package/features/security/IdentityContext/abstractions.js +2 -1
  171. package/features/security/IdentityContext/abstractions.js.map +1 -1
  172. package/features/security/IdentityContext/feature.d.ts +4 -1
  173. package/features/security/IdentityContext/feature.js +6 -5
  174. package/features/security/IdentityContext/feature.js.map +1 -1
  175. package/features/security/IdentityContext/index.js +0 -3
  176. package/features/security/SecurityFeature.d.ts +5 -1
  177. package/features/security/SecurityFeature.js +13 -21
  178. package/features/security/SecurityFeature.js.map +1 -1
  179. package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js +48 -49
  180. package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js.map +1 -1
  181. package/features/security/apiKeys/CreateApiKey/abstractions.d.ts +1 -0
  182. package/features/security/apiKeys/CreateApiKey/abstractions.js +2 -1
  183. package/features/security/apiKeys/CreateApiKey/abstractions.js.map +1 -1
  184. package/features/security/apiKeys/CreateApiKey/events.d.ts +6 -4
  185. package/features/security/apiKeys/CreateApiKey/events.js +17 -12
  186. package/features/security/apiKeys/CreateApiKey/events.js.map +1 -1
  187. package/features/security/apiKeys/CreateApiKey/feature.d.ts +4 -1
  188. package/features/security/apiKeys/CreateApiKey/feature.js +6 -5
  189. package/features/security/apiKeys/CreateApiKey/feature.js.map +1 -1
  190. package/features/security/apiKeys/CreateApiKey/index.js +0 -2
  191. package/features/security/apiKeys/DeleteApiKey/DeleteApiKeyUseCase.js +29 -30
  192. package/features/security/apiKeys/DeleteApiKey/DeleteApiKeyUseCase.js.map +1 -1
  193. package/features/security/apiKeys/DeleteApiKey/abstractions.d.ts +1 -0
  194. package/features/security/apiKeys/DeleteApiKey/abstractions.js +2 -1
  195. package/features/security/apiKeys/DeleteApiKey/abstractions.js.map +1 -1
  196. package/features/security/apiKeys/DeleteApiKey/events.d.ts +6 -4
  197. package/features/security/apiKeys/DeleteApiKey/events.js +17 -12
  198. package/features/security/apiKeys/DeleteApiKey/events.js.map +1 -1
  199. package/features/security/apiKeys/DeleteApiKey/feature.d.ts +4 -1
  200. package/features/security/apiKeys/DeleteApiKey/feature.js +6 -5
  201. package/features/security/apiKeys/DeleteApiKey/feature.js.map +1 -1
  202. package/features/security/apiKeys/DeleteApiKey/index.js +0 -2
  203. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.d.ts +1 -1
  204. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.js +16 -14
  205. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.js.map +1 -1
  206. package/features/security/apiKeys/GetApiKey/abstractions.d.ts +1 -0
  207. package/features/security/apiKeys/GetApiKey/abstractions.js +2 -1
  208. package/features/security/apiKeys/GetApiKey/abstractions.js.map +1 -1
  209. package/features/security/apiKeys/GetApiKey/feature.d.ts +4 -1
  210. package/features/security/apiKeys/GetApiKey/feature.js +6 -5
  211. package/features/security/apiKeys/GetApiKey/feature.js.map +1 -1
  212. package/features/security/apiKeys/GetApiKey/index.js +0 -2
  213. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.d.ts +1 -3
  214. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.js +13 -10
  215. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.js.map +1 -1
  216. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.d.ts +2 -1
  217. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js +2 -1
  218. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js.map +1 -1
  219. package/features/security/apiKeys/GetApiKeyBySlug/feature.d.ts +4 -1
  220. package/features/security/apiKeys/GetApiKeyBySlug/feature.js +6 -5
  221. package/features/security/apiKeys/GetApiKeyBySlug/feature.js.map +1 -1
  222. package/features/security/apiKeys/GetApiKeyBySlug/index.js +0 -2
  223. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.d.ts +1 -3
  224. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.js +13 -10
  225. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.js.map +1 -1
  226. package/features/security/apiKeys/GetApiKeyByToken/abstractions.d.ts +2 -1
  227. package/features/security/apiKeys/GetApiKeyByToken/abstractions.js +2 -1
  228. package/features/security/apiKeys/GetApiKeyByToken/abstractions.js.map +1 -1
  229. package/features/security/apiKeys/GetApiKeyByToken/feature.d.ts +4 -1
  230. package/features/security/apiKeys/GetApiKeyByToken/feature.js +6 -5
  231. package/features/security/apiKeys/GetApiKeyByToken/feature.js.map +1 -1
  232. package/features/security/apiKeys/GetApiKeyByToken/index.js +0 -2
  233. package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js +17 -17
  234. package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js.map +1 -1
  235. package/features/security/apiKeys/ListApiKeys/abstractions.d.ts +1 -0
  236. package/features/security/apiKeys/ListApiKeys/abstractions.js +2 -1
  237. package/features/security/apiKeys/ListApiKeys/abstractions.js.map +1 -1
  238. package/features/security/apiKeys/ListApiKeys/feature.d.ts +4 -1
  239. package/features/security/apiKeys/ListApiKeys/feature.js +6 -5
  240. package/features/security/apiKeys/ListApiKeys/feature.js.map +1 -1
  241. package/features/security/apiKeys/ListApiKeys/index.js +0 -2
  242. package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js +39 -42
  243. package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js.map +1 -1
  244. package/features/security/apiKeys/UpdateApiKey/abstractions.d.ts +1 -0
  245. package/features/security/apiKeys/UpdateApiKey/abstractions.js +2 -1
  246. package/features/security/apiKeys/UpdateApiKey/abstractions.js.map +1 -1
  247. package/features/security/apiKeys/UpdateApiKey/events.d.ts +6 -4
  248. package/features/security/apiKeys/UpdateApiKey/events.js +17 -12
  249. package/features/security/apiKeys/UpdateApiKey/events.js.map +1 -1
  250. package/features/security/apiKeys/UpdateApiKey/feature.d.ts +4 -1
  251. package/features/security/apiKeys/UpdateApiKey/feature.js +6 -5
  252. package/features/security/apiKeys/UpdateApiKey/feature.js.map +1 -1
  253. package/features/security/apiKeys/UpdateApiKey/index.js +0 -2
  254. package/features/security/apiKeys/feature.d.ts +4 -1
  255. package/features/security/apiKeys/feature.js +20 -17
  256. package/features/security/apiKeys/feature.js.map +1 -1
  257. package/features/security/apiKeys/shared/ApiKeyProvider.d.ts +3 -5
  258. package/features/security/apiKeys/shared/ApiKeyProvider.js +31 -46
  259. package/features/security/apiKeys/shared/ApiKeyProvider.js.map +1 -1
  260. package/features/security/apiKeys/shared/ApiKeysRepository.d.ts +1 -0
  261. package/features/security/apiKeys/shared/ApiKeysRepository.js +123 -135
  262. package/features/security/apiKeys/shared/ApiKeysRepository.js.map +1 -1
  263. package/features/security/apiKeys/shared/abstractions.d.ts +5 -2
  264. package/features/security/apiKeys/shared/abstractions.js +4 -3
  265. package/features/security/apiKeys/shared/abstractions.js.map +1 -1
  266. package/features/security/apiKeys/shared/errors.js +29 -32
  267. package/features/security/apiKeys/shared/errors.js.map +1 -1
  268. package/features/security/apiKeys/shared/generateToken.d.ts +1 -1
  269. package/features/security/apiKeys/shared/generateToken.js +6 -16
  270. package/features/security/apiKeys/shared/generateToken.js.map +1 -1
  271. package/features/security/apiKeys/shared/schemas.d.ts +10 -71
  272. package/features/security/apiKeys/shared/schemas.js +27 -23
  273. package/features/security/apiKeys/shared/schemas.js.map +1 -1
  274. package/features/security/apiKeys/shared/types.d.ts +1 -1
  275. package/features/security/apiKeys/shared/types.js +0 -3
  276. package/features/security/authentication/AuthenticationContext/AuthenticationContext.js +44 -38
  277. package/features/security/authentication/AuthenticationContext/AuthenticationContext.js.map +1 -1
  278. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.d.ts +2 -2
  279. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js +33 -43
  280. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js.map +1 -1
  281. package/features/security/authentication/AuthenticationContext/abstractions.d.ts +1 -0
  282. package/features/security/authentication/AuthenticationContext/abstractions.js +2 -1
  283. package/features/security/authentication/AuthenticationContext/abstractions.js.map +1 -1
  284. package/features/security/authentication/AuthenticationContext/errors.js +51 -116
  285. package/features/security/authentication/AuthenticationContext/errors.js.map +1 -1
  286. package/features/security/authentication/AuthenticationContext/events.d.ts +6 -4
  287. package/features/security/authentication/AuthenticationContext/events.js +17 -12
  288. package/features/security/authentication/AuthenticationContext/events.js.map +1 -1
  289. package/features/security/authentication/AuthenticationContext/feature.d.ts +4 -1
  290. package/features/security/authentication/AuthenticationContext/feature.js +6 -5
  291. package/features/security/authentication/AuthenticationContext/feature.js.map +1 -1
  292. package/features/security/authentication/AuthenticationContext/index.js +2 -4
  293. package/features/security/authentication/Authenticator/abstractions.d.ts +1 -0
  294. package/features/security/authentication/Authenticator/abstractions.js +2 -1
  295. package/features/security/authentication/Authenticator/abstractions.js.map +1 -1
  296. package/features/security/authentication/Authenticator/index.js +0 -2
  297. package/features/security/authorization/AuthorizationContext/AuthorizationContext.d.ts +1 -0
  298. package/features/security/authorization/AuthorizationContext/AuthorizationContext.js +46 -47
  299. package/features/security/authorization/AuthorizationContext/AuthorizationContext.js.map +1 -1
  300. package/features/security/authorization/AuthorizationContext/abstractions.d.ts +2 -0
  301. package/features/security/authorization/AuthorizationContext/abstractions.js +3 -2
  302. package/features/security/authorization/AuthorizationContext/abstractions.js.map +1 -1
  303. package/features/security/authorization/AuthorizationContext/feature.d.ts +4 -1
  304. package/features/security/authorization/AuthorizationContext/feature.js +10 -9
  305. package/features/security/authorization/AuthorizationContext/feature.js.map +1 -1
  306. package/features/security/authorization/AuthorizationContext/index.js +1 -4
  307. package/features/security/authorization/Authorizer/abstractions.d.ts +1 -0
  308. package/features/security/authorization/Authorizer/abstractions.js +2 -1
  309. package/features/security/authorization/Authorizer/abstractions.js.map +1 -1
  310. package/features/security/authorization/Authorizer/index.js +0 -2
  311. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.d.ts +1 -1
  312. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.js +60 -64
  313. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.js.map +1 -1
  314. package/features/security/authorization/GroupsTeamsAuthorizer/RolesTeamsAuthorizer.js +26 -40
  315. package/features/security/authorization/GroupsTeamsAuthorizer/RolesTeamsAuthorizer.js.map +1 -1
  316. package/features/security/authorization/GroupsTeamsAuthorizer/abstractions.js +2 -1
  317. package/features/security/authorization/GroupsTeamsAuthorizer/abstractions.js.map +1 -1
  318. package/features/security/authorization/GroupsTeamsAuthorizer/feature.d.ts +4 -1
  319. package/features/security/authorization/GroupsTeamsAuthorizer/feature.js +7 -6
  320. package/features/security/authorization/GroupsTeamsAuthorizer/feature.js.map +1 -1
  321. package/features/security/login/abstractions.d.ts +3 -2
  322. package/features/security/login/abstractions.js +9 -6
  323. package/features/security/login/abstractions.js.map +1 -1
  324. package/features/security/login/index.js +0 -2
  325. package/features/security/permissions/createPermissionSchema.d.ts +2 -0
  326. package/features/security/permissions/createPermissionSchema.js +9 -0
  327. package/features/security/permissions/createPermissionSchema.js.map +1 -0
  328. package/features/security/permissions/createPermissions.d.ts +8 -0
  329. package/features/security/permissions/createPermissions.js +162 -0
  330. package/features/security/permissions/createPermissions.js.map +1 -0
  331. package/features/security/permissions/index.d.ts +3 -0
  332. package/features/security/permissions/index.js +2 -0
  333. package/features/security/permissions/types.d.ts +137 -0
  334. package/features/security/permissions/types.js +0 -0
  335. package/features/security/roles/CreateRole/CreateRoleUseCase.d.ts +1 -3
  336. package/features/security/roles/CreateRole/CreateRoleUseCase.js +53 -63
  337. package/features/security/roles/CreateRole/CreateRoleUseCase.js.map +1 -1
  338. package/features/security/roles/CreateRole/abstractions.d.ts +1 -0
  339. package/features/security/roles/CreateRole/abstractions.js +2 -1
  340. package/features/security/roles/CreateRole/abstractions.js.map +1 -1
  341. package/features/security/roles/CreateRole/events.d.ts +6 -4
  342. package/features/security/roles/CreateRole/events.js +17 -12
  343. package/features/security/roles/CreateRole/events.js.map +1 -1
  344. package/features/security/roles/CreateRole/feature.d.ts +4 -1
  345. package/features/security/roles/CreateRole/feature.js +6 -5
  346. package/features/security/roles/CreateRole/feature.js.map +1 -1
  347. package/features/security/roles/CreateRole/index.js +0 -2
  348. package/features/security/roles/CreateRole/schema.d.ts +2 -20
  349. package/features/security/roles/CreateRole/schema.js +8 -7
  350. package/features/security/roles/CreateRole/schema.js.map +1 -1
  351. package/features/security/roles/DeleteRole/DeleteRoleUseCase.js +35 -41
  352. package/features/security/roles/DeleteRole/DeleteRoleUseCase.js.map +1 -1
  353. package/features/security/roles/DeleteRole/abstractions.d.ts +1 -0
  354. package/features/security/roles/DeleteRole/abstractions.js +2 -1
  355. package/features/security/roles/DeleteRole/abstractions.js.map +1 -1
  356. package/features/security/roles/DeleteRole/events.d.ts +6 -4
  357. package/features/security/roles/DeleteRole/events.js +17 -12
  358. package/features/security/roles/DeleteRole/events.js.map +1 -1
  359. package/features/security/roles/DeleteRole/feature.d.ts +4 -1
  360. package/features/security/roles/DeleteRole/feature.js +6 -5
  361. package/features/security/roles/DeleteRole/feature.js.map +1 -1
  362. package/features/security/roles/DeleteRole/index.js +0 -2
  363. package/features/security/roles/GetRole/GetRoleUseCase.js +19 -18
  364. package/features/security/roles/GetRole/GetRoleUseCase.js.map +1 -1
  365. package/features/security/roles/GetRole/abstractions.d.ts +1 -0
  366. package/features/security/roles/GetRole/abstractions.js +2 -1
  367. package/features/security/roles/GetRole/abstractions.js.map +1 -1
  368. package/features/security/roles/GetRole/feature.d.ts +4 -1
  369. package/features/security/roles/GetRole/feature.js +6 -5
  370. package/features/security/roles/GetRole/feature.js.map +1 -1
  371. package/features/security/roles/GetRole/index.js +0 -2
  372. package/features/security/roles/Installer/RolesInstaller.js +38 -35
  373. package/features/security/roles/Installer/RolesInstaller.js.map +1 -1
  374. package/features/security/roles/ListRoles/ListRolesUseCase.js +18 -17
  375. package/features/security/roles/ListRoles/ListRolesUseCase.js.map +1 -1
  376. package/features/security/roles/ListRoles/abstractions.d.ts +1 -0
  377. package/features/security/roles/ListRoles/abstractions.js +2 -1
  378. package/features/security/roles/ListRoles/abstractions.js.map +1 -1
  379. package/features/security/roles/ListRoles/feature.d.ts +4 -1
  380. package/features/security/roles/ListRoles/feature.js +6 -5
  381. package/features/security/roles/ListRoles/feature.js.map +1 -1
  382. package/features/security/roles/ListRoles/index.js +0 -2
  383. package/features/security/roles/UpdateRole/UpdateRoleUseCase.js +43 -50
  384. package/features/security/roles/UpdateRole/UpdateRoleUseCase.js.map +1 -1
  385. package/features/security/roles/UpdateRole/abstractions.d.ts +1 -0
  386. package/features/security/roles/UpdateRole/abstractions.js +2 -1
  387. package/features/security/roles/UpdateRole/abstractions.js.map +1 -1
  388. package/features/security/roles/UpdateRole/events.d.ts +6 -4
  389. package/features/security/roles/UpdateRole/events.js +17 -12
  390. package/features/security/roles/UpdateRole/events.js.map +1 -1
  391. package/features/security/roles/UpdateRole/feature.d.ts +4 -1
  392. package/features/security/roles/UpdateRole/feature.js +6 -5
  393. package/features/security/roles/UpdateRole/feature.js.map +1 -1
  394. package/features/security/roles/UpdateRole/index.js +0 -2
  395. package/features/security/roles/UpdateRole/schema.d.ts +2 -18
  396. package/features/security/roles/UpdateRole/schema.js +7 -6
  397. package/features/security/roles/UpdateRole/schema.js.map +1 -1
  398. package/features/security/roles/feature.d.ts +4 -1
  399. package/features/security/roles/feature.js +15 -17
  400. package/features/security/roles/feature.js.map +1 -1
  401. package/features/security/roles/shared/RoleProvider.d.ts +13 -0
  402. package/features/security/roles/shared/RoleProvider.js +35 -0
  403. package/features/security/roles/shared/RoleProvider.js.map +1 -0
  404. package/features/security/roles/shared/RolesRepository.d.ts +3 -1
  405. package/features/security/roles/shared/RolesRepository.js +99 -115
  406. package/features/security/roles/shared/RolesRepository.js.map +1 -1
  407. package/features/security/roles/shared/abstractions.d.ts +19 -0
  408. package/features/security/roles/shared/abstractions.js +3 -1
  409. package/features/security/roles/shared/abstractions.js.map +1 -1
  410. package/features/security/roles/shared/decorators/ListCache.js +23 -22
  411. package/features/security/roles/shared/decorators/ListCache.js.map +1 -1
  412. package/features/security/roles/shared/decorators/RolesRepositoryCachingDecorator.js +40 -62
  413. package/features/security/roles/shared/decorators/RolesRepositoryCachingDecorator.js.map +1 -1
  414. package/features/security/roles/shared/errors.js +50 -56
  415. package/features/security/roles/shared/errors.js.map +1 -1
  416. package/features/security/roles/shared/types.js +0 -3
  417. package/features/security/shared/abstractions.d.ts +5 -14
  418. package/features/security/shared/abstractions.js +4 -19
  419. package/features/security/shared/abstractions.js.map +1 -1
  420. package/features/security/shared/errors.js +8 -8
  421. package/features/security/shared/errors.js.map +1 -1
  422. package/features/security/shared/index.js +0 -2
  423. package/features/security/teams/CreateTeam/CreateTeamUseCase.d.ts +1 -3
  424. package/features/security/teams/CreateTeam/CreateTeamUseCase.js +53 -63
  425. package/features/security/teams/CreateTeam/CreateTeamUseCase.js.map +1 -1
  426. package/features/security/teams/CreateTeam/abstractions.d.ts +1 -0
  427. package/features/security/teams/CreateTeam/abstractions.js +2 -1
  428. package/features/security/teams/CreateTeam/abstractions.js.map +1 -1
  429. package/features/security/teams/CreateTeam/events.d.ts +6 -4
  430. package/features/security/teams/CreateTeam/events.js +17 -12
  431. package/features/security/teams/CreateTeam/events.js.map +1 -1
  432. package/features/security/teams/CreateTeam/feature.d.ts +4 -1
  433. package/features/security/teams/CreateTeam/feature.js +6 -5
  434. package/features/security/teams/CreateTeam/feature.js.map +1 -1
  435. package/features/security/teams/CreateTeam/index.d.ts +1 -1
  436. package/features/security/teams/CreateTeam/index.js +1 -3
  437. package/features/security/teams/CreateTeam/schema.d.ts +2 -12
  438. package/features/security/teams/CreateTeam/schema.js +6 -5
  439. package/features/security/teams/CreateTeam/schema.js.map +1 -1
  440. package/features/security/teams/DeleteTeam/DeleteTeamUseCase.js +36 -46
  441. package/features/security/teams/DeleteTeam/DeleteTeamUseCase.js.map +1 -1
  442. package/features/security/teams/DeleteTeam/abstractions.d.ts +1 -0
  443. package/features/security/teams/DeleteTeam/abstractions.js +2 -1
  444. package/features/security/teams/DeleteTeam/abstractions.js.map +1 -1
  445. package/features/security/teams/DeleteTeam/events.d.ts +6 -4
  446. package/features/security/teams/DeleteTeam/events.js +17 -12
  447. package/features/security/teams/DeleteTeam/events.js.map +1 -1
  448. package/features/security/teams/DeleteTeam/feature.d.ts +4 -1
  449. package/features/security/teams/DeleteTeam/feature.js +6 -5
  450. package/features/security/teams/DeleteTeam/feature.js.map +1 -1
  451. package/features/security/teams/DeleteTeam/index.js +0 -2
  452. package/features/security/teams/GetTeam/GetTeamUseCase.js +17 -17
  453. package/features/security/teams/GetTeam/GetTeamUseCase.js.map +1 -1
  454. package/features/security/teams/GetTeam/abstractions.d.ts +1 -0
  455. package/features/security/teams/GetTeam/abstractions.js +2 -1
  456. package/features/security/teams/GetTeam/abstractions.js.map +1 -1
  457. package/features/security/teams/GetTeam/feature.d.ts +4 -1
  458. package/features/security/teams/GetTeam/feature.js +6 -5
  459. package/features/security/teams/GetTeam/feature.js.map +1 -1
  460. package/features/security/teams/GetTeam/index.js +0 -2
  461. package/features/security/teams/ListTeams/ListTeamsUseCase.js +20 -21
  462. package/features/security/teams/ListTeams/ListTeamsUseCase.js.map +1 -1
  463. package/features/security/teams/ListTeams/abstractions.d.ts +1 -0
  464. package/features/security/teams/ListTeams/abstractions.js +2 -1
  465. package/features/security/teams/ListTeams/abstractions.js.map +1 -1
  466. package/features/security/teams/ListTeams/feature.d.ts +4 -1
  467. package/features/security/teams/ListTeams/feature.js +6 -5
  468. package/features/security/teams/ListTeams/feature.js.map +1 -1
  469. package/features/security/teams/ListTeams/index.js +0 -2
  470. package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js +46 -58
  471. package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js.map +1 -1
  472. package/features/security/teams/UpdateTeam/abstractions.d.ts +1 -0
  473. package/features/security/teams/UpdateTeam/abstractions.js +2 -1
  474. package/features/security/teams/UpdateTeam/abstractions.js.map +1 -1
  475. package/features/security/teams/UpdateTeam/events.d.ts +6 -4
  476. package/features/security/teams/UpdateTeam/events.js +17 -12
  477. package/features/security/teams/UpdateTeam/events.js.map +1 -1
  478. package/features/security/teams/UpdateTeam/feature.d.ts +4 -1
  479. package/features/security/teams/UpdateTeam/feature.js +6 -5
  480. package/features/security/teams/UpdateTeam/feature.js.map +1 -1
  481. package/features/security/teams/UpdateTeam/index.js +0 -2
  482. package/features/security/teams/UpdateTeam/schema.d.ts +2 -10
  483. package/features/security/teams/UpdateTeam/schema.js +5 -4
  484. package/features/security/teams/UpdateTeam/schema.js.map +1 -1
  485. package/features/security/teams/feature.d.ts +4 -1
  486. package/features/security/teams/feature.js +15 -13
  487. package/features/security/teams/feature.js.map +1 -1
  488. package/features/security/teams/shared/TeamProvider.d.ts +13 -0
  489. package/features/security/teams/shared/TeamProvider.js +35 -0
  490. package/features/security/teams/shared/TeamProvider.js.map +1 -0
  491. package/features/security/teams/shared/TeamsRepository.js +102 -118
  492. package/features/security/teams/shared/TeamsRepository.js.map +1 -1
  493. package/features/security/teams/shared/abstractions.d.ts +18 -0
  494. package/features/security/teams/shared/abstractions.js +3 -1
  495. package/features/security/teams/shared/abstractions.js.map +1 -1
  496. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.d.ts +17 -0
  497. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js +54 -0
  498. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js.map +1 -0
  499. package/features/security/teams/shared/errors.js +62 -70
  500. package/features/security/teams/shared/errors.js.map +1 -1
  501. package/features/security/teams/shared/types.js +0 -3
  502. package/features/security/utils/AppPermissions.js +50 -89
  503. package/features/security/utils/AppPermissions.js.map +1 -1
  504. package/features/security/utils/IdentityValue.js +19 -22
  505. package/features/security/utils/IdentityValue.js.map +1 -1
  506. package/features/security/utils/filterOutCustomWbyAppsPermissions.js +24 -27
  507. package/features/security/utils/filterOutCustomWbyAppsPermissions.js.map +1 -1
  508. package/features/security/utils/getPermissionsFromRoles.d.ts +1 -1
  509. package/features/security/utils/getPermissionsFromRoles.js +5 -10
  510. package/features/security/utils/getPermissionsFromRoles.js.map +1 -1
  511. package/features/security/utils/isJwt.js +2 -1
  512. package/features/security/utils/isJwt.js.map +1 -1
  513. package/features/security/utils/verifyJwtUsingJwk.d.ts +2 -4
  514. package/features/security/utils/verifyJwtUsingJwk.js +7 -8
  515. package/features/security/utils/verifyJwtUsingJwk.js.map +1 -1
  516. package/features/serviceDiscovery/ServiceDiscovery.d.ts +17 -0
  517. package/features/serviceDiscovery/ServiceDiscovery.js +22 -0
  518. package/features/serviceDiscovery/ServiceDiscovery.js.map +1 -0
  519. package/features/serviceDiscovery/__tests__/ServiceDiscovery.test.d.ts +1 -0
  520. package/features/serviceDiscovery/__tests__/ServiceDiscovery.test.js +111 -0
  521. package/features/serviceDiscovery/__tests__/ServiceDiscovery.test.js.map +1 -0
  522. package/features/serviceDiscovery/index.d.ts +3 -0
  523. package/features/serviceDiscovery/index.js +1 -0
  524. package/features/system/InstallSystem/InstallSystemUseCase.js +45 -44
  525. package/features/system/InstallSystem/InstallSystemUseCase.js.map +1 -1
  526. package/features/system/InstallSystem/abstractions.d.ts +4 -5
  527. package/features/system/InstallSystem/abstractions.js +3 -18
  528. package/features/system/InstallSystem/abstractions.js.map +1 -1
  529. package/features/system/InstallSystem/errors.js +15 -16
  530. package/features/system/InstallSystem/errors.js.map +1 -1
  531. package/features/system/InstallSystem/events.js +9 -6
  532. package/features/system/InstallSystem/events.js.map +1 -1
  533. package/features/system/InstallSystem/feature.d.ts +5 -1
  534. package/features/system/InstallSystem/feature.js +6 -7
  535. package/features/system/InstallSystem/feature.js.map +1 -1
  536. package/features/system/InstallSystem/index.d.ts +1 -1
  537. package/features/system/InstallSystem/index.js +2 -6
  538. package/features/system/SystemFeature.d.ts +4 -1
  539. package/features/system/SystemFeature.js +6 -5
  540. package/features/system/SystemFeature.js.map +1 -1
  541. package/features/task/TaskController/abstractions.d.ts +1 -0
  542. package/features/task/TaskController/abstractions.js +2 -9
  543. package/features/task/TaskController/abstractions.js.map +1 -1
  544. package/features/task/TaskController/index.js +0 -2
  545. package/features/task/TaskDefinition/abstractions.d.ts +7 -1
  546. package/features/task/TaskDefinition/abstractions.js +8 -39
  547. package/features/task/TaskDefinition/abstractions.js.map +1 -1
  548. package/features/task/TaskDefinition/index.js +0 -2
  549. package/features/task/TaskService/abstractions.d.ts +1 -0
  550. package/features/task/TaskService/abstractions.js +9 -12
  551. package/features/task/TaskService/abstractions.js.map +1 -1
  552. package/features/task/TaskService/index.js +0 -2
  553. package/features/tenancy/CreateTenant/CreateTenantGateway.js +14 -11
  554. package/features/tenancy/CreateTenant/CreateTenantGateway.js.map +1 -1
  555. package/features/tenancy/CreateTenant/CreateTenantRepository.js +18 -15
  556. package/features/tenancy/CreateTenant/CreateTenantRepository.js.map +1 -1
  557. package/features/tenancy/CreateTenant/CreateTenantUseCase.d.ts +1 -1
  558. package/features/tenancy/CreateTenant/CreateTenantUseCase.js +44 -41
  559. package/features/tenancy/CreateTenant/CreateTenantUseCase.js.map +1 -1
  560. package/features/tenancy/CreateTenant/abstractions.d.ts +9 -7
  561. package/features/tenancy/CreateTenant/abstractions.js +6 -27
  562. package/features/tenancy/CreateTenant/abstractions.js.map +1 -1
  563. package/features/tenancy/CreateTenant/decorators/CreateTenantWithWcpIncrement.js +16 -15
  564. package/features/tenancy/CreateTenant/decorators/CreateTenantWithWcpIncrement.js.map +1 -1
  565. package/features/tenancy/CreateTenant/errors.js +8 -8
  566. package/features/tenancy/CreateTenant/errors.js.map +1 -1
  567. package/features/tenancy/CreateTenant/events.js +16 -11
  568. package/features/tenancy/CreateTenant/events.js.map +1 -1
  569. package/features/tenancy/CreateTenant/feature.d.ts +5 -1
  570. package/features/tenancy/CreateTenant/feature.js +9 -8
  571. package/features/tenancy/CreateTenant/feature.js.map +1 -1
  572. package/features/tenancy/CreateTenant/index.d.ts +1 -1
  573. package/features/tenancy/CreateTenant/index.js +2 -4
  574. package/features/tenancy/DeleteTenant/DeleteTenantGateway.js +15 -12
  575. package/features/tenancy/DeleteTenant/DeleteTenantGateway.js.map +1 -1
  576. package/features/tenancy/DeleteTenant/DeleteTenantRepository.js +22 -19
  577. package/features/tenancy/DeleteTenant/DeleteTenantRepository.js.map +1 -1
  578. package/features/tenancy/DeleteTenant/DeleteTenantUseCase.js +29 -27
  579. package/features/tenancy/DeleteTenant/DeleteTenantUseCase.js.map +1 -1
  580. package/features/tenancy/DeleteTenant/abstractions.d.ts +9 -4
  581. package/features/tenancy/DeleteTenant/abstractions.js +6 -5
  582. package/features/tenancy/DeleteTenant/abstractions.js.map +1 -1
  583. package/features/tenancy/DeleteTenant/decorators/DeleteTenantWithWcpDecrement.js +16 -13
  584. package/features/tenancy/DeleteTenant/decorators/DeleteTenantWithWcpDecrement.js.map +1 -1
  585. package/features/tenancy/DeleteTenant/events.js +16 -11
  586. package/features/tenancy/DeleteTenant/events.js.map +1 -1
  587. package/features/tenancy/DeleteTenant/feature.d.ts +5 -1
  588. package/features/tenancy/DeleteTenant/feature.js +9 -8
  589. package/features/tenancy/DeleteTenant/feature.js.map +1 -1
  590. package/features/tenancy/DeleteTenant/index.d.ts +1 -1
  591. package/features/tenancy/DeleteTenant/index.js +2 -4
  592. package/features/tenancy/GetRootTenant/GetRootTenantUseCase.js +15 -12
  593. package/features/tenancy/GetRootTenant/GetRootTenantUseCase.js.map +1 -1
  594. package/features/tenancy/GetRootTenant/abstractions.js +2 -4
  595. package/features/tenancy/GetRootTenant/abstractions.js.map +1 -1
  596. package/features/tenancy/GetRootTenant/feature.d.ts +5 -1
  597. package/features/tenancy/GetRootTenant/feature.js +6 -5
  598. package/features/tenancy/GetRootTenant/feature.js.map +1 -1
  599. package/features/tenancy/GetRootTenant/index.js +0 -2
  600. package/features/tenancy/GetTenantById/GetTenantByIdGateway.js +17 -12
  601. package/features/tenancy/GetTenantById/GetTenantByIdGateway.js.map +1 -1
  602. package/features/tenancy/GetTenantById/GetTenantByIdRepository.js +18 -19
  603. package/features/tenancy/GetTenantById/GetTenantByIdRepository.js.map +1 -1
  604. package/features/tenancy/GetTenantById/GetTenantByIdUseCase.js +17 -17
  605. package/features/tenancy/GetTenantById/GetTenantByIdUseCase.js.map +1 -1
  606. package/features/tenancy/GetTenantById/abstractions.d.ts +3 -0
  607. package/features/tenancy/GetTenantById/abstractions.js +4 -12
  608. package/features/tenancy/GetTenantById/abstractions.js.map +1 -1
  609. package/features/tenancy/GetTenantById/feature.d.ts +5 -1
  610. package/features/tenancy/GetTenantById/feature.js +8 -12
  611. package/features/tenancy/GetTenantById/feature.js.map +1 -1
  612. package/features/tenancy/GetTenantById/index.js +1 -3
  613. package/features/tenancy/InstallTenant/DependencyResolver.js +53 -65
  614. package/features/tenancy/InstallTenant/DependencyResolver.js.map +1 -1
  615. package/features/tenancy/InstallTenant/InstallTenantUseCase.d.ts +1 -1
  616. package/features/tenancy/InstallTenant/InstallTenantUseCase.js +95 -113
  617. package/features/tenancy/InstallTenant/InstallTenantUseCase.js.map +1 -1
  618. package/features/tenancy/InstallTenant/abstractions.d.ts +5 -11
  619. package/features/tenancy/InstallTenant/abstractions.js +4 -24
  620. package/features/tenancy/InstallTenant/abstractions.js.map +1 -1
  621. package/features/tenancy/InstallTenant/errors.js +15 -16
  622. package/features/tenancy/InstallTenant/errors.js.map +1 -1
  623. package/features/tenancy/InstallTenant/events.js +9 -6
  624. package/features/tenancy/InstallTenant/events.js.map +1 -1
  625. package/features/tenancy/InstallTenant/feature.d.ts +5 -1
  626. package/features/tenancy/InstallTenant/feature.js +6 -5
  627. package/features/tenancy/InstallTenant/feature.js.map +1 -1
  628. package/features/tenancy/InstallTenant/index.d.ts +1 -1
  629. package/features/tenancy/InstallTenant/index.js +1 -3
  630. package/features/tenancy/ListTenants/ListTenantsGateway.js +14 -11
  631. package/features/tenancy/ListTenants/ListTenantsGateway.js.map +1 -1
  632. package/features/tenancy/ListTenants/ListTenantsRepository.js +14 -12
  633. package/features/tenancy/ListTenants/ListTenantsRepository.js.map +1 -1
  634. package/features/tenancy/ListTenants/ListTenantsUseCase.js +16 -14
  635. package/features/tenancy/ListTenants/ListTenantsUseCase.js.map +1 -1
  636. package/features/tenancy/ListTenants/abstractions.js +4 -12
  637. package/features/tenancy/ListTenants/abstractions.js.map +1 -1
  638. package/features/tenancy/ListTenants/feature.d.ts +5 -1
  639. package/features/tenancy/ListTenants/feature.js +8 -7
  640. package/features/tenancy/ListTenants/feature.js.map +1 -1
  641. package/features/tenancy/ListTenants/index.js +1 -3
  642. package/features/tenancy/TenancyFeature.d.ts +4 -1
  643. package/features/tenancy/TenancyFeature.js +20 -26
  644. package/features/tenancy/TenancyFeature.js.map +1 -1
  645. package/features/tenancy/TenantContext/TenantContext.js +46 -48
  646. package/features/tenancy/TenantContext/TenantContext.js.map +1 -1
  647. package/features/tenancy/TenantContext/abstractions.d.ts +1 -0
  648. package/features/tenancy/TenantContext/abstractions.js +2 -1
  649. package/features/tenancy/TenantContext/abstractions.js.map +1 -1
  650. package/features/tenancy/TenantContext/errors.js +7 -7
  651. package/features/tenancy/TenantContext/errors.js.map +1 -1
  652. package/features/tenancy/TenantContext/feature.d.ts +4 -1
  653. package/features/tenancy/TenantContext/feature.js +6 -5
  654. package/features/tenancy/TenantContext/feature.js.map +1 -1
  655. package/features/tenancy/TenantContext/index.js +0 -2
  656. package/features/tenancy/UpdateTenant/UpdateTenantGateway.js +14 -11
  657. package/features/tenancy/UpdateTenant/UpdateTenantGateway.js.map +1 -1
  658. package/features/tenancy/UpdateTenant/UpdateTenantRepository.js +19 -16
  659. package/features/tenancy/UpdateTenant/UpdateTenantRepository.js.map +1 -1
  660. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.d.ts +2 -2
  661. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.js +37 -36
  662. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.js.map +1 -1
  663. package/features/tenancy/UpdateTenant/abstractions.d.ts +9 -4
  664. package/features/tenancy/UpdateTenant/abstractions.js +6 -5
  665. package/features/tenancy/UpdateTenant/abstractions.js.map +1 -1
  666. package/features/tenancy/UpdateTenant/events.js +16 -11
  667. package/features/tenancy/UpdateTenant/events.js.map +1 -1
  668. package/features/tenancy/UpdateTenant/feature.d.ts +5 -1
  669. package/features/tenancy/UpdateTenant/feature.js +8 -7
  670. package/features/tenancy/UpdateTenant/feature.js.map +1 -1
  671. package/features/tenancy/UpdateTenant/index.d.ts +1 -1
  672. package/features/tenancy/UpdateTenant/index.js +2 -4
  673. package/features/tenancy/shared/TenantCache.js +18 -17
  674. package/features/tenancy/shared/TenantCache.js.map +1 -1
  675. package/features/tenancy/shared/abstractions.js +2 -1
  676. package/features/tenancy/shared/abstractions.js.map +1 -1
  677. package/features/tenancy/shared/storageOperations.js +2 -5
  678. package/features/tenancy/shared/storageOperations.js.map +1 -1
  679. package/features/users/AdminUsersFeature.d.ts +4 -1
  680. package/features/users/AdminUsersFeature.js +15 -19
  681. package/features/users/AdminUsersFeature.js.map +1 -1
  682. package/features/users/CreateUser/CreateUserUseCase.js +65 -100
  683. package/features/users/CreateUser/CreateUserUseCase.js.map +1 -1
  684. package/features/users/CreateUser/abstractions.d.ts +1 -0
  685. package/features/users/CreateUser/abstractions.js +2 -13
  686. package/features/users/CreateUser/abstractions.js.map +1 -1
  687. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.d.ts +1 -1
  688. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.js +16 -15
  689. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.js.map +1 -1
  690. package/features/users/CreateUser/events.d.ts +6 -4
  691. package/features/users/CreateUser/events.js +17 -14
  692. package/features/users/CreateUser/events.js.map +1 -1
  693. package/features/users/CreateUser/feature.d.ts +4 -1
  694. package/features/users/CreateUser/feature.js +7 -6
  695. package/features/users/CreateUser/feature.js.map +1 -1
  696. package/features/users/CreateUser/index.js +0 -2
  697. package/features/users/CreateUser/schema.d.ts +4 -36
  698. package/features/users/CreateUser/schema.js +14 -18
  699. package/features/users/CreateUser/schema.js.map +1 -1
  700. package/features/users/DeleteUser/DeleteUserUseCase.js +35 -50
  701. package/features/users/DeleteUser/DeleteUserUseCase.js.map +1 -1
  702. package/features/users/DeleteUser/abstractions.d.ts +1 -0
  703. package/features/users/DeleteUser/abstractions.js +2 -13
  704. package/features/users/DeleteUser/abstractions.js.map +1 -1
  705. package/features/users/DeleteUser/decorators/DeleteUserWithWcpDecrement.js +15 -16
  706. package/features/users/DeleteUser/decorators/DeleteUserWithWcpDecrement.js.map +1 -1
  707. package/features/users/DeleteUser/errors.js +7 -7
  708. package/features/users/DeleteUser/errors.js.map +1 -1
  709. package/features/users/DeleteUser/events.d.ts +6 -4
  710. package/features/users/DeleteUser/events.js +17 -14
  711. package/features/users/DeleteUser/events.js.map +1 -1
  712. package/features/users/DeleteUser/feature.d.ts +4 -1
  713. package/features/users/DeleteUser/feature.js +7 -6
  714. package/features/users/DeleteUser/feature.js.map +1 -1
  715. package/features/users/DeleteUser/index.js +0 -2
  716. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.d.ts +3 -3
  717. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js +61 -75
  718. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js.map +1 -1
  719. package/features/users/ExternalIdpUserSync/feature.d.ts +4 -1
  720. package/features/users/ExternalIdpUserSync/feature.js +6 -5
  721. package/features/users/ExternalIdpUserSync/feature.js.map +1 -1
  722. package/features/users/ExternalIdpUserSync/index.js +0 -2
  723. package/features/users/GetIdentityProfile/GetIdentityProfileUseCase.js +29 -39
  724. package/features/users/GetIdentityProfile/GetIdentityProfileUseCase.js.map +1 -1
  725. package/features/users/GetIdentityProfile/abstractions.js +2 -11
  726. package/features/users/GetIdentityProfile/abstractions.js.map +1 -1
  727. package/features/users/GetIdentityProfile/feature.d.ts +4 -1
  728. package/features/users/GetIdentityProfile/feature.js +6 -5
  729. package/features/users/GetIdentityProfile/feature.js.map +1 -1
  730. package/features/users/GetIdentityProfile/index.js +0 -2
  731. package/features/users/GetIdentityProfile/types.js +0 -3
  732. package/features/users/GetUser/GetUserUseCase.js +19 -23
  733. package/features/users/GetUser/GetUserUseCase.js.map +1 -1
  734. package/features/users/GetUser/abstractions.d.ts +1 -0
  735. package/features/users/GetUser/abstractions.js +2 -11
  736. package/features/users/GetUser/abstractions.js.map +1 -1
  737. package/features/users/GetUser/feature.d.ts +4 -1
  738. package/features/users/GetUser/feature.js +6 -5
  739. package/features/users/GetUser/feature.js.map +1 -1
  740. package/features/users/GetUser/index.js +0 -2
  741. package/features/users/ListUserTeams/ListUserTeamsUseCase.js +33 -42
  742. package/features/users/ListUserTeams/ListUserTeamsUseCase.js.map +1 -1
  743. package/features/users/ListUserTeams/abstractions.d.ts +1 -0
  744. package/features/users/ListUserTeams/abstractions.js +2 -11
  745. package/features/users/ListUserTeams/abstractions.js.map +1 -1
  746. package/features/users/ListUserTeams/feature.d.ts +4 -1
  747. package/features/users/ListUserTeams/feature.js +6 -5
  748. package/features/users/ListUserTeams/feature.js.map +1 -1
  749. package/features/users/ListUserTeams/index.js +0 -2
  750. package/features/users/ListUsers/ListUsersUseCase.js +19 -23
  751. package/features/users/ListUsers/ListUsersUseCase.js.map +1 -1
  752. package/features/users/ListUsers/abstractions.d.ts +1 -0
  753. package/features/users/ListUsers/abstractions.js +2 -11
  754. package/features/users/ListUsers/abstractions.js.map +1 -1
  755. package/features/users/ListUsers/feature.d.ts +4 -1
  756. package/features/users/ListUsers/feature.js +6 -5
  757. package/features/users/ListUsers/feature.js.map +1 -1
  758. package/features/users/ListUsers/index.js +0 -2
  759. package/features/users/UpdateUser/UpdateUserUseCase.js +52 -74
  760. package/features/users/UpdateUser/UpdateUserUseCase.js.map +1 -1
  761. package/features/users/UpdateUser/abstractions.d.ts +1 -0
  762. package/features/users/UpdateUser/abstractions.js +2 -13
  763. package/features/users/UpdateUser/abstractions.js.map +1 -1
  764. package/features/users/UpdateUser/events.d.ts +6 -4
  765. package/features/users/UpdateUser/events.js +17 -14
  766. package/features/users/UpdateUser/events.js.map +1 -1
  767. package/features/users/UpdateUser/feature.d.ts +4 -1
  768. package/features/users/UpdateUser/feature.js +6 -5
  769. package/features/users/UpdateUser/feature.js.map +1 -1
  770. package/features/users/UpdateUser/index.js +0 -2
  771. package/features/users/UpdateUser/schema.d.ts +4 -30
  772. package/features/users/UpdateUser/schema.js +11 -10
  773. package/features/users/UpdateUser/schema.js.map +1 -1
  774. package/features/users/shared/AdminUsersRepository.js +104 -112
  775. package/features/users/shared/AdminUsersRepository.js.map +1 -1
  776. package/features/users/shared/abstractions.d.ts +1 -0
  777. package/features/users/shared/abstractions.js +2 -9
  778. package/features/users/shared/abstractions.js.map +1 -1
  779. package/features/users/shared/errors.js +40 -46
  780. package/features/users/shared/errors.js.map +1 -1
  781. package/features/users/shared/loaders.js +52 -66
  782. package/features/users/shared/loaders.js.map +1 -1
  783. package/features/users/shared/storageAbstractions.js +2 -2
  784. package/features/users/shared/storageAbstractions.js.map +1 -1
  785. package/features/users/shared/types.js +0 -3
  786. package/features/wcp/WcpContext/WcpContext.d.ts +10 -0
  787. package/features/wcp/WcpContext/WcpContext.js +153 -127
  788. package/features/wcp/WcpContext/WcpContext.js.map +1 -1
  789. package/features/wcp/WcpContext/abstractions.d.ts +1 -0
  790. package/features/wcp/WcpContext/abstractions.js +2 -6
  791. package/features/wcp/WcpContext/abstractions.js.map +1 -1
  792. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.d.ts +108 -0
  793. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js +168 -0
  794. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js.map +1 -0
  795. package/features/wcp/WcpContext/feature.d.ts +5 -1
  796. package/features/wcp/WcpContext/feature.js +6 -5
  797. package/features/wcp/WcpContext/feature.js.map +1 -1
  798. package/features/wcp/WcpContext/index.js +0 -2
  799. package/features/wcp/WcpContext/types.js +0 -3
  800. package/features/wcp/WcpContext/utils.js +35 -53
  801. package/features/wcp/WcpContext/utils.js.map +1 -1
  802. package/features/wcp/WcpFeature.d.ts +4 -1
  803. package/features/wcp/WcpFeature.js +8 -5
  804. package/features/wcp/WcpFeature.js.map +1 -1
  805. package/features/webhooks/Webhook/WebhookProvider.d.ts +12 -0
  806. package/features/webhooks/Webhook/WebhookProvider.js +28 -0
  807. package/features/webhooks/Webhook/WebhookProvider.js.map +1 -0
  808. package/features/webhooks/Webhook/abstractions/WebhookFactory.d.ts +16 -0
  809. package/features/webhooks/Webhook/abstractions/WebhookFactory.js +5 -0
  810. package/features/webhooks/Webhook/abstractions/WebhookFactory.js.map +1 -0
  811. package/features/webhooks/Webhook/abstractions/WebhookProvider.d.ts +9 -0
  812. package/features/webhooks/Webhook/abstractions/WebhookProvider.js +5 -0
  813. package/features/webhooks/Webhook/abstractions/WebhookProvider.js.map +1 -0
  814. package/features/webhooks/Webhook/feature.d.ts +4 -0
  815. package/features/webhooks/Webhook/feature.js +11 -0
  816. package/features/webhooks/Webhook/feature.js.map +1 -0
  817. package/features/webhooks/Webhook/index.d.ts +2 -0
  818. package/features/webhooks/Webhook/index.js +2 -0
  819. package/features/webhooks/WebhookDispatcher/NullWebhookDispatcher.d.ts +8 -0
  820. package/features/webhooks/WebhookDispatcher/NullWebhookDispatcher.js +11 -0
  821. package/features/webhooks/WebhookDispatcher/NullWebhookDispatcher.js.map +1 -0
  822. package/features/webhooks/WebhookDispatcher/abstractions.d.ts +12 -0
  823. package/features/webhooks/WebhookDispatcher/abstractions.js +5 -0
  824. package/features/webhooks/WebhookDispatcher/abstractions.js.map +1 -0
  825. package/features/webhooks/WebhookSignPayload/abstractions.d.ts +14 -0
  826. package/features/webhooks/WebhookSignPayload/abstractions.js +5 -0
  827. package/features/webhooks/WebhookSignPayload/abstractions.js.map +1 -0
  828. package/features/webhooks/WebhookVerifyPayload/abstractions.d.ts +11 -0
  829. package/features/webhooks/WebhookVerifyPayload/abstractions.js +5 -0
  830. package/features/webhooks/WebhookVerifyPayload/abstractions.js.map +1 -0
  831. package/features/webhooks/index.d.ts +5 -0
  832. package/features/webhooks/index.js +5 -0
  833. package/graphql/security/NotAuthorizedResponse.d.ts +1 -0
  834. package/graphql/security/NotAuthorizedResponse.js +11 -13
  835. package/graphql/security/NotAuthorizedResponse.js.map +1 -1
  836. package/graphql/security/ProfileMapper.js +12 -11
  837. package/graphql/security/ProfileMapper.js.map +1 -1
  838. package/graphql/security/apiKey.gql.js +38 -47
  839. package/graphql/security/apiKey.gql.js.map +1 -1
  840. package/graphql/security/base.gql.js +11 -10
  841. package/graphql/security/base.gql.js.map +1 -1
  842. package/graphql/security/identity.gql.js +87 -97
  843. package/graphql/security/identity.gql.js.map +1 -1
  844. package/graphql/security/index.js +13 -8
  845. package/graphql/security/index.js.map +1 -1
  846. package/graphql/security/role.gql.js +49 -57
  847. package/graphql/security/role.gql.js.map +1 -1
  848. package/graphql/security/team.gql.js +61 -69
  849. package/graphql/security/team.gql.js.map +1 -1
  850. package/graphql/system/createSystemGraphQL.js +31 -34
  851. package/graphql/system/createSystemGraphQL.js.map +1 -1
  852. package/graphql/users/user.gql.js +87 -105
  853. package/graphql/users/user.gql.js.map +1 -1
  854. package/graphql/wcp/graphql.js +27 -28
  855. package/graphql/wcp/graphql.js.map +1 -1
  856. package/idp/JwksCache.js +22 -28
  857. package/idp/JwksCache.js.map +1 -1
  858. package/idp/JwtAuthenticator.js +34 -46
  859. package/idp/JwtAuthenticator.js.map +1 -1
  860. package/idp/OidcJwtIdentityProvider.js +55 -82
  861. package/idp/OidcJwtIdentityProvider.js.map +1 -1
  862. package/idp/abstractions.d.ts +4 -0
  863. package/idp/abstractions.js +5 -10
  864. package/idp/abstractions.js.map +1 -1
  865. package/idp/feature.d.ts +4 -1
  866. package/idp/feature.js +8 -7
  867. package/idp/feature.js.map +1 -1
  868. package/idp/index.js +1 -3
  869. package/idp/types.js +0 -3
  870. package/index.js +0 -2
  871. package/legacy/security/LegacyContext.js +133 -186
  872. package/legacy/security/LegacyContext.js.map +1 -1
  873. package/legacy/security/createSecurityContext.js +4 -19
  874. package/legacy/security/createSecurityContext.js.map +1 -1
  875. package/legacy/security/plugins/apiKeyAuthentication.d.ts +1 -1
  876. package/legacy/security/plugins/apiKeyAuthentication.js +15 -24
  877. package/legacy/security/plugins/apiKeyAuthentication.js.map +1 -1
  878. package/legacy/security/plugins/apiKeyAuthorization.d.ts +1 -1
  879. package/legacy/security/plugins/apiKeyAuthorization.js +9 -18
  880. package/legacy/security/plugins/apiKeyAuthorization.js.map +1 -1
  881. package/legacy/security/plugins/authenticateUsingCookie.d.ts +1 -1
  882. package/legacy/security/plugins/authenticateUsingCookie.js +18 -22
  883. package/legacy/security/plugins/authenticateUsingCookie.js.map +1 -1
  884. package/legacy/security/plugins/authenticateUsingHttpHeader.d.ts +1 -1
  885. package/legacy/security/plugins/authenticateUsingHttpHeader.js +15 -18
  886. package/legacy/security/plugins/authenticateUsingHttpHeader.js.map +1 -1
  887. package/legacy/security/plugins/secureHeaders.js +28 -21
  888. package/legacy/security/plugins/secureHeaders.js.map +1 -1
  889. package/legacy/tenancy/LegacyContext.js +45 -52
  890. package/legacy/tenancy/LegacyContext.js.map +1 -1
  891. package/legacy/tenancy/createTenancyContext.js +22 -42
  892. package/legacy/tenancy/createTenancyContext.js.map +1 -1
  893. package/legacy/users/LegacyContext.js +39 -54
  894. package/legacy/users/LegacyContext.js.map +1 -1
  895. package/legacy/users/createAdminUsersContext.js +7 -7
  896. package/legacy/users/createAdminUsersContext.js.map +1 -1
  897. package/legacy/wcp/LegacyWcpContext.d.ts +10 -0
  898. package/legacy/wcp/LegacyWcpContext.js +95 -64
  899. package/legacy/wcp/LegacyWcpContext.js.map +1 -1
  900. package/legacy/wcp/context.d.ts +1 -3
  901. package/legacy/wcp/context.js +33 -37
  902. package/legacy/wcp/context.js.map +1 -1
  903. package/models/base/BaseModel.js +51 -56
  904. package/models/base/BaseModel.js.map +1 -1
  905. package/models/base/ModelBuilder.d.ts +2 -2
  906. package/models/base/ModelBuilder.js +66 -60
  907. package/models/base/ModelBuilder.js.map +1 -1
  908. package/models/base/ModelFactory.js +0 -3
  909. package/models/base/__tests__/ModelBuilder.test.js +437 -454
  910. package/models/base/__tests__/ModelBuilder.test.js.map +1 -1
  911. package/models/base/abstractions.js +0 -3
  912. package/models/cms/FieldBuilder.d.ts +3 -2
  913. package/models/cms/FieldBuilder.js +112 -126
  914. package/models/cms/FieldBuilder.js.map +1 -1
  915. package/models/cms/FieldBuilderRegistry.d.ts +1 -1
  916. package/models/cms/FieldBuilderRegistry.js +13 -12
  917. package/models/cms/FieldBuilderRegistry.js.map +1 -1
  918. package/models/cms/FieldDefinitionsBuilder.d.ts +1 -0
  919. package/models/cms/FieldDefinitionsBuilder.js +37 -56
  920. package/models/cms/FieldDefinitionsBuilder.js.map +1 -1
  921. package/models/cms/PrivateCmsModelBuilder.js +84 -89
  922. package/models/cms/PrivateCmsModelBuilder.js.map +1 -1
  923. package/models/cms/PrivatePage/Page.fields.js +7 -6
  924. package/models/cms/PrivatePage/Page.fields.js.map +1 -1
  925. package/models/cms/PrivatePage/PageModelBuilder.js +18 -15
  926. package/models/cms/PrivatePage/PageModelBuilder.js.map +1 -1
  927. package/models/cms/PrivatePage/PageModelFactory.js +20 -25
  928. package/models/cms/PrivatePage/PageModelFactory.js.map +1 -1
  929. package/models/cms/PrivatePage/__tests__/PageModelFactory.test.js +218 -234
  930. package/models/cms/PrivatePage/__tests__/PageModelFactory.test.js.map +1 -1
  931. package/models/cms/PrivatePage/__tests__/PagePublishingDecorator.js +33 -36
  932. package/models/cms/PrivatePage/__tests__/PagePublishingDecorator.js.map +1 -1
  933. package/models/cms/PrivatePage/__tests__/PageSeoDecorator.js +25 -26
  934. package/models/cms/PrivatePage/__tests__/PageSeoDecorator.js.map +1 -1
  935. package/models/cms/PrivatePage/abstractions.js +3 -9
  936. package/models/cms/PrivatePage/abstractions.js.map +1 -1
  937. package/models/cms/__tests__/PrivateCmsModelBuilder.test.js +173 -185
  938. package/models/cms/__tests__/PrivateCmsModelBuilder.test.js.map +1 -1
  939. package/models/cms/abstractions.d.ts +1 -1
  940. package/models/cms/abstractions.js +3 -20
  941. package/models/cms/abstractions.js.map +1 -1
  942. package/models/cms/fieldsBuilder.md +4 -2
  943. package/models/cms/types.js +0 -3
  944. package/models/simple/Page/PageModelBuilder.js +15 -14
  945. package/models/simple/Page/PageModelBuilder.js.map +1 -1
  946. package/models/simple/Page/PageModelFactory.js +16 -15
  947. package/models/simple/Page/PageModelFactory.js.map +1 -1
  948. package/models/simple/Page/__tests__/PageModelBuilderDecorator.js +21 -20
  949. package/models/simple/Page/__tests__/PageModelBuilderDecorator.js.map +1 -1
  950. package/models/simple/Page/__tests__/PageModelBuilderDecorator2.js +17 -16
  951. package/models/simple/Page/__tests__/PageModelBuilderDecorator2.js.map +1 -1
  952. package/models/simple/Page/__tests__/PageModelFactory.test.js +28 -28
  953. package/models/simple/Page/__tests__/PageModelFactory.test.js.map +1 -1
  954. package/models/simple/Page/abstractions.d.ts +1 -11
  955. package/models/simple/Page/abstractions.js +9 -8
  956. package/models/simple/Page/abstractions.js.map +1 -1
  957. package/package.json +30 -73
  958. package/types/core.js +0 -3
  959. package/types/security.d.ts +14 -11
  960. package/types/security.js +0 -3
  961. package/types/tenancy.js +0 -3
  962. package/types/users.js +0 -3
  963. package/domain/tenancy/errors.js.map +0 -1
  964. package/exports/api/buildParams.js.map +0 -1
  965. package/exports/api/eventPublisher.js.map +0 -1
  966. package/exports/api/graphql.js.map +0 -1
  967. package/exports/api/keyValueStore.js.map +0 -1
  968. package/exports/api/logger.js.map +0 -1
  969. package/exports/api/security/apiKey.d.ts +0 -7
  970. package/exports/api/security/apiKey.js +0 -9
  971. package/exports/api/security/apiKey.js.map +0 -1
  972. package/exports/api/security/authentication.js.map +0 -1
  973. package/exports/api/security/role.js.map +0 -1
  974. package/exports/api/security/user.js.map +0 -1
  975. package/exports/api/security.js.map +0 -1
  976. package/exports/api/system.js.map +0 -1
  977. package/exports/api/tasks.js.map +0 -1
  978. package/exports/api/tenancy.js.map +0 -1
  979. package/extensions/BuildParam.d.ts +0 -11
  980. package/extensions/BuildParam.js +0 -119
  981. package/extensions/BuildParam.js.map +0 -1
  982. package/extensions/GenericExtension.d.ts +0 -10
  983. package/extensions/GenericExtension.js +0 -7
  984. package/extensions/GenericExtension.js.map +0 -1
  985. package/extensions/eventHandlers/AfterAuthentication.d.ts +0 -10
  986. package/extensions/eventHandlers/AfterAuthentication.js +0 -9
  987. package/extensions/eventHandlers/AfterAuthentication.js.map +0 -1
  988. package/extensions/eventHandlers/ApiKeyAfterCreate.d.ts +0 -10
  989. package/extensions/eventHandlers/ApiKeyAfterCreate.js +0 -9
  990. package/extensions/eventHandlers/ApiKeyAfterCreate.js.map +0 -1
  991. package/extensions/eventHandlers/ApiKeyAfterDelete.d.ts +0 -10
  992. package/extensions/eventHandlers/ApiKeyAfterDelete.js +0 -9
  993. package/extensions/eventHandlers/ApiKeyAfterDelete.js.map +0 -1
  994. package/extensions/eventHandlers/ApiKeyAfterUpdate.d.ts +0 -10
  995. package/extensions/eventHandlers/ApiKeyAfterUpdate.js +0 -9
  996. package/extensions/eventHandlers/ApiKeyAfterUpdate.js.map +0 -1
  997. package/extensions/eventHandlers/ApiKeyBeforeCreate.d.ts +0 -10
  998. package/extensions/eventHandlers/ApiKeyBeforeCreate.js +0 -9
  999. package/extensions/eventHandlers/ApiKeyBeforeCreate.js.map +0 -1
  1000. package/extensions/eventHandlers/ApiKeyBeforeDelete.d.ts +0 -10
  1001. package/extensions/eventHandlers/ApiKeyBeforeDelete.js +0 -9
  1002. package/extensions/eventHandlers/ApiKeyBeforeDelete.js.map +0 -1
  1003. package/extensions/eventHandlers/ApiKeyBeforeUpdate.d.ts +0 -10
  1004. package/extensions/eventHandlers/ApiKeyBeforeUpdate.js +0 -9
  1005. package/extensions/eventHandlers/ApiKeyBeforeUpdate.js.map +0 -1
  1006. package/extensions/eventHandlers/BeforeAuthentication.d.ts +0 -10
  1007. package/extensions/eventHandlers/BeforeAuthentication.js +0 -9
  1008. package/extensions/eventHandlers/BeforeAuthentication.js.map +0 -1
  1009. package/extensions/eventHandlers/RoleAfterCreate.d.ts +0 -10
  1010. package/extensions/eventHandlers/RoleAfterCreate.js +0 -9
  1011. package/extensions/eventHandlers/RoleAfterCreate.js.map +0 -1
  1012. package/extensions/eventHandlers/RoleAfterDelete.d.ts +0 -10
  1013. package/extensions/eventHandlers/RoleAfterDelete.js +0 -9
  1014. package/extensions/eventHandlers/RoleAfterDelete.js.map +0 -1
  1015. package/extensions/eventHandlers/RoleAfterUpdate.d.ts +0 -10
  1016. package/extensions/eventHandlers/RoleAfterUpdate.js +0 -9
  1017. package/extensions/eventHandlers/RoleAfterUpdate.js.map +0 -1
  1018. package/extensions/eventHandlers/RoleBeforeCreate.d.ts +0 -10
  1019. package/extensions/eventHandlers/RoleBeforeCreate.js +0 -9
  1020. package/extensions/eventHandlers/RoleBeforeCreate.js.map +0 -1
  1021. package/extensions/eventHandlers/RoleBeforeDelete.d.ts +0 -10
  1022. package/extensions/eventHandlers/RoleBeforeDelete.js +0 -9
  1023. package/extensions/eventHandlers/RoleBeforeDelete.js.map +0 -1
  1024. package/extensions/eventHandlers/RoleBeforeUpdate.d.ts +0 -10
  1025. package/extensions/eventHandlers/RoleBeforeUpdate.js +0 -9
  1026. package/extensions/eventHandlers/RoleBeforeUpdate.js.map +0 -1
  1027. package/extensions/eventHandlers/SystemInstalled.d.ts +0 -10
  1028. package/extensions/eventHandlers/SystemInstalled.js +0 -9
  1029. package/extensions/eventHandlers/SystemInstalled.js.map +0 -1
  1030. package/extensions/eventHandlers/TeamAfterCreate.d.ts +0 -10
  1031. package/extensions/eventHandlers/TeamAfterCreate.js +0 -9
  1032. package/extensions/eventHandlers/TeamAfterCreate.js.map +0 -1
  1033. package/extensions/eventHandlers/TeamAfterDelete.d.ts +0 -10
  1034. package/extensions/eventHandlers/TeamAfterDelete.js +0 -9
  1035. package/extensions/eventHandlers/TeamAfterDelete.js.map +0 -1
  1036. package/extensions/eventHandlers/TeamAfterUpdate.d.ts +0 -10
  1037. package/extensions/eventHandlers/TeamAfterUpdate.js +0 -9
  1038. package/extensions/eventHandlers/TeamAfterUpdate.js.map +0 -1
  1039. package/extensions/eventHandlers/TeamBeforeCreate.d.ts +0 -10
  1040. package/extensions/eventHandlers/TeamBeforeCreate.js +0 -9
  1041. package/extensions/eventHandlers/TeamBeforeCreate.js.map +0 -1
  1042. package/extensions/eventHandlers/TeamBeforeDelete.d.ts +0 -10
  1043. package/extensions/eventHandlers/TeamBeforeDelete.js +0 -9
  1044. package/extensions/eventHandlers/TeamBeforeDelete.js.map +0 -1
  1045. package/extensions/eventHandlers/TeamBeforeUpdate.d.ts +0 -10
  1046. package/extensions/eventHandlers/TeamBeforeUpdate.js +0 -9
  1047. package/extensions/eventHandlers/TeamBeforeUpdate.js.map +0 -1
  1048. package/extensions/eventHandlers/TenantAfterCreate.d.ts +0 -10
  1049. package/extensions/eventHandlers/TenantAfterCreate.js +0 -9
  1050. package/extensions/eventHandlers/TenantAfterCreate.js.map +0 -1
  1051. package/extensions/eventHandlers/TenantAfterDelete.d.ts +0 -10
  1052. package/extensions/eventHandlers/TenantAfterDelete.js +0 -9
  1053. package/extensions/eventHandlers/TenantAfterDelete.js.map +0 -1
  1054. package/extensions/eventHandlers/TenantAfterUpdate.d.ts +0 -10
  1055. package/extensions/eventHandlers/TenantAfterUpdate.js +0 -9
  1056. package/extensions/eventHandlers/TenantAfterUpdate.js.map +0 -1
  1057. package/extensions/eventHandlers/TenantBeforeCreate.d.ts +0 -10
  1058. package/extensions/eventHandlers/TenantBeforeCreate.js +0 -9
  1059. package/extensions/eventHandlers/TenantBeforeCreate.js.map +0 -1
  1060. package/extensions/eventHandlers/TenantBeforeDelete.d.ts +0 -10
  1061. package/extensions/eventHandlers/TenantBeforeDelete.js +0 -9
  1062. package/extensions/eventHandlers/TenantBeforeDelete.js.map +0 -1
  1063. package/extensions/eventHandlers/TenantBeforeUpdate.d.ts +0 -10
  1064. package/extensions/eventHandlers/TenantBeforeUpdate.js +0 -9
  1065. package/extensions/eventHandlers/TenantBeforeUpdate.js.map +0 -1
  1066. package/extensions/eventHandlers/TenantInstalled.d.ts +0 -10
  1067. package/extensions/eventHandlers/TenantInstalled.js +0 -9
  1068. package/extensions/eventHandlers/TenantInstalled.js.map +0 -1
  1069. package/extensions/eventHandlers/UserAfterCreate.d.ts +0 -10
  1070. package/extensions/eventHandlers/UserAfterCreate.js +0 -9
  1071. package/extensions/eventHandlers/UserAfterCreate.js.map +0 -1
  1072. package/extensions/eventHandlers/UserAfterDelete.d.ts +0 -10
  1073. package/extensions/eventHandlers/UserAfterDelete.js +0 -9
  1074. package/extensions/eventHandlers/UserAfterDelete.js.map +0 -1
  1075. package/extensions/eventHandlers/UserAfterUpdate.d.ts +0 -10
  1076. package/extensions/eventHandlers/UserAfterUpdate.js +0 -9
  1077. package/extensions/eventHandlers/UserAfterUpdate.js.map +0 -1
  1078. package/extensions/eventHandlers/UserBeforeCreate.d.ts +0 -10
  1079. package/extensions/eventHandlers/UserBeforeCreate.js +0 -9
  1080. package/extensions/eventHandlers/UserBeforeCreate.js.map +0 -1
  1081. package/extensions/eventHandlers/UserBeforeDelete.d.ts +0 -10
  1082. package/extensions/eventHandlers/UserBeforeDelete.js +0 -9
  1083. package/extensions/eventHandlers/UserBeforeDelete.js.map +0 -1
  1084. package/extensions/eventHandlers/UserBeforeUpdate.d.ts +0 -10
  1085. package/extensions/eventHandlers/UserBeforeUpdate.js +0 -9
  1086. package/extensions/eventHandlers/UserBeforeUpdate.js.map +0 -1
  1087. package/extensions/eventHandlers/index.d.ts +0 -34
  1088. package/extensions/eventHandlers/index.js +0 -49
  1089. package/extensions/eventHandlers/index.js.map +0 -1
  1090. package/extensions/index.d.ts +0 -58
  1091. package/extensions/index.js +0 -49
  1092. package/extensions/index.js.map +0 -1
  1093. package/features/buildParams/index.js.map +0 -1
  1094. package/features/eventPublisher/index.js.map +0 -1
  1095. package/features/keyValueStore/index.js.map +0 -1
  1096. package/features/logger/index.js.map +0 -1
  1097. package/features/security/IdentityContext/index.js.map +0 -1
  1098. package/features/security/apiKeys/CreateApiKey/index.js.map +0 -1
  1099. package/features/security/apiKeys/DeleteApiKey/index.js.map +0 -1
  1100. package/features/security/apiKeys/GetApiKey/index.js.map +0 -1
  1101. package/features/security/apiKeys/GetApiKeyBySlug/index.js.map +0 -1
  1102. package/features/security/apiKeys/GetApiKeyByToken/index.js.map +0 -1
  1103. package/features/security/apiKeys/ListApiKeys/index.js.map +0 -1
  1104. package/features/security/apiKeys/UpdateApiKey/index.js.map +0 -1
  1105. package/features/security/apiKeys/shared/types.js.map +0 -1
  1106. package/features/security/authentication/AuthenticationContext/index.js.map +0 -1
  1107. package/features/security/authentication/Authenticator/index.js.map +0 -1
  1108. package/features/security/authorization/AuthorizationContext/index.js.map +0 -1
  1109. package/features/security/authorization/Authorizer/index.js.map +0 -1
  1110. package/features/security/login/index.js.map +0 -1
  1111. package/features/security/roles/CreateRole/index.js.map +0 -1
  1112. package/features/security/roles/DeleteRole/index.js.map +0 -1
  1113. package/features/security/roles/GetRole/index.js.map +0 -1
  1114. package/features/security/roles/ListRoles/index.js.map +0 -1
  1115. package/features/security/roles/UpdateRole/index.js.map +0 -1
  1116. package/features/security/roles/shared/types.js.map +0 -1
  1117. package/features/security/shared/abstractions.ts.bak +0 -52
  1118. package/features/security/shared/index.js.map +0 -1
  1119. package/features/security/teams/CreateTeam/index.js.map +0 -1
  1120. package/features/security/teams/DeleteTeam/index.js.map +0 -1
  1121. package/features/security/teams/GetTeam/index.js.map +0 -1
  1122. package/features/security/teams/ListTeams/index.js.map +0 -1
  1123. package/features/security/teams/UpdateTeam/index.js.map +0 -1
  1124. package/features/security/teams/shared/types.js.map +0 -1
  1125. package/features/system/InstallSystem/index.js.map +0 -1
  1126. package/features/task/TaskController/index.js.map +0 -1
  1127. package/features/task/TaskDefinition/index.js.map +0 -1
  1128. package/features/task/TaskService/index.js.map +0 -1
  1129. package/features/tenancy/CreateTenant/index.js.map +0 -1
  1130. package/features/tenancy/DeleteTenant/index.js.map +0 -1
  1131. package/features/tenancy/GetRootTenant/index.js.map +0 -1
  1132. package/features/tenancy/GetTenantById/index.js.map +0 -1
  1133. package/features/tenancy/InstallTenant/index.js.map +0 -1
  1134. package/features/tenancy/ListTenants/index.js.map +0 -1
  1135. package/features/tenancy/TenantContext/index.js.map +0 -1
  1136. package/features/tenancy/UpdateTenant/index.js.map +0 -1
  1137. package/features/users/CreateUser/index.js.map +0 -1
  1138. package/features/users/DeleteUser/index.js.map +0 -1
  1139. package/features/users/ExternalIdpUserSync/index.js.map +0 -1
  1140. package/features/users/GetIdentityProfile/index.js.map +0 -1
  1141. package/features/users/GetIdentityProfile/types.js.map +0 -1
  1142. package/features/users/GetUser/index.js.map +0 -1
  1143. package/features/users/ListUserTeams/index.js.map +0 -1
  1144. package/features/users/ListUsers/index.js.map +0 -1
  1145. package/features/users/UpdateUser/index.js.map +0 -1
  1146. package/features/users/shared/types.js.map +0 -1
  1147. package/features/wcp/WcpContext/index.js.map +0 -1
  1148. package/features/wcp/WcpContext/types.js.map +0 -1
  1149. package/idp/index.js.map +0 -1
  1150. package/idp/types.js.map +0 -1
  1151. package/index.js.map +0 -1
  1152. package/legacy/security/plugins/SecurityRolePlugin.d.ts +0 -16
  1153. package/legacy/security/plugins/SecurityRolePlugin.js +0 -33
  1154. package/legacy/security/plugins/SecurityRolePlugin.js.map +0 -1
  1155. package/legacy/security/plugins/SecurityTeamPlugin.d.ts +0 -16
  1156. package/legacy/security/plugins/SecurityTeamPlugin.js +0 -33
  1157. package/legacy/security/plugins/SecurityTeamPlugin.js.map +0 -1
  1158. package/models/base/ModelFactory.js.map +0 -1
  1159. package/models/base/abstractions.js.map +0 -1
  1160. package/models/cms/types.js.map +0 -1
  1161. package/types/core.js.map +0 -1
  1162. package/types/security.js.map +0 -1
  1163. package/types/tenancy.js.map +0 -1
  1164. package/types/users.js.map +0 -1
  1165. /package/exports/api/{buildParams.d.ts → build-params.js} +0 -0
  1166. /package/exports/api/{eventPublisher.d.ts → event-publisher.js} +0 -0
  1167. /package/exports/api/{keyValueStore.d.ts → key-value-store.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/serviceDiscovery/__tests__/ServiceDiscovery.test.js","sources":["../../../../src/features/serviceDiscovery/__tests__/ServiceDiscovery.test.ts"],"sourcesContent":["import { describe, it, expect, beforeEach } from \"vitest\";\nimport { ServiceDiscovery } from \"../ServiceDiscovery.js\";\nimport type { IServiceManifestLoader } from \"../ServiceDiscovery.js\";\n\ndescribe(\"ServiceDiscovery\", () => {\n beforeEach(() => {\n ServiceDiscovery.clear();\n });\n\n it(\"should throw if no loader is set\", async () => {\n (ServiceDiscovery as any).loader = undefined;\n\n await expect(ServiceDiscovery.load()).rejects.toThrow(\n \"ServiceDiscovery loader not configured\"\n );\n });\n\n it(\"should load manifests and combine them by name\", async () => {\n const loader: IServiceManifestLoader = {\n async load() {\n return [\n { name: \"api\", manifest: { cloudfront: { distributionId: \"123\" } } },\n { name: \"core\", manifest: { bucket: { name: \"my-bucket\" } } }\n ];\n }\n };\n\n ServiceDiscovery.setLoader(loader);\n\n const result = await ServiceDiscovery.load();\n\n expect(result).toEqual({\n api: { cloudfront: { distributionId: \"123\" } },\n core: { bucket: { name: \"my-bucket\" } }\n });\n });\n\n it(\"should cache the result and not call loader again\", async () => {\n let callCount = 0;\n const loader: IServiceManifestLoader = {\n async load() {\n callCount++;\n return [{ name: \"api\", manifest: { url: \"https://example.com\" } }];\n }\n };\n\n ServiceDiscovery.setLoader(loader);\n\n await ServiceDiscovery.load();\n await ServiceDiscovery.load();\n await ServiceDiscovery.load();\n\n expect(callCount).toBe(1);\n });\n\n it(\"should return undefined when loader returns undefined\", async () => {\n const loader: IServiceManifestLoader = {\n async load() {\n return undefined;\n }\n };\n\n ServiceDiscovery.setLoader(loader);\n\n const result = await ServiceDiscovery.load();\n expect(result).toBeUndefined();\n });\n\n it(\"should reload after clear()\", async () => {\n let callCount = 0;\n const loader: IServiceManifestLoader = {\n async load() {\n callCount++;\n return [{ name: \"api\", manifest: { version: callCount } }];\n }\n };\n\n ServiceDiscovery.setLoader(loader);\n\n const first = await ServiceDiscovery.load();\n expect(first).toEqual({ api: { version: 1 } });\n\n ServiceDiscovery.clear();\n\n const second = await ServiceDiscovery.load();\n expect(second).toEqual({ api: { version: 2 } });\n expect(callCount).toBe(2);\n });\n});\n"],"names":["describe","beforeEach","ServiceDiscovery","it","undefined","expect","loader","result","callCount","first","second"],"mappings":";;AAIAA,SAAS,oBAAoB;IACzBC,WAAW;QACPC,iBAAiB,KAAK;IAC1B;IAEAC,GAAG,oCAAoC;QAClCD,iBAAAA,MAA+B,GAAGE;QAEnC,MAAMC,OAAOH,iBAAiB,IAAI,IAAI,OAAO,CAAC,OAAO,CACjD;IAER;IAEAC,GAAG,kDAAkD;QACjD,MAAMG,SAAiC;YACnC,MAAM;gBACF,OAAO;oBACH;wBAAE,MAAM;wBAAO,UAAU;4BAAE,YAAY;gCAAE,gBAAgB;4BAAM;wBAAE;oBAAE;oBACnE;wBAAE,MAAM;wBAAQ,UAAU;4BAAE,QAAQ;gCAAE,MAAM;4BAAY;wBAAE;oBAAE;iBAC/D;YACL;QACJ;QAEAJ,iBAAiB,SAAS,CAACI;QAE3B,MAAMC,SAAS,MAAML,iBAAiB,IAAI;QAE1CG,OAAOE,QAAQ,OAAO,CAAC;YACnB,KAAK;gBAAE,YAAY;oBAAE,gBAAgB;gBAAM;YAAE;YAC7C,MAAM;gBAAE,QAAQ;oBAAE,MAAM;gBAAY;YAAE;QAC1C;IACJ;IAEAJ,GAAG,qDAAqD;QACpD,IAAIK,YAAY;QAChB,MAAMF,SAAiC;YACnC,MAAM;gBACFE;gBACA,OAAO;oBAAC;wBAAE,MAAM;wBAAO,UAAU;4BAAE,KAAK;wBAAsB;oBAAE;iBAAE;YACtE;QACJ;QAEAN,iBAAiB,SAAS,CAACI;QAE3B,MAAMJ,iBAAiB,IAAI;QAC3B,MAAMA,iBAAiB,IAAI;QAC3B,MAAMA,iBAAiB,IAAI;QAE3BG,OAAOG,WAAW,IAAI,CAAC;IAC3B;IAEAL,GAAG,yDAAyD;QACxD,MAAMG,SAAiC;YACnC,MAAM,SAEN;QACJ;QAEAJ,iBAAiB,SAAS,CAACI;QAE3B,MAAMC,SAAS,MAAML,iBAAiB,IAAI;QAC1CG,OAAOE,QAAQ,aAAa;IAChC;IAEAJ,GAAG,+BAA+B;QAC9B,IAAIK,YAAY;QAChB,MAAMF,SAAiC;YACnC,MAAM;gBACFE;gBACA,OAAO;oBAAC;wBAAE,MAAM;wBAAO,UAAU;4BAAE,SAASA;wBAAU;oBAAE;iBAAE;YAC9D;QACJ;QAEAN,iBAAiB,SAAS,CAACI;QAE3B,MAAMG,QAAQ,MAAMP,iBAAiB,IAAI;QACzCG,OAAOI,OAAO,OAAO,CAAC;YAAE,KAAK;gBAAE,SAAS;YAAE;QAAE;QAE5CP,iBAAiB,KAAK;QAEtB,MAAMQ,SAAS,MAAMR,iBAAiB,IAAI;QAC1CG,OAAOK,QAAQ,OAAO,CAAC;YAAE,KAAK;gBAAE,SAAS;YAAE;QAAE;QAC7CL,OAAOG,WAAW,IAAI,CAAC;IAC3B;AACJ"}
@@ -0,0 +1,3 @@
1
+ export { ServiceDiscovery } from "./ServiceDiscovery.js";
2
+ export type { IServiceManifestLoader } from "./ServiceDiscovery.js";
3
+ export type { IServiceManifest } from "./ServiceDiscovery.js";
@@ -0,0 +1 @@
1
+ export { ServiceDiscovery } from "./ServiceDiscovery.js";
@@ -1,6 +1,6 @@
1
1
  import { Result, createImplementation } from "@webiny/feature/api";
2
2
  import { EventPublisher } from "../../eventPublisher/index.js";
3
- import { InstallSystemUseCase as UseCaseAbstraction } from "./abstractions.js";
3
+ import { InstallSystemUseCase } from "./abstractions.js";
4
4
  import { InstallTenantUseCase } from "../../tenancy/InstallTenant/index.js";
5
5
  import { GetRootTenantUseCase } from "../../tenancy/GetRootTenant/index.js";
6
6
  import { CreateTenantUseCase } from "../../tenancy/CreateTenant/index.js";
@@ -10,52 +10,53 @@ import { IdentityContext } from "../../security/IdentityContext/index.js";
10
10
  import { SystemAlreadyInstalledError } from "./errors.js";
11
11
  import { SystemInstalledEvent } from "./events.js";
12
12
  class InstallSystemUseCaseImpl {
13
- constructor(identityContext, tenantContext, eventPublisher, installTenantUseCase, getRootTenantUseCase, createTenantUseCase, deleteTenantUseCase) {
14
- this.identityContext = identityContext;
15
- this.tenantContext = tenantContext;
16
- this.eventPublisher = eventPublisher;
17
- this.installTenantUseCase = installTenantUseCase;
18
- this.getRootTenantUseCase = getRootTenantUseCase;
19
- this.createTenantUseCase = createTenantUseCase;
20
- this.deleteTenantUseCase = deleteTenantUseCase;
21
- }
22
- async execute(installationInput) {
23
- const rootTenantResult = await this.getRootTenantUseCase.execute();
24
- if (rootTenantResult.isOk()) {
25
- return Result.fail(new SystemAlreadyInstalledError());
13
+ constructor(identityContext, tenantContext, eventPublisher, installTenantUseCase, getRootTenantUseCase, createTenantUseCase, deleteTenantUseCase){
14
+ this.identityContext = identityContext;
15
+ this.tenantContext = tenantContext;
16
+ this.eventPublisher = eventPublisher;
17
+ this.installTenantUseCase = installTenantUseCase;
18
+ this.getRootTenantUseCase = getRootTenantUseCase;
19
+ this.createTenantUseCase = createTenantUseCase;
20
+ this.deleteTenantUseCase = deleteTenantUseCase;
26
21
  }
27
- const createTenantResult = await this.createTenantUseCase.execute({
28
- id: "root",
29
- name: "Root",
30
- tags: [],
31
- description: "The top-level Webiny tenant.",
32
- parent: ""
33
- });
34
- if (createTenantResult.isFail()) {
35
- return Result.fail(createTenantResult.error);
22
+ async execute(installationInput) {
23
+ const rootTenantResult = await this.getRootTenantUseCase.execute();
24
+ if (rootTenantResult.isOk()) return Result.fail(new SystemAlreadyInstalledError());
25
+ const createTenantResult = await this.createTenantUseCase.execute({
26
+ id: "root",
27
+ name: "Root",
28
+ tags: [],
29
+ description: "The top-level Webiny tenant.",
30
+ parent: ""
31
+ });
32
+ if (createTenantResult.isFail()) return Result.fail(createTenantResult.error);
33
+ const rootTenant = createTenantResult.value;
34
+ this.tenantContext.setTenant(rootTenant);
35
+ const installResult = await this.identityContext.withoutAuthorization(()=>this.installTenantUseCase.execute({
36
+ tenant: rootTenant,
37
+ installationInput
38
+ }));
39
+ if (installResult.isOk()) {
40
+ await this.eventPublisher.publish(new SystemInstalledEvent());
41
+ return Result.ok();
42
+ }
43
+ await this.deleteTenantUseCase.execute("root");
44
+ return Result.fail(installResult.error);
36
45
  }
37
- const rootTenant = createTenantResult.value;
38
- this.tenantContext.setTenant(rootTenant);
39
- const installResult = await this.identityContext.withoutAuthorization(() => {
40
- return this.installTenantUseCase.execute({
41
- tenant: rootTenant,
42
- installationInput
43
- });
44
- });
45
- if (installResult.isOk()) {
46
- await this.eventPublisher.publish(new SystemInstalledEvent());
47
- return Result.ok();
48
- }
49
-
50
- // If tenant installation failed, delete the root tenant
51
- await this.deleteTenantUseCase.execute("root");
52
- return Result.fail(installResult.error);
53
- }
54
46
  }
55
- export const InstallSystemUseCase = createImplementation({
56
- abstraction: UseCaseAbstraction,
57
- implementation: InstallSystemUseCaseImpl,
58
- dependencies: [IdentityContext, TenantContext, EventPublisher, InstallTenantUseCase, GetRootTenantUseCase, CreateTenantUseCase, DeleteTenantUseCase]
47
+ const InstallSystemUseCase_InstallSystemUseCase = createImplementation({
48
+ abstraction: InstallSystemUseCase,
49
+ implementation: InstallSystemUseCaseImpl,
50
+ dependencies: [
51
+ IdentityContext,
52
+ TenantContext,
53
+ EventPublisher,
54
+ InstallTenantUseCase,
55
+ GetRootTenantUseCase,
56
+ CreateTenantUseCase,
57
+ DeleteTenantUseCase
58
+ ]
59
59
  });
60
+ export { InstallSystemUseCase_InstallSystemUseCase as InstallSystemUseCase };
60
61
 
61
62
  //# sourceMappingURL=InstallSystemUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","createImplementation","EventPublisher","InstallSystemUseCase","UseCaseAbstraction","InstallTenantUseCase","GetRootTenantUseCase","CreateTenantUseCase","DeleteTenantUseCase","TenantContext","IdentityContext","SystemAlreadyInstalledError","SystemInstalledEvent","InstallSystemUseCaseImpl","constructor","identityContext","tenantContext","eventPublisher","installTenantUseCase","getRootTenantUseCase","createTenantUseCase","deleteTenantUseCase","execute","installationInput","rootTenantResult","isOk","fail","createTenantResult","id","name","tags","description","parent","isFail","error","rootTenant","value","setTenant","installResult","withoutAuthorization","tenant","publish","ok","abstraction","implementation","dependencies"],"sources":["InstallSystemUseCase.ts"],"sourcesContent":["import { Result, createImplementation } from \"@webiny/feature/api\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport { InstallSystemUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { InstallTenantUseCase } from \"~/features/tenancy/InstallTenant/index.js\";\nimport { GetRootTenantUseCase } from \"~/features/tenancy/GetRootTenant/index.js\";\nimport { CreateTenantUseCase } from \"~/features/tenancy/CreateTenant/index.js\";\nimport { DeleteTenantUseCase } from \"~/features/tenancy/DeleteTenant/index.js\";\nimport { TenantContext } from \"~/features/tenancy/TenantContext/index.js\";\nimport { IdentityContext } from \"~/features/security/IdentityContext/index.js\";\nimport type { InstallSystemInput } from \"./abstractions.js\";\nimport { SystemAlreadyInstalledError } from \"./errors.js\";\nimport { SystemInstalledEvent } from \"./events.js\";\n\nclass InstallSystemUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private tenantContext: TenantContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private installTenantUseCase: InstallTenantUseCase.Interface,\n private getRootTenantUseCase: GetRootTenantUseCase.Interface,\n private createTenantUseCase: CreateTenantUseCase.Interface,\n private deleteTenantUseCase: DeleteTenantUseCase.Interface\n ) {}\n\n async execute(installationInput: InstallSystemInput) {\n const rootTenantResult = await this.getRootTenantUseCase.execute();\n\n if (rootTenantResult.isOk()) {\n return Result.fail(new SystemAlreadyInstalledError());\n }\n\n const createTenantResult = await this.createTenantUseCase.execute({\n id: \"root\",\n name: \"Root\",\n tags: [],\n description: \"The top-level Webiny tenant.\",\n parent: \"\"\n });\n\n if (createTenantResult.isFail()) {\n return Result.fail(createTenantResult.error);\n }\n\n const rootTenant = createTenantResult.value;\n\n this.tenantContext.setTenant(rootTenant);\n\n const installResult = await this.identityContext.withoutAuthorization(() => {\n return this.installTenantUseCase.execute({\n tenant: rootTenant,\n installationInput\n });\n });\n\n if (installResult.isOk()) {\n await this.eventPublisher.publish(new SystemInstalledEvent());\n return Result.ok();\n }\n\n // If tenant installation failed, delete the root tenant\n await this.deleteTenantUseCase.execute(\"root\");\n\n return Result.fail(installResult.error);\n }\n}\n\nexport const InstallSystemUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: InstallSystemUseCaseImpl,\n dependencies: [\n IdentityContext,\n TenantContext,\n EventPublisher,\n InstallTenantUseCase,\n GetRootTenantUseCase,\n CreateTenantUseCase,\n DeleteTenantUseCase\n ]\n});\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,oBAAoB,QAAQ,qBAAqB;AAClE,SAASC,cAAc;AACvB,SAASC,oBAAoB,IAAIC,kBAAkB;AACnD,SAASC,oBAAoB;AAC7B,SAASC,oBAAoB;AAC7B,SAASC,mBAAmB;AAC5B,SAASC,mBAAmB;AAC5B,SAASC,aAAa;AACtB,SAASC,eAAe;AAExB,SAASC,2BAA2B;AACpC,SAASC,oBAAoB;AAE7B,MAAMC,wBAAwB,CAAyC;EACnEC,WAAWA,CACCC,eAA0C,EAC1CC,aAAsC,EACtCC,cAAwC,EACxCC,oBAAoD,EACpDC,oBAAoD,EACpDC,mBAAkD,EAClDC,mBAAkD,EAC5D;IAAA,KAPUN,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,aAAsC,GAAtCA,aAAsC;IAAA,KACtCC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,oBAAoD,GAApDA,oBAAoD;IAAA,KACpDC,oBAAoD,GAApDA,oBAAoD;IAAA,KACpDC,mBAAkD,GAAlDA,mBAAkD;IAAA,KAClDC,mBAAkD,GAAlDA,mBAAkD;EAC3D;EAEH,MAAMC,OAAOA,CAACC,iBAAqC,EAAE;IACjD,MAAMC,gBAAgB,GAAG,MAAM,IAAI,CAACL,oBAAoB,CAACG,OAAO,CAAC,CAAC;IAElE,IAAIE,gBAAgB,CAACC,IAAI,CAAC,CAAC,EAAE;MACzB,OAAOzB,MAAM,CAAC0B,IAAI,CAAC,IAAIf,2BAA2B,CAAC,CAAC,CAAC;IACzD;IAEA,MAAMgB,kBAAkB,GAAG,MAAM,IAAI,CAACP,mBAAmB,CAACE,OAAO,CAAC;MAC9DM,EAAE,EAAE,MAAM;MACVC,IAAI,EAAE,MAAM;MACZC,IAAI,EAAE,EAAE;MACRC,WAAW,EAAE,8BAA8B;MAC3CC,MAAM,EAAE;IACZ,CAAC,CAAC;IAEF,IAAIL,kBAAkB,CAACM,MAAM,CAAC,CAAC,EAAE;MAC7B,OAAOjC,MAAM,CAAC0B,IAAI,CAACC,kBAAkB,CAACO,KAAK,CAAC;IAChD;IAEA,MAAMC,UAAU,GAAGR,kBAAkB,CAACS,KAAK;IAE3C,IAAI,CAACpB,aAAa,CAACqB,SAAS,CAACF,UAAU,CAAC;IAExC,MAAMG,aAAa,GAAG,MAAM,IAAI,CAACvB,eAAe,CAACwB,oBAAoB,CAAC,MAAM;MACxE,OAAO,IAAI,CAACrB,oBAAoB,CAACI,OAAO,CAAC;QACrCkB,MAAM,EAAEL,UAAU;QAClBZ;MACJ,CAAC,CAAC;IACN,CAAC,CAAC;IAEF,IAAIe,aAAa,CAACb,IAAI,CAAC,CAAC,EAAE;MACtB,MAAM,IAAI,CAACR,cAAc,CAACwB,OAAO,CAAC,IAAI7B,oBAAoB,CAAC,CAAC,CAAC;MAC7D,OAAOZ,MAAM,CAAC0C,EAAE,CAAC,CAAC;IACtB;;IAEA;IACA,MAAM,IAAI,CAACrB,mBAAmB,CAACC,OAAO,CAAC,MAAM,CAAC;IAE9C,OAAOtB,MAAM,CAAC0B,IAAI,CAACY,aAAa,CAACJ,KAAK,CAAC;EAC3C;AACJ;AAEA,OAAO,MAAM/B,oBAAoB,GAAGF,oBAAoB,CAAC;EACrD0C,WAAW,EAAEvC,kBAAkB;EAC/BwC,cAAc,EAAE/B,wBAAwB;EACxCgC,YAAY,EAAE,CACVnC,eAAe,EACfD,aAAa,EACbP,cAAc,EACdG,oBAAoB,EACpBC,oBAAoB,EACpBC,mBAAmB,EACnBC,mBAAmB;AAE3B,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/system/InstallSystem/InstallSystemUseCase.js","sources":["../../../../src/features/system/InstallSystem/InstallSystemUseCase.ts"],"sourcesContent":["import { Result, createImplementation } from \"@webiny/feature/api\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport { InstallSystemUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { InstallTenantUseCase } from \"~/features/tenancy/InstallTenant/index.js\";\nimport { GetRootTenantUseCase } from \"~/features/tenancy/GetRootTenant/index.js\";\nimport { CreateTenantUseCase } from \"~/features/tenancy/CreateTenant/index.js\";\nimport { DeleteTenantUseCase } from \"~/features/tenancy/DeleteTenant/index.js\";\nimport { TenantContext } from \"~/features/tenancy/TenantContext/index.js\";\nimport { IdentityContext } from \"~/features/security/IdentityContext/index.js\";\nimport type { InstallSystemInput } from \"./abstractions.js\";\nimport { SystemAlreadyInstalledError } from \"./errors.js\";\nimport { SystemInstalledEvent } from \"./events.js\";\n\nclass InstallSystemUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private tenantContext: TenantContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private installTenantUseCase: InstallTenantUseCase.Interface,\n private getRootTenantUseCase: GetRootTenantUseCase.Interface,\n private createTenantUseCase: CreateTenantUseCase.Interface,\n private deleteTenantUseCase: DeleteTenantUseCase.Interface\n ) {}\n\n async execute(installationInput: InstallSystemInput) {\n const rootTenantResult = await this.getRootTenantUseCase.execute();\n\n if (rootTenantResult.isOk()) {\n return Result.fail(new SystemAlreadyInstalledError());\n }\n\n const createTenantResult = await this.createTenantUseCase.execute({\n id: \"root\",\n name: \"Root\",\n tags: [],\n description: \"The top-level Webiny tenant.\",\n parent: \"\"\n });\n\n if (createTenantResult.isFail()) {\n return Result.fail(createTenantResult.error);\n }\n\n const rootTenant = createTenantResult.value;\n\n this.tenantContext.setTenant(rootTenant);\n\n const installResult = await this.identityContext.withoutAuthorization(() => {\n return this.installTenantUseCase.execute({\n tenant: rootTenant,\n installationInput\n });\n });\n\n if (installResult.isOk()) {\n await this.eventPublisher.publish(new SystemInstalledEvent());\n return Result.ok();\n }\n\n // If tenant installation failed, delete the root tenant\n await this.deleteTenantUseCase.execute(\"root\");\n\n return Result.fail(installResult.error);\n }\n}\n\nexport const InstallSystemUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: InstallSystemUseCaseImpl,\n dependencies: [\n IdentityContext,\n TenantContext,\n EventPublisher,\n InstallTenantUseCase,\n GetRootTenantUseCase,\n CreateTenantUseCase,\n DeleteTenantUseCase\n ]\n});\n"],"names":["InstallSystemUseCaseImpl","identityContext","tenantContext","eventPublisher","installTenantUseCase","getRootTenantUseCase","createTenantUseCase","deleteTenantUseCase","installationInput","rootTenantResult","Result","SystemAlreadyInstalledError","createTenantResult","rootTenant","installResult","SystemInstalledEvent","InstallSystemUseCase","createImplementation","UseCaseAbstraction","IdentityContext","TenantContext","EventPublisher","InstallTenantUseCase","GetRootTenantUseCase","CreateTenantUseCase","DeleteTenantUseCase"],"mappings":";;;;;;;;;;;AAaA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,aAAsC,EACtCC,cAAwC,EACxCC,oBAAoD,EACpDC,oBAAoD,EACpDC,mBAAkD,EAClDC,mBAAkD,CAC5D;aAPUN,eAAe,GAAfA;aACAC,aAAa,GAAbA;aACAC,cAAc,GAAdA;aACAC,oBAAoB,GAApBA;aACAC,oBAAoB,GAApBA;aACAC,mBAAmB,GAAnBA;aACAC,mBAAmB,GAAnBA;IACT;IAEH,MAAM,QAAQC,iBAAqC,EAAE;QACjD,MAAMC,mBAAmB,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO;QAEhE,IAAIA,iBAAiB,IAAI,IACrB,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,qBAAqB,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;YAC9D,IAAI;YACJ,MAAM;YACN,MAAM,EAAE;YACR,aAAa;YACb,QAAQ;QACZ;QAEA,IAAIA,mBAAmB,MAAM,IACzB,OAAOF,OAAO,IAAI,CAACE,mBAAmB,KAAK;QAG/C,MAAMC,aAAaD,mBAAmB,KAAK;QAE3C,IAAI,CAAC,aAAa,CAAC,SAAS,CAACC;QAE7B,MAAMC,gBAAgB,MAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,IAC3D,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;gBACrC,QAAQD;gBACRL;YACJ;QAGJ,IAAIM,cAAc,IAAI,IAAI;YACtB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAIC;YACtC,OAAOL,OAAO,EAAE;QACpB;QAGA,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;QAEvC,OAAOA,OAAO,IAAI,CAACI,cAAc,KAAK;IAC1C;AACJ;AAEO,MAAME,4CAAuBC,qBAAqB;IACrD,aAAaC;IACb,gBAAgBlB;IAChB,cAAc;QACVmB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
@@ -19,16 +19,15 @@ export type InstallSystemInput = AppInstallationData[];
19
19
  export interface IInstallSystemUseCase {
20
20
  execute(input: InstallSystemInput): Promise<Result<void, IInstallSystemErrors[keyof IInstallSystemErrors]>>;
21
21
  }
22
+ /** Run system-wide installation. */
22
23
  export declare const InstallSystemUseCase: import("@webiny/di").Abstraction<IInstallSystemUseCase>;
23
24
  export declare namespace InstallSystemUseCase {
24
25
  type Interface = IInstallSystemUseCase;
25
26
  type Input = InstallSystemInput;
26
27
  }
27
- /**
28
- * Event Handler Abstraction
29
- */
30
- export declare const SystemInstalledHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<void>>>;
31
- export declare namespace SystemInstalledHandler {
28
+ /** Hook into system lifecycle after the system is installed. */
29
+ export declare const SystemInstalledEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<void>>>;
30
+ export declare namespace SystemInstalledEventHandler {
32
31
  type Interface = IEventHandler<DomainEvent>;
33
32
  type Event = DomainEvent;
34
33
  }
@@ -1,21 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- /**
4
- * Errors
5
- */
6
-
7
- /**
8
- * Types
9
- */
10
-
11
- /**
12
- * Use Case Abstraction
13
- */
14
-
15
- export const InstallSystemUseCase = createAbstraction("InstallSystemUseCase");
16
- /**
17
- * Event Handler Abstraction
18
- */
19
- export const SystemInstalledHandler = createAbstraction("SystemInstalledHandler");
2
+ const InstallSystemUseCase = createAbstraction("InstallSystemUseCase");
3
+ const SystemInstalledEventHandler = createAbstraction("SystemInstalledEventHandler");
4
+ export { InstallSystemUseCase, SystemInstalledEventHandler };
20
5
 
21
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","InstallSystemUseCase","SystemInstalledHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type { IEventHandler, DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport { InstallSystemError, SystemAlreadyInstalledError } from \"./errors.js\";\nimport {\n type AppInstallationData,\n InstallTenantUseCase\n} from \"~/features/tenancy/InstallTenant/index.js\";\nimport { CreateTenantUseCase } from \"~/features/tenancy/CreateTenant/index.js\";\n\n/**\n * Errors\n */\nexport interface IInstallSystemErrors {\n base:\n | InstallSystemError\n | SystemAlreadyInstalledError\n | CreateTenantUseCase.Errors\n | InstallTenantUseCase.Errors;\n}\n\n/**\n * Types\n */\nexport type InstallSystemInput = AppInstallationData[];\n\n/**\n * Use Case Abstraction\n */\nexport interface IInstallSystemUseCase {\n execute(\n input: InstallSystemInput\n ): Promise<Result<void, IInstallSystemErrors[keyof IInstallSystemErrors]>>;\n}\n\nexport const InstallSystemUseCase =\n createAbstraction<IInstallSystemUseCase>(\"InstallSystemUseCase\");\n\nexport namespace InstallSystemUseCase {\n export type Interface = IInstallSystemUseCase;\n export type Input = InstallSystemInput;\n}\n\n/**\n * Event Handler Abstraction\n */\nexport const SystemInstalledHandler =\n createAbstraction<IEventHandler<DomainEvent>>(\"SystemInstalledHandler\");\n\nexport namespace SystemInstalledHandler {\n export type Interface = IEventHandler<DomainEvent>;\n export type Event = DomainEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAgB,qBAAqB;;AAS/D;AACA;AACA;;AASA;AACA;AACA;;AAGA;AACA;AACA;;AAOA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,sBAAsB,CAAC;AAOpE;AACA;AACA;AACA,OAAO,MAAME,sBAAsB,GAC/BF,iBAAiB,CAA6B,wBAAwB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/system/InstallSystem/abstractions.js","sources":["../../../../src/features/system/InstallSystem/abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type { IEventHandler, DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport { InstallSystemError, SystemAlreadyInstalledError } from \"./errors.js\";\nimport {\n type AppInstallationData,\n InstallTenantUseCase\n} from \"~/features/tenancy/InstallTenant/index.js\";\nimport { CreateTenantUseCase } from \"~/features/tenancy/CreateTenant/index.js\";\n\n/**\n * Errors\n */\nexport interface IInstallSystemErrors {\n base:\n | InstallSystemError\n | SystemAlreadyInstalledError\n | CreateTenantUseCase.Errors\n | InstallTenantUseCase.Errors;\n}\n\n/**\n * Types\n */\nexport type InstallSystemInput = AppInstallationData[];\n\n/**\n * Use Case Abstraction\n */\nexport interface IInstallSystemUseCase {\n execute(\n input: InstallSystemInput\n ): Promise<Result<void, IInstallSystemErrors[keyof IInstallSystemErrors]>>;\n}\n\n/** Run system-wide installation. */\nexport const InstallSystemUseCase =\n createAbstraction<IInstallSystemUseCase>(\"InstallSystemUseCase\");\n\nexport namespace InstallSystemUseCase {\n export type Interface = IInstallSystemUseCase;\n export type Input = InstallSystemInput;\n}\n\n/** Hook into system lifecycle after the system is installed. */\nexport const SystemInstalledEventHandler = createAbstraction<IEventHandler<DomainEvent>>(\n \"SystemInstalledEventHandler\"\n);\n\nexport namespace SystemInstalledEventHandler {\n export type Interface = IEventHandler<DomainEvent>;\n export type Event = DomainEvent;\n}\n"],"names":["InstallSystemUseCase","createAbstraction","SystemInstalledEventHandler"],"mappings":";AAmCO,MAAMA,uBACTC,kBAAyC;AAQtC,MAAMC,8BAA8BD,kBACvC"}
@@ -1,21 +1,20 @@
1
1
  import { BaseError } from "@webiny/feature/api";
2
- export class InstallSystemError extends BaseError {
3
- code = "INSTALL_SYSTEM";
4
- constructor(data) {
5
- super({
6
- message: `System installation failed: ${data.reason}`,
7
- data
8
- });
9
- }
2
+ class InstallSystemError extends BaseError {
3
+ constructor(data){
4
+ super({
5
+ message: `System installation failed: ${data.reason}`,
6
+ data
7
+ }), this.code = "INSTALL_SYSTEM";
8
+ }
10
9
  }
11
- export class SystemAlreadyInstalledError extends BaseError {
12
- code = "SYSTEM_ALREADY_INSTALLED";
13
- constructor(data = {}) {
14
- super({
15
- message: "System is already installed!",
16
- data
17
- });
18
- }
10
+ class SystemAlreadyInstalledError extends BaseError {
11
+ constructor(data = {}){
12
+ super({
13
+ message: "System is already installed!",
14
+ data
15
+ }), this.code = "SYSTEM_ALREADY_INSTALLED";
16
+ }
19
17
  }
18
+ export { InstallSystemError, SystemAlreadyInstalledError };
20
19
 
21
20
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseError","InstallSystemError","code","constructor","data","message","reason","SystemAlreadyInstalledError"],"sources":["errors.ts"],"sourcesContent":["import { BaseError } from \"@webiny/feature/api\";\n\ntype InstallSystemErrorData = {\n reason: string;\n};\n\nexport class InstallSystemError extends BaseError<InstallSystemErrorData> {\n override readonly code = \"INSTALL_SYSTEM\" as const;\n\n constructor(data: InstallSystemErrorData) {\n super({\n message: `System installation failed: ${data.reason}`,\n data\n });\n }\n}\n\ntype SystemAlreadyInstalledErrorData = {\n message?: string;\n};\n\nexport class SystemAlreadyInstalledError extends BaseError<SystemAlreadyInstalledErrorData> {\n override readonly code = \"SYSTEM_ALREADY_INSTALLED\" as const;\n\n constructor(data: SystemAlreadyInstalledErrorData = {}) {\n super({\n message: \"System is already installed!\",\n data\n });\n }\n}\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,qBAAqB;AAM/C,OAAO,MAAMC,kBAAkB,SAASD,SAAS,CAAyB;EACpDE,IAAI,GAAG,gBAAgB;EAEzCC,WAAWA,CAACC,IAA4B,EAAE;IACtC,KAAK,CAAC;MACFC,OAAO,EAAE,+BAA+BD,IAAI,CAACE,MAAM,EAAE;MACrDF;IACJ,CAAC,CAAC;EACN;AACJ;AAMA,OAAO,MAAMG,2BAA2B,SAASP,SAAS,CAAkC;EACtEE,IAAI,GAAG,0BAA0B;EAEnDC,WAAWA,CAACC,IAAqC,GAAG,CAAC,CAAC,EAAE;IACpD,KAAK,CAAC;MACFC,OAAO,EAAE,8BAA8B;MACvCD;IACJ,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/system/InstallSystem/errors.js","sources":["../../../../src/features/system/InstallSystem/errors.ts"],"sourcesContent":["import { BaseError } from \"@webiny/feature/api\";\n\ntype InstallSystemErrorData = {\n reason: string;\n};\n\nexport class InstallSystemError extends BaseError<InstallSystemErrorData> {\n override readonly code = \"INSTALL_SYSTEM\" as const;\n\n constructor(data: InstallSystemErrorData) {\n super({\n message: `System installation failed: ${data.reason}`,\n data\n });\n }\n}\n\ntype SystemAlreadyInstalledErrorData = {\n message?: string;\n};\n\nexport class SystemAlreadyInstalledError extends BaseError<SystemAlreadyInstalledErrorData> {\n override readonly code = \"SYSTEM_ALREADY_INSTALLED\" as const;\n\n constructor(data: SystemAlreadyInstalledErrorData = {}) {\n super({\n message: \"System is already installed!\",\n data\n });\n }\n}\n"],"names":["InstallSystemError","BaseError","data","SystemAlreadyInstalledError"],"mappings":";AAMO,MAAMA,2BAA2BC;IAGpC,YAAYC,IAA4B,CAAE;QACtC,KAAK,CAAC;YACF,SAAS,CAAC,4BAA4B,EAAEA,KAAK,MAAM,EAAE;YACrDA;QACJ,SANc,IAAI,GAAG;IAOzB;AACJ;AAMO,MAAMC,oCAAoCF;IAG7C,YAAYC,OAAwC,CAAC,CAAC,CAAE;QACpD,KAAK,CAAC;YACF,SAAS;YACTA;QACJ,SANc,IAAI,GAAG;IAOzB;AACJ"}
@@ -1,10 +1,13 @@
1
1
  import { DomainEvent } from "../../eventPublisher/index.js";
2
- import { SystemInstalledHandler } from "./abstractions.js";
3
- export class SystemInstalledEvent extends DomainEvent {
4
- eventType = "system.installed";
5
- getHandlerAbstraction() {
6
- return SystemInstalledHandler;
7
- }
2
+ import { SystemInstalledEventHandler } from "./abstractions.js";
3
+ class SystemInstalledEvent extends DomainEvent {
4
+ getHandlerAbstraction() {
5
+ return SystemInstalledEventHandler;
6
+ }
7
+ constructor(...args){
8
+ super(...args), this.eventType = "system.installed";
9
+ }
8
10
  }
11
+ export { SystemInstalledEvent };
9
12
 
10
13
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DomainEvent","SystemInstalledHandler","SystemInstalledEvent","eventType","getHandlerAbstraction"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport { SystemInstalledHandler } from \"./abstractions.js\";\n\nexport class SystemInstalledEvent extends DomainEvent {\n eventType = \"system.installed\" as const;\n\n getHandlerAbstraction() {\n return SystemInstalledHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW;AACpB,SAASC,sBAAsB;AAE/B,OAAO,MAAMC,oBAAoB,SAASF,WAAW,CAAC;EAClDG,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,sBAAsB;EACjC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/system/InstallSystem/events.js","sources":["../../../../src/features/system/InstallSystem/events.ts"],"sourcesContent":["import { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport { SystemInstalledEventHandler } from \"./abstractions.js\";\n\nexport class SystemInstalledEvent extends DomainEvent {\n eventType = \"system.installed\" as const;\n\n getHandlerAbstraction() {\n return SystemInstalledEventHandler;\n }\n}\n"],"names":["SystemInstalledEvent","DomainEvent","SystemInstalledEventHandler"],"mappings":";;AAGO,MAAMA,6BAA6BC;IAGtC,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
@@ -1 +1,5 @@
1
- export declare const InstallSystemFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ import type { Container } from "@webiny/di";
2
+ export declare const InstallSystemFeature: {
3
+ name: string;
4
+ register(container: Container): void;
5
+ };
@@ -1,12 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { InstallSystemUseCase } from "./InstallSystemUseCase.js";
3
- export const InstallSystemFeature = createFeature({
4
- name: "InstallSystem",
5
- register(container) {
6
- // Register use case (transient) - auto-wired with DI
7
- // Depends on EventPublisher, InstallTenantUseCase, GetRootTenantUseCase, and CreateTenantUseCase
8
- container.register(InstallSystemUseCase);
9
- }
3
+ const InstallSystemFeature = createFeature({
4
+ name: "InstallSystem",
5
+ register (container) {
6
+ container.register(InstallSystemUseCase);
7
+ }
10
8
  });
9
+ export { InstallSystemFeature };
11
10
 
12
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","InstallSystemUseCase","InstallSystemFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { InstallSystemUseCase } from \"./InstallSystemUseCase.js\";\n\nexport const InstallSystemFeature = createFeature({\n name: \"InstallSystem\",\n register(container: Container) {\n // Register use case (transient) - auto-wired with DI\n // Depends on EventPublisher, InstallTenantUseCase, GetRootTenantUseCase, and CreateTenantUseCase\n container.register(InstallSystemUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AAEnD,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,oBAAoB,GAAGF,aAAa,CAAC;EAC9CG,IAAI,EAAE,eAAe;EACrBC,QAAQA,CAACC,SAAoB,EAAE;IAC3B;IACA;IACAA,SAAS,CAACD,QAAQ,CAACH,oBAAoB,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/system/InstallSystem/feature.js","sources":["../../../../src/features/system/InstallSystem/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { InstallSystemUseCase } from \"./InstallSystemUseCase.js\";\n\nexport const InstallSystemFeature = createFeature({\n name: \"InstallSystem\",\n register(container: Container) {\n // Register use case (transient) - auto-wired with DI\n // Depends on EventPublisher, InstallTenantUseCase, GetRootTenantUseCase, and CreateTenantUseCase\n container.register(InstallSystemUseCase);\n }\n});\n"],"names":["InstallSystemFeature","createFeature","container","InstallSystemUseCase"],"mappings":";;AAIO,MAAMA,uBAAuBC,cAAc;IAC9C,MAAM;IACN,UAASC,SAAoB;QAGzBA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -1,5 +1,5 @@
1
1
  export { InstallSystemUseCase } from "./abstractions.js";
2
- export { SystemInstalledHandler } from "./abstractions.js";
2
+ export { SystemInstalledEventHandler } from "./abstractions.js";
3
3
  export type { InstallSystemInput } from "./abstractions.js";
4
4
  export { InstallSystemError } from "./errors.js";
5
5
  export { SystemAlreadyInstalledError } from "./errors.js";
@@ -1,7 +1,3 @@
1
- export { InstallSystemUseCase } from "./abstractions.js";
2
- export { SystemInstalledHandler } from "./abstractions.js";
3
- export { InstallSystemError } from "./errors.js";
4
- export { SystemAlreadyInstalledError } from "./errors.js";
1
+ export { InstallSystemUseCase, SystemInstalledEventHandler } from "./abstractions.js";
2
+ export { InstallSystemError, SystemAlreadyInstalledError } from "./errors.js";
5
3
  export { SystemInstalledEvent } from "./events.js";
6
-
7
- //# sourceMappingURL=index.js.map
@@ -1 +1,4 @@
1
- export declare const SystemFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const SystemFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { InstallSystemFeature } from "./InstallSystem/feature.js";
3
- export const SystemFeature = createFeature({
4
- name: "SystemFeature",
5
- register(container) {
6
- InstallSystemFeature.register(container);
7
- }
3
+ const SystemFeature = createFeature({
4
+ name: "SystemFeature",
5
+ register (container) {
6
+ InstallSystemFeature.register(container);
7
+ }
8
8
  });
9
+ export { SystemFeature };
9
10
 
10
11
  //# sourceMappingURL=SystemFeature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","InstallSystemFeature","SystemFeature","name","register","container"],"sources":["SystemFeature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { InstallSystemFeature } from \"./InstallSystem/feature.js\";\n\nexport const SystemFeature = createFeature({\n name: \"SystemFeature\",\n register(container) {\n InstallSystemFeature.register(container);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,aAAa,GAAGF,aAAa,CAAC;EACvCG,IAAI,EAAE,eAAe;EACrBC,QAAQA,CAACC,SAAS,EAAE;IAChBJ,oBAAoB,CAACG,QAAQ,CAACC,SAAS,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/system/SystemFeature.js","sources":["../../../src/features/system/SystemFeature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { InstallSystemFeature } from \"./InstallSystem/feature.js\";\n\nexport const SystemFeature = createFeature({\n name: \"SystemFeature\",\n register(container) {\n InstallSystemFeature.register(container);\n }\n});\n"],"names":["SystemFeature","createFeature","container","InstallSystemFeature"],"mappings":";;AAGO,MAAMA,gBAAgBC,cAAc;IACvC,MAAM;IACN,UAASC,SAAS;QACdC,qBAAqB,QAAQ,CAACD;IAClC;AACJ"}
@@ -7,6 +7,7 @@ import type { ITaskInput, ITaskOutput } from "../TaskDefinition/index.js";
7
7
  */
8
8
  export interface ITaskController<I extends ITaskInput = ITaskInput, O extends ITaskOutput = ITaskOutput> {
9
9
  }
10
+ /** Runtime controller providing capabilities to running tasks. */
10
11
  export declare const TaskController: import("@webiny/di").Abstraction<ITaskController<ITaskInput, ITaskOutput>>;
11
12
  export declare namespace TaskController {
12
13
  type Interface<I extends ITaskInput = ITaskInput, O extends ITaskOutput = ITaskOutput> = ITaskController<I, O>;
@@ -1,12 +1,5 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- /**
4
- * TaskController provides runtime capabilities to task definitions.
5
- * The actual interface is defined by the tasks package implementation via module augmentation.
6
- *
7
- * Import this from @webiny/api-core, but the full interface comes from @webiny/tasks.
8
- */
9
-
10
- export const TaskController = createAbstraction("TaskController");
2
+ const TaskController = createAbstraction("TaskController");
3
+ export { TaskController };
11
4
 
12
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","TaskController"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { ITaskInput, ITaskOutput } from \"../TaskDefinition/index.js\";\n\n/**\n * TaskController provides runtime capabilities to task definitions.\n * The actual interface is defined by the tasks package implementation via module augmentation.\n *\n * Import this from @webiny/api-core, but the full interface comes from @webiny/tasks.\n */\nexport interface ITaskController<\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n I extends ITaskInput = ITaskInput,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n O extends ITaskOutput = ITaskOutput\n> {\n // Empty - augmented by tasks package\n}\n\nexport const TaskController = createAbstraction<ITaskController>(\"TaskController\");\n\nexport namespace TaskController {\n export type Interface<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskController<I, O>;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAGvD;AACA;AACA;AACA;AACA;AACA;;AAUA,OAAO,MAAMC,cAAc,GAAGD,iBAAiB,CAAkB,gBAAgB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/task/TaskController/abstractions.js","sources":["../../../../src/features/task/TaskController/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { ITaskInput, ITaskOutput } from \"../TaskDefinition/index.js\";\n\n/**\n * TaskController provides runtime capabilities to task definitions.\n * The actual interface is defined by the tasks package implementation via module augmentation.\n *\n * Import this from @webiny/api-core, but the full interface comes from @webiny/tasks.\n */\nexport interface ITaskController<\n // oxlint-disable-next-line typescript/no-unused-vars\n I extends ITaskInput = ITaskInput,\n // oxlint-disable-next-line typescript/no-unused-vars\n O extends ITaskOutput = ITaskOutput\n> {\n // Empty - augmented by tasks package\n}\n\n/** Runtime controller providing capabilities to running tasks. */\nexport const TaskController = createAbstraction<ITaskController>(\"TaskController\");\n\nexport namespace TaskController {\n export type Interface<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskController<I, O>;\n}\n"],"names":["TaskController","createAbstraction"],"mappings":";AAmBO,MAAMA,iBAAiBC,kBAAmC"}
@@ -1,3 +1 @@
1
1
  export * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -66,6 +66,8 @@ export interface ITaskResultAborted {
66
66
  status: TaskResultStatus.ABORTED;
67
67
  }
68
68
  export type ITaskResult<I = ITaskInput, O extends ITaskOutput = ITaskOutput> = ITaskResultDone<O> | ITaskResultContinue<I> | ITaskResultError | ITaskResultAborted;
69
+ export type ISelfCleanupEvent = "onSuccess" | "onError" | "onAbort";
70
+ export type ISelfCleanup = "always" | "never" | ISelfCleanupEvent | ISelfCleanupEvent[];
69
71
  export type ITaskLifecycleHook<I extends ITaskInput = ITaskInput, O extends ITaskOutput = ITaskOutput> = {
70
72
  task: ITask<I, O>;
71
73
  };
@@ -79,13 +81,14 @@ export interface ITaskDefinition<I extends ITaskInput = ITaskInput, O extends IT
79
81
  maxIterations?: number;
80
82
  databaseLogs?: boolean;
81
83
  isPrivate?: boolean;
84
+ selfCleanup?: ISelfCleanup;
82
85
  /**
83
86
  * Core run method - receives ONLY input params
84
87
  * All runtime dependencies (logging, state management, etc.) come from TaskController
85
88
  */
86
89
  run(params: ITaskRunParams<I, O>): Promise<ITaskResult<I, O>>;
87
90
  /**
88
- * Optional lifecycle hooks - receive task data, no context
91
+ * Optional lifecycle hooks - receive task data, no context.
89
92
  */
90
93
  onBeforeTrigger?(params: ITaskBeforeTriggerParams<I>): Promise<void>;
91
94
  onDone?(params: ITaskLifecycleHook<I, O>): Promise<void>;
@@ -101,6 +104,7 @@ export interface ITaskDefinition<I extends ITaskInput = ITaskInput, O extends IT
101
104
  export interface ITaskCreateInputValidationParams {
102
105
  validator: typeof zod;
103
106
  }
107
+ /** Define a long-running background task with lifecycle hooks. */
104
108
  export declare const TaskDefinition: import("@webiny/di").Abstraction<ITaskDefinition<ITaskInput, ITaskOutput>>;
105
109
  /**
106
110
  * IRunnableTaskDefinition represents a TaskDefinition after decoration/processing.
@@ -128,4 +132,6 @@ export declare namespace TaskDefinition {
128
132
  type TaskCreateData<I = ITaskInput> = ITaskCreateData<I>;
129
133
  type BeforeTriggerParams<I = ITaskInput> = ITaskBeforeTriggerParams<I>;
130
134
  type LifecycleHookParams<I extends ITaskInput = ITaskInput, O extends ITaskOutput = ITaskOutput> = ITaskLifecycleHook<I, O>;
135
+ type SelfCleanupEvent = ISelfCleanupEvent;
136
+ type SelfCleanup = ISelfCleanup;
131
137
  }
@@ -1,43 +1,12 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- /**
4
- * Task run params - ONLY the input data
5
- * All runtime dependencies come from TaskController (injected separately)
6
- */
7
-
8
- /**
9
- * Data for creating a new task
10
- */
11
-
12
- /**
13
- * Parameters for onBeforeTrigger lifecycle hook
14
- */
15
-
16
- /**
17
- * Task result status enum
18
- */
19
- export let TaskResultStatus = /*#__PURE__*/function (TaskResultStatus) {
20
- TaskResultStatus["DONE"] = "done";
21
- TaskResultStatus["CONTINUE"] = "continue";
22
- TaskResultStatus["ERROR"] = "error";
23
- TaskResultStatus["ABORTED"] = "aborted";
24
- return TaskResultStatus;
2
+ var abstractions_TaskResultStatus = /*#__PURE__*/ function(TaskResultStatus) {
3
+ TaskResultStatus["DONE"] = "done";
4
+ TaskResultStatus["CONTINUE"] = "continue";
5
+ TaskResultStatus["ERROR"] = "error";
6
+ TaskResultStatus["ABORTED"] = "aborted";
7
+ return TaskResultStatus;
25
8
  }({});
26
-
27
- /**
28
- * Specific result types
29
- */
30
-
31
- /**
32
- * Core TaskDefinition - minimal interface
33
- */
34
-
35
- export const TaskDefinition = createAbstraction("TaskDefinition");
36
-
37
- /**
38
- * IRunnableTaskDefinition represents a TaskDefinition after decoration/processing.
39
- * All optional runtime properties are guaranteed to have values (with defaults applied).
40
- * Used internally by the task runner to ensure consistent behavior.
41
- */
9
+ const TaskDefinition = createAbstraction("TaskDefinition");
10
+ export { TaskDefinition, abstractions_TaskResultStatus as TaskResultStatus };
42
11
 
43
12
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","TaskResultStatus","TaskDefinition"],"sources":["abstractions.ts"],"sourcesContent":["import zod from \"zod\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { GenericRecord } from \"@webiny/api/types\";\nimport type { ITask } from \"~/features/task/TaskService/index.js\";\nimport { TaskController } from \"~/features/task/TaskController/index.js\";\n\nexport type ITaskInput = GenericRecord;\n\nexport interface IResponseError {\n message: string;\n code?: string | null;\n data?: GenericRecord | null;\n stack?: string;\n}\n\nexport interface ITaskOutput {\n error?: IResponseError;\n [key: string]: any;\n}\n\n/**\n * Task run params - ONLY the input data\n * All runtime dependencies come from TaskController (injected separately)\n */\nexport interface ITaskRunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n input: I;\n controller: TaskController.Interface<I, O>;\n}\n\n/**\n * Data for creating a new task\n */\nexport interface ITaskCreateData<I = ITaskInput> {\n definitionId: string;\n name: string;\n input: I;\n parentId?: string;\n}\n\n/**\n * Parameters for onBeforeTrigger lifecycle hook\n */\nexport interface ITaskBeforeTriggerParams<I = ITaskInput> {\n data: ITaskCreateData<I>;\n}\n\n/**\n * Task result status enum\n */\nexport enum TaskResultStatus {\n DONE = \"done\",\n CONTINUE = \"continue\",\n ERROR = \"error\",\n ABORTED = \"aborted\"\n}\n\n/**\n * Specific result types\n */\nexport interface ITaskResultDone<O extends ITaskOutput = ITaskOutput> {\n status: TaskResultStatus.DONE;\n message?: string;\n output?: O;\n}\n\nexport interface ITaskResultContinue<I = ITaskInput> {\n status: TaskResultStatus.CONTINUE;\n input: I;\n wait?: number; // seconds to wait before next iteration\n}\n\nexport interface ITaskResultError {\n status: TaskResultStatus.ERROR;\n error: IResponseError;\n}\n\nexport interface ITaskResultAborted {\n status: TaskResultStatus.ABORTED;\n}\n\nexport type ITaskResult<I = ITaskInput, O extends ITaskOutput = ITaskOutput> =\n | ITaskResultDone<O>\n | ITaskResultContinue<I>\n | ITaskResultError\n | ITaskResultAborted;\n\nexport type ITaskLifecycleHook<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> = { task: ITask<I, O> };\n\n/**\n * Core TaskDefinition - minimal interface\n */\nexport interface ITaskDefinition<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n id: string;\n title: string;\n description?: string;\n maxIterations?: number;\n databaseLogs?: boolean;\n isPrivate?: boolean;\n\n /**\n * Core run method - receives ONLY input params\n * All runtime dependencies (logging, state management, etc.) come from TaskController\n */\n run(params: ITaskRunParams<I, O>): Promise<ITaskResult<I, O>>;\n\n /**\n * Optional lifecycle hooks - receive task data, no context\n */\n onBeforeTrigger?(params: ITaskBeforeTriggerParams<I>): Promise<void>;\n onDone?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onError?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onAbort?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onMaxIterations?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n /**\n * Create a validation schema for the task input.\n * This will be used to validate the input before the task is triggered.\n */\n createInputValidation?(\n params: ITaskCreateInputValidationParams\n ): GenericRecord<keyof I, zod.Schema> | zod.Schema;\n}\n\nexport interface ITaskCreateInputValidationParams {\n validator: typeof zod;\n}\n\nexport const TaskDefinition = createAbstraction<ITaskDefinition>(\"TaskDefinition\");\n\n/**\n * IRunnableTaskDefinition represents a TaskDefinition after decoration/processing.\n * All optional runtime properties are guaranteed to have values (with defaults applied).\n * Used internally by the task runner to ensure consistent behavior.\n */\nexport interface IRunnableTaskDefinition<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> extends ITaskDefinition<I, O> {\n // Override optional properties to be required with guaranteed values\n isPrivate: boolean;\n databaseLogs: boolean;\n maxIterations: number;\n}\n\nexport namespace TaskDefinition {\n export type Interface<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskDefinition<I, O>;\n\n export type TaskInput = ITaskInput;\n\n export type TaskOutput = ITaskOutput;\n\n export type Runnable<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = IRunnableTaskDefinition<I, O>;\n\n export type RunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskRunParams<I, O>;\n\n export type Result<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskResult<I, O>;\n\n export type Task<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITask<I, O>;\n\n export type ResultDone<O extends ITaskOutput = ITaskOutput> = ITaskResultDone<O>;\n export type ResultContinue<I = ITaskInput> = ITaskResultContinue<I>;\n export type ResultError = ITaskResultError;\n export type ResultAborted = ITaskResultAborted;\n export type CreateInputValidationParams = ITaskCreateInputValidationParams;\n export type TaskCreateData<I = ITaskInput> = ITaskCreateData<I>;\n export type BeforeTriggerParams<I = ITaskInput> = ITaskBeforeTriggerParams<I>;\n export type LifecycleHookParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskLifecycleHook<I, O>;\n}\n"],"mappings":"AACA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAmBvD;AACA;AACA;AACA;;AASA;AACA;AACA;;AAQA;AACA;AACA;;AAKA;AACA;AACA;AACA,WAAYC,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;;AAO5B;AACA;AACA;;AAiCA;AACA;AACA;;AAuCA,OAAO,MAAMC,cAAc,GAAGF,iBAAiB,CAAkB,gBAAgB,CAAC;;AAElF;AACA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"file":"features/task/TaskDefinition/abstractions.js","sources":["../../../../src/features/task/TaskDefinition/abstractions.ts"],"sourcesContent":["import zod from \"zod\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { GenericRecord } from \"@webiny/api/types\";\nimport type { ITask } from \"~/features/task/TaskService/index.js\";\nimport { TaskController } from \"~/features/task/TaskController/index.js\";\n\nexport type ITaskInput = GenericRecord;\n\nexport interface IResponseError {\n message: string;\n code?: string | null;\n data?: GenericRecord | null;\n stack?: string;\n}\n\nexport interface ITaskOutput {\n error?: IResponseError;\n [key: string]: any;\n}\n\n/**\n * Task run params - ONLY the input data\n * All runtime dependencies come from TaskController (injected separately)\n */\nexport interface ITaskRunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n input: I;\n controller: TaskController.Interface<I, O>;\n}\n\n/**\n * Data for creating a new task\n */\nexport interface ITaskCreateData<I = ITaskInput> {\n definitionId: string;\n name: string;\n input: I;\n parentId?: string;\n}\n\n/**\n * Parameters for onBeforeTrigger lifecycle hook\n */\nexport interface ITaskBeforeTriggerParams<I = ITaskInput> {\n data: ITaskCreateData<I>;\n}\n\n/**\n * Task result status enum\n */\nexport enum TaskResultStatus {\n DONE = \"done\",\n CONTINUE = \"continue\",\n ERROR = \"error\",\n ABORTED = \"aborted\"\n}\n\n/**\n * Specific result types\n */\nexport interface ITaskResultDone<O extends ITaskOutput = ITaskOutput> {\n status: TaskResultStatus.DONE;\n message?: string;\n output?: O;\n}\n\nexport interface ITaskResultContinue<I = ITaskInput> {\n status: TaskResultStatus.CONTINUE;\n input: I;\n wait?: number; // seconds to wait before next iteration\n}\n\nexport interface ITaskResultError {\n status: TaskResultStatus.ERROR;\n error: IResponseError;\n}\n\nexport interface ITaskResultAborted {\n status: TaskResultStatus.ABORTED;\n}\n\nexport type ITaskResult<I = ITaskInput, O extends ITaskOutput = ITaskOutput> =\n | ITaskResultDone<O>\n | ITaskResultContinue<I>\n | ITaskResultError\n | ITaskResultAborted;\n\nexport type ISelfCleanupEvent = \"onSuccess\" | \"onError\" | \"onAbort\";\n\nexport type ISelfCleanup = \"always\" | \"never\" | ISelfCleanupEvent | ISelfCleanupEvent[];\n\nexport type ITaskLifecycleHook<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> = {\n task: ITask<I, O>;\n};\n\n/**\n * Core TaskDefinition - minimal interface\n */\nexport interface ITaskDefinition<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n id: string;\n title: string;\n description?: string;\n maxIterations?: number;\n databaseLogs?: boolean;\n isPrivate?: boolean;\n selfCleanup?: ISelfCleanup;\n\n /**\n * Core run method - receives ONLY input params\n * All runtime dependencies (logging, state management, etc.) come from TaskController\n */\n run(params: ITaskRunParams<I, O>): Promise<ITaskResult<I, O>>;\n\n /**\n * Optional lifecycle hooks - receive task data, no context.\n */\n onBeforeTrigger?(params: ITaskBeforeTriggerParams<I>): Promise<void>;\n onDone?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onError?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onAbort?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onMaxIterations?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n /**\n * Create a validation schema for the task input.\n * This will be used to validate the input before the task is triggered.\n */\n createInputValidation?(\n params: ITaskCreateInputValidationParams\n ): GenericRecord<keyof I, zod.Schema> | zod.Schema;\n}\n\nexport interface ITaskCreateInputValidationParams {\n validator: typeof zod;\n}\n\n/** Define a long-running background task with lifecycle hooks. */\nexport const TaskDefinition = createAbstraction<ITaskDefinition>(\"TaskDefinition\");\n\n/**\n * IRunnableTaskDefinition represents a TaskDefinition after decoration/processing.\n * All optional runtime properties are guaranteed to have values (with defaults applied).\n * Used internally by the task runner to ensure consistent behavior.\n */\nexport interface IRunnableTaskDefinition<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> extends ITaskDefinition<I, O> {\n // Override optional properties to be required with guaranteed values\n isPrivate: boolean;\n databaseLogs: boolean;\n maxIterations: number;\n}\n\nexport namespace TaskDefinition {\n export type Interface<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskDefinition<I, O>;\n\n export type TaskInput = ITaskInput;\n\n export type TaskOutput = ITaskOutput;\n\n export type Runnable<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = IRunnableTaskDefinition<I, O>;\n\n export type RunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskRunParams<I, O>;\n\n export type Result<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskResult<I, O>;\n\n export type Task<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITask<I, O>;\n\n export type ResultDone<O extends ITaskOutput = ITaskOutput> = ITaskResultDone<O>;\n export type ResultContinue<I = ITaskInput> = ITaskResultContinue<I>;\n export type ResultError = ITaskResultError;\n export type ResultAborted = ITaskResultAborted;\n export type CreateInputValidationParams = ITaskCreateInputValidationParams;\n export type TaskCreateData<I = ITaskInput> = ITaskCreateData<I>;\n export type BeforeTriggerParams<I = ITaskInput> = ITaskBeforeTriggerParams<I>;\n export type LifecycleHookParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskLifecycleHook<I, O>;\n\n export type SelfCleanupEvent = ISelfCleanupEvent;\n export type SelfCleanup = ISelfCleanup;\n}\n"],"names":["TaskResultStatus","TaskDefinition","createAbstraction"],"mappings":";AAoDO,IAAKA,gCAAgBA,WAAAA,GAAAA,SAAhBA,gBAAgB;;;;;WAAhBA;;AA2FL,MAAMC,iBAAiBC,kBAAmC"}
@@ -1,3 +1 @@
1
1
  export * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,6 +1,7 @@
1
1
  import { BaseError, Result } from "@webiny/feature/api";
2
2
  import type { GenericRecord } from "@webiny/api/types.js";
3
3
  import { type ITaskOutput, TaskDefinition } from "../../../features/task/TaskDefinition/index.js";
4
+ /** Trigger and manage long-running background tasks. */
4
5
  export declare const TaskService: import("@webiny/di").Abstraction<ITaskService>;
5
6
  export declare namespace TaskService {
6
7
  type Interface = ITaskService;
@@ -1,16 +1,13 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
- export const TaskService = createAbstraction("TaskService");
3
-
4
- // The service info depends on the implementation.
5
- // We cannot have a more precise type here, since implementation can be anything (AWS, Azure, etc.).
6
-
7
- export let TaskDataStatus = /*#__PURE__*/function (TaskDataStatus) {
8
- TaskDataStatus["PENDING"] = "pending";
9
- TaskDataStatus["RUNNING"] = "running";
10
- TaskDataStatus["FAILED"] = "failed";
11
- TaskDataStatus["SUCCESS"] = "success";
12
- TaskDataStatus["ABORTED"] = "aborted";
13
- return TaskDataStatus;
2
+ const TaskService = createAbstraction("TaskService");
3
+ var abstractions_TaskDataStatus = /*#__PURE__*/ function(TaskDataStatus) {
4
+ TaskDataStatus["PENDING"] = "pending";
5
+ TaskDataStatus["RUNNING"] = "running";
6
+ TaskDataStatus["FAILED"] = "failed";
7
+ TaskDataStatus["SUCCESS"] = "success";
8
+ TaskDataStatus["ABORTED"] = "aborted";
9
+ return TaskDataStatus;
14
10
  }({});
11
+ export { TaskService, abstractions_TaskDataStatus as TaskDataStatus };
15
12
 
16
13
  //# sourceMappingURL=abstractions.js.map