@lelantos-org/sdk / core/errors / isWalletError
Function: isWalletError() โ
Call Signature โ
ts
function isWalletError(err): err is AnyWalletError;Defined in: @lelantos-org/sdk/dist/core/errors.d.ts:281
Type guard for SDK errors in a catch. Pass code to test one variant.
ts
try {
await wallet.transfer({ to, amount });
} catch (err) {
if (isWalletError(err, "INSUFFICIENT_COVER")) {
// `err.consolidate` / `err.consolidateSum` are typed here.
await wallet.transfer({ to, amount, autoConsolidate: true });
return;
}
if (isWalletError(err)) console.error(err.code, err.message);
throw err;
}Duck-typed rather than instanceof, so it still works when two copies of the SDK end up in one bundle.
Parameters โ
| Parameter | Type |
|---|---|
err | unknown |
Returns โ
err is AnyWalletError
Call Signature โ
ts
function isWalletError<C>(err, code): err is WalletErrorOf<C>;Defined in: @lelantos-org/sdk/dist/core/errors.d.ts:282
Type guard for SDK errors in a catch. Pass code to test one variant.
ts
try {
await wallet.transfer({ to, amount });
} catch (err) {
if (isWalletError(err, "INSUFFICIENT_COVER")) {
// `err.consolidate` / `err.consolidateSum` are typed here.
await wallet.transfer({ to, amount, autoConsolidate: true });
return;
}
if (isWalletError(err)) console.error(err.code, err.message);
throw err;
}Duck-typed rather than instanceof, so it still works when two copies of the SDK end up in one bundle.
Type Parameters โ
| Type Parameter |
|---|
C extends | "RELAYER_TIMEOUT" | "FMD_TIMEOUT" | "QUOTER_TIMEOUT" | "RELAYER_FAILED" | "FMD_FAILED" | "QUOTER_FAILED" | "WORKER_TIMEOUT" | "WORKER_CRASHED" | "WORKER_FAILED" | "INSUFFICIENT_COVER" | "WALLET_CONFIG" | "INVALID_ARGUMENT" | "ENVIRONMENT" | "WIRE_FORMAT" | "PROVER_FAILED" | "PROVER_ARTIFACTS_MISSING" | "PROVER_ARTIFACTS_FAILED" | "PERMIT_REJECTED" | "DEPOSIT_ADAPTER" | "TX_MINING" | "SELECTION" | "X402_PAYMENT" | "NETWORK_NOT_DEPLOYED" | "INTERNAL" |
Parameters โ
| Parameter | Type |
|---|---|
err | unknown |
code | C |
Returns โ
err is WalletErrorOf<C>