index/functions/isGalaError.md
Call Signature
isGalaError(value): value is GalaSDKError<string, Readonly<Record<string, string | number | boolean>>>
True when value is an SDK error (core's, or any product SDK's subclass) and, when code is
given, carries exactly that core code. With a code, error.params narrows to that code's
params. Without one it narrows only to "an SDK error with some string code": a product error's
code is not a core code, so it is not typed as one.
Parameters
| Parameter | Type |
|---|
value | unknown |
Returns
value is GalaSDKError<string, Readonly<Record<string, string | number | boolean>>>
Example
if (isGalaError(error, 'INVALID_PRIVATE_KEY')) {
t(`errors.key.${error.params.reason}`);
}
Call Signature
isGalaError<C>(value, code): value is GalaSDKError<C, GalaParamsOf<C>>
True when value is an SDK error (core's, or any product SDK's subclass) and, when code is
given, carries exactly that core code. With a code, error.params narrows to that code's
params. Without one it narrows only to "an SDK error with some string code": a product error's
code is not a core code, so it is not typed as one.
gala sdk error params of
Type Parameters
| Type Parameter |
|---|
C extends "REQUEST_TIMEOUT" | "TRANSPORT_ERROR" | "INVALID_TIMEOUT" | "GALA_WALLET_NOT_AVAILABLE" | "WALLET_UNAVAILABLE" | "MALFORMED_WALLET_REQUEST" | "UNSUPPORTED_WALLET_METHOD" | "INVALID_SIGNATURE" | "INVALID_CHAIN_ID" | "SIGNER_ADDRESS_MISMATCH" | "INVALID_PRIVATE_KEY" | "SIGNING_FAILED" | "KEY_PROVIDER_FAILED" | "INVALID_SIGNING_HASH_LENGTH" | "INVALID_WALLET_ADDRESS" | "INVALID_ETH_USER_REF_PREFIX" | "INVALID_DECIMAL" | "PERSONAL_SIGN_NOT_JSON" | "PERSONAL_SIGN_NOT_OBJECT" | "PERSONAL_SIGN_BAD_PREFIX" | "PERSONAL_SIGN_ENVELOPE_FIELDS" | "PERSONAL_SIGN_NOT_CANONICAL" | "EIP712_NAME_COLLISION" | "EIP712_UNSUPPORTED_VALUE" | "TYPED_DATA_NOT_STRING" | "TYPED_DATA_UNPAIRED_SURROGATE" | "TYPED_DATA_NOT_HEX_BYTES" | "TYPED_DATA_NOT_SAFE_INTEGER" | "TYPED_DATA_NOT_INTEGER" | "TYPED_DATA_NOT_BOOLEAN" | "TYPED_DATA_BAD_ADDRESS" | "TYPED_DATA_BAD_CHECKSUM" | "TYPED_DATA_BYTES_LENGTH" | "TYPED_DATA_OUT_OF_BOUNDS" | "TYPED_DATA_UNSUPPORTED_TYPE" | "TYPED_DATA_FIELDS_NOT_LIST" | "TYPED_DATA_FIELD_MALFORMED" | "TYPED_DATA_INVALID_FIELD_NAME" | "TYPED_DATA_DUPLICATE_FIELD" | "TYPED_DATA_INVALID_TYPE_NAME" | "TYPED_DATA_CIRCULAR_TYPE" | "TYPED_DATA_UNKNOWN_FIELD_TYPE" | "TYPED_DATA_NO_PRIMARY_TYPE" | "TYPED_DATA_AMBIGUOUS_PRIMARY_TYPE" | "TYPED_DATA_ARRAY_EXPECTED" | "TYPED_DATA_ARRAY_LENGTH_MISMATCH" | "TYPED_DATA_STRUCT_NOT_OBJECT" | "TYPED_DATA_MISSING_FIELD" | "TYPED_DATA_DOMAIN_NOT_OBJECT" | "TYPED_DATA_INVALID_DOMAIN_KEY" | "INVALID_UNIQUE_KEY" | "INVALID_UNIQUE_KEY_PREFIX" | "CSPRNG_UNAVAILABLE" | "INVALID_WRITES_OPTION" | "INVALID_QUANTITY" | "INVALID_TOKEN_REFERENCE" | "INVALID_TOKEN_BATCH" | "INVALID_LOCK_EXPIRES" | "INVALID_LOCK_NAME" | "NO_TOKEN_NAME_RESOLVER" | "TOKEN_NAME_RESOLUTION_FAILED" | "GATEWAY_WRITE_OUTCOME_UNKNOWN" | "GATEWAY_HTTP_ERROR" | "GATEWAY_WRITE_REJECTED" | "GATEWAY_RESPONSE_INVALID" | "INVALID_READS_OPTION" | "INVALID_PAGE_REQUEST" | "GATEWAY_READ_REJECTED" | "GATEWAY_READ_RESPONSE_INVALID" | "TOKEN_CLASS_NOT_FOUND" | "PAGINATION_LIMIT_EXCEEDED" | "WALLET_NOT_CONNECTED" | "WALLET_CONNECTION_FAILED" | "INVALID_WALLET_PROVIDER_CONFIG" | "PRIVATE_KEY_NOT_ACCESSIBLE" | "INVALID_WALLET_INPUT" | "INVALID_BRIDGE_AMOUNT" | "UNSUPPORTED_BRIDGE_TOKEN" | "BRIDGE_NOT_CONFIGURED" | "INVALID_TRANSACTION_HASH" | "INVALID_BRIDGE_OPTION" | "BRIDGE_RESPONSE_INVALID" | "BRIDGE_READ_RESPONSE_INVALID" | "BRIDGE_WRITE_OUTCOME_UNKNOWN" | "GALACONNECT_HTTP_ERROR" | "BRIDGE_TOKEN_NOT_FOUND" | "TOKEN_NOT_WRAPPABLE" | "INVALID_WRAP_DIRECTION" | "BRIDGE_REQUEST_REJECTED" | "BRIDGE_OUT_OUTCOME_UNKNOWN" | "BRIDGE_DEPOSIT_OUTCOME_UNKNOWN" | "BRIDGE_CHAIN_READ_FAILED" | "INSUFFICIENT_BRIDGE_BALANCE" | "BRIDGE_STATUS_TIMEOUT" | "WALLET_CONTEXT_MISSING" |
request timeout transport error invalid gala wallet not available unavailable malformed unsupported method signature chain id signer address mismatch private key signing failed provider hash length eth user ref prefix decimal personal sign json object bad envelope fields canonical eip712 name collision value typed data string unpaired surrogate hex bytes safe integer boolean checksum out of bounds type list field duplicate circular unknown no primary ambiguous array expected struct missing domain unique csprng writes option quantity token reference batch lock expires resolver resolution gateway write outcome http rejected response reads page read class found pagination limit exceeded connected connection config accessible input bridge amount configured transaction galaconnect wrappable wrap direction deposit insufficient balance status context
Parameters
| Parameter | Type |
|---|
value | unknown |
code | C |
Returns
value is GalaSDKError<C, GalaParamsOf<C>>
gala sdk error params of
Example
if (isGalaError(error, 'INVALID_PRIVATE_KEY')) {
t(`errors.key.${error.params.reason}`);
}