@webiny/api-aco 0.0.0-unstable.bca7b3e350 → 0.0.0-unstable.c27f4d8a31

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 (593) hide show
  1. package/README.md +6 -28
  2. package/constants.d.ts +2 -0
  3. package/constants.js +4 -0
  4. package/constants.js.map +1 -0
  5. package/createAcoContext.d.ts +8 -2
  6. package/createAcoContext.js +128 -50
  7. package/createAcoContext.js.map +1 -1
  8. package/createAcoGraphQL.d.ts +3 -2
  9. package/createAcoGraphQL.js +58 -38
  10. package/createAcoGraphQL.js.map +1 -1
  11. package/createAcoStorageOperations.d.ts +8 -6
  12. package/createAcoStorageOperations.js +9 -18
  13. package/createAcoStorageOperations.js.map +1 -1
  14. package/createAcoTasks.d.ts +1 -0
  15. package/createAcoTasks.js +15 -0
  16. package/createAcoTasks.js.map +1 -0
  17. package/domain/folder/abstractions.d.ts +9 -0
  18. package/domain/folder/abstractions.js +8 -0
  19. package/domain/folder/abstractions.js.map +1 -0
  20. package/domain/folder/errors.d.ts +29 -0
  21. package/domain/folder/errors.js +56 -0
  22. package/domain/folder/errors.js.map +1 -0
  23. package/domain/folder/folder.model.d.ts +9 -0
  24. package/domain/folder/folder.model.js +42 -0
  25. package/domain/folder/folder.model.js.map +1 -0
  26. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.d.ts +13 -0
  27. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js +43 -0
  28. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js.map +1 -0
  29. package/features/cms/decorators/CreateEntryWithFlpDecorator.d.ts +12 -0
  30. package/features/cms/decorators/CreateEntryWithFlpDecorator.js +36 -0
  31. package/features/cms/decorators/CreateEntryWithFlpDecorator.js.map +1 -0
  32. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.d.ts +13 -0
  33. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js +43 -0
  34. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js.map +1 -0
  35. package/features/cms/decorators/DeleteEntryWithFlpDecorator.d.ts +13 -0
  36. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js +45 -0
  37. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js.map +1 -0
  38. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.d.ts +12 -0
  39. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js +41 -0
  40. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js.map +1 -0
  41. package/features/cms/decorators/GetEntryWithFlpDecorator.d.ts +12 -0
  42. package/features/cms/decorators/GetEntryWithFlpDecorator.js +41 -0
  43. package/features/cms/decorators/GetEntryWithFlpDecorator.js.map +1 -0
  44. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.d.ts +13 -0
  45. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js +45 -0
  46. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js.map +1 -0
  47. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.d.ts +13 -0
  48. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js +44 -0
  49. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js.map +1 -0
  50. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.d.ts +11 -0
  51. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js +36 -0
  52. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js.map +1 -0
  53. package/features/cms/decorators/ListEntriesWithFlpDecorator.d.ts +11 -0
  54. package/features/cms/decorators/ListEntriesWithFlpDecorator.js +35 -0
  55. package/features/cms/decorators/ListEntriesWithFlpDecorator.js.map +1 -0
  56. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.d.ts +11 -0
  57. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js +36 -0
  58. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js.map +1 -0
  59. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.d.ts +11 -0
  60. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js +36 -0
  61. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js.map +1 -0
  62. package/features/cms/decorators/MoveEntryWithFlpDecorator.d.ts +15 -0
  63. package/features/cms/decorators/MoveEntryWithFlpDecorator.js +63 -0
  64. package/features/cms/decorators/MoveEntryWithFlpDecorator.js.map +1 -0
  65. package/features/cms/decorators/UpdateEntryWithFlpDecorator.d.ts +15 -0
  66. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js +43 -0
  67. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js.map +1 -0
  68. package/features/cms/feature.d.ts +1 -0
  69. package/features/cms/feature.js +43 -0
  70. package/features/cms/feature.js.map +1 -0
  71. package/features/cms/index.d.ts +1 -0
  72. package/features/cms/index.js +3 -0
  73. package/features/cms/index.js.map +1 -0
  74. package/features/flp/CreateFlp/CreateFlpUseCase.d.ts +8 -0
  75. package/features/flp/CreateFlp/CreateFlpUseCase.js +41 -0
  76. package/features/flp/CreateFlp/CreateFlpUseCase.js.map +1 -0
  77. package/features/flp/CreateFlp/abstractions.d.ts +8 -0
  78. package/features/flp/CreateFlp/abstractions.js +7 -0
  79. package/features/flp/CreateFlp/abstractions.js.map +1 -0
  80. package/features/flp/CreateFlp/feature.d.ts +6 -0
  81. package/features/flp/CreateFlp/feature.js +13 -0
  82. package/features/flp/CreateFlp/feature.js.map +1 -0
  83. package/features/flp/CreateFlp/index.d.ts +2 -0
  84. package/features/flp/CreateFlp/index.js +4 -0
  85. package/features/flp/CreateFlp/index.js.map +1 -0
  86. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.d.ts +14 -0
  87. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js +37 -0
  88. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js.map +1 -0
  89. package/features/flp/CreateFlpOnFolderCreated/feature.d.ts +1 -0
  90. package/features/flp/CreateFlpOnFolderCreated/feature.js +10 -0
  91. package/features/flp/CreateFlpOnFolderCreated/feature.js.map +1 -0
  92. package/features/flp/CreateFlpOnFolderCreated/index.d.ts +1 -0
  93. package/features/flp/CreateFlpOnFolderCreated/index.js +3 -0
  94. package/features/flp/CreateFlpOnFolderCreated/index.js.map +1 -0
  95. package/features/flp/DeleteFlp/DeleteFlpUseCase.d.ts +8 -0
  96. package/features/flp/DeleteFlp/DeleteFlpUseCase.js +23 -0
  97. package/features/flp/DeleteFlp/DeleteFlpUseCase.js.map +1 -0
  98. package/features/flp/DeleteFlp/abstractions.d.ts +8 -0
  99. package/features/flp/DeleteFlp/abstractions.js +7 -0
  100. package/features/flp/DeleteFlp/abstractions.js.map +1 -0
  101. package/features/flp/DeleteFlp/feature.d.ts +6 -0
  102. package/features/flp/DeleteFlp/feature.js +13 -0
  103. package/features/flp/DeleteFlp/feature.js.map +1 -0
  104. package/features/flp/DeleteFlp/index.d.ts +2 -0
  105. package/features/flp/DeleteFlp/index.js +4 -0
  106. package/features/flp/DeleteFlp/index.js.map +1 -0
  107. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.d.ts +14 -0
  108. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js +37 -0
  109. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js.map +1 -0
  110. package/features/flp/DeleteFlpOnFolderDeleted/feature.d.ts +1 -0
  111. package/features/flp/DeleteFlpOnFolderDeleted/feature.js +10 -0
  112. package/features/flp/DeleteFlpOnFolderDeleted/feature.js.map +1 -0
  113. package/features/flp/DeleteFlpOnFolderDeleted/index.d.ts +1 -0
  114. package/features/flp/DeleteFlpOnFolderDeleted/index.js +3 -0
  115. package/features/flp/DeleteFlpOnFolderDeleted/index.js.map +1 -0
  116. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.d.ts +35 -0
  117. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js +133 -0
  118. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js.map +1 -0
  119. package/features/flp/FolderLevelPermissions/abstractions.d.ts +25 -0
  120. package/features/flp/FolderLevelPermissions/abstractions.js +4 -0
  121. package/features/flp/FolderLevelPermissions/abstractions.js.map +1 -0
  122. package/features/flp/FolderLevelPermissions/feature.d.ts +1 -0
  123. package/features/flp/FolderLevelPermissions/feature.js +10 -0
  124. package/features/flp/FolderLevelPermissions/feature.js.map +1 -0
  125. package/features/flp/FolderLevelPermissions/index.d.ts +2 -0
  126. package/features/flp/FolderLevelPermissions/index.js +4 -0
  127. package/features/flp/FolderLevelPermissions/index.js.map +1 -0
  128. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.d.ts +7 -0
  129. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +41 -0
  130. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -0
  131. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.d.ts +9 -0
  132. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +3 -0
  133. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +1 -0
  134. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.d.ts +2 -0
  135. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +3 -0
  136. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +1 -0
  137. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.d.ts +7 -0
  138. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +34 -0
  139. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -0
  140. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.d.ts +8 -0
  141. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +3 -0
  142. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +1 -0
  143. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.d.ts +2 -0
  144. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +3 -0
  145. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +1 -0
  146. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.d.ts +4 -0
  147. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +7 -0
  148. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -0
  149. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.d.ts +3 -0
  150. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +3 -0
  151. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +1 -0
  152. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.d.ts +2 -0
  153. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +3 -0
  154. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +1 -0
  155. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.d.ts +5 -0
  156. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +7 -0
  157. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -0
  158. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.d.ts +4 -0
  159. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +3 -0
  160. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +1 -0
  161. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.d.ts +2 -0
  162. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +3 -0
  163. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +1 -0
  164. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.d.ts +5 -0
  165. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +70 -0
  166. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -0
  167. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.d.ts +8 -0
  168. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +13 -0
  169. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -0
  170. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.d.ts +11 -0
  171. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +38 -0
  172. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -0
  173. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.d.ts +4 -0
  174. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +3 -0
  175. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +1 -0
  176. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.d.ts +3 -0
  177. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +4 -0
  178. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +1 -0
  179. package/features/flp/FolderLevelPermissions/useCases/index.d.ts +5 -0
  180. package/features/flp/FolderLevelPermissions/useCases/index.js +7 -0
  181. package/features/flp/FolderLevelPermissions/useCases/index.js.map +1 -0
  182. package/features/flp/GetFlp/GetFlpUseCase.d.ts +7 -0
  183. package/features/flp/GetFlp/GetFlpUseCase.js +10 -0
  184. package/features/flp/GetFlp/GetFlpUseCase.js.map +1 -0
  185. package/features/flp/GetFlp/abstractions.d.ts +8 -0
  186. package/features/flp/GetFlp/abstractions.js +4 -0
  187. package/features/flp/GetFlp/abstractions.js.map +1 -0
  188. package/features/flp/GetFlp/feature.d.ts +1 -0
  189. package/features/flp/GetFlp/feature.js +13 -0
  190. package/features/flp/GetFlp/feature.js.map +1 -0
  191. package/features/flp/GetFlp/index.d.ts +1 -0
  192. package/features/flp/GetFlp/index.js +3 -0
  193. package/features/flp/GetFlp/index.js.map +1 -0
  194. package/features/flp/ListFlps/ListFlpsUseCase.d.ts +7 -0
  195. package/features/flp/ListFlps/ListFlpsUseCase.js +10 -0
  196. package/features/flp/ListFlps/ListFlpsUseCase.js.map +1 -0
  197. package/features/flp/ListFlps/abstractions.d.ts +16 -0
  198. package/features/flp/ListFlps/abstractions.js +4 -0
  199. package/features/flp/ListFlps/abstractions.js.map +1 -0
  200. package/features/flp/ListFlps/feature.d.ts +1 -0
  201. package/features/flp/ListFlps/feature.js +13 -0
  202. package/features/flp/ListFlps/feature.js.map +1 -0
  203. package/features/flp/ListFlps/index.d.ts +1 -0
  204. package/features/flp/ListFlps/index.js +3 -0
  205. package/features/flp/ListFlps/index.js.map +1 -0
  206. package/features/flp/UpdateFlp/UpdateFlpUseCase.d.ts +19 -0
  207. package/features/flp/UpdateFlp/UpdateFlpUseCase.js +203 -0
  208. package/features/flp/UpdateFlp/UpdateFlpUseCase.js.map +1 -0
  209. package/features/flp/UpdateFlp/abstractions.d.ts +14 -0
  210. package/features/flp/UpdateFlp/abstractions.js +7 -0
  211. package/features/flp/UpdateFlp/abstractions.js.map +1 -0
  212. package/features/flp/UpdateFlp/feature.d.ts +6 -0
  213. package/features/flp/UpdateFlp/feature.js +13 -0
  214. package/features/flp/UpdateFlp/feature.js.map +1 -0
  215. package/features/flp/UpdateFlp/index.d.ts +2 -0
  216. package/features/flp/UpdateFlp/index.js +4 -0
  217. package/features/flp/UpdateFlp/index.js.map +1 -0
  218. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.d.ts +14 -0
  219. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js +39 -0
  220. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js.map +1 -0
  221. package/features/flp/UpdateFlpOnFolderUpdated/feature.d.ts +1 -0
  222. package/features/flp/UpdateFlpOnFolderUpdated/feature.js +10 -0
  223. package/features/flp/UpdateFlpOnFolderUpdated/feature.js.map +1 -0
  224. package/features/flp/UpdateFlpOnFolderUpdated/index.d.ts +1 -0
  225. package/features/flp/UpdateFlpOnFolderUpdated/index.js +3 -0
  226. package/features/flp/UpdateFlpOnFolderUpdated/index.js.map +1 -0
  227. package/features/folder/CreateFolder/CreateFolderRepository.d.ts +21 -0
  228. package/features/folder/CreateFolder/CreateFolderRepository.js +108 -0
  229. package/features/folder/CreateFolder/CreateFolderRepository.js.map +1 -0
  230. package/features/folder/CreateFolder/CreateFolderUseCase.d.ts +12 -0
  231. package/features/folder/CreateFolder/CreateFolderUseCase.js +39 -0
  232. package/features/folder/CreateFolder/CreateFolderUseCase.js.map +1 -0
  233. package/features/folder/CreateFolder/abstractions.d.ts +55 -0
  234. package/features/folder/CreateFolder/abstractions.js +21 -0
  235. package/features/folder/CreateFolder/abstractions.js.map +1 -0
  236. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.d.ts +11 -0
  237. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js +44 -0
  238. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js.map +1 -0
  239. package/features/folder/CreateFolder/events.d.ts +10 -0
  240. package/features/folder/CreateFolder/events.js +19 -0
  241. package/features/folder/CreateFolder/events.js.map +1 -0
  242. package/features/folder/CreateFolder/feature.d.ts +1 -0
  243. package/features/folder/CreateFolder/feature.js +14 -0
  244. package/features/folder/CreateFolder/feature.js.map +1 -0
  245. package/features/folder/CreateFolder/index.d.ts +2 -0
  246. package/features/folder/CreateFolder/index.js +4 -0
  247. package/features/folder/CreateFolder/index.js.map +1 -0
  248. package/features/folder/DeleteFolder/DeleteFolderRepository.d.ts +15 -0
  249. package/features/folder/DeleteFolder/DeleteFolderRepository.js +30 -0
  250. package/features/folder/DeleteFolder/DeleteFolderRepository.js.map +1 -0
  251. package/features/folder/DeleteFolder/DeleteFolderUseCase.d.ts +13 -0
  252. package/features/folder/DeleteFolder/DeleteFolderUseCase.js +55 -0
  253. package/features/folder/DeleteFolder/DeleteFolderUseCase.js.map +1 -0
  254. package/features/folder/DeleteFolder/abstractions.d.ts +55 -0
  255. package/features/folder/DeleteFolder/abstractions.js +21 -0
  256. package/features/folder/DeleteFolder/abstractions.js.map +1 -0
  257. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.d.ts +11 -0
  258. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js +28 -0
  259. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js.map +1 -0
  260. package/features/folder/DeleteFolder/events.d.ts +10 -0
  261. package/features/folder/DeleteFolder/events.js +19 -0
  262. package/features/folder/DeleteFolder/events.js.map +1 -0
  263. package/features/folder/DeleteFolder/feature.d.ts +1 -0
  264. package/features/folder/DeleteFolder/feature.js +14 -0
  265. package/features/folder/DeleteFolder/feature.js.map +1 -0
  266. package/features/folder/DeleteFolder/index.d.ts +2 -0
  267. package/features/folder/DeleteFolder/index.js +4 -0
  268. package/features/folder/DeleteFolder/index.js.map +1 -0
  269. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.d.ts +15 -0
  270. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js +56 -0
  271. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js.map +1 -0
  272. package/features/folder/EnsureFolderIsEmpty/abstractions.d.ts +20 -0
  273. package/features/folder/EnsureFolderIsEmpty/abstractions.js +4 -0
  274. package/features/folder/EnsureFolderIsEmpty/abstractions.js.map +1 -0
  275. package/features/folder/EnsureFolderIsEmpty/feature.d.ts +1 -0
  276. package/features/folder/EnsureFolderIsEmpty/feature.js +10 -0
  277. package/features/folder/EnsureFolderIsEmpty/feature.js.map +1 -0
  278. package/features/folder/EnsureFolderIsEmpty/index.d.ts +1 -0
  279. package/features/folder/EnsureFolderIsEmpty/index.js +3 -0
  280. package/features/folder/EnsureFolderIsEmpty/index.js.map +1 -0
  281. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.d.ts +12 -0
  282. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js +29 -0
  283. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js.map +1 -0
  284. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.d.ts +7 -0
  285. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js +17 -0
  286. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js.map +1 -0
  287. package/features/folder/EnsureFolderIsEmptyOnDelete/index.d.ts +1 -0
  288. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js +3 -0
  289. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js.map +1 -0
  290. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.d.ts +16 -0
  291. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js +56 -0
  292. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js.map +1 -0
  293. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.d.ts +1 -0
  294. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js +10 -0
  295. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js.map +1 -0
  296. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.d.ts +1 -0
  297. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js +3 -0
  298. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js.map +1 -0
  299. package/features/folder/GetAncestors/GetAncestorsRepository.d.ts +15 -0
  300. package/features/folder/GetAncestors/GetAncestorsRepository.js +88 -0
  301. package/features/folder/GetAncestors/GetAncestorsRepository.js.map +1 -0
  302. package/features/folder/GetAncestors/GetAncestorsUseCase.d.ts +10 -0
  303. package/features/folder/GetAncestors/GetAncestorsUseCase.js +17 -0
  304. package/features/folder/GetAncestors/GetAncestorsUseCase.js.map +1 -0
  305. package/features/folder/GetAncestors/abstractions.d.ts +38 -0
  306. package/features/folder/GetAncestors/abstractions.js +15 -0
  307. package/features/folder/GetAncestors/abstractions.js.map +1 -0
  308. package/features/folder/GetAncestors/feature.d.ts +1 -0
  309. package/features/folder/GetAncestors/feature.js +12 -0
  310. package/features/folder/GetAncestors/feature.js.map +1 -0
  311. package/features/folder/GetAncestors/index.d.ts +2 -0
  312. package/features/folder/GetAncestors/index.js +4 -0
  313. package/features/folder/GetAncestors/index.js.map +1 -0
  314. package/features/folder/GetFolder/GetFolderRepository.d.ts +15 -0
  315. package/features/folder/GetFolder/GetFolderRepository.js +31 -0
  316. package/features/folder/GetFolder/GetFolderRepository.js.map +1 -0
  317. package/features/folder/GetFolder/GetFolderUseCase.d.ts +10 -0
  318. package/features/folder/GetFolder/GetFolderUseCase.js +17 -0
  319. package/features/folder/GetFolder/GetFolderUseCase.js.map +1 -0
  320. package/features/folder/GetFolder/abstractions.d.ts +54 -0
  321. package/features/folder/GetFolder/abstractions.js +21 -0
  322. package/features/folder/GetFolder/abstractions.js.map +1 -0
  323. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.d.ts +29 -0
  324. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js +37 -0
  325. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js.map +1 -0
  326. package/features/folder/GetFolder/feature.d.ts +1 -0
  327. package/features/folder/GetFolder/feature.js +14 -0
  328. package/features/folder/GetFolder/feature.js.map +1 -0
  329. package/features/folder/GetFolder/index.d.ts +2 -0
  330. package/features/folder/GetFolder/index.js +4 -0
  331. package/features/folder/GetFolder/index.js.map +1 -0
  332. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.d.ts +18 -0
  333. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js +103 -0
  334. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -0
  335. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.d.ts +10 -0
  336. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js +17 -0
  337. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -0
  338. package/features/folder/GetFolderHierarchy/abstractions.d.ts +36 -0
  339. package/features/folder/GetFolderHierarchy/abstractions.js +15 -0
  340. package/features/folder/GetFolderHierarchy/abstractions.js.map +1 -0
  341. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.d.ts +16 -0
  342. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js +64 -0
  343. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -0
  344. package/features/folder/GetFolderHierarchy/feature.d.ts +1 -0
  345. package/features/folder/GetFolderHierarchy/feature.js +14 -0
  346. package/features/folder/GetFolderHierarchy/feature.js.map +1 -0
  347. package/features/folder/GetFolderHierarchy/index.d.ts +2 -0
  348. package/features/folder/GetFolderHierarchy/index.js +4 -0
  349. package/features/folder/GetFolderHierarchy/index.js.map +1 -0
  350. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.d.ts +13 -0
  351. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js +68 -0
  352. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js.map +1 -0
  353. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.d.ts +10 -0
  354. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js +7 -0
  355. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js.map +1 -0
  356. package/features/folder/ListFolderLevelPermissionsTargets/feature.d.ts +1 -0
  357. package/features/folder/ListFolderLevelPermissionsTargets/feature.js +10 -0
  358. package/features/folder/ListFolderLevelPermissionsTargets/feature.js.map +1 -0
  359. package/features/folder/ListFolderLevelPermissionsTargets/index.d.ts +1 -0
  360. package/features/folder/ListFolderLevelPermissionsTargets/index.js +3 -0
  361. package/features/folder/ListFolderLevelPermissionsTargets/index.js.map +1 -0
  362. package/features/folder/ListFolders/ListFoldersRepository.d.ts +17 -0
  363. package/features/folder/ListFolders/ListFoldersRepository.js +54 -0
  364. package/features/folder/ListFolders/ListFoldersRepository.js.map +1 -0
  365. package/features/folder/ListFolders/ListFoldersUseCase.d.ts +9 -0
  366. package/features/folder/ListFolders/ListFoldersUseCase.js +17 -0
  367. package/features/folder/ListFolders/ListFoldersUseCase.js.map +1 -0
  368. package/features/folder/ListFolders/abstractions.d.ts +42 -0
  369. package/features/folder/ListFolders/abstractions.js +15 -0
  370. package/features/folder/ListFolders/abstractions.js.map +1 -0
  371. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.d.ts +17 -0
  372. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js +77 -0
  373. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js.map +1 -0
  374. package/features/folder/ListFolders/feature.d.ts +1 -0
  375. package/features/folder/ListFolders/feature.js +14 -0
  376. package/features/folder/ListFolders/feature.js.map +1 -0
  377. package/features/folder/ListFolders/index.d.ts +2 -0
  378. package/features/folder/ListFolders/index.js +4 -0
  379. package/features/folder/ListFolders/index.js.map +1 -0
  380. package/features/folder/UpdateFolder/UpdateFolderRepository.d.ts +21 -0
  381. package/features/folder/UpdateFolder/UpdateFolderRepository.js +110 -0
  382. package/features/folder/UpdateFolder/UpdateFolderRepository.js.map +1 -0
  383. package/features/folder/UpdateFolder/UpdateFolderUseCase.d.ts +14 -0
  384. package/features/folder/UpdateFolder/UpdateFolderUseCase.js +55 -0
  385. package/features/folder/UpdateFolder/UpdateFolderUseCase.js.map +1 -0
  386. package/features/folder/UpdateFolder/abstractions.d.ts +60 -0
  387. package/features/folder/UpdateFolder/abstractions.js +21 -0
  388. package/features/folder/UpdateFolder/abstractions.js.map +1 -0
  389. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.d.ts +13 -0
  390. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js +77 -0
  391. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js.map +1 -0
  392. package/features/folder/UpdateFolder/events.d.ts +10 -0
  393. package/features/folder/UpdateFolder/events.js +19 -0
  394. package/features/folder/UpdateFolder/events.js.map +1 -0
  395. package/features/folder/UpdateFolder/feature.d.ts +1 -0
  396. package/features/folder/UpdateFolder/feature.js +14 -0
  397. package/features/folder/UpdateFolder/feature.js.map +1 -0
  398. package/features/folder/UpdateFolder/index.d.ts +2 -0
  399. package/features/folder/UpdateFolder/index.js +4 -0
  400. package/features/folder/UpdateFolder/index.js.map +1 -0
  401. package/features/folder/shared/EntryToFolderMapper.d.ts +5 -0
  402. package/features/folder/shared/EntryToFolderMapper.js +22 -0
  403. package/features/folder/shared/EntryToFolderMapper.js.map +1 -0
  404. package/features/folder/shared/abstractions.d.ts +5 -0
  405. package/features/folder/shared/abstractions.js +4 -0
  406. package/features/folder/shared/abstractions.js.map +1 -0
  407. package/filter/filter.crud.d.ts +3 -0
  408. package/filter/filter.crud.js +33 -0
  409. package/filter/filter.crud.js.map +1 -0
  410. package/filter/filter.gql.d.ts +3 -0
  411. package/filter/filter.gql.js +146 -0
  412. package/filter/filter.gql.js.map +1 -0
  413. package/filter/filter.model.d.ts +9 -0
  414. package/filter/filter.model.js +41 -0
  415. package/filter/filter.model.js.map +1 -0
  416. package/filter/filter.so.d.ts +3 -0
  417. package/filter/filter.so.js +104 -0
  418. package/filter/filter.so.js.map +1 -0
  419. package/filter/filter.types.d.ts +67 -0
  420. package/filter/filter.types.js +7 -0
  421. package/filter/filter.types.js.map +1 -0
  422. package/flp/flp.crud.d.ts +7 -0
  423. package/flp/flp.crud.js +91 -0
  424. package/flp/flp.crud.js.map +1 -0
  425. package/flp/flp.so.d.ts +20 -0
  426. package/flp/flp.so.js +220 -0
  427. package/flp/flp.so.js.map +1 -0
  428. package/flp/flp.types.d.ts +93 -0
  429. package/flp/flp.types.js +3 -0
  430. package/flp/flp.types.js.map +1 -0
  431. package/flp/index.d.ts +3 -0
  432. package/flp/index.js +5 -0
  433. package/flp/index.js.map +1 -0
  434. package/flp/tasks/createFlp.task.d.ts +16 -0
  435. package/flp/tasks/createFlp.task.js +35 -0
  436. package/flp/tasks/createFlp.task.js.map +1 -0
  437. package/flp/tasks/deleteFlp.task.d.ts +16 -0
  438. package/flp/tasks/deleteFlp.task.js +35 -0
  439. package/flp/tasks/deleteFlp.task.js.map +1 -0
  440. package/flp/tasks/index.d.ts +5 -0
  441. package/flp/tasks/index.js +19 -0
  442. package/flp/tasks/index.js.map +1 -0
  443. package/flp/tasks/syncFlp.task.d.ts +20 -0
  444. package/flp/tasks/syncFlp.task.js +127 -0
  445. package/flp/tasks/syncFlp.task.js.map +1 -0
  446. package/flp/tasks/updateFlp.task.d.ts +16 -0
  447. package/flp/tasks/updateFlp.task.js +40 -0
  448. package/flp/tasks/updateFlp.task.js.map +1 -0
  449. package/folder/createFolderModelModifier.d.ts +36 -0
  450. package/folder/createFolderModelModifier.js +61 -0
  451. package/folder/createFolderModelModifier.js.map +1 -0
  452. package/folder/createFolderTypeDefs.d.ts +7 -0
  453. package/folder/createFolderTypeDefs.js +186 -0
  454. package/folder/createFolderTypeDefs.js.map +1 -0
  455. package/folder/folder.gql.d.ts +4 -3
  456. package/folder/folder.gql.js +146 -97
  457. package/folder/folder.gql.js.map +1 -1
  458. package/folder/folder.types.d.ts +52 -59
  459. package/folder/folder.types.js +2 -4
  460. package/folder/folder.types.js.map +1 -1
  461. package/index.d.ts +8 -1
  462. package/index.js +9 -13
  463. package/index.js.map +1 -1
  464. package/package.json +44 -35
  465. package/types.d.ts +31 -15
  466. package/types.js +7 -4
  467. package/types.js.map +1 -1
  468. package/utils/FoldersCacheFactory.d.ts +10 -0
  469. package/utils/FoldersCacheFactory.js +24 -0
  470. package/utils/FoldersCacheFactory.js.map +1 -0
  471. package/utils/ListCache.d.ts +23 -0
  472. package/utils/ListCache.js +23 -0
  473. package/utils/ListCache.js.map +1 -0
  474. package/utils/Path.d.ts +3 -0
  475. package/utils/Path.js +11 -0
  476. package/utils/Path.js.map +1 -0
  477. package/utils/acoRecordId.d.ts +6 -0
  478. package/utils/acoRecordId.js +27 -0
  479. package/utils/acoRecordId.js.map +1 -0
  480. package/utils/compress.d.ts +4 -0
  481. package/utils/compress.js +12 -0
  482. package/utils/compress.js.map +1 -0
  483. package/utils/createListSort.d.ts +3 -0
  484. package/utils/createListSort.js +10 -0
  485. package/utils/createListSort.js.map +1 -0
  486. package/utils/createOperationsWrapper.d.ts +9 -0
  487. package/utils/createOperationsWrapper.js +22 -0
  488. package/utils/createOperationsWrapper.js.map +1 -0
  489. package/utils/decorators/CmsEntriesCrudDecorators.d.ts +11 -0
  490. package/utils/decorators/CmsEntriesCrudDecorators.js +206 -0
  491. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -0
  492. package/utils/decorators/FilterEntriesByFolderFactory.d.ts +7 -0
  493. package/utils/decorators/FilterEntriesByFolderFactory.js +23 -0
  494. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -0
  495. package/utils/decorators/ListEntriesFactory.d.ts +17 -0
  496. package/utils/decorators/ListEntriesFactory.js +106 -0
  497. package/utils/decorators/ListEntriesFactory.js.map +1 -0
  498. package/utils/decorators/hasRootFolderId.d.ts +7 -0
  499. package/utils/decorators/hasRootFolderId.js +19 -0
  500. package/utils/decorators/hasRootFolderId.js.map +1 -0
  501. package/utils/decorators/isPageModel.d.ts +5 -0
  502. package/utils/decorators/isPageModel.js +13 -0
  503. package/utils/decorators/isPageModel.js.map +1 -0
  504. package/utils/ensureAuthentication.d.ts +2 -0
  505. package/utils/ensureAuthentication.js +12 -0
  506. package/utils/ensureAuthentication.js.map +1 -0
  507. package/utils/pickEntryFieldValues.d.ts +3 -0
  508. package/utils/pickEntryFieldValues.js +23 -0
  509. package/utils/pickEntryFieldValues.js.map +1 -0
  510. package/utils/resolve.d.ts +1 -1
  511. package/utils/resolve.js +6 -11
  512. package/utils/resolve.js.map +1 -1
  513. package/context/folders.d.ts +0 -2
  514. package/context/folders.js +0 -261
  515. package/context/folders.js.map +0 -1
  516. package/context/index.d.ts +0 -2
  517. package/context/index.js +0 -22
  518. package/context/index.js.map +0 -1
  519. package/context/links.d.ts +0 -2
  520. package/context/links.js +0 -270
  521. package/context/links.js.map +0 -1
  522. package/createAcoCrud.d.ts +0 -2
  523. package/createAcoCrud.js +0 -17
  524. package/createAcoCrud.js.map +0 -1
  525. package/createAcoFields.d.ts +0 -2
  526. package/createAcoFields.js +0 -40
  527. package/createAcoFields.js.map +0 -1
  528. package/createAcoHooks.d.ts +0 -2
  529. package/createAcoHooks.js +0 -11
  530. package/createAcoHooks.js.map +0 -1
  531. package/createAcoModels.d.ts +0 -2
  532. package/createAcoModels.js +0 -67
  533. package/createAcoModels.js.map +0 -1
  534. package/folder/folder.crud.d.ts +0 -3
  535. package/folder/folder.crud.js +0 -92
  536. package/folder/folder.crud.js.map +0 -1
  537. package/folder/folder.model.d.ts +0 -4
  538. package/folder/folder.model.js +0 -79
  539. package/folder/folder.model.js.map +0 -1
  540. package/folder/folder.so.d.ts +0 -8
  541. package/folder/folder.so.js +0 -156
  542. package/folder/folder.so.js.map +0 -1
  543. package/folder/onFolderBeforeDelete.hook.d.ts +0 -2
  544. package/folder/onFolderBeforeDelete.hook.js +0 -53
  545. package/folder/onFolderBeforeDelete.hook.js.map +0 -1
  546. package/graphql/base.gql.d.ts +0 -3
  547. package/graphql/base.gql.js +0 -63
  548. package/graphql/base.gql.js.map +0 -1
  549. package/graphql/folders.gql.d.ts +0 -3
  550. package/graphql/folders.gql.js +0 -126
  551. package/graphql/folders.gql.js.map +0 -1
  552. package/graphql/index.d.ts +0 -1
  553. package/graphql/index.js +0 -15
  554. package/graphql/index.js.map +0 -1
  555. package/graphql/links.gql.d.ts +0 -3
  556. package/graphql/links.gql.js +0 -123
  557. package/graphql/links.gql.js.map +0 -1
  558. package/record/record.crud.d.ts +0 -3
  559. package/record/record.crud.js +0 -92
  560. package/record/record.crud.js.map +0 -1
  561. package/record/record.gql.d.ts +0 -3
  562. package/record/record.gql.js +0 -118
  563. package/record/record.gql.js.map +0 -1
  564. package/record/record.model.d.ts +0 -4
  565. package/record/record.model.js +0 -75
  566. package/record/record.model.js.map +0 -1
  567. package/record/record.so.d.ts +0 -8
  568. package/record/record.so.js +0 -100
  569. package/record/record.so.js.map +0 -1
  570. package/record/record.types.d.ts +0 -92
  571. package/record/record.types.js +0 -5
  572. package/record/record.types.js.map +0 -1
  573. package/subscriptions/afterFolderDelete.d.ts +0 -3
  574. package/subscriptions/afterFolderDelete.js +0 -62
  575. package/subscriptions/afterFolderDelete.js.map +0 -1
  576. package/subscriptions/index.d.ts +0 -3
  577. package/subscriptions/index.js +0 -14
  578. package/subscriptions/index.js.map +0 -1
  579. package/utils/createModelField.d.ts +0 -6
  580. package/utils/createModelField.js +0 -39
  581. package/utils/createModelField.js.map +0 -1
  582. package/utils/fieldResolver.d.ts +0 -16
  583. package/utils/fieldResolver.js +0 -44
  584. package/utils/fieldResolver.js.map +0 -1
  585. package/utils/getFieldValues.d.ts +0 -2
  586. package/utils/getFieldValues.js +0 -12
  587. package/utils/getFieldValues.js.map +0 -1
  588. package/utils/isInstallationPending.d.ts +0 -4
  589. package/utils/isInstallationPending.js +0 -21
  590. package/utils/isInstallationPending.js.map +0 -1
  591. package/utils/modelFactory.d.ts +0 -15
  592. package/utils/modelFactory.js +0 -23
  593. package/utils/modelFactory.js.map +0 -1
@@ -0,0 +1,10 @@
1
+ export class GetFlpUseCase {
2
+ constructor(get) {
3
+ this.get = get;
4
+ }
5
+ async execute(id) {
6
+ return this.get(id);
7
+ }
8
+ }
9
+
10
+ //# sourceMappingURL=GetFlpUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetFlpUseCase","constructor","get","execute","id"],"sources":["GetFlpUseCase.ts"],"sourcesContent":["import type { GetFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoFolderLevelPermissionsCrud, FolderLevelPermission } from \"~/flp/flp.types.js\";\n\nexport class GetFlpUseCase implements UseCaseAbstraction.Interface {\n private readonly get: AcoFolderLevelPermissionsCrud[\"get\"];\n\n constructor(get: AcoFolderLevelPermissionsCrud[\"get\"]) {\n this.get = get;\n }\n\n async execute(id: string): Promise<FolderLevelPermission | null> {\n return this.get(id);\n }\n}\n"],"mappings":"AAGA,OAAO,MAAMA,aAAa,CAAyC;EAG/DC,WAAWA,CAACC,GAAyC,EAAE;IACnD,IAAI,CAACA,GAAG,GAAGA,GAAG;EAClB;EAEA,MAAMC,OAAOA,CAACC,EAAU,EAAyC;IAC7D,OAAO,IAAI,CAACF,GAAG,CAACE,EAAE,CAAC;EACvB;AACJ","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { FolderLevelPermission } from "../../../types.js";
2
+ export interface IGetFolderPermission {
3
+ execute: (id: string) => Promise<FolderLevelPermission | null>;
4
+ }
5
+ export declare const GetFlpUseCase: import("@webiny/di").Abstraction<IGetFolderPermission>;
6
+ export declare namespace GetFlpUseCase {
7
+ type Interface = IGetFolderPermission;
8
+ }
@@ -0,0 +1,4 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ export const GetFlpUseCase = createAbstraction("GetFlpUseCase");
3
+
4
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","GetFlpUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { FolderLevelPermission } from \"~/types.js\";\n\nexport interface IGetFolderPermission {\n execute: (id: string) => Promise<FolderLevelPermission | null>;\n}\n\nexport const GetFlpUseCase = createAbstraction<IGetFolderPermission>(\"GetFlpUseCase\");\n\nexport namespace GetFlpUseCase {\n export type Interface = IGetFolderPermission;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAOvD,OAAO,MAAMC,aAAa,GAAGD,iBAAiB,CAAuB,eAAe,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const GetFlpFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<import("~/types.js").AcoFolderLevelPermissionsCrud>;
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { GetFlpUseCase } from "./GetFlpUseCase.js";
3
+ import { GetFlpUseCase as UseCaseAbstraction } from "./abstractions.js";
4
+ export const GetFlpFeature = createFeature({
5
+ name: "GetFlpFeature",
6
+ register(container, context) {
7
+ container.registerFactory(UseCaseAbstraction, () => {
8
+ return new GetFlpUseCase(context.get);
9
+ });
10
+ }
11
+ });
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","GetFlpUseCase","UseCaseAbstraction","GetFlpFeature","name","register","container","context","registerFactory","get"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetFlpUseCase } from \"./GetFlpUseCase.js\";\nimport { GetFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\nexport const GetFlpFeature = createFeature({\n name: \"GetFlpFeature\",\n register(container, context: AcoContext[\"aco\"][\"flp\"]) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new GetFlpUseCase(context.get);\n });\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,aAAa;AACtB,SAASA,aAAa,IAAIC,kBAAkB;AAG5C,OAAO,MAAMC,aAAa,GAAGH,aAAa,CAAC;EACvCI,IAAI,EAAE,eAAe;EACrBC,QAAQA,CAACC,SAAS,EAAEC,OAAiC,EAAE;IACnDD,SAAS,CAACE,eAAe,CAACN,kBAAkB,EAAE,MAAM;MAChD,OAAO,IAAID,aAAa,CAACM,OAAO,CAACE,GAAG,CAAC;IACzC,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export * from "./abstractions.js";
@@ -0,0 +1,3 @@
1
+ export * from "./abstractions.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./abstractions.js\";\n"],"mappings":"AAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import type { ListFlpsUseCase as UseCaseAbstraction } from "./abstractions.js";
2
+ import type { AcoFolderLevelPermissionsCrud, ListFlpsParams } from "../../../flp/flp.types.js";
3
+ export declare class ListFlpsUseCase implements UseCaseAbstraction.Interface {
4
+ private readonly list;
5
+ constructor(list: AcoFolderLevelPermissionsCrud["list"]);
6
+ execute(params: ListFlpsParams): Promise<import("~/flp/flp.types.js").FolderLevelPermission[]>;
7
+ }
@@ -0,0 +1,10 @@
1
+ export class ListFlpsUseCase {
2
+ constructor(list) {
3
+ this.list = list;
4
+ }
5
+ async execute(params) {
6
+ return this.list(params);
7
+ }
8
+ }
9
+
10
+ //# sourceMappingURL=ListFlpsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ListFlpsUseCase","constructor","list","execute","params"],"sources":["ListFlpsUseCase.ts"],"sourcesContent":["import type { ListFlpsUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoFolderLevelPermissionsCrud, ListFlpsParams } from \"~/flp/flp.types.js\";\n\nexport class ListFlpsUseCase implements UseCaseAbstraction.Interface {\n private readonly list: AcoFolderLevelPermissionsCrud[\"list\"];\n\n constructor(list: AcoFolderLevelPermissionsCrud[\"list\"]) {\n this.list = list;\n }\n\n async execute(params: ListFlpsParams) {\n return this.list(params);\n }\n}\n"],"mappings":"AAGA,OAAO,MAAMA,eAAe,CAAyC;EAGjEC,WAAWA,CAACC,IAA2C,EAAE;IACrD,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB;EAEA,MAAMC,OAAOA,CAACC,MAAsB,EAAE;IAClC,OAAO,IAAI,CAACF,IAAI,CAACE,MAAM,CAAC;EAC5B;AACJ","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ import type { FolderLevelPermission } from "../../../types.js";
2
+ interface ListFlpsParams {
3
+ where: {
4
+ path_startsWith?: string;
5
+ parentId?: string;
6
+ type: string;
7
+ };
8
+ }
9
+ export interface IListFlps {
10
+ execute: (params: ListFlpsParams) => Promise<FolderLevelPermission[]>;
11
+ }
12
+ export declare const ListFlpsUseCase: import("@webiny/di").Abstraction<IListFlps>;
13
+ export declare namespace ListFlpsUseCase {
14
+ type Interface = IListFlps;
15
+ }
16
+ export {};
@@ -0,0 +1,4 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ export const ListFlpsUseCase = createAbstraction("ListFlpsUseCase");
3
+
4
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","ListFlpsUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { FolderLevelPermission } from \"~/types.js\";\n\ninterface ListFlpsParams {\n where: {\n path_startsWith?: string;\n parentId?: string;\n type: string;\n };\n}\n\nexport interface IListFlps {\n execute: (params: ListFlpsParams) => Promise<FolderLevelPermission[]>;\n}\n\nexport const ListFlpsUseCase = createAbstraction<IListFlps>(\"ListFlpsUseCase\");\n\nexport namespace ListFlpsUseCase {\n export type Interface = IListFlps;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAevD,OAAO,MAAMC,eAAe,GAAGD,iBAAiB,CAAY,iBAAiB,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const ListFlpsFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<import("~/types.js").AcoFolderLevelPermissionsCrud>;
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { ListFlpsUseCase } from "./ListFlpsUseCase.js";
3
+ import { ListFlpsUseCase as UseCaseAbstraction } from "./abstractions.js";
4
+ export const ListFlpsFeature = createFeature({
5
+ name: "ListFlpsFeature",
6
+ register(container, context) {
7
+ container.registerFactory(UseCaseAbstraction, () => {
8
+ return new ListFlpsUseCase(context.list);
9
+ });
10
+ }
11
+ });
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","ListFlpsUseCase","UseCaseAbstraction","ListFlpsFeature","name","register","container","context","registerFactory","list"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListFlpsUseCase } from \"./ListFlpsUseCase.js\";\nimport { ListFlpsUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\nexport const ListFlpsFeature = createFeature({\n name: \"ListFlpsFeature\",\n register(container, context: AcoContext[\"aco\"][\"flp\"]) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new ListFlpsUseCase(context.list);\n });\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,eAAe;AACxB,SAASA,eAAe,IAAIC,kBAAkB;AAG9C,OAAO,MAAMC,eAAe,GAAGH,aAAa,CAAC;EACzCI,IAAI,EAAE,iBAAiB;EACvBC,QAAQA,CAACC,SAAS,EAAEC,OAAiC,EAAE;IACnDD,SAAS,CAACE,eAAe,CAACN,kBAAkB,EAAE,MAAM;MAChD,OAAO,IAAID,eAAe,CAACM,OAAO,CAACE,IAAI,CAAC;IAC5C,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export * from "./abstractions.js";
@@ -0,0 +1,3 @@
1
+ export * from "./abstractions.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./abstractions.js\";\n"],"mappings":"AAAA","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import type { UpdateFlpParams, UpdateFlpUseCase as UseCaseAbstraction } from "./abstractions.js";
2
+ import type { AcoContext } from "../../../types.js";
3
+ export declare class UpdateFlpUseCase implements UseCaseAbstraction.Interface {
4
+ private context;
5
+ private isCloseToTimeout?;
6
+ private handleTimeout?;
7
+ private readonly queued;
8
+ private readonly flpsToUpdate;
9
+ constructor(context: AcoContext);
10
+ execute(params: UpdateFlpParams): Promise<void>;
11
+ private collectBranchForUpdate;
12
+ private executeBatchUpdate;
13
+ private getQueuedList;
14
+ private setQueued;
15
+ private isQueued;
16
+ private clearQueuedList;
17
+ private listDirectChildren;
18
+ private getFlp;
19
+ }
@@ -0,0 +1,203 @@
1
+ import { WebinyError } from "@webiny/error";
2
+ import { Path } from "../../../utils/Path.js";
3
+ import { Permissions, ROOT_FOLDER } from "@webiny/shared-aco";
4
+ import { ListFoldersUseCase } from "../../folder/ListFolders/index.js";
5
+ import { FolderModel } from "../../../domain/folder/abstractions.js";
6
+ import { EntryId } from "@webiny/api-headless-cms/exports/api/cms/entry.js";
7
+ export class UpdateFlpUseCase {
8
+ queued = new Set();
9
+ flpsToUpdate = new Map();
10
+ constructor(context) {
11
+ this.context = context;
12
+ }
13
+ async execute(params) {
14
+ this.isCloseToTimeout = params.isCloseToTimeout;
15
+ this.handleTimeout = params.handleTimeout;
16
+ if (params.queued) {
17
+ params.queued.forEach(id => this.queued.add(id));
18
+ }
19
+ try {
20
+ const {
21
+ folder
22
+ } = params;
23
+ if (!folder) {
24
+ throw new WebinyError("Missing `folder`, I can't update the FLP record.", "ERROR_UPDATING_FLP_USE_CASE_FOLDER_NOT_PROVIDED", {
25
+ folder
26
+ });
27
+ }
28
+ const flp = await this.getFlp(folder);
29
+ const parentFlp = folder.parentId ? await this.context.aco.flp.get(folder.parentId) : null;
30
+
31
+ // Add the root folder to the update collection
32
+ this.flpsToUpdate.set(folder.id, {
33
+ slug: folder.slug,
34
+ parentId: folder.parentId ?? ROOT_FOLDER,
35
+ path: Path.create(folder.slug, parentFlp?.path),
36
+ permissions: Permissions.create(folder.permissions, parentFlp)
37
+ });
38
+
39
+ // Let's set the FLP as in queue
40
+ this.setQueued(flp.id);
41
+
42
+ // Get direct children and process each branch completely
43
+ const directChildren = await this.listDirectChildren(flp);
44
+ for (const child of directChildren) {
45
+ if (this.isCloseToTimeout?.()) {
46
+ await this.executeBatchUpdate();
47
+ this.handleTimeout?.(this.getQueuedList());
48
+ return;
49
+ }
50
+ await this.collectBranchForUpdate(child, flp);
51
+ }
52
+
53
+ // Execute batch update
54
+ await this.executeBatchUpdate();
55
+ } catch (error) {
56
+ // Clear the update collection in case of error
57
+ this.flpsToUpdate.clear();
58
+ this.queued.clear();
59
+ throw WebinyError.from(error, {
60
+ message: "Error while updating FLP",
61
+ code: "ERROR_UPDATING_FLP_USE_CASE"
62
+ });
63
+ }
64
+ }
65
+ async collectBranchForUpdate(flp, parentFlp) {
66
+ if (this.isQueued(flp.id)) {
67
+ return;
68
+ }
69
+
70
+ // Get the parent's permissions from the update collection if available
71
+ const parentFlpData = this.flpsToUpdate.get(parentFlp.id);
72
+ const currentParentFlp = {
73
+ ...parentFlp,
74
+ ...(parentFlpData && {
75
+ ...parentFlpData
76
+ })
77
+ };
78
+
79
+ // Add the FLP to the update collection with inherited permissions
80
+ this.flpsToUpdate.set(flp.id, {
81
+ slug: flp.slug,
82
+ parentId: flp.parentId,
83
+ path: Path.create(flp.slug, currentParentFlp.path),
84
+ permissions: Permissions.create(flp.permissions, currentParentFlp)
85
+ });
86
+
87
+ // Add the FLP to the queue list so we don't fetch it again
88
+ this.setQueued(flp.id);
89
+
90
+ // Process all children of this folder before moving to siblings
91
+ const children = await this.listDirectChildren(flp);
92
+ for (const child of children) {
93
+ if (this.isCloseToTimeout?.()) {
94
+ await this.executeBatchUpdate();
95
+ this.handleTimeout?.(this.getQueuedList());
96
+ return;
97
+ }
98
+ // Pass the current FLP as the parent for the child
99
+ await this.collectBranchForUpdate(child, flp);
100
+ }
101
+ }
102
+ async executeBatchUpdate() {
103
+ try {
104
+ const items = Array.from(this.flpsToUpdate.entries()).map(([id, {
105
+ slug,
106
+ parentId,
107
+ path,
108
+ permissions
109
+ }]) => {
110
+ return {
111
+ id,
112
+ data: {
113
+ slug,
114
+ parentId,
115
+ path,
116
+ permissions
117
+ }
118
+ };
119
+ });
120
+ await this.context.aco.flp.batchUpdate(items);
121
+
122
+ // Update all folders with the new path
123
+ const folderModel = this.context.container.resolve(FolderModel);
124
+ for (const item of items) {
125
+ const {
126
+ id,
127
+ data
128
+ } = item;
129
+ // Directly update the folder in CMS storage to bypass any folder update event triggers.
130
+ const entryId = EntryId.from(id);
131
+ await this.context.cms.updateEntry(folderModel, entryId.toString(), {
132
+ values: {
133
+ path: data.path
134
+ }
135
+ });
136
+ }
137
+ } catch (error) {
138
+ throw WebinyError.from(error, {
139
+ message: "Error while executing batch update of FLPs",
140
+ code: "BATCH_UPDATE_FLP_ERROR",
141
+ data: {
142
+ items: Array.from(this.flpsToUpdate.keys())
143
+ }
144
+ });
145
+ } finally {
146
+ // Clear the update collection after the batch update
147
+ this.flpsToUpdate.clear();
148
+
149
+ //Let's remove all the updated FLPs ids from the queue cache
150
+ this.clearQueuedList();
151
+ }
152
+ }
153
+ getQueuedList() {
154
+ return Array.from(this.queued);
155
+ }
156
+ setQueued(id) {
157
+ this.queued.add(id);
158
+ }
159
+ isQueued(id) {
160
+ return this.queued.has(id);
161
+ }
162
+ clearQueuedList() {
163
+ this.queued.clear();
164
+ }
165
+ async listDirectChildren(flp) {
166
+ const listFolders = this.context.container.resolve(ListFoldersUseCase);
167
+ const result = await this.context.security.withoutAuthorization(() => {
168
+ return listFolders.execute({
169
+ where: {
170
+ type: flp.type,
171
+ parentId: flp.id
172
+ }
173
+ });
174
+ });
175
+ if (result.isFail()) {
176
+ throw result.error;
177
+ }
178
+ return await Promise.all(result.value.folders.map(folder => this.getFlp(folder)));
179
+ }
180
+ async getFlp({
181
+ id,
182
+ type,
183
+ parentId,
184
+ slug,
185
+ permissions
186
+ }) {
187
+ const flp = await this.context.aco.flp.get(id);
188
+ if (!flp) {
189
+ const parentFlp = parentId ? await this.context.aco.flp.get(parentId) : null;
190
+ return await this.context.aco.flp.create({
191
+ id,
192
+ type,
193
+ slug,
194
+ parentId: parentId ?? ROOT_FOLDER,
195
+ path: Path.create(slug, parentFlp?.path),
196
+ permissions: Permissions.create(permissions, parentFlp)
197
+ });
198
+ }
199
+ return flp;
200
+ }
201
+ }
202
+
203
+ //# sourceMappingURL=UpdateFlpUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["WebinyError","Path","Permissions","ROOT_FOLDER","ListFoldersUseCase","FolderModel","EntryId","UpdateFlpUseCase","queued","Set","flpsToUpdate","Map","constructor","context","execute","params","isCloseToTimeout","handleTimeout","forEach","id","add","folder","flp","getFlp","parentFlp","parentId","aco","get","set","slug","path","create","permissions","setQueued","directChildren","listDirectChildren","child","executeBatchUpdate","getQueuedList","collectBranchForUpdate","error","clear","from","message","code","isQueued","parentFlpData","currentParentFlp","children","items","Array","entries","map","data","batchUpdate","folderModel","container","resolve","item","entryId","cms","updateEntry","toString","values","keys","clearQueuedList","has","listFolders","result","security","withoutAuthorization","where","type","isFail","Promise","all","value","folders"],"sources":["UpdateFlpUseCase.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport { Path } from \"~/utils/Path.js\";\nimport { Permissions, ROOT_FOLDER } from \"@webiny/shared-aco\";\nimport type { UpdateFlpParams, UpdateFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext, Folder, FolderLevelPermission, FolderPermission } from \"~/types.js\";\nimport { ListFoldersUseCase } from \"~/features/folder/ListFolders/index.js\";\nimport { FolderModel } from \"~/domain/folder/abstractions.js\";\nimport { EntryId } from \"@webiny/api-headless-cms/exports/api/cms/entry.js\";\n\ninterface FlpUpdateData {\n parentId: string;\n slug: string;\n path: string;\n permissions: FolderPermission[];\n}\n\nexport class UpdateFlpUseCase implements UseCaseAbstraction.Interface {\n private context: AcoContext;\n private isCloseToTimeout?: () => boolean;\n private handleTimeout?: (updated: string[]) => void;\n\n private readonly queued: Set<string> = new Set();\n private readonly flpsToUpdate: Map<string, FlpUpdateData> = new Map();\n\n constructor(context: AcoContext) {\n this.context = context;\n }\n\n async execute(params: UpdateFlpParams): Promise<void> {\n this.isCloseToTimeout = params.isCloseToTimeout;\n this.handleTimeout = params.handleTimeout;\n\n if (params.queued) {\n params.queued.forEach(id => this.queued.add(id));\n }\n\n try {\n const { folder } = params;\n\n if (!folder) {\n throw new WebinyError(\n \"Missing `folder`, I can't update the FLP record.\",\n \"ERROR_UPDATING_FLP_USE_CASE_FOLDER_NOT_PROVIDED\",\n { folder }\n );\n }\n\n const flp = await this.getFlp(folder);\n const parentFlp = folder.parentId\n ? await this.context.aco.flp.get(folder.parentId)\n : null;\n\n // Add the root folder to the update collection\n this.flpsToUpdate.set(folder.id, {\n slug: folder.slug,\n parentId: folder.parentId ?? ROOT_FOLDER,\n path: Path.create(folder.slug, parentFlp?.path),\n permissions: Permissions.create(folder.permissions, parentFlp)\n });\n\n // Let's set the FLP as in queue\n this.setQueued(flp.id);\n\n // Get direct children and process each branch completely\n const directChildren = await this.listDirectChildren(flp);\n\n for (const child of directChildren) {\n if (this.isCloseToTimeout?.()) {\n await this.executeBatchUpdate();\n this.handleTimeout?.(this.getQueuedList());\n return;\n }\n await this.collectBranchForUpdate(child, flp);\n }\n\n // Execute batch update\n await this.executeBatchUpdate();\n } catch (error) {\n // Clear the update collection in case of error\n this.flpsToUpdate.clear();\n this.queued.clear();\n throw WebinyError.from(error, {\n message: \"Error while updating FLP\",\n code: \"ERROR_UPDATING_FLP_USE_CASE\"\n });\n }\n }\n\n private async collectBranchForUpdate(\n flp: FolderLevelPermission,\n parentFlp: FolderLevelPermission\n ): Promise<void> {\n if (this.isQueued(flp.id)) {\n return;\n }\n\n // Get the parent's permissions from the update collection if available\n const parentFlpData = this.flpsToUpdate.get(parentFlp.id);\n const currentParentFlp = {\n ...parentFlp,\n ...(parentFlpData && { ...parentFlpData })\n };\n\n // Add the FLP to the update collection with inherited permissions\n this.flpsToUpdate.set(flp.id, {\n slug: flp.slug,\n parentId: flp.parentId,\n path: Path.create(flp.slug, currentParentFlp.path),\n permissions: Permissions.create(flp.permissions, currentParentFlp)\n });\n\n // Add the FLP to the queue list so we don't fetch it again\n this.setQueued(flp.id);\n\n // Process all children of this folder before moving to siblings\n const children = await this.listDirectChildren(flp);\n\n for (const child of children) {\n if (this.isCloseToTimeout?.()) {\n await this.executeBatchUpdate();\n this.handleTimeout?.(this.getQueuedList());\n return;\n }\n // Pass the current FLP as the parent for the child\n await this.collectBranchForUpdate(child, flp);\n }\n }\n\n private async executeBatchUpdate(): Promise<void> {\n try {\n const items = Array.from(this.flpsToUpdate.entries()).map(\n ([id, { slug, parentId, path, permissions }]) => {\n return {\n id,\n data: {\n slug,\n parentId,\n path,\n permissions\n }\n };\n }\n );\n\n await this.context.aco.flp.batchUpdate(items);\n\n // Update all folders with the new path\n const folderModel = this.context.container.resolve(FolderModel);\n for (const item of items) {\n const { id, data } = item;\n // Directly update the folder in CMS storage to bypass any folder update event triggers.\n const entryId = EntryId.from(id);\n await this.context.cms.updateEntry(folderModel, entryId.toString(), {\n values: {\n path: data.path\n }\n });\n }\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while executing batch update of FLPs\",\n code: \"BATCH_UPDATE_FLP_ERROR\",\n data: {\n items: Array.from(this.flpsToUpdate.keys())\n }\n });\n } finally {\n // Clear the update collection after the batch update\n this.flpsToUpdate.clear();\n\n //Let's remove all the updated FLPs ids from the queue cache\n this.clearQueuedList();\n }\n }\n\n private getQueuedList(): string[] {\n return Array.from(this.queued);\n }\n\n private setQueued(id: string): void {\n this.queued.add(id);\n }\n\n private isQueued(id: string): boolean {\n return this.queued.has(id);\n }\n\n private clearQueuedList(): void {\n this.queued.clear();\n }\n\n private async listDirectChildren(flp: FolderLevelPermission): Promise<FolderLevelPermission[]> {\n const listFolders = this.context.container.resolve(ListFoldersUseCase);\n\n const result = await this.context.security.withoutAuthorization(() => {\n return listFolders.execute({\n where: {\n type: flp.type,\n parentId: flp.id\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return await Promise.all(result.value.folders.map(folder => this.getFlp(folder)));\n }\n\n private async getFlp({\n id,\n type,\n parentId,\n slug,\n permissions\n }: Folder): Promise<FolderLevelPermission> {\n const flp = await this.context.aco.flp.get(id);\n\n if (!flp) {\n const parentFlp = parentId ? await this.context.aco.flp.get(parentId) : null;\n\n return await this.context.aco.flp.create({\n id,\n type,\n slug,\n parentId: parentId ?? ROOT_FOLDER,\n path: Path.create(slug, parentFlp?.path),\n permissions: Permissions.create(permissions, parentFlp)\n });\n }\n\n return flp;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import type { Folder } from "../../../folder/folder.types.js";
2
+ export interface UpdateFlpParams {
3
+ folder: Folder;
4
+ queued?: string[];
5
+ isCloseToTimeout?: () => boolean;
6
+ handleTimeout?: (queued: string[]) => void;
7
+ }
8
+ export interface IUpdateFlpUseCase {
9
+ execute: (params: UpdateFlpParams) => Promise<void>;
10
+ }
11
+ export declare const UpdateFlpUseCase: import("@webiny/di").Abstraction<IUpdateFlpUseCase>;
12
+ export declare namespace UpdateFlpUseCase {
13
+ type Interface = IUpdateFlpUseCase;
14
+ }
@@ -0,0 +1,7 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+
3
+ // Use Case Abstraction
4
+
5
+ export const UpdateFlpUseCase = createAbstraction("UpdateFlpUseCase");
6
+
7
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","UpdateFlpUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Folder } from \"~/folder/folder.types.js\";\n\nexport interface UpdateFlpParams {\n folder: Folder;\n queued?: string[];\n isCloseToTimeout?: () => boolean;\n handleTimeout?: (queued: string[]) => void;\n}\n\n// Use Case Abstraction\nexport interface IUpdateFlpUseCase {\n execute: (params: UpdateFlpParams) => Promise<void>;\n}\n\nexport const UpdateFlpUseCase = createAbstraction<IUpdateFlpUseCase>(\"UpdateFlpUseCase\");\n\nexport namespace UpdateFlpUseCase {\n export type Interface = IUpdateFlpUseCase;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAUvD;;AAKA,OAAO,MAAMC,gBAAgB,GAAGD,iBAAiB,CAAoB,kBAAkB,CAAC","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import type { AcoContext } from "../../../types.js";
2
+ interface LegacyDeps {
3
+ context: AcoContext;
4
+ }
5
+ export declare const UpdateFlpFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<LegacyDeps>;
6
+ export {};
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { UpdateFlpUseCase } from "./UpdateFlpUseCase.js";
3
+ import { UpdateFlpUseCase as UseCaseAbstraction } from "./abstractions.js";
4
+ export const UpdateFlpFeature = createFeature({
5
+ name: "UpdateFlp",
6
+ register(container, deps) {
7
+ container.registerFactory(UseCaseAbstraction, () => {
8
+ return new UpdateFlpUseCase(deps.context);
9
+ });
10
+ }
11
+ });
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","UpdateFlpUseCase","UseCaseAbstraction","UpdateFlpFeature","name","register","container","deps","registerFactory","context"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport type { Container } from \"@webiny/di\";\nimport { UpdateFlpUseCase } from \"./UpdateFlpUseCase.js\";\nimport { UpdateFlpUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport type { AcoContext } from \"~/types.js\";\n\ninterface LegacyDeps {\n context: AcoContext;\n}\n\nexport const UpdateFlpFeature = createFeature({\n name: \"UpdateFlp\",\n register(container: Container, deps: LegacyDeps) {\n container.registerFactory(UseCaseAbstraction, () => {\n return new UpdateFlpUseCase(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":[]}
@@ -0,0 +1,2 @@
1
+ export { UpdateFlpFeature } from "./feature.js";
2
+ export { UpdateFlpUseCase } from "./abstractions.js";
@@ -0,0 +1,4 @@
1
+ export { UpdateFlpFeature } from "./feature.js";
2
+ export { UpdateFlpUseCase } from "./abstractions.js";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UpdateFlpFeature","UpdateFlpUseCase"],"sources":["index.ts"],"sourcesContent":["export { UpdateFlpFeature } from \"./feature.js\";\nexport { UpdateFlpUseCase } from \"./abstractions.js\";\n"],"mappings":"AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
2
+ import { UpdateFlpUseCase } from "../UpdateFlp/abstractions.js";
3
+ import type { FolderAfterUpdateEvent } from "../../../features/folder/UpdateFolder/events.js";
4
+ import { FolderAfterUpdateEventHandler } from "../../../features/folder/UpdateFolder/index.js";
5
+ declare class UpdateFlpOnFolderUpdatedHandlerImpl implements FolderAfterUpdateEventHandler.Interface {
6
+ private updateFlpUseCase;
7
+ private tasks?;
8
+ constructor(updateFlpUseCase: UpdateFlpUseCase.Interface, tasks?: TaskService.Interface | undefined);
9
+ handle(event: FolderAfterUpdateEvent): Promise<void>;
10
+ }
11
+ export declare const UpdateFlpOnFolderUpdatedHandler: typeof UpdateFlpOnFolderUpdatedHandlerImpl & {
12
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<import("@webiny/api-core/features/EventPublisher").DomainEvent<import("../../folder/UpdateFolder/abstractions.js").FolderAfterUpdatePayload>>>;
13
+ };
14
+ export {};
@@ -0,0 +1,39 @@
1
+ import { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
2
+ import { UpdateFlpUseCase } from "../UpdateFlp/abstractions.js";
3
+ import { UPDATE_FLP_TASK_ID } from "../../../flp/tasks/index.js";
4
+ import { FolderAfterUpdateEventHandler } from "../../folder/UpdateFolder/index.js";
5
+ class UpdateFlpOnFolderUpdatedHandlerImpl {
6
+ constructor(updateFlpUseCase, tasks) {
7
+ this.updateFlpUseCase = updateFlpUseCase;
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: UPDATE_FLP_TASK_ID,
18
+ input: {
19
+ folder
20
+ }
21
+ });
22
+ } else {
23
+ await this.updateFlpUseCase.execute({
24
+ folder
25
+ });
26
+ }
27
+ } catch {
28
+ // Ignore errors
29
+ }
30
+ }
31
+ }
32
+ export const UpdateFlpOnFolderUpdatedHandler = FolderAfterUpdateEventHandler.createImplementation({
33
+ implementation: UpdateFlpOnFolderUpdatedHandlerImpl,
34
+ dependencies: [UpdateFlpUseCase, [TaskService, {
35
+ optional: true
36
+ }]]
37
+ });
38
+
39
+ //# sourceMappingURL=UpdateFlpOnFolderUpdatedHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TaskService","UpdateFlpUseCase","UPDATE_FLP_TASK_ID","FolderAfterUpdateEventHandler","UpdateFlpOnFolderUpdatedHandlerImpl","constructor","updateFlpUseCase","tasks","handle","event","folder","payload","trigger","definition","input","execute","UpdateFlpOnFolderUpdatedHandler","createImplementation","implementation","dependencies","optional"],"sources":["UpdateFlpOnFolderUpdatedHandler.ts"],"sourcesContent":["import { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\nimport { UpdateFlpUseCase } from \"../UpdateFlp/abstractions.js\";\nimport type { FolderAfterUpdateEvent } from \"~/features/folder/UpdateFolder/events.js\";\nimport type { IUpdateFlpTaskInput } from \"~/types.js\";\nimport { UPDATE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { FolderAfterUpdateEventHandler } from \"~/features/folder/UpdateFolder/index.js\";\n\nclass UpdateFlpOnFolderUpdatedHandlerImpl implements FolderAfterUpdateEventHandler.Interface {\n constructor(\n private updateFlpUseCase: UpdateFlpUseCase.Interface,\n private tasks?: TaskService.Interface\n ) {}\n\n async handle(event: FolderAfterUpdateEvent): Promise<void> {\n const { folder } = event.payload;\n\n try {\n if (this.tasks) {\n await this.tasks.trigger<IUpdateFlpTaskInput>({\n definition: UPDATE_FLP_TASK_ID,\n input: { folder }\n });\n } else {\n await this.updateFlpUseCase.execute({ folder });\n }\n } catch {\n // Ignore errors\n }\n }\n}\n\nexport const UpdateFlpOnFolderUpdatedHandler = FolderAfterUpdateEventHandler.createImplementation({\n implementation: UpdateFlpOnFolderUpdatedHandlerImpl,\n dependencies: [UpdateFlpUseCase, [TaskService, { optional: true }]]\n});\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,qDAAqD;AACjF,SAASC,gBAAgB;AAGzB,SAASC,kBAAkB;AAC3B,SAASC,6BAA6B;AAEtC,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,CAAC;UAAEL;QAAO,CAAC,CAAC;MACnD;IACJ,CAAC,CAAC,MAAM;MACJ;IAAA;EAER;AACJ;AAEA,OAAO,MAAMM,+BAA+B,GAAGb,6BAA6B,CAACc,oBAAoB,CAAC;EAC9FC,cAAc,EAAEd,mCAAmC;EACnDe,YAAY,EAAE,CAAClB,gBAAgB,EAAE,CAACD,WAAW,EAAE;IAAEoB,QAAQ,EAAE;EAAK,CAAC,CAAC;AACtE,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const UpdateFlpOnFolderUpdatedFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,10 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { UpdateFlpOnFolderUpdatedHandler } from "./UpdateFlpOnFolderUpdatedHandler.js";
3
+ export const UpdateFlpOnFolderUpdatedFeature = createFeature({
4
+ name: "UpdateFlpOnFolderUpdated",
5
+ register(container) {
6
+ container.register(UpdateFlpOnFolderUpdatedHandler);
7
+ }
8
+ });
9
+
10
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","UpdateFlpOnFolderUpdatedHandler","UpdateFlpOnFolderUpdatedFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdateFlpOnFolderUpdatedHandler } from \"./UpdateFlpOnFolderUpdatedHandler.js\";\n\nexport const UpdateFlpOnFolderUpdatedFeature = createFeature({\n name: \"UpdateFlpOnFolderUpdated\",\n register(container) {\n container.register(UpdateFlpOnFolderUpdatedHandler);\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":[]}
@@ -0,0 +1 @@
1
+ export { UpdateFlpOnFolderUpdatedFeature } from "./feature.js";
@@ -0,0 +1,3 @@
1
+ export { UpdateFlpOnFolderUpdatedFeature } from "./feature.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UpdateFlpOnFolderUpdatedFeature"],"sources":["index.ts"],"sourcesContent":["export { UpdateFlpOnFolderUpdatedFeature } from \"./feature.js\";\n"],"mappings":"AAAA,SAASA,+BAA+B","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { CreateFolderRepository as RepositoryAbstraction, type ICreateFolderRepository } from "./abstractions.js";
3
+ import { CreateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/CreateEntry";
4
+ import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
5
+ import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
6
+ import { FolderModel } from "../../../domain/folder/abstractions.js";
7
+ import type { CreateFolderParams, Folder } from "../../../folder/folder.types.js";
8
+ declare class CreateFolderRepositoryImpl implements ICreateFolderRepository {
9
+ private createEntry;
10
+ private listLatestEntries;
11
+ private getEntryById;
12
+ private folderModel;
13
+ constructor(createEntry: CreateEntryUseCase.Interface, listLatestEntries: ListLatestEntriesUseCase.Interface, getEntryById: GetEntryByIdUseCase.Interface, folderModel: FolderModel.Interface);
14
+ execute(data: CreateFolderParams): Promise<Result<Folder, RepositoryAbstraction.Error>>;
15
+ private checkExistingFolder;
16
+ private createFolderPath;
17
+ }
18
+ export declare const CreateFolderRepository: typeof CreateFolderRepositoryImpl & {
19
+ __abstraction: import("@webiny/di").Abstraction<ICreateFolderRepository>;
20
+ };
21
+ export {};