@webiny/app-aco 6.0.0-alpha.0 → 6.0.0-alpha.2

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 (401) hide show
  1. package/components/AdvancedSearch/AdvancedSearch.d.ts +1 -1
  2. package/components/AdvancedSearch/AdvancedSearch.js.map +1 -1
  3. package/components/AdvancedSearch/AdvancedSearchPresenter.d.ts +1 -1
  4. package/components/AdvancedSearch/AdvancedSearchPresenter.js.map +1 -1
  5. package/components/AdvancedSearch/AdvancedSearchPresenter.test.js.map +1 -1
  6. package/components/AdvancedSearch/GraphQLInputMapper.d.ts +1 -1
  7. package/components/AdvancedSearch/GraphQLInputMapper.js.map +1 -1
  8. package/components/AdvancedSearch/GraphQLInputMapper.test.js.map +1 -1
  9. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.d.ts +3 -3
  10. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.js.map +1 -1
  11. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.d.ts +1 -1
  12. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.js.map +1 -1
  13. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.d.ts +1 -1
  14. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.js.map +1 -1
  15. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.d.ts +1 -1
  16. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js.map +1 -1
  17. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.d.ts +3 -2
  18. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.js.map +1 -1
  19. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.test.js.map +1 -1
  20. package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.d.ts +1 -1
  21. package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.js.map +1 -1
  22. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.d.ts +1 -1
  23. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.js.map +1 -1
  24. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.d.ts +2 -2
  25. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.js.map +1 -1
  26. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.test.js.map +1 -1
  27. package/components/AdvancedSearch/SelectedFilter/SelectedFilter.d.ts +1 -1
  28. package/components/AdvancedSearch/SelectedFilter/SelectedFilter.js.map +1 -1
  29. package/components/AdvancedSearch/domain/Field.d.ts +1 -1
  30. package/components/AdvancedSearch/domain/Field.js.map +1 -1
  31. package/components/AdvancedSearch/domain/FieldMapper.d.ts +1 -1
  32. package/components/AdvancedSearch/domain/FieldMapper.js.map +1 -1
  33. package/components/AdvancedSearch/domain/Filter.d.ts +24 -24
  34. package/components/AdvancedSearch/domain/FilterMapper.d.ts +1 -1
  35. package/components/AdvancedSearch/domain/FilterMapper.js.map +1 -1
  36. package/components/AdvancedSearch/domain/FilterRepository.d.ts +2 -2
  37. package/components/AdvancedSearch/domain/FilterRepository.js.map +1 -1
  38. package/components/AdvancedSearch/domain/FilterRepositoryFactory.d.ts +1 -1
  39. package/components/AdvancedSearch/domain/FilterRepositoryFactory.js.map +1 -1
  40. package/components/AdvancedSearch/gateways/FiltersGatewayInterface.d.ts +2 -2
  41. package/components/AdvancedSearch/gateways/FiltersGatewayInterface.js.map +1 -1
  42. package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.d.ts +3 -3
  43. package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.js.map +1 -1
  44. package/components/AdvancedSearch/gateways/filters.types.d.ts +2 -2
  45. package/components/AdvancedSearch/gateways/filters.types.js.map +1 -1
  46. package/components/AdvancedSearch/index.d.ts +2 -2
  47. package/components/AdvancedSearch/index.js.map +1 -1
  48. package/components/AdvancedSearch/useInputField.d.ts +1 -1
  49. package/components/AdvancedSearch/useInputField.js.map +1 -1
  50. package/components/FolderTree/List/List.d.ts +1 -1
  51. package/components/FolderTree/List/List.js +15 -1
  52. package/components/FolderTree/List/List.js.map +1 -1
  53. package/components/FolderTree/List/utils.d.ts +1 -1
  54. package/components/FolderTree/List/utils.js.map +1 -1
  55. package/components/FolderTree/MenuActions/MenuActions.js +2 -0
  56. package/components/FolderTree/MenuActions/MenuActions.js.map +1 -1
  57. package/components/FolderTree/index.d.ts +1 -1
  58. package/components/FolderTree/index.js.map +1 -1
  59. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.d.ts +2 -2
  60. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.js.map +1 -1
  61. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.d.ts +1 -1
  62. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.js.map +1 -1
  63. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.test.js.map +1 -1
  64. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.d.ts +2 -2
  65. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.js.map +1 -1
  66. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.d.ts +1 -1
  67. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.js.map +1 -1
  68. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.d.ts +2 -2
  69. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.js.map +1 -1
  70. package/components/Table/components/Table/Columns/Column.d.ts +2 -2
  71. package/components/Table/components/Table/Columns/Column.js.map +1 -1
  72. package/components/Table/components/Table/Columns/ColumnMapper.d.ts +2 -2
  73. package/components/Table/components/Table/Columns/ColumnMapper.js.map +1 -1
  74. package/components/Table/components/Table/Columns/ColumnsPresenter.d.ts +1 -1
  75. package/components/Table/components/Table/Columns/ColumnsPresenter.js.map +1 -1
  76. package/components/Table/components/Table/Columns/ColumnsPresenter.test.js.map +1 -1
  77. package/components/Table/components/Table/Columns/ColumnsRepository.d.ts +2 -2
  78. package/components/Table/components/Table/Columns/ColumnsRepository.js.map +1 -1
  79. package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.d.ts +1 -1
  80. package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.js.map +1 -1
  81. package/components/Table/components/Table/Columns/IColumnsRepository.d.ts +1 -1
  82. package/components/Table/components/Table/Columns/IColumnsRepository.js.map +1 -1
  83. package/components/Table/components/Table/Table.d.ts +4 -3
  84. package/components/Table/components/Table/Table.js.map +1 -1
  85. package/components/Table/components/Table/TableInner.d.ts +8 -6
  86. package/components/Table/components/Table/TableInner.js.map +1 -1
  87. package/components/Table/components/Table/TablePresenter.d.ts +1 -1
  88. package/components/Table/components/Table/TablePresenter.js.map +1 -1
  89. package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.d.ts +1 -1
  90. package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js.map +1 -1
  91. package/components/Table/createTableData.d.ts +6 -6
  92. package/components/Table/createTableData.js +8 -8
  93. package/components/Table/createTableData.js.map +1 -1
  94. package/components/Table/useTableRow.d.ts +9 -4
  95. package/components/Table/useTableRow.js +10 -3
  96. package/components/Table/useTableRow.js.map +1 -1
  97. package/config/AcoConfig.d.ts +12 -7
  98. package/config/AcoConfig.js +0 -5
  99. package/config/AcoConfig.js.map +1 -1
  100. package/config/advanced-search/index.d.ts +1 -1
  101. package/config/advanced-search/index.js.map +1 -1
  102. package/config/folder/createFolderFieldDecoratorFactory.d.ts +1 -1
  103. package/config/folder/createFolderFieldDecoratorFactory.js.map +1 -1
  104. package/config/folder/index.d.ts +1 -1
  105. package/config/folder/index.js.map +1 -1
  106. package/config/record/index.d.ts +1 -1
  107. package/config/record/index.js.map +1 -1
  108. package/config/table/Column.d.ts +10 -4
  109. package/config/table/Column.js.map +1 -1
  110. package/config/table/index.d.ts +9 -4
  111. package/config/table/index.js.map +1 -1
  112. package/contexts/acoList.d.ts +1 -1
  113. package/contexts/acoList.js.map +1 -1
  114. package/contexts/app.d.ts +2 -2
  115. package/contexts/app.js.map +1 -1
  116. package/contexts/folder.d.ts +1 -1
  117. package/contexts/folder.js.map +1 -1
  118. package/contexts/folders.d.ts +2 -1
  119. package/contexts/folders.js.map +1 -1
  120. package/contexts/index.d.ts +1 -1
  121. package/contexts/index.js +1 -1
  122. package/contexts/index.js.map +1 -1
  123. package/contexts/records.d.ts +3 -2
  124. package/contexts/records.js.map +1 -1
  125. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemGraphic.d.ts +1 -1
  126. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemGraphic.js.map +1 -1
  127. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.d.ts +1 -1
  128. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js.map +1 -1
  129. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.d.ts +1 -1
  130. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.js.map +1 -1
  131. package/dialogs/DialogSetPermissions/UsersTeamsSelection.d.ts +1 -1
  132. package/dialogs/DialogSetPermissions/UsersTeamsSelection.js.map +1 -1
  133. package/dialogs/useCreateDialog.js.map +1 -1
  134. package/dialogs/useDeleteDialog.d.ts +1 -1
  135. package/dialogs/useDeleteDialog.js.map +1 -1
  136. package/dialogs/useEditDialog.d.ts +1 -1
  137. package/dialogs/useEditDialog.js.map +1 -1
  138. package/dialogs/useMoveToFolderDialog.d.ts +3 -2
  139. package/dialogs/useMoveToFolderDialog.js.map +1 -1
  140. package/dialogs/useSetPermissionsDialog.d.ts +1 -1
  141. package/dialogs/useSetPermissionsDialog.js.map +1 -1
  142. package/features/folders/Folder.d.ts +1 -1
  143. package/features/folders/Folder.js.map +1 -1
  144. package/features/folders/cache/FoldersCacheFactory.d.ts +1 -1
  145. package/features/folders/cache/FoldersCacheFactory.js.map +1 -1
  146. package/features/folders/createFolder/CreateFolder.d.ts +2 -2
  147. package/features/folders/createFolder/CreateFolder.js.map +1 -1
  148. package/features/folders/createFolder/CreateFolderGqlGateway.d.ts +4 -4
  149. package/features/folders/createFolder/CreateFolderGqlGateway.js.map +1 -1
  150. package/features/folders/createFolder/CreateFolderRepository.d.ts +3 -3
  151. package/features/folders/createFolder/CreateFolderRepository.js.map +1 -1
  152. package/features/folders/createFolder/CreateFolderUseCase.d.ts +2 -2
  153. package/features/folders/createFolder/CreateFolderUseCase.js.map +1 -1
  154. package/features/folders/createFolder/CreateFolderUseCaseWithLoading.d.ts +2 -2
  155. package/features/folders/createFolder/CreateFolderUseCaseWithLoading.js.map +1 -1
  156. package/features/folders/createFolder/FolderDto.d.ts +1 -1
  157. package/features/folders/createFolder/FolderDto.js.map +1 -1
  158. package/features/folders/createFolder/FolderGqlDto.d.ts +1 -1
  159. package/features/folders/createFolder/FolderGqlDto.js.map +1 -1
  160. package/features/folders/createFolder/ICreateFolderGateway.d.ts +2 -2
  161. package/features/folders/createFolder/ICreateFolderGateway.js.map +1 -1
  162. package/features/folders/createFolder/ICreateFolderRepository.d.ts +1 -1
  163. package/features/folders/createFolder/ICreateFolderRepository.js.map +1 -1
  164. package/features/folders/createFolder/ICreateFolderUseCase.d.ts +1 -1
  165. package/features/folders/createFolder/ICreateFolderUseCase.js.map +1 -1
  166. package/features/folders/createFolder/useCreateFolder.d.ts +1 -1
  167. package/features/folders/createFolder/useCreateFolder.js.map +1 -1
  168. package/features/folders/deleteFolder/DeleteFolder.d.ts +2 -2
  169. package/features/folders/deleteFolder/DeleteFolder.js.map +1 -1
  170. package/features/folders/deleteFolder/DeleteFolderGqlGateway.d.ts +3 -3
  171. package/features/folders/deleteFolder/DeleteFolderGqlGateway.js.map +1 -1
  172. package/features/folders/deleteFolder/DeleteFolderRepository.d.ts +4 -4
  173. package/features/folders/deleteFolder/DeleteFolderRepository.js.map +1 -1
  174. package/features/folders/deleteFolder/DeleteFolderUseCase.d.ts +2 -2
  175. package/features/folders/deleteFolder/DeleteFolderUseCase.js.map +1 -1
  176. package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.d.ts +2 -2
  177. package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.js.map +1 -1
  178. package/features/folders/deleteFolder/IDeleteFolderRepository.d.ts +1 -1
  179. package/features/folders/deleteFolder/IDeleteFolderRepository.js.map +1 -1
  180. package/features/folders/deleteFolder/IDeleteFolderUseCase.d.ts +1 -1
  181. package/features/folders/deleteFolder/IDeleteFolderUseCase.js.map +1 -1
  182. package/features/folders/deleteFolder/useDeleteFolder.d.ts +1 -1
  183. package/features/folders/deleteFolder/useDeleteFolder.js.map +1 -1
  184. package/features/folders/getDescendantFolders/FolderDto.d.ts +1 -1
  185. package/features/folders/getDescendantFolders/FolderDto.js.map +1 -1
  186. package/features/folders/getDescendantFolders/GetDescendantFolders.d.ts +1 -1
  187. package/features/folders/getDescendantFolders/GetDescendantFolders.js.map +1 -1
  188. package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.d.ts +3 -3
  189. package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.js.map +1 -1
  190. package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.d.ts +2 -2
  191. package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.js.map +1 -1
  192. package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.d.ts +1 -1
  193. package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.js.map +1 -1
  194. package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.d.ts +1 -1
  195. package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.js.map +1 -1
  196. package/features/folders/getFolder/GetFolder.d.ts +2 -2
  197. package/features/folders/getFolder/GetFolder.js.map +1 -1
  198. package/features/folders/getFolder/GetFolderGqlGateway.d.ts +3 -3
  199. package/features/folders/getFolder/GetFolderGqlGateway.js.map +1 -1
  200. package/features/folders/getFolder/GetFolderRepository.d.ts +3 -3
  201. package/features/folders/getFolder/GetFolderRepository.js.map +1 -1
  202. package/features/folders/getFolder/GetFolderUseCase.d.ts +2 -2
  203. package/features/folders/getFolder/GetFolderUseCase.js.map +1 -1
  204. package/features/folders/getFolder/GetFolderUseCaseWithLoading.d.ts +2 -2
  205. package/features/folders/getFolder/GetFolderUseCaseWithLoading.js.map +1 -1
  206. package/features/folders/getFolder/IGetFolderGateway.d.ts +1 -1
  207. package/features/folders/getFolder/IGetFolderGateway.js.map +1 -1
  208. package/features/folders/getFolder/useGetFolder.d.ts +1 -1
  209. package/features/folders/getFolder/useGetFolder.js.map +1 -1
  210. package/features/folders/getFolderAncestors/FolderDto.d.ts +9 -0
  211. package/features/folders/getFolderAncestors/FolderDto.js +3 -0
  212. package/features/folders/getFolderAncestors/FolderDto.js.map +1 -0
  213. package/features/folders/getFolderAncestors/GetFolderAncestors.d.ts +4 -0
  214. package/features/folders/getFolderAncestors/GetFolderAncestors.js +12 -0
  215. package/features/folders/getFolderAncestors/GetFolderAncestors.js.map +1 -0
  216. package/features/folders/getFolderAncestors/GetFolderAncestors.test.d.ts +1 -0
  217. package/features/folders/getFolderAncestors/GetFolderAncestors.test.js +97 -0
  218. package/features/folders/getFolderAncestors/GetFolderAncestors.test.js.map +1 -0
  219. package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.d.ts +7 -0
  220. package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.js +25 -0
  221. package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.js.map +1 -0
  222. package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.d.ts +14 -0
  223. package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.js +18 -0
  224. package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.js.map +1 -0
  225. package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.d.ts +4 -0
  226. package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.js +3 -0
  227. package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.js.map +1 -0
  228. package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.d.ts +7 -0
  229. package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.js +3 -0
  230. package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.js.map +1 -0
  231. package/features/folders/getFolderAncestors/index.d.ts +1 -0
  232. package/features/folders/getFolderAncestors/index.js +3 -0
  233. package/features/folders/getFolderAncestors/index.js.map +1 -0
  234. package/features/folders/getFolderAncestors/useGetFolderAncestors.d.ts +3 -0
  235. package/features/folders/getFolderAncestors/useGetFolderAncestors.js +17 -0
  236. package/features/folders/getFolderAncestors/useGetFolderAncestors.js.map +1 -0
  237. package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsRepository.d.ts +1 -1
  238. package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCase.d.ts +1 -1
  239. package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespace.d.ts +1 -1
  240. package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespaceAndModelId.d.ts +1 -1
  241. package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.d.ts +1 -1
  242. package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.js.map +1 -1
  243. package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.d.ts +1 -1
  244. package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.js.map +1 -1
  245. package/features/folders/getFolderExtensionsFields/useGetFolderExtensionsFields.d.ts +1 -1
  246. package/features/folders/getFolderHierarchy/FolderDto.d.ts +2 -2
  247. package/features/folders/getFolderHierarchy/FolderDto.js.map +1 -1
  248. package/features/folders/getFolderHierarchy/FolderGqlDto.d.ts +1 -1
  249. package/features/folders/getFolderHierarchy/FolderGqlDto.js.map +1 -1
  250. package/features/folders/getFolderHierarchy/GetFolderHierarchy.d.ts +5 -5
  251. package/features/folders/getFolderHierarchy/GetFolderHierarchy.js.map +1 -1
  252. package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.d.ts +3 -3
  253. package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.js.map +1 -1
  254. package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.d.ts +3 -3
  255. package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -1
  256. package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.d.ts +2 -2
  257. package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -1
  258. package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.d.ts +2 -2
  259. package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.js.map +1 -1
  260. package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.d.ts +1 -1
  261. package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.js.map +1 -1
  262. package/features/folders/getFolderHierarchy/useGetFolderHierarchy.d.ts +1 -1
  263. package/features/folders/getFolderHierarchy/useGetFolderHierarchy.js.map +1 -1
  264. package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.d.ts +2 -2
  265. package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.js.map +1 -1
  266. package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.d.ts +4 -4
  267. package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.js.map +1 -1
  268. package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.d.ts +1 -1
  269. package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.js.map +1 -1
  270. package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.d.ts +2 -2
  271. package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.js.map +1 -1
  272. package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.d.ts +1 -1
  273. package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.js.map +1 -1
  274. package/features/folders/getFolderModel/FolderModelContext.js.map +1 -1
  275. package/features/folders/getFolderModel/FolderModelDto.d.ts +1 -1
  276. package/features/folders/getFolderModel/FolderModelDto.js.map +1 -1
  277. package/features/folders/getFolderModel/GetFolderModel.d.ts +3 -3
  278. package/features/folders/getFolderModel/GetFolderModel.js.map +1 -1
  279. package/features/folders/getFolderModel/GetFolderModelGqlGateway.d.ts +4 -4
  280. package/features/folders/getFolderModel/GetFolderModelGqlGateway.js.map +1 -1
  281. package/features/folders/getFolderModel/GetFolderModelRepository.d.ts +2 -2
  282. package/features/folders/getFolderModel/GetFolderModelRepository.js.map +1 -1
  283. package/features/folders/getFolderModel/GetFolderModelUseCase.d.ts +2 -2
  284. package/features/folders/getFolderModel/GetFolderModelUseCase.js.map +1 -1
  285. package/features/folders/getFolderModel/IGetFolderModelGateway.d.ts +1 -1
  286. package/features/folders/getFolderModel/IGetFolderModelGateway.js.map +1 -1
  287. package/features/folders/getFolderModel/IGetFolderModelRepository.d.ts +1 -1
  288. package/features/folders/getFolderModel/IGetFolderModelRepository.js.map +1 -1
  289. package/features/folders/index.d.ts +1 -0
  290. package/features/folders/index.js +1 -0
  291. package/features/folders/index.js.map +1 -1
  292. package/features/folders/listFolders/FolderDto.d.ts +2 -2
  293. package/features/folders/listFolders/FolderDto.js.map +1 -1
  294. package/features/folders/listFolders/FolderGqlDto.d.ts +1 -1
  295. package/features/folders/listFolders/FolderGqlDto.js.map +1 -1
  296. package/features/folders/listFolders/IListFoldersGateway.d.ts +1 -1
  297. package/features/folders/listFolders/IListFoldersGateway.js.map +1 -1
  298. package/features/folders/listFolders/ListFolders.d.ts +5 -5
  299. package/features/folders/listFolders/ListFolders.js.map +1 -1
  300. package/features/folders/listFolders/ListFoldersCompressedGqlGateway.d.ts +3 -3
  301. package/features/folders/listFolders/ListFoldersCompressedGqlGateway.js.map +1 -1
  302. package/features/folders/listFolders/ListFoldersGqlGateway.d.ts +3 -3
  303. package/features/folders/listFolders/ListFoldersGqlGateway.js.map +1 -1
  304. package/features/folders/listFolders/ListFoldersRepository.d.ts +3 -3
  305. package/features/folders/listFolders/ListFoldersRepository.js.map +1 -1
  306. package/features/folders/listFolders/ListFoldersUseCase.d.ts +2 -2
  307. package/features/folders/listFolders/ListFoldersUseCase.js.map +1 -1
  308. package/features/folders/listFolders/ListFoldersUseCaseWithLoading.d.ts +2 -2
  309. package/features/folders/listFolders/ListFoldersUseCaseWithLoading.js.map +1 -1
  310. package/features/folders/listFolders/useListFolders.d.ts +1 -1
  311. package/features/folders/listFolders/useListFolders.js.map +1 -1
  312. package/features/folders/listFoldersByParentIds/FolderDto.d.ts +2 -2
  313. package/features/folders/listFoldersByParentIds/FolderDto.js.map +1 -1
  314. package/features/folders/listFoldersByParentIds/FolderGqlDto.d.ts +1 -1
  315. package/features/folders/listFoldersByParentIds/FolderGqlDto.js.map +1 -1
  316. package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.d.ts +1 -1
  317. package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.js.map +1 -1
  318. package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.d.ts +5 -5
  319. package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.js.map +1 -1
  320. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.d.ts +3 -3
  321. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.js.map +1 -1
  322. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.d.ts +3 -3
  323. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.js.map +1 -1
  324. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.d.ts +2 -2
  325. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.js.map +1 -1
  326. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.d.ts +2 -2
  327. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.js.map +1 -1
  328. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.d.ts +3 -3
  329. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.js.map +1 -1
  330. package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.d.ts +1 -1
  331. package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.js.map +1 -1
  332. package/features/folders/updateFolder/FolderDto.d.ts +1 -1
  333. package/features/folders/updateFolder/FolderDto.js.map +1 -1
  334. package/features/folders/updateFolder/FolderGqlDto.d.ts +1 -1
  335. package/features/folders/updateFolder/FolderGqlDto.js.map +1 -1
  336. package/features/folders/updateFolder/IUpdateFolderGateway.d.ts +2 -2
  337. package/features/folders/updateFolder/IUpdateFolderGateway.js.map +1 -1
  338. package/features/folders/updateFolder/IUpdateFolderRepository.d.ts +1 -1
  339. package/features/folders/updateFolder/IUpdateFolderRepository.js.map +1 -1
  340. package/features/folders/updateFolder/IUpdateFolderUseCase.d.ts +1 -1
  341. package/features/folders/updateFolder/IUpdateFolderUseCase.js.map +1 -1
  342. package/features/folders/updateFolder/UpdateFolder.d.ts +2 -2
  343. package/features/folders/updateFolder/UpdateFolder.js.map +1 -1
  344. package/features/folders/updateFolder/UpdateFolder.test.js.map +1 -1
  345. package/features/folders/updateFolder/UpdateFolderGqlGateway.d.ts +4 -4
  346. package/features/folders/updateFolder/UpdateFolderGqlGateway.js.map +1 -1
  347. package/features/folders/updateFolder/UpdateFolderRepository.d.ts +3 -3
  348. package/features/folders/updateFolder/UpdateFolderRepository.js.map +1 -1
  349. package/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange.d.ts +2 -2
  350. package/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange.js.map +1 -1
  351. package/features/folders/updateFolder/UpdateFolderRepositoryWithPermissionsChange.d.ts +2 -2
  352. package/features/folders/updateFolder/UpdateFolderRepositoryWithPermissionsChange.js.map +1 -1
  353. package/features/folders/updateFolder/UpdateFolderUseCase.d.ts +2 -2
  354. package/features/folders/updateFolder/UpdateFolderUseCase.js.map +1 -1
  355. package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.d.ts +2 -2
  356. package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.js.map +1 -1
  357. package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.d.ts +1 -1
  358. package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.js.map +1 -1
  359. package/features/folders/updateFolder/useUpdateFolder.d.ts +1 -1
  360. package/features/folders/updateFolder/useUpdateFolder.js.map +1 -1
  361. package/graphql/app.gql.d.ts +1 -1
  362. package/graphql/app.gql.js.map +1 -1
  363. package/graphql/records/common.d.ts +1 -1
  364. package/graphql/records/common.js.map +1 -1
  365. package/graphql/records/createRecord.d.ts +1 -1
  366. package/graphql/records/createRecord.js.map +1 -1
  367. package/graphql/records/deleteRecord.d.ts +1 -1
  368. package/graphql/records/deleteRecord.js.map +1 -1
  369. package/graphql/records/getRecord.d.ts +1 -1
  370. package/graphql/records/getRecord.js.map +1 -1
  371. package/graphql/records/listRecords.d.ts +1 -1
  372. package/graphql/records/listRecords.js.map +1 -1
  373. package/graphql/records/listTags.d.ts +1 -1
  374. package/graphql/records/listTags.js.map +1 -1
  375. package/graphql/records/moveRecord.d.ts +1 -1
  376. package/graphql/records/moveRecord.js.map +1 -1
  377. package/graphql/records/types.d.ts +1 -1
  378. package/graphql/records/types.js.map +1 -1
  379. package/graphql/records/updateRecord.d.ts +1 -1
  380. package/graphql/records/updateRecord.js.map +1 -1
  381. package/handlers.d.ts +4 -4
  382. package/handlers.js.map +1 -1
  383. package/hooks/useAcoApp.d.ts +1 -1
  384. package/hooks/useAcoApp.js.map +1 -1
  385. package/hooks/useAcoList.d.ts +2 -2
  386. package/hooks/useAcoList.js.map +1 -1
  387. package/hooks/useRecords.d.ts +2 -2
  388. package/hooks/useRecords.js.map +1 -1
  389. package/hooks/useTags.d.ts +1 -1
  390. package/hooks/useTags.js.map +1 -1
  391. package/index.d.ts +2 -0
  392. package/index.js +1 -0
  393. package/index.js.map +1 -1
  394. package/package.json +18 -18
  395. package/sorting.d.ts +1 -1
  396. package/sorting.js.map +1 -1
  397. package/table.types.d.ts +6 -4
  398. package/table.types.js.map +1 -1
  399. package/types.d.ts +2 -2
  400. package/types.js +0 -1
  401. package/types.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["LoadingActionsEnum","ListFoldersUseCaseWithLoading","constructor","loadingRepository","useCase","execute","runCallBack","list"],"sources":["ListFoldersUseCaseWithLoading.ts"],"sourcesContent":["import { ILoadingRepository } from \"@webiny/app-utils\";\nimport { LoadingActionsEnum } from \"~/types\";\nimport { IListFoldersUseCase } from \"./IListFoldersUseCase\";\n\nexport class ListFoldersUseCaseWithLoading implements IListFoldersUseCase {\n private loadingRepository: ILoadingRepository;\n private useCase: IListFoldersUseCase;\n\n constructor(loadingRepository: ILoadingRepository, useCase: IListFoldersUseCase) {\n this.loadingRepository = loadingRepository;\n this.useCase = useCase;\n }\n\n async execute() {\n await this.loadingRepository.runCallBack(this.useCase.execute(), LoadingActionsEnum.list);\n }\n}\n"],"mappings":"AACA,SAASA,kBAAkB;AAG3B,OAAO,MAAMC,6BAA6B,CAAgC;EAItEC,WAAWA,CAACC,iBAAqC,EAAEC,OAA4B,EAAE;IAC7E,IAAI,CAACD,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,OAAOA,CAAA,EAAG;IACZ,MAAM,IAAI,CAACF,iBAAiB,CAACG,WAAW,CAAC,IAAI,CAACF,OAAO,CAACC,OAAO,CAAC,CAAC,EAAEL,kBAAkB,CAACO,IAAI,CAAC;EAC7F;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["LoadingActionsEnum","ListFoldersUseCaseWithLoading","constructor","loadingRepository","useCase","execute","runCallBack","list"],"sources":["ListFoldersUseCaseWithLoading.ts"],"sourcesContent":["import type { ILoadingRepository } from \"@webiny/app-utils\";\nimport { LoadingActionsEnum } from \"~/types\";\nimport type { IListFoldersUseCase } from \"./IListFoldersUseCase\";\n\nexport class ListFoldersUseCaseWithLoading implements IListFoldersUseCase {\n private loadingRepository: ILoadingRepository;\n private useCase: IListFoldersUseCase;\n\n constructor(loadingRepository: ILoadingRepository, useCase: IListFoldersUseCase) {\n this.loadingRepository = loadingRepository;\n this.useCase = useCase;\n }\n\n async execute() {\n await this.loadingRepository.runCallBack(this.useCase.execute(), LoadingActionsEnum.list);\n }\n}\n"],"mappings":"AACA,SAASA,kBAAkB;AAG3B,OAAO,MAAMC,6BAA6B,CAAgC;EAItEC,WAAWA,CAACC,iBAAqC,EAAEC,OAA4B,EAAE;IAC7E,IAAI,CAACD,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,OAAOA,CAAA,EAAG;IACZ,MAAM,IAAI,CAACF,iBAAiB,CAACG,WAAW,CAAC,IAAI,CAACF,OAAO,CAACC,OAAO,CAAC,CAAC,EAAEL,kBAAkB,CAACO,IAAI,CAAC;EAC7F;AACJ","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { FolderItem } from "../../../types";
1
+ import type { FolderItem } from "../../../types";
2
2
  export declare const useListFolders: () => {
3
3
  listFolders: () => Promise<void>;
4
4
  folders: FolderItem[];
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useState","autorun","useApolloClient","ListFoldersGqlGateway","ListFolders","FolderDtoMapper","useFoldersType","useGetFolderGraphQLSelection","useListFolders","client","type","fields","gateway","vm","setVm","folders","loading","INIT","useCase","foldersCache","getInstance","listFolders","execute","getItems","map","folder","toDTO","loadingState","get"],"sources":["useListFolders.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { autorun } from \"mobx\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { ListFoldersGqlGateway } from \"./ListFoldersGqlGateway\";\nimport { ListFolders } from \"./ListFolders\";\nimport { FolderDtoMapper } from \"./FolderDto\";\nimport { useFoldersType, useGetFolderGraphQLSelection } from \"~/hooks\";\nimport { FolderItem } from \"~/types\";\n\nexport const useListFolders = () => {\n const client = useApolloClient();\n const type = useFoldersType();\n const fields = useGetFolderGraphQLSelection();\n const gateway = new ListFoldersGqlGateway(client, fields);\n\n const [vm, setVm] = useState<{\n folders: FolderItem[];\n loading: Record<string, boolean>;\n }>({\n folders: [],\n loading: {\n INIT: true\n }\n });\n\n const {\n useCase,\n folders: foldersCache,\n loading\n } = useMemo(() => {\n return ListFolders.getInstance(type, gateway);\n }, [type, gateway]);\n\n const listFolders = useCallback(() => {\n return useCase.execute();\n }, [useCase]);\n\n useEffect(() => {\n return autorun(() => {\n const folders = foldersCache.getItems().map(folder => FolderDtoMapper.toDTO(folder));\n\n setVm(vm => ({\n ...vm,\n folders\n }));\n });\n }, [foldersCache]);\n\n useEffect(() => {\n return autorun(() => {\n const loadingState = loading.get();\n\n setVm(vm => ({\n ...vm,\n loading: loadingState\n }));\n });\n }, [loading]);\n\n return {\n ...vm,\n listFolders\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACjE,SAASC,OAAO,QAAQ,MAAM;AAC9B,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,qBAAqB;AAC9B,SAASC,WAAW;AACpB,SAASC,eAAe;AACxB,SAASC,cAAc,EAAEC,4BAA4B;AAGrD,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAChC,MAAMC,MAAM,GAAGP,eAAe,CAAC,CAAC;EAChC,MAAMQ,IAAI,GAAGJ,cAAc,CAAC,CAAC;EAC7B,MAAMK,MAAM,GAAGJ,4BAA4B,CAAC,CAAC;EAC7C,MAAMK,OAAO,GAAG,IAAIT,qBAAqB,CAACM,MAAM,EAAEE,MAAM,CAAC;EAEzD,MAAM,CAACE,EAAE,EAAEC,KAAK,CAAC,GAAGd,QAAQ,CAGzB;IACCe,OAAO,EAAE,EAAE;IACXC,OAAO,EAAE;MACLC,IAAI,EAAE;IACV;EACJ,CAAC,CAAC;EAEF,MAAM;IACFC,OAAO;IACPH,OAAO,EAAEI,YAAY;IACrBH;EACJ,CAAC,GAAGjB,OAAO,CAAC,MAAM;IACd,OAAOK,WAAW,CAACgB,WAAW,CAACV,IAAI,EAAEE,OAAO,CAAC;EACjD,CAAC,EAAE,CAACF,IAAI,EAAEE,OAAO,CAAC,CAAC;EAEnB,MAAMS,WAAW,GAAGxB,WAAW,CAAC,MAAM;IAClC,OAAOqB,OAAO,CAACI,OAAO,CAAC,CAAC;EAC5B,CAAC,EAAE,CAACJ,OAAO,CAAC,CAAC;EAEbpB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAMc,OAAO,GAAGI,YAAY,CAACI,QAAQ,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,IAAIpB,eAAe,CAACqB,KAAK,CAACD,MAAM,CAAC,CAAC;MAEpFX,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLE;MACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACI,YAAY,CAAC,CAAC;EAElBrB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAM0B,YAAY,GAAGX,OAAO,CAACY,GAAG,CAAC,CAAC;MAElCd,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLG,OAAO,EAAEW;MACb,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACX,OAAO,CAAC,CAAC;EAEb,OAAO;IACH,GAAGH,EAAE;IACLQ;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useState","autorun","useApolloClient","ListFoldersGqlGateway","ListFolders","FolderDtoMapper","useFoldersType","useGetFolderGraphQLSelection","useListFolders","client","type","fields","gateway","vm","setVm","folders","loading","INIT","useCase","foldersCache","getInstance","listFolders","execute","getItems","map","folder","toDTO","loadingState","get"],"sources":["useListFolders.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { autorun } from \"mobx\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { ListFoldersGqlGateway } from \"./ListFoldersGqlGateway\";\nimport { ListFolders } from \"./ListFolders\";\nimport { FolderDtoMapper } from \"./FolderDto\";\nimport { useFoldersType, useGetFolderGraphQLSelection } from \"~/hooks\";\nimport type { FolderItem } from \"~/types\";\n\nexport const useListFolders = () => {\n const client = useApolloClient();\n const type = useFoldersType();\n const fields = useGetFolderGraphQLSelection();\n const gateway = new ListFoldersGqlGateway(client, fields);\n\n const [vm, setVm] = useState<{\n folders: FolderItem[];\n loading: Record<string, boolean>;\n }>({\n folders: [],\n loading: {\n INIT: true\n }\n });\n\n const {\n useCase,\n folders: foldersCache,\n loading\n } = useMemo(() => {\n return ListFolders.getInstance(type, gateway);\n }, [type, gateway]);\n\n const listFolders = useCallback(() => {\n return useCase.execute();\n }, [useCase]);\n\n useEffect(() => {\n return autorun(() => {\n const folders = foldersCache.getItems().map(folder => FolderDtoMapper.toDTO(folder));\n\n setVm(vm => ({\n ...vm,\n folders\n }));\n });\n }, [foldersCache]);\n\n useEffect(() => {\n return autorun(() => {\n const loadingState = loading.get();\n\n setVm(vm => ({\n ...vm,\n loading: loadingState\n }));\n });\n }, [loading]);\n\n return {\n ...vm,\n listFolders\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACjE,SAASC,OAAO,QAAQ,MAAM;AAC9B,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,qBAAqB;AAC9B,SAASC,WAAW;AACpB,SAASC,eAAe;AACxB,SAASC,cAAc,EAAEC,4BAA4B;AAGrD,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAChC,MAAMC,MAAM,GAAGP,eAAe,CAAC,CAAC;EAChC,MAAMQ,IAAI,GAAGJ,cAAc,CAAC,CAAC;EAC7B,MAAMK,MAAM,GAAGJ,4BAA4B,CAAC,CAAC;EAC7C,MAAMK,OAAO,GAAG,IAAIT,qBAAqB,CAACM,MAAM,EAAEE,MAAM,CAAC;EAEzD,MAAM,CAACE,EAAE,EAAEC,KAAK,CAAC,GAAGd,QAAQ,CAGzB;IACCe,OAAO,EAAE,EAAE;IACXC,OAAO,EAAE;MACLC,IAAI,EAAE;IACV;EACJ,CAAC,CAAC;EAEF,MAAM;IACFC,OAAO;IACPH,OAAO,EAAEI,YAAY;IACrBH;EACJ,CAAC,GAAGjB,OAAO,CAAC,MAAM;IACd,OAAOK,WAAW,CAACgB,WAAW,CAACV,IAAI,EAAEE,OAAO,CAAC;EACjD,CAAC,EAAE,CAACF,IAAI,EAAEE,OAAO,CAAC,CAAC;EAEnB,MAAMS,WAAW,GAAGxB,WAAW,CAAC,MAAM;IAClC,OAAOqB,OAAO,CAACI,OAAO,CAAC,CAAC;EAC5B,CAAC,EAAE,CAACJ,OAAO,CAAC,CAAC;EAEbpB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAMc,OAAO,GAAGI,YAAY,CAACI,QAAQ,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,IAAIpB,eAAe,CAACqB,KAAK,CAACD,MAAM,CAAC,CAAC;MAEpFX,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLE;MACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACI,YAAY,CAAC,CAAC;EAElBrB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAM0B,YAAY,GAAGX,OAAO,CAACY,GAAG,CAAC,CAAC;MAElCd,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLG,OAAO,EAAEW;MACb,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACX,OAAO,CAAC,CAAC;EAEb,OAAO;IACH,GAAGH,EAAE;IACLQ;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { CmsIdentity, FolderPermission } from "../../../types";
2
- import { Folder } from "../Folder";
1
+ import type { CmsIdentity, FolderPermission } from "../../../types";
2
+ import type { Folder } from "../Folder";
3
3
  export interface FolderDto {
4
4
  id: string;
5
5
  title: string;
@@ -1 +1 @@
1
- {"version":3,"names":["ROOT_FOLDER","FolderDtoMapper","toDTO","folder","id","title","canManageContent","canManagePermissions","canManageStructure","createdBy","createIdentity","createdOn","hasNonInheritedPermissions","modifiedBy","modifiedOn","parentId","path","permissions","savedBy","savedOn","slug","type","extensions","identity","displayName"],"sources":["FolderDto.ts"],"sourcesContent":["import { CmsIdentity, FolderPermission } from \"~/types\";\nimport { Folder } from \"../Folder\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface FolderDto {\n id: string;\n title: string;\n slug: string;\n type: string;\n parentId: string;\n path: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions: boolean;\n canManagePermissions: boolean;\n canManageStructure: boolean;\n canManageContent: boolean;\n createdBy: CmsIdentity;\n createdOn: string;\n savedBy: CmsIdentity;\n savedOn: string;\n modifiedBy: CmsIdentity;\n modifiedOn: string;\n extensions: Record<string, any>;\n}\n\nexport class FolderDtoMapper {\n static toDTO(folder: Folder): FolderDto {\n return {\n id: folder.id,\n title: folder.title,\n canManageContent: folder.canManageContent ?? false,\n canManagePermissions: folder.canManagePermissions ?? false,\n canManageStructure: folder.canManageStructure ?? false,\n createdBy: this.createIdentity(folder.createdBy),\n createdOn: folder.createdOn ?? \"\",\n hasNonInheritedPermissions: folder.hasNonInheritedPermissions ?? false,\n modifiedBy: this.createIdentity(folder.modifiedBy),\n modifiedOn: folder.modifiedOn ?? \"\",\n parentId: folder.parentId ?? ROOT_FOLDER,\n path: folder.path,\n permissions: folder.permissions ?? [],\n savedBy: this.createIdentity(folder.savedBy),\n savedOn: folder.savedOn ?? \"\",\n slug: folder.slug,\n type: folder.type,\n extensions: folder.extensions ?? {}\n };\n }\n\n private static createIdentity(identity?: CmsIdentity | null): CmsIdentity {\n return {\n id: identity?.id || \"\",\n displayName: identity?.displayName || \"\",\n type: identity?.type || \"\"\n };\n }\n}\n"],"mappings":"AAEA,SAASA,WAAW;AAuBpB,OAAO,MAAMC,eAAe,CAAC;EACzB,OAAOC,KAAKA,CAACC,MAAc,EAAa;IACpC,OAAO;MACHC,EAAE,EAAED,MAAM,CAACC,EAAE;MACbC,KAAK,EAAEF,MAAM,CAACE,KAAK;MACnBC,gBAAgB,EAAEH,MAAM,CAACG,gBAAgB,IAAI,KAAK;MAClDC,oBAAoB,EAAEJ,MAAM,CAACI,oBAAoB,IAAI,KAAK;MAC1DC,kBAAkB,EAAEL,MAAM,CAACK,kBAAkB,IAAI,KAAK;MACtDC,SAAS,EAAE,IAAI,CAACC,cAAc,CAACP,MAAM,CAACM,SAAS,CAAC;MAChDE,SAAS,EAAER,MAAM,CAACQ,SAAS,IAAI,EAAE;MACjCC,0BAA0B,EAAET,MAAM,CAACS,0BAA0B,IAAI,KAAK;MACtEC,UAAU,EAAE,IAAI,CAACH,cAAc,CAACP,MAAM,CAACU,UAAU,CAAC;MAClDC,UAAU,EAAEX,MAAM,CAACW,UAAU,IAAI,EAAE;MACnCC,QAAQ,EAAEZ,MAAM,CAACY,QAAQ,IAAIf,WAAW;MACxCgB,IAAI,EAAEb,MAAM,CAACa,IAAI;MACjBC,WAAW,EAAEd,MAAM,CAACc,WAAW,IAAI,EAAE;MACrCC,OAAO,EAAE,IAAI,CAACR,cAAc,CAACP,MAAM,CAACe,OAAO,CAAC;MAC5CC,OAAO,EAAEhB,MAAM,CAACgB,OAAO,IAAI,EAAE;MAC7BC,IAAI,EAAEjB,MAAM,CAACiB,IAAI;MACjBC,IAAI,EAAElB,MAAM,CAACkB,IAAI;MACjBC,UAAU,EAAEnB,MAAM,CAACmB,UAAU,IAAI,CAAC;IACtC,CAAC;EACL;EAEA,OAAeZ,cAAcA,CAACa,QAA6B,EAAe;IACtE,OAAO;MACHnB,EAAE,EAAEmB,QAAQ,EAAEnB,EAAE,IAAI,EAAE;MACtBoB,WAAW,EAAED,QAAQ,EAAEC,WAAW,IAAI,EAAE;MACxCH,IAAI,EAAEE,QAAQ,EAAEF,IAAI,IAAI;IAC5B,CAAC;EACL;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["ROOT_FOLDER","FolderDtoMapper","toDTO","folder","id","title","canManageContent","canManagePermissions","canManageStructure","createdBy","createIdentity","createdOn","hasNonInheritedPermissions","modifiedBy","modifiedOn","parentId","path","permissions","savedBy","savedOn","slug","type","extensions","identity","displayName"],"sources":["FolderDto.ts"],"sourcesContent":["import type { CmsIdentity, FolderPermission } from \"~/types\";\nimport type { Folder } from \"../Folder\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface FolderDto {\n id: string;\n title: string;\n slug: string;\n type: string;\n parentId: string;\n path: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions: boolean;\n canManagePermissions: boolean;\n canManageStructure: boolean;\n canManageContent: boolean;\n createdBy: CmsIdentity;\n createdOn: string;\n savedBy: CmsIdentity;\n savedOn: string;\n modifiedBy: CmsIdentity;\n modifiedOn: string;\n extensions: Record<string, any>;\n}\n\nexport class FolderDtoMapper {\n static toDTO(folder: Folder): FolderDto {\n return {\n id: folder.id,\n title: folder.title,\n canManageContent: folder.canManageContent ?? false,\n canManagePermissions: folder.canManagePermissions ?? false,\n canManageStructure: folder.canManageStructure ?? false,\n createdBy: this.createIdentity(folder.createdBy),\n createdOn: folder.createdOn ?? \"\",\n hasNonInheritedPermissions: folder.hasNonInheritedPermissions ?? false,\n modifiedBy: this.createIdentity(folder.modifiedBy),\n modifiedOn: folder.modifiedOn ?? \"\",\n parentId: folder.parentId ?? ROOT_FOLDER,\n path: folder.path,\n permissions: folder.permissions ?? [],\n savedBy: this.createIdentity(folder.savedBy),\n savedOn: folder.savedOn ?? \"\",\n slug: folder.slug,\n type: folder.type,\n extensions: folder.extensions ?? {}\n };\n }\n\n private static createIdentity(identity?: CmsIdentity | null): CmsIdentity {\n return {\n id: identity?.id || \"\",\n displayName: identity?.displayName || \"\",\n type: identity?.type || \"\"\n };\n }\n}\n"],"mappings":"AAEA,SAASA,WAAW;AAuBpB,OAAO,MAAMC,eAAe,CAAC;EACzB,OAAOC,KAAKA,CAACC,MAAc,EAAa;IACpC,OAAO;MACHC,EAAE,EAAED,MAAM,CAACC,EAAE;MACbC,KAAK,EAAEF,MAAM,CAACE,KAAK;MACnBC,gBAAgB,EAAEH,MAAM,CAACG,gBAAgB,IAAI,KAAK;MAClDC,oBAAoB,EAAEJ,MAAM,CAACI,oBAAoB,IAAI,KAAK;MAC1DC,kBAAkB,EAAEL,MAAM,CAACK,kBAAkB,IAAI,KAAK;MACtDC,SAAS,EAAE,IAAI,CAACC,cAAc,CAACP,MAAM,CAACM,SAAS,CAAC;MAChDE,SAAS,EAAER,MAAM,CAACQ,SAAS,IAAI,EAAE;MACjCC,0BAA0B,EAAET,MAAM,CAACS,0BAA0B,IAAI,KAAK;MACtEC,UAAU,EAAE,IAAI,CAACH,cAAc,CAACP,MAAM,CAACU,UAAU,CAAC;MAClDC,UAAU,EAAEX,MAAM,CAACW,UAAU,IAAI,EAAE;MACnCC,QAAQ,EAAEZ,MAAM,CAACY,QAAQ,IAAIf,WAAW;MACxCgB,IAAI,EAAEb,MAAM,CAACa,IAAI;MACjBC,WAAW,EAAEd,MAAM,CAACc,WAAW,IAAI,EAAE;MACrCC,OAAO,EAAE,IAAI,CAACR,cAAc,CAACP,MAAM,CAACe,OAAO,CAAC;MAC5CC,OAAO,EAAEhB,MAAM,CAACgB,OAAO,IAAI,EAAE;MAC7BC,IAAI,EAAEjB,MAAM,CAACiB,IAAI;MACjBC,IAAI,EAAElB,MAAM,CAACkB,IAAI;MACjBC,UAAU,EAAEnB,MAAM,CAACmB,UAAU,IAAI,CAAC;IACtC,CAAC;EACL;EAEA,OAAeZ,cAAcA,CAACa,QAA6B,EAAe;IACtE,OAAO;MACHnB,EAAE,EAAEmB,QAAQ,EAAEnB,EAAE,IAAI,EAAE;MACtBoB,WAAW,EAAED,QAAQ,EAAEC,WAAW,IAAI,EAAE;MACxCH,IAAI,EAAEE,QAAQ,EAAEF,IAAI,IAAI;IAC5B,CAAC;EACL;AACJ","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { CmsIdentity, FolderPermission } from "../../../types";
1
+ import type { CmsIdentity, FolderPermission } from "../../../types";
2
2
  export interface FolderGqlDto {
3
3
  id: string;
4
4
  title: string;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["FolderGqlDto.ts"],"sourcesContent":["import { CmsIdentity, FolderPermission } from \"~/types\";\n\nexport interface FolderGqlDto {\n id: string;\n title: string;\n slug: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions: boolean;\n canManagePermissions: boolean;\n canManageStructure: boolean;\n canManageContent: boolean;\n type: string;\n parentId: string | null;\n path: string;\n createdBy: CmsIdentity;\n createdOn: string;\n savedBy: CmsIdentity;\n savedOn: string;\n modifiedBy: CmsIdentity | null;\n modifiedOn: string | null;\n extensions: Record<string, any>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["FolderGqlDto.ts"],"sourcesContent":["import type { CmsIdentity, FolderPermission } from \"~/types\";\n\nexport interface FolderGqlDto {\n id: string;\n title: string;\n slug: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions: boolean;\n canManagePermissions: boolean;\n canManageStructure: boolean;\n canManageContent: boolean;\n type: string;\n parentId: string | null;\n path: string;\n createdBy: CmsIdentity;\n createdOn: string;\n savedBy: CmsIdentity;\n savedOn: string;\n modifiedBy: CmsIdentity | null;\n modifiedOn: string | null;\n extensions: Record<string, any>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { FolderGqlDto } from "./FolderGqlDto";
1
+ import type { FolderGqlDto } from "./FolderGqlDto";
2
2
  export interface ListFoldersByParentIdsGatewayParams {
3
3
  type: string;
4
4
  parentIds: string[];
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["IListFoldersByParentIdsGateway.ts"],"sourcesContent":["import { FolderGqlDto } from \"./FolderGqlDto\";\n\nexport interface ListFoldersByParentIdsGatewayParams {\n type: string;\n parentIds: string[];\n}\n\nexport interface IListFoldersByParentIdsGateway {\n execute: (params: ListFoldersByParentIdsGatewayParams) => Promise<FolderGqlDto[]>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["IListFoldersByParentIdsGateway.ts"],"sourcesContent":["import type { FolderGqlDto } from \"./FolderGqlDto\";\n\nexport interface ListFoldersByParentIdsGatewayParams {\n type: string;\n parentIds: string[];\n}\n\nexport interface IListFoldersByParentIdsGateway {\n execute: (params: ListFoldersByParentIdsGatewayParams) => Promise<FolderGqlDto[]>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,8 +1,8 @@
1
- import { LoadingRepository } from "@webiny/app-utils";
2
- import { IListFoldersByParentIdsGateway } from "./IListFoldersByParentIdsGateway";
3
- import { IListFoldersByParentIdsUseCase } from "./IListFoldersByParentIdsUseCase";
4
- import { ListCache } from "../cache";
5
- import { Folder } from "../Folder";
1
+ import type { LoadingRepository } from "@webiny/app-utils";
2
+ import type { IListFoldersByParentIdsGateway } from "./IListFoldersByParentIdsGateway";
3
+ import type { IListFoldersByParentIdsUseCase } from "./IListFoldersByParentIdsUseCase";
4
+ import type { ListCache } from "../cache";
5
+ import type { Folder } from "../Folder";
6
6
  interface IListFoldersByParentIdsInstance {
7
7
  useCase: IListFoldersByParentIdsUseCase;
8
8
  folders: ListCache<Folder>;
@@ -1 +1 @@
1
- {"version":3,"names":["loadingRepositoryFactory","ListFoldersByParentIdsRepository","ListFoldersByParentIdsRepositoryWithLoadedCache","ListFoldersByParentIdsUseCase","folderCacheFactory","loadedFolderCacheFactory","ListFoldersByParentIdsUseCaseWithLoading","ListFoldersByParentIds","getInstance","type","gateway","foldersCache","getCache","loadedCache","loadingRepository","getRepository","repository","repositoryWithLoadedCache","useCase","useCaseWithLoading","folders","loading"],"sources":["ListFoldersByParentIds.ts"],"sourcesContent":["import { LoadingRepository, loadingRepositoryFactory } from \"@webiny/app-utils\";\nimport { IListFoldersByParentIdsGateway } from \"./IListFoldersByParentIdsGateway\";\nimport { IListFoldersByParentIdsUseCase } from \"./IListFoldersByParentIdsUseCase\";\nimport { ListFoldersByParentIdsRepository } from \"./ListFoldersByParentIdsRepository\";\nimport { ListFoldersByParentIdsRepositoryWithLoadedCache } from \"./ListFoldersByParentIdsRepositoryWithLoadedCache\";\nimport { ListFoldersByParentIdsUseCase } from \"./ListFoldersByParentIdsUseCase\";\nimport { folderCacheFactory, ListCache, loadedFolderCacheFactory } from \"../cache\";\nimport { Folder } from \"../Folder\";\nimport { ListFoldersByParentIdsUseCaseWithLoading } from \"~/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading\";\n\ninterface IListFoldersByParentIdsInstance {\n useCase: IListFoldersByParentIdsUseCase;\n folders: ListCache<Folder>;\n loading: LoadingRepository;\n}\n\nexport class ListFoldersByParentIds {\n public static getInstance(\n type: string,\n gateway: IListFoldersByParentIdsGateway\n ): IListFoldersByParentIdsInstance {\n const foldersCache = folderCacheFactory.getCache(type);\n const loadedCache = loadedFolderCacheFactory.getCache(type);\n const loadingRepository = loadingRepositoryFactory.getRepository(type);\n const repository = new ListFoldersByParentIdsRepository(foldersCache, gateway, type);\n const repositoryWithLoadedCache = new ListFoldersByParentIdsRepositoryWithLoadedCache(\n loadedCache,\n repository\n );\n const useCase = new ListFoldersByParentIdsUseCase(repositoryWithLoadedCache);\n const useCaseWithLoading = new ListFoldersByParentIdsUseCaseWithLoading(\n loadingRepository,\n loadedCache,\n useCase\n );\n\n return {\n useCase: useCaseWithLoading,\n folders: foldersCache,\n loading: loadingRepository\n };\n }\n}\n"],"mappings":"AAAA,SAA4BA,wBAAwB,QAAQ,mBAAmB;AAG/E,SAASC,gCAAgC;AACzC,SAASC,+CAA+C;AACxD,SAASC,6BAA6B;AACtC,SAASC,kBAAkB,EAAaC,wBAAwB;AAEhE,SAASC,wCAAwC;AAQjD,OAAO,MAAMC,sBAAsB,CAAC;EAChC,OAAcC,WAAWA,CACrBC,IAAY,EACZC,OAAuC,EACR;IAC/B,MAAMC,YAAY,GAAGP,kBAAkB,CAACQ,QAAQ,CAACH,IAAI,CAAC;IACtD,MAAMI,WAAW,GAAGR,wBAAwB,CAACO,QAAQ,CAACH,IAAI,CAAC;IAC3D,MAAMK,iBAAiB,GAAGd,wBAAwB,CAACe,aAAa,CAACN,IAAI,CAAC;IACtE,MAAMO,UAAU,GAAG,IAAIf,gCAAgC,CAACU,YAAY,EAAED,OAAO,EAAED,IAAI,CAAC;IACpF,MAAMQ,yBAAyB,GAAG,IAAIf,+CAA+C,CACjFW,WAAW,EACXG,UACJ,CAAC;IACD,MAAME,OAAO,GAAG,IAAIf,6BAA6B,CAACc,yBAAyB,CAAC;IAC5E,MAAME,kBAAkB,GAAG,IAAIb,wCAAwC,CACnEQ,iBAAiB,EACjBD,WAAW,EACXK,OACJ,CAAC;IAED,OAAO;MACHA,OAAO,EAAEC,kBAAkB;MAC3BC,OAAO,EAAET,YAAY;MACrBU,OAAO,EAAEP;IACb,CAAC;EACL;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["loadingRepositoryFactory","ListFoldersByParentIdsRepository","ListFoldersByParentIdsRepositoryWithLoadedCache","ListFoldersByParentIdsUseCase","folderCacheFactory","loadedFolderCacheFactory","ListFoldersByParentIdsUseCaseWithLoading","ListFoldersByParentIds","getInstance","type","gateway","foldersCache","getCache","loadedCache","loadingRepository","getRepository","repository","repositoryWithLoadedCache","useCase","useCaseWithLoading","folders","loading"],"sources":["ListFoldersByParentIds.ts"],"sourcesContent":["import type { LoadingRepository } from \"@webiny/app-utils\";\nimport { loadingRepositoryFactory } from \"@webiny/app-utils\";\nimport type { IListFoldersByParentIdsGateway } from \"./IListFoldersByParentIdsGateway\";\nimport type { IListFoldersByParentIdsUseCase } from \"./IListFoldersByParentIdsUseCase\";\nimport { ListFoldersByParentIdsRepository } from \"./ListFoldersByParentIdsRepository\";\nimport { ListFoldersByParentIdsRepositoryWithLoadedCache } from \"./ListFoldersByParentIdsRepositoryWithLoadedCache\";\nimport { ListFoldersByParentIdsUseCase } from \"./ListFoldersByParentIdsUseCase\";\nimport type { ListCache } from \"../cache\";\nimport { folderCacheFactory, loadedFolderCacheFactory } from \"../cache\";\nimport type { Folder } from \"../Folder\";\nimport { ListFoldersByParentIdsUseCaseWithLoading } from \"~/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading\";\n\ninterface IListFoldersByParentIdsInstance {\n useCase: IListFoldersByParentIdsUseCase;\n folders: ListCache<Folder>;\n loading: LoadingRepository;\n}\n\nexport class ListFoldersByParentIds {\n public static getInstance(\n type: string,\n gateway: IListFoldersByParentIdsGateway\n ): IListFoldersByParentIdsInstance {\n const foldersCache = folderCacheFactory.getCache(type);\n const loadedCache = loadedFolderCacheFactory.getCache(type);\n const loadingRepository = loadingRepositoryFactory.getRepository(type);\n const repository = new ListFoldersByParentIdsRepository(foldersCache, gateway, type);\n const repositoryWithLoadedCache = new ListFoldersByParentIdsRepositoryWithLoadedCache(\n loadedCache,\n repository\n );\n const useCase = new ListFoldersByParentIdsUseCase(repositoryWithLoadedCache);\n const useCaseWithLoading = new ListFoldersByParentIdsUseCaseWithLoading(\n loadingRepository,\n loadedCache,\n useCase\n );\n\n return {\n useCase: useCaseWithLoading,\n folders: foldersCache,\n loading: loadingRepository\n };\n }\n}\n"],"mappings":"AACA,SAASA,wBAAwB,QAAQ,mBAAmB;AAG5D,SAASC,gCAAgC;AACzC,SAASC,+CAA+C;AACxD,SAASC,6BAA6B;AAEtC,SAASC,kBAAkB,EAAEC,wBAAwB;AAErD,SAASC,wCAAwC;AAQjD,OAAO,MAAMC,sBAAsB,CAAC;EAChC,OAAcC,WAAWA,CACrBC,IAAY,EACZC,OAAuC,EACR;IAC/B,MAAMC,YAAY,GAAGP,kBAAkB,CAACQ,QAAQ,CAACH,IAAI,CAAC;IACtD,MAAMI,WAAW,GAAGR,wBAAwB,CAACO,QAAQ,CAACH,IAAI,CAAC;IAC3D,MAAMK,iBAAiB,GAAGd,wBAAwB,CAACe,aAAa,CAACN,IAAI,CAAC;IACtE,MAAMO,UAAU,GAAG,IAAIf,gCAAgC,CAACU,YAAY,EAAED,OAAO,EAAED,IAAI,CAAC;IACpF,MAAMQ,yBAAyB,GAAG,IAAIf,+CAA+C,CACjFW,WAAW,EACXG,UACJ,CAAC;IACD,MAAME,OAAO,GAAG,IAAIf,6BAA6B,CAACc,yBAAyB,CAAC;IAC5E,MAAME,kBAAkB,GAAG,IAAIb,wCAAwC,CACnEQ,iBAAiB,EACjBD,WAAW,EACXK,OACJ,CAAC;IAED,OAAO;MACHA,OAAO,EAAEC,kBAAkB;MAC3BC,OAAO,EAAET,YAAY;MACrBU,OAAO,EAAEP;IACb,CAAC;EACL;AACJ","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import ApolloClient from "apollo-client";
2
- import { IListFoldersByParentIdsGateway, ListFoldersByParentIdsGatewayParams } from "./IListFoldersByParentIdsGateway";
3
- import { AcoError, FolderItem } from "../../../types";
1
+ import type ApolloClient from "apollo-client";
2
+ import type { IListFoldersByParentIdsGateway, ListFoldersByParentIdsGatewayParams } from "./IListFoldersByParentIdsGateway";
3
+ import type { AcoError, FolderItem } from "../../../types";
4
4
  export interface ListFoldersByParentIdsResponse {
5
5
  aco: {
6
6
  listFolders: {
@@ -1 +1 @@
1
- {"version":3,"names":["gql","ROOT_FOLDER","LIST_FOLDERS_BY_PARENT_IDS","FOLDER_FIELDS","ListFoldersByParentIdsGqlGateway","constructor","client","modelFields","execute","parentIds","params","data","response","query","variables","parentIds_in","limit","fetchPolicy","Error","error","aco","listFolders","message","getRootFolder","id","title","permissions","parentId","path","slug","createdOn","createdBy","displayName","type","hasNonInheritedPermissions","canManagePermissions","canManageStructure","canManageContent","savedOn","savedBy","modifiedOn","modifiedBy","extensions"],"sources":["ListFoldersByParentIdsGqlGateway.ts"],"sourcesContent":["import ApolloClient from \"apollo-client\";\nimport gql from \"graphql-tag\";\nimport {\n IListFoldersByParentIdsGateway,\n ListFoldersByParentIdsGatewayParams\n} from \"./IListFoldersByParentIdsGateway\";\nimport { AcoError, FolderItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface ListFoldersByParentIdsResponse {\n aco: {\n listFolders: {\n data: FolderItem[] | null;\n error: AcoError | null;\n };\n };\n}\n\nexport interface ListFoldersByParentIdsQueryVariables {\n type: string;\n parentIds_in: string[];\n limit: number;\n sort?: Record<string, any>;\n after?: string | null;\n}\n\nexport const LIST_FOLDERS_BY_PARENT_IDS = (FOLDER_FIELDS: string) => gql`\n query ListFoldersByParentIds($type: String!, $parentIds_in: [ID!]!, $limit: Int!) {\n aco {\n listFolders(where: { type: $type, parentId_in: $parentIds_in }, limit: $limit) {\n data ${FOLDER_FIELDS}\n error {\n code\n data\n message\n }\n }\n }\n }\n`;\n\nexport class ListFoldersByParentIdsGqlGateway implements IListFoldersByParentIdsGateway {\n private client: ApolloClient<any>;\n private modelFields: string;\n\n constructor(client: ApolloClient<any>, modelFields: string) {\n this.client = client;\n this.modelFields = modelFields;\n }\n\n async execute({ parentIds, ...params }: ListFoldersByParentIdsGatewayParams) {\n const { data: response } = await this.client.query<\n ListFoldersByParentIdsResponse,\n ListFoldersByParentIdsQueryVariables\n >({\n query: LIST_FOLDERS_BY_PARENT_IDS(this.modelFields),\n variables: {\n ...params,\n parentIds_in: parentIds,\n limit: 10000\n },\n fetchPolicy: \"network-only\"\n });\n\n if (!response) {\n throw new Error(\"Network error while listing folders.\");\n }\n\n const { data, error } = response.aco.listFolders;\n\n if (!data) {\n throw new Error(error?.message || \"Could not fetch folders\");\n }\n\n return [this.getRootFolder(), ...(data || [])];\n }\n\n private getRootFolder(): FolderItem {\n return {\n id: ROOT_FOLDER,\n title: \"Home\",\n permissions: [],\n parentId: \"0\",\n path: ROOT_FOLDER,\n slug: \"\",\n createdOn: \"\",\n createdBy: {\n id: \"\",\n displayName: \"\",\n type: \"\"\n },\n hasNonInheritedPermissions: false,\n canManagePermissions: true,\n canManageStructure: true,\n canManageContent: true,\n savedOn: \"\",\n savedBy: {\n id: \"\",\n displayName: \"\",\n type: \"\"\n },\n modifiedOn: null,\n modifiedBy: null,\n type: \"$ROOT\",\n extensions: {}\n };\n }\n}\n"],"mappings":"AACA,OAAOA,GAAG,MAAM,aAAa;AAM7B,SAASC,WAAW;AAmBpB,OAAO,MAAMC,0BAA0B,GAAIC,aAAqB,IAAKH,GAAG;AACxE;AACA;AACA;AACA,uBAAuBG,aAAa;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMC,gCAAgC,CAA2C;EAIpFC,WAAWA,CAACC,MAAyB,EAAEC,WAAmB,EAAE;IACxD,IAAI,CAACD,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,WAAW,GAAGA,WAAW;EAClC;EAEA,MAAMC,OAAOA,CAAC;IAAEC,SAAS;IAAE,GAAGC;EAA4C,CAAC,EAAE;IACzE,MAAM;MAAEC,IAAI,EAAEC;IAAS,CAAC,GAAG,MAAM,IAAI,CAACN,MAAM,CAACO,KAAK,CAGhD;MACEA,KAAK,EAAEX,0BAA0B,CAAC,IAAI,CAACK,WAAW,CAAC;MACnDO,SAAS,EAAE;QACP,GAAGJ,MAAM;QACTK,YAAY,EAAEN,SAAS;QACvBO,KAAK,EAAE;MACX,CAAC;MACDC,WAAW,EAAE;IACjB,CAAC,CAAC;IAEF,IAAI,CAACL,QAAQ,EAAE;MACX,MAAM,IAAIM,KAAK,CAAC,sCAAsC,CAAC;IAC3D;IAEA,MAAM;MAAEP,IAAI;MAAEQ;IAAM,CAAC,GAAGP,QAAQ,CAACQ,GAAG,CAACC,WAAW;IAEhD,IAAI,CAACV,IAAI,EAAE;MACP,MAAM,IAAIO,KAAK,CAACC,KAAK,EAAEG,OAAO,IAAI,yBAAyB,CAAC;IAChE;IAEA,OAAO,CAAC,IAAI,CAACC,aAAa,CAAC,CAAC,EAAE,IAAIZ,IAAI,IAAI,EAAE,CAAC,CAAC;EAClD;EAEQY,aAAaA,CAAA,EAAe;IAChC,OAAO;MACHC,EAAE,EAAEvB,WAAW;MACfwB,KAAK,EAAE,MAAM;MACbC,WAAW,EAAE,EAAE;MACfC,QAAQ,EAAE,GAAG;MACbC,IAAI,EAAE3B,WAAW;MACjB4B,IAAI,EAAE,EAAE;MACRC,SAAS,EAAE,EAAE;MACbC,SAAS,EAAE;QACPP,EAAE,EAAE,EAAE;QACNQ,WAAW,EAAE,EAAE;QACfC,IAAI,EAAE;MACV,CAAC;MACDC,0BAA0B,EAAE,KAAK;MACjCC,oBAAoB,EAAE,IAAI;MAC1BC,kBAAkB,EAAE,IAAI;MACxBC,gBAAgB,EAAE,IAAI;MACtBC,OAAO,EAAE,EAAE;MACXC,OAAO,EAAE;QACLf,EAAE,EAAE,EAAE;QACNQ,WAAW,EAAE,EAAE;QACfC,IAAI,EAAE;MACV,CAAC;MACDO,UAAU,EAAE,IAAI;MAChBC,UAAU,EAAE,IAAI;MAChBR,IAAI,EAAE,OAAO;MACbS,UAAU,EAAE,CAAC;IACjB,CAAC;EACL;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["gql","ROOT_FOLDER","LIST_FOLDERS_BY_PARENT_IDS","FOLDER_FIELDS","ListFoldersByParentIdsGqlGateway","constructor","client","modelFields","execute","parentIds","params","data","response","query","variables","parentIds_in","limit","fetchPolicy","Error","error","aco","listFolders","message","getRootFolder","id","title","permissions","parentId","path","slug","createdOn","createdBy","displayName","type","hasNonInheritedPermissions","canManagePermissions","canManageStructure","canManageContent","savedOn","savedBy","modifiedOn","modifiedBy","extensions"],"sources":["ListFoldersByParentIdsGqlGateway.ts"],"sourcesContent":["import type ApolloClient from \"apollo-client\";\nimport gql from \"graphql-tag\";\nimport type {\n IListFoldersByParentIdsGateway,\n ListFoldersByParentIdsGatewayParams\n} from \"./IListFoldersByParentIdsGateway\";\nimport type { AcoError, FolderItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface ListFoldersByParentIdsResponse {\n aco: {\n listFolders: {\n data: FolderItem[] | null;\n error: AcoError | null;\n };\n };\n}\n\nexport interface ListFoldersByParentIdsQueryVariables {\n type: string;\n parentIds_in: string[];\n limit: number;\n sort?: Record<string, any>;\n after?: string | null;\n}\n\nexport const LIST_FOLDERS_BY_PARENT_IDS = (FOLDER_FIELDS: string) => gql`\n query ListFoldersByParentIds($type: String!, $parentIds_in: [ID!]!, $limit: Int!) {\n aco {\n listFolders(where: { type: $type, parentId_in: $parentIds_in }, limit: $limit) {\n data ${FOLDER_FIELDS}\n error {\n code\n data\n message\n }\n }\n }\n }\n`;\n\nexport class ListFoldersByParentIdsGqlGateway implements IListFoldersByParentIdsGateway {\n private client: ApolloClient<any>;\n private modelFields: string;\n\n constructor(client: ApolloClient<any>, modelFields: string) {\n this.client = client;\n this.modelFields = modelFields;\n }\n\n async execute({ parentIds, ...params }: ListFoldersByParentIdsGatewayParams) {\n const { data: response } = await this.client.query<\n ListFoldersByParentIdsResponse,\n ListFoldersByParentIdsQueryVariables\n >({\n query: LIST_FOLDERS_BY_PARENT_IDS(this.modelFields),\n variables: {\n ...params,\n parentIds_in: parentIds,\n limit: 10000\n },\n fetchPolicy: \"network-only\"\n });\n\n if (!response) {\n throw new Error(\"Network error while listing folders.\");\n }\n\n const { data, error } = response.aco.listFolders;\n\n if (!data) {\n throw new Error(error?.message || \"Could not fetch folders\");\n }\n\n return [this.getRootFolder(), ...(data || [])];\n }\n\n private getRootFolder(): FolderItem {\n return {\n id: ROOT_FOLDER,\n title: \"Home\",\n permissions: [],\n parentId: \"0\",\n path: ROOT_FOLDER,\n slug: \"\",\n createdOn: \"\",\n createdBy: {\n id: \"\",\n displayName: \"\",\n type: \"\"\n },\n hasNonInheritedPermissions: false,\n canManagePermissions: true,\n canManageStructure: true,\n canManageContent: true,\n savedOn: \"\",\n savedBy: {\n id: \"\",\n displayName: \"\",\n type: \"\"\n },\n modifiedOn: null,\n modifiedBy: null,\n type: \"$ROOT\",\n extensions: {}\n };\n }\n}\n"],"mappings":"AACA,OAAOA,GAAG,MAAM,aAAa;AAM7B,SAASC,WAAW;AAmBpB,OAAO,MAAMC,0BAA0B,GAAIC,aAAqB,IAAKH,GAAG;AACxE;AACA;AACA;AACA,uBAAuBG,aAAa;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMC,gCAAgC,CAA2C;EAIpFC,WAAWA,CAACC,MAAyB,EAAEC,WAAmB,EAAE;IACxD,IAAI,CAACD,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,WAAW,GAAGA,WAAW;EAClC;EAEA,MAAMC,OAAOA,CAAC;IAAEC,SAAS;IAAE,GAAGC;EAA4C,CAAC,EAAE;IACzE,MAAM;MAAEC,IAAI,EAAEC;IAAS,CAAC,GAAG,MAAM,IAAI,CAACN,MAAM,CAACO,KAAK,CAGhD;MACEA,KAAK,EAAEX,0BAA0B,CAAC,IAAI,CAACK,WAAW,CAAC;MACnDO,SAAS,EAAE;QACP,GAAGJ,MAAM;QACTK,YAAY,EAAEN,SAAS;QACvBO,KAAK,EAAE;MACX,CAAC;MACDC,WAAW,EAAE;IACjB,CAAC,CAAC;IAEF,IAAI,CAACL,QAAQ,EAAE;MACX,MAAM,IAAIM,KAAK,CAAC,sCAAsC,CAAC;IAC3D;IAEA,MAAM;MAAEP,IAAI;MAAEQ;IAAM,CAAC,GAAGP,QAAQ,CAACQ,GAAG,CAACC,WAAW;IAEhD,IAAI,CAACV,IAAI,EAAE;MACP,MAAM,IAAIO,KAAK,CAACC,KAAK,EAAEG,OAAO,IAAI,yBAAyB,CAAC;IAChE;IAEA,OAAO,CAAC,IAAI,CAACC,aAAa,CAAC,CAAC,EAAE,IAAIZ,IAAI,IAAI,EAAE,CAAC,CAAC;EAClD;EAEQY,aAAaA,CAAA,EAAe;IAChC,OAAO;MACHC,EAAE,EAAEvB,WAAW;MACfwB,KAAK,EAAE,MAAM;MACbC,WAAW,EAAE,EAAE;MACfC,QAAQ,EAAE,GAAG;MACbC,IAAI,EAAE3B,WAAW;MACjB4B,IAAI,EAAE,EAAE;MACRC,SAAS,EAAE,EAAE;MACbC,SAAS,EAAE;QACPP,EAAE,EAAE,EAAE;QACNQ,WAAW,EAAE,EAAE;QACfC,IAAI,EAAE;MACV,CAAC;MACDC,0BAA0B,EAAE,KAAK;MACjCC,oBAAoB,EAAE,IAAI;MAC1BC,kBAAkB,EAAE,IAAI;MACxBC,gBAAgB,EAAE,IAAI;MACtBC,OAAO,EAAE,EAAE;MACXC,OAAO,EAAE;QACLf,EAAE,EAAE,EAAE;QACNQ,WAAW,EAAE,EAAE;QACfC,IAAI,EAAE;MACV,CAAC;MACDO,UAAU,EAAE,IAAI;MAChBC,UAAU,EAAE,IAAI;MAChBR,IAAI,EAAE,OAAO;MACbS,UAAU,EAAE,CAAC;IACjB,CAAC;EACL;AACJ","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import { ListCache } from "../cache";
1
+ import type { ListCache } from "../cache";
2
2
  import { Folder } from "../Folder";
3
- import { IListFoldersByParentIdsGateway } from "./IListFoldersByParentIdsGateway";
4
- import { IListFoldersByParentIdsRepository, ListFoldersByParentIdsRepositoryParams } from "./IListFoldersByParentIdsRepository";
3
+ import type { IListFoldersByParentIdsGateway } from "./IListFoldersByParentIdsGateway";
4
+ import type { IListFoldersByParentIdsRepository, ListFoldersByParentIdsRepositoryParams } from "./IListFoldersByParentIdsRepository";
5
5
  export declare class ListFoldersByParentIdsRepository implements IListFoldersByParentIdsRepository {
6
6
  private cache;
7
7
  private gateway;
@@ -1 +1 @@
1
- {"version":3,"names":["Folder","ListFoldersByParentIdsRepository","constructor","cache","gateway","type","execute","params","items","parentIds","addItems","map","item","create"],"sources":["ListFoldersByParentIdsRepository.ts"],"sourcesContent":["import { ListCache } from \"../cache\";\nimport { Folder } from \"../Folder\";\nimport { IListFoldersByParentIdsGateway } from \"./IListFoldersByParentIdsGateway\";\nimport {\n IListFoldersByParentIdsRepository,\n ListFoldersByParentIdsRepositoryParams\n} from \"./IListFoldersByParentIdsRepository\";\n\nexport class ListFoldersByParentIdsRepository implements IListFoldersByParentIdsRepository {\n private cache: ListCache<Folder>;\n private gateway: IListFoldersByParentIdsGateway;\n private readonly type: string;\n\n constructor(cache: ListCache<Folder>, gateway: IListFoldersByParentIdsGateway, type: string) {\n this.cache = cache;\n this.gateway = gateway;\n this.type = type;\n }\n\n async execute(params: ListFoldersByParentIdsRepositoryParams) {\n const items = await this.gateway.execute({ type: this.type, parentIds: params.parentIds });\n this.cache.addItems(items.map(item => Folder.create(item)));\n }\n}\n"],"mappings":"AACA,SAASA,MAAM;AAOf,OAAO,MAAMC,gCAAgC,CAA8C;EAKvFC,WAAWA,CAACC,KAAwB,EAAEC,OAAuC,EAAEC,IAAY,EAAE;IACzF,IAAI,CAACF,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,IAAI,GAAGA,IAAI;EACpB;EAEA,MAAMC,OAAOA,CAACC,MAA8C,EAAE;IAC1D,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACJ,OAAO,CAACE,OAAO,CAAC;MAAED,IAAI,EAAE,IAAI,CAACA,IAAI;MAAEI,SAAS,EAAEF,MAAM,CAACE;IAAU,CAAC,CAAC;IAC1F,IAAI,CAACN,KAAK,CAACO,QAAQ,CAACF,KAAK,CAACG,GAAG,CAACC,IAAI,IAAIZ,MAAM,CAACa,MAAM,CAACD,IAAI,CAAC,CAAC,CAAC;EAC/D;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["Folder","ListFoldersByParentIdsRepository","constructor","cache","gateway","type","execute","params","items","parentIds","addItems","map","item","create"],"sources":["ListFoldersByParentIdsRepository.ts"],"sourcesContent":["import type { ListCache } from \"../cache\";\nimport { Folder } from \"../Folder\";\nimport type { IListFoldersByParentIdsGateway } from \"./IListFoldersByParentIdsGateway\";\nimport type {\n IListFoldersByParentIdsRepository,\n ListFoldersByParentIdsRepositoryParams\n} from \"./IListFoldersByParentIdsRepository\";\n\nexport class ListFoldersByParentIdsRepository implements IListFoldersByParentIdsRepository {\n private cache: ListCache<Folder>;\n private gateway: IListFoldersByParentIdsGateway;\n private readonly type: string;\n\n constructor(cache: ListCache<Folder>, gateway: IListFoldersByParentIdsGateway, type: string) {\n this.cache = cache;\n this.gateway = gateway;\n this.type = type;\n }\n\n async execute(params: ListFoldersByParentIdsRepositoryParams) {\n const items = await this.gateway.execute({ type: this.type, parentIds: params.parentIds });\n this.cache.addItems(items.map(item => Folder.create(item)));\n }\n}\n"],"mappings":"AACA,SAASA,MAAM;AAOf,OAAO,MAAMC,gCAAgC,CAA8C;EAKvFC,WAAWA,CAACC,KAAwB,EAAEC,OAAuC,EAAEC,IAAY,EAAE;IACzF,IAAI,CAACF,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,IAAI,GAAGA,IAAI;EACpB;EAEA,MAAMC,OAAOA,CAACC,MAA8C,EAAE;IAC1D,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACJ,OAAO,CAACE,OAAO,CAAC;MAAED,IAAI,EAAE,IAAI,CAACA,IAAI;MAAEI,SAAS,EAAEF,MAAM,CAACE;IAAU,CAAC,CAAC;IAC1F,IAAI,CAACN,KAAK,CAACO,QAAQ,CAACF,KAAK,CAACG,GAAG,CAACC,IAAI,IAAIZ,MAAM,CAACa,MAAM,CAACD,IAAI,CAAC,CAAC,CAAC;EAC/D;AACJ","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { LoadedCache } from "../cache";
2
- import { IListFoldersByParentIdsRepository, ListFoldersByParentIdsRepositoryParams } from "./IListFoldersByParentIdsRepository";
1
+ import type { LoadedCache } from "../cache";
2
+ import type { IListFoldersByParentIdsRepository, ListFoldersByParentIdsRepositoryParams } from "./IListFoldersByParentIdsRepository";
3
3
  export declare class ListFoldersByParentIdsRepositoryWithLoadedCache implements IListFoldersByParentIdsRepository {
4
4
  private loadedCache;
5
5
  private repository;
@@ -1 +1 @@
1
- {"version":3,"names":["ListFoldersByParentIdsRepositoryWithLoadedCache","constructor","loadedCache","repository","execute","params","count","addItems","parentIds","missingParentIds","filter","parentId","getItems","includes","length"],"sources":["ListFoldersByParentIdsRepositoryWithLoadedCache.ts"],"sourcesContent":["import { LoadedCache } from \"../cache\";\nimport {\n IListFoldersByParentIdsRepository,\n ListFoldersByParentIdsRepositoryParams\n} from \"./IListFoldersByParentIdsRepository\";\n\nexport class ListFoldersByParentIdsRepositoryWithLoadedCache\n implements IListFoldersByParentIdsRepository\n{\n private loadedCache: LoadedCache;\n private repository: IListFoldersByParentIdsRepository;\n\n constructor(loadedCache: LoadedCache, repository: IListFoldersByParentIdsRepository) {\n this.loadedCache = loadedCache;\n this.repository = repository;\n }\n\n async execute(params: ListFoldersByParentIdsRepositoryParams) {\n if (this.loadedCache.count() === 0) {\n await this.repository.execute(params);\n this.loadedCache.addItems(params.parentIds);\n return;\n }\n\n const missingParentIds = params.parentIds.filter(\n parentId => !this.loadedCache.getItems().includes(parentId)\n );\n\n if (missingParentIds.length === 0) {\n return;\n }\n\n this.loadedCache.addItems(missingParentIds);\n\n await this.repository.execute({\n parentIds: missingParentIds\n });\n }\n}\n"],"mappings":"AAMA,OAAO,MAAMA,+CAA+C,CAE5D;EAIIC,WAAWA,CAACC,WAAwB,EAAEC,UAA6C,EAAE;IACjF,IAAI,CAACD,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,UAAU,GAAGA,UAAU;EAChC;EAEA,MAAMC,OAAOA,CAACC,MAA8C,EAAE;IAC1D,IAAI,IAAI,CAACH,WAAW,CAACI,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE;MAChC,MAAM,IAAI,CAACH,UAAU,CAACC,OAAO,CAACC,MAAM,CAAC;MACrC,IAAI,CAACH,WAAW,CAACK,QAAQ,CAACF,MAAM,CAACG,SAAS,CAAC;MAC3C;IACJ;IAEA,MAAMC,gBAAgB,GAAGJ,MAAM,CAACG,SAAS,CAACE,MAAM,CAC5CC,QAAQ,IAAI,CAAC,IAAI,CAACT,WAAW,CAACU,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAACF,QAAQ,CAC9D,CAAC;IAED,IAAIF,gBAAgB,CAACK,MAAM,KAAK,CAAC,EAAE;MAC/B;IACJ;IAEA,IAAI,CAACZ,WAAW,CAACK,QAAQ,CAACE,gBAAgB,CAAC;IAE3C,MAAM,IAAI,CAACN,UAAU,CAACC,OAAO,CAAC;MAC1BI,SAAS,EAAEC;IACf,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["ListFoldersByParentIdsRepositoryWithLoadedCache","constructor","loadedCache","repository","execute","params","count","addItems","parentIds","missingParentIds","filter","parentId","getItems","includes","length"],"sources":["ListFoldersByParentIdsRepositoryWithLoadedCache.ts"],"sourcesContent":["import type { LoadedCache } from \"../cache\";\nimport type {\n IListFoldersByParentIdsRepository,\n ListFoldersByParentIdsRepositoryParams\n} from \"./IListFoldersByParentIdsRepository\";\n\nexport class ListFoldersByParentIdsRepositoryWithLoadedCache\n implements IListFoldersByParentIdsRepository\n{\n private loadedCache: LoadedCache;\n private repository: IListFoldersByParentIdsRepository;\n\n constructor(loadedCache: LoadedCache, repository: IListFoldersByParentIdsRepository) {\n this.loadedCache = loadedCache;\n this.repository = repository;\n }\n\n async execute(params: ListFoldersByParentIdsRepositoryParams) {\n if (this.loadedCache.count() === 0) {\n await this.repository.execute(params);\n this.loadedCache.addItems(params.parentIds);\n return;\n }\n\n const missingParentIds = params.parentIds.filter(\n parentId => !this.loadedCache.getItems().includes(parentId)\n );\n\n if (missingParentIds.length === 0) {\n return;\n }\n\n this.loadedCache.addItems(missingParentIds);\n\n await this.repository.execute({\n parentIds: missingParentIds\n });\n }\n}\n"],"mappings":"AAMA,OAAO,MAAMA,+CAA+C,CAE5D;EAIIC,WAAWA,CAACC,WAAwB,EAAEC,UAA6C,EAAE;IACjF,IAAI,CAACD,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,UAAU,GAAGA,UAAU;EAChC;EAEA,MAAMC,OAAOA,CAACC,MAA8C,EAAE;IAC1D,IAAI,IAAI,CAACH,WAAW,CAACI,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE;MAChC,MAAM,IAAI,CAACH,UAAU,CAACC,OAAO,CAACC,MAAM,CAAC;MACrC,IAAI,CAACH,WAAW,CAACK,QAAQ,CAACF,MAAM,CAACG,SAAS,CAAC;MAC3C;IACJ;IAEA,MAAMC,gBAAgB,GAAGJ,MAAM,CAACG,SAAS,CAACE,MAAM,CAC5CC,QAAQ,IAAI,CAAC,IAAI,CAACT,WAAW,CAACU,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAACF,QAAQ,CAC9D,CAAC;IAED,IAAIF,gBAAgB,CAACK,MAAM,KAAK,CAAC,EAAE;MAC/B;IACJ;IAEA,IAAI,CAACZ,WAAW,CAACK,QAAQ,CAACE,gBAAgB,CAAC;IAE3C,MAAM,IAAI,CAACN,UAAU,CAACC,OAAO,CAAC;MAC1BI,SAAS,EAAEC;IACf,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { IListFoldersByParentIdsRepository } from "./IListFoldersByParentIdsRepository";
2
- import { IListFoldersByParentIdsUseCase, ListFoldersByParentIdsUseCaseParams } from "./IListFoldersByParentIdsUseCase";
1
+ import type { IListFoldersByParentIdsRepository } from "./IListFoldersByParentIdsRepository";
2
+ import type { IListFoldersByParentIdsUseCase, ListFoldersByParentIdsUseCaseParams } from "./IListFoldersByParentIdsUseCase";
3
3
  export declare class ListFoldersByParentIdsUseCase implements IListFoldersByParentIdsUseCase {
4
4
  private repository;
5
5
  constructor(repository: IListFoldersByParentIdsRepository);
@@ -1 +1 @@
1
- {"version":3,"names":["ROOT_FOLDER","ListFoldersByParentIdsUseCase","constructor","repository","execute","params","parentIds","getParentIds"],"sources":["ListFoldersByParentIdsUseCase.ts"],"sourcesContent":["import { IListFoldersByParentIdsRepository } from \"./IListFoldersByParentIdsRepository\";\nimport {\n IListFoldersByParentIdsUseCase,\n ListFoldersByParentIdsUseCaseParams\n} from \"./IListFoldersByParentIdsUseCase\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport class ListFoldersByParentIdsUseCase implements IListFoldersByParentIdsUseCase {\n private repository: IListFoldersByParentIdsRepository;\n\n constructor(repository: IListFoldersByParentIdsRepository) {\n this.repository = repository;\n }\n\n async execute(params: ListFoldersByParentIdsUseCaseParams) {\n await this.repository.execute({\n parentIds: this.getParentIds(params.parentIds)\n });\n }\n\n private getParentIds(parentIds?: string[]) {\n if (!parentIds) {\n return [ROOT_FOLDER];\n }\n\n return parentIds;\n }\n}\n"],"mappings":"AAKA,SAASA,WAAW;AAEpB,OAAO,MAAMC,6BAA6B,CAA2C;EAGjFC,WAAWA,CAACC,UAA6C,EAAE;IACvD,IAAI,CAACA,UAAU,GAAGA,UAAU;EAChC;EAEA,MAAMC,OAAOA,CAACC,MAA2C,EAAE;IACvD,MAAM,IAAI,CAACF,UAAU,CAACC,OAAO,CAAC;MAC1BE,SAAS,EAAE,IAAI,CAACC,YAAY,CAACF,MAAM,CAACC,SAAS;IACjD,CAAC,CAAC;EACN;EAEQC,YAAYA,CAACD,SAAoB,EAAE;IACvC,IAAI,CAACA,SAAS,EAAE;MACZ,OAAO,CAACN,WAAW,CAAC;IACxB;IAEA,OAAOM,SAAS;EACpB;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["ROOT_FOLDER","ListFoldersByParentIdsUseCase","constructor","repository","execute","params","parentIds","getParentIds"],"sources":["ListFoldersByParentIdsUseCase.ts"],"sourcesContent":["import type { IListFoldersByParentIdsRepository } from \"./IListFoldersByParentIdsRepository\";\nimport type {\n IListFoldersByParentIdsUseCase,\n ListFoldersByParentIdsUseCaseParams\n} from \"./IListFoldersByParentIdsUseCase\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport class ListFoldersByParentIdsUseCase implements IListFoldersByParentIdsUseCase {\n private repository: IListFoldersByParentIdsRepository;\n\n constructor(repository: IListFoldersByParentIdsRepository) {\n this.repository = repository;\n }\n\n async execute(params: ListFoldersByParentIdsUseCaseParams) {\n await this.repository.execute({\n parentIds: this.getParentIds(params.parentIds)\n });\n }\n\n private getParentIds(parentIds?: string[]) {\n if (!parentIds) {\n return [ROOT_FOLDER];\n }\n\n return parentIds;\n }\n}\n"],"mappings":"AAKA,SAASA,WAAW;AAEpB,OAAO,MAAMC,6BAA6B,CAA2C;EAGjFC,WAAWA,CAACC,UAA6C,EAAE;IACvD,IAAI,CAACA,UAAU,GAAGA,UAAU;EAChC;EAEA,MAAMC,OAAOA,CAACC,MAA2C,EAAE;IACvD,MAAM,IAAI,CAACF,UAAU,CAACC,OAAO,CAAC;MAC1BE,SAAS,EAAE,IAAI,CAACC,YAAY,CAACF,MAAM,CAACC,SAAS;IACjD,CAAC,CAAC;EACN;EAEQC,YAAYA,CAACD,SAAoB,EAAE;IACvC,IAAI,CAACA,SAAS,EAAE;MACZ,OAAO,CAACN,WAAW,CAAC;IACxB;IAEA,OAAOM,SAAS;EACpB;AACJ","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import { ILoadingRepository } from "@webiny/app-utils";
2
- import { IListFoldersByParentIdsUseCase, ListFoldersByParentIdsUseCaseParams } from "./IListFoldersByParentIdsUseCase";
3
- import { LoadedCache } from "../..";
1
+ import type { ILoadingRepository } from "@webiny/app-utils";
2
+ import type { IListFoldersByParentIdsUseCase, ListFoldersByParentIdsUseCaseParams } from "./IListFoldersByParentIdsUseCase";
3
+ import type { LoadedCache } from "../..";
4
4
  export declare class ListFoldersByParentIdsUseCaseWithLoading implements IListFoldersByParentIdsUseCase {
5
5
  private loadingRepository;
6
6
  private loadedCache;
@@ -1 +1 @@
1
- {"version":3,"names":["LoadingActionsEnum","ListFoldersByParentIdsUseCaseWithLoading","constructor","loadingRepository","loadedCache","useCase","execute","params","action","init","parentIds","length","filter","parentId","getItems","includes","join","runCallBack"],"sources":["ListFoldersByParentIdsUseCaseWithLoading.ts"],"sourcesContent":["import { ILoadingRepository } from \"@webiny/app-utils\";\nimport {\n IListFoldersByParentIdsUseCase,\n ListFoldersByParentIdsUseCaseParams\n} from \"./IListFoldersByParentIdsUseCase\";\nimport { LoadedCache } from \"~/features\";\nimport { LoadingActionsEnum } from \"~/types\";\n\nexport class ListFoldersByParentIdsUseCaseWithLoading implements IListFoldersByParentIdsUseCase {\n private loadingRepository: ILoadingRepository;\n private loadedCache: LoadedCache;\n private useCase: IListFoldersByParentIdsUseCase;\n\n constructor(\n loadingRepository: ILoadingRepository,\n loadedCache: LoadedCache,\n useCase: IListFoldersByParentIdsUseCase\n ) {\n this.loadingRepository = loadingRepository;\n this.loadedCache = loadedCache;\n this.useCase = useCase;\n }\n\n async execute(params: ListFoldersByParentIdsUseCaseParams) {\n let action: string = LoadingActionsEnum.init;\n\n if (params.parentIds?.length) {\n action = params.parentIds\n .filter(parentId => !this.loadedCache.getItems().includes(parentId))\n .join(\":\");\n }\n\n if (action) {\n await this.loadingRepository.runCallBack(this.useCase.execute(params), action);\n } else {\n await this.useCase.execute(params);\n }\n }\n}\n"],"mappings":"AAMA,SAASA,kBAAkB;AAE3B,OAAO,MAAMC,wCAAwC,CAA2C;EAK5FC,WAAWA,CACPC,iBAAqC,EACrCC,WAAwB,EACxBC,OAAuC,EACzC;IACE,IAAI,CAACF,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,OAAOA,CAACC,MAA2C,EAAE;IACvD,IAAIC,MAAc,GAAGR,kBAAkB,CAACS,IAAI;IAE5C,IAAIF,MAAM,CAACG,SAAS,EAAEC,MAAM,EAAE;MAC1BH,MAAM,GAAGD,MAAM,CAACG,SAAS,CACpBE,MAAM,CAACC,QAAQ,IAAI,CAAC,IAAI,CAACT,WAAW,CAACU,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAACF,QAAQ,CAAC,CAAC,CACnEG,IAAI,CAAC,GAAG,CAAC;IAClB;IAEA,IAAIR,MAAM,EAAE;MACR,MAAM,IAAI,CAACL,iBAAiB,CAACc,WAAW,CAAC,IAAI,CAACZ,OAAO,CAACC,OAAO,CAACC,MAAM,CAAC,EAAEC,MAAM,CAAC;IAClF,CAAC,MAAM;MACH,MAAM,IAAI,CAACH,OAAO,CAACC,OAAO,CAACC,MAAM,CAAC;IACtC;EACJ;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["LoadingActionsEnum","ListFoldersByParentIdsUseCaseWithLoading","constructor","loadingRepository","loadedCache","useCase","execute","params","action","init","parentIds","length","filter","parentId","getItems","includes","join","runCallBack"],"sources":["ListFoldersByParentIdsUseCaseWithLoading.ts"],"sourcesContent":["import type { ILoadingRepository } from \"@webiny/app-utils\";\nimport type {\n IListFoldersByParentIdsUseCase,\n ListFoldersByParentIdsUseCaseParams\n} from \"./IListFoldersByParentIdsUseCase\";\nimport type { LoadedCache } from \"~/features\";\nimport { LoadingActionsEnum } from \"~/types\";\n\nexport class ListFoldersByParentIdsUseCaseWithLoading implements IListFoldersByParentIdsUseCase {\n private loadingRepository: ILoadingRepository;\n private loadedCache: LoadedCache;\n private useCase: IListFoldersByParentIdsUseCase;\n\n constructor(\n loadingRepository: ILoadingRepository,\n loadedCache: LoadedCache,\n useCase: IListFoldersByParentIdsUseCase\n ) {\n this.loadingRepository = loadingRepository;\n this.loadedCache = loadedCache;\n this.useCase = useCase;\n }\n\n async execute(params: ListFoldersByParentIdsUseCaseParams) {\n let action: string = LoadingActionsEnum.init;\n\n if (params.parentIds?.length) {\n action = params.parentIds\n .filter(parentId => !this.loadedCache.getItems().includes(parentId))\n .join(\":\");\n }\n\n if (action) {\n await this.loadingRepository.runCallBack(this.useCase.execute(params), action);\n } else {\n await this.useCase.execute(params);\n }\n }\n}\n"],"mappings":"AAMA,SAASA,kBAAkB;AAE3B,OAAO,MAAMC,wCAAwC,CAA2C;EAK5FC,WAAWA,CACPC,iBAAqC,EACrCC,WAAwB,EACxBC,OAAuC,EACzC;IACE,IAAI,CAACF,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,OAAOA,CAACC,MAA2C,EAAE;IACvD,IAAIC,MAAc,GAAGR,kBAAkB,CAACS,IAAI;IAE5C,IAAIF,MAAM,CAACG,SAAS,EAAEC,MAAM,EAAE;MAC1BH,MAAM,GAAGD,MAAM,CAACG,SAAS,CACpBE,MAAM,CAACC,QAAQ,IAAI,CAAC,IAAI,CAACT,WAAW,CAACU,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAACF,QAAQ,CAAC,CAAC,CACnEG,IAAI,CAAC,GAAG,CAAC;IAClB;IAEA,IAAIR,MAAM,EAAE;MACR,MAAM,IAAI,CAACL,iBAAiB,CAACc,WAAW,CAAC,IAAI,CAACZ,OAAO,CAACC,OAAO,CAACC,MAAM,CAAC,EAAEC,MAAM,CAAC;IAClF,CAAC,MAAM;MACH,MAAM,IAAI,CAACH,OAAO,CAACC,OAAO,CAACC,MAAM,CAAC;IACtC;EACJ;AACJ","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { FolderItem } from "../../../types";
1
+ import type { FolderItem } from "../../../types";
2
2
  export declare const useListFoldersByParentIds: () => {
3
3
  listFoldersByParentIds: (parentIds?: string[]) => Promise<void>;
4
4
  getIsFolderLoading: (action?: string) => boolean;
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useState","autorun","useApolloClient","ListFoldersByParentIdsGqlGateway","ListFoldersByParentIds","FolderDtoMapper","useFoldersType","useGetFolderGraphQLSelection","ROOT_FOLDER","useListFoldersByParentIds","client","type","fields","gateway","vm","setVm","folders","loading","useCase","foldersCache","loadingState","getInstance","listFoldersByParentIds","parentIds","execute","getIsFolderLoading","action","isLoading","getItems","map","folder","toDTO","getActiveLoadings"],"sources":["useListFoldersByParentIds.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { autorun } from \"mobx\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { ListFoldersByParentIdsGqlGateway } from \"./ListFoldersByParentIdsGqlGateway\";\nimport { ListFoldersByParentIds } from \"./ListFoldersByParentIds\";\nimport { FolderDtoMapper } from \"./FolderDto\";\nimport { useFoldersType, useGetFolderGraphQLSelection } from \"~/hooks\";\nimport { FolderItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport const useListFoldersByParentIds = () => {\n const client = useApolloClient();\n const type = useFoldersType();\n const fields = useGetFolderGraphQLSelection();\n const gateway = new ListFoldersByParentIdsGqlGateway(client, fields);\n\n const [vm, setVm] = useState<{\n folders: FolderItem[];\n loading: string[];\n }>({\n folders: [],\n loading: []\n });\n\n const {\n useCase,\n folders: foldersCache,\n loading: loadingState\n } = useMemo(() => {\n return ListFoldersByParentIds.getInstance(type, gateway);\n }, [type, gateway]);\n\n const listFoldersByParentIds = useCallback(\n (parentIds?: string[]) => {\n return useCase.execute({ parentIds });\n },\n [useCase]\n );\n\n const getIsFolderLoading = useCallback(\n (action = ROOT_FOLDER) => {\n if (!loadingState) {\n return true;\n }\n\n return loadingState.isLoading(action);\n },\n [loadingState]\n );\n\n useEffect(() => {\n return autorun(() => {\n const folders = foldersCache.getItems().map(folder => FolderDtoMapper.toDTO(folder));\n\n setVm(vm => ({\n ...vm,\n folders\n }));\n });\n }, [foldersCache]);\n\n useEffect(() => {\n return autorun(() => {\n const loading = loadingState.getActiveLoadings();\n\n setVm(vm => ({\n ...vm,\n loading\n }));\n });\n }, [loadingState]);\n\n return {\n ...vm,\n listFoldersByParentIds,\n getIsFolderLoading\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACjE,SAASC,OAAO,QAAQ,MAAM;AAC9B,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,gCAAgC;AACzC,SAASC,sBAAsB;AAC/B,SAASC,eAAe;AACxB,SAASC,cAAc,EAAEC,4BAA4B;AAErD,SAASC,WAAW;AAEpB,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAM;EAC3C,MAAMC,MAAM,GAAGR,eAAe,CAAC,CAAC;EAChC,MAAMS,IAAI,GAAGL,cAAc,CAAC,CAAC;EAC7B,MAAMM,MAAM,GAAGL,4BAA4B,CAAC,CAAC;EAC7C,MAAMM,OAAO,GAAG,IAAIV,gCAAgC,CAACO,MAAM,EAAEE,MAAM,CAAC;EAEpE,MAAM,CAACE,EAAE,EAAEC,KAAK,CAAC,GAAGf,QAAQ,CAGzB;IACCgB,OAAO,EAAE,EAAE;IACXC,OAAO,EAAE;EACb,CAAC,CAAC;EAEF,MAAM;IACFC,OAAO;IACPF,OAAO,EAAEG,YAAY;IACrBF,OAAO,EAAEG;EACb,CAAC,GAAGrB,OAAO,CAAC,MAAM;IACd,OAAOK,sBAAsB,CAACiB,WAAW,CAACV,IAAI,EAAEE,OAAO,CAAC;EAC5D,CAAC,EAAE,CAACF,IAAI,EAAEE,OAAO,CAAC,CAAC;EAEnB,MAAMS,sBAAsB,GAAGzB,WAAW,CACrC0B,SAAoB,IAAK;IACtB,OAAOL,OAAO,CAACM,OAAO,CAAC;MAAED;IAAU,CAAC,CAAC;EACzC,CAAC,EACD,CAACL,OAAO,CACZ,CAAC;EAED,MAAMO,kBAAkB,GAAG5B,WAAW,CAClC,CAAC6B,MAAM,GAAGlB,WAAW,KAAK;IACtB,IAAI,CAACY,YAAY,EAAE;MACf,OAAO,IAAI;IACf;IAEA,OAAOA,YAAY,CAACO,SAAS,CAACD,MAAM,CAAC;EACzC,CAAC,EACD,CAACN,YAAY,CACjB,CAAC;EAEDtB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAMe,OAAO,GAAGG,YAAY,CAACS,QAAQ,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,IAAIzB,eAAe,CAAC0B,KAAK,CAACD,MAAM,CAAC,CAAC;MAEpFf,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLE;MACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACG,YAAY,CAAC,CAAC;EAElBrB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAMgB,OAAO,GAAGG,YAAY,CAACY,iBAAiB,CAAC,CAAC;MAEhDjB,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLG;MACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACG,YAAY,CAAC,CAAC;EAElB,OAAO;IACH,GAAGN,EAAE;IACLQ,sBAAsB;IACtBG;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useState","autorun","useApolloClient","ListFoldersByParentIdsGqlGateway","ListFoldersByParentIds","FolderDtoMapper","useFoldersType","useGetFolderGraphQLSelection","ROOT_FOLDER","useListFoldersByParentIds","client","type","fields","gateway","vm","setVm","folders","loading","useCase","foldersCache","loadingState","getInstance","listFoldersByParentIds","parentIds","execute","getIsFolderLoading","action","isLoading","getItems","map","folder","toDTO","getActiveLoadings"],"sources":["useListFoldersByParentIds.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { autorun } from \"mobx\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { ListFoldersByParentIdsGqlGateway } from \"./ListFoldersByParentIdsGqlGateway\";\nimport { ListFoldersByParentIds } from \"./ListFoldersByParentIds\";\nimport { FolderDtoMapper } from \"./FolderDto\";\nimport { useFoldersType, useGetFolderGraphQLSelection } from \"~/hooks\";\nimport type { FolderItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport const useListFoldersByParentIds = () => {\n const client = useApolloClient();\n const type = useFoldersType();\n const fields = useGetFolderGraphQLSelection();\n const gateway = new ListFoldersByParentIdsGqlGateway(client, fields);\n\n const [vm, setVm] = useState<{\n folders: FolderItem[];\n loading: string[];\n }>({\n folders: [],\n loading: []\n });\n\n const {\n useCase,\n folders: foldersCache,\n loading: loadingState\n } = useMemo(() => {\n return ListFoldersByParentIds.getInstance(type, gateway);\n }, [type, gateway]);\n\n const listFoldersByParentIds = useCallback(\n (parentIds?: string[]) => {\n return useCase.execute({ parentIds });\n },\n [useCase]\n );\n\n const getIsFolderLoading = useCallback(\n (action = ROOT_FOLDER) => {\n if (!loadingState) {\n return true;\n }\n\n return loadingState.isLoading(action);\n },\n [loadingState]\n );\n\n useEffect(() => {\n return autorun(() => {\n const folders = foldersCache.getItems().map(folder => FolderDtoMapper.toDTO(folder));\n\n setVm(vm => ({\n ...vm,\n folders\n }));\n });\n }, [foldersCache]);\n\n useEffect(() => {\n return autorun(() => {\n const loading = loadingState.getActiveLoadings();\n\n setVm(vm => ({\n ...vm,\n loading\n }));\n });\n }, [loadingState]);\n\n return {\n ...vm,\n listFoldersByParentIds,\n getIsFolderLoading\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACjE,SAASC,OAAO,QAAQ,MAAM;AAC9B,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,gCAAgC;AACzC,SAASC,sBAAsB;AAC/B,SAASC,eAAe;AACxB,SAASC,cAAc,EAAEC,4BAA4B;AAErD,SAASC,WAAW;AAEpB,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAM;EAC3C,MAAMC,MAAM,GAAGR,eAAe,CAAC,CAAC;EAChC,MAAMS,IAAI,GAAGL,cAAc,CAAC,CAAC;EAC7B,MAAMM,MAAM,GAAGL,4BAA4B,CAAC,CAAC;EAC7C,MAAMM,OAAO,GAAG,IAAIV,gCAAgC,CAACO,MAAM,EAAEE,MAAM,CAAC;EAEpE,MAAM,CAACE,EAAE,EAAEC,KAAK,CAAC,GAAGf,QAAQ,CAGzB;IACCgB,OAAO,EAAE,EAAE;IACXC,OAAO,EAAE;EACb,CAAC,CAAC;EAEF,MAAM;IACFC,OAAO;IACPF,OAAO,EAAEG,YAAY;IACrBF,OAAO,EAAEG;EACb,CAAC,GAAGrB,OAAO,CAAC,MAAM;IACd,OAAOK,sBAAsB,CAACiB,WAAW,CAACV,IAAI,EAAEE,OAAO,CAAC;EAC5D,CAAC,EAAE,CAACF,IAAI,EAAEE,OAAO,CAAC,CAAC;EAEnB,MAAMS,sBAAsB,GAAGzB,WAAW,CACrC0B,SAAoB,IAAK;IACtB,OAAOL,OAAO,CAACM,OAAO,CAAC;MAAED;IAAU,CAAC,CAAC;EACzC,CAAC,EACD,CAACL,OAAO,CACZ,CAAC;EAED,MAAMO,kBAAkB,GAAG5B,WAAW,CAClC,CAAC6B,MAAM,GAAGlB,WAAW,KAAK;IACtB,IAAI,CAACY,YAAY,EAAE;MACf,OAAO,IAAI;IACf;IAEA,OAAOA,YAAY,CAACO,SAAS,CAACD,MAAM,CAAC;EACzC,CAAC,EACD,CAACN,YAAY,CACjB,CAAC;EAEDtB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAMe,OAAO,GAAGG,YAAY,CAACS,QAAQ,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,IAAIzB,eAAe,CAAC0B,KAAK,CAACD,MAAM,CAAC,CAAC;MAEpFf,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLE;MACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACG,YAAY,CAAC,CAAC;EAElBrB,SAAS,CAAC,MAAM;IACZ,OAAOG,OAAO,CAAC,MAAM;MACjB,MAAMgB,OAAO,GAAGG,YAAY,CAACY,iBAAiB,CAAC,CAAC;MAEhDjB,KAAK,CAACD,EAAE,KAAK;QACT,GAAGA,EAAE;QACLG;MACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;EACN,CAAC,EAAE,CAACG,YAAY,CAAC,CAAC;EAElB,OAAO;IACH,GAAGN,EAAE;IACLQ,sBAAsB;IACtBG;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { FolderPermission } from "../../../types";
1
+ import type { FolderPermission } from "../../../types";
2
2
  export interface FolderDto {
3
3
  id: string;
4
4
  title: string;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["FolderDto.ts"],"sourcesContent":["import { FolderPermission } from \"~/types\";\n\nexport interface FolderDto {\n id: string;\n title: string;\n slug: string;\n permissions: FolderPermission[];\n parentId: string | null;\n extensions: Record<string, any>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["FolderDto.ts"],"sourcesContent":["import type { FolderPermission } from \"~/types\";\n\nexport interface FolderDto {\n id: string;\n title: string;\n slug: string;\n permissions: FolderPermission[];\n parentId: string | null;\n extensions: Record<string, any>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { CmsIdentity, FolderPermission } from "../../../types";
1
+ import type { CmsIdentity, FolderPermission } from "../../../types";
2
2
  export interface FolderGqlDto {
3
3
  id: string;
4
4
  title: string;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["FolderGqlDto.ts"],"sourcesContent":["import { CmsIdentity, FolderPermission } from \"~/types\";\n\nexport interface FolderGqlDto {\n id: string;\n title: string;\n slug: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions: boolean;\n canManagePermissions: boolean;\n canManageStructure: boolean;\n canManageContent: boolean;\n type: string;\n parentId: string | null;\n path: string;\n createdBy: CmsIdentity;\n createdOn: string;\n savedBy: CmsIdentity;\n savedOn: string;\n modifiedBy: CmsIdentity | null;\n modifiedOn: string | null;\n extensions: Record<string, any>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["FolderGqlDto.ts"],"sourcesContent":["import type { CmsIdentity, FolderPermission } from \"~/types\";\n\nexport interface FolderGqlDto {\n id: string;\n title: string;\n slug: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions: boolean;\n canManagePermissions: boolean;\n canManageStructure: boolean;\n canManageContent: boolean;\n type: string;\n parentId: string | null;\n path: string;\n createdBy: CmsIdentity;\n createdOn: string;\n savedBy: CmsIdentity;\n savedOn: string;\n modifiedBy: CmsIdentity | null;\n modifiedOn: string | null;\n extensions: Record<string, any>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { FolderDto } from "./FolderDto";
2
- import { FolderGqlDto } from "./FolderGqlDto";
1
+ import type { FolderDto } from "./FolderDto";
2
+ import type { FolderGqlDto } from "./FolderGqlDto";
3
3
  export interface IUpdateFolderGateway {
4
4
  execute: (folder: FolderDto) => Promise<FolderGqlDto>;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["IUpdateFolderGateway.ts"],"sourcesContent":["import { FolderDto } from \"./FolderDto\";\nimport { FolderGqlDto } from \"./FolderGqlDto\";\n\nexport interface IUpdateFolderGateway {\n execute: (folder: FolderDto) => Promise<FolderGqlDto>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["IUpdateFolderGateway.ts"],"sourcesContent":["import type { FolderDto } from \"./FolderDto\";\nimport type { FolderGqlDto } from \"./FolderGqlDto\";\n\nexport interface IUpdateFolderGateway {\n execute: (folder: FolderDto) => Promise<FolderGqlDto>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { Folder } from "../Folder";
1
+ import type { Folder } from "../Folder";
2
2
  export interface IUpdateFolderRepository {
3
3
  execute: (folder: Folder) => Promise<void>;
4
4
  }
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["IUpdateFolderRepository.ts"],"sourcesContent":["import { Folder } from \"../Folder\";\n\nexport interface IUpdateFolderRepository {\n execute: (folder: Folder) => Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["IUpdateFolderRepository.ts"],"sourcesContent":["import type { Folder } from \"../Folder\";\n\nexport interface IUpdateFolderRepository {\n execute: (folder: Folder) => Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { FolderPermission } from "../../../types";
1
+ import type { FolderPermission } from "../../../types";
2
2
  export interface UpdateFolderParams {
3
3
  id: string;
4
4
  title: string;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["IUpdateFolderUseCase.ts"],"sourcesContent":["import { FolderPermission } from \"~/types\";\n\nexport interface UpdateFolderParams {\n id: string;\n title: string;\n slug: string;\n type: string;\n parentId: string | null;\n permissions: FolderPermission[];\n extensions?: Record<string, any>;\n}\n\nexport interface IUpdateFolderUseCase {\n execute: (params: UpdateFolderParams) => Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["IUpdateFolderUseCase.ts"],"sourcesContent":["import type { FolderPermission } from \"~/types\";\n\nexport interface UpdateFolderParams {\n id: string;\n title: string;\n slug: string;\n type: string;\n parentId: string | null;\n permissions: FolderPermission[];\n extensions?: Record<string, any>;\n}\n\nexport interface IUpdateFolderUseCase {\n execute: (params: UpdateFolderParams) => Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { IUpdateFolderUseCase } from "./IUpdateFolderUseCase";
2
- import { IUpdateFolderGateway } from "./IUpdateFolderGateway";
1
+ import type { IUpdateFolderUseCase } from "./IUpdateFolderUseCase";
2
+ import type { IUpdateFolderGateway } from "./IUpdateFolderGateway";
3
3
  export declare class UpdateFolder {
4
4
  static getInstance(type: string, gateway: IUpdateFolderGateway): IUpdateFolderUseCase;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"names":["loadingRepositoryFactory","UpdateFolderRepository","UpdateFolderRepositoryWithPermissionsChange","UpdateFolderUseCase","UpdateFolderUseCaseWithLoading","UpdateFolderUseCaseWithoutInheritedPermissions","folderCacheFactory","UpdateFolderRepositoryWithPathChange","UpdateFolder","getInstance","type","gateway","foldersCache","getCache","loadingRepository","getRepository","repository","repositoryWithPathChange","repositoryWithPermissionsChange","useCase","useCaseWithoutInheritedPermissions"],"sources":["UpdateFolder.ts"],"sourcesContent":["import { loadingRepositoryFactory } from \"@webiny/app-utils\";\nimport { IUpdateFolderUseCase } from \"./IUpdateFolderUseCase\";\nimport { IUpdateFolderGateway } from \"./IUpdateFolderGateway\";\nimport { UpdateFolderRepository } from \"./UpdateFolderRepository\";\nimport { UpdateFolderRepositoryWithPermissionsChange } from \"./UpdateFolderRepositoryWithPermissionsChange\";\nimport { UpdateFolderUseCase } from \"./UpdateFolderUseCase\";\nimport { UpdateFolderUseCaseWithLoading } from \"./UpdateFolderUseCaseWithLoading\";\nimport { UpdateFolderUseCaseWithoutInheritedPermissions } from \"./UpdateFolderUseCaseWithoutInheritedPermissions\";\nimport { folderCacheFactory } from \"../cache\";\nimport { UpdateFolderRepositoryWithPathChange } from \"~/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange\";\n\nexport class UpdateFolder {\n public static getInstance(type: string, gateway: IUpdateFolderGateway): IUpdateFolderUseCase {\n const foldersCache = folderCacheFactory.getCache(type);\n const loadingRepository = loadingRepositoryFactory.getRepository(type);\n\n const repository = new UpdateFolderRepository(foldersCache, gateway);\n const repositoryWithPathChange = new UpdateFolderRepositoryWithPathChange(\n foldersCache,\n repository\n );\n const repositoryWithPermissionsChange = new UpdateFolderRepositoryWithPermissionsChange(\n foldersCache,\n repositoryWithPathChange\n );\n\n const useCase = new UpdateFolderUseCase(repositoryWithPermissionsChange);\n const useCaseWithoutInheritedPermissions =\n new UpdateFolderUseCaseWithoutInheritedPermissions(useCase);\n return new UpdateFolderUseCaseWithLoading(\n loadingRepository,\n useCaseWithoutInheritedPermissions\n );\n }\n}\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,mBAAmB;AAG5D,SAASC,sBAAsB;AAC/B,SAASC,2CAA2C;AACpD,SAASC,mBAAmB;AAC5B,SAASC,8BAA8B;AACvC,SAASC,8CAA8C;AACvD,SAASC,kBAAkB;AAC3B,SAASC,oCAAoC;AAE7C,OAAO,MAAMC,YAAY,CAAC;EACtB,OAAcC,WAAWA,CAACC,IAAY,EAAEC,OAA6B,EAAwB;IACzF,MAAMC,YAAY,GAAGN,kBAAkB,CAACO,QAAQ,CAACH,IAAI,CAAC;IACtD,MAAMI,iBAAiB,GAAGd,wBAAwB,CAACe,aAAa,CAACL,IAAI,CAAC;IAEtE,MAAMM,UAAU,GAAG,IAAIf,sBAAsB,CAACW,YAAY,EAAED,OAAO,CAAC;IACpE,MAAMM,wBAAwB,GAAG,IAAIV,oCAAoC,CACrEK,YAAY,EACZI,UACJ,CAAC;IACD,MAAME,+BAA+B,GAAG,IAAIhB,2CAA2C,CACnFU,YAAY,EACZK,wBACJ,CAAC;IAED,MAAME,OAAO,GAAG,IAAIhB,mBAAmB,CAACe,+BAA+B,CAAC;IACxE,MAAME,kCAAkC,GACpC,IAAIf,8CAA8C,CAACc,OAAO,CAAC;IAC/D,OAAO,IAAIf,8BAA8B,CACrCU,iBAAiB,EACjBM,kCACJ,CAAC;EACL;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["loadingRepositoryFactory","UpdateFolderRepository","UpdateFolderRepositoryWithPermissionsChange","UpdateFolderUseCase","UpdateFolderUseCaseWithLoading","UpdateFolderUseCaseWithoutInheritedPermissions","folderCacheFactory","UpdateFolderRepositoryWithPathChange","UpdateFolder","getInstance","type","gateway","foldersCache","getCache","loadingRepository","getRepository","repository","repositoryWithPathChange","repositoryWithPermissionsChange","useCase","useCaseWithoutInheritedPermissions"],"sources":["UpdateFolder.ts"],"sourcesContent":["import { loadingRepositoryFactory } from \"@webiny/app-utils\";\nimport type { IUpdateFolderUseCase } from \"./IUpdateFolderUseCase\";\nimport type { IUpdateFolderGateway } from \"./IUpdateFolderGateway\";\nimport { UpdateFolderRepository } from \"./UpdateFolderRepository\";\nimport { UpdateFolderRepositoryWithPermissionsChange } from \"./UpdateFolderRepositoryWithPermissionsChange\";\nimport { UpdateFolderUseCase } from \"./UpdateFolderUseCase\";\nimport { UpdateFolderUseCaseWithLoading } from \"./UpdateFolderUseCaseWithLoading\";\nimport { UpdateFolderUseCaseWithoutInheritedPermissions } from \"./UpdateFolderUseCaseWithoutInheritedPermissions\";\nimport { folderCacheFactory } from \"../cache\";\nimport { UpdateFolderRepositoryWithPathChange } from \"~/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange\";\n\nexport class UpdateFolder {\n public static getInstance(type: string, gateway: IUpdateFolderGateway): IUpdateFolderUseCase {\n const foldersCache = folderCacheFactory.getCache(type);\n const loadingRepository = loadingRepositoryFactory.getRepository(type);\n\n const repository = new UpdateFolderRepository(foldersCache, gateway);\n const repositoryWithPathChange = new UpdateFolderRepositoryWithPathChange(\n foldersCache,\n repository\n );\n const repositoryWithPermissionsChange = new UpdateFolderRepositoryWithPermissionsChange(\n foldersCache,\n repositoryWithPathChange\n );\n\n const useCase = new UpdateFolderUseCase(repositoryWithPermissionsChange);\n const useCaseWithoutInheritedPermissions =\n new UpdateFolderUseCaseWithoutInheritedPermissions(useCase);\n return new UpdateFolderUseCaseWithLoading(\n loadingRepository,\n useCaseWithoutInheritedPermissions\n );\n }\n}\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,mBAAmB;AAG5D,SAASC,sBAAsB;AAC/B,SAASC,2CAA2C;AACpD,SAASC,mBAAmB;AAC5B,SAASC,8BAA8B;AACvC,SAASC,8CAA8C;AACvD,SAASC,kBAAkB;AAC3B,SAASC,oCAAoC;AAE7C,OAAO,MAAMC,YAAY,CAAC;EACtB,OAAcC,WAAWA,CAACC,IAAY,EAAEC,OAA6B,EAAwB;IACzF,MAAMC,YAAY,GAAGN,kBAAkB,CAACO,QAAQ,CAACH,IAAI,CAAC;IACtD,MAAMI,iBAAiB,GAAGd,wBAAwB,CAACe,aAAa,CAACL,IAAI,CAAC;IAEtE,MAAMM,UAAU,GAAG,IAAIf,sBAAsB,CAACW,YAAY,EAAED,OAAO,CAAC;IACpE,MAAMM,wBAAwB,GAAG,IAAIV,oCAAoC,CACrEK,YAAY,EACZI,UACJ,CAAC;IACD,MAAME,+BAA+B,GAAG,IAAIhB,2CAA2C,CACnFU,YAAY,EACZK,wBACJ,CAAC;IAED,MAAME,OAAO,GAAG,IAAIhB,mBAAmB,CAACe,+BAA+B,CAAC;IACxE,MAAME,kCAAkC,GACpC,IAAIf,8CAA8C,CAACc,OAAO,CAAC;IAC/D,OAAO,IAAIf,8BAA8B,CACrCU,iBAAiB,EACjBM,kCACJ,CAAC;EACL;AACJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["UpdateFolder","folderCacheFactory","Folder","ROOT_FOLDER","describe","type","foldersCache","getCache","beforeEach","jest","clearAllMocks","clear","addItems","create","id","title","slug","parentId","permissions","it","gateway","execute","fn","mockResolvedValue","updateFolder","getInstance","expect","hasItems","toBeTrue","item","getItem","folder","toEqual","toHaveBeenCalledTimes","updatedItem","toBeDefined","parentFolder","childFolder1","childFolder2","childFolder3","parentNewPermissions","level","target","childFolderCache1","map","permission","inheritedFrom","childFolderCache2","childFolderCache3","child1NewPermissions","newPermissions","path","newParentPath","newChildFolder1Path","mockRejectedValue","Error","rejects","toThrow"],"sources":["UpdateFolder.test.ts"],"sourcesContent":["import { UpdateFolder } from \"./UpdateFolder\";\nimport { folderCacheFactory } from \"../cache/FoldersCacheFactory\";\nimport { Folder } from \"../Folder\";\nimport { FolderPermission } from \"@webiny/shared-aco/flp/flp.types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\ndescribe(\"UpdateFolder\", () => {\n const type = \"abc\";\n\n const foldersCache = folderCacheFactory.getCache(type);\n\n beforeEach(() => {\n jest.clearAllMocks();\n foldersCache.clear();\n foldersCache.addItems([\n Folder.create({\n id: \"any-folder-id\",\n title: \"Any Folder\",\n slug: \"any-folder\",\n parentId: null,\n permissions: [],\n type\n })\n ]);\n });\n\n it(\"should be able to update a folder\", async () => {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: \"any-folder-id\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n })\n };\n\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n expect(foldersCache.hasItems()).toBeTrue();\n const item = foldersCache.getItem(folder => folder.id === \"any-folder-id\");\n expect(item?.id).toEqual(\"any-folder-id\");\n expect(item?.title).toEqual(\"Any Folder\");\n\n await updateFolder.execute({\n id: \"any-folder-id\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n });\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n const updatedItem = foldersCache.getItem(folder => folder.id === \"any-folder-id\");\n\n expect(updatedItem).toBeDefined();\n expect(updatedItem?.id).toEqual(\"any-folder-id\");\n expect(updatedItem?.type).toEqual(type);\n expect(updatedItem?.title).toEqual(\"Updated Folder\");\n expect(updatedItem?.slug).toEqual(\"updated-folder\");\n expect(updatedItem?.parentId).toEqual(\"another-id\");\n });\n\n it(\"should not update a folder if id is missing\", async () => {\n const gateway = {\n execute: jest.fn().mockResolvedValue(null)\n };\n\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: \"\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n });\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n const updatedItem = foldersCache.getItem(folder => folder.id === \"any-folder-id\");\n\n expect(updatedItem).toBeDefined();\n expect(updatedItem?.id).toEqual(\"any-folder-id\");\n expect(updatedItem?.type).toEqual(type);\n expect(updatedItem?.title).toEqual(\"Any Folder\");\n expect(updatedItem?.slug).toEqual(\"any-folder\");\n expect(updatedItem?.parentId).toEqual(null);\n });\n\n it(\"should propagate `permissions` changes to child folders\", async () => {\n const parentFolder = Folder.create({\n id: \"parent-folder-id\",\n title: \"Parent Folder\",\n slug: \"parent-folder\",\n parentId: null,\n permissions: [],\n type\n });\n\n const childFolder1 = Folder.create({\n id: \"child-folder-id-1\",\n title: \"Child Folder 1\",\n slug: \"child-folder-1\",\n parentId: parentFolder.id,\n permissions: [],\n type\n });\n\n const childFolder2 = Folder.create({\n id: \"child-folder-id-2\",\n title: \"Child Folder 2\",\n slug: \"child-folder-2\",\n parentId: childFolder1.id,\n permissions: [],\n type\n });\n\n const childFolder3 = Folder.create({\n id: \"child-folder-id-3\",\n title: \"Child Folder 3\",\n slug: \"child-folder-3\",\n parentId: parentFolder.id, // <-- This folder is a sibling of childFolder1, not a child\n permissions: [],\n type\n });\n\n foldersCache.addItems([parentFolder, childFolder1, childFolder2, childFolder3]);\n\n // Let's update parentFolder, the change should be propagated to all it's children (childFolder1, childFolder2 and childFolder3).\n const parentNewPermissions: FolderPermission[] = [\n { level: \"viewer\", target: \"admin:123\" },\n { level: \"viewer\", target: \"admin:456\" }\n ];\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug,\n parentId: parentFolder.parentId,\n permissions: parentNewPermissions,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug,\n parentId: parentFolder.parentId,\n permissions: parentNewPermissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${childFolderCache1?.id}`\n }))\n );\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n }\n\n // Let's update childFolder1, the change should be propagated to childFolder2, but not to childFolder3\n const child1NewPermissions: FolderPermission[] = [{ level: \"owner\", target: \"admin:123\" }];\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: child1NewPermissions,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: child1NewPermissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.permissions).toEqual([\n ...child1NewPermissions,\n {\n ...parentNewPermissions[1],\n inheritedFrom: `parent:${parentFolder?.id}`\n }\n ]);\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.permissions).toEqual([\n ...child1NewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${childFolderCache1?.id}`\n })),\n {\n ...parentNewPermissions[1],\n inheritedFrom: `parent:${childFolderCache1?.id}`\n }\n ]);\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n }\n\n {\n // Let's remove childFolder1 permissions:\n // childFolder1 should inherit back permissions from parentFolder,\n // the change should be propagated to childFolder2, but not to childFolder3\n const newPermissions: FolderPermission[] = [];\n\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: newPermissions,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: newPermissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${childFolderCache1?.id}`\n }))\n );\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n }\n });\n\n it(\"should propagate `path` changes to child folders\", async () => {\n const parentFolder = Folder.create({\n id: \"parent-folder-id\",\n title: \"Parent Folder\",\n slug: \"parent-folder\",\n parentId: null,\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder`,\n type\n });\n\n const childFolder1 = Folder.create({\n id: \"child-folder-id-1\",\n title: \"Child Folder 1\",\n slug: \"child-folder-1\",\n parentId: parentFolder.id,\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder/child-folder-1`,\n type\n });\n\n const childFolder2 = Folder.create({\n id: \"child-folder-id-2\",\n title: \"Child Folder 2\",\n slug: \"child-folder-2\",\n parentId: childFolder1.id,\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder/child-folder-1/child-folder-2`,\n type\n });\n\n const childFolder3 = Folder.create({\n id: \"child-folder-id-3\",\n title: \"Child Folder 3\",\n slug: \"child-folder-3\",\n parentId: parentFolder.id, // <-- This folder is a sibling of childFolder1, not a child\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder/child-folder-3`,\n type\n });\n\n foldersCache.addItems([parentFolder, childFolder1, childFolder2, childFolder3]);\n\n // Let's update parentFolder, the change should be propagated to all it's children (childFolder1, childFolder2 and childFolder3).\n const newParentPath: string = `${ROOT_FOLDER}/parent-folder-edit`;\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug + \"-edit\",\n parentId: parentFolder.parentId,\n permissions: parentFolder.permissions,\n path: newParentPath,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug + \"-edit\",\n parentId: parentFolder.parentId,\n permissions: parentFolder.permissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.path).toEqual(`${newParentPath}/child-folder-1`);\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.path).toEqual(\n `${newParentPath}/child-folder-1/child-folder-2`\n );\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.path).toEqual(`${newParentPath}/child-folder-3`);\n }\n\n // Let's update childFolder1, the change should be propagated to childFolder2, but not to childFolder3\n const newChildFolder1Path: string = `${newParentPath}/child-folder-1-edit`;\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug + \"-edit\",\n parentId: childFolder1.parentId,\n permissions: childFolder1.permissions,\n path: newChildFolder1Path,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug + \"-edit\",\n parentId: childFolder1.parentId,\n permissions: childFolder1.permissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.path).toEqual(newChildFolder1Path);\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.path).toEqual(`${newChildFolder1Path}/child-folder-2`);\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.path).toEqual(`${newParentPath}/child-folder-3`);\n }\n });\n\n it(\"should handle gateway errors gracefully\", async () => {\n const gateway = {\n execute: jest.fn().mockRejectedValue(new Error(\"Gateway error\"))\n };\n\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await expect(\n updateFolder.execute({\n id: \"any-folder-id\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n })\n ).rejects.toThrow(\"Gateway error\");\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["UpdateFolder","folderCacheFactory","Folder","ROOT_FOLDER","describe","type","foldersCache","getCache","beforeEach","jest","clearAllMocks","clear","addItems","create","id","title","slug","parentId","permissions","it","gateway","execute","fn","mockResolvedValue","updateFolder","getInstance","expect","hasItems","toBeTrue","item","getItem","folder","toEqual","toHaveBeenCalledTimes","updatedItem","toBeDefined","parentFolder","childFolder1","childFolder2","childFolder3","parentNewPermissions","level","target","childFolderCache1","map","permission","inheritedFrom","childFolderCache2","childFolderCache3","child1NewPermissions","newPermissions","path","newParentPath","newChildFolder1Path","mockRejectedValue","Error","rejects","toThrow"],"sources":["UpdateFolder.test.ts"],"sourcesContent":["import { UpdateFolder } from \"./UpdateFolder\";\nimport { folderCacheFactory } from \"../cache/FoldersCacheFactory\";\nimport { Folder } from \"../Folder\";\nimport type { FolderPermission } from \"@webiny/shared-aco/flp/flp.types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\ndescribe(\"UpdateFolder\", () => {\n const type = \"abc\";\n\n const foldersCache = folderCacheFactory.getCache(type);\n\n beforeEach(() => {\n jest.clearAllMocks();\n foldersCache.clear();\n foldersCache.addItems([\n Folder.create({\n id: \"any-folder-id\",\n title: \"Any Folder\",\n slug: \"any-folder\",\n parentId: null,\n permissions: [],\n type\n })\n ]);\n });\n\n it(\"should be able to update a folder\", async () => {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: \"any-folder-id\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n })\n };\n\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n expect(foldersCache.hasItems()).toBeTrue();\n const item = foldersCache.getItem(folder => folder.id === \"any-folder-id\");\n expect(item?.id).toEqual(\"any-folder-id\");\n expect(item?.title).toEqual(\"Any Folder\");\n\n await updateFolder.execute({\n id: \"any-folder-id\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n });\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n const updatedItem = foldersCache.getItem(folder => folder.id === \"any-folder-id\");\n\n expect(updatedItem).toBeDefined();\n expect(updatedItem?.id).toEqual(\"any-folder-id\");\n expect(updatedItem?.type).toEqual(type);\n expect(updatedItem?.title).toEqual(\"Updated Folder\");\n expect(updatedItem?.slug).toEqual(\"updated-folder\");\n expect(updatedItem?.parentId).toEqual(\"another-id\");\n });\n\n it(\"should not update a folder if id is missing\", async () => {\n const gateway = {\n execute: jest.fn().mockResolvedValue(null)\n };\n\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: \"\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n });\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n const updatedItem = foldersCache.getItem(folder => folder.id === \"any-folder-id\");\n\n expect(updatedItem).toBeDefined();\n expect(updatedItem?.id).toEqual(\"any-folder-id\");\n expect(updatedItem?.type).toEqual(type);\n expect(updatedItem?.title).toEqual(\"Any Folder\");\n expect(updatedItem?.slug).toEqual(\"any-folder\");\n expect(updatedItem?.parentId).toEqual(null);\n });\n\n it(\"should propagate `permissions` changes to child folders\", async () => {\n const parentFolder = Folder.create({\n id: \"parent-folder-id\",\n title: \"Parent Folder\",\n slug: \"parent-folder\",\n parentId: null,\n permissions: [],\n type\n });\n\n const childFolder1 = Folder.create({\n id: \"child-folder-id-1\",\n title: \"Child Folder 1\",\n slug: \"child-folder-1\",\n parentId: parentFolder.id,\n permissions: [],\n type\n });\n\n const childFolder2 = Folder.create({\n id: \"child-folder-id-2\",\n title: \"Child Folder 2\",\n slug: \"child-folder-2\",\n parentId: childFolder1.id,\n permissions: [],\n type\n });\n\n const childFolder3 = Folder.create({\n id: \"child-folder-id-3\",\n title: \"Child Folder 3\",\n slug: \"child-folder-3\",\n parentId: parentFolder.id, // <-- This folder is a sibling of childFolder1, not a child\n permissions: [],\n type\n });\n\n foldersCache.addItems([parentFolder, childFolder1, childFolder2, childFolder3]);\n\n // Let's update parentFolder, the change should be propagated to all it's children (childFolder1, childFolder2 and childFolder3).\n const parentNewPermissions: FolderPermission[] = [\n { level: \"viewer\", target: \"admin:123\" },\n { level: \"viewer\", target: \"admin:456\" }\n ];\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug,\n parentId: parentFolder.parentId,\n permissions: parentNewPermissions,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug,\n parentId: parentFolder.parentId,\n permissions: parentNewPermissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${childFolderCache1?.id}`\n }))\n );\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n }\n\n // Let's update childFolder1, the change should be propagated to childFolder2, but not to childFolder3\n const child1NewPermissions: FolderPermission[] = [{ level: \"owner\", target: \"admin:123\" }];\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: child1NewPermissions,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: child1NewPermissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.permissions).toEqual([\n ...child1NewPermissions,\n {\n ...parentNewPermissions[1],\n inheritedFrom: `parent:${parentFolder?.id}`\n }\n ]);\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.permissions).toEqual([\n ...child1NewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${childFolderCache1?.id}`\n })),\n {\n ...parentNewPermissions[1],\n inheritedFrom: `parent:${childFolderCache1?.id}`\n }\n ]);\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n }\n\n {\n // Let's remove childFolder1 permissions:\n // childFolder1 should inherit back permissions from parentFolder,\n // the change should be propagated to childFolder2, but not to childFolder3\n const newPermissions: FolderPermission[] = [];\n\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: newPermissions,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug,\n parentId: childFolder1.parentId,\n permissions: newPermissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${childFolderCache1?.id}`\n }))\n );\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.permissions).toEqual(\n parentNewPermissions.map(permission => ({\n ...permission,\n inheritedFrom: `parent:${parentFolder?.id}`\n }))\n );\n }\n });\n\n it(\"should propagate `path` changes to child folders\", async () => {\n const parentFolder = Folder.create({\n id: \"parent-folder-id\",\n title: \"Parent Folder\",\n slug: \"parent-folder\",\n parentId: null,\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder`,\n type\n });\n\n const childFolder1 = Folder.create({\n id: \"child-folder-id-1\",\n title: \"Child Folder 1\",\n slug: \"child-folder-1\",\n parentId: parentFolder.id,\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder/child-folder-1`,\n type\n });\n\n const childFolder2 = Folder.create({\n id: \"child-folder-id-2\",\n title: \"Child Folder 2\",\n slug: \"child-folder-2\",\n parentId: childFolder1.id,\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder/child-folder-1/child-folder-2`,\n type\n });\n\n const childFolder3 = Folder.create({\n id: \"child-folder-id-3\",\n title: \"Child Folder 3\",\n slug: \"child-folder-3\",\n parentId: parentFolder.id, // <-- This folder is a sibling of childFolder1, not a child\n permissions: [],\n path: `${ROOT_FOLDER}/parent-folder/child-folder-3`,\n type\n });\n\n foldersCache.addItems([parentFolder, childFolder1, childFolder2, childFolder3]);\n\n // Let's update parentFolder, the change should be propagated to all it's children (childFolder1, childFolder2 and childFolder3).\n const newParentPath: string = `${ROOT_FOLDER}/parent-folder-edit`;\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug + \"-edit\",\n parentId: parentFolder.parentId,\n permissions: parentFolder.permissions,\n path: newParentPath,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: parentFolder.id,\n title: parentFolder.title,\n slug: parentFolder.slug + \"-edit\",\n parentId: parentFolder.parentId,\n permissions: parentFolder.permissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.path).toEqual(`${newParentPath}/child-folder-1`);\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.path).toEqual(\n `${newParentPath}/child-folder-1/child-folder-2`\n );\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.path).toEqual(`${newParentPath}/child-folder-3`);\n }\n\n // Let's update childFolder1, the change should be propagated to childFolder2, but not to childFolder3\n const newChildFolder1Path: string = `${newParentPath}/child-folder-1-edit`;\n\n {\n const gateway = {\n execute: jest.fn().mockResolvedValue({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug + \"-edit\",\n parentId: childFolder1.parentId,\n permissions: childFolder1.permissions,\n path: newChildFolder1Path,\n type\n })\n };\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await updateFolder.execute({\n id: childFolder1.id,\n title: childFolder1.title,\n slug: childFolder1.slug + \"-edit\",\n parentId: childFolder1.parentId,\n permissions: childFolder1.permissions,\n type\n });\n\n const childFolderCache1 = foldersCache.getItem(folder => folder.id === childFolder1.id);\n expect(childFolderCache1?.path).toEqual(newChildFolder1Path);\n\n const childFolderCache2 = foldersCache.getItem(folder => folder.id === childFolder2.id);\n expect(childFolderCache2?.path).toEqual(`${newChildFolder1Path}/child-folder-2`);\n\n const childFolderCache3 = foldersCache.getItem(folder => folder.id === childFolder3.id);\n expect(childFolderCache3?.path).toEqual(`${newParentPath}/child-folder-3`);\n }\n });\n\n it(\"should handle gateway errors gracefully\", async () => {\n const gateway = {\n execute: jest.fn().mockRejectedValue(new Error(\"Gateway error\"))\n };\n\n const updateFolder = UpdateFolder.getInstance(type, gateway);\n\n await expect(\n updateFolder.execute({\n id: \"any-folder-id\",\n title: \"Updated Folder\",\n slug: \"updated-folder\",\n parentId: \"another-id\",\n permissions: [],\n type\n })\n ).rejects.toThrow(\"Gateway error\");\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import ApolloClient from "apollo-client";
2
- import { IUpdateFolderGateway } from "./IUpdateFolderGateway";
3
- import { FolderDto } from "./FolderDto";
4
- import { AcoError, FolderItem } from "../../../types";
1
+ import type ApolloClient from "apollo-client";
2
+ import type { IUpdateFolderGateway } from "./IUpdateFolderGateway";
3
+ import type { FolderDto } from "./FolderDto";
4
+ import type { AcoError, FolderItem } from "../../../types";
5
5
  export interface UpdateFolderResponse {
6
6
  aco: {
7
7
  updateFolder: {