mirror of
https://github.com/documenso/documenso.git
synced 2026-07-24 17:04:12 +10:00
fix: rebase
This commit is contained in:
@@ -30,3 +30,26 @@ export const getRecipientsForDocument = async ({
|
||||
|
||||
return recipients;
|
||||
};
|
||||
|
||||
export interface GetAllRecipientsByDocumentIdOptions {
|
||||
documentId: number;
|
||||
}
|
||||
|
||||
export const getAllRecipientsByDocumentId = async ({
|
||||
documentId,
|
||||
}: GetAllRecipientsByDocumentIdOptions) => {
|
||||
const recipients = await prisma.recipient.findMany({
|
||||
where: {
|
||||
documentId,
|
||||
},
|
||||
select: {
|
||||
role: true,
|
||||
signingStatus: true,
|
||||
},
|
||||
orderBy: {
|
||||
id: 'asc',
|
||||
},
|
||||
});
|
||||
|
||||
return recipients;
|
||||
};
|
||||
|
||||
@@ -1,8 +1,29 @@
|
||||
import type { Document } from '@prisma/client';
|
||||
import { DocumentStatus } from '@prisma/client';
|
||||
import { DocumentStatus, RecipientRole, SigningStatus } from '@prisma/client';
|
||||
|
||||
export const isDocumentCompleted = (document: Pick<Document, 'status'> | DocumentStatus) => {
|
||||
const status = typeof document === 'string' ? document : document.status;
|
||||
|
||||
return status === DocumentStatus.COMPLETED || status === DocumentStatus.REJECTED;
|
||||
};
|
||||
|
||||
export const isDocumentBeingProcessed = (document: {
|
||||
status: DocumentStatus;
|
||||
deletedAt: Date | null;
|
||||
recipients: Array<{
|
||||
role: RecipientRole;
|
||||
signingStatus: SigningStatus;
|
||||
}>;
|
||||
}) => {
|
||||
if (document.status !== DocumentStatus.PENDING || document.deletedAt !== null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const recipients = document.recipients.filter((r) => r.role !== RecipientRole.CC);
|
||||
|
||||
if (recipients.length === 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return recipients.every((r) => r.signingStatus === SigningStatus.SIGNED);
|
||||
};
|
||||
|
||||
@@ -16,7 +16,7 @@ export type DocumentDialogProps = {
|
||||
/**
|
||||
* A dialog which renders the provided document.
|
||||
*/
|
||||
export default function DocumentDialog({ trigger, documentData, ...props }: DocumentDialogProps) {
|
||||
export const DocumentDialog = ({ trigger, documentData, ...props }: DocumentDialogProps) => {
|
||||
const [documentLoaded, setDocumentLoaded] = useState(false);
|
||||
|
||||
const onDocumentLoad = () => {
|
||||
@@ -58,4 +58,4 @@ export default function DocumentDialog({ trigger, documentData, ...props }: Docu
|
||||
</DialogPortal>
|
||||
</Dialog>
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user