@webiny/api-aco 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 (346) hide show
  1. package/constants.js +2 -1
  2. package/constants.js.map +1 -1
  3. package/createAcoContext.d.ts +1 -1
  4. package/createAcoContext.js +75 -103
  5. package/createAcoContext.js.map +1 -1
  6. package/createAcoGraphQL.js +42 -43
  7. package/createAcoGraphQL.js.map +1 -1
  8. package/createAcoStorageOperations.js +5 -6
  9. package/createAcoStorageOperations.js.map +1 -1
  10. package/createAcoTasks.js +7 -8
  11. package/createAcoTasks.js.map +1 -1
  12. package/domain/folder/abstractions.js +2 -5
  13. package/domain/folder/abstractions.js.map +1 -1
  14. package/domain/folder/errors.js +42 -47
  15. package/domain/folder/errors.js.map +1 -1
  16. package/domain/folder/folder.model.js +52 -36
  17. package/domain/folder/folder.model.js.map +1 -1
  18. package/exports/api/aco/flp.js +0 -2
  19. package/exports/api/aco/folder.js +4 -6
  20. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js +27 -31
  21. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js.map +1 -1
  22. package/features/cms/decorators/CreateEntryWithFlpDecorator.js +22 -25
  23. package/features/cms/decorators/CreateEntryWithFlpDecorator.js.map +1 -1
  24. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js +27 -31
  25. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js.map +1 -1
  26. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js +29 -33
  27. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js.map +1 -1
  28. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js +25 -30
  29. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js.map +1 -1
  30. package/features/cms/decorators/GetEntryWithFlpDecorator.js +25 -30
  31. package/features/cms/decorators/GetEntryWithFlpDecorator.js.map +1 -1
  32. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js +31 -35
  33. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js.map +1 -1
  34. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js +31 -34
  35. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js.map +1 -1
  36. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js +27 -28
  37. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js.map +1 -1
  38. package/features/cms/decorators/ListEntriesWithFlpDecorator.js +27 -27
  39. package/features/cms/decorators/ListEntriesWithFlpDecorator.js.map +1 -1
  40. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js +27 -28
  41. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js.map +1 -1
  42. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js +27 -28
  43. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js.map +1 -1
  44. package/features/cms/decorators/MoveEntryWithFlpDecorator.js +37 -51
  45. package/features/cms/decorators/MoveEntryWithFlpDecorator.js.map +1 -1
  46. package/features/cms/decorators/UpdateEntryWithFlpDecorator.d.ts +1 -2
  47. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js +27 -31
  48. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js.map +1 -1
  49. package/features/cms/feature.js +19 -25
  50. package/features/cms/feature.js.map +1 -1
  51. package/features/cms/index.js +0 -2
  52. package/features/flp/CreateFlp/CreateFlpUseCase.js +26 -33
  53. package/features/flp/CreateFlp/CreateFlpUseCase.js.map +1 -1
  54. package/features/flp/CreateFlp/abstractions.js +2 -5
  55. package/features/flp/CreateFlp/abstractions.js.map +1 -1
  56. package/features/flp/CreateFlp/feature.js +7 -8
  57. package/features/flp/CreateFlp/feature.js.map +1 -1
  58. package/features/flp/CreateFlp/index.js +0 -2
  59. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js +27 -27
  60. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js.map +1 -1
  61. package/features/flp/CreateFlpOnFolderCreated/feature.js +6 -5
  62. package/features/flp/CreateFlpOnFolderCreated/feature.js.map +1 -1
  63. package/features/flp/CreateFlpOnFolderCreated/index.js +0 -2
  64. package/features/flp/DeleteFlp/DeleteFlpUseCase.js +17 -18
  65. package/features/flp/DeleteFlp/DeleteFlpUseCase.js.map +1 -1
  66. package/features/flp/DeleteFlp/abstractions.js +2 -5
  67. package/features/flp/DeleteFlp/abstractions.js.map +1 -1
  68. package/features/flp/DeleteFlp/feature.js +7 -8
  69. package/features/flp/DeleteFlp/feature.js.map +1 -1
  70. package/features/flp/DeleteFlp/index.js +0 -2
  71. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js +27 -27
  72. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js.map +1 -1
  73. package/features/flp/DeleteFlpOnFolderDeleted/feature.js +6 -5
  74. package/features/flp/DeleteFlpOnFolderDeleted/feature.js.map +1 -1
  75. package/features/flp/DeleteFlpOnFolderDeleted/index.js +0 -2
  76. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js +87 -108
  77. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js.map +1 -1
  78. package/features/flp/FolderLevelPermissions/abstractions.js +2 -2
  79. package/features/flp/FolderLevelPermissions/abstractions.js.map +1 -1
  80. package/features/flp/FolderLevelPermissions/feature.js +6 -5
  81. package/features/flp/FolderLevelPermissions/feature.js.map +1 -1
  82. package/features/flp/FolderLevelPermissions/index.js +0 -2
  83. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +14 -36
  84. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -1
  85. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +0 -3
  86. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +0 -2
  87. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +12 -29
  88. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -1
  89. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +0 -3
  90. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +0 -2
  91. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +5 -4
  92. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -1
  93. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +0 -3
  94. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +0 -2
  95. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +5 -4
  96. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -1
  97. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +0 -3
  98. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +0 -2
  99. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +43 -66
  100. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -1
  101. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +10 -9
  102. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -1
  103. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +22 -33
  104. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -1
  105. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +0 -3
  106. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +0 -2
  107. package/features/flp/FolderLevelPermissions/useCases/index.js +0 -2
  108. package/features/flp/GetFlp/GetFlpUseCase.js +8 -7
  109. package/features/flp/GetFlp/GetFlpUseCase.js.map +1 -1
  110. package/features/flp/GetFlp/abstractions.js +2 -2
  111. package/features/flp/GetFlp/abstractions.js.map +1 -1
  112. package/features/flp/GetFlp/feature.js +7 -8
  113. package/features/flp/GetFlp/feature.js.map +1 -1
  114. package/features/flp/GetFlp/index.js +0 -2
  115. package/features/flp/ListFlps/ListFlpsUseCase.js +8 -7
  116. package/features/flp/ListFlps/ListFlpsUseCase.js.map +1 -1
  117. package/features/flp/ListFlps/abstractions.js +2 -2
  118. package/features/flp/ListFlps/abstractions.js.map +1 -1
  119. package/features/flp/ListFlps/feature.js +7 -8
  120. package/features/flp/ListFlps/feature.js.map +1 -1
  121. package/features/flp/ListFlps/index.js +0 -2
  122. package/features/flp/UpdateFlp/UpdateFlpUseCase.js +133 -184
  123. package/features/flp/UpdateFlp/UpdateFlpUseCase.js.map +1 -1
  124. package/features/flp/UpdateFlp/abstractions.js +2 -5
  125. package/features/flp/UpdateFlp/abstractions.js.map +1 -1
  126. package/features/flp/UpdateFlp/feature.js +7 -8
  127. package/features/flp/UpdateFlp/feature.js.map +1 -1
  128. package/features/flp/UpdateFlp/index.js +0 -2
  129. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js +29 -29
  130. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js.map +1 -1
  131. package/features/flp/UpdateFlpOnFolderUpdated/feature.js +6 -5
  132. package/features/flp/UpdateFlpOnFolderUpdated/feature.js.map +1 -1
  133. package/features/flp/UpdateFlpOnFolderUpdated/index.js +0 -2
  134. package/features/folder/CreateFolder/CreateFolderRepository.js +67 -90
  135. package/features/folder/CreateFolder/CreateFolderRepository.js.map +1 -1
  136. package/features/folder/CreateFolder/CreateFolderUseCase.js +27 -30
  137. package/features/folder/CreateFolder/CreateFolderUseCase.js.map +1 -1
  138. package/features/folder/CreateFolder/abstractions.js +5 -22
  139. package/features/folder/CreateFolder/abstractions.js.map +1 -1
  140. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js +29 -34
  141. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js.map +1 -1
  142. package/features/folder/CreateFolder/events.js +16 -14
  143. package/features/folder/CreateFolder/events.js.map +1 -1
  144. package/features/folder/CreateFolder/feature.js +8 -7
  145. package/features/folder/CreateFolder/feature.js.map +1 -1
  146. package/features/folder/CreateFolder/index.js +1 -3
  147. package/features/folder/DeleteFolder/DeleteFolderRepository.js +22 -20
  148. package/features/folder/DeleteFolder/DeleteFolderRepository.js.map +1 -1
  149. package/features/folder/DeleteFolder/DeleteFolderUseCase.js +35 -43
  150. package/features/folder/DeleteFolder/DeleteFolderUseCase.js.map +1 -1
  151. package/features/folder/DeleteFolder/abstractions.js +5 -22
  152. package/features/folder/DeleteFolder/abstractions.js.map +1 -1
  153. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js +21 -20
  154. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js.map +1 -1
  155. package/features/folder/DeleteFolder/events.js +16 -14
  156. package/features/folder/DeleteFolder/events.js.map +1 -1
  157. package/features/folder/DeleteFolder/feature.js +8 -7
  158. package/features/folder/DeleteFolder/feature.js.map +1 -1
  159. package/features/folder/DeleteFolder/index.js +1 -3
  160. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js +43 -44
  161. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js.map +1 -1
  162. package/features/folder/EnsureFolderIsEmpty/abstractions.js +2 -2
  163. package/features/folder/EnsureFolderIsEmpty/abstractions.js.map +1 -1
  164. package/features/folder/EnsureFolderIsEmpty/feature.js +6 -5
  165. package/features/folder/EnsureFolderIsEmpty/feature.js.map +1 -1
  166. package/features/folder/EnsureFolderIsEmpty/index.js +0 -2
  167. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js +16 -20
  168. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js.map +1 -1
  169. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js +6 -12
  170. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js.map +1 -1
  171. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js +0 -2
  172. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js +36 -44
  173. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js.map +1 -1
  174. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js +6 -5
  175. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js.map +1 -1
  176. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js +0 -2
  177. package/features/folder/GetAncestors/GetAncestorsRepository.js +45 -75
  178. package/features/folder/GetAncestors/GetAncestorsRepository.js.map +1 -1
  179. package/features/folder/GetAncestors/GetAncestorsUseCase.js +14 -11
  180. package/features/folder/GetAncestors/GetAncestorsUseCase.js.map +1 -1
  181. package/features/folder/GetAncestors/abstractions.js +3 -14
  182. package/features/folder/GetAncestors/abstractions.js.map +1 -1
  183. package/features/folder/GetAncestors/feature.js +7 -6
  184. package/features/folder/GetAncestors/feature.js.map +1 -1
  185. package/features/folder/GetAncestors/index.js +0 -2
  186. package/features/folder/GetFolder/GetFolderRepository.js +21 -19
  187. package/features/folder/GetFolder/GetFolderRepository.js.map +1 -1
  188. package/features/folder/GetFolder/GetFolderUseCase.js +14 -11
  189. package/features/folder/GetFolder/GetFolderUseCase.js.map +1 -1
  190. package/features/folder/GetFolder/abstractions.js +5 -21
  191. package/features/folder/GetFolder/abstractions.js.map +1 -1
  192. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js +23 -26
  193. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js.map +1 -1
  194. package/features/folder/GetFolder/feature.js +8 -7
  195. package/features/folder/GetFolder/feature.js.map +1 -1
  196. package/features/folder/GetFolder/index.js +0 -2
  197. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js +67 -86
  198. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -1
  199. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js +14 -11
  200. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -1
  201. package/features/folder/GetFolderHierarchy/abstractions.js +3 -14
  202. package/features/folder/GetFolderHierarchy/abstractions.js.map +1 -1
  203. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js +55 -56
  204. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -1
  205. package/features/folder/GetFolderHierarchy/feature.js +8 -7
  206. package/features/folder/GetFolderHierarchy/feature.js.map +1 -1
  207. package/features/folder/GetFolderHierarchy/index.js +0 -2
  208. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js +65 -58
  209. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js.map +1 -1
  210. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js +2 -5
  211. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js.map +1 -1
  212. package/features/folder/ListFolderLevelPermissionsTargets/feature.js +6 -5
  213. package/features/folder/ListFolderLevelPermissionsTargets/feature.js.map +1 -1
  214. package/features/folder/ListFolderLevelPermissionsTargets/index.js +0 -2
  215. package/features/folder/ListFolders/ListFoldersRepository.js +39 -41
  216. package/features/folder/ListFolders/ListFoldersRepository.js.map +1 -1
  217. package/features/folder/ListFolders/ListFoldersUseCase.js +14 -11
  218. package/features/folder/ListFolders/ListFoldersUseCase.js.map +1 -1
  219. package/features/folder/ListFolders/abstractions.js +3 -14
  220. package/features/folder/ListFolders/abstractions.js.map +1 -1
  221. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js +55 -67
  222. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js.map +1 -1
  223. package/features/folder/ListFolders/feature.js +8 -7
  224. package/features/folder/ListFolders/feature.js.map +1 -1
  225. package/features/folder/ListFolders/index.js +0 -2
  226. package/features/folder/UpdateFolder/UpdateFolderRepository.js +66 -92
  227. package/features/folder/UpdateFolder/UpdateFolderRepository.js.map +1 -1
  228. package/features/folder/UpdateFolder/UpdateFolderUseCase.js +38 -45
  229. package/features/folder/UpdateFolder/UpdateFolderUseCase.js.map +1 -1
  230. package/features/folder/UpdateFolder/abstractions.js +5 -22
  231. package/features/folder/UpdateFolder/abstractions.js.map +1 -1
  232. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js +45 -64
  233. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js.map +1 -1
  234. package/features/folder/UpdateFolder/events.js +16 -14
  235. package/features/folder/UpdateFolder/events.js.map +1 -1
  236. package/features/folder/UpdateFolder/feature.js +8 -7
  237. package/features/folder/UpdateFolder/feature.js.map +1 -1
  238. package/features/folder/UpdateFolder/index.js +0 -2
  239. package/features/folder/shared/EntryToFolderMapper.js +20 -19
  240. package/features/folder/shared/EntryToFolderMapper.js.map +1 -1
  241. package/features/folder/shared/abstractions.js +2 -2
  242. package/features/folder/shared/abstractions.js.map +1 -1
  243. package/filter/filter.crud.js +28 -31
  244. package/filter/filter.crud.js.map +1 -1
  245. package/filter/filter.gql.js +32 -48
  246. package/filter/filter.gql.js.map +1 -1
  247. package/filter/filter.model.js +44 -35
  248. package/filter/filter.model.js.map +1 -1
  249. package/filter/filter.so.js +73 -93
  250. package/filter/filter.so.js.map +1 -1
  251. package/filter/filter.types.js +5 -4
  252. package/filter/filter.types.js.map +1 -1
  253. package/flp/flp.crud.js +69 -86
  254. package/flp/flp.crud.js.map +1 -1
  255. package/flp/flp.so.js +162 -199
  256. package/flp/flp.so.js.map +1 -1
  257. package/flp/flp.types.js +0 -3
  258. package/flp/index.js +0 -2
  259. package/flp/tasks/createFlp.task.js +26 -27
  260. package/flp/tasks/createFlp.task.js.map +1 -1
  261. package/flp/tasks/deleteFlp.task.js +26 -27
  262. package/flp/tasks/deleteFlp.task.js.map +1 -1
  263. package/flp/tasks/index.js +13 -12
  264. package/flp/tasks/index.js.map +1 -1
  265. package/flp/tasks/syncFlp.task.js +83 -112
  266. package/flp/tasks/syncFlp.task.js.map +1 -1
  267. package/flp/tasks/updateFlp.task.js +33 -32
  268. package/flp/tasks/updateFlp.task.js.map +1 -1
  269. package/folder/createFolderModelModifier.js +50 -50
  270. package/folder/createFolderModelModifier.js.map +1 -1
  271. package/folder/createFolderTypeDefs.js +39 -50
  272. package/folder/createFolderTypeDefs.js.map +1 -1
  273. package/folder/folder.gql.js +100 -133
  274. package/folder/folder.gql.js.map +1 -1
  275. package/folder/folder.types.js +0 -3
  276. package/index.d.ts +1 -1
  277. package/index.js +7 -4
  278. package/index.js.map +1 -1
  279. package/package.json +25 -25
  280. package/types.js +5 -4
  281. package/types.js.map +1 -1
  282. package/utils/FoldersCacheFactory.js +20 -19
  283. package/utils/FoldersCacheFactory.js.map +1 -1
  284. package/utils/ListCache.js +20 -19
  285. package/utils/ListCache.js.map +1 -1
  286. package/utils/Path.js +5 -6
  287. package/utils/Path.js.map +1 -1
  288. package/utils/compress.js +8 -7
  289. package/utils/compress.js.map +1 -1
  290. package/utils/createListSort.js +4 -7
  291. package/utils/createListSort.js.map +1 -1
  292. package/utils/createOperationsWrapper.js +12 -19
  293. package/utils/createOperationsWrapper.js.map +1 -1
  294. package/utils/decorators/CmsEntriesCrudDecorators.js +165 -196
  295. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -1
  296. package/utils/decorators/FilterEntriesByFolderFactory.js +18 -19
  297. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -1
  298. package/utils/decorators/ListEntriesFactory.js +65 -98
  299. package/utils/decorators/ListEntriesFactory.js.map +1 -1
  300. package/utils/decorators/hasRootFolderId.js +6 -12
  301. package/utils/decorators/hasRootFolderId.js.map +1 -1
  302. package/utils/decorators/isPageModel.js +5 -10
  303. package/utils/decorators/isPageModel.js.map +1 -1
  304. package/utils/ensureAuthentication.js +6 -7
  305. package/utils/ensureAuthentication.js.map +1 -1
  306. package/utils/pickEntryFieldValues.js +24 -18
  307. package/utils/pickEntryFieldValues.js.map +1 -1
  308. package/utils/resolve.js +7 -6
  309. package/utils/resolve.js.map +1 -1
  310. package/exports/api/aco/flp.js.map +0 -1
  311. package/exports/api/aco/folder.js.map +0 -1
  312. package/features/cms/index.js.map +0 -1
  313. package/features/flp/CreateFlp/index.js.map +0 -1
  314. package/features/flp/CreateFlpOnFolderCreated/index.js.map +0 -1
  315. package/features/flp/DeleteFlp/index.js.map +0 -1
  316. package/features/flp/DeleteFlpOnFolderDeleted/index.js.map +0 -1
  317. package/features/flp/FolderLevelPermissions/index.js.map +0 -1
  318. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +0 -1
  319. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +0 -1
  320. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +0 -1
  321. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +0 -1
  322. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +0 -1
  323. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +0 -1
  324. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +0 -1
  325. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +0 -1
  326. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +0 -1
  327. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +0 -1
  328. package/features/flp/FolderLevelPermissions/useCases/index.js.map +0 -1
  329. package/features/flp/GetFlp/index.js.map +0 -1
  330. package/features/flp/ListFlps/index.js.map +0 -1
  331. package/features/flp/UpdateFlp/index.js.map +0 -1
  332. package/features/flp/UpdateFlpOnFolderUpdated/index.js.map +0 -1
  333. package/features/folder/CreateFolder/index.js.map +0 -1
  334. package/features/folder/DeleteFolder/index.js.map +0 -1
  335. package/features/folder/EnsureFolderIsEmpty/index.js.map +0 -1
  336. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js.map +0 -1
  337. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js.map +0 -1
  338. package/features/folder/GetAncestors/index.js.map +0 -1
  339. package/features/folder/GetFolder/index.js.map +0 -1
  340. package/features/folder/GetFolderHierarchy/index.js.map +0 -1
  341. package/features/folder/ListFolderLevelPermissionsTargets/index.js.map +0 -1
  342. package/features/folder/ListFolders/index.js.map +0 -1
  343. package/features/folder/UpdateFolder/index.js.map +0 -1
  344. package/flp/flp.types.js.map +0 -1
  345. package/flp/index.js.map +0 -1
  346. package/folder/folder.types.js.map +0 -1
@@ -1,8 +1,5 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- // Use Case Abstraction
4
-
5
- /** Create a folder-level permission. */
6
- export const CreateFlpUseCase = createAbstraction("CreateFlpUseCase");
2
+ const CreateFlpUseCase = createAbstraction("CreateFlpUseCase");
3
+ export { CreateFlpUseCase };
7
4
 
8
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","CreateFlpUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Folder } from \"~/folder/folder.types.js\";\n\n// Use Case Abstraction\nexport interface ICreateFlpUseCase {\n execute: (folder: Folder) => Promise<void>;\n}\n\n/** Create a folder-level permission. */\nexport const CreateFlpUseCase = createAbstraction<ICreateFlpUseCase>(\"CreateFlpUseCase\");\n\nexport namespace CreateFlpUseCase {\n export type Interface = ICreateFlpUseCase;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAGvD;;AAKA;AACA,OAAO,MAAMC,gBAAgB,GAAGD,iBAAiB,CAAoB,kBAAkB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/CreateFlp/abstractions.js","sources":["../../../../src/features/flp/CreateFlp/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Folder } from \"~/folder/folder.types.js\";\n\n// Use Case Abstraction\nexport interface ICreateFlpUseCase {\n execute: (folder: Folder) => Promise<void>;\n}\n\n/** Create a folder-level permission. */\nexport const CreateFlpUseCase = createAbstraction<ICreateFlpUseCase>(\"CreateFlpUseCase\");\n\nexport namespace CreateFlpUseCase {\n export type Interface = ICreateFlpUseCase;\n}\n"],"names":["CreateFlpUseCase","createAbstraction"],"mappings":";AASO,MAAMA,mBAAmBC,kBAAqC"}
@@ -1,13 +1,12 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { CreateFlpUseCase } from "./CreateFlpUseCase.js";
3
- import { CreateFlpUseCase as UseCaseAbstraction } from "./abstractions.js";
4
- export const CreateFlpFeature = createFeature({
5
- name: "CreateFlp",
6
- register(container, deps) {
7
- container.registerFactory(UseCaseAbstraction, () => {
8
- return new CreateFlpUseCase(deps.context);
9
- });
10
- }
3
+ import { CreateFlpUseCase as external_abstractions_js_CreateFlpUseCase } from "./abstractions.js";
4
+ const CreateFlpFeature = createFeature({
5
+ name: "CreateFlp",
6
+ register (container, deps) {
7
+ container.registerFactory(external_abstractions_js_CreateFlpUseCase, ()=>new CreateFlpUseCase(deps.context));
8
+ }
11
9
  });
10
+ export { CreateFlpFeature };
12
11
 
13
12
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","CreateFlpUseCase","UseCaseAbstraction","CreateFlpFeature","name","register","container","deps","registerFactory","context"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { CreateFlpUseCase } from \"./CreateFlpUseCase.js\";\nimport { CreateFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\ninterface LegacyDeps {\n context: AcoContext;\n}\n\nexport const CreateFlpFeature = createFeature({\n name: \"CreateFlp\",\n register(container: Container, deps: LegacyDeps) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new CreateFlpUseCase(deps.context);\n });\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AAEnD,SAASC,gBAAgB;AACzB,SAASA,gBAAgB,IAAIC,kBAAkB;AAO/C,OAAO,MAAMC,gBAAgB,GAAGH,aAAa,CAAC;EAC1CI,IAAI,EAAE,WAAW;EACjBC,QAAQA,CAACC,SAAoB,EAAEC,IAAgB,EAAE;IAC7CD,SAAS,CAACE,eAAe,CAACN,kBAAkB,EAAE,MAAM;MAChD,OAAO,IAAID,gBAAgB,CAACM,IAAI,CAACE,OAAO,CAAC;IAC7C,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/CreateFlp/feature.js","sources":["../../../../src/features/flp/CreateFlp/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { CreateFlpUseCase } from \"./CreateFlpUseCase.js\";\nimport { CreateFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\ninterface LegacyDeps {\n context: AcoContext;\n}\n\nexport const CreateFlpFeature = createFeature({\n name: \"CreateFlp\",\n register(container: Container, deps: LegacyDeps) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new CreateFlpUseCase(deps.context);\n });\n }\n});\n"],"names":["CreateFlpFeature","createFeature","container","deps","UseCaseAbstraction","CreateFlpUseCase"],"mappings":";;;AAUO,MAAMA,mBAAmBC,cAAc;IAC1C,MAAM;IACN,UAASC,SAAoB,EAAEC,IAAgB;QAC3CD,UAAU,eAAe,CAACE,2CAAoB,IACnC,IAAIC,iBAAiBF,KAAK,OAAO;IAEhD;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export { CreateFlpFeature } from "./feature.js";
2
2
  export { CreateFlpUseCase } from "./abstractions.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -3,35 +3,35 @@ import { FolderAfterCreateEventHandler } from "../../folder/CreateFolder/abstrac
3
3
  import { CREATE_FLP_TASK_ID } from "../../../flp/tasks/index.js";
4
4
  import { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
5
5
  class CreateFlpOnFolderCreatedHandlerImpl {
6
- constructor(createFlpUseCase, tasks) {
7
- this.createFlpUseCase = createFlpUseCase;
8
- this.tasks = tasks;
9
- }
10
- async handle(event) {
11
- const {
12
- folder
13
- } = event.payload;
14
- try {
15
- if (this.tasks) {
16
- await this.tasks.trigger({
17
- definition: CREATE_FLP_TASK_ID,
18
- input: {
19
- folder
20
- }
21
- });
22
- } else {
23
- await this.createFlpUseCase.execute(folder);
24
- }
25
- } catch {
26
- // Ignore errors
6
+ constructor(createFlpUseCase, tasks){
7
+ this.createFlpUseCase = createFlpUseCase;
8
+ this.tasks = tasks;
9
+ }
10
+ async handle(event) {
11
+ const { folder } = event.payload;
12
+ try {
13
+ if (this.tasks) await this.tasks.trigger({
14
+ definition: CREATE_FLP_TASK_ID,
15
+ input: {
16
+ folder
17
+ }
18
+ });
19
+ else await this.createFlpUseCase.execute(folder);
20
+ } catch {}
27
21
  }
28
- }
29
22
  }
30
- export const CreateFlpOnFolderCreatedHandler = FolderAfterCreateEventHandler.createImplementation({
31
- implementation: CreateFlpOnFolderCreatedHandlerImpl,
32
- dependencies: [CreateFlpUseCase, [TaskService, {
33
- optional: true
34
- }]]
23
+ const CreateFlpOnFolderCreatedHandler = FolderAfterCreateEventHandler.createImplementation({
24
+ implementation: CreateFlpOnFolderCreatedHandlerImpl,
25
+ dependencies: [
26
+ CreateFlpUseCase,
27
+ [
28
+ TaskService,
29
+ {
30
+ optional: true
31
+ }
32
+ ]
33
+ ]
35
34
  });
35
+ export { CreateFlpOnFolderCreatedHandler };
36
36
 
37
37
  //# sourceMappingURL=CreateFlpOnFolderCreatedHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CreateFlpUseCase","FolderAfterCreateEventHandler","CREATE_FLP_TASK_ID","TaskService","CreateFlpOnFolderCreatedHandlerImpl","constructor","createFlpUseCase","tasks","handle","event","folder","payload","trigger","definition","input","execute","CreateFlpOnFolderCreatedHandler","createImplementation","implementation","dependencies","optional"],"sources":["CreateFlpOnFolderCreatedHandler.ts"],"sourcesContent":["import { CreateFlpUseCase } from \"../CreateFlp/abstractions.js\";\nimport { FolderAfterCreateEventHandler } from \"~/features/folder/CreateFolder/abstractions.js\";\nimport type { FolderAfterCreateEvent } from \"~/features/folder/CreateFolder/events.js\";\nimport type { ICreateFlpTaskInput } from \"~/types.js\";\nimport { CREATE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\n\nclass CreateFlpOnFolderCreatedHandlerImpl implements FolderAfterCreateEventHandler.Interface {\n constructor(\n private createFlpUseCase: CreateFlpUseCase.Interface,\n private tasks?: TaskService.Interface\n ) {}\n\n async handle(event: FolderAfterCreateEvent): Promise<void> {\n const { folder } = event.payload;\n\n try {\n if (this.tasks) {\n await this.tasks.trigger<ICreateFlpTaskInput>({\n definition: CREATE_FLP_TASK_ID,\n input: { folder }\n });\n } else {\n await this.createFlpUseCase.execute(folder);\n }\n } catch {\n // Ignore errors\n }\n }\n}\n\nexport const CreateFlpOnFolderCreatedHandler = FolderAfterCreateEventHandler.createImplementation({\n implementation: CreateFlpOnFolderCreatedHandlerImpl,\n dependencies: [CreateFlpUseCase, [TaskService, { optional: true }]]\n});\n"],"mappings":"AAAA,SAASA,gBAAgB;AACzB,SAASC,6BAA6B;AAGtC,SAASC,kBAAkB;AAC3B,SAASC,WAAW,QAAQ,qDAAqD;AAEjF,MAAMC,mCAAmC,CAAoD;EACzFC,WAAWA,CACCC,gBAA4C,EAC5CC,KAA6B,EACvC;IAAA,KAFUD,gBAA4C,GAA5CA,gBAA4C;IAAA,KAC5CC,KAA6B,GAA7BA,KAA6B;EACtC;EAEH,MAAMC,MAAMA,CAACC,KAA6B,EAAiB;IACvD,MAAM;MAAEC;IAAO,CAAC,GAAGD,KAAK,CAACE,OAAO;IAEhC,IAAI;MACA,IAAI,IAAI,CAACJ,KAAK,EAAE;QACZ,MAAM,IAAI,CAACA,KAAK,CAACK,OAAO,CAAsB;UAC1CC,UAAU,EAAEX,kBAAkB;UAC9BY,KAAK,EAAE;YAAEJ;UAAO;QACpB,CAAC,CAAC;MACN,CAAC,MAAM;QACH,MAAM,IAAI,CAACJ,gBAAgB,CAACS,OAAO,CAACL,MAAM,CAAC;MAC/C;IACJ,CAAC,CAAC,MAAM;MACJ;IAAA;EAER;AACJ;AAEA,OAAO,MAAMM,+BAA+B,GAAGf,6BAA6B,CAACgB,oBAAoB,CAAC;EAC9FC,cAAc,EAAEd,mCAAmC;EACnDe,YAAY,EAAE,CAACnB,gBAAgB,EAAE,CAACG,WAAW,EAAE;IAAEiB,QAAQ,EAAE;EAAK,CAAC,CAAC;AACtE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js","sources":["../../../../src/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.ts"],"sourcesContent":["import { CreateFlpUseCase } from \"../CreateFlp/abstractions.js\";\nimport { FolderAfterCreateEventHandler } from \"~/features/folder/CreateFolder/abstractions.js\";\nimport type { FolderAfterCreateEvent } from \"~/features/folder/CreateFolder/events.js\";\nimport type { ICreateFlpTaskInput } from \"~/types.js\";\nimport { CREATE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\n\nclass CreateFlpOnFolderCreatedHandlerImpl implements FolderAfterCreateEventHandler.Interface {\n constructor(\n private createFlpUseCase: CreateFlpUseCase.Interface,\n private tasks?: TaskService.Interface\n ) {}\n\n async handle(event: FolderAfterCreateEvent): Promise<void> {\n const { folder } = event.payload;\n\n try {\n if (this.tasks) {\n await this.tasks.trigger<ICreateFlpTaskInput>({\n definition: CREATE_FLP_TASK_ID,\n input: { folder }\n });\n } else {\n await this.createFlpUseCase.execute(folder);\n }\n } catch {\n // Ignore errors\n }\n }\n}\n\nexport const CreateFlpOnFolderCreatedHandler = FolderAfterCreateEventHandler.createImplementation({\n implementation: CreateFlpOnFolderCreatedHandlerImpl,\n dependencies: [CreateFlpUseCase, [TaskService, { optional: true }]]\n});\n"],"names":["CreateFlpOnFolderCreatedHandlerImpl","createFlpUseCase","tasks","event","folder","CREATE_FLP_TASK_ID","CreateFlpOnFolderCreatedHandler","FolderAfterCreateEventHandler","CreateFlpUseCase","TaskService"],"mappings":";;;;AAOA,MAAMA;IACF,YACYC,gBAA4C,EAC5CC,KAA6B,CACvC;aAFUD,gBAAgB,GAAhBA;aACAC,KAAK,GAALA;IACT;IAEH,MAAM,OAAOC,KAA6B,EAAiB;QACvD,MAAM,EAAEC,MAAM,EAAE,GAAGD,MAAM,OAAO;QAEhC,IAAI;YACA,IAAI,IAAI,CAAC,KAAK,EACV,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAsB;gBAC1C,YAAYE;gBACZ,OAAO;oBAAED;gBAAO;YACpB;iBAEA,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAACA;QAE5C,EAAE,OAAM,CAER;IACJ;AACJ;AAEO,MAAME,kCAAkCC,8BAA8B,oBAAoB,CAAC;IAC9F,gBAAgBP;IAChB,cAAc;QAACQ;QAAkB;YAACC;YAAa;gBAAE,UAAU;YAAK;SAAE;KAAC;AACvE"}
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { CreateFlpOnFolderCreatedHandler } from "./CreateFlpOnFolderCreatedHandler.js";
3
- export const CreateFlpOnFolderCreatedFeature = createFeature({
4
- name: "CreateFlpOnFolderCreated",
5
- register(container) {
6
- container.register(CreateFlpOnFolderCreatedHandler);
7
- }
3
+ const CreateFlpOnFolderCreatedFeature = createFeature({
4
+ name: "CreateFlpOnFolderCreated",
5
+ register (container) {
6
+ container.register(CreateFlpOnFolderCreatedHandler);
7
+ }
8
8
  });
9
+ export { CreateFlpOnFolderCreatedFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","CreateFlpOnFolderCreatedHandler","CreateFlpOnFolderCreatedFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateFlpOnFolderCreatedHandler } from \"./CreateFlpOnFolderCreatedHandler.js\";\n\nexport const CreateFlpOnFolderCreatedFeature = createFeature({\n name: \"CreateFlpOnFolderCreated\",\n register(container) {\n container.register(CreateFlpOnFolderCreatedHandler);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,+BAA+B;AAExC,OAAO,MAAMC,+BAA+B,GAAGF,aAAa,CAAC;EACzDG,IAAI,EAAE,0BAA0B;EAChCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,+BAA+B,CAAC;EACvD;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/CreateFlpOnFolderCreated/feature.js","sources":["../../../../src/features/flp/CreateFlpOnFolderCreated/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateFlpOnFolderCreatedHandler } from \"./CreateFlpOnFolderCreatedHandler.js\";\n\nexport const CreateFlpOnFolderCreatedFeature = createFeature({\n name: \"CreateFlpOnFolderCreated\",\n register(container) {\n container.register(CreateFlpOnFolderCreatedHandler);\n }\n});\n"],"names":["CreateFlpOnFolderCreatedFeature","createFeature","container","CreateFlpOnFolderCreatedHandler"],"mappings":";;AAGO,MAAMA,kCAAkCC,cAAc;IACzD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export { CreateFlpOnFolderCreatedFeature } from "./feature.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,23 +1,22 @@
1
1
  import { WebinyError } from "@webiny/error";
2
- export class DeleteFlpUseCase {
3
- constructor(context) {
4
- this.context = context;
5
- }
6
- async execute(folder) {
7
- try {
8
- if (!folder) {
9
- throw new WebinyError("Missing `folder` from the task input, I can't delete the record from the FLP catalog.", "ERROR_DELETE_FLP_USE_CASE_FOLDER_NOT_PROVIDED", {
10
- folder
11
- });
12
- }
13
- await this.context.aco.flp.delete(folder.id);
14
- } catch (error) {
15
- throw WebinyError.from(error, {
16
- message: "Error while deleting FLP",
17
- code: "ERROR_DELETE_FLP_USE_CASE"
18
- });
2
+ class DeleteFlpUseCase {
3
+ constructor(context){
4
+ this.context = context;
5
+ }
6
+ async execute(folder) {
7
+ try {
8
+ if (!folder) throw new WebinyError("Missing `folder` from the task input, I can't delete the record from the FLP catalog.", "ERROR_DELETE_FLP_USE_CASE_FOLDER_NOT_PROVIDED", {
9
+ folder
10
+ });
11
+ await this.context.aco.flp.delete(folder.id);
12
+ } catch (error) {
13
+ throw WebinyError.from(error, {
14
+ message: "Error while deleting FLP",
15
+ code: "ERROR_DELETE_FLP_USE_CASE"
16
+ });
17
+ }
19
18
  }
20
- }
21
19
  }
20
+ export { DeleteFlpUseCase };
22
21
 
23
22
  //# sourceMappingURL=DeleteFlpUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WebinyError","DeleteFlpUseCase","constructor","context","execute","folder","aco","flp","delete","id","error","from","message","code"],"sources":["DeleteFlpUseCase.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport type { DeleteFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { Folder } from \"~/folder/folder.types.js\";\nimport type { AcoContext } from \"~/types.js\";\n\nexport class DeleteFlpUseCase implements UseCaseAbstraction.Interface {\n constructor(private context: AcoContext) {}\n\n async execute(folder: Folder): Promise<void> {\n try {\n if (!folder) {\n throw new WebinyError(\n \"Missing `folder` from the task input, I can't delete the record from the FLP catalog.\",\n \"ERROR_DELETE_FLP_USE_CASE_FOLDER_NOT_PROVIDED\",\n { folder }\n );\n }\n await this.context.aco.flp.delete(folder.id);\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while deleting FLP\",\n code: \"ERROR_DELETE_FLP_USE_CASE\"\n });\n }\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,eAAe;AAK3C,OAAO,MAAMC,gBAAgB,CAAyC;EAClEC,WAAWA,CAASC,OAAmB,EAAE;IAAA,KAArBA,OAAmB,GAAnBA,OAAmB;EAAG;EAE1C,MAAMC,OAAOA,CAACC,MAAc,EAAiB;IACzC,IAAI;MACA,IAAI,CAACA,MAAM,EAAE;QACT,MAAM,IAAIL,WAAW,CACjB,uFAAuF,EACvF,+CAA+C,EAC/C;UAAEK;QAAO,CACb,CAAC;MACL;MACA,MAAM,IAAI,CAACF,OAAO,CAACG,GAAG,CAACC,GAAG,CAACC,MAAM,CAACH,MAAM,CAACI,EAAE,CAAC;IAChD,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZ,MAAMV,WAAW,CAACW,IAAI,CAACD,KAAK,EAAE;QAC1BE,OAAO,EAAE,0BAA0B;QACnCC,IAAI,EAAE;MACV,CAAC,CAAC;IACN;EACJ;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/DeleteFlp/DeleteFlpUseCase.js","sources":["../../../../src/features/flp/DeleteFlp/DeleteFlpUseCase.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport type { DeleteFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { Folder } from \"~/folder/folder.types.js\";\nimport type { AcoContext } from \"~/types.js\";\n\nexport class DeleteFlpUseCase implements UseCaseAbstraction.Interface {\n constructor(private context: AcoContext) {}\n\n async execute(folder: Folder): Promise<void> {\n try {\n if (!folder) {\n throw new WebinyError(\n \"Missing `folder` from the task input, I can't delete the record from the FLP catalog.\",\n \"ERROR_DELETE_FLP_USE_CASE_FOLDER_NOT_PROVIDED\",\n { folder }\n );\n }\n await this.context.aco.flp.delete(folder.id);\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while deleting FLP\",\n code: \"ERROR_DELETE_FLP_USE_CASE\"\n });\n }\n }\n}\n"],"names":["DeleteFlpUseCase","context","folder","WebinyError","error"],"mappings":";AAKO,MAAMA;IACT,YAAoBC,OAAmB,CAAE;aAArBA,OAAO,GAAPA;IAAsB;IAE1C,MAAM,QAAQC,MAAc,EAAiB;QACzC,IAAI;YACA,IAAI,CAACA,QACD,MAAM,IAAIC,YACN,yFACA,iDACA;gBAAED;YAAO;YAGjB,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAACA,OAAO,EAAE;QAC/C,EAAE,OAAOE,OAAO;YACZ,MAAMD,YAAY,IAAI,CAACC,OAAO;gBAC1B,SAAS;gBACT,MAAM;YACV;QACJ;IACJ;AACJ"}
@@ -1,8 +1,5 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- // Use Case Abstraction
4
-
5
- /** Delete a folder-level permission. */
6
- export const DeleteFlpUseCase = createAbstraction("DeleteFlpUseCase");
2
+ const DeleteFlpUseCase = createAbstraction("DeleteFlpUseCase");
3
+ export { DeleteFlpUseCase };
7
4
 
8
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","DeleteFlpUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Folder } from \"~/folder/folder.types.js\";\n\n// Use Case Abstraction\nexport interface IDeleteFlpUseCase {\n execute: (folder: Folder) => Promise<void>;\n}\n\n/** Delete a folder-level permission. */\nexport const DeleteFlpUseCase = createAbstraction<IDeleteFlpUseCase>(\"DeleteFlpUseCase\");\n\nexport namespace DeleteFlpUseCase {\n export type Interface = IDeleteFlpUseCase;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAGvD;;AAKA;AACA,OAAO,MAAMC,gBAAgB,GAAGD,iBAAiB,CAAoB,kBAAkB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/DeleteFlp/abstractions.js","sources":["../../../../src/features/flp/DeleteFlp/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Folder } from \"~/folder/folder.types.js\";\n\n// Use Case Abstraction\nexport interface IDeleteFlpUseCase {\n execute: (folder: Folder) => Promise<void>;\n}\n\n/** Delete a folder-level permission. */\nexport const DeleteFlpUseCase = createAbstraction<IDeleteFlpUseCase>(\"DeleteFlpUseCase\");\n\nexport namespace DeleteFlpUseCase {\n export type Interface = IDeleteFlpUseCase;\n}\n"],"names":["DeleteFlpUseCase","createAbstraction"],"mappings":";AASO,MAAMA,mBAAmBC,kBAAqC"}
@@ -1,13 +1,12 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { DeleteFlpUseCase } from "./DeleteFlpUseCase.js";
3
- import { DeleteFlpUseCase as UseCaseAbstraction } from "./abstractions.js";
4
- export const DeleteFlpFeature = createFeature({
5
- name: "DeleteFlp",
6
- register(container, deps) {
7
- container.registerFactory(UseCaseAbstraction, () => {
8
- return new DeleteFlpUseCase(deps.context);
9
- });
10
- }
3
+ import { DeleteFlpUseCase as external_abstractions_js_DeleteFlpUseCase } from "./abstractions.js";
4
+ const DeleteFlpFeature = createFeature({
5
+ name: "DeleteFlp",
6
+ register (container, deps) {
7
+ container.registerFactory(external_abstractions_js_DeleteFlpUseCase, ()=>new DeleteFlpUseCase(deps.context));
8
+ }
11
9
  });
10
+ export { DeleteFlpFeature };
12
11
 
13
12
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","DeleteFlpUseCase","UseCaseAbstraction","DeleteFlpFeature","name","register","container","deps","registerFactory","context"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { DeleteFlpUseCase } from \"./DeleteFlpUseCase.js\";\nimport { DeleteFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\ninterface LegacyDeps {\n context: AcoContext;\n}\n\nexport const DeleteFlpFeature = createFeature({\n name: \"DeleteFlp\",\n register(container: Container, deps: LegacyDeps) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new DeleteFlpUseCase(deps.context);\n });\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AAEnD,SAASC,gBAAgB;AACzB,SAASA,gBAAgB,IAAIC,kBAAkB;AAO/C,OAAO,MAAMC,gBAAgB,GAAGH,aAAa,CAAC;EAC1CI,IAAI,EAAE,WAAW;EACjBC,QAAQA,CAACC,SAAoB,EAAEC,IAAgB,EAAE;IAC7CD,SAAS,CAACE,eAAe,CAACN,kBAAkB,EAAE,MAAM;MAChD,OAAO,IAAID,gBAAgB,CAACM,IAAI,CAACE,OAAO,CAAC;IAC7C,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/DeleteFlp/feature.js","sources":["../../../../src/features/flp/DeleteFlp/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { DeleteFlpUseCase } from \"./DeleteFlpUseCase.js\";\nimport { DeleteFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\ninterface LegacyDeps {\n context: AcoContext;\n}\n\nexport const DeleteFlpFeature = createFeature({\n name: \"DeleteFlp\",\n register(container: Container, deps: LegacyDeps) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new DeleteFlpUseCase(deps.context);\n });\n }\n});\n"],"names":["DeleteFlpFeature","createFeature","container","deps","UseCaseAbstraction","DeleteFlpUseCase"],"mappings":";;;AAUO,MAAMA,mBAAmBC,cAAc;IAC1C,MAAM;IACN,UAASC,SAAoB,EAAEC,IAAgB;QAC3CD,UAAU,eAAe,CAACE,2CAAoB,IACnC,IAAIC,iBAAiBF,KAAK,OAAO;IAEhD;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export { DeleteFlpFeature } from "./feature.js";
2
2
  export { DeleteFlpUseCase } from "./abstractions.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -3,35 +3,35 @@ import { FolderAfterDeleteEventHandler } from "../../folder/DeleteFolder/abstrac
3
3
  import { DELETE_FLP_TASK_ID } from "../../../flp/tasks/index.js";
4
4
  import { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
5
5
  class DeleteFlpOnFolderDeletedHandlerImpl {
6
- constructor(deleteFlpUseCase, tasks) {
7
- this.deleteFlpUseCase = deleteFlpUseCase;
8
- this.tasks = tasks;
9
- }
10
- async handle(event) {
11
- const {
12
- folder
13
- } = event.payload;
14
- try {
15
- if (this.tasks) {
16
- await this.tasks.trigger({
17
- definition: DELETE_FLP_TASK_ID,
18
- input: {
19
- folder
20
- }
21
- });
22
- } else {
23
- await this.deleteFlpUseCase.execute(folder);
24
- }
25
- } catch {
26
- // Ignore errors
6
+ constructor(deleteFlpUseCase, tasks){
7
+ this.deleteFlpUseCase = deleteFlpUseCase;
8
+ this.tasks = tasks;
9
+ }
10
+ async handle(event) {
11
+ const { folder } = event.payload;
12
+ try {
13
+ if (this.tasks) await this.tasks.trigger({
14
+ definition: DELETE_FLP_TASK_ID,
15
+ input: {
16
+ folder
17
+ }
18
+ });
19
+ else await this.deleteFlpUseCase.execute(folder);
20
+ } catch {}
27
21
  }
28
- }
29
22
  }
30
- export const DeleteFlpOnFolderDeletedHandler = FolderAfterDeleteEventHandler.createImplementation({
31
- implementation: DeleteFlpOnFolderDeletedHandlerImpl,
32
- dependencies: [DeleteFlpUseCase, [TaskService, {
33
- optional: true
34
- }]]
23
+ const DeleteFlpOnFolderDeletedHandler = FolderAfterDeleteEventHandler.createImplementation({
24
+ implementation: DeleteFlpOnFolderDeletedHandlerImpl,
25
+ dependencies: [
26
+ DeleteFlpUseCase,
27
+ [
28
+ TaskService,
29
+ {
30
+ optional: true
31
+ }
32
+ ]
33
+ ]
35
34
  });
35
+ export { DeleteFlpOnFolderDeletedHandler };
36
36
 
37
37
  //# sourceMappingURL=DeleteFlpOnFolderDeletedHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DeleteFlpUseCase","FolderAfterDeleteEventHandler","DELETE_FLP_TASK_ID","TaskService","DeleteFlpOnFolderDeletedHandlerImpl","constructor","deleteFlpUseCase","tasks","handle","event","folder","payload","trigger","definition","input","execute","DeleteFlpOnFolderDeletedHandler","createImplementation","implementation","dependencies","optional"],"sources":["DeleteFlpOnFolderDeletedHandler.ts"],"sourcesContent":["import { DeleteFlpUseCase } from \"../DeleteFlp/abstractions.js\";\nimport { FolderAfterDeleteEventHandler } from \"~/features/folder/DeleteFolder/abstractions.js\";\nimport type { FolderAfterDeleteEvent } from \"~/features/folder/DeleteFolder/events.js\";\nimport type { IDeleteFlpTaskInput } from \"~/types.js\";\nimport { DELETE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\n\nclass DeleteFlpOnFolderDeletedHandlerImpl implements FolderAfterDeleteEventHandler.Interface {\n constructor(\n private deleteFlpUseCase: DeleteFlpUseCase.Interface,\n private tasks?: TaskService.Interface\n ) {}\n\n async handle(event: FolderAfterDeleteEvent): Promise<void> {\n const { folder } = event.payload;\n\n try {\n if (this.tasks) {\n await this.tasks.trigger<IDeleteFlpTaskInput>({\n definition: DELETE_FLP_TASK_ID,\n input: { folder }\n });\n } else {\n await this.deleteFlpUseCase.execute(folder);\n }\n } catch {\n // Ignore errors\n }\n }\n}\n\nexport const DeleteFlpOnFolderDeletedHandler = FolderAfterDeleteEventHandler.createImplementation({\n implementation: DeleteFlpOnFolderDeletedHandlerImpl,\n dependencies: [DeleteFlpUseCase, [TaskService, { optional: true }]]\n});\n"],"mappings":"AAAA,SAASA,gBAAgB;AACzB,SAASC,6BAA6B;AAGtC,SAASC,kBAAkB;AAC3B,SAASC,WAAW,QAAQ,qDAAqD;AAEjF,MAAMC,mCAAmC,CAAoD;EACzFC,WAAWA,CACCC,gBAA4C,EAC5CC,KAA6B,EACvC;IAAA,KAFUD,gBAA4C,GAA5CA,gBAA4C;IAAA,KAC5CC,KAA6B,GAA7BA,KAA6B;EACtC;EAEH,MAAMC,MAAMA,CAACC,KAA6B,EAAiB;IACvD,MAAM;MAAEC;IAAO,CAAC,GAAGD,KAAK,CAACE,OAAO;IAEhC,IAAI;MACA,IAAI,IAAI,CAACJ,KAAK,EAAE;QACZ,MAAM,IAAI,CAACA,KAAK,CAACK,OAAO,CAAsB;UAC1CC,UAAU,EAAEX,kBAAkB;UAC9BY,KAAK,EAAE;YAAEJ;UAAO;QACpB,CAAC,CAAC;MACN,CAAC,MAAM;QACH,MAAM,IAAI,CAACJ,gBAAgB,CAACS,OAAO,CAACL,MAAM,CAAC;MAC/C;IACJ,CAAC,CAAC,MAAM;MACJ;IAAA;EAER;AACJ;AAEA,OAAO,MAAMM,+BAA+B,GAAGf,6BAA6B,CAACgB,oBAAoB,CAAC;EAC9FC,cAAc,EAAEd,mCAAmC;EACnDe,YAAY,EAAE,CAACnB,gBAAgB,EAAE,CAACG,WAAW,EAAE;IAAEiB,QAAQ,EAAE;EAAK,CAAC,CAAC;AACtE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js","sources":["../../../../src/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.ts"],"sourcesContent":["import { DeleteFlpUseCase } from \"../DeleteFlp/abstractions.js\";\nimport { FolderAfterDeleteEventHandler } from \"~/features/folder/DeleteFolder/abstractions.js\";\nimport type { FolderAfterDeleteEvent } from \"~/features/folder/DeleteFolder/events.js\";\nimport type { IDeleteFlpTaskInput } from \"~/types.js\";\nimport { DELETE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\n\nclass DeleteFlpOnFolderDeletedHandlerImpl implements FolderAfterDeleteEventHandler.Interface {\n constructor(\n private deleteFlpUseCase: DeleteFlpUseCase.Interface,\n private tasks?: TaskService.Interface\n ) {}\n\n async handle(event: FolderAfterDeleteEvent): Promise<void> {\n const { folder } = event.payload;\n\n try {\n if (this.tasks) {\n await this.tasks.trigger<IDeleteFlpTaskInput>({\n definition: DELETE_FLP_TASK_ID,\n input: { folder }\n });\n } else {\n await this.deleteFlpUseCase.execute(folder);\n }\n } catch {\n // Ignore errors\n }\n }\n}\n\nexport const DeleteFlpOnFolderDeletedHandler = FolderAfterDeleteEventHandler.createImplementation({\n implementation: DeleteFlpOnFolderDeletedHandlerImpl,\n dependencies: [DeleteFlpUseCase, [TaskService, { optional: true }]]\n});\n"],"names":["DeleteFlpOnFolderDeletedHandlerImpl","deleteFlpUseCase","tasks","event","folder","DELETE_FLP_TASK_ID","DeleteFlpOnFolderDeletedHandler","FolderAfterDeleteEventHandler","DeleteFlpUseCase","TaskService"],"mappings":";;;;AAOA,MAAMA;IACF,YACYC,gBAA4C,EAC5CC,KAA6B,CACvC;aAFUD,gBAAgB,GAAhBA;aACAC,KAAK,GAALA;IACT;IAEH,MAAM,OAAOC,KAA6B,EAAiB;QACvD,MAAM,EAAEC,MAAM,EAAE,GAAGD,MAAM,OAAO;QAEhC,IAAI;YACA,IAAI,IAAI,CAAC,KAAK,EACV,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAsB;gBAC1C,YAAYE;gBACZ,OAAO;oBAAED;gBAAO;YACpB;iBAEA,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAACA;QAE5C,EAAE,OAAM,CAER;IACJ;AACJ;AAEO,MAAME,kCAAkCC,8BAA8B,oBAAoB,CAAC;IAC9F,gBAAgBP;IAChB,cAAc;QAACQ;QAAkB;YAACC;YAAa;gBAAE,UAAU;YAAK;SAAE;KAAC;AACvE"}
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { DeleteFlpOnFolderDeletedHandler } from "./DeleteFlpOnFolderDeletedHandler.js";
3
- export const DeleteFlpOnFolderDeletedFeature = createFeature({
4
- name: "DeleteFlpOnFolderDeleted",
5
- register(container) {
6
- container.register(DeleteFlpOnFolderDeletedHandler);
7
- }
3
+ const DeleteFlpOnFolderDeletedFeature = createFeature({
4
+ name: "DeleteFlpOnFolderDeleted",
5
+ register (container) {
6
+ container.register(DeleteFlpOnFolderDeletedHandler);
7
+ }
8
8
  });
9
+ export { DeleteFlpOnFolderDeletedFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","DeleteFlpOnFolderDeletedHandler","DeleteFlpOnFolderDeletedFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DeleteFlpOnFolderDeletedHandler } from \"./DeleteFlpOnFolderDeletedHandler.js\";\n\nexport const DeleteFlpOnFolderDeletedFeature = createFeature({\n name: \"DeleteFlpOnFolderDeleted\",\n register(container) {\n container.register(DeleteFlpOnFolderDeletedHandler);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,+BAA+B;AAExC,OAAO,MAAMC,+BAA+B,GAAGF,aAAa,CAAC;EACzDG,IAAI,EAAE,0BAA0B;EAChCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,+BAA+B,CAAC;EACvD;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/flp/DeleteFlpOnFolderDeleted/feature.js","sources":["../../../../src/features/flp/DeleteFlpOnFolderDeleted/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DeleteFlpOnFolderDeletedHandler } from \"./DeleteFlpOnFolderDeletedHandler.js\";\n\nexport const DeleteFlpOnFolderDeletedFeature = createFeature({\n name: \"DeleteFlpOnFolderDeleted\",\n register(container) {\n container.register(DeleteFlpOnFolderDeletedHandler);\n }\n});\n"],"names":["DeleteFlpOnFolderDeletedFeature","createFeature","container","DeleteFlpOnFolderDeletedHandler"],"mappings":";;AAGO,MAAMA,kCAAkCC,cAAc;IACzD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export { DeleteFlpOnFolderDeletedFeature } from "./feature.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -4,130 +4,109 @@ import { WcpContext } from "@webiny/api-core/features/wcp/WcpContext/index.js";
4
4
  import { ListUserTeamsUseCase } from "@webiny/api-core/features/users/ListUserTeams/index.js";
5
5
  import { NotAuthorizedError } from "@webiny/api-core/features/security/shared/index.js";
6
6
  import { CanAccessFolder, CanAccessFolderContent, CanCreateFolderInRoot, CheckNotInheritedPermissions, GetDefaultPermissions, GetDefaultPermissionsWithTeams } from "./useCases/index.js";
7
- import { FolderLevelPermissions as FolderLevelPermissionsAbstraction } from "./abstractions.js";
7
+ import { FolderLevelPermissions } from "./abstractions.js";
8
8
  import { ListFlpsUseCase } from "../ListFlps/index.js";
9
9
  import { GetFlpUseCase } from "../GetFlp/index.js";
10
10
  class FolderLevelPermissionsImpl {
11
- constructor(identityContext, wcpContext, listUserTeamsUseCase, getFlpUseCase, listFlpsUseCase) {
12
- this.identityContext = identityContext;
13
- this.wcpContext = wcpContext;
14
- this.listUserTeamsUseCase = listUserTeamsUseCase;
15
- this.getFlpUseCase = getFlpUseCase;
16
- this.listFlpsUseCase = listFlpsUseCase;
17
- }
18
- canUseFolderLevelPermissions(enabled) {
19
- if (enabled === false) {
20
- return false;
11
+ constructor(identityContext, wcpContext, listUserTeamsUseCase, getFlpUseCase, listFlpsUseCase){
12
+ this.identityContext = identityContext;
13
+ this.wcpContext = wcpContext;
14
+ this.listUserTeamsUseCase = listUserTeamsUseCase;
15
+ this.getFlpUseCase = getFlpUseCase;
16
+ this.listFlpsUseCase = listFlpsUseCase;
21
17
  }
22
- const identity = this.identityContext.getIdentity();
23
-
24
- // FLPs only work with authenticated identities (logged-in users).
25
- if (!identity) {
26
- return false;
18
+ canUseFolderLevelPermissions(enabled) {
19
+ if (false === enabled) return false;
20
+ const identity = this.identityContext.getIdentity();
21
+ if (!identity) return false;
22
+ if ("admin" !== identity.type) return false;
23
+ return this.wcpContext.canUseFolderLevelPermissions();
27
24
  }
28
-
29
- // At the moment, we only want FLP to be used with identities of type "admin".
30
- // This temporarily addresses the issue of API keys not being able to access content, because
31
- // FLPs doesn't work with them. Once we start adding FLPs to API keys, we can remove this check.
32
- if (identity.type !== "admin") {
33
- return false;
25
+ canUseTeams() {
26
+ return this.wcpContext.canUseTeams();
27
+ }
28
+ canCreateFolderInRoot() {
29
+ const canCreateFolderInRootUseCase = new CanCreateFolderInRoot();
30
+ return canCreateFolderInRootUseCase.execute();
31
+ }
32
+ permissionsIncludeNonInheritedPermissions(permissions) {
33
+ const checkNotInheritedPermissionsUseCase = new CheckNotInheritedPermissions();
34
+ return checkNotInheritedPermissionsUseCase.execute(permissions);
35
+ }
36
+ async canAccessFolder(params) {
37
+ if (!this.canUseFolderLevelPermissions() || !this.identityContext.isAuthorizationEnabled()) return true;
38
+ const canAccessFolderUseCase = new CanAccessFolder(this.identityContext);
39
+ return await canAccessFolderUseCase.execute(params);
34
40
  }
35
- return this.wcpContext.canUseFolderLevelPermissions();
36
- }
37
- canUseTeams() {
38
- return this.wcpContext.canUseTeams();
39
- }
40
- canCreateFolderInRoot() {
41
- const canCreateFolderInRootUseCase = new CanCreateFolderInRoot();
42
- return canCreateFolderInRootUseCase.execute();
43
- }
44
- permissionsIncludeNonInheritedPermissions(permissions) {
45
- const checkNotInheritedPermissionsUseCase = new CheckNotInheritedPermissions();
46
- return checkNotInheritedPermissionsUseCase.execute(permissions);
47
- }
48
- async canAccessFolder(params) {
49
- if (!this.canUseFolderLevelPermissions() || !this.identityContext.isAuthorizationEnabled()) {
50
- return true;
41
+ async canAccessFolderContent(params) {
42
+ const canUseFlp = this.canUseFolderLevelPermissions();
43
+ const authEnabled = this.identityContext.isAuthorizationEnabled();
44
+ if (!canUseFlp || !authEnabled) return true;
45
+ const canAccessFolderContentUseCase = new CanAccessFolderContent(this.identityContext);
46
+ return await canAccessFolderContentUseCase.execute(params);
51
47
  }
52
- const canAccessFolderUseCase = new CanAccessFolder(this.identityContext);
53
- return await canAccessFolderUseCase.execute(params);
54
- }
55
- async canAccessFolderContent(params) {
56
- const canUseFlp = this.canUseFolderLevelPermissions();
57
- const authEnabled = this.identityContext.isAuthorizationEnabled();
58
- if (!canUseFlp || !authEnabled) {
59
- return true;
48
+ async ensureCanAccessFolder(params) {
49
+ const result = await this.canAccessFolder(params);
50
+ if (!result) throw new NotAuthorizedError();
60
51
  }
61
- const canAccessFolderContentUseCase = new CanAccessFolderContent(this.identityContext);
62
- return await canAccessFolderContentUseCase.execute(params);
63
- }
64
- async ensureCanAccessFolder(params) {
65
- const result = await this.canAccessFolder(params);
66
- if (!result) {
67
- throw new NotAuthorizedError();
52
+ async ensureCanAccessFolderContent(params) {
53
+ const result = await this.canAccessFolderContent(params);
54
+ if (!result) throw new NotAuthorizedError();
68
55
  }
69
- }
70
- async ensureCanAccessFolderContent(params) {
71
- const result = await this.canAccessFolderContent(params);
72
- if (!result) {
73
- throw new NotAuthorizedError();
56
+ async canManageFolderContent(flp) {
57
+ if (!this.canUseFolderLevelPermissions() || !this.identityContext.isAuthorizationEnabled()) return true;
58
+ return await this.canAccessFolderContent({
59
+ permissions: flp.permissions,
60
+ rwd: "w"
61
+ });
74
62
  }
75
- }
76
- async canManageFolderContent(flp) {
77
- if (!this.canUseFolderLevelPermissions() || !this.identityContext.isAuthorizationEnabled()) {
78
- return true;
63
+ async canManageFolderStructure(flp) {
64
+ if (!this.canUseFolderLevelPermissions() || !this.identityContext.isAuthorizationEnabled()) return true;
65
+ return await this.canAccessFolder({
66
+ permissions: flp.permissions,
67
+ rwd: "w"
68
+ });
79
69
  }
80
- return await this.canAccessFolderContent({
81
- permissions: flp.permissions,
82
- rwd: "w"
83
- });
84
- }
85
- async canManageFolderStructure(flp) {
86
- if (!this.canUseFolderLevelPermissions() || !this.identityContext.isAuthorizationEnabled()) {
87
- return true;
70
+ async canManageFolderPermissions(flp) {
71
+ if (!this.canUseFolderLevelPermissions()) return false;
72
+ if (!this.identityContext.isAuthorizationEnabled()) return true;
73
+ return await this.canAccessFolder({
74
+ permissions: flp.permissions,
75
+ rwd: "w",
76
+ managePermissions: true
77
+ });
88
78
  }
89
- return await this.canAccessFolder({
90
- permissions: flp.permissions,
91
- rwd: "w"
92
- });
93
- }
94
- async canManageFolderPermissions(flp) {
95
- if (!this.canUseFolderLevelPermissions()) {
96
- return false;
79
+ getDefaultPermissions(permissions) {
80
+ const getDefaultPermissionsUseCase = new GetDefaultPermissions(this.identityContext);
81
+ if (this.canUseTeams()) {
82
+ const getDefaultPermissionsWithTeams = new GetDefaultPermissionsWithTeams(this.identityContext, this.listUserTeamsUseCase, getDefaultPermissionsUseCase);
83
+ return getDefaultPermissionsWithTeams.execute(permissions);
84
+ }
85
+ return getDefaultPermissionsUseCase.execute(permissions);
97
86
  }
98
- if (!this.identityContext.isAuthorizationEnabled()) {
99
- return true;
87
+ async listFolderLevelPermissions(params) {
88
+ const flps = await this.listFlpsUseCase.execute(params);
89
+ return Promise.all(flps.map(async (flp)=>({
90
+ id: flp.id,
91
+ permissions: await this.getDefaultPermissions(flp.permissions)
92
+ })));
100
93
  }
101
- return await this.canAccessFolder({
102
- permissions: flp.permissions,
103
- rwd: "w",
104
- managePermissions: true
105
- });
106
- }
107
- getDefaultPermissions(permissions) {
108
- const getDefaultPermissionsUseCase = new GetDefaultPermissions(this.identityContext);
109
- if (this.canUseTeams()) {
110
- const getDefaultPermissionsWithTeams = new GetDefaultPermissionsWithTeams(this.identityContext, this.listUserTeamsUseCase, getDefaultPermissionsUseCase);
111
- return getDefaultPermissionsWithTeams.execute(permissions);
94
+ async getFolderLevelPermissions(id) {
95
+ const flp = await this.getFlpUseCase.execute(id);
96
+ return await this.getDefaultPermissions(flp?.permissions ?? []);
112
97
  }
113
- return getDefaultPermissionsUseCase.execute(permissions);
114
- }
115
- async listFolderLevelPermissions(params) {
116
- const flps = await this.listFlpsUseCase.execute(params);
117
- return Promise.all(flps.map(async flp => ({
118
- id: flp.id,
119
- permissions: await this.getDefaultPermissions(flp.permissions)
120
- })));
121
- }
122
- async getFolderLevelPermissions(id) {
123
- const flp = await this.getFlpUseCase.execute(id);
124
- return await this.getDefaultPermissions(flp?.permissions ?? []);
125
- }
126
98
  }
127
- export const FolderLevelPermissions = createImplementation({
128
- abstraction: FolderLevelPermissionsAbstraction,
129
- implementation: FolderLevelPermissionsImpl,
130
- dependencies: [IdentityContext, WcpContext, ListUserTeamsUseCase, GetFlpUseCase, ListFlpsUseCase]
99
+ const FolderLevelPermissions_FolderLevelPermissions = createImplementation({
100
+ abstraction: FolderLevelPermissions,
101
+ implementation: FolderLevelPermissionsImpl,
102
+ dependencies: [
103
+ IdentityContext,
104
+ WcpContext,
105
+ ListUserTeamsUseCase,
106
+ GetFlpUseCase,
107
+ ListFlpsUseCase
108
+ ]
131
109
  });
110
+ export { FolderLevelPermissions_FolderLevelPermissions as FolderLevelPermissions };
132
111
 
133
112
  //# sourceMappingURL=FolderLevelPermissions.js.map