@molecularlabs/nucleus-frontend
Version:
Nucleus BoringVault Frontend SDK
33 lines • 936 B
JavaScript
import { getPausedStates } from "../api/multi-call";
import { getVaultByKey } from "../vaults";
const getVaultStatus = async ({ vaultKey, chainId }) => {
const vault = await getVaultByKey(vaultKey);
if (!vault) {
throw new Error(`Vault not found: ${vaultKey}`);
}
const tellerAddress = vault.contracts.teller;
const accountantAddress = vault.contracts.accountant;
const [tellerStatus, accountantStatus] = await getPausedStates({
accountantAddress,
tellerAddress,
chainId
});
if (tellerStatus.status === "failure") {
throw new Error(tellerStatus.error.message);
}
if (accountantStatus.status === "failure") {
throw new Error(accountantStatus.error.message);
}
if (tellerStatus.result === true || accountantStatus.result[7] === true) {
return {
isPaused: true
};
}
return {
isPaused: false
};
};
export {
getVaultStatus
};
//# sourceMappingURL=vault-status.mjs.map