getStatus method
Create storage status summary
Useful for displaying transaction status to users.
Parameters:
threshold: The multisig thresholdsignerAddress: Optional address to check their status
Example:
final status = storage.getStatus(
threshold: signatories.threshold,
signerAddress: bob.address,
);
print('Approvals: ${status.approvalCount}/${status.threshold}');
print('Can approve: ${status.canApprove}');
print('Is final: ${status.isFinal}');
Implementation
MultisigStorageStatus getStatus({required final int threshold, final String? signerAddress}) {
return MultisigStorageStatus(
threshold: threshold,
isComplete: isComplete(threshold),
isWaitingForFinalApproval: isFinalApproval(threshold),
depositor: depositor,
approvals: approvals,
deposit: deposit,
when: when,
hasApproved: signerAddress != null ? hasApproved(signerAddress) : null,
canApprove: signerAddress != null
? !hasApproved(signerAddress) && !isComplete(threshold)
: null,
canCancel: signerAddress != null ? isDepositor(signerAddress) : null,
);
}