refactor CollectionSummaryType determination and fallback to incoming share viewer if not a collab incoming share

This commit is contained in:
Abhinav 2023-07-04 11:05:53 +05:30
parent 53b245b21f
commit a69848d819

View file

@ -53,8 +53,8 @@ import {
isHiddenCollection,
getNonHiddenCollections,
changeCollectionSubType,
isIncomingViewerShare,
isIncomingCollabShare,
isIncomingShare,
} from 'utils/collection';
import ComlinkCryptoWorker from 'utils/comlink/ComlinkCryptoWorker';
import { getLocalFiles } from './fileService';
@ -1019,25 +1019,32 @@ export async function getCollectionSummaries(
collectionFilesCount.get(collection.id) ||
collection.type === CollectionType.uncategorized
) {
let type: CollectionSummaryType;
if (isIncomingShare(collection, user)) {
if (isIncomingCollabShare(collection, user)) {
type = CollectionSummaryType.incomingShareCollaborator;
} else {
type = CollectionSummaryType.incomingShareViewer;
}
} else if (isOutgoingShare(collection, user)) {
type = CollectionSummaryType.outgoingShare;
} else if (isSharedOnlyViaLink(collection)) {
type = CollectionSummaryType.sharedOnlyViaLink;
} else if (IsArchived(collection)) {
type = CollectionSummaryType.archived;
} else if (isHiddenCollection(collection)) {
type = CollectionSummaryType.hidden;
} else {
type = CollectionSummaryType[collection.type];
}
collectionSummaries.set(collection.id, {
id: collection.id,
name: collection.name,
latestFile: collectionLatestFiles.get(collection.id),
fileCount: collectionFilesCount.get(collection.id) ?? 0,
updationTime: collection.updationTime,
type: isIncomingViewerShare(collection, user)
? CollectionSummaryType.incomingShareViewer
: isIncomingCollabShare(collection, user)
? CollectionSummaryType.incomingShareCollaborator
: isOutgoingShare(collection, user)
? CollectionSummaryType.outgoingShare
: isSharedOnlyViaLink(collection)
? CollectionSummaryType.sharedOnlyViaLink
: IsArchived(collection)
? CollectionSummaryType.archived
: isHiddenCollection(collection)
? CollectionSummaryType.hidden
: CollectionSummaryType[collection.type],
type: type,
});
}
}