vchikalkin 5f8a9c5320 apps/web: move getDocs function to server
rename getDocs -> combineDocuments
2023-11-30 15:53:49 +03:00

24 lines
640 B
TypeScript

import type { Document, DocumentType } from './types';
import { unique } from 'radash';
export function combineDocuments({
documentTypes,
documents,
}: {
documentTypes: DocumentType[];
documents: Document[];
}) {
if (!documents.length) {
return documentTypes.map((x) => ({ ...(x as Document), canUpload: true }));
}
return unique(documents, ({ documentTypeId }) => documentTypeId).map((document) => ({
...document,
canUpload: documentTypes.some(
(documentType) => documentType.documentTypeId === document.documentTypeId
),
}));
}
export type CombinedDocuments = ReturnType<typeof combineDocuments>;