-export const loadCollectionFiles = (uuid: string) =>
- async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => {
- const files = await services.collectionService.files(uuid);
- dispatch(collectionPanelFilesAction.SET_COLLECTION_FILES(files));
- dispatch(resourcesDataActions.SET_FILES({ uuid, files }));
- };
+export const COLLECTION_PANEL_LOAD_FILES = 'collectionPanelLoadFiles';
+
+export const setCollectionFiles = (files, joinParents = true) => (dispatch: any) => {
+ const tree = createCollectionFilesTree(files, joinParents);
+ const sorted = sortFilesTree(tree);
+ const mapped = mapTreeValues(servicesProvider.getServices().collectionService.extendFileURL)(sorted);
+ dispatch(collectionPanelFilesAction.SET_COLLECTION_FILES(mapped));
+};