@webiny/api-core 6.3.0 → 6.4.0-beta.1

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 (816) hide show
  1. package/ApiCoreFeature.js +22 -18
  2. package/ApiCoreFeature.js.map +1 -1
  3. package/createApiCore.d.ts +1 -1
  4. package/createApiCore.js +14 -9
  5. package/createApiCore.js.map +1 -1
  6. package/domain/identity/SystemIdentityValue.js +9 -8
  7. package/domain/identity/SystemIdentityValue.js.map +1 -1
  8. package/domain/security/ApiToken.js +5 -11
  9. package/domain/security/ApiToken.js.map +1 -1
  10. package/domain/tenancy/RootTenantValue.js +9 -8
  11. package/domain/tenancy/RootTenantValue.js.map +1 -1
  12. package/domain/tenancy/errors.js +0 -3
  13. package/exports/api/build-params.js +0 -3
  14. package/exports/api/event-publisher.js +0 -3
  15. package/exports/api/graphql.js +0 -2
  16. package/exports/api/key-value-store.js +0 -3
  17. package/exports/api/logger.js +0 -3
  18. package/exports/api/security/api-key.js +0 -2
  19. package/exports/api/security/authentication.js +0 -2
  20. package/exports/api/security/role.js +1 -3
  21. package/exports/api/security/user.js +0 -2
  22. package/exports/api/security.js +3 -7
  23. package/exports/api/system.js +0 -2
  24. package/exports/api/tasks.js +0 -2
  25. package/exports/api/tenancy.js +4 -6
  26. package/exports/api/webhooks.d.ts +1 -0
  27. package/exports/api/webhooks.js +1 -0
  28. package/exports/api.js +1 -3
  29. package/features/ai/Ai.js +100 -117
  30. package/features/ai/Ai.js.map +1 -1
  31. package/features/ai/AiSdkTools.js +23 -19
  32. package/features/ai/AiSdkTools.js.map +1 -1
  33. package/features/ai/AnthropicSdkFactory.js +82 -65
  34. package/features/ai/AnthropicSdkFactory.js.map +1 -1
  35. package/features/ai/OpenAiSdkFactory.js +234 -181
  36. package/features/ai/OpenAiSdkFactory.js.map +1 -1
  37. package/features/ai/abstractions.js +7 -32
  38. package/features/ai/abstractions.js.map +1 -1
  39. package/features/ai/feature.js +9 -8
  40. package/features/ai/feature.js.map +1 -1
  41. package/features/ai/index.js +1 -3
  42. package/features/buildParams/BuildParams.js +20 -14
  43. package/features/buildParams/BuildParams.js.map +1 -1
  44. package/features/buildParams/abstractions.js +3 -4
  45. package/features/buildParams/abstractions.js.map +1 -1
  46. package/features/buildParams/feature.js +6 -5
  47. package/features/buildParams/feature.js.map +1 -1
  48. package/features/buildParams/index.js +0 -2
  49. package/features/encryption/EncryptionService.js +50 -46
  50. package/features/encryption/EncryptionService.js.map +1 -1
  51. package/features/encryption/abstractions.js +2 -2
  52. package/features/encryption/abstractions.js.map +1 -1
  53. package/features/encryption/feature.js +6 -5
  54. package/features/encryption/feature.js.map +1 -1
  55. package/features/encryption/index.js +0 -2
  56. package/features/eventPublisher/EventPublisher.js +9 -15
  57. package/features/eventPublisher/EventPublisher.js.map +1 -1
  58. package/features/eventPublisher/__tests__/EventPublisher.test.js +385 -419
  59. package/features/eventPublisher/__tests__/EventPublisher.test.js.map +1 -1
  60. package/features/eventPublisher/abstractions.js +7 -12
  61. package/features/eventPublisher/abstractions.js.map +1 -1
  62. package/features/eventPublisher/feature.js +8 -7
  63. package/features/eventPublisher/feature.js.map +1 -1
  64. package/features/eventPublisher/index.js +0 -2
  65. package/features/featureFlags/FeatureFlags.js +15 -12
  66. package/features/featureFlags/FeatureFlags.js.map +1 -1
  67. package/features/featureFlags/abstractions.js +2 -1
  68. package/features/featureFlags/abstractions.js.map +1 -1
  69. package/features/featureFlags/feature.js +6 -5
  70. package/features/featureFlags/feature.js.map +1 -1
  71. package/features/keyValueStore/GlobalKeyValueStore.js +28 -23
  72. package/features/keyValueStore/GlobalKeyValueStore.js.map +1 -1
  73. package/features/keyValueStore/KeyValueStore.js +30 -27
  74. package/features/keyValueStore/KeyValueStore.js.map +1 -1
  75. package/features/keyValueStore/KeyValueStoreRepository.d.ts +2 -2
  76. package/features/keyValueStore/KeyValueStoreRepository.js +34 -41
  77. package/features/keyValueStore/KeyValueStoreRepository.js.map +1 -1
  78. package/features/keyValueStore/abstractions.d.ts +6 -2
  79. package/features/keyValueStore/abstractions.js +5 -20
  80. package/features/keyValueStore/abstractions.js.map +1 -1
  81. package/features/keyValueStore/errors.js +16 -17
  82. package/features/keyValueStore/errors.js.map +1 -1
  83. package/features/keyValueStore/feature.js +9 -9
  84. package/features/keyValueStore/feature.js.map +1 -1
  85. package/features/keyValueStore/index.js +1 -3
  86. package/features/logger/LoggerService.js +41 -45
  87. package/features/logger/LoggerService.js.map +1 -1
  88. package/features/logger/abstractions.js +2 -2
  89. package/features/logger/abstractions.js.map +1 -1
  90. package/features/logger/feature.js +6 -5
  91. package/features/logger/feature.js.map +1 -1
  92. package/features/logger/index.js +0 -2
  93. package/features/masker/Masker.js +11 -14
  94. package/features/masker/Masker.js.map +1 -1
  95. package/features/masker/abstractions.js +2 -1
  96. package/features/masker/abstractions.js.map +1 -1
  97. package/features/masker/feature.js +7 -6
  98. package/features/masker/feature.js.map +1 -1
  99. package/features/masker/index.js +0 -2
  100. package/features/security/IdentityContext/AnonymousIdentity.js +12 -16
  101. package/features/security/IdentityContext/AnonymousIdentity.js.map +1 -1
  102. package/features/security/IdentityContext/AuthenticatedIdentity.js +5 -8
  103. package/features/security/IdentityContext/AuthenticatedIdentity.js.map +1 -1
  104. package/features/security/IdentityContext/Identity.js +63 -71
  105. package/features/security/IdentityContext/Identity.js.map +1 -1
  106. package/features/security/IdentityContext/IdentityContext.js +69 -106
  107. package/features/security/IdentityContext/IdentityContext.js.map +1 -1
  108. package/features/security/IdentityContext/abstractions.js +2 -2
  109. package/features/security/IdentityContext/abstractions.js.map +1 -1
  110. package/features/security/IdentityContext/feature.js +6 -5
  111. package/features/security/IdentityContext/feature.js.map +1 -1
  112. package/features/security/IdentityContext/index.js +0 -3
  113. package/features/security/SecurityFeature.js +13 -21
  114. package/features/security/SecurityFeature.js.map +1 -1
  115. package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js +48 -49
  116. package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js.map +1 -1
  117. package/features/security/apiKeys/CreateApiKey/abstractions.js +2 -2
  118. package/features/security/apiKeys/CreateApiKey/abstractions.js.map +1 -1
  119. package/features/security/apiKeys/CreateApiKey/events.js +17 -16
  120. package/features/security/apiKeys/CreateApiKey/events.js.map +1 -1
  121. package/features/security/apiKeys/CreateApiKey/feature.js +6 -5
  122. package/features/security/apiKeys/CreateApiKey/feature.js.map +1 -1
  123. package/features/security/apiKeys/CreateApiKey/index.js +0 -2
  124. package/features/security/apiKeys/DeleteApiKey/DeleteApiKeyUseCase.js +29 -30
  125. package/features/security/apiKeys/DeleteApiKey/DeleteApiKeyUseCase.js.map +1 -1
  126. package/features/security/apiKeys/DeleteApiKey/abstractions.js +2 -2
  127. package/features/security/apiKeys/DeleteApiKey/abstractions.js.map +1 -1
  128. package/features/security/apiKeys/DeleteApiKey/events.js +17 -16
  129. package/features/security/apiKeys/DeleteApiKey/events.js.map +1 -1
  130. package/features/security/apiKeys/DeleteApiKey/feature.js +6 -5
  131. package/features/security/apiKeys/DeleteApiKey/feature.js.map +1 -1
  132. package/features/security/apiKeys/DeleteApiKey/index.js +0 -2
  133. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.js +16 -14
  134. package/features/security/apiKeys/GetApiKey/GetApiKeyUseCase.js.map +1 -1
  135. package/features/security/apiKeys/GetApiKey/abstractions.js +2 -2
  136. package/features/security/apiKeys/GetApiKey/abstractions.js.map +1 -1
  137. package/features/security/apiKeys/GetApiKey/feature.js +6 -5
  138. package/features/security/apiKeys/GetApiKey/feature.js.map +1 -1
  139. package/features/security/apiKeys/GetApiKey/index.js +0 -2
  140. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.js +13 -10
  141. package/features/security/apiKeys/GetApiKeyBySlug/GetApiKeyBySlugUseCase.js.map +1 -1
  142. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js +2 -2
  143. package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js.map +1 -1
  144. package/features/security/apiKeys/GetApiKeyBySlug/feature.js +6 -5
  145. package/features/security/apiKeys/GetApiKeyBySlug/feature.js.map +1 -1
  146. package/features/security/apiKeys/GetApiKeyBySlug/index.js +0 -2
  147. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.js +13 -10
  148. package/features/security/apiKeys/GetApiKeyByToken/GetApiKeyByTokenUseCase.js.map +1 -1
  149. package/features/security/apiKeys/GetApiKeyByToken/abstractions.js +2 -2
  150. package/features/security/apiKeys/GetApiKeyByToken/abstractions.js.map +1 -1
  151. package/features/security/apiKeys/GetApiKeyByToken/feature.js +6 -5
  152. package/features/security/apiKeys/GetApiKeyByToken/feature.js.map +1 -1
  153. package/features/security/apiKeys/GetApiKeyByToken/index.js +0 -2
  154. package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js +17 -17
  155. package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js.map +1 -1
  156. package/features/security/apiKeys/ListApiKeys/abstractions.js +2 -2
  157. package/features/security/apiKeys/ListApiKeys/abstractions.js.map +1 -1
  158. package/features/security/apiKeys/ListApiKeys/feature.js +6 -5
  159. package/features/security/apiKeys/ListApiKeys/feature.js.map +1 -1
  160. package/features/security/apiKeys/ListApiKeys/index.js +0 -2
  161. package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js +39 -42
  162. package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js.map +1 -1
  163. package/features/security/apiKeys/UpdateApiKey/abstractions.js +2 -2
  164. package/features/security/apiKeys/UpdateApiKey/abstractions.js.map +1 -1
  165. package/features/security/apiKeys/UpdateApiKey/events.js +17 -16
  166. package/features/security/apiKeys/UpdateApiKey/events.js.map +1 -1
  167. package/features/security/apiKeys/UpdateApiKey/feature.js +6 -5
  168. package/features/security/apiKeys/UpdateApiKey/feature.js.map +1 -1
  169. package/features/security/apiKeys/UpdateApiKey/index.js +0 -2
  170. package/features/security/apiKeys/feature.js +14 -16
  171. package/features/security/apiKeys/feature.js.map +1 -1
  172. package/features/security/apiKeys/shared/ApiKeyProvider.js +42 -42
  173. package/features/security/apiKeys/shared/ApiKeyProvider.js.map +1 -1
  174. package/features/security/apiKeys/shared/ApiKeysRepository.js +108 -135
  175. package/features/security/apiKeys/shared/ApiKeysRepository.js.map +1 -1
  176. package/features/security/apiKeys/shared/abstractions.js +4 -6
  177. package/features/security/apiKeys/shared/abstractions.js.map +1 -1
  178. package/features/security/apiKeys/shared/errors.js +29 -32
  179. package/features/security/apiKeys/shared/errors.js.map +1 -1
  180. package/features/security/apiKeys/shared/generateToken.js +6 -16
  181. package/features/security/apiKeys/shared/generateToken.js.map +1 -1
  182. package/features/security/apiKeys/shared/schemas.js +27 -23
  183. package/features/security/apiKeys/shared/schemas.js.map +1 -1
  184. package/features/security/apiKeys/shared/types.js +0 -3
  185. package/features/security/authentication/AuthenticationContext/AuthenticationContext.js +44 -38
  186. package/features/security/authentication/AuthenticationContext/AuthenticationContext.js.map +1 -1
  187. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js +33 -43
  188. package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js.map +1 -1
  189. package/features/security/authentication/AuthenticationContext/abstractions.js +2 -2
  190. package/features/security/authentication/AuthenticationContext/abstractions.js.map +1 -1
  191. package/features/security/authentication/AuthenticationContext/errors.js +51 -116
  192. package/features/security/authentication/AuthenticationContext/errors.js.map +1 -1
  193. package/features/security/authentication/AuthenticationContext/events.js +17 -16
  194. package/features/security/authentication/AuthenticationContext/events.js.map +1 -1
  195. package/features/security/authentication/AuthenticationContext/feature.js +6 -5
  196. package/features/security/authentication/AuthenticationContext/feature.js.map +1 -1
  197. package/features/security/authentication/AuthenticationContext/index.js +2 -4
  198. package/features/security/authentication/Authenticator/abstractions.js +2 -2
  199. package/features/security/authentication/Authenticator/abstractions.js.map +1 -1
  200. package/features/security/authentication/Authenticator/index.js +0 -2
  201. package/features/security/authorization/AuthorizationContext/AuthorizationContext.js +46 -59
  202. package/features/security/authorization/AuthorizationContext/AuthorizationContext.js.map +1 -1
  203. package/features/security/authorization/AuthorizationContext/abstractions.js +3 -4
  204. package/features/security/authorization/AuthorizationContext/abstractions.js.map +1 -1
  205. package/features/security/authorization/AuthorizationContext/feature.js +10 -9
  206. package/features/security/authorization/AuthorizationContext/feature.js.map +1 -1
  207. package/features/security/authorization/AuthorizationContext/index.js +1 -4
  208. package/features/security/authorization/Authorizer/abstractions.js +2 -2
  209. package/features/security/authorization/Authorizer/abstractions.js.map +1 -1
  210. package/features/security/authorization/Authorizer/index.js +0 -2
  211. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.js +60 -64
  212. package/features/security/authorization/GroupsTeamsAuthorizer/GetPermissionsFromIdentity.js.map +1 -1
  213. package/features/security/authorization/GroupsTeamsAuthorizer/RolesTeamsAuthorizer.js +26 -40
  214. package/features/security/authorization/GroupsTeamsAuthorizer/RolesTeamsAuthorizer.js.map +1 -1
  215. package/features/security/authorization/GroupsTeamsAuthorizer/abstractions.js +2 -1
  216. package/features/security/authorization/GroupsTeamsAuthorizer/abstractions.js.map +1 -1
  217. package/features/security/authorization/GroupsTeamsAuthorizer/feature.js +7 -6
  218. package/features/security/authorization/GroupsTeamsAuthorizer/feature.js.map +1 -1
  219. package/features/security/login/abstractions.js +9 -8
  220. package/features/security/login/abstractions.js.map +1 -1
  221. package/features/security/login/index.js +0 -2
  222. package/features/security/permissions/createPermissionSchema.js +6 -5
  223. package/features/security/permissions/createPermissionSchema.js.map +1 -1
  224. package/features/security/permissions/createPermissions.js +148 -236
  225. package/features/security/permissions/createPermissions.js.map +1 -1
  226. package/features/security/permissions/index.js +0 -2
  227. package/features/security/permissions/types.js +0 -3
  228. package/features/security/roles/CreateRole/CreateRoleUseCase.js +53 -59
  229. package/features/security/roles/CreateRole/CreateRoleUseCase.js.map +1 -1
  230. package/features/security/roles/CreateRole/abstractions.js +2 -2
  231. package/features/security/roles/CreateRole/abstractions.js.map +1 -1
  232. package/features/security/roles/CreateRole/events.js +17 -16
  233. package/features/security/roles/CreateRole/events.js.map +1 -1
  234. package/features/security/roles/CreateRole/feature.js +6 -5
  235. package/features/security/roles/CreateRole/feature.js.map +1 -1
  236. package/features/security/roles/CreateRole/index.js +0 -2
  237. package/features/security/roles/CreateRole/schema.js +8 -7
  238. package/features/security/roles/CreateRole/schema.js.map +1 -1
  239. package/features/security/roles/DeleteRole/DeleteRoleUseCase.js +35 -41
  240. package/features/security/roles/DeleteRole/DeleteRoleUseCase.js.map +1 -1
  241. package/features/security/roles/DeleteRole/abstractions.js +2 -2
  242. package/features/security/roles/DeleteRole/abstractions.js.map +1 -1
  243. package/features/security/roles/DeleteRole/events.js +17 -16
  244. package/features/security/roles/DeleteRole/events.js.map +1 -1
  245. package/features/security/roles/DeleteRole/feature.js +6 -5
  246. package/features/security/roles/DeleteRole/feature.js.map +1 -1
  247. package/features/security/roles/DeleteRole/index.js +0 -2
  248. package/features/security/roles/GetRole/GetRoleUseCase.js +19 -18
  249. package/features/security/roles/GetRole/GetRoleUseCase.js.map +1 -1
  250. package/features/security/roles/GetRole/abstractions.js +2 -2
  251. package/features/security/roles/GetRole/abstractions.js.map +1 -1
  252. package/features/security/roles/GetRole/feature.js +6 -5
  253. package/features/security/roles/GetRole/feature.js.map +1 -1
  254. package/features/security/roles/GetRole/index.js +0 -2
  255. package/features/security/roles/Installer/RolesInstaller.js +38 -35
  256. package/features/security/roles/Installer/RolesInstaller.js.map +1 -1
  257. package/features/security/roles/ListRoles/ListRolesUseCase.js +18 -17
  258. package/features/security/roles/ListRoles/ListRolesUseCase.js.map +1 -1
  259. package/features/security/roles/ListRoles/abstractions.js +2 -2
  260. package/features/security/roles/ListRoles/abstractions.js.map +1 -1
  261. package/features/security/roles/ListRoles/feature.js +6 -5
  262. package/features/security/roles/ListRoles/feature.js.map +1 -1
  263. package/features/security/roles/ListRoles/index.js +0 -2
  264. package/features/security/roles/UpdateRole/UpdateRoleUseCase.js +43 -50
  265. package/features/security/roles/UpdateRole/UpdateRoleUseCase.js.map +1 -1
  266. package/features/security/roles/UpdateRole/abstractions.js +2 -2
  267. package/features/security/roles/UpdateRole/abstractions.js.map +1 -1
  268. package/features/security/roles/UpdateRole/events.js +17 -16
  269. package/features/security/roles/UpdateRole/events.js.map +1 -1
  270. package/features/security/roles/UpdateRole/feature.js +6 -5
  271. package/features/security/roles/UpdateRole/feature.js.map +1 -1
  272. package/features/security/roles/UpdateRole/index.js +0 -2
  273. package/features/security/roles/UpdateRole/schema.js +7 -6
  274. package/features/security/roles/UpdateRole/schema.js.map +1 -1
  275. package/features/security/roles/feature.js +14 -18
  276. package/features/security/roles/feature.js.map +1 -1
  277. package/features/security/roles/shared/RoleProvider.js +27 -21
  278. package/features/security/roles/shared/RoleProvider.js.map +1 -1
  279. package/features/security/roles/shared/RolesRepository.js +96 -113
  280. package/features/security/roles/shared/RolesRepository.js.map +1 -1
  281. package/features/security/roles/shared/abstractions.js +3 -4
  282. package/features/security/roles/shared/abstractions.js.map +1 -1
  283. package/features/security/roles/shared/decorators/ListCache.js +23 -22
  284. package/features/security/roles/shared/decorators/ListCache.js.map +1 -1
  285. package/features/security/roles/shared/decorators/RolesRepositoryCachingDecorator.js +40 -62
  286. package/features/security/roles/shared/decorators/RolesRepositoryCachingDecorator.js.map +1 -1
  287. package/features/security/roles/shared/errors.js +50 -56
  288. package/features/security/roles/shared/errors.js.map +1 -1
  289. package/features/security/roles/shared/types.js +0 -3
  290. package/features/security/shared/abstractions.js +4 -6
  291. package/features/security/shared/abstractions.js.map +1 -1
  292. package/features/security/shared/errors.js +8 -8
  293. package/features/security/shared/errors.js.map +1 -1
  294. package/features/security/shared/index.js +0 -2
  295. package/features/security/teams/CreateTeam/CreateTeamUseCase.js +53 -59
  296. package/features/security/teams/CreateTeam/CreateTeamUseCase.js.map +1 -1
  297. package/features/security/teams/CreateTeam/abstractions.js +2 -2
  298. package/features/security/teams/CreateTeam/abstractions.js.map +1 -1
  299. package/features/security/teams/CreateTeam/events.js +17 -16
  300. package/features/security/teams/CreateTeam/events.js.map +1 -1
  301. package/features/security/teams/CreateTeam/feature.js +6 -5
  302. package/features/security/teams/CreateTeam/feature.js.map +1 -1
  303. package/features/security/teams/CreateTeam/index.js +0 -2
  304. package/features/security/teams/CreateTeam/schema.js +6 -5
  305. package/features/security/teams/CreateTeam/schema.js.map +1 -1
  306. package/features/security/teams/DeleteTeam/DeleteTeamUseCase.js +36 -46
  307. package/features/security/teams/DeleteTeam/DeleteTeamUseCase.js.map +1 -1
  308. package/features/security/teams/DeleteTeam/abstractions.js +2 -2
  309. package/features/security/teams/DeleteTeam/abstractions.js.map +1 -1
  310. package/features/security/teams/DeleteTeam/events.js +17 -16
  311. package/features/security/teams/DeleteTeam/events.js.map +1 -1
  312. package/features/security/teams/DeleteTeam/feature.js +6 -5
  313. package/features/security/teams/DeleteTeam/feature.js.map +1 -1
  314. package/features/security/teams/DeleteTeam/index.js +0 -2
  315. package/features/security/teams/GetTeam/GetTeamUseCase.js +17 -17
  316. package/features/security/teams/GetTeam/GetTeamUseCase.js.map +1 -1
  317. package/features/security/teams/GetTeam/abstractions.js +2 -2
  318. package/features/security/teams/GetTeam/abstractions.js.map +1 -1
  319. package/features/security/teams/GetTeam/feature.js +6 -5
  320. package/features/security/teams/GetTeam/feature.js.map +1 -1
  321. package/features/security/teams/GetTeam/index.js +0 -2
  322. package/features/security/teams/ListTeams/ListTeamsUseCase.js +20 -21
  323. package/features/security/teams/ListTeams/ListTeamsUseCase.js.map +1 -1
  324. package/features/security/teams/ListTeams/abstractions.js +2 -2
  325. package/features/security/teams/ListTeams/abstractions.js.map +1 -1
  326. package/features/security/teams/ListTeams/feature.js +6 -5
  327. package/features/security/teams/ListTeams/feature.js.map +1 -1
  328. package/features/security/teams/ListTeams/index.js +0 -2
  329. package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js +46 -58
  330. package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js.map +1 -1
  331. package/features/security/teams/UpdateTeam/abstractions.js +2 -2
  332. package/features/security/teams/UpdateTeam/abstractions.js.map +1 -1
  333. package/features/security/teams/UpdateTeam/events.js +17 -16
  334. package/features/security/teams/UpdateTeam/events.js.map +1 -1
  335. package/features/security/teams/UpdateTeam/feature.js +6 -5
  336. package/features/security/teams/UpdateTeam/feature.js.map +1 -1
  337. package/features/security/teams/UpdateTeam/index.js +0 -2
  338. package/features/security/teams/UpdateTeam/schema.js +5 -4
  339. package/features/security/teams/UpdateTeam/schema.js.map +1 -1
  340. package/features/security/teams/feature.js +13 -17
  341. package/features/security/teams/feature.js.map +1 -1
  342. package/features/security/teams/shared/TeamProvider.js +27 -21
  343. package/features/security/teams/shared/TeamProvider.js.map +1 -1
  344. package/features/security/teams/shared/TeamsRepository.js +100 -118
  345. package/features/security/teams/shared/TeamsRepository.js.map +1 -1
  346. package/features/security/teams/shared/abstractions.js +3 -4
  347. package/features/security/teams/shared/abstractions.js.map +1 -1
  348. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js +40 -62
  349. package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js.map +1 -1
  350. package/features/security/teams/shared/errors.js +62 -70
  351. package/features/security/teams/shared/errors.js.map +1 -1
  352. package/features/security/teams/shared/types.js +0 -3
  353. package/features/security/utils/AppPermissions.js +50 -89
  354. package/features/security/utils/AppPermissions.js.map +1 -1
  355. package/features/security/utils/IdentityValue.js +19 -22
  356. package/features/security/utils/IdentityValue.js.map +1 -1
  357. package/features/security/utils/filterOutCustomWbyAppsPermissions.js +24 -27
  358. package/features/security/utils/filterOutCustomWbyAppsPermissions.js.map +1 -1
  359. package/features/security/utils/getPermissionsFromRoles.js +5 -10
  360. package/features/security/utils/getPermissionsFromRoles.js.map +1 -1
  361. package/features/security/utils/isJwt.js +2 -1
  362. package/features/security/utils/isJwt.js.map +1 -1
  363. package/features/security/utils/verifyJwtUsingJwk.js +6 -7
  364. package/features/security/utils/verifyJwtUsingJwk.js.map +1 -1
  365. package/features/system/InstallSystem/InstallSystemUseCase.js +45 -44
  366. package/features/system/InstallSystem/InstallSystemUseCase.js.map +1 -1
  367. package/features/system/InstallSystem/abstractions.js +3 -17
  368. package/features/system/InstallSystem/abstractions.js.map +1 -1
  369. package/features/system/InstallSystem/errors.js +15 -16
  370. package/features/system/InstallSystem/errors.js.map +1 -1
  371. package/features/system/InstallSystem/events.js +8 -5
  372. package/features/system/InstallSystem/events.js.map +1 -1
  373. package/features/system/InstallSystem/feature.js +6 -7
  374. package/features/system/InstallSystem/feature.js.map +1 -1
  375. package/features/system/InstallSystem/index.js +2 -6
  376. package/features/system/SystemFeature.js +6 -5
  377. package/features/system/SystemFeature.js.map +1 -1
  378. package/features/task/TaskController/abstractions.js +2 -10
  379. package/features/task/TaskController/abstractions.js.map +1 -1
  380. package/features/task/TaskController/index.js +0 -2
  381. package/features/task/TaskDefinition/abstractions.js +8 -40
  382. package/features/task/TaskDefinition/abstractions.js.map +1 -1
  383. package/features/task/TaskDefinition/index.js +0 -2
  384. package/features/task/TaskService/abstractions.js +9 -13
  385. package/features/task/TaskService/abstractions.js.map +1 -1
  386. package/features/task/TaskService/index.js +0 -2
  387. package/features/tenancy/CreateTenant/CreateTenantGateway.js +14 -11
  388. package/features/tenancy/CreateTenant/CreateTenantGateway.js.map +1 -1
  389. package/features/tenancy/CreateTenant/CreateTenantRepository.js +18 -15
  390. package/features/tenancy/CreateTenant/CreateTenantRepository.js.map +1 -1
  391. package/features/tenancy/CreateTenant/CreateTenantUseCase.js +44 -41
  392. package/features/tenancy/CreateTenant/CreateTenantUseCase.js.map +1 -1
  393. package/features/tenancy/CreateTenant/abstractions.js +6 -29
  394. package/features/tenancy/CreateTenant/abstractions.js.map +1 -1
  395. package/features/tenancy/CreateTenant/decorators/CreateTenantWithWcpIncrement.js +16 -15
  396. package/features/tenancy/CreateTenant/decorators/CreateTenantWithWcpIncrement.js.map +1 -1
  397. package/features/tenancy/CreateTenant/errors.js +8 -8
  398. package/features/tenancy/CreateTenant/errors.js.map +1 -1
  399. package/features/tenancy/CreateTenant/events.js +16 -11
  400. package/features/tenancy/CreateTenant/events.js.map +1 -1
  401. package/features/tenancy/CreateTenant/feature.js +9 -8
  402. package/features/tenancy/CreateTenant/feature.js.map +1 -1
  403. package/features/tenancy/CreateTenant/index.js +2 -4
  404. package/features/tenancy/DeleteTenant/DeleteTenantGateway.js +15 -12
  405. package/features/tenancy/DeleteTenant/DeleteTenantGateway.js.map +1 -1
  406. package/features/tenancy/DeleteTenant/DeleteTenantRepository.js +22 -19
  407. package/features/tenancy/DeleteTenant/DeleteTenantRepository.js.map +1 -1
  408. package/features/tenancy/DeleteTenant/DeleteTenantUseCase.js +29 -27
  409. package/features/tenancy/DeleteTenant/DeleteTenantUseCase.js.map +1 -1
  410. package/features/tenancy/DeleteTenant/abstractions.js +6 -10
  411. package/features/tenancy/DeleteTenant/abstractions.js.map +1 -1
  412. package/features/tenancy/DeleteTenant/decorators/DeleteTenantWithWcpDecrement.js +16 -13
  413. package/features/tenancy/DeleteTenant/decorators/DeleteTenantWithWcpDecrement.js.map +1 -1
  414. package/features/tenancy/DeleteTenant/events.js +16 -11
  415. package/features/tenancy/DeleteTenant/events.js.map +1 -1
  416. package/features/tenancy/DeleteTenant/feature.js +9 -8
  417. package/features/tenancy/DeleteTenant/feature.js.map +1 -1
  418. package/features/tenancy/DeleteTenant/index.js +2 -4
  419. package/features/tenancy/GetRootTenant/GetRootTenantUseCase.js +15 -12
  420. package/features/tenancy/GetRootTenant/GetRootTenantUseCase.js.map +1 -1
  421. package/features/tenancy/GetRootTenant/abstractions.js +2 -4
  422. package/features/tenancy/GetRootTenant/abstractions.js.map +1 -1
  423. package/features/tenancy/GetRootTenant/feature.js +6 -5
  424. package/features/tenancy/GetRootTenant/feature.js.map +1 -1
  425. package/features/tenancy/GetRootTenant/index.js +0 -2
  426. package/features/tenancy/GetTenantById/GetTenantByIdGateway.js +17 -12
  427. package/features/tenancy/GetTenantById/GetTenantByIdGateway.js.map +1 -1
  428. package/features/tenancy/GetTenantById/GetTenantByIdRepository.js +18 -19
  429. package/features/tenancy/GetTenantById/GetTenantByIdRepository.js.map +1 -1
  430. package/features/tenancy/GetTenantById/GetTenantByIdUseCase.js +17 -17
  431. package/features/tenancy/GetTenantById/GetTenantByIdUseCase.js.map +1 -1
  432. package/features/tenancy/GetTenantById/abstractions.js +4 -6
  433. package/features/tenancy/GetTenantById/abstractions.js.map +1 -1
  434. package/features/tenancy/GetTenantById/feature.js +8 -12
  435. package/features/tenancy/GetTenantById/feature.js.map +1 -1
  436. package/features/tenancy/GetTenantById/index.js +1 -3
  437. package/features/tenancy/InstallTenant/DependencyResolver.js +53 -65
  438. package/features/tenancy/InstallTenant/DependencyResolver.js.map +1 -1
  439. package/features/tenancy/InstallTenant/InstallTenantUseCase.js +95 -113
  440. package/features/tenancy/InstallTenant/InstallTenantUseCase.js.map +1 -1
  441. package/features/tenancy/InstallTenant/abstractions.js +4 -15
  442. package/features/tenancy/InstallTenant/abstractions.js.map +1 -1
  443. package/features/tenancy/InstallTenant/errors.js +15 -16
  444. package/features/tenancy/InstallTenant/errors.js.map +1 -1
  445. package/features/tenancy/InstallTenant/events.js +8 -5
  446. package/features/tenancy/InstallTenant/events.js.map +1 -1
  447. package/features/tenancy/InstallTenant/feature.js +6 -5
  448. package/features/tenancy/InstallTenant/feature.js.map +1 -1
  449. package/features/tenancy/InstallTenant/index.js +1 -3
  450. package/features/tenancy/ListTenants/ListTenantsGateway.js +14 -11
  451. package/features/tenancy/ListTenants/ListTenantsGateway.js.map +1 -1
  452. package/features/tenancy/ListTenants/ListTenantsRepository.js +14 -12
  453. package/features/tenancy/ListTenants/ListTenantsRepository.js.map +1 -1
  454. package/features/tenancy/ListTenants/ListTenantsUseCase.js +16 -14
  455. package/features/tenancy/ListTenants/ListTenantsUseCase.js.map +1 -1
  456. package/features/tenancy/ListTenants/abstractions.js +4 -12
  457. package/features/tenancy/ListTenants/abstractions.js.map +1 -1
  458. package/features/tenancy/ListTenants/feature.js +8 -7
  459. package/features/tenancy/ListTenants/feature.js.map +1 -1
  460. package/features/tenancy/ListTenants/index.js +1 -3
  461. package/features/tenancy/TenancyFeature.js +20 -26
  462. package/features/tenancy/TenancyFeature.js.map +1 -1
  463. package/features/tenancy/TenantContext/TenantContext.js +46 -48
  464. package/features/tenancy/TenantContext/TenantContext.js.map +1 -1
  465. package/features/tenancy/TenantContext/abstractions.js +2 -2
  466. package/features/tenancy/TenantContext/abstractions.js.map +1 -1
  467. package/features/tenancy/TenantContext/errors.js +7 -7
  468. package/features/tenancy/TenantContext/errors.js.map +1 -1
  469. package/features/tenancy/TenantContext/feature.js +6 -5
  470. package/features/tenancy/TenantContext/feature.js.map +1 -1
  471. package/features/tenancy/TenantContext/index.js +0 -2
  472. package/features/tenancy/UpdateTenant/UpdateTenantGateway.js +14 -11
  473. package/features/tenancy/UpdateTenant/UpdateTenantGateway.js.map +1 -1
  474. package/features/tenancy/UpdateTenant/UpdateTenantRepository.js +19 -16
  475. package/features/tenancy/UpdateTenant/UpdateTenantRepository.js.map +1 -1
  476. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.js +37 -36
  477. package/features/tenancy/UpdateTenant/UpdateTenantUseCase.js.map +1 -1
  478. package/features/tenancy/UpdateTenant/abstractions.js +6 -10
  479. package/features/tenancy/UpdateTenant/abstractions.js.map +1 -1
  480. package/features/tenancy/UpdateTenant/events.js +16 -11
  481. package/features/tenancy/UpdateTenant/events.js.map +1 -1
  482. package/features/tenancy/UpdateTenant/feature.js +8 -7
  483. package/features/tenancy/UpdateTenant/feature.js.map +1 -1
  484. package/features/tenancy/UpdateTenant/index.js +2 -4
  485. package/features/tenancy/shared/TenantCache.js +18 -17
  486. package/features/tenancy/shared/TenantCache.js.map +1 -1
  487. package/features/tenancy/shared/abstractions.js +2 -1
  488. package/features/tenancy/shared/abstractions.js.map +1 -1
  489. package/features/tenancy/shared/storageOperations.js +2 -5
  490. package/features/tenancy/shared/storageOperations.js.map +1 -1
  491. package/features/users/AdminUsersFeature.js +15 -19
  492. package/features/users/AdminUsersFeature.js.map +1 -1
  493. package/features/users/CreateUser/CreateUserUseCase.js +65 -100
  494. package/features/users/CreateUser/CreateUserUseCase.js.map +1 -1
  495. package/features/users/CreateUser/abstractions.js +2 -13
  496. package/features/users/CreateUser/abstractions.js.map +1 -1
  497. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.js +16 -15
  498. package/features/users/CreateUser/decorators/CreateUserWithWcpIncrement.js.map +1 -1
  499. package/features/users/CreateUser/events.js +17 -18
  500. package/features/users/CreateUser/events.js.map +1 -1
  501. package/features/users/CreateUser/feature.js +7 -6
  502. package/features/users/CreateUser/feature.js.map +1 -1
  503. package/features/users/CreateUser/index.js +0 -2
  504. package/features/users/CreateUser/schema.js +14 -18
  505. package/features/users/CreateUser/schema.js.map +1 -1
  506. package/features/users/DeleteUser/DeleteUserUseCase.js +35 -50
  507. package/features/users/DeleteUser/DeleteUserUseCase.js.map +1 -1
  508. package/features/users/DeleteUser/abstractions.js +2 -13
  509. package/features/users/DeleteUser/abstractions.js.map +1 -1
  510. package/features/users/DeleteUser/decorators/DeleteUserWithWcpDecrement.js +15 -16
  511. package/features/users/DeleteUser/decorators/DeleteUserWithWcpDecrement.js.map +1 -1
  512. package/features/users/DeleteUser/errors.js +7 -7
  513. package/features/users/DeleteUser/errors.js.map +1 -1
  514. package/features/users/DeleteUser/events.js +17 -18
  515. package/features/users/DeleteUser/events.js.map +1 -1
  516. package/features/users/DeleteUser/feature.js +7 -6
  517. package/features/users/DeleteUser/feature.js.map +1 -1
  518. package/features/users/DeleteUser/index.js +0 -2
  519. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js +60 -74
  520. package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js.map +1 -1
  521. package/features/users/ExternalIdpUserSync/feature.js +6 -5
  522. package/features/users/ExternalIdpUserSync/feature.js.map +1 -1
  523. package/features/users/ExternalIdpUserSync/index.js +0 -2
  524. package/features/users/GetIdentityProfile/GetIdentityProfileUseCase.js +29 -39
  525. package/features/users/GetIdentityProfile/GetIdentityProfileUseCase.js.map +1 -1
  526. package/features/users/GetIdentityProfile/abstractions.js +2 -11
  527. package/features/users/GetIdentityProfile/abstractions.js.map +1 -1
  528. package/features/users/GetIdentityProfile/feature.js +6 -5
  529. package/features/users/GetIdentityProfile/feature.js.map +1 -1
  530. package/features/users/GetIdentityProfile/index.js +0 -2
  531. package/features/users/GetIdentityProfile/types.js +0 -3
  532. package/features/users/GetUser/GetUserUseCase.js +19 -23
  533. package/features/users/GetUser/GetUserUseCase.js.map +1 -1
  534. package/features/users/GetUser/abstractions.js +2 -11
  535. package/features/users/GetUser/abstractions.js.map +1 -1
  536. package/features/users/GetUser/feature.js +6 -5
  537. package/features/users/GetUser/feature.js.map +1 -1
  538. package/features/users/GetUser/index.js +0 -2
  539. package/features/users/ListUserTeams/ListUserTeamsUseCase.js +33 -42
  540. package/features/users/ListUserTeams/ListUserTeamsUseCase.js.map +1 -1
  541. package/features/users/ListUserTeams/abstractions.js +2 -11
  542. package/features/users/ListUserTeams/abstractions.js.map +1 -1
  543. package/features/users/ListUserTeams/feature.js +6 -5
  544. package/features/users/ListUserTeams/feature.js.map +1 -1
  545. package/features/users/ListUserTeams/index.js +0 -2
  546. package/features/users/ListUsers/ListUsersUseCase.js +19 -23
  547. package/features/users/ListUsers/ListUsersUseCase.js.map +1 -1
  548. package/features/users/ListUsers/abstractions.js +2 -11
  549. package/features/users/ListUsers/abstractions.js.map +1 -1
  550. package/features/users/ListUsers/feature.js +6 -5
  551. package/features/users/ListUsers/feature.js.map +1 -1
  552. package/features/users/ListUsers/index.js +0 -2
  553. package/features/users/UpdateUser/UpdateUserUseCase.js +52 -74
  554. package/features/users/UpdateUser/UpdateUserUseCase.js.map +1 -1
  555. package/features/users/UpdateUser/abstractions.js +2 -13
  556. package/features/users/UpdateUser/abstractions.js.map +1 -1
  557. package/features/users/UpdateUser/events.js +17 -18
  558. package/features/users/UpdateUser/events.js.map +1 -1
  559. package/features/users/UpdateUser/feature.js +6 -5
  560. package/features/users/UpdateUser/feature.js.map +1 -1
  561. package/features/users/UpdateUser/index.js +0 -2
  562. package/features/users/UpdateUser/schema.js +11 -10
  563. package/features/users/UpdateUser/schema.js.map +1 -1
  564. package/features/users/shared/AdminUsersRepository.js +104 -112
  565. package/features/users/shared/AdminUsersRepository.js.map +1 -1
  566. package/features/users/shared/abstractions.js +2 -9
  567. package/features/users/shared/abstractions.js.map +1 -1
  568. package/features/users/shared/errors.js +40 -46
  569. package/features/users/shared/errors.js.map +1 -1
  570. package/features/users/shared/loaders.js +52 -66
  571. package/features/users/shared/loaders.js.map +1 -1
  572. package/features/users/shared/storageAbstractions.js +2 -2
  573. package/features/users/shared/storageAbstractions.js.map +1 -1
  574. package/features/users/shared/types.js +0 -3
  575. package/features/wcp/WcpContext/WcpContext.js +138 -142
  576. package/features/wcp/WcpContext/WcpContext.js.map +1 -1
  577. package/features/wcp/WcpContext/abstractions.js +2 -6
  578. package/features/wcp/WcpContext/abstractions.js.map +1 -1
  579. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js +135 -134
  580. package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js.map +1 -1
  581. package/features/wcp/WcpContext/feature.js +6 -5
  582. package/features/wcp/WcpContext/feature.js.map +1 -1
  583. package/features/wcp/WcpContext/index.js +0 -2
  584. package/features/wcp/WcpContext/types.js +0 -3
  585. package/features/wcp/WcpContext/utils.js +35 -53
  586. package/features/wcp/WcpContext/utils.js.map +1 -1
  587. package/features/wcp/WcpFeature.js +7 -6
  588. package/features/wcp/WcpFeature.js.map +1 -1
  589. package/features/webhooks/Webhook/WebhookProvider.d.ts +12 -0
  590. package/features/webhooks/Webhook/WebhookProvider.js +28 -0
  591. package/features/webhooks/Webhook/WebhookProvider.js.map +1 -0
  592. package/features/webhooks/Webhook/abstractions/WebhookFactory.d.ts +14 -0
  593. package/features/webhooks/Webhook/abstractions/WebhookFactory.js +5 -0
  594. package/features/webhooks/Webhook/abstractions/WebhookFactory.js.map +1 -0
  595. package/features/webhooks/Webhook/abstractions/WebhookProvider.d.ts +9 -0
  596. package/features/webhooks/Webhook/abstractions/WebhookProvider.js +5 -0
  597. package/features/webhooks/Webhook/abstractions/WebhookProvider.js.map +1 -0
  598. package/features/webhooks/Webhook/feature.d.ts +4 -0
  599. package/features/webhooks/Webhook/feature.js +11 -0
  600. package/features/webhooks/Webhook/feature.js.map +1 -0
  601. package/features/webhooks/Webhook/index.d.ts +2 -0
  602. package/features/webhooks/Webhook/index.js +2 -0
  603. package/features/webhooks/WebhookDispatcher/NullWebhookDispatcher.d.ts +8 -0
  604. package/features/webhooks/WebhookDispatcher/NullWebhookDispatcher.js +11 -0
  605. package/features/webhooks/WebhookDispatcher/NullWebhookDispatcher.js.map +1 -0
  606. package/features/webhooks/WebhookDispatcher/abstractions.d.ts +12 -0
  607. package/features/webhooks/WebhookDispatcher/abstractions.js +5 -0
  608. package/features/webhooks/WebhookDispatcher/abstractions.js.map +1 -0
  609. package/features/webhooks/WebhookSignPayload/abstractions.d.ts +14 -0
  610. package/features/webhooks/WebhookSignPayload/abstractions.js +5 -0
  611. package/features/webhooks/WebhookSignPayload/abstractions.js.map +1 -0
  612. package/features/webhooks/WebhookVerifyPayload/abstractions.d.ts +11 -0
  613. package/features/webhooks/WebhookVerifyPayload/abstractions.js +5 -0
  614. package/features/webhooks/WebhookVerifyPayload/abstractions.js.map +1 -0
  615. package/features/webhooks/index.d.ts +5 -0
  616. package/features/webhooks/index.js +5 -0
  617. package/graphql/security/NotAuthorizedResponse.js +11 -14
  618. package/graphql/security/NotAuthorizedResponse.js.map +1 -1
  619. package/graphql/security/ProfileMapper.js +12 -11
  620. package/graphql/security/ProfileMapper.js.map +1 -1
  621. package/graphql/security/apiKey.gql.js +38 -47
  622. package/graphql/security/apiKey.gql.js.map +1 -1
  623. package/graphql/security/base.gql.js +11 -10
  624. package/graphql/security/base.gql.js.map +1 -1
  625. package/graphql/security/identity.gql.js +87 -97
  626. package/graphql/security/identity.gql.js.map +1 -1
  627. package/graphql/security/index.js +13 -8
  628. package/graphql/security/index.js.map +1 -1
  629. package/graphql/security/role.gql.js +49 -57
  630. package/graphql/security/role.gql.js.map +1 -1
  631. package/graphql/security/team.gql.js +61 -69
  632. package/graphql/security/team.gql.js.map +1 -1
  633. package/graphql/system/createSystemGraphQL.js +31 -34
  634. package/graphql/system/createSystemGraphQL.js.map +1 -1
  635. package/graphql/users/user.gql.js +87 -105
  636. package/graphql/users/user.gql.js.map +1 -1
  637. package/graphql/wcp/graphql.js +25 -28
  638. package/graphql/wcp/graphql.js.map +1 -1
  639. package/idp/JwksCache.js +22 -28
  640. package/idp/JwksCache.js.map +1 -1
  641. package/idp/JwtAuthenticator.js +34 -46
  642. package/idp/JwtAuthenticator.js.map +1 -1
  643. package/idp/OidcJwtIdentityProvider.js +55 -82
  644. package/idp/OidcJwtIdentityProvider.js.map +1 -1
  645. package/idp/abstractions.js +5 -14
  646. package/idp/abstractions.js.map +1 -1
  647. package/idp/feature.js +8 -7
  648. package/idp/feature.js.map +1 -1
  649. package/idp/index.js +1 -3
  650. package/idp/types.js +0 -3
  651. package/index.js +0 -2
  652. package/legacy/security/LegacyContext.js +133 -186
  653. package/legacy/security/LegacyContext.js.map +1 -1
  654. package/legacy/security/createSecurityContext.js +5 -9
  655. package/legacy/security/createSecurityContext.js.map +1 -1
  656. package/legacy/security/plugins/apiKeyAuthentication.js +15 -24
  657. package/legacy/security/plugins/apiKeyAuthentication.js.map +1 -1
  658. package/legacy/security/plugins/apiKeyAuthorization.js +9 -18
  659. package/legacy/security/plugins/apiKeyAuthorization.js.map +1 -1
  660. package/legacy/security/plugins/authenticateUsingCookie.js +18 -22
  661. package/legacy/security/plugins/authenticateUsingCookie.js.map +1 -1
  662. package/legacy/security/plugins/authenticateUsingHttpHeader.d.ts +1 -1
  663. package/legacy/security/plugins/authenticateUsingHttpHeader.js +15 -18
  664. package/legacy/security/plugins/authenticateUsingHttpHeader.js.map +1 -1
  665. package/legacy/security/plugins/secureHeaders.js +28 -21
  666. package/legacy/security/plugins/secureHeaders.js.map +1 -1
  667. package/legacy/tenancy/LegacyContext.js +45 -52
  668. package/legacy/tenancy/LegacyContext.js.map +1 -1
  669. package/legacy/tenancy/createTenancyContext.js +22 -42
  670. package/legacy/tenancy/createTenancyContext.js.map +1 -1
  671. package/legacy/users/LegacyContext.js +39 -54
  672. package/legacy/users/LegacyContext.js.map +1 -1
  673. package/legacy/users/createAdminUsersContext.js +7 -7
  674. package/legacy/users/createAdminUsersContext.js.map +1 -1
  675. package/legacy/wcp/LegacyWcpContext.js +80 -79
  676. package/legacy/wcp/LegacyWcpContext.js.map +1 -1
  677. package/legacy/wcp/context.d.ts +1 -3
  678. package/legacy/wcp/context.js +33 -37
  679. package/legacy/wcp/context.js.map +1 -1
  680. package/models/base/BaseModel.js +51 -56
  681. package/models/base/BaseModel.js.map +1 -1
  682. package/models/base/ModelBuilder.js +65 -78
  683. package/models/base/ModelBuilder.js.map +1 -1
  684. package/models/base/ModelFactory.js +0 -3
  685. package/models/base/__tests__/ModelBuilder.test.js +437 -454
  686. package/models/base/__tests__/ModelBuilder.test.js.map +1 -1
  687. package/models/base/abstractions.js +0 -3
  688. package/models/cms/FieldBuilder.js +112 -121
  689. package/models/cms/FieldBuilder.js.map +1 -1
  690. package/models/cms/FieldBuilderRegistry.js +13 -12
  691. package/models/cms/FieldBuilderRegistry.js.map +1 -1
  692. package/models/cms/FieldDefinitionsBuilder.js +37 -54
  693. package/models/cms/FieldDefinitionsBuilder.js.map +1 -1
  694. package/models/cms/PrivateCmsModelBuilder.js +84 -89
  695. package/models/cms/PrivateCmsModelBuilder.js.map +1 -1
  696. package/models/cms/PrivatePage/Page.fields.js +7 -6
  697. package/models/cms/PrivatePage/Page.fields.js.map +1 -1
  698. package/models/cms/PrivatePage/PageModelBuilder.js +18 -15
  699. package/models/cms/PrivatePage/PageModelBuilder.js.map +1 -1
  700. package/models/cms/PrivatePage/PageModelFactory.js +20 -25
  701. package/models/cms/PrivatePage/PageModelFactory.js.map +1 -1
  702. package/models/cms/PrivatePage/__tests__/PageModelFactory.test.js +218 -234
  703. package/models/cms/PrivatePage/__tests__/PageModelFactory.test.js.map +1 -1
  704. package/models/cms/PrivatePage/__tests__/PagePublishingDecorator.js +33 -36
  705. package/models/cms/PrivatePage/__tests__/PagePublishingDecorator.js.map +1 -1
  706. package/models/cms/PrivatePage/__tests__/PageSeoDecorator.js +25 -26
  707. package/models/cms/PrivatePage/__tests__/PageSeoDecorator.js.map +1 -1
  708. package/models/cms/PrivatePage/abstractions.js +3 -9
  709. package/models/cms/PrivatePage/abstractions.js.map +1 -1
  710. package/models/cms/__tests__/PrivateCmsModelBuilder.test.js +173 -185
  711. package/models/cms/__tests__/PrivateCmsModelBuilder.test.js.map +1 -1
  712. package/models/cms/abstractions.js +3 -20
  713. package/models/cms/abstractions.js.map +1 -1
  714. package/models/cms/types.js +0 -3
  715. package/models/simple/Page/PageModelBuilder.js +15 -14
  716. package/models/simple/Page/PageModelBuilder.js.map +1 -1
  717. package/models/simple/Page/PageModelFactory.js +16 -15
  718. package/models/simple/Page/PageModelFactory.js.map +1 -1
  719. package/models/simple/Page/__tests__/PageModelBuilderDecorator.js +21 -20
  720. package/models/simple/Page/__tests__/PageModelBuilderDecorator.js.map +1 -1
  721. package/models/simple/Page/__tests__/PageModelBuilderDecorator2.js +17 -16
  722. package/models/simple/Page/__tests__/PageModelBuilderDecorator2.js.map +1 -1
  723. package/models/simple/Page/__tests__/PageModelFactory.test.js +28 -28
  724. package/models/simple/Page/__tests__/PageModelFactory.test.js.map +1 -1
  725. package/models/simple/Page/abstractions.js +9 -8
  726. package/models/simple/Page/abstractions.js.map +1 -1
  727. package/package.json +22 -22
  728. package/types/core.js +0 -3
  729. package/types/security.js +0 -3
  730. package/types/tenancy.js +0 -3
  731. package/types/users.js +0 -3
  732. package/domain/tenancy/errors.js.map +0 -1
  733. package/exports/api/build-params.js.map +0 -1
  734. package/exports/api/event-publisher.js.map +0 -1
  735. package/exports/api/graphql.js.map +0 -1
  736. package/exports/api/key-value-store.js.map +0 -1
  737. package/exports/api/logger.js.map +0 -1
  738. package/exports/api/security/api-key.js.map +0 -1
  739. package/exports/api/security/authentication.js.map +0 -1
  740. package/exports/api/security/role.js.map +0 -1
  741. package/exports/api/security/user.js.map +0 -1
  742. package/exports/api/security.js.map +0 -1
  743. package/exports/api/system.js.map +0 -1
  744. package/exports/api/tasks.js.map +0 -1
  745. package/exports/api/tenancy.js.map +0 -1
  746. package/exports/api.js.map +0 -1
  747. package/features/ai/index.js.map +0 -1
  748. package/features/buildParams/index.js.map +0 -1
  749. package/features/encryption/index.js.map +0 -1
  750. package/features/eventPublisher/index.js.map +0 -1
  751. package/features/keyValueStore/index.js.map +0 -1
  752. package/features/logger/index.js.map +0 -1
  753. package/features/masker/index.js.map +0 -1
  754. package/features/security/IdentityContext/index.js.map +0 -1
  755. package/features/security/apiKeys/CreateApiKey/index.js.map +0 -1
  756. package/features/security/apiKeys/DeleteApiKey/index.js.map +0 -1
  757. package/features/security/apiKeys/GetApiKey/index.js.map +0 -1
  758. package/features/security/apiKeys/GetApiKeyBySlug/index.js.map +0 -1
  759. package/features/security/apiKeys/GetApiKeyByToken/index.js.map +0 -1
  760. package/features/security/apiKeys/ListApiKeys/index.js.map +0 -1
  761. package/features/security/apiKeys/UpdateApiKey/index.js.map +0 -1
  762. package/features/security/apiKeys/shared/types.js.map +0 -1
  763. package/features/security/authentication/AuthenticationContext/index.js.map +0 -1
  764. package/features/security/authentication/Authenticator/index.js.map +0 -1
  765. package/features/security/authorization/AuthorizationContext/index.js.map +0 -1
  766. package/features/security/authorization/Authorizer/index.js.map +0 -1
  767. package/features/security/login/index.js.map +0 -1
  768. package/features/security/permissions/index.js.map +0 -1
  769. package/features/security/permissions/types.js.map +0 -1
  770. package/features/security/roles/CreateRole/index.js.map +0 -1
  771. package/features/security/roles/DeleteRole/index.js.map +0 -1
  772. package/features/security/roles/GetRole/index.js.map +0 -1
  773. package/features/security/roles/ListRoles/index.js.map +0 -1
  774. package/features/security/roles/UpdateRole/index.js.map +0 -1
  775. package/features/security/roles/shared/types.js.map +0 -1
  776. package/features/security/shared/index.js.map +0 -1
  777. package/features/security/teams/CreateTeam/index.js.map +0 -1
  778. package/features/security/teams/DeleteTeam/index.js.map +0 -1
  779. package/features/security/teams/GetTeam/index.js.map +0 -1
  780. package/features/security/teams/ListTeams/index.js.map +0 -1
  781. package/features/security/teams/UpdateTeam/index.js.map +0 -1
  782. package/features/security/teams/shared/types.js.map +0 -1
  783. package/features/system/InstallSystem/index.js.map +0 -1
  784. package/features/task/TaskController/index.js.map +0 -1
  785. package/features/task/TaskDefinition/index.js.map +0 -1
  786. package/features/task/TaskService/index.js.map +0 -1
  787. package/features/tenancy/CreateTenant/index.js.map +0 -1
  788. package/features/tenancy/DeleteTenant/index.js.map +0 -1
  789. package/features/tenancy/GetRootTenant/index.js.map +0 -1
  790. package/features/tenancy/GetTenantById/index.js.map +0 -1
  791. package/features/tenancy/InstallTenant/index.js.map +0 -1
  792. package/features/tenancy/ListTenants/index.js.map +0 -1
  793. package/features/tenancy/TenantContext/index.js.map +0 -1
  794. package/features/tenancy/UpdateTenant/index.js.map +0 -1
  795. package/features/users/CreateUser/index.js.map +0 -1
  796. package/features/users/DeleteUser/index.js.map +0 -1
  797. package/features/users/ExternalIdpUserSync/index.js.map +0 -1
  798. package/features/users/GetIdentityProfile/index.js.map +0 -1
  799. package/features/users/GetIdentityProfile/types.js.map +0 -1
  800. package/features/users/GetUser/index.js.map +0 -1
  801. package/features/users/ListUserTeams/index.js.map +0 -1
  802. package/features/users/ListUsers/index.js.map +0 -1
  803. package/features/users/UpdateUser/index.js.map +0 -1
  804. package/features/users/shared/types.js.map +0 -1
  805. package/features/wcp/WcpContext/index.js.map +0 -1
  806. package/features/wcp/WcpContext/types.js.map +0 -1
  807. package/idp/index.js.map +0 -1
  808. package/idp/types.js.map +0 -1
  809. package/index.js.map +0 -1
  810. package/models/base/ModelFactory.js.map +0 -1
  811. package/models/base/abstractions.js.map +0 -1
  812. package/models/cms/types.js.map +0 -1
  813. package/types/core.js.map +0 -1
  814. package/types/security.js.map +0 -1
  815. package/types/tenancy.js.map +0 -1
  816. package/types/users.js.map +0 -1
@@ -7,17 +7,15 @@ import { TeamsRepository } from "../../features/security/teams/shared/abstractio
7
7
  import { RolesRepository } from "../../features/security/roles/shared/abstractions.js";
8
8
  import { IdentityContext } from "../../features/security/IdentityContext/index.js";
9
9
  import { ProfileMapper } from "./ProfileMapper.js";
10
- const getDefaultTenant = async context => {
11
- const identity = context.security.getIdentity();
12
- const defaultTenantId = identity.context.defaultTenantId ?? "root";
13
- const defaultTenant = await context.tenancy.getTenantById(defaultTenantId);
14
- if (defaultTenant) {
15
- return defaultTenant;
16
- }
17
- return context.tenancy.getRootTenant();
10
+ const getDefaultTenant = async (context)=>{
11
+ const identity = context.security.getIdentity();
12
+ const defaultTenantId = identity.context.defaultTenantId ?? "root";
13
+ const defaultTenant = await context.tenancy.getTenantById(defaultTenantId);
14
+ if (defaultTenant) return defaultTenant;
15
+ return context.tenancy.getRootTenant();
18
16
  };
19
- export default new GraphQLSchemaPlugin({
20
- typeDefs: /* GraphQL */`
17
+ const identity_gql = new GraphQLSchemaPlugin({
18
+ typeDefs: `
21
19
  type SecurityIdentityTenant {
22
20
  id: ID!
23
21
  name: String!
@@ -65,99 +63,91 @@ export default new GraphQLSchemaPlugin({
65
63
  login: SecurityIdentityLoginResponse
66
64
  }
67
65
  `,
68
- resolvers: {
69
- SecurityMutation: {
70
- login: async (_, __, context) => {
71
- const identityContext = context.container.resolve(IdentityContext);
72
- const identity = identityContext.getIdentity();
73
- if (identity.isAnonymous()) {
74
- return new ErrorResponse({
75
- code: "Security/Identity/NotAuthenticated",
76
- message: "Unauthenticated!"
77
- });
66
+ resolvers: {
67
+ SecurityMutation: {
68
+ login: async (_, __, context)=>{
69
+ const identityContext = context.container.resolve(IdentityContext);
70
+ const identity = identityContext.getIdentity();
71
+ if (identity.isAnonymous()) return new ErrorResponse({
72
+ code: "Security/Identity/NotAuthenticated",
73
+ message: "Unauthenticated!"
74
+ });
75
+ try {
76
+ const eventPublisher = context.container.resolve(EventPublisher);
77
+ await eventPublisher.publish(new AfterLoginEvent({
78
+ identity
79
+ }));
80
+ } catch (err) {
81
+ return new ErrorResponse(err);
82
+ }
83
+ const rolesRepo = context.container.resolve(RolesRepository);
84
+ const teamsRepo = context.container.resolve(TeamsRepository);
85
+ const getProfile = context.container.resolve(GetIdentityProfileUseCase);
86
+ const result = await context.security.withoutAuthorization(async ()=>getProfile.execute(identity.id));
87
+ if (result.isFail()) return new ErrorResponse({
88
+ code: "Security/Identity/NotAuthorized",
89
+ message: "Missing user profile!"
90
+ });
91
+ const user = result.value;
92
+ const [roles, teams] = await Promise.all([
93
+ getRoles(user, rolesRepo),
94
+ getTeams(user, teamsRepo)
95
+ ]);
96
+ const profileMapper = new ProfileMapper();
97
+ const profile = await profileMapper.toDTO(user);
98
+ return new Response({
99
+ ...identity.toJson(),
100
+ profile,
101
+ roles,
102
+ teams
103
+ });
104
+ }
105
+ },
106
+ SecurityIdentity: {
107
+ defaultTenant (_, __, context) {
108
+ return getDefaultTenant(context);
109
+ },
110
+ currentTenant (_, __, context) {
111
+ return context.tenancy.getCurrentTenant();
112
+ },
113
+ permissions (_, __, context) {
114
+ return context.security.listPermissions();
115
+ }
78
116
  }
79
- try {
80
- const eventPublisher = context.container.resolve(EventPublisher);
81
- await eventPublisher.publish(new AfterLoginEvent({
82
- identity
83
- }));
84
- } catch (err) {
85
- return new ErrorResponse(err);
86
- }
87
-
88
- // Roles and teams are stored in the user record.
89
- const rolesRepo = context.container.resolve(RolesRepository);
90
- const teamsRepo = context.container.resolve(TeamsRepository);
91
- const getProfile = context.container.resolve(GetIdentityProfileUseCase);
92
- const result = await context.security.withoutAuthorization(async () => {
93
- return getProfile.execute(identity.id);
94
- });
95
- if (result.isFail()) {
96
- return new ErrorResponse({
97
- code: "Security/Identity/NotAuthorized",
98
- message: "Missing user profile!"
99
- });
100
- }
101
- const user = result.value;
102
- const [roles, teams] = await Promise.all([getRoles(user, rolesRepo), getTeams(user, teamsRepo)]);
103
- const profileMapper = new ProfileMapper();
104
- const profile = await profileMapper.toDTO(user);
105
- return new Response({
106
- ...identity.toJson(),
107
- profile,
108
- roles,
109
- teams
110
- });
111
- }
112
- },
113
- SecurityIdentity: {
114
- defaultTenant(_, __, context) {
115
- return getDefaultTenant(context);
116
- },
117
- currentTenant(_, __, context) {
118
- return context.tenancy.getCurrentTenant();
119
- },
120
- permissions(_, __, context) {
121
- return context.security.listPermissions();
122
- }
123
117
  }
124
- }
125
118
  });
126
- const getRoles = async (user, rolesRepo) => {
127
- const roleIds = user.roles ?? [];
128
- if (roleIds.length > 0) {
129
- const result = await rolesRepo.list({
130
- where: {
131
- id_in: roleIds
132
- }
133
- });
134
- if (result.isOk()) {
135
- return result.value.map(role => ({
136
- id: role.id,
137
- slug: role.slug,
138
- name: role.name
139
- }));
119
+ const getRoles = async (user, rolesRepo)=>{
120
+ const roleIds = user.roles ?? [];
121
+ if (roleIds.length > 0) {
122
+ const result = await rolesRepo.list({
123
+ where: {
124
+ id_in: roleIds
125
+ }
126
+ });
127
+ if (result.isOk()) return result.value.map((role)=>({
128
+ id: role.id,
129
+ slug: role.slug,
130
+ name: role.name
131
+ }));
140
132
  }
141
- }
142
- return [];
133
+ return [];
143
134
  };
144
- const getTeams = async (user, teamsRepo) => {
145
- const teamIds = user.teams ?? [];
146
- if (teamIds.length > 0) {
147
- const result = await teamsRepo.list({
148
- where: {
149
- id_in: teamIds
150
- }
151
- });
152
- if (result.isOk()) {
153
- return result.value.map(team => ({
154
- id: team.id,
155
- slug: team.slug,
156
- name: team.name
157
- }));
135
+ const getTeams = async (user, teamsRepo)=>{
136
+ const teamIds = user.teams ?? [];
137
+ if (teamIds.length > 0) {
138
+ const result = await teamsRepo.list({
139
+ where: {
140
+ id_in: teamIds
141
+ }
142
+ });
143
+ if (result.isOk()) return result.value.map((team)=>({
144
+ id: team.id,
145
+ slug: team.slug,
146
+ name: team.name
147
+ }));
158
148
  }
159
- }
160
- return [];
149
+ return [];
161
150
  };
151
+ export default identity_gql;
162
152
 
163
153
  //# sourceMappingURL=identity.gql.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GraphQLSchemaPlugin","ErrorResponse","Response","EventPublisher","AfterLoginEvent","GetIdentityProfileUseCase","TeamsRepository","RolesRepository","IdentityContext","ProfileMapper","getDefaultTenant","context","identity","security","getIdentity","defaultTenantId","defaultTenant","tenancy","getTenantById","getRootTenant","typeDefs","resolvers","SecurityMutation","login","_","__","identityContext","container","resolve","isAnonymous","code","message","eventPublisher","publish","err","rolesRepo","teamsRepo","getProfile","result","withoutAuthorization","execute","id","isFail","user","value","roles","teams","Promise","all","getRoles","getTeams","profileMapper","profile","toDTO","toJson","SecurityIdentity","currentTenant","getCurrentTenant","permissions","listPermissions","roleIds","length","list","where","id_in","isOk","map","role","slug","name","teamIds","team"],"sources":["identity.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport { ErrorResponse, Response } from \"@webiny/handler-graphql\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport type { ApiCoreContext } from \"~/types/core.js\";\nimport { AfterLoginEvent } from \"~/features/security/login/index.js\";\nimport { GetIdentityProfileUseCase } from \"~/features/users/GetIdentityProfile/index.js\";\nimport type { SecurityContext } from \"~/types/security.js\";\nimport type { AdminUser } from \"~/types/users.js\";\nimport { TeamsRepository } from \"~/features/security/teams/shared/abstractions.js\";\nimport { RolesRepository } from \"~/features/security/roles/shared/abstractions.js\";\nimport { IdentityContext } from \"~/features/security/IdentityContext/index.js\";\nimport { ProfileMapper } from \"./ProfileMapper.js\";\n\nconst getDefaultTenant = async (context: SecurityContext) => {\n const identity = context.security.getIdentity();\n const defaultTenantId = identity.context.defaultTenantId ?? \"root\";\n\n const defaultTenant = await context.tenancy.getTenantById(defaultTenantId);\n if (defaultTenant) {\n return defaultTenant;\n }\n\n return context.tenancy.getRootTenant();\n};\n\nexport default new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: /* GraphQL */ `\n type SecurityIdentityTenant {\n id: ID!\n name: String!\n }\n type SecurityIdentityProfileRole {\n id: String!\n slug: String!\n name: String!\n }\n\n type SecurityIdentityProfileTeam {\n id: String!\n slug: String!\n name: String!\n }\n\n type SecurityIdentityProfile {\n firstName: String\n lastName: String\n email: String\n avatar: JSON\n external: Boolean!\n createdOn: DateTime!\n }\n\n type SecurityIdentity {\n id: ID!\n type: String!\n displayName: String!\n roles: [SecurityIdentityProfileRole!]!\n teams: [SecurityIdentityProfileTeam!]!\n permissions: [JSON!]!\n profile: SecurityIdentityProfile!\n currentTenant: SecurityIdentityTenant!\n defaultTenant: SecurityIdentityTenant!\n }\n\n type SecurityIdentityLoginResponse {\n data: SecurityIdentity\n error: SecurityError\n }\n\n extend type SecurityMutation {\n \"Login using idToken obtained from a 3rd party identity provider\"\n login: SecurityIdentityLoginResponse\n }\n `,\n resolvers: {\n SecurityMutation: {\n login: async (_, __, context) => {\n const identityContext = context.container.resolve(IdentityContext);\n const identity = identityContext.getIdentity();\n if (identity.isAnonymous()) {\n return new ErrorResponse({\n code: \"Security/Identity/NotAuthenticated\",\n message: \"Unauthenticated!\"\n });\n }\n\n try {\n const eventPublisher = context.container.resolve(EventPublisher);\n await eventPublisher.publish(new AfterLoginEvent({ identity }));\n } catch (err) {\n return new ErrorResponse(err);\n }\n\n // Roles and teams are stored in the user record.\n const rolesRepo = context.container.resolve(RolesRepository);\n const teamsRepo = context.container.resolve(TeamsRepository);\n const getProfile = context.container.resolve(GetIdentityProfileUseCase);\n\n const result = await context.security.withoutAuthorization(async () => {\n return getProfile.execute(identity.id);\n });\n\n if (result.isFail()) {\n return new ErrorResponse({\n code: \"Security/Identity/NotAuthorized\",\n message: \"Missing user profile!\"\n });\n }\n\n const user = result.value;\n\n const [roles, teams] = await Promise.all([\n getRoles(user, rolesRepo),\n getTeams(user, teamsRepo)\n ]);\n\n const profileMapper = new ProfileMapper();\n const profile = await profileMapper.toDTO(user);\n\n return new Response({\n ...identity.toJson(),\n profile,\n roles,\n teams\n });\n }\n },\n SecurityIdentity: {\n defaultTenant(_, __, context) {\n return getDefaultTenant(context);\n },\n currentTenant(_, __, context) {\n return context.tenancy.getCurrentTenant();\n },\n permissions(_, __, context) {\n return context.security.listPermissions();\n }\n }\n }\n});\n\nconst getRoles = async (user: AdminUser, rolesRepo: RolesRepository.Interface) => {\n const roleIds = user.roles ?? [];\n if (roleIds.length > 0) {\n const result = await rolesRepo.list({\n where: { id_in: roleIds }\n });\n\n if (result.isOk()) {\n return result.value.map(role => ({\n id: role.id,\n slug: role.slug,\n name: role.name\n }));\n }\n }\n\n return [];\n};\n\nconst getTeams = async (user: AdminUser, teamsRepo: TeamsRepository.Interface) => {\n const teamIds = user.teams ?? [];\n if (teamIds.length > 0) {\n const result = await teamsRepo.list({\n where: { id_in: teamIds }\n });\n if (result.isOk()) {\n return result.value.map(team => ({\n id: team.id,\n slug: team.slug,\n name: team.name\n }));\n }\n }\n return [];\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"graphql/security/identity.gql.js","sources":["../../../src/graphql/security/identity.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport { ErrorResponse, Response } from \"@webiny/handler-graphql\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport type { ApiCoreContext } from \"~/types/core.js\";\nimport { AfterLoginEvent } from \"~/features/security/login/index.js\";\nimport { GetIdentityProfileUseCase } from \"~/features/users/GetIdentityProfile/index.js\";\nimport type { SecurityContext } from \"~/types/security.js\";\nimport type { AdminUser } from \"~/types/users.js\";\nimport { TeamsRepository } from \"~/features/security/teams/shared/abstractions.js\";\nimport { RolesRepository } from \"~/features/security/roles/shared/abstractions.js\";\nimport { IdentityContext } from \"~/features/security/IdentityContext/index.js\";\nimport { ProfileMapper } from \"./ProfileMapper.js\";\n\nconst getDefaultTenant = async (context: SecurityContext) => {\n const identity = context.security.getIdentity();\n const defaultTenantId = identity.context.defaultTenantId ?? \"root\";\n\n const defaultTenant = await context.tenancy.getTenantById(defaultTenantId);\n if (defaultTenant) {\n return defaultTenant;\n }\n\n return context.tenancy.getRootTenant();\n};\n\nexport default new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: /* GraphQL */ `\n type SecurityIdentityTenant {\n id: ID!\n name: String!\n }\n type SecurityIdentityProfileRole {\n id: String!\n slug: String!\n name: String!\n }\n\n type SecurityIdentityProfileTeam {\n id: String!\n slug: String!\n name: String!\n }\n\n type SecurityIdentityProfile {\n firstName: String\n lastName: String\n email: String\n avatar: JSON\n external: Boolean!\n createdOn: DateTime!\n }\n\n type SecurityIdentity {\n id: ID!\n type: String!\n displayName: String!\n roles: [SecurityIdentityProfileRole!]!\n teams: [SecurityIdentityProfileTeam!]!\n permissions: [JSON!]!\n profile: SecurityIdentityProfile!\n currentTenant: SecurityIdentityTenant!\n defaultTenant: SecurityIdentityTenant!\n }\n\n type SecurityIdentityLoginResponse {\n data: SecurityIdentity\n error: SecurityError\n }\n\n extend type SecurityMutation {\n \"Login using idToken obtained from a 3rd party identity provider\"\n login: SecurityIdentityLoginResponse\n }\n `,\n resolvers: {\n SecurityMutation: {\n login: async (_, __, context) => {\n const identityContext = context.container.resolve(IdentityContext);\n const identity = identityContext.getIdentity();\n if (identity.isAnonymous()) {\n return new ErrorResponse({\n code: \"Security/Identity/NotAuthenticated\",\n message: \"Unauthenticated!\"\n });\n }\n\n try {\n const eventPublisher = context.container.resolve(EventPublisher);\n await eventPublisher.publish(new AfterLoginEvent({ identity }));\n } catch (err) {\n return new ErrorResponse(err);\n }\n\n // Roles and teams are stored in the user record.\n const rolesRepo = context.container.resolve(RolesRepository);\n const teamsRepo = context.container.resolve(TeamsRepository);\n const getProfile = context.container.resolve(GetIdentityProfileUseCase);\n\n const result = await context.security.withoutAuthorization(async () => {\n return getProfile.execute(identity.id);\n });\n\n if (result.isFail()) {\n return new ErrorResponse({\n code: \"Security/Identity/NotAuthorized\",\n message: \"Missing user profile!\"\n });\n }\n\n const user = result.value;\n\n const [roles, teams] = await Promise.all([\n getRoles(user, rolesRepo),\n getTeams(user, teamsRepo)\n ]);\n\n const profileMapper = new ProfileMapper();\n const profile = await profileMapper.toDTO(user);\n\n return new Response({\n ...identity.toJson(),\n profile,\n roles,\n teams\n });\n }\n },\n SecurityIdentity: {\n defaultTenant(_, __, context) {\n return getDefaultTenant(context);\n },\n currentTenant(_, __, context) {\n return context.tenancy.getCurrentTenant();\n },\n permissions(_, __, context) {\n return context.security.listPermissions();\n }\n }\n }\n});\n\nconst getRoles = async (user: AdminUser, rolesRepo: RolesRepository.Interface) => {\n const roleIds = user.roles ?? [];\n if (roleIds.length > 0) {\n const result = await rolesRepo.list({\n where: { id_in: roleIds }\n });\n\n if (result.isOk()) {\n return result.value.map(role => ({\n id: role.id,\n slug: role.slug,\n name: role.name\n }));\n }\n }\n\n return [];\n};\n\nconst getTeams = async (user: AdminUser, teamsRepo: TeamsRepository.Interface) => {\n const teamIds = user.teams ?? [];\n if (teamIds.length > 0) {\n const result = await teamsRepo.list({\n where: { id_in: teamIds }\n });\n if (result.isOk()) {\n return result.value.map(team => ({\n id: team.id,\n slug: team.slug,\n name: team.name\n }));\n }\n }\n return [];\n};\n"],"names":["getDefaultTenant","context","identity","defaultTenantId","defaultTenant","GraphQLSchemaPlugin","_","__","identityContext","IdentityContext","ErrorResponse","eventPublisher","EventPublisher","AfterLoginEvent","err","rolesRepo","RolesRepository","teamsRepo","TeamsRepository","getProfile","GetIdentityProfileUseCase","result","user","roles","teams","Promise","getRoles","getTeams","profileMapper","ProfileMapper","profile","Response","roleIds","role","teamIds","team"],"mappings":"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"}
@@ -1,10 +1,15 @@
1
- import base from "./base.gql.js";
2
- import apiKey from "./apiKey.gql.js";
3
- import role from "./role.gql.js";
4
- import team from "./team.gql.js";
5
- import identity from "./identity.gql.js";
6
- export const createSecurityGraphQL = () => {
7
- return [base, team, apiKey, role, identity];
8
- };
1
+ import base_gql from "./base.gql.js";
2
+ import apiKey_gql from "./apiKey.gql.js";
3
+ import role_gql from "./role.gql.js";
4
+ import team_gql from "./team.gql.js";
5
+ import identity_gql from "./identity.gql.js";
6
+ const createSecurityGraphQL = ()=>[
7
+ base_gql,
8
+ team_gql,
9
+ apiKey_gql,
10
+ role_gql,
11
+ identity_gql
12
+ ];
13
+ export { createSecurityGraphQL };
9
14
 
10
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["base","apiKey","role","team","identity","createSecurityGraphQL"],"sources":["index.ts"],"sourcesContent":["import base from \"./base.gql.js\";\nimport apiKey from \"./apiKey.gql.js\";\nimport role from \"./role.gql.js\";\nimport team from \"./team.gql.js\";\nimport identity from \"./identity.gql.js\";\n\nexport const createSecurityGraphQL = () => {\n return [base, team, apiKey, role, identity];\n};\n"],"mappings":"AAAA,OAAOA,IAAI;AACX,OAAOC,MAAM;AACb,OAAOC,IAAI;AACX,OAAOC,IAAI;AACX,OAAOC,QAAQ;AAEf,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACvC,OAAO,CAACL,IAAI,EAAEG,IAAI,EAAEF,MAAM,EAAEC,IAAI,EAAEE,QAAQ,CAAC;AAC/C,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"graphql/security/index.js","sources":["../../../src/graphql/security/index.ts"],"sourcesContent":["import base from \"./base.gql.js\";\nimport apiKey from \"./apiKey.gql.js\";\nimport role from \"./role.gql.js\";\nimport team from \"./team.gql.js\";\nimport identity from \"./identity.gql.js\";\n\nexport const createSecurityGraphQL = () => {\n return [base, team, apiKey, role, identity];\n};\n"],"names":["createSecurityGraphQL","base","team","apiKey","role","identity"],"mappings":";;;;;AAMO,MAAMA,wBAAwB,IAC1B;QAACC;QAAMC;QAAMC;QAAQC;QAAMC;KAAS"}
@@ -1,7 +1,7 @@
1
1
  import { ErrorResponse, ListErrorResponse, ListResponse, Response } from "@webiny/handler-graphql/responses.js";
2
2
  import { GraphQLSchemaPlugin } from "@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js";
3
- export default new GraphQLSchemaPlugin({
4
- typeDefs: /* GraphQL */`
3
+ const role_gql = new GraphQLSchemaPlugin({
4
+ typeDefs: `
5
5
  type SecurityRole {
6
6
  id: ID
7
7
  name: String
@@ -52,63 +52,55 @@ export default new GraphQLSchemaPlugin({
52
52
  deleteRole(id: ID!): SecurityBooleanResponse
53
53
  }
54
54
  `,
55
- resolvers: {
56
- SecurityQuery: {
57
- getRole: async (_, {
58
- where
59
- }, context) => {
60
- try {
61
- const roles = await context.security.getRole({
62
- where
63
- });
64
- return new Response(roles);
65
- } catch (e) {
66
- return new ErrorResponse(e);
55
+ resolvers: {
56
+ SecurityQuery: {
57
+ getRole: async (_, { where }, context)=>{
58
+ try {
59
+ const roles = await context.security.getRole({
60
+ where
61
+ });
62
+ return new Response(roles);
63
+ } catch (e) {
64
+ return new ErrorResponse(e);
65
+ }
66
+ },
67
+ listRoles: async (_, __, context)=>{
68
+ try {
69
+ const rolesList = await context.security.listRoles();
70
+ return new ListResponse(rolesList);
71
+ } catch (e) {
72
+ return new ListErrorResponse(e);
73
+ }
74
+ }
75
+ },
76
+ SecurityMutation: {
77
+ createRole: async (_, { data }, context)=>{
78
+ try {
79
+ const role = await context.security.createRole(data);
80
+ return new Response(role);
81
+ } catch (e) {
82
+ return new ErrorResponse(e);
83
+ }
84
+ },
85
+ updateRole: async (_, { id, data }, context)=>{
86
+ try {
87
+ const role = await context.security.updateRole(id, data);
88
+ return new Response(role);
89
+ } catch (e) {
90
+ return new ErrorResponse(e);
91
+ }
92
+ },
93
+ deleteRole: async (_, { id }, context)=>{
94
+ try {
95
+ await context.security.deleteRole(id);
96
+ return new Response(true);
97
+ } catch (e) {
98
+ return new ErrorResponse(e);
99
+ }
100
+ }
67
101
  }
68
- },
69
- listRoles: async (_, __, context) => {
70
- try {
71
- const rolesList = await context.security.listRoles();
72
- return new ListResponse(rolesList);
73
- } catch (e) {
74
- return new ListErrorResponse(e);
75
- }
76
- }
77
- },
78
- SecurityMutation: {
79
- createRole: async (_, {
80
- data
81
- }, context) => {
82
- try {
83
- const role = await context.security.createRole(data);
84
- return new Response(role);
85
- } catch (e) {
86
- return new ErrorResponse(e);
87
- }
88
- },
89
- updateRole: async (_, {
90
- id,
91
- data
92
- }, context) => {
93
- try {
94
- const role = await context.security.updateRole(id, data);
95
- return new Response(role);
96
- } catch (e) {
97
- return new ErrorResponse(e);
98
- }
99
- },
100
- deleteRole: async (_, {
101
- id
102
- }, context) => {
103
- try {
104
- await context.security.deleteRole(id);
105
- return new Response(true);
106
- } catch (e) {
107
- return new ErrorResponse(e);
108
- }
109
- }
110
102
  }
111
- }
112
103
  });
104
+ export default role_gql;
113
105
 
114
106
  //# sourceMappingURL=role.gql.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ErrorResponse","ListErrorResponse","ListResponse","Response","GraphQLSchemaPlugin","typeDefs","resolvers","SecurityQuery","getRole","_","where","context","roles","security","e","listRoles","__","rolesList","SecurityMutation","createRole","data","role","updateRole","id","deleteRole"],"sources":["role.gql.ts"],"sourcesContent":["import {\n ErrorResponse,\n ListErrorResponse,\n ListResponse,\n Response\n} from \"@webiny/handler-graphql/responses.js\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport type { ApiCoreContext } from \"~/types/core.js\";\n\nexport default new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: /* GraphQL */ `\n type SecurityRole {\n id: ID\n name: String\n slug: String\n createdOn: DateTime\n description: String\n permissions: [JSON]\n system: Boolean!\n plugin: Boolean\n }\n\n input SecurityRoleCreateInput {\n name: String!\n slug: String!\n description: String\n permissions: [JSON!]!\n }\n\n input SecurityRoleUpdateInput {\n name: String\n description: String\n permissions: [JSON!]\n }\n\n type SecurityRoleResponse {\n data: SecurityRole\n error: SecurityError\n }\n\n type SecurityRoleListResponse {\n data: [SecurityRole]\n error: SecurityError\n }\n\n input GetRoleWhereInput {\n id: ID\n slug: String\n }\n\n extend type SecurityQuery {\n getRole(where: GetRoleWhereInput!): SecurityRoleResponse\n listRoles: SecurityRoleListResponse\n }\n\n extend type SecurityMutation {\n createRole(data: SecurityRoleCreateInput!): SecurityRoleResponse\n updateRole(id: ID!, data: SecurityRoleUpdateInput!): SecurityRoleResponse\n deleteRole(id: ID!): SecurityBooleanResponse\n }\n `,\n resolvers: {\n SecurityQuery: {\n getRole: async (_, { where }, context) => {\n try {\n const roles = await context.security.getRole({ where });\n return new Response(roles);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listRoles: async (_, __, context) => {\n try {\n const rolesList = await context.security.listRoles();\n\n return new ListResponse(rolesList);\n } catch (e) {\n return new ListErrorResponse(e);\n }\n }\n },\n SecurityMutation: {\n createRole: async (_, { data }, context) => {\n try {\n const role = await context.security.createRole(data);\n\n return new Response(role);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n updateRole: async (_, { id, data }, context) => {\n try {\n const role = await context.security.updateRole(id, data);\n return new Response(role);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n deleteRole: async (_, { id }, context) => {\n try {\n await context.security.deleteRole(id);\n\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\n"],"mappings":"AAAA,SACIA,aAAa,EACbC,iBAAiB,EACjBC,YAAY,EACZC,QAAQ,QACL,sCAAsC;AAC7C,SAASC,mBAAmB,QAAQ,wDAAwD;AAG5F,eAAe,IAAIA,mBAAmB,CAAiB;EACnDC,QAAQ,EAAE,aAAc;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EACDC,SAAS,EAAE;IACPC,aAAa,EAAE;MACXC,OAAO,EAAE,MAAAA,CAAOC,CAAC,EAAE;QAAEC;MAAM,CAAC,EAAEC,OAAO,KAAK;QACtC,IAAI;UACA,MAAMC,KAAK,GAAG,MAAMD,OAAO,CAACE,QAAQ,CAACL,OAAO,CAAC;YAAEE;UAAM,CAAC,CAAC;UACvD,OAAO,IAAIP,QAAQ,CAACS,KAAK,CAAC;QAC9B,CAAC,CAAC,OAAOE,CAAC,EAAE;UACR,OAAO,IAAId,aAAa,CAACc,CAAC,CAAC;QAC/B;MACJ,CAAC;MACDC,SAAS,EAAE,MAAAA,CAAON,CAAC,EAAEO,EAAE,EAAEL,OAAO,KAAK;QACjC,IAAI;UACA,MAAMM,SAAS,GAAG,MAAMN,OAAO,CAACE,QAAQ,CAACE,SAAS,CAAC,CAAC;UAEpD,OAAO,IAAIb,YAAY,CAACe,SAAS,CAAC;QACtC,CAAC,CAAC,OAAOH,CAAC,EAAE;UACR,OAAO,IAAIb,iBAAiB,CAACa,CAAC,CAAC;QACnC;MACJ;IACJ,CAAC;IACDI,gBAAgB,EAAE;MACdC,UAAU,EAAE,MAAAA,CAAOV,CAAC,EAAE;QAAEW;MAAK,CAAC,EAAET,OAAO,KAAK;QACxC,IAAI;UACA,MAAMU,IAAI,GAAG,MAAMV,OAAO,CAACE,QAAQ,CAACM,UAAU,CAACC,IAAI,CAAC;UAEpD,OAAO,IAAIjB,QAAQ,CAACkB,IAAI,CAAC;QAC7B,CAAC,CAAC,OAAOP,CAAC,EAAE;UACR,OAAO,IAAId,aAAa,CAACc,CAAC,CAAC;QAC/B;MACJ,CAAC;MACDQ,UAAU,EAAE,MAAAA,CAAOb,CAAC,EAAE;QAAEc,EAAE;QAAEH;MAAK,CAAC,EAAET,OAAO,KAAK;QAC5C,IAAI;UACA,MAAMU,IAAI,GAAG,MAAMV,OAAO,CAACE,QAAQ,CAACS,UAAU,CAACC,EAAE,EAAEH,IAAI,CAAC;UACxD,OAAO,IAAIjB,QAAQ,CAACkB,IAAI,CAAC;QAC7B,CAAC,CAAC,OAAOP,CAAC,EAAE;UACR,OAAO,IAAId,aAAa,CAACc,CAAC,CAAC;QAC/B;MACJ,CAAC;MACDU,UAAU,EAAE,MAAAA,CAAOf,CAAC,EAAE;QAAEc;MAAG,CAAC,EAAEZ,OAAO,KAAK;QACtC,IAAI;UACA,MAAMA,OAAO,CAACE,QAAQ,CAACW,UAAU,CAACD,EAAE,CAAC;UAErC,OAAO,IAAIpB,QAAQ,CAAC,IAAI,CAAC;QAC7B,CAAC,CAAC,OAAOW,CAAC,EAAE;UACR,OAAO,IAAId,aAAa,CAACc,CAAC,CAAC;QAC/B;MACJ;IACJ;EACJ;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"graphql/security/role.gql.js","sources":["../../../src/graphql/security/role.gql.ts"],"sourcesContent":["import {\n ErrorResponse,\n ListErrorResponse,\n ListResponse,\n Response\n} from \"@webiny/handler-graphql/responses.js\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport type { ApiCoreContext } from \"~/types/core.js\";\n\nexport default new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: /* GraphQL */ `\n type SecurityRole {\n id: ID\n name: String\n slug: String\n createdOn: DateTime\n description: String\n permissions: [JSON]\n system: Boolean!\n plugin: Boolean\n }\n\n input SecurityRoleCreateInput {\n name: String!\n slug: String!\n description: String\n permissions: [JSON!]!\n }\n\n input SecurityRoleUpdateInput {\n name: String\n description: String\n permissions: [JSON!]\n }\n\n type SecurityRoleResponse {\n data: SecurityRole\n error: SecurityError\n }\n\n type SecurityRoleListResponse {\n data: [SecurityRole]\n error: SecurityError\n }\n\n input GetRoleWhereInput {\n id: ID\n slug: String\n }\n\n extend type SecurityQuery {\n getRole(where: GetRoleWhereInput!): SecurityRoleResponse\n listRoles: SecurityRoleListResponse\n }\n\n extend type SecurityMutation {\n createRole(data: SecurityRoleCreateInput!): SecurityRoleResponse\n updateRole(id: ID!, data: SecurityRoleUpdateInput!): SecurityRoleResponse\n deleteRole(id: ID!): SecurityBooleanResponse\n }\n `,\n resolvers: {\n SecurityQuery: {\n getRole: async (_, { where }, context) => {\n try {\n const roles = await context.security.getRole({ where });\n return new Response(roles);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listRoles: async (_, __, context) => {\n try {\n const rolesList = await context.security.listRoles();\n\n return new ListResponse(rolesList);\n } catch (e) {\n return new ListErrorResponse(e);\n }\n }\n },\n SecurityMutation: {\n createRole: async (_, { data }, context) => {\n try {\n const role = await context.security.createRole(data);\n\n return new Response(role);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n updateRole: async (_, { id, data }, context) => {\n try {\n const role = await context.security.updateRole(id, data);\n return new Response(role);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n deleteRole: async (_, { id }, context) => {\n try {\n await context.security.deleteRole(id);\n\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\n"],"names":["GraphQLSchemaPlugin","_","where","context","roles","Response","e","ErrorResponse","__","rolesList","ListResponse","ListErrorResponse","data","role","id"],"mappings":";;AASA,iBAAe,IAAIA,oBAAoC;IACnD,UAAwB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkDzB,CAAC;IACD,WAAW;QACP,eAAe;YACX,SAAS,OAAOC,GAAG,EAAEC,KAAK,EAAE,EAAEC;gBAC1B,IAAI;oBACA,MAAMC,QAAQ,MAAMD,QAAQ,QAAQ,CAAC,OAAO,CAAC;wBAAED;oBAAM;oBACrD,OAAO,IAAIG,SAASD;gBACxB,EAAE,OAAOE,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;YACA,WAAW,OAAOL,GAAGO,IAAIL;gBACrB,IAAI;oBACA,MAAMM,YAAY,MAAMN,QAAQ,QAAQ,CAAC,SAAS;oBAElD,OAAO,IAAIO,aAAaD;gBAC5B,EAAE,OAAOH,GAAG;oBACR,OAAO,IAAIK,kBAAkBL;gBACjC;YACJ;QACJ;QACA,kBAAkB;YACd,YAAY,OAAOL,GAAG,EAAEW,IAAI,EAAE,EAAET;gBAC5B,IAAI;oBACA,MAAMU,OAAO,MAAMV,QAAQ,QAAQ,CAAC,UAAU,CAACS;oBAE/C,OAAO,IAAIP,SAASQ;gBACxB,EAAE,OAAOP,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;YACA,YAAY,OAAOL,GAAG,EAAEa,EAAE,EAAEF,IAAI,EAAE,EAAET;gBAChC,IAAI;oBACA,MAAMU,OAAO,MAAMV,QAAQ,QAAQ,CAAC,UAAU,CAACW,IAAIF;oBACnD,OAAO,IAAIP,SAASQ;gBACxB,EAAE,OAAOP,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;YACA,YAAY,OAAOL,GAAG,EAAEa,EAAE,EAAE,EAAEX;gBAC1B,IAAI;oBACA,MAAMA,QAAQ,QAAQ,CAAC,UAAU,CAACW;oBAElC,OAAO,IAAIT,SAAS;gBACxB,EAAE,OAAOC,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;QACJ;IACJ;AACJ"}
@@ -1,7 +1,7 @@
1
1
  import { ErrorResponse, ListErrorResponse, ListResponse, Response } from "@webiny/handler-graphql/responses.js";
2
2
  import { GraphQLSchemaPlugin } from "@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js";
3
- export default new GraphQLSchemaPlugin({
4
- typeDefs: /* GraphQL */`
3
+ const team_gql = new GraphQLSchemaPlugin({
4
+ typeDefs: `
5
5
  type SecurityTeam {
6
6
  id: ID
7
7
  name: String
@@ -52,76 +52,68 @@ export default new GraphQLSchemaPlugin({
52
52
  deleteTeam(id: ID!): SecurityBooleanResponse
53
53
  }
54
54
  `,
55
- resolvers: {
56
- SecurityTeam: {
57
- roles: async (team, __, context) => {
58
- try {
59
- return context.security.listRoles({
60
- where: {
61
- id_in: team.roles
55
+ resolvers: {
56
+ SecurityTeam: {
57
+ roles: async (team, __, context)=>{
58
+ try {
59
+ return context.security.listRoles({
60
+ where: {
61
+ id_in: team.roles
62
+ }
63
+ });
64
+ } catch (e) {
65
+ return new ErrorResponse(e);
66
+ }
67
+ }
68
+ },
69
+ SecurityQuery: {
70
+ getTeam: async (_, { where }, context)=>{
71
+ try {
72
+ const team = await context.security.getTeam({
73
+ where
74
+ });
75
+ return new Response(team);
76
+ } catch (e) {
77
+ return new ErrorResponse(e);
78
+ }
79
+ },
80
+ listTeams: async (_, __, context)=>{
81
+ try {
82
+ const teamList = await context.security.listTeams();
83
+ return new ListResponse(teamList);
84
+ } catch (e) {
85
+ return new ListErrorResponse(e);
86
+ }
87
+ }
88
+ },
89
+ SecurityMutation: {
90
+ createTeam: async (_, { data }, context)=>{
91
+ try {
92
+ const team = await context.security.createTeam(data);
93
+ return new Response(team);
94
+ } catch (e) {
95
+ return new ErrorResponse(e);
96
+ }
97
+ },
98
+ updateTeam: async (_, { id, data }, context)=>{
99
+ try {
100
+ const team = await context.security.updateTeam(id, data);
101
+ return new Response(team);
102
+ } catch (e) {
103
+ return new ErrorResponse(e);
104
+ }
105
+ },
106
+ deleteTeam: async (_, { id }, context)=>{
107
+ try {
108
+ await context.security.deleteTeam(id);
109
+ return new Response(true);
110
+ } catch (e) {
111
+ return new ErrorResponse(e);
112
+ }
62
113
  }
63
- });
64
- } catch (e) {
65
- return new ErrorResponse(e);
66
- }
67
- }
68
- },
69
- SecurityQuery: {
70
- getTeam: async (_, {
71
- where
72
- }, context) => {
73
- try {
74
- const team = await context.security.getTeam({
75
- where
76
- });
77
- return new Response(team);
78
- } catch (e) {
79
- return new ErrorResponse(e);
80
- }
81
- },
82
- listTeams: async (_, __, context) => {
83
- try {
84
- const teamList = await context.security.listTeams();
85
- return new ListResponse(teamList);
86
- } catch (e) {
87
- return new ListErrorResponse(e);
88
- }
89
- }
90
- },
91
- SecurityMutation: {
92
- createTeam: async (_, {
93
- data
94
- }, context) => {
95
- try {
96
- const team = await context.security.createTeam(data);
97
- return new Response(team);
98
- } catch (e) {
99
- return new ErrorResponse(e);
100
- }
101
- },
102
- updateTeam: async (_, {
103
- id,
104
- data
105
- }, context) => {
106
- try {
107
- const team = await context.security.updateTeam(id, data);
108
- return new Response(team);
109
- } catch (e) {
110
- return new ErrorResponse(e);
111
- }
112
- },
113
- deleteTeam: async (_, {
114
- id
115
- }, context) => {
116
- try {
117
- await context.security.deleteTeam(id);
118
- return new Response(true);
119
- } catch (e) {
120
- return new ErrorResponse(e);
121
114
  }
122
- }
123
115
  }
124
- }
125
116
  });
117
+ export default team_gql;
126
118
 
127
119
  //# sourceMappingURL=team.gql.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ErrorResponse","ListErrorResponse","ListResponse","Response","GraphQLSchemaPlugin","typeDefs","resolvers","SecurityTeam","roles","team","__","context","security","listRoles","where","id_in","e","SecurityQuery","getTeam","_","listTeams","teamList","SecurityMutation","createTeam","data","updateTeam","id","deleteTeam"],"sources":["team.gql.ts"],"sourcesContent":["import {\n ErrorResponse,\n ListErrorResponse,\n ListResponse,\n Response\n} from \"@webiny/handler-graphql/responses.js\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport type { ApiCoreContext } from \"~/types/core.js\";\nimport type { Team } from \"~/types/security.js\";\n\nexport default new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: /* GraphQL */ `\n type SecurityTeam {\n id: ID\n name: String\n slug: String\n createdOn: DateTime\n description: String\n roles: [SecurityRole]\n system: Boolean!\n plugin: Boolean\n }\n\n input SecurityTeamCreateInput {\n name: String!\n slug: String!\n description: String\n roles: [RefInput!]!\n }\n\n input SecurityTeamUpdateInput {\n name: String\n description: String\n roles: [RefInput!]\n }\n\n type SecurityTeamResponse {\n data: SecurityTeam\n error: SecurityError\n }\n\n type SecurityTeamListResponse {\n data: [SecurityTeam]\n error: SecurityError\n }\n\n input GetTeamWhereInput {\n id: ID\n slug: String\n }\n\n extend type SecurityQuery {\n getTeam(where: GetTeamWhereInput!): SecurityTeamResponse\n listTeams: SecurityTeamListResponse\n }\n\n extend type SecurityMutation {\n createTeam(data: SecurityTeamCreateInput!): SecurityTeamResponse\n updateTeam(id: ID!, data: SecurityTeamUpdateInput!): SecurityTeamResponse\n deleteTeam(id: ID!): SecurityBooleanResponse\n }\n `,\n resolvers: {\n SecurityTeam: {\n roles: async (team: Team, __, context) => {\n try {\n return context.security.listRoles({ where: { id_in: team.roles } });\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n SecurityQuery: {\n getTeam: async (_, { where }, context) => {\n try {\n const team = await context.security.getTeam({ where });\n return new Response(team);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listTeams: async (_, __, context) => {\n try {\n const teamList = await context.security.listTeams();\n\n return new ListResponse(teamList);\n } catch (e) {\n return new ListErrorResponse(e);\n }\n }\n },\n SecurityMutation: {\n createTeam: async (_, { data }, context) => {\n try {\n const team = await context.security.createTeam(data);\n\n return new Response(team);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n updateTeam: async (_, { id, data }, context) => {\n try {\n const team = await context.security.updateTeam(id, data);\n return new Response(team);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n deleteTeam: async (_, { id }, context) => {\n try {\n await context.security.deleteTeam(id);\n\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"graphql/security/team.gql.js","sources":["../../../src/graphql/security/team.gql.ts"],"sourcesContent":["import {\n ErrorResponse,\n ListErrorResponse,\n ListResponse,\n Response\n} from \"@webiny/handler-graphql/responses.js\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport type { ApiCoreContext } from \"~/types/core.js\";\nimport type { Team } from \"~/types/security.js\";\n\nexport default new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: /* GraphQL */ `\n type SecurityTeam {\n id: ID\n name: String\n slug: String\n createdOn: DateTime\n description: String\n roles: [SecurityRole]\n system: Boolean!\n plugin: Boolean\n }\n\n input SecurityTeamCreateInput {\n name: String!\n slug: String!\n description: String\n roles: [RefInput!]!\n }\n\n input SecurityTeamUpdateInput {\n name: String\n description: String\n roles: [RefInput!]\n }\n\n type SecurityTeamResponse {\n data: SecurityTeam\n error: SecurityError\n }\n\n type SecurityTeamListResponse {\n data: [SecurityTeam]\n error: SecurityError\n }\n\n input GetTeamWhereInput {\n id: ID\n slug: String\n }\n\n extend type SecurityQuery {\n getTeam(where: GetTeamWhereInput!): SecurityTeamResponse\n listTeams: SecurityTeamListResponse\n }\n\n extend type SecurityMutation {\n createTeam(data: SecurityTeamCreateInput!): SecurityTeamResponse\n updateTeam(id: ID!, data: SecurityTeamUpdateInput!): SecurityTeamResponse\n deleteTeam(id: ID!): SecurityBooleanResponse\n }\n `,\n resolvers: {\n SecurityTeam: {\n roles: async (team: Team, __, context) => {\n try {\n return context.security.listRoles({ where: { id_in: team.roles } });\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n SecurityQuery: {\n getTeam: async (_, { where }, context) => {\n try {\n const team = await context.security.getTeam({ where });\n return new Response(team);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listTeams: async (_, __, context) => {\n try {\n const teamList = await context.security.listTeams();\n\n return new ListResponse(teamList);\n } catch (e) {\n return new ListErrorResponse(e);\n }\n }\n },\n SecurityMutation: {\n createTeam: async (_, { data }, context) => {\n try {\n const team = await context.security.createTeam(data);\n\n return new Response(team);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n updateTeam: async (_, { id, data }, context) => {\n try {\n const team = await context.security.updateTeam(id, data);\n return new Response(team);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n deleteTeam: async (_, { id }, context) => {\n try {\n await context.security.deleteTeam(id);\n\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\n"],"names":["GraphQLSchemaPlugin","team","__","context","e","ErrorResponse","_","where","Response","teamList","ListResponse","ListErrorResponse","data","id"],"mappings":";;AAUA,iBAAe,IAAIA,oBAAoC;IACnD,UAAwB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkDzB,CAAC;IACD,WAAW;QACP,cAAc;YACV,OAAO,OAAOC,MAAYC,IAAIC;gBAC1B,IAAI;oBACA,OAAOA,QAAQ,QAAQ,CAAC,SAAS,CAAC;wBAAE,OAAO;4BAAE,OAAOF,KAAK,KAAK;wBAAC;oBAAE;gBACrE,EAAE,OAAOG,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;QACJ;QACA,eAAe;YACX,SAAS,OAAOE,GAAG,EAAEC,KAAK,EAAE,EAAEJ;gBAC1B,IAAI;oBACA,MAAMF,OAAO,MAAME,QAAQ,QAAQ,CAAC,OAAO,CAAC;wBAAEI;oBAAM;oBACpD,OAAO,IAAIC,SAASP;gBACxB,EAAE,OAAOG,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;YACA,WAAW,OAAOE,GAAGJ,IAAIC;gBACrB,IAAI;oBACA,MAAMM,WAAW,MAAMN,QAAQ,QAAQ,CAAC,SAAS;oBAEjD,OAAO,IAAIO,aAAaD;gBAC5B,EAAE,OAAOL,GAAG;oBACR,OAAO,IAAIO,kBAAkBP;gBACjC;YACJ;QACJ;QACA,kBAAkB;YACd,YAAY,OAAOE,GAAG,EAAEM,IAAI,EAAE,EAAET;gBAC5B,IAAI;oBACA,MAAMF,OAAO,MAAME,QAAQ,QAAQ,CAAC,UAAU,CAACS;oBAE/C,OAAO,IAAIJ,SAASP;gBACxB,EAAE,OAAOG,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;YACA,YAAY,OAAOE,GAAG,EAAEO,EAAE,EAAED,IAAI,EAAE,EAAET;gBAChC,IAAI;oBACA,MAAMF,OAAO,MAAME,QAAQ,QAAQ,CAAC,UAAU,CAACU,IAAID;oBACnD,OAAO,IAAIJ,SAASP;gBACxB,EAAE,OAAOG,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;YACA,YAAY,OAAOE,GAAG,EAAEO,EAAE,EAAE,EAAEV;gBAC1B,IAAI;oBACA,MAAMA,QAAQ,QAAQ,CAAC,UAAU,CAACU;oBAElC,OAAO,IAAIL,SAAS;gBACxB,EAAE,OAAOJ,GAAG;oBACR,OAAO,IAAIC,cAAcD;gBAC7B;YACJ;QACJ;IACJ;AACJ"}