@webiny/api-aco 6.3.0-beta.4 → 6.4.0-beta.0

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 (344) hide show
  1. package/constants.js +2 -1
  2. package/constants.js.map +1 -1
  3. package/createAcoContext.js +69 -103
  4. package/createAcoContext.js.map +1 -1
  5. package/createAcoGraphQL.js +42 -43
  6. package/createAcoGraphQL.js.map +1 -1
  7. package/createAcoStorageOperations.js +5 -6
  8. package/createAcoStorageOperations.js.map +1 -1
  9. package/createAcoTasks.js +7 -8
  10. package/createAcoTasks.js.map +1 -1
  11. package/domain/folder/abstractions.js +2 -5
  12. package/domain/folder/abstractions.js.map +1 -1
  13. package/domain/folder/errors.js +42 -47
  14. package/domain/folder/errors.js.map +1 -1
  15. package/domain/folder/folder.model.js +52 -36
  16. package/domain/folder/folder.model.js.map +1 -1
  17. package/exports/api/aco/flp.js +0 -2
  18. package/exports/api/aco/folder.js +4 -6
  19. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js +27 -31
  20. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js.map +1 -1
  21. package/features/cms/decorators/CreateEntryWithFlpDecorator.js +22 -25
  22. package/features/cms/decorators/CreateEntryWithFlpDecorator.js.map +1 -1
  23. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js +27 -31
  24. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js.map +1 -1
  25. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js +29 -33
  26. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js.map +1 -1
  27. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js +25 -30
  28. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js.map +1 -1
  29. package/features/cms/decorators/GetEntryWithFlpDecorator.js +25 -30
  30. package/features/cms/decorators/GetEntryWithFlpDecorator.js.map +1 -1
  31. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js +31 -35
  32. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js.map +1 -1
  33. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js +31 -34
  34. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js.map +1 -1
  35. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js +27 -28
  36. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js.map +1 -1
  37. package/features/cms/decorators/ListEntriesWithFlpDecorator.js +27 -27
  38. package/features/cms/decorators/ListEntriesWithFlpDecorator.js.map +1 -1
  39. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js +27 -28
  40. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js.map +1 -1
  41. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js +27 -28
  42. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js.map +1 -1
  43. package/features/cms/decorators/MoveEntryWithFlpDecorator.js +37 -51
  44. package/features/cms/decorators/MoveEntryWithFlpDecorator.js.map +1 -1
  45. package/features/cms/decorators/UpdateEntryWithFlpDecorator.d.ts +1 -2
  46. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js +27 -31
  47. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js.map +1 -1
  48. package/features/cms/feature.js +19 -25
  49. package/features/cms/feature.js.map +1 -1
  50. package/features/cms/index.js +0 -2
  51. package/features/flp/CreateFlp/CreateFlpUseCase.js +26 -33
  52. package/features/flp/CreateFlp/CreateFlpUseCase.js.map +1 -1
  53. package/features/flp/CreateFlp/abstractions.js +2 -5
  54. package/features/flp/CreateFlp/abstractions.js.map +1 -1
  55. package/features/flp/CreateFlp/feature.js +7 -8
  56. package/features/flp/CreateFlp/feature.js.map +1 -1
  57. package/features/flp/CreateFlp/index.js +0 -2
  58. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js +27 -27
  59. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js.map +1 -1
  60. package/features/flp/CreateFlpOnFolderCreated/feature.js +6 -5
  61. package/features/flp/CreateFlpOnFolderCreated/feature.js.map +1 -1
  62. package/features/flp/CreateFlpOnFolderCreated/index.js +0 -2
  63. package/features/flp/DeleteFlp/DeleteFlpUseCase.js +17 -18
  64. package/features/flp/DeleteFlp/DeleteFlpUseCase.js.map +1 -1
  65. package/features/flp/DeleteFlp/abstractions.js +2 -5
  66. package/features/flp/DeleteFlp/abstractions.js.map +1 -1
  67. package/features/flp/DeleteFlp/feature.js +7 -8
  68. package/features/flp/DeleteFlp/feature.js.map +1 -1
  69. package/features/flp/DeleteFlp/index.js +0 -2
  70. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js +27 -27
  71. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js.map +1 -1
  72. package/features/flp/DeleteFlpOnFolderDeleted/feature.js +6 -5
  73. package/features/flp/DeleteFlpOnFolderDeleted/feature.js.map +1 -1
  74. package/features/flp/DeleteFlpOnFolderDeleted/index.js +0 -2
  75. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js +87 -108
  76. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js.map +1 -1
  77. package/features/flp/FolderLevelPermissions/abstractions.js +2 -2
  78. package/features/flp/FolderLevelPermissions/abstractions.js.map +1 -1
  79. package/features/flp/FolderLevelPermissions/feature.js +6 -5
  80. package/features/flp/FolderLevelPermissions/feature.js.map +1 -1
  81. package/features/flp/FolderLevelPermissions/index.js +0 -2
  82. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +14 -36
  83. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -1
  84. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +0 -3
  85. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +0 -2
  86. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +12 -29
  87. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -1
  88. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +0 -3
  89. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +0 -2
  90. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +5 -4
  91. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -1
  92. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +0 -3
  93. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +0 -2
  94. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +5 -4
  95. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -1
  96. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +0 -3
  97. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +0 -2
  98. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +43 -66
  99. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -1
  100. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +10 -9
  101. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -1
  102. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +22 -33
  103. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -1
  104. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +0 -3
  105. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +0 -2
  106. package/features/flp/FolderLevelPermissions/useCases/index.js +0 -2
  107. package/features/flp/GetFlp/GetFlpUseCase.js +8 -7
  108. package/features/flp/GetFlp/GetFlpUseCase.js.map +1 -1
  109. package/features/flp/GetFlp/abstractions.js +2 -2
  110. package/features/flp/GetFlp/abstractions.js.map +1 -1
  111. package/features/flp/GetFlp/feature.js +7 -8
  112. package/features/flp/GetFlp/feature.js.map +1 -1
  113. package/features/flp/GetFlp/index.js +0 -2
  114. package/features/flp/ListFlps/ListFlpsUseCase.js +8 -7
  115. package/features/flp/ListFlps/ListFlpsUseCase.js.map +1 -1
  116. package/features/flp/ListFlps/abstractions.js +2 -2
  117. package/features/flp/ListFlps/abstractions.js.map +1 -1
  118. package/features/flp/ListFlps/feature.js +7 -8
  119. package/features/flp/ListFlps/feature.js.map +1 -1
  120. package/features/flp/ListFlps/index.js +0 -2
  121. package/features/flp/UpdateFlp/UpdateFlpUseCase.js +133 -184
  122. package/features/flp/UpdateFlp/UpdateFlpUseCase.js.map +1 -1
  123. package/features/flp/UpdateFlp/abstractions.js +2 -5
  124. package/features/flp/UpdateFlp/abstractions.js.map +1 -1
  125. package/features/flp/UpdateFlp/feature.js +7 -8
  126. package/features/flp/UpdateFlp/feature.js.map +1 -1
  127. package/features/flp/UpdateFlp/index.js +0 -2
  128. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js +29 -29
  129. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js.map +1 -1
  130. package/features/flp/UpdateFlpOnFolderUpdated/feature.js +6 -5
  131. package/features/flp/UpdateFlpOnFolderUpdated/feature.js.map +1 -1
  132. package/features/flp/UpdateFlpOnFolderUpdated/index.js +0 -2
  133. package/features/folder/CreateFolder/CreateFolderRepository.js +67 -90
  134. package/features/folder/CreateFolder/CreateFolderRepository.js.map +1 -1
  135. package/features/folder/CreateFolder/CreateFolderUseCase.js +27 -30
  136. package/features/folder/CreateFolder/CreateFolderUseCase.js.map +1 -1
  137. package/features/folder/CreateFolder/abstractions.js +5 -22
  138. package/features/folder/CreateFolder/abstractions.js.map +1 -1
  139. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js +29 -34
  140. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js.map +1 -1
  141. package/features/folder/CreateFolder/events.js +16 -14
  142. package/features/folder/CreateFolder/events.js.map +1 -1
  143. package/features/folder/CreateFolder/feature.js +8 -7
  144. package/features/folder/CreateFolder/feature.js.map +1 -1
  145. package/features/folder/CreateFolder/index.js +1 -3
  146. package/features/folder/DeleteFolder/DeleteFolderRepository.js +22 -20
  147. package/features/folder/DeleteFolder/DeleteFolderRepository.js.map +1 -1
  148. package/features/folder/DeleteFolder/DeleteFolderUseCase.js +35 -43
  149. package/features/folder/DeleteFolder/DeleteFolderUseCase.js.map +1 -1
  150. package/features/folder/DeleteFolder/abstractions.js +5 -22
  151. package/features/folder/DeleteFolder/abstractions.js.map +1 -1
  152. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js +21 -20
  153. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js.map +1 -1
  154. package/features/folder/DeleteFolder/events.js +16 -14
  155. package/features/folder/DeleteFolder/events.js.map +1 -1
  156. package/features/folder/DeleteFolder/feature.js +8 -7
  157. package/features/folder/DeleteFolder/feature.js.map +1 -1
  158. package/features/folder/DeleteFolder/index.js +1 -3
  159. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js +43 -44
  160. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js.map +1 -1
  161. package/features/folder/EnsureFolderIsEmpty/abstractions.js +2 -2
  162. package/features/folder/EnsureFolderIsEmpty/abstractions.js.map +1 -1
  163. package/features/folder/EnsureFolderIsEmpty/feature.js +6 -5
  164. package/features/folder/EnsureFolderIsEmpty/feature.js.map +1 -1
  165. package/features/folder/EnsureFolderIsEmpty/index.js +0 -2
  166. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js +16 -20
  167. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js.map +1 -1
  168. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js +6 -12
  169. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js.map +1 -1
  170. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js +0 -2
  171. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js +36 -44
  172. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js.map +1 -1
  173. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js +6 -5
  174. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js.map +1 -1
  175. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js +0 -2
  176. package/features/folder/GetAncestors/GetAncestorsRepository.js +45 -75
  177. package/features/folder/GetAncestors/GetAncestorsRepository.js.map +1 -1
  178. package/features/folder/GetAncestors/GetAncestorsUseCase.js +14 -11
  179. package/features/folder/GetAncestors/GetAncestorsUseCase.js.map +1 -1
  180. package/features/folder/GetAncestors/abstractions.js +3 -14
  181. package/features/folder/GetAncestors/abstractions.js.map +1 -1
  182. package/features/folder/GetAncestors/feature.js +7 -6
  183. package/features/folder/GetAncestors/feature.js.map +1 -1
  184. package/features/folder/GetAncestors/index.js +0 -2
  185. package/features/folder/GetFolder/GetFolderRepository.js +21 -19
  186. package/features/folder/GetFolder/GetFolderRepository.js.map +1 -1
  187. package/features/folder/GetFolder/GetFolderUseCase.js +14 -11
  188. package/features/folder/GetFolder/GetFolderUseCase.js.map +1 -1
  189. package/features/folder/GetFolder/abstractions.js +5 -21
  190. package/features/folder/GetFolder/abstractions.js.map +1 -1
  191. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js +23 -26
  192. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js.map +1 -1
  193. package/features/folder/GetFolder/feature.js +8 -7
  194. package/features/folder/GetFolder/feature.js.map +1 -1
  195. package/features/folder/GetFolder/index.js +0 -2
  196. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js +67 -86
  197. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -1
  198. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js +14 -11
  199. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -1
  200. package/features/folder/GetFolderHierarchy/abstractions.js +3 -14
  201. package/features/folder/GetFolderHierarchy/abstractions.js.map +1 -1
  202. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js +55 -56
  203. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -1
  204. package/features/folder/GetFolderHierarchy/feature.js +8 -7
  205. package/features/folder/GetFolderHierarchy/feature.js.map +1 -1
  206. package/features/folder/GetFolderHierarchy/index.js +0 -2
  207. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js +65 -58
  208. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js.map +1 -1
  209. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js +2 -5
  210. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js.map +1 -1
  211. package/features/folder/ListFolderLevelPermissionsTargets/feature.js +6 -5
  212. package/features/folder/ListFolderLevelPermissionsTargets/feature.js.map +1 -1
  213. package/features/folder/ListFolderLevelPermissionsTargets/index.js +0 -2
  214. package/features/folder/ListFolders/ListFoldersRepository.js +39 -41
  215. package/features/folder/ListFolders/ListFoldersRepository.js.map +1 -1
  216. package/features/folder/ListFolders/ListFoldersUseCase.js +14 -11
  217. package/features/folder/ListFolders/ListFoldersUseCase.js.map +1 -1
  218. package/features/folder/ListFolders/abstractions.js +3 -14
  219. package/features/folder/ListFolders/abstractions.js.map +1 -1
  220. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js +55 -67
  221. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js.map +1 -1
  222. package/features/folder/ListFolders/feature.js +8 -7
  223. package/features/folder/ListFolders/feature.js.map +1 -1
  224. package/features/folder/ListFolders/index.js +0 -2
  225. package/features/folder/UpdateFolder/UpdateFolderRepository.js +66 -92
  226. package/features/folder/UpdateFolder/UpdateFolderRepository.js.map +1 -1
  227. package/features/folder/UpdateFolder/UpdateFolderUseCase.js +38 -45
  228. package/features/folder/UpdateFolder/UpdateFolderUseCase.js.map +1 -1
  229. package/features/folder/UpdateFolder/abstractions.js +5 -22
  230. package/features/folder/UpdateFolder/abstractions.js.map +1 -1
  231. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js +45 -64
  232. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js.map +1 -1
  233. package/features/folder/UpdateFolder/events.js +16 -14
  234. package/features/folder/UpdateFolder/events.js.map +1 -1
  235. package/features/folder/UpdateFolder/feature.js +8 -7
  236. package/features/folder/UpdateFolder/feature.js.map +1 -1
  237. package/features/folder/UpdateFolder/index.js +0 -2
  238. package/features/folder/shared/EntryToFolderMapper.js +20 -19
  239. package/features/folder/shared/EntryToFolderMapper.js.map +1 -1
  240. package/features/folder/shared/abstractions.js +2 -2
  241. package/features/folder/shared/abstractions.js.map +1 -1
  242. package/filter/filter.crud.js +28 -31
  243. package/filter/filter.crud.js.map +1 -1
  244. package/filter/filter.gql.js +32 -48
  245. package/filter/filter.gql.js.map +1 -1
  246. package/filter/filter.model.js +44 -35
  247. package/filter/filter.model.js.map +1 -1
  248. package/filter/filter.so.js +73 -93
  249. package/filter/filter.so.js.map +1 -1
  250. package/filter/filter.types.js +5 -4
  251. package/filter/filter.types.js.map +1 -1
  252. package/flp/flp.crud.js +69 -86
  253. package/flp/flp.crud.js.map +1 -1
  254. package/flp/flp.so.js +162 -199
  255. package/flp/flp.so.js.map +1 -1
  256. package/flp/flp.types.js +0 -3
  257. package/flp/index.js +0 -2
  258. package/flp/tasks/createFlp.task.js +26 -27
  259. package/flp/tasks/createFlp.task.js.map +1 -1
  260. package/flp/tasks/deleteFlp.task.js +26 -27
  261. package/flp/tasks/deleteFlp.task.js.map +1 -1
  262. package/flp/tasks/index.js +13 -12
  263. package/flp/tasks/index.js.map +1 -1
  264. package/flp/tasks/syncFlp.task.js +83 -112
  265. package/flp/tasks/syncFlp.task.js.map +1 -1
  266. package/flp/tasks/updateFlp.task.js +33 -32
  267. package/flp/tasks/updateFlp.task.js.map +1 -1
  268. package/folder/createFolderModelModifier.js +50 -50
  269. package/folder/createFolderModelModifier.js.map +1 -1
  270. package/folder/createFolderTypeDefs.js +39 -50
  271. package/folder/createFolderTypeDefs.js.map +1 -1
  272. package/folder/folder.gql.js +100 -133
  273. package/folder/folder.gql.js.map +1 -1
  274. package/folder/folder.types.js +0 -3
  275. package/index.js +7 -4
  276. package/index.js.map +1 -1
  277. package/package.json +24 -24
  278. package/types.js +5 -4
  279. package/types.js.map +1 -1
  280. package/utils/FoldersCacheFactory.js +20 -19
  281. package/utils/FoldersCacheFactory.js.map +1 -1
  282. package/utils/ListCache.js +20 -19
  283. package/utils/ListCache.js.map +1 -1
  284. package/utils/Path.js +5 -6
  285. package/utils/Path.js.map +1 -1
  286. package/utils/compress.js +8 -7
  287. package/utils/compress.js.map +1 -1
  288. package/utils/createListSort.js +4 -7
  289. package/utils/createListSort.js.map +1 -1
  290. package/utils/createOperationsWrapper.js +12 -19
  291. package/utils/createOperationsWrapper.js.map +1 -1
  292. package/utils/decorators/CmsEntriesCrudDecorators.js +165 -196
  293. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -1
  294. package/utils/decorators/FilterEntriesByFolderFactory.js +18 -19
  295. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -1
  296. package/utils/decorators/ListEntriesFactory.js +65 -98
  297. package/utils/decorators/ListEntriesFactory.js.map +1 -1
  298. package/utils/decorators/hasRootFolderId.js +6 -12
  299. package/utils/decorators/hasRootFolderId.js.map +1 -1
  300. package/utils/decorators/isPageModel.js +5 -10
  301. package/utils/decorators/isPageModel.js.map +1 -1
  302. package/utils/ensureAuthentication.js +6 -7
  303. package/utils/ensureAuthentication.js.map +1 -1
  304. package/utils/pickEntryFieldValues.js +24 -18
  305. package/utils/pickEntryFieldValues.js.map +1 -1
  306. package/utils/resolve.js +7 -6
  307. package/utils/resolve.js.map +1 -1
  308. package/exports/api/aco/flp.js.map +0 -1
  309. package/exports/api/aco/folder.js.map +0 -1
  310. package/features/cms/index.js.map +0 -1
  311. package/features/flp/CreateFlp/index.js.map +0 -1
  312. package/features/flp/CreateFlpOnFolderCreated/index.js.map +0 -1
  313. package/features/flp/DeleteFlp/index.js.map +0 -1
  314. package/features/flp/DeleteFlpOnFolderDeleted/index.js.map +0 -1
  315. package/features/flp/FolderLevelPermissions/index.js.map +0 -1
  316. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +0 -1
  317. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +0 -1
  318. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +0 -1
  319. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +0 -1
  320. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +0 -1
  321. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +0 -1
  322. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +0 -1
  323. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +0 -1
  324. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +0 -1
  325. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +0 -1
  326. package/features/flp/FolderLevelPermissions/useCases/index.js.map +0 -1
  327. package/features/flp/GetFlp/index.js.map +0 -1
  328. package/features/flp/ListFlps/index.js.map +0 -1
  329. package/features/flp/UpdateFlp/index.js.map +0 -1
  330. package/features/flp/UpdateFlpOnFolderUpdated/index.js.map +0 -1
  331. package/features/folder/CreateFolder/index.js.map +0 -1
  332. package/features/folder/DeleteFolder/index.js.map +0 -1
  333. package/features/folder/EnsureFolderIsEmpty/index.js.map +0 -1
  334. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js.map +0 -1
  335. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js.map +0 -1
  336. package/features/folder/GetAncestors/index.js.map +0 -1
  337. package/features/folder/GetFolder/index.js.map +0 -1
  338. package/features/folder/GetFolderHierarchy/index.js.map +0 -1
  339. package/features/folder/ListFolderLevelPermissionsTargets/index.js.map +0 -1
  340. package/features/folder/ListFolders/index.js.map +0 -1
  341. package/features/folder/UpdateFolder/index.js.map +0 -1
  342. package/flp/flp.types.js.map +0 -1
  343. package/flp/index.js.map +0 -1
  344. package/folder/folder.types.js.map +0 -1
@@ -1,61 +1,61 @@
1
1
  import { Plugin } from "@webiny/plugins";
2
2
  import { createModelField } from "@webiny/api-headless-cms";
3
3
  import { FOLDER_MODEL_ID } from "../domain/folder/folder.model.js";
4
- export class FolderModelFieldsModifier {
5
- fields = [];
6
- constructor(namespace) {
7
- this.namespace = namespace;
8
- }
9
- setFields(fields) {
10
- this.fields = fields;
11
- }
12
- addField(field) {
13
- const {
14
- tags,
15
- ...rest
16
- } = field;
17
- this.fields.push({
18
- ...rest,
19
- storageId: `${field.type}@${this.namespace}_${field.id}`,
20
- tags: (tags ?? []).concat([`$namespace:${this.namespace}`])
21
- });
22
- }
4
+ class FolderModelFieldsModifier {
5
+ constructor(namespace){
6
+ this.fields = [];
7
+ this.namespace = namespace;
8
+ }
9
+ setFields(fields) {
10
+ this.fields = fields;
11
+ }
12
+ addField(field) {
13
+ const { tags, ...rest } = field;
14
+ this.fields.push({
15
+ ...rest,
16
+ storageId: `${field.type}@${this.namespace}_${field.id}`,
17
+ tags: (tags ?? []).concat([
18
+ `$namespace:${this.namespace}`
19
+ ])
20
+ });
21
+ }
23
22
  }
24
- export class FolderCmsModelModifierPlugin extends Plugin {
25
- static type = "aco.folder.cms-model-modifier";
26
- constructor(params) {
27
- super();
28
- this.modifier = params.modifier;
29
- this.callback = params.callback;
30
- }
31
- async modifyModel(model) {
32
- if (model.modelId !== FOLDER_MODEL_ID) {
33
- return;
23
+ class FolderCmsModelModifierPlugin extends Plugin {
24
+ static{
25
+ this.type = "aco.folder.cms-model-modifier";
34
26
  }
35
- let extensionsField = model.fields.find(field => field.fieldId === "extensions");
36
- if (!extensionsField) {
37
- extensionsField = createModelField({
38
- label: "Extensions",
39
- type: "object",
40
- settings: {
41
- layout: [],
42
- fields: []
27
+ constructor(params){
28
+ super();
29
+ this.modifier = params.modifier;
30
+ this.callback = params.callback;
31
+ }
32
+ async modifyModel(model) {
33
+ if (model.modelId !== FOLDER_MODEL_ID) return;
34
+ let extensionsField = model.fields.find((field)=>"extensions" === field.fieldId);
35
+ if (!extensionsField) {
36
+ extensionsField = createModelField({
37
+ label: "Extensions",
38
+ type: "object",
39
+ settings: {
40
+ layout: [],
41
+ fields: []
42
+ }
43
+ });
44
+ model.fields.push(extensionsField);
43
45
  }
44
- });
45
- model.fields.push(extensionsField);
46
+ this.modifier.setFields(extensionsField.settings.fields);
47
+ await this.callback({
48
+ modifier: this.modifier
49
+ });
46
50
  }
47
- this.modifier.setFields(extensionsField.settings.fields);
48
- await this.callback({
49
- modifier: this.modifier
50
- });
51
- }
52
51
  }
53
- export const createFolderModelModifier = callback => {
54
- const modifier = new FolderModelFieldsModifier("global");
55
- return new FolderCmsModelModifierPlugin({
56
- callback,
57
- modifier
58
- });
52
+ const createFolderModelModifier = (callback)=>{
53
+ const modifier = new FolderModelFieldsModifier("global");
54
+ return new FolderCmsModelModifierPlugin({
55
+ callback,
56
+ modifier
57
+ });
59
58
  };
59
+ export { FolderCmsModelModifierPlugin, FolderModelFieldsModifier, createFolderModelModifier };
60
60
 
61
61
  //# sourceMappingURL=createFolderModelModifier.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Plugin","createModelField","FOLDER_MODEL_ID","FolderModelFieldsModifier","fields","constructor","namespace","setFields","addField","field","tags","rest","push","storageId","type","id","concat","FolderCmsModelModifierPlugin","params","modifier","callback","modifyModel","model","modelId","extensionsField","find","fieldId","label","settings","layout","createFolderModelModifier"],"sources":["createFolderModelModifier.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { CmsPrivateModelFull } from \"@webiny/api-headless-cms\";\nimport { createModelField } from \"@webiny/api-headless-cms\";\nimport type { CmsModelField as BaseModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { FOLDER_MODEL_ID } from \"~/domain/folder/folder.model.js\";\n\nexport type CmsModelField = Omit<BaseModelField, \"storageId\"> & { modelIds?: string[] };\n\nexport interface IFolderModelFieldsModifier {\n setFields: (fields: BaseModelField[]) => void;\n addField: (field: CmsModelField) => void;\n}\n\nexport class FolderModelFieldsModifier implements IFolderModelFieldsModifier {\n private fields: BaseModelField[] = [];\n private readonly namespace: string;\n\n constructor(namespace: string) {\n this.namespace = namespace;\n }\n\n setFields(fields: BaseModelField[]) {\n this.fields = fields;\n }\n\n addField(field: CmsModelField) {\n const { tags, ...rest } = field;\n\n this.fields.push({\n ...rest,\n storageId: `${field.type}@${this.namespace}_${field.id}`,\n tags: (tags ?? []).concat([`$namespace:${this.namespace}`])\n });\n }\n}\n\ninterface CmsModelModifierCallableParams {\n modifier: IFolderModelFieldsModifier;\n}\n\nexport interface CmsModelModifierCallable {\n (params: CmsModelModifierCallableParams): Promise<void> | void;\n}\n\ninterface FolderCmsModelModifierPluginParams {\n modifier: IFolderModelFieldsModifier;\n callback: CmsModelModifierCallable;\n}\n\nexport class FolderCmsModelModifierPlugin extends Plugin {\n public static override type = \"aco.folder.cms-model-modifier\";\n private readonly modifier: IFolderModelFieldsModifier;\n private readonly callback: CmsModelModifierCallable;\n\n constructor(params: FolderCmsModelModifierPluginParams) {\n super();\n this.modifier = params.modifier;\n this.callback = params.callback;\n }\n\n async modifyModel(model: CmsPrivateModelFull): Promise<void> {\n if (model.modelId !== FOLDER_MODEL_ID) {\n return;\n }\n\n let extensionsField = model.fields.find(field => field.fieldId === \"extensions\");\n if (!extensionsField) {\n extensionsField = createModelField({\n label: \"Extensions\",\n type: \"object\",\n settings: {\n layout: [],\n fields: []\n }\n });\n model.fields.push(extensionsField);\n }\n\n this.modifier.setFields(extensionsField.settings!.fields!);\n\n await this.callback({ modifier: this.modifier });\n }\n}\n\nexport const createFolderModelModifier = (callback: CmsModelModifierCallable) => {\n const modifier = new FolderModelFieldsModifier(\"global\");\n\n return new FolderCmsModelModifierPlugin({\n callback,\n modifier\n });\n};\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,iBAAiB;AAExC,SAASC,gBAAgB,QAAQ,0BAA0B;AAE3D,SAASC,eAAe;AASxB,OAAO,MAAMC,yBAAyB,CAAuC;EACjEC,MAAM,GAAqB,EAAE;EAGrCC,WAAWA,CAACC,SAAiB,EAAE;IAC3B,IAAI,CAACA,SAAS,GAAGA,SAAS;EAC9B;EAEAC,SAASA,CAACH,MAAwB,EAAE;IAChC,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEAI,QAAQA,CAACC,KAAoB,EAAE;IAC3B,MAAM;MAAEC,IAAI;MAAE,GAAGC;IAAK,CAAC,GAAGF,KAAK;IAE/B,IAAI,CAACL,MAAM,CAACQ,IAAI,CAAC;MACb,GAAGD,IAAI;MACPE,SAAS,EAAE,GAAGJ,KAAK,CAACK,IAAI,IAAI,IAAI,CAACR,SAAS,IAAIG,KAAK,CAACM,EAAE,EAAE;MACxDL,IAAI,EAAE,CAACA,IAAI,IAAI,EAAE,EAAEM,MAAM,CAAC,CAAC,cAAc,IAAI,CAACV,SAAS,EAAE,CAAC;IAC9D,CAAC,CAAC;EACN;AACJ;AAeA,OAAO,MAAMW,4BAA4B,SAASjB,MAAM,CAAC;EACrD,OAAuBc,IAAI,GAAG,+BAA+B;EAI7DT,WAAWA,CAACa,MAA0C,EAAE;IACpD,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,QAAQ,GAAGD,MAAM,CAACC,QAAQ;IAC/B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;EACnC;EAEA,MAAMC,WAAWA,CAACC,KAA0B,EAAiB;IACzD,IAAIA,KAAK,CAACC,OAAO,KAAKrB,eAAe,EAAE;MACnC;IACJ;IAEA,IAAIsB,eAAe,GAAGF,KAAK,CAAClB,MAAM,CAACqB,IAAI,CAAChB,KAAK,IAAIA,KAAK,CAACiB,OAAO,KAAK,YAAY,CAAC;IAChF,IAAI,CAACF,eAAe,EAAE;MAClBA,eAAe,GAAGvB,gBAAgB,CAAC;QAC/B0B,KAAK,EAAE,YAAY;QACnBb,IAAI,EAAE,QAAQ;QACdc,QAAQ,EAAE;UACNC,MAAM,EAAE,EAAE;UACVzB,MAAM,EAAE;QACZ;MACJ,CAAC,CAAC;MACFkB,KAAK,CAAClB,MAAM,CAACQ,IAAI,CAACY,eAAe,CAAC;IACtC;IAEA,IAAI,CAACL,QAAQ,CAACZ,SAAS,CAACiB,eAAe,CAACI,QAAQ,CAAExB,MAAO,CAAC;IAE1D,MAAM,IAAI,CAACgB,QAAQ,CAAC;MAAED,QAAQ,EAAE,IAAI,CAACA;IAAS,CAAC,CAAC;EACpD;AACJ;AAEA,OAAO,MAAMW,yBAAyB,GAAIV,QAAkC,IAAK;EAC7E,MAAMD,QAAQ,GAAG,IAAIhB,yBAAyB,CAAC,QAAQ,CAAC;EAExD,OAAO,IAAIc,4BAA4B,CAAC;IACpCG,QAAQ;IACRD;EACJ,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"folder/createFolderModelModifier.js","sources":["../../src/folder/createFolderModelModifier.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { CmsPrivateModelFull } from \"@webiny/api-headless-cms\";\nimport { createModelField } from \"@webiny/api-headless-cms\";\nimport type { CmsModelField as BaseModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { FOLDER_MODEL_ID } from \"~/domain/folder/folder.model.js\";\n\nexport type CmsModelField = Omit<BaseModelField, \"storageId\"> & { modelIds?: string[] };\n\nexport interface IFolderModelFieldsModifier {\n setFields: (fields: BaseModelField[]) => void;\n addField: (field: CmsModelField) => void;\n}\n\nexport class FolderModelFieldsModifier implements IFolderModelFieldsModifier {\n private fields: BaseModelField[] = [];\n private readonly namespace: string;\n\n constructor(namespace: string) {\n this.namespace = namespace;\n }\n\n setFields(fields: BaseModelField[]) {\n this.fields = fields;\n }\n\n addField(field: CmsModelField) {\n const { tags, ...rest } = field;\n\n this.fields.push({\n ...rest,\n storageId: `${field.type}@${this.namespace}_${field.id}`,\n tags: (tags ?? []).concat([`$namespace:${this.namespace}`])\n });\n }\n}\n\ninterface CmsModelModifierCallableParams {\n modifier: IFolderModelFieldsModifier;\n}\n\nexport interface CmsModelModifierCallable {\n (params: CmsModelModifierCallableParams): Promise<void> | void;\n}\n\ninterface FolderCmsModelModifierPluginParams {\n modifier: IFolderModelFieldsModifier;\n callback: CmsModelModifierCallable;\n}\n\nexport class FolderCmsModelModifierPlugin extends Plugin {\n public static override type = \"aco.folder.cms-model-modifier\";\n private readonly modifier: IFolderModelFieldsModifier;\n private readonly callback: CmsModelModifierCallable;\n\n constructor(params: FolderCmsModelModifierPluginParams) {\n super();\n this.modifier = params.modifier;\n this.callback = params.callback;\n }\n\n async modifyModel(model: CmsPrivateModelFull): Promise<void> {\n if (model.modelId !== FOLDER_MODEL_ID) {\n return;\n }\n\n let extensionsField = model.fields.find(field => field.fieldId === \"extensions\");\n if (!extensionsField) {\n extensionsField = createModelField({\n label: \"Extensions\",\n type: \"object\",\n settings: {\n layout: [],\n fields: []\n }\n });\n model.fields.push(extensionsField);\n }\n\n this.modifier.setFields(extensionsField.settings!.fields!);\n\n await this.callback({ modifier: this.modifier });\n }\n}\n\nexport const createFolderModelModifier = (callback: CmsModelModifierCallable) => {\n const modifier = new FolderModelFieldsModifier(\"global\");\n\n return new FolderCmsModelModifierPlugin({\n callback,\n modifier\n });\n};\n"],"names":["FolderModelFieldsModifier","namespace","fields","field","tags","rest","FolderCmsModelModifierPlugin","Plugin","params","model","FOLDER_MODEL_ID","extensionsField","createModelField","createFolderModelModifier","callback","modifier"],"mappings":";;;AAaO,MAAMA;IAIT,YAAYC,SAAiB,CAAE;aAHvB,MAAM,GAAqB,EAAE;QAIjC,IAAI,CAAC,SAAS,GAAGA;IACrB;IAEA,UAAUC,MAAwB,EAAE;QAChC,IAAI,CAAC,MAAM,GAAGA;IAClB;IAEA,SAASC,KAAoB,EAAE;QAC3B,MAAM,EAAEC,IAAI,EAAE,GAAGC,MAAM,GAAGF;QAE1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACb,GAAGE,IAAI;YACP,WAAW,GAAGF,MAAM,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAEA,MAAM,EAAE,EAAE;YACxD,MAAOC,AAAAA,CAAAA,QAAQ,EAAC,EAAG,MAAM,CAAC;gBAAC,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE;aAAC;QAC9D;IACJ;AACJ;AAeO,MAAME,qCAAqCC;;aACvB,IAAI,GAAG;;IAI9B,YAAYC,MAA0C,CAAE;QACpD,KAAK;QACL,IAAI,CAAC,QAAQ,GAAGA,OAAO,QAAQ;QAC/B,IAAI,CAAC,QAAQ,GAAGA,OAAO,QAAQ;IACnC;IAEA,MAAM,YAAYC,KAA0B,EAAiB;QACzD,IAAIA,MAAM,OAAO,KAAKC,iBAClB;QAGJ,IAAIC,kBAAkBF,MAAM,MAAM,CAAC,IAAI,CAACN,CAAAA,QAASA,AAAkB,iBAAlBA,MAAM,OAAO;QAC9D,IAAI,CAACQ,iBAAiB;YAClBA,kBAAkBC,iBAAiB;gBAC/B,OAAO;gBACP,MAAM;gBACN,UAAU;oBACN,QAAQ,EAAE;oBACV,QAAQ,EAAE;gBACd;YACJ;YACAH,MAAM,MAAM,CAAC,IAAI,CAACE;QACtB;QAEA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAACA,gBAAgB,QAAQ,CAAE,MAAM;QAExD,MAAM,IAAI,CAAC,QAAQ,CAAC;YAAE,UAAU,IAAI,CAAC,QAAQ;QAAC;IAClD;AACJ;AAEO,MAAME,4BAA4B,CAACC;IACtC,MAAMC,WAAW,IAAIf,0BAA0B;IAE/C,OAAO,IAAIM,6BAA6B;QACpCQ;QACAC;IACJ;AACJ"}
@@ -1,52 +1,40 @@
1
1
  import { renderFields } from "@webiny/api-headless-cms/utils/renderFields.js";
2
2
  import { renderInputFields } from "@webiny/api-headless-cms/utils/renderInputFields.js";
3
- const removeFieldRequiredValidation = field => {
4
- if (field.validation) {
5
- field.validation = field.validation.filter(validation => validation.name !== "required");
6
- }
7
- if (field.listValidation) {
8
- field.listValidation = field.listValidation.filter(v => v.name !== "required");
9
- }
10
- return field;
3
+ const removeFieldRequiredValidation = (field)=>{
4
+ if (field.validation) field.validation = field.validation.filter((validation)=>"required" !== validation.name);
5
+ if (field.listValidation) field.listValidation = field.listValidation.filter((v)=>"required" !== v.name);
6
+ return field;
11
7
  };
12
- const createUpdateFields = fields => {
13
- return fields.reduce((collection, field) => {
14
- collection.push(removeFieldRequiredValidation({
15
- ...field
16
- }));
17
- return collection;
18
- }, []);
19
- };
20
- export const createFolderTypeDefs = params => {
21
- const {
22
- model,
23
- models,
24
- fieldRegistry
25
- } = params;
26
- const {
27
- fields
28
- } = model;
29
- const fieldTypes = renderFields({
30
- models,
31
- model,
32
- fields,
33
- type: "manage",
34
- fieldRegistry
35
- });
36
- const inputCreateFields = renderInputFields({
37
- models,
38
- model,
39
- fields,
40
- fieldRegistry
41
- });
42
- const inputUpdateFields = renderInputFields({
43
- models,
44
- model,
45
- fields: createUpdateFields(fields),
46
- fieldRegistry
47
- });
48
- return /* GraphQL */`
49
- ${fieldTypes.map(f => f.typeDefs).join("\n")}
8
+ const createUpdateFields = (fields)=>fields.reduce((collection, field)=>{
9
+ collection.push(removeFieldRequiredValidation({
10
+ ...field
11
+ }));
12
+ return collection;
13
+ }, []);
14
+ const createFolderTypeDefs = (params)=>{
15
+ const { model, models, fieldRegistry } = params;
16
+ const { fields } = model;
17
+ const fieldTypes = renderFields({
18
+ models,
19
+ model,
20
+ fields,
21
+ type: "manage",
22
+ fieldRegistry
23
+ });
24
+ const inputCreateFields = renderInputFields({
25
+ models,
26
+ model,
27
+ fields,
28
+ fieldRegistry
29
+ });
30
+ const inputUpdateFields = renderInputFields({
31
+ models,
32
+ model,
33
+ fields: createUpdateFields(fields),
34
+ fieldRegistry
35
+ });
36
+ return `
37
+ ${fieldTypes.map((f)=>f.typeDefs).join("\n")}
50
38
 
51
39
  type Folder {
52
40
  id: ID!
@@ -69,20 +57,20 @@ export const createFolderTypeDefs = params => {
69
57
  modifiedBy: AcoUser
70
58
  savedBy: AcoUser
71
59
 
72
- ${fieldTypes.map(f => f.fields).join("\n")}
60
+ ${fieldTypes.map((f)=>f.fields).join("\n")}
73
61
  }
74
62
 
75
- ${inputCreateFields.map(f => f.typeDefs).join("\n")}
63
+ ${inputCreateFields.map((f)=>f.typeDefs).join("\n")}
76
64
 
77
65
  input FolderCreateInput {
78
66
  # Pass an ID if you want to create a folder with a specific ID.
79
67
  id: ID
80
68
 
81
- ${inputCreateFields.map(f => f.fields).join("\n")}
69
+ ${inputCreateFields.map((f)=>f.fields).join("\n")}
82
70
  }
83
71
 
84
72
  input FolderUpdateInput {
85
- ${inputUpdateFields.map(f => f.fields).join("\n")}
73
+ ${inputUpdateFields.map((f)=>f.fields).join("\n")}
86
74
  }
87
75
 
88
76
  input FoldersListWhereInput {
@@ -182,5 +170,6 @@ export const createFolderTypeDefs = params => {
182
170
  }
183
171
  `;
184
172
  };
173
+ export { createFolderTypeDefs };
185
174
 
186
175
  //# sourceMappingURL=createFolderTypeDefs.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["renderFields","renderInputFields","removeFieldRequiredValidation","field","validation","filter","name","listValidation","v","createUpdateFields","fields","reduce","collection","push","createFolderTypeDefs","params","model","models","fieldRegistry","fieldTypes","type","inputCreateFields","inputUpdateFields","map","f","typeDefs","join"],"sources":["createFolderTypeDefs.ts"],"sourcesContent":["import type { CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { renderFields } from \"@webiny/api-headless-cms/utils/renderFields.js\";\nimport { renderInputFields } from \"@webiny/api-headless-cms/utils/renderInputFields.js\";\nimport type { CmsModelFieldToGraphQLRegistry } from \"@webiny/api-headless-cms/exports/api/cms/graphql.js\";\n\nexport interface CreateFolderTypeDefsParams {\n model: CmsModel;\n models: CmsModel[];\n fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface;\n}\n\nconst removeFieldRequiredValidation = (field: CmsModelField) => {\n if (field.validation) {\n field.validation = field.validation.filter(validation => validation.name !== \"required\");\n }\n if (field.listValidation) {\n field.listValidation = field.listValidation.filter(v => v.name !== \"required\");\n }\n return field;\n};\n\nconst createUpdateFields = (fields: CmsModelField[]): CmsModelField[] => {\n return fields.reduce<CmsModelField[]>((collection, field) => {\n collection.push(removeFieldRequiredValidation({ ...field }));\n return collection;\n }, []);\n};\n\nexport const createFolderTypeDefs = (params: CreateFolderTypeDefsParams): string => {\n const { model, models, fieldRegistry } = params;\n const { fields } = model;\n\n const fieldTypes = renderFields({\n models,\n model,\n fields,\n type: \"manage\",\n fieldRegistry\n });\n const inputCreateFields = renderInputFields({\n models,\n model,\n fields,\n fieldRegistry\n });\n const inputUpdateFields = renderInputFields({\n models,\n model,\n fields: createUpdateFields(fields),\n fieldRegistry\n });\n\n return /* GraphQL */ `\n ${fieldTypes.map(f => f.typeDefs).join(\"\\n\")}\n \n type Folder {\n id: ID!\n # Tells us if the current user can manage folder structure.\n canManageStructure: Boolean\n\n # Tells us if the current user can manage folder permissions.\n canManagePermissions: Boolean\n\n # Tells us if the current user can manage folder content.\n canManageContent: Boolean\n\n # Tells us if the folder contains non-inherited permissions.\n hasNonInheritedPermissions: Boolean\n\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n createdBy: AcoUser\n modifiedBy: AcoUser\n savedBy: AcoUser\n \n ${fieldTypes.map(f => f.fields).join(\"\\n\")}\n }\n\n ${inputCreateFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input FolderCreateInput {\n # Pass an ID if you want to create a folder with a specific ID.\n id: ID \n \n ${inputCreateFields.map(f => f.fields).join(\"\\n\")}\n }\n \n input FolderUpdateInput {\n ${inputUpdateFields.map(f => f.fields).join(\"\\n\")}\n }\n \n input FoldersListWhereInput {\n type: String!\n parentId: ID\n parentId_in: [ID]\n slug: String\n slug_not: String\n slug_contains: String\n slug_not_contains: String\n slug_in: [String]\n slug_not_in: [String]\n slug_startsWith: String\n slug_not_startsWith: String\n path: String\n path_not: String\n path_contains: String\n path_not_contains: String\n path_in: [String]\n path_not_in: [String]\n path_startsWith: String\n path_not_startsWith: String\n createdBy: ID\n }\n \n type FolderResponse {\n data: Folder\n error: AcoError\n }\n\n type FoldersListResponse {\n data: [Folder]\n error: AcoError\n meta: AcoMeta\n }\n\n type FoldersHierarchyData {\n parents: [Folder]\n siblings: [Folder]\n }\n\n type FoldersHierarchyResponse {\n data: FoldersHierarchyData\n error: AcoError\n }\n\n type FolderLevelPermissionsTarget {\n id: ID!\n type: String!\n target: ID!\n name: String!\n meta: JSON\n }\n\n type FolderLevelPermissionsTargetsListMeta {\n totalCount: Int!\n }\n\n type FolderLevelPermissionsTargetsListResponse {\n data: [FolderLevelPermissionsTarget]\n meta: FolderLevelPermissionsTargetsListMeta\n error: AcoError\n }\n \n type FolderModelResponse {\n data: JSON\n error: AcoError\n }\n\n extend type AcoQuery {\n getFolderModel: FolderModelResponse!\n getFolder(id: ID!): FolderResponse\n listFolders(\n where: FoldersListWhereInput!\n limit: Int\n after: String\n sort: AcoSort\n ): FoldersListResponse\n getFolderHierarchy(type: String!, id: ID!): FoldersHierarchyResponse\n listFolderLevelPermissionsTargets: FolderLevelPermissionsTargetsListResponse\n }\n\n extend type AcoMutation {\n createFolder(data: FolderCreateInput!): FolderResponse\n updateFolder(id: ID!, data: FolderUpdateInput!): FolderResponse\n deleteFolder(id: ID!): AcoBooleanResponse\n }\n \n # The base type is dynamically generated from a Folder model\n \n extend type AcoFolder_Permissions {\n inheritedFrom: ID\n }\n \n extend input AcoFolder_PermissionsInput {\n inheritedFrom: ID\n }\n `;\n};\n"],"mappings":"AACA,SAASA,YAAY,QAAQ,gDAAgD;AAC7E,SAASC,iBAAiB,QAAQ,qDAAqD;AASvF,MAAMC,6BAA6B,GAAIC,KAAoB,IAAK;EAC5D,IAAIA,KAAK,CAACC,UAAU,EAAE;IAClBD,KAAK,CAACC,UAAU,GAAGD,KAAK,CAACC,UAAU,CAACC,MAAM,CAACD,UAAU,IAAIA,UAAU,CAACE,IAAI,KAAK,UAAU,CAAC;EAC5F;EACA,IAAIH,KAAK,CAACI,cAAc,EAAE;IACtBJ,KAAK,CAACI,cAAc,GAAGJ,KAAK,CAACI,cAAc,CAACF,MAAM,CAACG,CAAC,IAAIA,CAAC,CAACF,IAAI,KAAK,UAAU,CAAC;EAClF;EACA,OAAOH,KAAK;AAChB,CAAC;AAED,MAAMM,kBAAkB,GAAIC,MAAuB,IAAsB;EACrE,OAAOA,MAAM,CAACC,MAAM,CAAkB,CAACC,UAAU,EAAET,KAAK,KAAK;IACzDS,UAAU,CAACC,IAAI,CAACX,6BAA6B,CAAC;MAAE,GAAGC;IAAM,CAAC,CAAC,CAAC;IAC5D,OAAOS,UAAU;EACrB,CAAC,EAAE,EAAE,CAAC;AACV,CAAC;AAED,OAAO,MAAME,oBAAoB,GAAIC,MAAkC,IAAa;EAChF,MAAM;IAAEC,KAAK;IAAEC,MAAM;IAAEC;EAAc,CAAC,GAAGH,MAAM;EAC/C,MAAM;IAAEL;EAAO,CAAC,GAAGM,KAAK;EAExB,MAAMG,UAAU,GAAGnB,YAAY,CAAC;IAC5BiB,MAAM;IACND,KAAK;IACLN,MAAM;IACNU,IAAI,EAAE,QAAQ;IACdF;EACJ,CAAC,CAAC;EACF,MAAMG,iBAAiB,GAAGpB,iBAAiB,CAAC;IACxCgB,MAAM;IACND,KAAK;IACLN,MAAM;IACNQ;EACJ,CAAC,CAAC;EACF,MAAMI,iBAAiB,GAAGrB,iBAAiB,CAAC;IACxCgB,MAAM;IACND,KAAK;IACLN,MAAM,EAAED,kBAAkB,CAACC,MAAM,CAAC;IAClCQ;EACJ,CAAC,CAAC;EAEF,OAAO,aAAc;AACzB,UAAUC,UAAU,CAACI,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,QAAQ,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcP,UAAU,CAACI,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACd,MAAM,CAAC,CAACgB,IAAI,CAAC,IAAI,CAAC;AACtD;AACA;AACA,UAAUL,iBAAiB,CAACE,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,QAAQ,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;AAC3D;AACA;AACA;AACA;AACA;AACA,eAAeL,iBAAiB,CAACE,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACd,MAAM,CAAC,CAACgB,IAAI,CAAC,IAAI,CAAC;AAC9D;AACA;AACA;AACA,cAAcJ,iBAAiB,CAACC,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACd,MAAM,CAAC,CAACgB,IAAI,CAAC,IAAI,CAAC;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"folder/createFolderTypeDefs.js","sources":["../../src/folder/createFolderTypeDefs.ts"],"sourcesContent":["import type { CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { renderFields } from \"@webiny/api-headless-cms/utils/renderFields.js\";\nimport { renderInputFields } from \"@webiny/api-headless-cms/utils/renderInputFields.js\";\nimport type { CmsModelFieldToGraphQLRegistry } from \"@webiny/api-headless-cms/exports/api/cms/graphql.js\";\n\nexport interface CreateFolderTypeDefsParams {\n model: CmsModel;\n models: CmsModel[];\n fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface;\n}\n\nconst removeFieldRequiredValidation = (field: CmsModelField) => {\n if (field.validation) {\n field.validation = field.validation.filter(validation => validation.name !== \"required\");\n }\n if (field.listValidation) {\n field.listValidation = field.listValidation.filter(v => v.name !== \"required\");\n }\n return field;\n};\n\nconst createUpdateFields = (fields: CmsModelField[]): CmsModelField[] => {\n return fields.reduce<CmsModelField[]>((collection, field) => {\n collection.push(removeFieldRequiredValidation({ ...field }));\n return collection;\n }, []);\n};\n\nexport const createFolderTypeDefs = (params: CreateFolderTypeDefsParams): string => {\n const { model, models, fieldRegistry } = params;\n const { fields } = model;\n\n const fieldTypes = renderFields({\n models,\n model,\n fields,\n type: \"manage\",\n fieldRegistry\n });\n const inputCreateFields = renderInputFields({\n models,\n model,\n fields,\n fieldRegistry\n });\n const inputUpdateFields = renderInputFields({\n models,\n model,\n fields: createUpdateFields(fields),\n fieldRegistry\n });\n\n return /* GraphQL */ `\n ${fieldTypes.map(f => f.typeDefs).join(\"\\n\")}\n \n type Folder {\n id: ID!\n # Tells us if the current user can manage folder structure.\n canManageStructure: Boolean\n\n # Tells us if the current user can manage folder permissions.\n canManagePermissions: Boolean\n\n # Tells us if the current user can manage folder content.\n canManageContent: Boolean\n\n # Tells us if the folder contains non-inherited permissions.\n hasNonInheritedPermissions: Boolean\n\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n createdBy: AcoUser\n modifiedBy: AcoUser\n savedBy: AcoUser\n \n ${fieldTypes.map(f => f.fields).join(\"\\n\")}\n }\n\n ${inputCreateFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input FolderCreateInput {\n # Pass an ID if you want to create a folder with a specific ID.\n id: ID \n \n ${inputCreateFields.map(f => f.fields).join(\"\\n\")}\n }\n \n input FolderUpdateInput {\n ${inputUpdateFields.map(f => f.fields).join(\"\\n\")}\n }\n \n input FoldersListWhereInput {\n type: String!\n parentId: ID\n parentId_in: [ID]\n slug: String\n slug_not: String\n slug_contains: String\n slug_not_contains: String\n slug_in: [String]\n slug_not_in: [String]\n slug_startsWith: String\n slug_not_startsWith: String\n path: String\n path_not: String\n path_contains: String\n path_not_contains: String\n path_in: [String]\n path_not_in: [String]\n path_startsWith: String\n path_not_startsWith: String\n createdBy: ID\n }\n \n type FolderResponse {\n data: Folder\n error: AcoError\n }\n\n type FoldersListResponse {\n data: [Folder]\n error: AcoError\n meta: AcoMeta\n }\n\n type FoldersHierarchyData {\n parents: [Folder]\n siblings: [Folder]\n }\n\n type FoldersHierarchyResponse {\n data: FoldersHierarchyData\n error: AcoError\n }\n\n type FolderLevelPermissionsTarget {\n id: ID!\n type: String!\n target: ID!\n name: String!\n meta: JSON\n }\n\n type FolderLevelPermissionsTargetsListMeta {\n totalCount: Int!\n }\n\n type FolderLevelPermissionsTargetsListResponse {\n data: [FolderLevelPermissionsTarget]\n meta: FolderLevelPermissionsTargetsListMeta\n error: AcoError\n }\n \n type FolderModelResponse {\n data: JSON\n error: AcoError\n }\n\n extend type AcoQuery {\n getFolderModel: FolderModelResponse!\n getFolder(id: ID!): FolderResponse\n listFolders(\n where: FoldersListWhereInput!\n limit: Int\n after: String\n sort: AcoSort\n ): FoldersListResponse\n getFolderHierarchy(type: String!, id: ID!): FoldersHierarchyResponse\n listFolderLevelPermissionsTargets: FolderLevelPermissionsTargetsListResponse\n }\n\n extend type AcoMutation {\n createFolder(data: FolderCreateInput!): FolderResponse\n updateFolder(id: ID!, data: FolderUpdateInput!): FolderResponse\n deleteFolder(id: ID!): AcoBooleanResponse\n }\n \n # The base type is dynamically generated from a Folder model\n \n extend type AcoFolder_Permissions {\n inheritedFrom: ID\n }\n \n extend input AcoFolder_PermissionsInput {\n inheritedFrom: ID\n }\n `;\n};\n"],"names":["removeFieldRequiredValidation","field","validation","v","createUpdateFields","fields","collection","createFolderTypeDefs","params","model","models","fieldRegistry","fieldTypes","renderFields","inputCreateFields","renderInputFields","inputUpdateFields","f"],"mappings":";;AAWA,MAAMA,gCAAgC,CAACC;IACnC,IAAIA,MAAM,UAAU,EAChBA,MAAM,UAAU,GAAGA,MAAM,UAAU,CAAC,MAAM,CAACC,CAAAA,aAAcA,AAAoB,eAApBA,WAAW,IAAI;IAE5E,IAAID,MAAM,cAAc,EACpBA,MAAM,cAAc,GAAGA,MAAM,cAAc,CAAC,MAAM,CAACE,CAAAA,IAAKA,AAAW,eAAXA,EAAE,IAAI;IAElE,OAAOF;AACX;AAEA,MAAMG,qBAAqB,CAACC,SACjBA,OAAO,MAAM,CAAkB,CAACC,YAAYL;QAC/CK,WAAW,IAAI,CAACN,8BAA8B;YAAE,GAAGC,KAAK;QAAC;QACzD,OAAOK;IACX,GAAG,EAAE;AAGF,MAAMC,uBAAuB,CAACC;IACjC,MAAM,EAAEC,KAAK,EAAEC,MAAM,EAAEC,aAAa,EAAE,GAAGH;IACzC,MAAM,EAAEH,MAAM,EAAE,GAAGI;IAEnB,MAAMG,aAAaC,aAAa;QAC5BH;QACAD;QACAJ;QACA,MAAM;QACNM;IACJ;IACA,MAAMG,oBAAoBC,kBAAkB;QACxCL;QACAD;QACAJ;QACAM;IACJ;IACA,MAAMK,oBAAoBD,kBAAkB;QACxCL;QACAD;QACA,QAAQL,mBAAmBC;QAC3BM;IACJ;IAEA,OAAqB,CAAC;QAClB,EAAEC,WAAW,GAAG,CAACK,CAAAA,IAAKA,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;YAuBzC,EAAEL,WAAW,GAAG,CAACK,CAAAA,IAAKA,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;;;QAG/C,EAAEH,kBAAkB,GAAG,CAACG,CAAAA,IAAKA,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM;;;;;;aAM/C,EAAEH,kBAAkB,GAAG,CAACG,CAAAA,IAAKA,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;;;;YAInD,EAAED,kBAAkB,GAAG,CAACC,CAAAA,IAAKA,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkG1D,CAAC;AACL"}
@@ -12,141 +12,108 @@ import { DeleteFolderUseCase } from "../features/folder/DeleteFolder/abstraction
12
12
  import { GetFolderHierarchyUseCase } from "../features/folder/GetFolderHierarchy/abstractions.js";
13
13
  import { ListFolderLevelPermissionsTargetsUseCase } from "../features/folder/ListFolderLevelPermissionsTargets/abstractions.js";
14
14
  import { FolderModel } from "../domain/folder/abstractions.js";
15
- export const createFoldersSchema = params => {
16
- const folderGraphQL = new GraphQLSchemaPlugin({
17
- typeDefs: createFolderTypeDefs(params),
18
- resolvers: {
19
- Folder: {
20
- hasNonInheritedPermissions: (folder, _, context) => {
21
- const flp = context.container.resolve(FolderLevelPermissions);
22
- return flp.permissionsIncludeNonInheritedPermissions(folder.permissions ?? []);
23
- },
24
- canManageStructure: (folder, _, context) => {
25
- const flp = context.container.resolve(FolderLevelPermissions);
26
- return flp.canManageFolderStructure(folder);
27
- },
28
- canManagePermissions: (folder, _, context) => {
29
- const flp = context.container.resolve(FolderLevelPermissions);
30
- return flp.canManageFolderPermissions(folder);
31
- },
32
- canManageContent: (folder, _, context) => {
33
- const flp = context.container.resolve(FolderLevelPermissions);
34
- return flp.canManageFolderContent(folder);
35
- }
36
- },
37
- AcoQuery: {
38
- getFolderModel(_, __, context) {
39
- return resolve(async () => {
40
- ensureAuthentication(context);
41
- return context.container.resolve(FolderModel);
42
- });
43
- },
44
- getFolder: async (_, {
45
- id
46
- }, context) => {
47
- return resolve(async () => {
48
- ensureAuthentication(context);
49
- const getFolderUseCase = context.container.resolve(GetFolderUseCase);
50
- const result = await getFolderUseCase.execute(id);
51
- if (result.isFail()) {
52
- throw result.error;
53
- }
54
- return result.value;
55
- });
56
- },
57
- listFolders: async (_, args, context) => {
58
- try {
59
- ensureAuthentication(context);
60
- const listFoldersUseCase = context.container.resolve(ListFoldersUseCase);
61
- const result = await listFoldersUseCase.execute(args);
62
- if (result.isFail()) {
63
- throw result.error;
64
- }
65
- const {
66
- folders,
67
- meta
68
- } = result.value;
69
- return new ListResponse(folders, meta);
70
- } catch (e) {
71
- return new ErrorResponse(e);
72
- }
73
- },
74
- getFolderHierarchy: async (_, args, context) => {
75
- try {
76
- return resolve(async () => {
77
- ensureAuthentication(context);
78
- const getFolderHierarchyUseCase = context.container.resolve(GetFolderHierarchyUseCase);
79
- const result = await getFolderHierarchyUseCase.execute(args);
80
- if (result.isFail()) {
81
- throw result.error;
82
- }
83
- return result.value;
84
- });
85
- } catch (e) {
86
- return new ErrorResponse(e);
87
- }
88
- },
89
- listFolderLevelPermissionsTargets: async (_, args, context) => {
90
- try {
91
- ensureAuthentication(context);
92
- const listTargetsUseCase = context.container.resolve(ListFolderLevelPermissionsTargetsUseCase);
93
- const result = await listTargetsUseCase.execute();
94
- if (result.isFail()) {
95
- throw result.error;
96
- }
97
- const [entries, meta] = result.value;
98
- return new ListResponse(entries, meta);
99
- } catch (e) {
100
- return new ErrorResponse(e);
101
- }
102
- }
103
- },
104
- AcoMutation: {
105
- createFolder: async (_, {
106
- data
107
- }, context) => {
108
- return resolve(async () => {
109
- ensureAuthentication(context);
110
- const createFolderUseCase = context.container.resolve(CreateFolderUseCase);
111
- const result = await createFolderUseCase.execute(data);
112
- if (result.isFail()) {
113
- throw result.error;
114
- }
115
- return result.value;
116
- });
117
- },
118
- updateFolder: async (_, {
119
- id,
120
- data
121
- }, context) => {
122
- return resolve(async () => {
123
- ensureAuthentication(context);
124
- const updateFolderUseCase = context.container.resolve(UpdateFolderUseCase);
125
- const result = await updateFolderUseCase.execute(id, data);
126
- if (result.isFail()) {
127
- throw result.error;
128
- }
129
- return result.value;
130
- });
131
- },
132
- deleteFolder: async (_, {
133
- id
134
- }, context) => {
135
- return resolve(async () => {
136
- ensureAuthentication(context);
137
- const deleteFolderUseCase = context.container.resolve(DeleteFolderUseCase);
138
- const result = await deleteFolderUseCase.execute(id);
139
- if (result.isFail()) {
140
- throw result.error;
15
+ const createFoldersSchema = (params)=>{
16
+ const folderGraphQL = new GraphQLSchemaPlugin({
17
+ typeDefs: createFolderTypeDefs(params),
18
+ resolvers: {
19
+ Folder: {
20
+ hasNonInheritedPermissions: (folder, _, context)=>{
21
+ const flp = context.container.resolve(FolderLevelPermissions);
22
+ return flp.permissionsIncludeNonInheritedPermissions(folder.permissions ?? []);
23
+ },
24
+ canManageStructure: (folder, _, context)=>{
25
+ const flp = context.container.resolve(FolderLevelPermissions);
26
+ return flp.canManageFolderStructure(folder);
27
+ },
28
+ canManagePermissions: (folder, _, context)=>{
29
+ const flp = context.container.resolve(FolderLevelPermissions);
30
+ return flp.canManageFolderPermissions(folder);
31
+ },
32
+ canManageContent: (folder, _, context)=>{
33
+ const flp = context.container.resolve(FolderLevelPermissions);
34
+ return flp.canManageFolderContent(folder);
35
+ }
36
+ },
37
+ AcoQuery: {
38
+ getFolderModel (_, __, context) {
39
+ return resolve(async ()=>{
40
+ ensureAuthentication(context);
41
+ return context.container.resolve(FolderModel);
42
+ });
43
+ },
44
+ getFolder: async (_, { id }, context)=>resolve(async ()=>{
45
+ ensureAuthentication(context);
46
+ const getFolderUseCase = context.container.resolve(GetFolderUseCase);
47
+ const result = await getFolderUseCase.execute(id);
48
+ if (result.isFail()) throw result.error;
49
+ return result.value;
50
+ }),
51
+ listFolders: async (_, args, context)=>{
52
+ try {
53
+ ensureAuthentication(context);
54
+ const listFoldersUseCase = context.container.resolve(ListFoldersUseCase);
55
+ const result = await listFoldersUseCase.execute(args);
56
+ if (result.isFail()) throw result.error;
57
+ const { folders, meta } = result.value;
58
+ return new ListResponse(folders, meta);
59
+ } catch (e) {
60
+ return new ErrorResponse(e);
61
+ }
62
+ },
63
+ getFolderHierarchy: async (_, args, context)=>{
64
+ try {
65
+ return resolve(async ()=>{
66
+ ensureAuthentication(context);
67
+ const getFolderHierarchyUseCase = context.container.resolve(GetFolderHierarchyUseCase);
68
+ const result = await getFolderHierarchyUseCase.execute(args);
69
+ if (result.isFail()) throw result.error;
70
+ return result.value;
71
+ });
72
+ } catch (e) {
73
+ return new ErrorResponse(e);
74
+ }
75
+ },
76
+ listFolderLevelPermissionsTargets: async (_, args, context)=>{
77
+ try {
78
+ ensureAuthentication(context);
79
+ const listTargetsUseCase = context.container.resolve(ListFolderLevelPermissionsTargetsUseCase);
80
+ const result = await listTargetsUseCase.execute();
81
+ if (result.isFail()) throw result.error;
82
+ const [entries, meta] = result.value;
83
+ return new ListResponse(entries, meta);
84
+ } catch (e) {
85
+ return new ErrorResponse(e);
86
+ }
87
+ }
88
+ },
89
+ AcoMutation: {
90
+ createFolder: async (_, { data }, context)=>resolve(async ()=>{
91
+ ensureAuthentication(context);
92
+ const createFolderUseCase = context.container.resolve(CreateFolderUseCase);
93
+ const result = await createFolderUseCase.execute(data);
94
+ if (result.isFail()) throw result.error;
95
+ return result.value;
96
+ }),
97
+ updateFolder: async (_, { id, data }, context)=>resolve(async ()=>{
98
+ ensureAuthentication(context);
99
+ const updateFolderUseCase = context.container.resolve(UpdateFolderUseCase);
100
+ const result = await updateFolderUseCase.execute(id, data);
101
+ if (result.isFail()) throw result.error;
102
+ return result.value;
103
+ }),
104
+ deleteFolder: async (_, { id }, context)=>resolve(async ()=>{
105
+ ensureAuthentication(context);
106
+ const deleteFolderUseCase = context.container.resolve(DeleteFolderUseCase);
107
+ const result = await deleteFolderUseCase.execute(id);
108
+ if (result.isFail()) throw result.error;
109
+ return true;
110
+ })
141
111
  }
142
- return true;
143
- });
144
112
  }
145
- }
146
- }
147
- });
148
- folderGraphQL.name = "aco.graphql.folders";
149
- return folderGraphQL;
113
+ });
114
+ folderGraphQL.name = "aco.graphql.folders";
115
+ return folderGraphQL;
150
116
  };
117
+ export { createFoldersSchema };
151
118
 
152
119
  //# sourceMappingURL=folder.gql.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ErrorResponse","ListResponse","GraphQLSchemaPlugin","createFolderTypeDefs","ensureAuthentication","resolve","FolderLevelPermissions","GetFolderUseCase","ListFoldersUseCase","CreateFolderUseCase","UpdateFolderUseCase","DeleteFolderUseCase","GetFolderHierarchyUseCase","ListFolderLevelPermissionsTargetsUseCase","FolderModel","createFoldersSchema","params","folderGraphQL","typeDefs","resolvers","Folder","hasNonInheritedPermissions","folder","_","context","flp","container","permissionsIncludeNonInheritedPermissions","permissions","canManageStructure","canManageFolderStructure","canManagePermissions","canManageFolderPermissions","canManageContent","canManageFolderContent","AcoQuery","getFolderModel","__","getFolder","id","getFolderUseCase","result","execute","isFail","error","value","listFolders","args","listFoldersUseCase","folders","meta","e","getFolderHierarchy","getFolderHierarchyUseCase","listFolderLevelPermissionsTargets","listTargetsUseCase","entries","AcoMutation","createFolder","data","createFolderUseCase","updateFolder","updateFolderUseCase","deleteFolder","deleteFolderUseCase","name"],"sources":["folder.gql.ts"],"sourcesContent":["import { ErrorResponse, ListResponse } from \"@webiny/handler-graphql/responses.js\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\n\nimport type { CreateFolderTypeDefsParams } from \"./createFolderTypeDefs.js\";\nimport { createFolderTypeDefs } from \"./createFolderTypeDefs.js\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication.js\";\nimport { resolve } from \"~/utils/resolve.js\";\nimport type { AcoContext, Folder } from \"~/types.js\";\nimport { FolderLevelPermissions } from \"~/features/flp/FolderLevelPermissions/index.js\";\nimport { GetFolderUseCase } from \"~/features/folder/GetFolder/abstractions.js\";\nimport { ListFoldersUseCase } from \"~/features/folder/ListFolders/abstractions.js\";\nimport { CreateFolderUseCase } from \"~/features/folder/CreateFolder/abstractions.js\";\nimport { UpdateFolderUseCase } from \"~/features/folder/UpdateFolder/abstractions.js\";\nimport { DeleteFolderUseCase } from \"~/features/folder/DeleteFolder/abstractions.js\";\nimport { GetFolderHierarchyUseCase } from \"~/features/folder/GetFolderHierarchy/abstractions.js\";\nimport { ListFolderLevelPermissionsTargetsUseCase } from \"~/features/folder/ListFolderLevelPermissionsTargets/abstractions.js\";\nimport { FolderModel } from \"~/domain/folder/abstractions.js\";\n\nexport const createFoldersSchema = (params: CreateFolderTypeDefsParams) => {\n const folderGraphQL = new GraphQLSchemaPlugin<AcoContext>({\n typeDefs: createFolderTypeDefs(params),\n resolvers: {\n Folder: {\n hasNonInheritedPermissions: (folder: Folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.permissionsIncludeNonInheritedPermissions(folder.permissions ?? []);\n },\n canManageStructure: (folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.canManageFolderStructure(folder);\n },\n canManagePermissions: (folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.canManageFolderPermissions(folder);\n },\n canManageContent: (folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.canManageFolderContent(folder);\n }\n },\n AcoQuery: {\n getFolderModel(_, __, context) {\n return resolve(async () => {\n ensureAuthentication(context);\n return context.container.resolve(FolderModel);\n });\n },\n getFolder: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const getFolderUseCase = context.container.resolve(GetFolderUseCase);\n const result = await getFolderUseCase.execute(id);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n },\n listFolders: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listFoldersUseCase = context.container.resolve(ListFoldersUseCase);\n const result = await listFoldersUseCase.execute(args);\n if (result.isFail()) {\n throw result.error;\n }\n const { folders, meta } = result.value;\n return new ListResponse(folders, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n getFolderHierarchy: async (_, args: any, context) => {\n try {\n return resolve(async () => {\n ensureAuthentication(context);\n const getFolderHierarchyUseCase =\n context.container.resolve(GetFolderHierarchyUseCase);\n const result = await getFolderHierarchyUseCase.execute(args);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listFolderLevelPermissionsTargets: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listTargetsUseCase = context.container.resolve(\n ListFolderLevelPermissionsTargetsUseCase\n );\n const result = await listTargetsUseCase.execute();\n if (result.isFail()) {\n throw result.error;\n }\n const [entries, meta] = result.value;\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n AcoMutation: {\n createFolder: async (_, { data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const createFolderUseCase = context.container.resolve(CreateFolderUseCase);\n const result = await createFolderUseCase.execute(data);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n },\n updateFolder: async (_, { id, data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const updateFolderUseCase = context.container.resolve(UpdateFolderUseCase);\n const result = await updateFolderUseCase.execute(id, data);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n },\n deleteFolder: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const deleteFolderUseCase = context.container.resolve(DeleteFolderUseCase);\n const result = await deleteFolderUseCase.execute(id);\n if (result.isFail()) {\n throw result.error;\n }\n return true;\n });\n }\n }\n }\n });\n\n folderGraphQL.name = \"aco.graphql.folders\";\n\n return folderGraphQL;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"folder/folder.gql.js","sources":["../../src/folder/folder.gql.ts"],"sourcesContent":["import { ErrorResponse, ListResponse } from \"@webiny/handler-graphql/responses.js\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin.js\";\n\nimport type { CreateFolderTypeDefsParams } from \"./createFolderTypeDefs.js\";\nimport { createFolderTypeDefs } from \"./createFolderTypeDefs.js\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication.js\";\nimport { resolve } from \"~/utils/resolve.js\";\nimport type { AcoContext, Folder } from \"~/types.js\";\nimport { FolderLevelPermissions } from \"~/features/flp/FolderLevelPermissions/index.js\";\nimport { GetFolderUseCase } from \"~/features/folder/GetFolder/abstractions.js\";\nimport { ListFoldersUseCase } from \"~/features/folder/ListFolders/abstractions.js\";\nimport { CreateFolderUseCase } from \"~/features/folder/CreateFolder/abstractions.js\";\nimport { UpdateFolderUseCase } from \"~/features/folder/UpdateFolder/abstractions.js\";\nimport { DeleteFolderUseCase } from \"~/features/folder/DeleteFolder/abstractions.js\";\nimport { GetFolderHierarchyUseCase } from \"~/features/folder/GetFolderHierarchy/abstractions.js\";\nimport { ListFolderLevelPermissionsTargetsUseCase } from \"~/features/folder/ListFolderLevelPermissionsTargets/abstractions.js\";\nimport { FolderModel } from \"~/domain/folder/abstractions.js\";\n\nexport const createFoldersSchema = (params: CreateFolderTypeDefsParams) => {\n const folderGraphQL = new GraphQLSchemaPlugin<AcoContext>({\n typeDefs: createFolderTypeDefs(params),\n resolvers: {\n Folder: {\n hasNonInheritedPermissions: (folder: Folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.permissionsIncludeNonInheritedPermissions(folder.permissions ?? []);\n },\n canManageStructure: (folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.canManageFolderStructure(folder);\n },\n canManagePermissions: (folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.canManageFolderPermissions(folder);\n },\n canManageContent: (folder, _, context) => {\n const flp = context.container.resolve(FolderLevelPermissions);\n return flp.canManageFolderContent(folder);\n }\n },\n AcoQuery: {\n getFolderModel(_, __, context) {\n return resolve(async () => {\n ensureAuthentication(context);\n return context.container.resolve(FolderModel);\n });\n },\n getFolder: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const getFolderUseCase = context.container.resolve(GetFolderUseCase);\n const result = await getFolderUseCase.execute(id);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n },\n listFolders: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listFoldersUseCase = context.container.resolve(ListFoldersUseCase);\n const result = await listFoldersUseCase.execute(args);\n if (result.isFail()) {\n throw result.error;\n }\n const { folders, meta } = result.value;\n return new ListResponse(folders, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n getFolderHierarchy: async (_, args: any, context) => {\n try {\n return resolve(async () => {\n ensureAuthentication(context);\n const getFolderHierarchyUseCase =\n context.container.resolve(GetFolderHierarchyUseCase);\n const result = await getFolderHierarchyUseCase.execute(args);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listFolderLevelPermissionsTargets: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listTargetsUseCase = context.container.resolve(\n ListFolderLevelPermissionsTargetsUseCase\n );\n const result = await listTargetsUseCase.execute();\n if (result.isFail()) {\n throw result.error;\n }\n const [entries, meta] = result.value;\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n AcoMutation: {\n createFolder: async (_, { data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const createFolderUseCase = context.container.resolve(CreateFolderUseCase);\n const result = await createFolderUseCase.execute(data);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n },\n updateFolder: async (_, { id, data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const updateFolderUseCase = context.container.resolve(UpdateFolderUseCase);\n const result = await updateFolderUseCase.execute(id, data);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n },\n deleteFolder: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const deleteFolderUseCase = context.container.resolve(DeleteFolderUseCase);\n const result = await deleteFolderUseCase.execute(id);\n if (result.isFail()) {\n throw result.error;\n }\n return true;\n });\n }\n }\n }\n });\n\n folderGraphQL.name = \"aco.graphql.folders\";\n\n return folderGraphQL;\n};\n"],"names":["createFoldersSchema","params","folderGraphQL","GraphQLSchemaPlugin","createFolderTypeDefs","folder","_","context","flp","FolderLevelPermissions","__","resolve","ensureAuthentication","FolderModel","id","getFolderUseCase","GetFolderUseCase","result","args","listFoldersUseCase","ListFoldersUseCase","folders","meta","ListResponse","e","ErrorResponse","getFolderHierarchyUseCase","GetFolderHierarchyUseCase","listTargetsUseCase","ListFolderLevelPermissionsTargetsUseCase","entries","data","createFolderUseCase","CreateFolderUseCase","updateFolderUseCase","UpdateFolderUseCase","deleteFolderUseCase","DeleteFolderUseCase"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=folder.types.js.map