@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
package/types.d.ts CHANGED
@@ -1,38 +1,54 @@
1
- import { Tenant, TenancyContext } from "@webiny/api-tenancy/types";
2
- import { Context as BaseContext } from "@webiny/handler/types";
3
- import { I18NContext, I18NLocale } from "@webiny/api-i18n/types";
4
- import { SecurityContext, SecurityIdentity } from "@webiny/api-security/types";
5
- import { CmsContext } from "@webiny/api-headless-cms/types";
6
- import { AcoSearchRecordCrud, AcoSearchRecordStorageOperations } from "./record/record.types";
7
- import { AcoFolderCrud, AcoFolderStorageOperations } from "./folder/folder.types";
1
+ import type { Context as BaseContext } from "@webiny/handler/types.js";
2
+ import type { Context as TasksContext } from "@webiny/tasks/types.js";
3
+ import type { CmsContext } from "@webiny/api-headless-cms/types/index.js";
4
+ import type { AcoFilterCrud, AcoFilterStorageOperations } from "./filter/filter.types.js";
5
+ import type { AcoFolderLevelPermissionsCrud, AcoFolderLevelPermissionsStorageOperations } from "./flp/flp.types.js";
6
+ import type { Container } from "@webiny/di";
7
+ import { FolderLevelPermissions } from "./features/flp/FolderLevelPermissions/index.js";
8
+ import type { ApiCoreContext } from "@webiny/api-core/types/core.js";
9
+ import type { Tenant } from "@webiny/api-core/types/tenancy.js";
10
+ export * from "./filter/filter.types.js";
11
+ export type * from "./folder/folder.types.js";
12
+ export type * from "./flp/flp.types.js";
8
13
  export interface User {
9
14
  id: string;
10
15
  type: string;
11
- displayName: string | null;
16
+ displayName: string;
12
17
  }
13
18
  export interface ListMeta {
14
19
  cursor: string | null;
15
20
  totalCount: number;
16
21
  hasMoreItems: boolean;
17
22
  }
23
+ export declare enum ListSortDirection {
24
+ ASC = 0,
25
+ DESC = 1
26
+ }
27
+ export type ListSort = Record<string, ListSortDirection>;
18
28
  export interface AcoBaseFields {
19
29
  id: string;
20
30
  entryId: string;
21
31
  createdOn: string;
22
- createdBy: User;
32
+ modifiedOn: string | null;
23
33
  savedOn: string;
34
+ createdBy: User;
35
+ modifiedBy: User | null;
36
+ savedBy: User;
24
37
  }
25
38
  export interface AdvancedContentOrganisation {
26
- folder: AcoFolderCrud;
27
- search: AcoSearchRecordCrud;
39
+ filter: AcoFilterCrud;
40
+ flp: AcoFolderLevelPermissionsCrud;
28
41
  }
29
42
  export interface CreateAcoParams {
30
- getIdentity: () => SecurityIdentity;
31
- getLocale: () => I18NLocale;
32
43
  getTenant: () => Tenant;
33
44
  storageOperations: AcoStorageOperations;
45
+ folderLevelPermissions: FolderLevelPermissions.Interface;
46
+ container: Container;
47
+ }
48
+ export interface AcoStorageOperations {
49
+ filter: AcoFilterStorageOperations;
50
+ flp: AcoFolderLevelPermissionsStorageOperations;
34
51
  }
35
- export declare type AcoStorageOperations = AcoFolderStorageOperations & AcoSearchRecordStorageOperations;
36
- export interface AcoContext extends BaseContext, I18NContext, TenancyContext, SecurityContext, CmsContext {
52
+ export interface AcoContext extends BaseContext, ApiCoreContext, CmsContext, TasksContext {
37
53
  aco: AdvancedContentOrganisation;
38
54
  }
package/types.js CHANGED
@@ -1,5 +1,8 @@
1
- "use strict";
1
+ export * from "./filter/filter.types.js";
2
+ export let ListSortDirection = /*#__PURE__*/function (ListSortDirection) {
3
+ ListSortDirection[ListSortDirection["ASC"] = 0] = "ASC";
4
+ ListSortDirection[ListSortDirection["DESC"] = 1] = "DESC";
5
+ return ListSortDirection;
6
+ }({});
2
7
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
8
+ //# sourceMappingURL=types.js.map
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import { Tenant, TenancyContext } from \"@webiny/api-tenancy/types\";\nimport { Context as BaseContext } from \"@webiny/handler/types\";\nimport { I18NContext, I18NLocale } from \"@webiny/api-i18n/types\";\nimport { SecurityContext, SecurityIdentity } from \"@webiny/api-security/types\";\nimport { CmsContext } from \"@webiny/api-headless-cms/types\";\nimport { AcoSearchRecordCrud, AcoSearchRecordStorageOperations } from \"~/record/record.types\";\nimport { AcoFolderCrud, AcoFolderStorageOperations } from \"~/folder/folder.types\";\n\nexport interface User {\n id: string;\n type: string;\n displayName: string | null;\n}\n\nexport interface ListMeta {\n cursor: string | null;\n totalCount: number;\n hasMoreItems: boolean;\n}\n\nexport interface AcoBaseFields {\n id: string;\n entryId: string;\n createdOn: string;\n createdBy: User;\n savedOn: string;\n}\n\nexport interface AdvancedContentOrganisation {\n folder: AcoFolderCrud;\n search: AcoSearchRecordCrud;\n}\n\nexport interface CreateAcoParams {\n getIdentity: () => SecurityIdentity;\n getLocale: () => I18NLocale;\n getTenant: () => Tenant;\n storageOperations: AcoStorageOperations;\n}\n\nexport type AcoStorageOperations = AcoFolderStorageOperations & AcoSearchRecordStorageOperations;\n\nexport interface AcoContext\n extends BaseContext,\n I18NContext,\n TenancyContext,\n SecurityContext,\n CmsContext {\n aco: AdvancedContentOrganisation;\n}\n"],"mappings":""}
1
+ {"version":3,"names":["ListSortDirection"],"sources":["types.ts"],"sourcesContent":["import type { Context as BaseContext } from \"@webiny/handler/types.js\";\nimport type { Context as TasksContext } from \"@webiny/tasks/types.js\";\nimport type { CmsContext } from \"@webiny/api-headless-cms/types/index.js\";\nimport type { AcoFilterCrud, AcoFilterStorageOperations } from \"~/filter/filter.types.js\";\nimport type {\n AcoFolderLevelPermissionsCrud,\n AcoFolderLevelPermissionsStorageOperations\n} from \"~/flp/flp.types.js\";\nimport type { Container } from \"@webiny/di\";\nimport { FolderLevelPermissions } from \"./features/flp/FolderLevelPermissions/index.js\";\nimport type { ApiCoreContext } from \"@webiny/api-core/types/core.js\";\nimport type { Tenant } from \"@webiny/api-core/types/tenancy.js\";\n\nexport * from \"./filter/filter.types.js\";\nexport type * from \"./folder/folder.types.js\";\nexport type * from \"./flp/flp.types.js\";\n\nexport interface User {\n id: string;\n type: string;\n displayName: string;\n}\n\nexport interface ListMeta {\n cursor: string | null;\n totalCount: number;\n hasMoreItems: boolean;\n}\n\nexport enum ListSortDirection {\n ASC,\n DESC\n}\n\nexport type ListSort = Record<string, ListSortDirection>;\n\nexport interface AcoBaseFields {\n id: string;\n entryId: string;\n createdOn: string;\n modifiedOn: string | null;\n savedOn: string;\n createdBy: User;\n modifiedBy: User | null;\n savedBy: User;\n}\n\nexport interface AdvancedContentOrganisation {\n filter: AcoFilterCrud;\n flp: AcoFolderLevelPermissionsCrud;\n}\n\nexport interface CreateAcoParams {\n getTenant: () => Tenant;\n storageOperations: AcoStorageOperations;\n folderLevelPermissions: FolderLevelPermissions.Interface;\n container: Container;\n}\n\nexport interface AcoStorageOperations {\n filter: AcoFilterStorageOperations;\n flp: AcoFolderLevelPermissionsStorageOperations;\n}\n\nexport interface AcoContext extends BaseContext, ApiCoreContext, CmsContext, TasksContext {\n aco: AdvancedContentOrganisation;\n}\n"],"mappings":"AAaA;AAgBA,WAAYA,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB,CAAjBA,iBAAiB;EAAjBA,iBAAiB,CAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import type { Folder } from "../folder/folder.types.js";
2
+ import { ListCache } from "../utils/ListCache.js";
3
+ export declare class FoldersCacheFactory {
4
+ private cache;
5
+ hasCache(namespace: string): boolean;
6
+ getCache(namespace: string): ListCache<Folder>;
7
+ deleteCache(): void;
8
+ private getCacheKey;
9
+ }
10
+ export declare const folderCacheFactory: FoldersCacheFactory;
@@ -0,0 +1,24 @@
1
+ import { ListCache } from "./ListCache.js";
2
+ export class FoldersCacheFactory {
3
+ cache = new Map();
4
+ hasCache(namespace) {
5
+ const cacheKey = this.getCacheKey(namespace);
6
+ return this.cache.has(cacheKey);
7
+ }
8
+ getCache(namespace) {
9
+ const cacheKey = this.getCacheKey(namespace);
10
+ if (!this.cache.has(cacheKey)) {
11
+ this.cache.set(cacheKey, new ListCache());
12
+ }
13
+ return this.cache.get(cacheKey);
14
+ }
15
+ deleteCache() {
16
+ this.cache.clear();
17
+ }
18
+ getCacheKey(namespace) {
19
+ return namespace;
20
+ }
21
+ }
22
+ export const folderCacheFactory = new FoldersCacheFactory();
23
+
24
+ //# sourceMappingURL=FoldersCacheFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ListCache","FoldersCacheFactory","cache","Map","hasCache","namespace","cacheKey","getCacheKey","has","getCache","set","get","deleteCache","clear","folderCacheFactory"],"sources":["FoldersCacheFactory.ts"],"sourcesContent":["import type { Folder } from \"~/folder/folder.types.js\";\nimport { ListCache } from \"~/utils/ListCache.js\";\n\nexport class FoldersCacheFactory {\n private cache: Map<string, ListCache<Folder>> = new Map();\n\n hasCache(namespace: string) {\n const cacheKey = this.getCacheKey(namespace);\n return this.cache.has(cacheKey);\n }\n\n getCache(namespace: string) {\n const cacheKey = this.getCacheKey(namespace);\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new ListCache<Folder>());\n }\n\n return this.cache.get(cacheKey) as ListCache<Folder>;\n }\n\n deleteCache() {\n this.cache.clear();\n }\n\n private getCacheKey(namespace: string) {\n return namespace;\n }\n}\n\nexport const folderCacheFactory = new FoldersCacheFactory();\n"],"mappings":"AACA,SAASA,SAAS;AAElB,OAAO,MAAMC,mBAAmB,CAAC;EACrBC,KAAK,GAAmC,IAAIC,GAAG,CAAC,CAAC;EAEzDC,QAAQA,CAACC,SAAiB,EAAE;IACxB,MAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAACF,SAAS,CAAC;IAC5C,OAAO,IAAI,CAACH,KAAK,CAACM,GAAG,CAACF,QAAQ,CAAC;EACnC;EAEAG,QAAQA,CAACJ,SAAiB,EAAE;IACxB,MAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAACF,SAAS,CAAC;IAE5C,IAAI,CAAC,IAAI,CAACH,KAAK,CAACM,GAAG,CAACF,QAAQ,CAAC,EAAE;MAC3B,IAAI,CAACJ,KAAK,CAACQ,GAAG,CAACJ,QAAQ,EAAE,IAAIN,SAAS,CAAS,CAAC,CAAC;IACrD;IAEA,OAAO,IAAI,CAACE,KAAK,CAACS,GAAG,CAACL,QAAQ,CAAC;EACnC;EAEAM,WAAWA,CAAA,EAAG;IACV,IAAI,CAACV,KAAK,CAACW,KAAK,CAAC,CAAC;EACtB;EAEQN,WAAWA,CAACF,SAAiB,EAAE;IACnC,OAAOA,SAAS;EACpB;AACJ;AAEA,OAAO,MAAMS,kBAAkB,GAAG,IAAIb,mBAAmB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ export type Constructor<T> = new (...args: any[]) => T;
2
+ export interface IListCachePredicate<T> {
3
+ (item: T): boolean;
4
+ }
5
+ export interface IListCacheItemUpdater<T> {
6
+ (item: T): T;
7
+ }
8
+ export interface IListCache<T> {
9
+ clear(): void;
10
+ hasItems(): boolean;
11
+ getItems(): T[];
12
+ addItems(items: T[]): void;
13
+ updateItems(updater: IListCacheItemUpdater<T>): void;
14
+ }
15
+ export declare class ListCache<T> implements IListCache<T> {
16
+ private state;
17
+ constructor();
18
+ clear(): void;
19
+ hasItems(): boolean;
20
+ getItems(): T[];
21
+ addItems(items: T[]): void;
22
+ updateItems(updater: IListCacheItemUpdater<T>): void;
23
+ }
@@ -0,0 +1,23 @@
1
+ import cloneDeep from "lodash/cloneDeep.js";
2
+ export class ListCache {
3
+ constructor() {
4
+ this.state = [];
5
+ }
6
+ clear() {
7
+ this.state = [];
8
+ }
9
+ hasItems() {
10
+ return this.state.length > 0;
11
+ }
12
+ getItems() {
13
+ return cloneDeep(this.state);
14
+ }
15
+ addItems(items) {
16
+ this.state.push(...items);
17
+ }
18
+ updateItems(updater) {
19
+ this.state = this.state.map(item => updater(item));
20
+ }
21
+ }
22
+
23
+ //# sourceMappingURL=ListCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["cloneDeep","ListCache","constructor","state","clear","hasItems","length","getItems","addItems","items","push","updateItems","updater","map","item"],"sources":["ListCache.ts"],"sourcesContent":["import cloneDeep from \"lodash/cloneDeep.js\";\n\nexport type Constructor<T> = new (...args: any[]) => T;\n\nexport interface IListCachePredicate<T> {\n (item: T): boolean;\n}\n\nexport interface IListCacheItemUpdater<T> {\n (item: T): T;\n}\n\nexport interface IListCache<T> {\n clear(): void;\n hasItems(): boolean;\n getItems(): T[];\n addItems(items: T[]): void;\n updateItems(updater: IListCacheItemUpdater<T>): void;\n}\n\nexport class ListCache<T> implements IListCache<T> {\n private state: T[];\n\n constructor() {\n this.state = [];\n }\n\n clear(): void {\n this.state = [];\n }\n\n hasItems(): boolean {\n return this.state.length > 0;\n }\n\n getItems(): T[] {\n return cloneDeep(this.state);\n }\n\n addItems(items: T[]): void {\n this.state.push(...items);\n }\n\n updateItems(updater: IListCacheItemUpdater<T>): void {\n this.state = this.state.map(item => updater(item));\n }\n}\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,qBAAqB;AAoB3C,OAAO,MAAMC,SAAS,CAA6B;EAG/CC,WAAWA,CAAA,EAAG;IACV,IAAI,CAACC,KAAK,GAAG,EAAE;EACnB;EAEAC,KAAKA,CAAA,EAAS;IACV,IAAI,CAACD,KAAK,GAAG,EAAE;EACnB;EAEAE,QAAQA,CAAA,EAAY;IAChB,OAAO,IAAI,CAACF,KAAK,CAACG,MAAM,GAAG,CAAC;EAChC;EAEAC,QAAQA,CAAA,EAAQ;IACZ,OAAOP,SAAS,CAAC,IAAI,CAACG,KAAK,CAAC;EAChC;EAEAK,QAAQA,CAACC,KAAU,EAAQ;IACvB,IAAI,CAACN,KAAK,CAACO,IAAI,CAAC,GAAGD,KAAK,CAAC;EAC7B;EAEAE,WAAWA,CAACC,OAAiC,EAAQ;IACjD,IAAI,CAACT,KAAK,GAAG,IAAI,CAACA,KAAK,CAACU,GAAG,CAACC,IAAI,IAAIF,OAAO,CAACE,IAAI,CAAC,CAAC;EACtD;AACJ","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export declare class Path {
2
+ static create(slug: string, parentPath?: string): string;
3
+ }
package/utils/Path.js ADDED
@@ -0,0 +1,11 @@
1
+ import { ROOT_FOLDER } from "../constants.js";
2
+ export class Path {
3
+ static create(slug, parentPath) {
4
+ if (parentPath) {
5
+ return `${parentPath}/${slug}`;
6
+ }
7
+ return `${ROOT_FOLDER}/${slug}`;
8
+ }
9
+ }
10
+
11
+ //# sourceMappingURL=Path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ROOT_FOLDER","Path","create","slug","parentPath"],"sources":["Path.ts"],"sourcesContent":["import { ROOT_FOLDER } from \"~/constants.js\";\n\nexport class Path {\n static create(slug: string, parentPath?: string) {\n if (parentPath) {\n return `${parentPath}/${slug}`;\n }\n\n return `${ROOT_FOLDER}/${slug}`;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW;AAEpB,OAAO,MAAMC,IAAI,CAAC;EACd,OAAOC,MAAMA,CAACC,IAAY,EAAEC,UAAmB,EAAE;IAC7C,IAAIA,UAAU,EAAE;MACZ,OAAO,GAAGA,UAAU,IAAID,IAAI,EAAE;IAClC;IAEA,OAAO,GAAGH,WAAW,IAAIG,IAAI,EAAE;EACnC;AACJ","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 006
3
+ * PageDataMigration in ddb-es and ddb
4
+ */
5
+ export declare const attachAcoRecordPrefix: (id: string) => string;
6
+ export declare const removeAcoRecordPrefix: (id: string) => string;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * !!! DO NOT CHANGE THIS !!!
3
+ * If this is changed, you will need to create new migration which changes the IDs for the users.
4
+ *
5
+ * packages/migrations/src/migrations/5.35.0/006/ddb/PageDataMigration.ts:236
6
+ * packages/migrations/src/migrations/5.35.0/006/ddb-es/PageDataMigration.ts:419
7
+ */
8
+ const WBY_ACO_PREFIX = "wby-aco-";
9
+ /**
10
+ * 006
11
+ * PageDataMigration in ddb-es and ddb
12
+ */
13
+
14
+ export const attachAcoRecordPrefix = id => {
15
+ if (id.startsWith(WBY_ACO_PREFIX)) {
16
+ return id;
17
+ }
18
+ return `${WBY_ACO_PREFIX}${id}`;
19
+ };
20
+ export const removeAcoRecordPrefix = id => {
21
+ if (id.startsWith(WBY_ACO_PREFIX) === false) {
22
+ return id;
23
+ }
24
+ return id.substring(WBY_ACO_PREFIX.length);
25
+ };
26
+
27
+ //# sourceMappingURL=acoRecordId.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["WBY_ACO_PREFIX","attachAcoRecordPrefix","id","startsWith","removeAcoRecordPrefix","substring","length"],"sources":["acoRecordId.ts"],"sourcesContent":["/**\n * !!! DO NOT CHANGE THIS !!!\n * If this is changed, you will need to create new migration which changes the IDs for the users.\n *\n * packages/migrations/src/migrations/5.35.0/006/ddb/PageDataMigration.ts:236\n * packages/migrations/src/migrations/5.35.0/006/ddb-es/PageDataMigration.ts:419\n */\nconst WBY_ACO_PREFIX = \"wby-aco-\";\n/**\n * 006\n * PageDataMigration in ddb-es and ddb\n */\n\nexport const attachAcoRecordPrefix = (id: string) => {\n if (id.startsWith(WBY_ACO_PREFIX)) {\n return id;\n }\n return `${WBY_ACO_PREFIX}${id}`;\n};\n\nexport const removeAcoRecordPrefix = (id: string) => {\n if (id.startsWith(WBY_ACO_PREFIX) === false) {\n return id;\n }\n return id.substring(WBY_ACO_PREFIX.length);\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,cAAc,GAAG,UAAU;AACjC;AACA;AACA;AACA;;AAEA,OAAO,MAAMC,qBAAqB,GAAIC,EAAU,IAAK;EACjD,IAAIA,EAAE,CAACC,UAAU,CAACH,cAAc,CAAC,EAAE;IAC/B,OAAOE,EAAE;EACb;EACA,OAAO,GAAGF,cAAc,GAAGE,EAAE,EAAE;AACnC,CAAC;AAED,OAAO,MAAME,qBAAqB,GAAIF,EAAU,IAAK;EACjD,IAAIA,EAAE,CAACC,UAAU,CAACH,cAAc,CAAC,KAAK,KAAK,EAAE;IACzC,OAAOE,EAAE;EACb;EACA,OAAOA,EAAE,CAACG,SAAS,CAACL,cAAc,CAACM,MAAM,CAAC;AAC9C,CAAC","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ export declare const compress: (data: any) => Promise<{
2
+ compression: string;
3
+ value: string;
4
+ }>;
@@ -0,0 +1,12 @@
1
+ import { compress as gzip } from "@webiny/utils/compression/gzip.js";
2
+ const GZIP = "gzip";
3
+ const TO_STORAGE_ENCODING = "base64";
4
+ export const compress = async data => {
5
+ const value = await gzip(JSON.stringify(data));
6
+ return {
7
+ compression: GZIP,
8
+ value: value.toString(TO_STORAGE_ENCODING)
9
+ };
10
+ };
11
+
12
+ //# sourceMappingURL=compress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["compress","gzip","GZIP","TO_STORAGE_ENCODING","data","value","JSON","stringify","compression","toString"],"sources":["compress.ts"],"sourcesContent":["import { compress as gzip } from \"@webiny/utils/compression/gzip.js\";\n\nconst GZIP = \"gzip\";\nconst TO_STORAGE_ENCODING = \"base64\";\n\nexport const compress = async (data: any) => {\n const value = await gzip(JSON.stringify(data));\n\n return {\n compression: GZIP,\n value: value.toString(TO_STORAGE_ENCODING)\n };\n};\n"],"mappings":"AAAA,SAASA,QAAQ,IAAIC,IAAI,QAAQ,mCAAmC;AAEpE,MAAMC,IAAI,GAAG,MAAM;AACnB,MAAMC,mBAAmB,GAAG,QAAQ;AAEpC,OAAO,MAAMH,QAAQ,GAAG,MAAOI,IAAS,IAAK;EACzC,MAAMC,KAAK,GAAG,MAAMJ,IAAI,CAACK,IAAI,CAACC,SAAS,CAACH,IAAI,CAAC,CAAC;EAE9C,OAAO;IACHI,WAAW,EAAEN,IAAI;IACjBG,KAAK,EAAEA,KAAK,CAACI,QAAQ,CAACN,mBAAmB;EAC7C,CAAC;AACL,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { ListSort } from "../types.js";
2
+ import type { CmsEntryListSort } from "@webiny/api-headless-cms/types/index.js";
3
+ export declare const createListSort: (sort?: ListSort) => CmsEntryListSort | undefined;
@@ -0,0 +1,10 @@
1
+ export const createListSort = sort => {
2
+ if (!sort) {
3
+ return;
4
+ }
5
+ return Object.keys(sort).map(key => {
6
+ return `${key}_${sort[key]}`;
7
+ });
8
+ };
9
+
10
+ //# sourceMappingURL=createListSort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createListSort","sort","Object","keys","map","key"],"sources":["createListSort.ts"],"sourcesContent":["import type { ListSort } from \"~/types.js\";\nimport type {\n CmsEntryListSort,\n CmsEntryListSortAsc,\n CmsEntryListSortDesc\n} from \"@webiny/api-headless-cms/types/index.js\";\n\nexport const createListSort = (sort?: ListSort): CmsEntryListSort | undefined => {\n if (!sort) {\n return;\n }\n\n return Object.keys(sort).map(key => {\n return `${key}_${sort[key]}` as CmsEntryListSortAsc | CmsEntryListSortDesc;\n });\n};\n"],"mappings":"AAOA,OAAO,MAAMA,cAAc,GAAIC,IAAe,IAAmC;EAC7E,IAAI,CAACA,IAAI,EAAE;IACP;EACJ;EAEA,OAAOC,MAAM,CAACC,IAAI,CAACF,IAAI,CAAC,CAACG,GAAG,CAACC,GAAG,IAAI;IAChC,OAAO,GAAGA,GAAG,IAAIJ,IAAI,CAACI,GAAG,CAAC,EAAE;EAChC,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import type { CreateAcoStorageOperationsParams } from "../createAcoStorageOperations.js";
2
+ import type { CmsModel } from "@webiny/api-headless-cms/types/index.js";
3
+ interface CreateOperationsWrapperParams extends CreateAcoStorageOperationsParams {
4
+ modelName: string;
5
+ }
6
+ export declare const createOperationsWrapper: (params: CreateOperationsWrapperParams) => {
7
+ withModel: <TResult>(cb: (model: CmsModel) => Promise<TResult>) => Promise<TResult>;
8
+ };
9
+ export {};
@@ -0,0 +1,22 @@
1
+ import WebinyError from "@webiny/error";
2
+ export const createOperationsWrapper = params => {
3
+ const {
4
+ security,
5
+ cms,
6
+ modelName
7
+ } = params;
8
+ const withModel = async cb => {
9
+ const model = await security.withoutAuthorization(() => {
10
+ return cms.getModel(modelName);
11
+ });
12
+ if (!model) {
13
+ throw new WebinyError(`Could not find "${modelName}" model.`, "MODEL_NOT_FOUND_ERROR");
14
+ }
15
+ return cb(model);
16
+ };
17
+ return {
18
+ withModel
19
+ };
20
+ };
21
+
22
+ //# sourceMappingURL=createOperationsWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["WebinyError","createOperationsWrapper","params","security","cms","modelName","withModel","cb","model","withoutAuthorization","getModel"],"sources":["createOperationsWrapper.ts"],"sourcesContent":["import type { CreateAcoStorageOperationsParams } from \"~/createAcoStorageOperations.js\";\nimport type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport WebinyError from \"@webiny/error\";\n\ninterface CreateOperationsWrapperParams extends CreateAcoStorageOperationsParams {\n modelName: string;\n}\n\nexport const createOperationsWrapper = (params: CreateOperationsWrapperParams) => {\n const { security, cms, modelName } = params;\n\n const withModel = async <TResult>(\n cb: (model: CmsModel) => Promise<TResult>\n ): Promise<TResult> => {\n const model = await security.withoutAuthorization(() => {\n return cms.getModel(modelName);\n });\n\n if (!model) {\n throw new WebinyError(`Could not find \"${modelName}\" model.`, \"MODEL_NOT_FOUND_ERROR\");\n }\n\n return cb(model);\n };\n\n return { withModel };\n};\n"],"mappings":"AAEA,OAAOA,WAAW,MAAM,eAAe;AAMvC,OAAO,MAAMC,uBAAuB,GAAIC,MAAqC,IAAK;EAC9E,MAAM;IAAEC,QAAQ;IAAEC,GAAG;IAAEC;EAAU,CAAC,GAAGH,MAAM;EAE3C,MAAMI,SAAS,GAAG,MACdC,EAAyC,IACtB;IACnB,MAAMC,KAAK,GAAG,MAAML,QAAQ,CAACM,oBAAoB,CAAC,MAAM;MACpD,OAAOL,GAAG,CAACM,QAAQ,CAACL,SAAS,CAAC;IAClC,CAAC,CAAC;IAEF,IAAI,CAACG,KAAK,EAAE;MACR,MAAM,IAAIR,WAAW,CAAC,mBAAmBK,SAAS,UAAU,EAAE,uBAAuB,CAAC;IAC1F;IAEA,OAAOE,EAAE,CAACC,KAAK,CAAC;EACpB,CAAC;EAED,OAAO;IAAEF;EAAU,CAAC;AACxB,CAAC","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import type { AcoContext } from "../../types.js";
2
+ type Context = AcoContext;
3
+ interface EntryManagerCrudDecoratorsParams {
4
+ context: Context;
5
+ }
6
+ export declare class CmsEntriesCrudDecorators {
7
+ private readonly context;
8
+ constructor({ context }: EntryManagerCrudDecoratorsParams);
9
+ decorate(): void;
10
+ }
11
+ export {};
@@ -0,0 +1,206 @@
1
+ // @ts-nocheck Being removed
2
+
3
+ import { ROOT_FOLDER } from "../../constants.js";
4
+ import { ListEntriesFactory } from "./ListEntriesFactory.js";
5
+ import { FilterEntriesByFolderFactory } from "./FilterEntriesByFolderFactory.js";
6
+ import { decorateIfModelAuthorizationEnabled } from "./decorateIfModelAuthorizationEnabled.js";
7
+ import { FolderLevelPermissions } from "../../features/flp/FolderLevelPermissions/index.js";
8
+ export class CmsEntriesCrudDecorators {
9
+ constructor({
10
+ context
11
+ }) {
12
+ this.context = context;
13
+ }
14
+ decorate() {
15
+ const context = this.context;
16
+ const folderLevelPermissions = context.container.resolve(FolderLevelPermissions);
17
+ const filterEntriesByFolder = new FilterEntriesByFolderFactory(folderLevelPermissions);
18
+ const listEntriesHandler = new ListEntriesFactory(folderLevelPermissions);
19
+ decorateIfModelAuthorizationEnabled(context, "listEntries", async (...allParams) => {
20
+ const [decoratee, model, initialParams] = allParams;
21
+ return await listEntriesHandler.execute({
22
+ decoratee,
23
+ model,
24
+ initialParams
25
+ });
26
+ });
27
+ decorateIfModelAuthorizationEnabled(context, "listLatestEntries", async (...allParams) => {
28
+ const [decoratee, model, initialParams] = allParams;
29
+ return await listEntriesHandler.execute({
30
+ decoratee,
31
+ model,
32
+ initialParams
33
+ });
34
+ });
35
+ decorateIfModelAuthorizationEnabled(context, "listPublishedEntries", async (...allParams) => {
36
+ const [decoratee, model, initialParams] = allParams;
37
+ return await listEntriesHandler.execute({
38
+ decoratee,
39
+ model,
40
+ initialParams
41
+ });
42
+ });
43
+ decorateIfModelAuthorizationEnabled(context, "listDeletedEntries", async (...allParams) => {
44
+ const [decoratee, model, initialParams] = allParams;
45
+ return await listEntriesHandler.execute({
46
+ decoratee,
47
+ model,
48
+ initialParams
49
+ });
50
+ });
51
+ decorateIfModelAuthorizationEnabled(context, "getEntry", async (...allParams) => {
52
+ const [decoratee, model, params] = allParams;
53
+ const entry = await decoratee(model, params);
54
+ const folderId = entry?.location?.folderId;
55
+ if (!folderId || folderId === ROOT_FOLDER) {
56
+ return entry;
57
+ }
58
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
59
+ await folderLevelPermissions.ensureCanAccessFolderContent({
60
+ permissions,
61
+ rwd: "r"
62
+ });
63
+ return entry;
64
+ });
65
+ decorateIfModelAuthorizationEnabled(context, "getEntryById", async (...allParams) => {
66
+ const [decoratee, model, params] = allParams;
67
+ const entry = await decoratee(model, params);
68
+ const folderId = entry?.location?.folderId;
69
+ if (!folderId || folderId === ROOT_FOLDER) {
70
+ return entry;
71
+ }
72
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
73
+ await folderLevelPermissions.ensureCanAccessFolderContent({
74
+ permissions,
75
+ rwd: "r"
76
+ });
77
+ return entry;
78
+ });
79
+ decorateIfModelAuthorizationEnabled(context, "getLatestEntriesByIds", async (...allParams) => {
80
+ const [decoratee, model, ids] = allParams;
81
+ const entries = await decoratee(model, ids);
82
+ return filterEntriesByFolder.execute(entries);
83
+ });
84
+ decorateIfModelAuthorizationEnabled(context, "getPublishedEntriesByIds", async (...allParams) => {
85
+ const [decoratee, model, ids] = allParams;
86
+ const entries = await decoratee(model, ids);
87
+ return filterEntriesByFolder.execute(entries);
88
+ });
89
+ decorateIfModelAuthorizationEnabled(context, "createEntry", async (...allParams) => {
90
+ const [decoratee, model, params, options] = allParams;
91
+ const folderId = params.wbyAco_location?.folderId || params.location?.folderId;
92
+ if (!folderId || folderId === ROOT_FOLDER) {
93
+ return decoratee(model, params, options);
94
+ }
95
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
96
+ await folderLevelPermissions.ensureCanAccessFolderContent({
97
+ permissions,
98
+ rwd: "w"
99
+ });
100
+ return decoratee(model, params, options);
101
+ });
102
+ decorateIfModelAuthorizationEnabled(context, "createEntryRevisionFrom", async (...allParams) => {
103
+ const [decoratee, model, id, input, options] = allParams;
104
+ const entry = await context.cms.storageOperations.entries.getRevisionById(model, {
105
+ id
106
+ });
107
+ const folderId = entry?.location?.folderId;
108
+ if (!folderId || folderId === ROOT_FOLDER) {
109
+ return decoratee(model, id, input, options);
110
+ }
111
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
112
+ await folderLevelPermissions.ensureCanAccessFolderContent({
113
+ permissions,
114
+ rwd: "w"
115
+ });
116
+ return decoratee(model, id, input, options);
117
+ });
118
+ decorateIfModelAuthorizationEnabled(context, "updateEntry", async (...allParams) => {
119
+ const [decoratee, model, id, input, meta, options] = allParams;
120
+ const entry = await context.cms.storageOperations.entries.getRevisionById(model, {
121
+ id
122
+ });
123
+ const folderId = entry?.location?.folderId;
124
+ if (!folderId || folderId === ROOT_FOLDER) {
125
+ return decoratee(model, id, input, meta, options);
126
+ }
127
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
128
+ await folderLevelPermissions.ensureCanAccessFolderContent({
129
+ permissions,
130
+ rwd: "w"
131
+ });
132
+ return decoratee(model, id, input, meta, options);
133
+ });
134
+ decorateIfModelAuthorizationEnabled(context, "deleteEntry", async (...allParams) => {
135
+ const [decoratee, model, id, options] = allParams;
136
+ const entry = await context.cms.storageOperations.entries.getLatestRevisionByEntryId(model, {
137
+ id
138
+ });
139
+ const folderId = entry?.location?.folderId;
140
+ if (!folderId || folderId === ROOT_FOLDER) {
141
+ return decoratee(model, id, options);
142
+ }
143
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
144
+ await folderLevelPermissions.ensureCanAccessFolderContent({
145
+ permissions,
146
+ rwd: "d"
147
+ });
148
+ return decoratee(model, id, options);
149
+ });
150
+ decorateIfModelAuthorizationEnabled(context, "deleteEntryRevision", async (...allParams) => {
151
+ const [decoratee, model, id] = allParams;
152
+ const entry = await context.cms.storageOperations.entries.getRevisionById(model, {
153
+ id
154
+ });
155
+ const folderId = entry?.location?.folderId;
156
+ if (!folderId || folderId === ROOT_FOLDER) {
157
+ return decoratee(model, id);
158
+ }
159
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
160
+ await folderLevelPermissions.ensureCanAccessFolderContent({
161
+ permissions,
162
+ rwd: "d"
163
+ });
164
+ return decoratee(model, id);
165
+ });
166
+ decorateIfModelAuthorizationEnabled(context, "moveEntry", async (...allParams) => {
167
+ const [decoratee, model, id, targetFolderId] = allParams;
168
+
169
+ /**
170
+ * First we need to check if user has access to the entries existing folder.
171
+ */
172
+ const entry = await context.cms.storageOperations.entries.getRevisionById(model, {
173
+ id
174
+ });
175
+ const folderId = entry?.location?.folderId || ROOT_FOLDER;
176
+ /**
177
+ * If the entry is in the same folder we are trying to move it to, just continue.
178
+ */
179
+ if (folderId === targetFolderId) {
180
+ return decoratee(model, id, targetFolderId);
181
+ } else if (folderId !== ROOT_FOLDER) {
182
+ /**
183
+ * If entry current folder is not a root, check for access
184
+ */
185
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
186
+ await folderLevelPermissions.ensureCanAccessFolderContent({
187
+ permissions,
188
+ rwd: "w"
189
+ });
190
+ }
191
+ /**
192
+ * If target folder is not a ROOT_FOLDER, check for access.
193
+ */
194
+ if (targetFolderId !== ROOT_FOLDER) {
195
+ const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);
196
+ await folderLevelPermissions.ensureCanAccessFolderContent({
197
+ permissions,
198
+ rwd: "w"
199
+ });
200
+ }
201
+ return decoratee(model, id, targetFolderId);
202
+ });
203
+ }
204
+ }
205
+
206
+ //# sourceMappingURL=CmsEntriesCrudDecorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ROOT_FOLDER","ListEntriesFactory","FilterEntriesByFolderFactory","decorateIfModelAuthorizationEnabled","FolderLevelPermissions","CmsEntriesCrudDecorators","constructor","context","decorate","folderLevelPermissions","container","resolve","filterEntriesByFolder","listEntriesHandler","allParams","decoratee","model","initialParams","execute","params","entry","folderId","location","permissions","getFolderLevelPermissions","ensureCanAccessFolderContent","rwd","ids","entries","options","wbyAco_location","id","input","cms","storageOperations","getRevisionById","meta","getLatestRevisionByEntryId","targetFolderId"],"sources":["CmsEntriesCrudDecorators.ts"],"sourcesContent":["// @ts-nocheck Being removed\nimport type { AcoContext } from \"~/types.js\";\nimport { ROOT_FOLDER } from \"~/constants.js\";\nimport { ListEntriesFactory } from \"./ListEntriesFactory.js\";\nimport { FilterEntriesByFolderFactory } from \"./FilterEntriesByFolderFactory.js\";\nimport { decorateIfModelAuthorizationEnabled } from \"./decorateIfModelAuthorizationEnabled.js\";\nimport { FolderLevelPermissions } from \"~/features/flp/FolderLevelPermissions/index.js\";\n\ntype Context = AcoContext;\n\ninterface EntryManagerCrudDecoratorsParams {\n context: Context;\n}\n\nexport class CmsEntriesCrudDecorators {\n private readonly context: Context;\n\n public constructor({ context }: EntryManagerCrudDecoratorsParams) {\n this.context = context;\n }\n\n public decorate() {\n const context = this.context;\n const folderLevelPermissions = context.container.resolve(FolderLevelPermissions);\n\n const filterEntriesByFolder = new FilterEntriesByFolderFactory(folderLevelPermissions);\n const listEntriesHandler = new ListEntriesFactory(folderLevelPermissions);\n\n decorateIfModelAuthorizationEnabled(context, \"listEntries\", async (...allParams) => {\n const [decoratee, model, initialParams] = allParams;\n return await listEntriesHandler.execute({ decoratee, model, initialParams });\n });\n\n decorateIfModelAuthorizationEnabled(context, \"listLatestEntries\", async (...allParams) => {\n const [decoratee, model, initialParams] = allParams;\n return await listEntriesHandler.execute({ decoratee, model, initialParams });\n });\n\n decorateIfModelAuthorizationEnabled(\n context,\n \"listPublishedEntries\",\n async (...allParams) => {\n const [decoratee, model, initialParams] = allParams;\n return await listEntriesHandler.execute({ decoratee, model, initialParams });\n }\n );\n\n decorateIfModelAuthorizationEnabled(context, \"listDeletedEntries\", async (...allParams) => {\n const [decoratee, model, initialParams] = allParams;\n return await listEntriesHandler.execute({ decoratee, model, initialParams });\n });\n\n decorateIfModelAuthorizationEnabled(context, \"getEntry\", async (...allParams) => {\n const [decoratee, model, params] = allParams;\n const entry = await decoratee(model, params);\n\n const folderId = entry?.location?.folderId;\n if (!folderId || folderId === ROOT_FOLDER) {\n return entry;\n }\n\n const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"r\"\n });\n\n return entry;\n });\n\n decorateIfModelAuthorizationEnabled(context, \"getEntryById\", async (...allParams) => {\n const [decoratee, model, params] = allParams;\n const entry = await decoratee(model, params);\n\n const folderId = entry?.location?.folderId;\n if (!folderId || folderId === ROOT_FOLDER) {\n return entry;\n }\n const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"r\"\n });\n return entry;\n });\n\n decorateIfModelAuthorizationEnabled(\n context,\n \"getLatestEntriesByIds\",\n async (...allParams) => {\n const [decoratee, model, ids] = allParams;\n\n const entries = await decoratee(model, ids);\n\n return filterEntriesByFolder.execute(entries);\n }\n );\n\n decorateIfModelAuthorizationEnabled(\n context,\n \"getPublishedEntriesByIds\",\n async (...allParams) => {\n const [decoratee, model, ids] = allParams;\n\n const entries = await decoratee(model, ids);\n return filterEntriesByFolder.execute(entries);\n }\n );\n\n decorateIfModelAuthorizationEnabled(context, \"createEntry\", async (...allParams) => {\n const [decoratee, model, params, options] = allParams;\n const folderId = params.wbyAco_location?.folderId || params.location?.folderId;\n\n if (!folderId || folderId === ROOT_FOLDER) {\n return decoratee(model, params, options);\n }\n\n const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"w\"\n });\n\n return decoratee(model, params, options);\n });\n\n decorateIfModelAuthorizationEnabled(\n context,\n \"createEntryRevisionFrom\",\n async (...allParams) => {\n const [decoratee, model, id, input, options] = allParams;\n\n const entry = await context.cms.storageOperations.entries.getRevisionById(model, {\n id\n });\n\n const folderId = entry?.location?.folderId;\n if (!folderId || folderId === ROOT_FOLDER) {\n return decoratee(model, id, input, options);\n }\n\n const permissions =\n await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"w\"\n });\n\n return decoratee(model, id, input, options);\n }\n );\n\n decorateIfModelAuthorizationEnabled(context, \"updateEntry\", async (...allParams) => {\n const [decoratee, model, id, input, meta, options] = allParams;\n const entry = await context.cms.storageOperations.entries.getRevisionById(model, {\n id\n });\n\n const folderId = entry?.location?.folderId;\n if (!folderId || folderId === ROOT_FOLDER) {\n return decoratee(model, id, input, meta, options);\n }\n\n const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"w\"\n });\n\n return decoratee(model, id, input, meta, options);\n });\n\n decorateIfModelAuthorizationEnabled(context, \"deleteEntry\", async (...allParams) => {\n const [decoratee, model, id, options] = allParams;\n\n const entry = await context.cms.storageOperations.entries.getLatestRevisionByEntryId(\n model,\n {\n id\n }\n );\n\n const folderId = entry?.location?.folderId;\n if (!folderId || folderId === ROOT_FOLDER) {\n return decoratee(model, id, options);\n }\n\n const permissions = await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"d\"\n });\n\n return decoratee(model, id, options);\n });\n\n decorateIfModelAuthorizationEnabled(\n context,\n \"deleteEntryRevision\",\n async (...allParams) => {\n const [decoratee, model, id] = allParams;\n\n const entry = await context.cms.storageOperations.entries.getRevisionById(model, {\n id\n });\n\n const folderId = entry?.location?.folderId;\n if (!folderId || folderId === ROOT_FOLDER) {\n return decoratee(model, id);\n }\n\n const permissions =\n await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"d\"\n });\n\n return decoratee(model, id);\n }\n );\n\n decorateIfModelAuthorizationEnabled(context, \"moveEntry\", async (...allParams) => {\n const [decoratee, model, id, targetFolderId] = allParams;\n\n /**\n * First we need to check if user has access to the entries existing folder.\n */\n const entry = await context.cms.storageOperations.entries.getRevisionById(model, {\n id\n });\n\n const folderId = entry?.location?.folderId || ROOT_FOLDER;\n /**\n * If the entry is in the same folder we are trying to move it to, just continue.\n */\n if (folderId === targetFolderId) {\n return decoratee(model, id, targetFolderId);\n } else if (folderId !== ROOT_FOLDER) {\n /**\n * If entry current folder is not a root, check for access\n */\n const permissions =\n await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"w\"\n });\n }\n /**\n * If target folder is not a ROOT_FOLDER, check for access.\n */\n if (targetFolderId !== ROOT_FOLDER) {\n const permissions =\n await folderLevelPermissions.getFolderLevelPermissions(folderId);\n await folderLevelPermissions.ensureCanAccessFolderContent({\n permissions,\n rwd: \"w\"\n });\n }\n\n return decoratee(model, id, targetFolderId);\n });\n }\n}\n"],"mappings":"AAAA;;AAEA,SAASA,WAAW;AACpB,SAASC,kBAAkB;AAC3B,SAASC,4BAA4B;AACrC,SAASC,mCAAmC;AAC5C,SAASC,sBAAsB;AAQ/B,OAAO,MAAMC,wBAAwB,CAAC;EAG3BC,WAAWA,CAAC;IAAEC;EAA0C,CAAC,EAAE;IAC9D,IAAI,CAACA,OAAO,GAAGA,OAAO;EAC1B;EAEOC,QAAQA,CAAA,EAAG;IACd,MAAMD,OAAO,GAAG,IAAI,CAACA,OAAO;IAC5B,MAAME,sBAAsB,GAAGF,OAAO,CAACG,SAAS,CAACC,OAAO,CAACP,sBAAsB,CAAC;IAEhF,MAAMQ,qBAAqB,GAAG,IAAIV,4BAA4B,CAACO,sBAAsB,CAAC;IACtF,MAAMI,kBAAkB,GAAG,IAAIZ,kBAAkB,CAACQ,sBAAsB,CAAC;IAEzEN,mCAAmC,CAACI,OAAO,EAAE,aAAa,EAAE,OAAO,GAAGO,SAAS,KAAK;MAChF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEC,aAAa,CAAC,GAAGH,SAAS;MACnD,OAAO,MAAMD,kBAAkB,CAACK,OAAO,CAAC;QAAEH,SAAS;QAAEC,KAAK;QAAEC;MAAc,CAAC,CAAC;IAChF,CAAC,CAAC;IAEFd,mCAAmC,CAACI,OAAO,EAAE,mBAAmB,EAAE,OAAO,GAAGO,SAAS,KAAK;MACtF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEC,aAAa,CAAC,GAAGH,SAAS;MACnD,OAAO,MAAMD,kBAAkB,CAACK,OAAO,CAAC;QAAEH,SAAS;QAAEC,KAAK;QAAEC;MAAc,CAAC,CAAC;IAChF,CAAC,CAAC;IAEFd,mCAAmC,CAC/BI,OAAO,EACP,sBAAsB,EACtB,OAAO,GAAGO,SAAS,KAAK;MACpB,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEC,aAAa,CAAC,GAAGH,SAAS;MACnD,OAAO,MAAMD,kBAAkB,CAACK,OAAO,CAAC;QAAEH,SAAS;QAAEC,KAAK;QAAEC;MAAc,CAAC,CAAC;IAChF,CACJ,CAAC;IAEDd,mCAAmC,CAACI,OAAO,EAAE,oBAAoB,EAAE,OAAO,GAAGO,SAAS,KAAK;MACvF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEC,aAAa,CAAC,GAAGH,SAAS;MACnD,OAAO,MAAMD,kBAAkB,CAACK,OAAO,CAAC;QAAEH,SAAS;QAAEC,KAAK;QAAEC;MAAc,CAAC,CAAC;IAChF,CAAC,CAAC;IAEFd,mCAAmC,CAACI,OAAO,EAAE,UAAU,EAAE,OAAO,GAAGO,SAAS,KAAK;MAC7E,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEG,MAAM,CAAC,GAAGL,SAAS;MAC5C,MAAMM,KAAK,GAAG,MAAML,SAAS,CAACC,KAAK,EAAEG,MAAM,CAAC;MAE5C,MAAME,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ;MAC1C,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOoB,KAAK;MAChB;MAEA,MAAMG,WAAW,GAAG,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpF,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAON,KAAK;IAChB,CAAC,CAAC;IAEFjB,mCAAmC,CAACI,OAAO,EAAE,cAAc,EAAE,OAAO,GAAGO,SAAS,KAAK;MACjF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEG,MAAM,CAAC,GAAGL,SAAS;MAC5C,MAAMM,KAAK,GAAG,MAAML,SAAS,CAACC,KAAK,EAAEG,MAAM,CAAC;MAE5C,MAAME,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ;MAC1C,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOoB,KAAK;MAChB;MACA,MAAMG,WAAW,GAAG,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpF,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MACF,OAAON,KAAK;IAChB,CAAC,CAAC;IAEFjB,mCAAmC,CAC/BI,OAAO,EACP,uBAAuB,EACvB,OAAO,GAAGO,SAAS,KAAK;MACpB,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEW,GAAG,CAAC,GAAGb,SAAS;MAEzC,MAAMc,OAAO,GAAG,MAAMb,SAAS,CAACC,KAAK,EAAEW,GAAG,CAAC;MAE3C,OAAOf,qBAAqB,CAACM,OAAO,CAACU,OAAO,CAAC;IACjD,CACJ,CAAC;IAEDzB,mCAAmC,CAC/BI,OAAO,EACP,0BAA0B,EAC1B,OAAO,GAAGO,SAAS,KAAK;MACpB,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEW,GAAG,CAAC,GAAGb,SAAS;MAEzC,MAAMc,OAAO,GAAG,MAAMb,SAAS,CAACC,KAAK,EAAEW,GAAG,CAAC;MAC3C,OAAOf,qBAAqB,CAACM,OAAO,CAACU,OAAO,CAAC;IACjD,CACJ,CAAC;IAEDzB,mCAAmC,CAACI,OAAO,EAAE,aAAa,EAAE,OAAO,GAAGO,SAAS,KAAK;MAChF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEG,MAAM,EAAEU,OAAO,CAAC,GAAGf,SAAS;MACrD,MAAMO,QAAQ,GAAGF,MAAM,CAACW,eAAe,EAAET,QAAQ,IAAIF,MAAM,CAACG,QAAQ,EAAED,QAAQ;MAE9E,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOe,SAAS,CAACC,KAAK,EAAEG,MAAM,EAAEU,OAAO,CAAC;MAC5C;MAEA,MAAMN,WAAW,GAAG,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpF,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAOX,SAAS,CAACC,KAAK,EAAEG,MAAM,EAAEU,OAAO,CAAC;IAC5C,CAAC,CAAC;IAEF1B,mCAAmC,CAC/BI,OAAO,EACP,yBAAyB,EACzB,OAAO,GAAGO,SAAS,KAAK;MACpB,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEe,EAAE,EAAEC,KAAK,EAAEH,OAAO,CAAC,GAAGf,SAAS;MAExD,MAAMM,KAAK,GAAG,MAAMb,OAAO,CAAC0B,GAAG,CAACC,iBAAiB,CAACN,OAAO,CAACO,eAAe,CAACnB,KAAK,EAAE;QAC7Ee;MACJ,CAAC,CAAC;MAEF,MAAMV,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ;MAC1C,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOe,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEC,KAAK,EAAEH,OAAO,CAAC;MAC/C;MAEA,MAAMN,WAAW,GACb,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpE,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAOX,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEC,KAAK,EAAEH,OAAO,CAAC;IAC/C,CACJ,CAAC;IAED1B,mCAAmC,CAACI,OAAO,EAAE,aAAa,EAAE,OAAO,GAAGO,SAAS,KAAK;MAChF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEe,EAAE,EAAEC,KAAK,EAAEI,IAAI,EAAEP,OAAO,CAAC,GAAGf,SAAS;MAC9D,MAAMM,KAAK,GAAG,MAAMb,OAAO,CAAC0B,GAAG,CAACC,iBAAiB,CAACN,OAAO,CAACO,eAAe,CAACnB,KAAK,EAAE;QAC7Ee;MACJ,CAAC,CAAC;MAEF,MAAMV,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ;MAC1C,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOe,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEC,KAAK,EAAEI,IAAI,EAAEP,OAAO,CAAC;MACrD;MAEA,MAAMN,WAAW,GAAG,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpF,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAOX,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEC,KAAK,EAAEI,IAAI,EAAEP,OAAO,CAAC;IACrD,CAAC,CAAC;IAEF1B,mCAAmC,CAACI,OAAO,EAAE,aAAa,EAAE,OAAO,GAAGO,SAAS,KAAK;MAChF,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEe,EAAE,EAAEF,OAAO,CAAC,GAAGf,SAAS;MAEjD,MAAMM,KAAK,GAAG,MAAMb,OAAO,CAAC0B,GAAG,CAACC,iBAAiB,CAACN,OAAO,CAACS,0BAA0B,CAChFrB,KAAK,EACL;QACIe;MACJ,CACJ,CAAC;MAED,MAAMV,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ;MAC1C,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOe,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEF,OAAO,CAAC;MACxC;MAEA,MAAMN,WAAW,GAAG,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpF,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAOX,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEF,OAAO,CAAC;IACxC,CAAC,CAAC;IAEF1B,mCAAmC,CAC/BI,OAAO,EACP,qBAAqB,EACrB,OAAO,GAAGO,SAAS,KAAK;MACpB,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEe,EAAE,CAAC,GAAGjB,SAAS;MAExC,MAAMM,KAAK,GAAG,MAAMb,OAAO,CAAC0B,GAAG,CAACC,iBAAiB,CAACN,OAAO,CAACO,eAAe,CAACnB,KAAK,EAAE;QAC7Ee;MACJ,CAAC,CAAC;MAEF,MAAMV,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ;MAC1C,IAAI,CAACA,QAAQ,IAAIA,QAAQ,KAAKrB,WAAW,EAAE;QACvC,OAAOe,SAAS,CAACC,KAAK,EAAEe,EAAE,CAAC;MAC/B;MAEA,MAAMR,WAAW,GACb,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;MACpE,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;QACtDF,WAAW;QACXG,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAOX,SAAS,CAACC,KAAK,EAAEe,EAAE,CAAC;IAC/B,CACJ,CAAC;IAED5B,mCAAmC,CAACI,OAAO,EAAE,WAAW,EAAE,OAAO,GAAGO,SAAS,KAAK;MAC9E,MAAM,CAACC,SAAS,EAAEC,KAAK,EAAEe,EAAE,EAAEO,cAAc,CAAC,GAAGxB,SAAS;;MAExD;AACZ;AACA;MACY,MAAMM,KAAK,GAAG,MAAMb,OAAO,CAAC0B,GAAG,CAACC,iBAAiB,CAACN,OAAO,CAACO,eAAe,CAACnB,KAAK,EAAE;QAC7Ee;MACJ,CAAC,CAAC;MAEF,MAAMV,QAAQ,GAAGD,KAAK,EAAEE,QAAQ,EAAED,QAAQ,IAAIrB,WAAW;MACzD;AACZ;AACA;MACY,IAAIqB,QAAQ,KAAKiB,cAAc,EAAE;QAC7B,OAAOvB,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEO,cAAc,CAAC;MAC/C,CAAC,MAAM,IAAIjB,QAAQ,KAAKrB,WAAW,EAAE;QACjC;AAChB;AACA;QACgB,MAAMuB,WAAW,GACb,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;QACpE,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;UACtDF,WAAW;UACXG,GAAG,EAAE;QACT,CAAC,CAAC;MACN;MACA;AACZ;AACA;MACY,IAAIY,cAAc,KAAKtC,WAAW,EAAE;QAChC,MAAMuB,WAAW,GACb,MAAMd,sBAAsB,CAACe,yBAAyB,CAACH,QAAQ,CAAC;QACpE,MAAMZ,sBAAsB,CAACgB,4BAA4B,CAAC;UACtDF,WAAW;UACXG,GAAG,EAAE;QACT,CAAC,CAAC;MACN;MAEA,OAAOX,SAAS,CAACC,KAAK,EAAEe,EAAE,EAAEO,cAAc,CAAC;IAC/C,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import type { CmsEntry } from "@webiny/api-headless-cms/types/index.js";
2
+ import { FolderLevelPermissions } from "../../features/flp/FolderLevelPermissions/index.js";
3
+ export declare class FilterEntriesByFolderFactory {
4
+ private readonly folderLevelPermissions;
5
+ constructor(folderLevelPermissions: FolderLevelPermissions.Interface);
6
+ execute(entries: CmsEntry[]): Promise<CmsEntry[]>;
7
+ }
@@ -0,0 +1,23 @@
1
+ import { ROOT_FOLDER } from "../../constants.js";
2
+ export class FilterEntriesByFolderFactory {
3
+ constructor(folderLevelPermissions) {
4
+ this.folderLevelPermissions = folderLevelPermissions;
5
+ }
6
+ async execute(entries) {
7
+ const results = await Promise.all(entries.map(async entry => {
8
+ const folderId = entry.location?.folderId;
9
+ if (!folderId || folderId === ROOT_FOLDER) {
10
+ return entry;
11
+ }
12
+ const permissions = await this.folderLevelPermissions.getFolderLevelPermissions(folderId);
13
+ const canAccessFolderContent = await this.folderLevelPermissions.canAccessFolderContent({
14
+ permissions,
15
+ rwd: "r"
16
+ });
17
+ return canAccessFolderContent ? entry : null;
18
+ }));
19
+ return results.filter(entry => !!entry);
20
+ }
21
+ }
22
+
23
+ //# sourceMappingURL=FilterEntriesByFolderFactory.js.map