@rhinestone/sdk 2.0.0-beta.22 → 2.0.0-beta.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/accounts/error.d.ts.map +1 -1
- package/dist/src/accounts/error.js +2 -0
- package/dist/src/accounts/hca.d.ts +26 -0
- package/dist/src/accounts/hca.d.ts.map +1 -0
- package/dist/src/accounts/hca.js +149 -0
- package/dist/src/accounts/index.d.ts.map +1 -1
- package/dist/src/accounts/index.js +33 -3
- package/dist/src/accounts/signing/common.js +4 -4
- package/dist/src/errors/index.d.ts +2 -2
- package/dist/src/errors/index.d.ts.map +1 -1
- package/dist/src/errors/index.js +2 -2
- package/dist/src/execution/index.d.ts.map +1 -1
- package/dist/src/execution/index.js +5 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/modules/read.d.ts +1 -1
- package/dist/src/modules/read.d.ts.map +1 -1
- package/dist/src/modules/read.js +7 -3
- package/dist/src/modules/validators/core.d.ts +3 -2
- package/dist/src/modules/validators/core.d.ts.map +1 -1
- package/dist/src/modules/validators/core.js +26 -4
- package/dist/src/modules/validators/smart-sessions.d.ts.map +1 -1
- package/dist/src/modules/validators/smart-sessions.js +7 -1
- package/dist/src/orchestrator/consts.d.ts +1 -1
- package/dist/src/orchestrator/consts.js +1 -1
- package/dist/src/orchestrator/error.d.ts +67 -3
- package/dist/src/orchestrator/error.d.ts.map +1 -1
- package/dist/src/orchestrator/error.js +206 -2
- package/dist/src/orchestrator/index.d.ts +2 -2
- package/dist/src/orchestrator/index.d.ts.map +1 -1
- package/dist/src/orchestrator/index.js +2 -2
- package/dist/src/types.d.ts +6 -3
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { bytesToHex, concat, encodeAbiParameters, encodePacked, hexToBytes, maxUint48, pad, toHex, } from 'viem';
|
|
2
|
-
import { OwnersFieldRequiredError } from '../../accounts/error.js';
|
|
2
|
+
import { AccountConfigurationNotSupportedError, OwnersFieldRequiredError, } from '../../accounts/error.js';
|
|
3
3
|
import { MODULE_TYPE_ID_VALIDATOR } from '../common.js';
|
|
4
4
|
const SMART_SESSION_EMISSARY_ADDRESS_DEV = '0x60731de80d78548875f8a67c4fec2a8660194e0c';
|
|
5
5
|
const SMART_SESSION_EMISSARY_ADDRESS = '0xad568b3f825a8d5ffc06dd3253526b64d810ae89';
|
|
6
6
|
const OWNABLE_VALIDATOR_ADDRESS = '0x000000000013fdb5234e4e3162a810f54d9f7e98';
|
|
7
|
-
const
|
|
7
|
+
const ENS_HCA_MODULE = '0x5049ecBd4d961aE6DFEED9b7ccCe7f026454970E';
|
|
8
8
|
const WEBAUTHN_VALIDATOR_ADDRESS = '0x0000000000578c4cb0e472a5462da43c495c3f33';
|
|
9
9
|
const SOCIAL_RECOVERY_VALIDATOR_ADDRESS = '0xa04d053b3c8021e8d5bf641816c42daa75d8b597';
|
|
10
10
|
const MULTI_FACTOR_VALIDATOR_ADDRESS = '0xf6bdf42c9be18ceca5c06c42a43daf7fbbe7896b';
|
|
@@ -14,10 +14,32 @@ const OWNABLE_BETA_VALIDATOR_ADDRESS = '0x0000000000e9e6e96bcaa3c113187cdb7e38ae
|
|
|
14
14
|
const WEBAUTHN_V0_VALIDATOR_ADDRESS = '0x0000000000578c4cb0e472a5462da43c495c3f33';
|
|
15
15
|
const ECDSA_MOCK_SIGNATURE = '0x81d4b4981670cb18f99f0b4a66446df1bf5b204d24cfcb659bf38ba27a4359b5711649ec2423c5e1247245eba2964679b6a1dbb85c992ae40b9b00c6935b02ff1b';
|
|
16
16
|
const WEBAUTHN_MOCK_SIGNATURE = '0x0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001b9b86eb98fda3ed4d797d9e690588dfadf17b329a76a47cec935bebf92d7ddc80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000019b2e9410bb6850f9f660a03d609d5a844fb96bcdc87a15139b03ee22c70f469100d2b865a215c3bf786387064effa8fcedcb1d625b5148f8a1236d5e3ff11acf000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d9763050000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000867b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a22396a4546696a75684557724d34534f572d7443684a625545484550343456636a634a2d42716f3166544d38222c226f726967696e223a22687474703a2f2f6c6f63616c686f73743a38303830222c2263726f73734f726967696e223a66616c73657d0000000000000000000000000000000000000000000000000000';
|
|
17
|
+
// ENS validation is only available on HCA accounts (its validator default is
|
|
18
|
+
// the HCA module). True for a direct ENS owner set or an ENS sub-validator
|
|
19
|
+
// nested in a multi-factor config.
|
|
20
|
+
function ownerSetUsesEns(owners) {
|
|
21
|
+
return (owners.type === 'ens' ||
|
|
22
|
+
(owners.type === 'multi-factor' &&
|
|
23
|
+
owners.validators.some((validator) => validator.type === 'ens')));
|
|
24
|
+
}
|
|
17
25
|
function getOwnerValidator(config) {
|
|
18
26
|
if (!config.owners) {
|
|
19
27
|
throw new OwnersFieldRequiredError();
|
|
20
28
|
}
|
|
29
|
+
// ENS owners resolve to the HCA module, which is only valid for HCA accounts.
|
|
30
|
+
// Other account types would silently install/sign against the wrong validator.
|
|
31
|
+
if (ownerSetUsesEns(config.owners) && config.account?.type !== 'hca') {
|
|
32
|
+
throw new AccountConfigurationNotSupportedError('ENS owners are only supported on HCA accounts', config.account?.type ?? 'nexus');
|
|
33
|
+
}
|
|
34
|
+
// HCA accounts use the ENS validator baked into the implementation; a custom
|
|
35
|
+
// owners.module would never be installed yet would drive signing/nonce
|
|
36
|
+
// selection, producing signatures for a validator the account does not have.
|
|
37
|
+
if (config.account?.type === 'hca' &&
|
|
38
|
+
config.owners.type === 'ens' &&
|
|
39
|
+
config.owners.module &&
|
|
40
|
+
config.owners.module.toLowerCase() !== ENS_HCA_MODULE.toLowerCase()) {
|
|
41
|
+
throw new AccountConfigurationNotSupportedError('HCA accounts do not support a custom ENS owners.module', 'hca');
|
|
42
|
+
}
|
|
21
43
|
return getValidator(config.owners);
|
|
22
44
|
}
|
|
23
45
|
function getMockSignature(ownerSet) {
|
|
@@ -114,7 +136,7 @@ function getENSValidator(threshold, owners, ownerExpirations, address) {
|
|
|
114
136
|
],
|
|
115
137
|
},
|
|
116
138
|
], [BigInt(threshold), ownersWithExpiration]);
|
|
117
|
-
const moduleAddress = address ??
|
|
139
|
+
const moduleAddress = address ?? ENS_HCA_MODULE;
|
|
118
140
|
return {
|
|
119
141
|
address: moduleAddress,
|
|
120
142
|
initData,
|
|
@@ -263,4 +285,4 @@ function supportsEip712(validator) {
|
|
|
263
285
|
return true;
|
|
264
286
|
}
|
|
265
287
|
}
|
|
266
|
-
export { OWNABLE_VALIDATOR_ADDRESS,
|
|
288
|
+
export { OWNABLE_VALIDATOR_ADDRESS, ENS_HCA_MODULE, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, WEBAUTHN_V0_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, getOwnerValidator, getOwnableValidator, getENSValidator, getWebAuthnValidator, getMultiFactorValidator, getSocialRecoveryValidator, getValidator, getMockSignature, supportsEip712, ownerSetUsesEns, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smart-sessions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/smart-sessions.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,OAAO,EAMZ,KAAK,GAAG,EAOR,KAAK,mBAAmB,EAKzB,MAAM,MAAM,CAAA;AAcb,OAAO,KAAK,EAGV,kBAAkB,EAClB,MAAM,EACN,cAAc,EACd,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,iBAAiB,EAGlB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"smart-sessions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/smart-sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { signTypedData } from '../../execution/utils.js';
|
|
|
9
9
|
import { getChainById, getWrappedTokenAddress, } from '../../orchestrator/registry.js';
|
|
10
10
|
import smartSessionEmissaryAbi from '../abi/smart-session-emissary.js';
|
|
11
11
|
import { MODULE_TYPE_ID_VALIDATOR } from '../common.js';
|
|
12
|
-
import { getOwnerValidator, getValidator, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, } from './core.js';
|
|
12
|
+
import { getOwnerValidator, getValidator, ownerSetUsesEns, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, } from './core.js';
|
|
13
13
|
import { resolvePermissions } from './permissions.js';
|
|
14
14
|
import { encodePermit2ClaimPolicyInitData, PERMIT2_CLAIM_POLICY_ADDRESS, } from './policies/claim/permit2.js';
|
|
15
15
|
const types = {
|
|
@@ -470,6 +470,12 @@ function resolvePermit2ClaimPolicy(policy) {
|
|
|
470
470
|
};
|
|
471
471
|
}
|
|
472
472
|
function resolveSessionData(session, useDevContracts, addresses = DEFAULT_POLICY_ADDRESSES) {
|
|
473
|
+
// ENS validation is HCA-only, and HCA accounts cannot install the smart
|
|
474
|
+
// session validator, so an ENS session owner would silently resolve to the
|
|
475
|
+
// HCA module and sign/enable against a validator the account does not have.
|
|
476
|
+
if (ownerSetUsesEns(session.owners)) {
|
|
477
|
+
throw new Error('ENS owners are not supported for smart sessions');
|
|
478
|
+
}
|
|
473
479
|
const validator = getValidator(session.owners);
|
|
474
480
|
const allowedContent = [
|
|
475
481
|
{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare const PROD_ORCHESTRATOR_URL = "https://v1.orchestrator.rhinestone.dev";
|
|
2
2
|
declare const RHINESTONE_SPOKE_POOL_ADDRESS = "0x000000000060f6e853447881951574cdd0663530";
|
|
3
|
-
declare const SDK_VERSION = "2.0.0-beta.
|
|
3
|
+
declare const SDK_VERSION = "2.0.0-beta.24";
|
|
4
4
|
declare const API_VERSION = "2026-04.blanc";
|
|
5
5
|
export { PROD_ORCHESTRATOR_URL, RHINESTONE_SPOKE_POOL_ADDRESS, SDK_VERSION, API_VERSION, };
|
|
6
6
|
//# sourceMappingURL=consts.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const PROD_ORCHESTRATOR_URL = 'https://v1.orchestrator.rhinestone.dev';
|
|
2
2
|
const RHINESTONE_SPOKE_POOL_ADDRESS = '0x000000000060f6e853447881951574cdd0663530';
|
|
3
|
-
const SDK_VERSION = '2.0.0-beta.
|
|
3
|
+
const SDK_VERSION = '2.0.0-beta.24';
|
|
4
4
|
const API_VERSION = '2026-04.blanc';
|
|
5
5
|
export { PROD_ORCHESTRATOR_URL, RHINESTONE_SPOKE_POOL_ADDRESS, SDK_VERSION, API_VERSION, };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
type
|
|
1
|
+
import type { Address, Hex } from 'viem';
|
|
2
|
+
type ErrorCode = 'VALIDATION_ERROR' | 'INSUFFICIENT_LIQUIDITY' | 'NOT_FOUND' | 'UNAUTHORIZED' | 'FORBIDDEN' | 'KEY_SCOPE_DENIED' | 'CONFLICT' | 'UNPROCESSABLE_CONTENT' | 'TOO_MANY_REQUESTS' | 'SETTLEMENT_QUOTE_ERROR' | 'SETTLEMENT_EXECUTION_ERROR' | 'SIMULATION_FAILED' | 'EXTERNAL_SERVICE_TIMEOUT' | 'RELAYER_MARKET_UNAVAILABLE' | 'INTERNAL_ERROR';
|
|
2
3
|
interface ValidationIssue {
|
|
3
4
|
message: string;
|
|
4
5
|
context?: Record<string, unknown>;
|
|
@@ -8,6 +9,42 @@ interface BaseErrorParams {
|
|
|
8
9
|
traceId?: string;
|
|
9
10
|
statusCode?: number;
|
|
10
11
|
}
|
|
12
|
+
type SimulationAction = 'claim' | 'fill';
|
|
13
|
+
type SimulationRetryHint = 'RE_PREPARE' | 'RETRY_LATER';
|
|
14
|
+
type SimulationErrorCategory = 'QUOTE_EXPIRED' | 'ORDER_EXPIRED' | 'PERMIT_EXPIRED' | 'PERMIT2_NONCE_CONSUMED' | 'EXECUTOR_NONCE_CONSUMED' | 'INVALID_SIGNATURE' | 'INVALID_PERMIT2_SIGNATURE' | 'INVALID_CONTRACT_SIGNATURE' | 'INVALID_SIGNER' | 'INSUFFICIENT_BALANCE' | 'INSUFFICIENT_ALLOWANCE' | 'ACCOUNT_CREATION_FAILED' | 'ACCOUNT_UNAUTHORIZED' | 'ADAPTER_CALL_FAILED' | 'EXECUTION_FAILED' | 'CLAIM_FAILED' | 'ROUTER_PAUSED' | 'ADAPTER_NOT_FOUND' | 'PANIC' | 'REQUIRE_FAILED' | 'UNCLASSIFIED_REVERT' | 'EMPTY_REVERT';
|
|
15
|
+
interface SimulationCall {
|
|
16
|
+
chainId?: string;
|
|
17
|
+
to?: Address;
|
|
18
|
+
data?: Hex;
|
|
19
|
+
value?: string;
|
|
20
|
+
}
|
|
21
|
+
interface SimulationDetails {
|
|
22
|
+
stateOverride?: unknown;
|
|
23
|
+
blockNumber?: string;
|
|
24
|
+
relayer?: Address;
|
|
25
|
+
simulationUrls?: string[];
|
|
26
|
+
}
|
|
27
|
+
interface SimulationFailureSimulation {
|
|
28
|
+
success: false;
|
|
29
|
+
action?: SimulationAction;
|
|
30
|
+
chainId?: string;
|
|
31
|
+
call?: SimulationCall;
|
|
32
|
+
errorSelector?: string;
|
|
33
|
+
errorName?: string;
|
|
34
|
+
errorArgs?: Record<string, unknown>;
|
|
35
|
+
errorCategory?: SimulationErrorCategory;
|
|
36
|
+
details?: SimulationDetails;
|
|
37
|
+
}
|
|
38
|
+
interface SimulationFailureDetails {
|
|
39
|
+
nonce?: string;
|
|
40
|
+
category?: SimulationErrorCategory;
|
|
41
|
+
errorSelector?: string;
|
|
42
|
+
errorName?: string;
|
|
43
|
+
errorArgs?: Record<string, unknown>;
|
|
44
|
+
retryable?: boolean;
|
|
45
|
+
retryHint?: SimulationRetryHint;
|
|
46
|
+
simulations?: SimulationFailureSimulation[];
|
|
47
|
+
}
|
|
11
48
|
declare class OrchestratorError extends Error {
|
|
12
49
|
readonly code: ErrorCode | 'UNKNOWN';
|
|
13
50
|
readonly traceId: string;
|
|
@@ -76,6 +113,17 @@ declare class SettlementQuoteError extends OrchestratorError {
|
|
|
76
113
|
declare class SettlementExecutionError extends OrchestratorError {
|
|
77
114
|
constructor(params: BaseErrorParams);
|
|
78
115
|
}
|
|
116
|
+
declare class SimulationFailedError extends OrchestratorError {
|
|
117
|
+
readonly nonce?: string;
|
|
118
|
+
readonly category?: SimulationErrorCategory;
|
|
119
|
+
readonly errorSelector?: string;
|
|
120
|
+
readonly errorName?: string;
|
|
121
|
+
readonly errorArgs?: Record<string, unknown>;
|
|
122
|
+
readonly retryable: boolean;
|
|
123
|
+
readonly retryHint?: SimulationRetryHint;
|
|
124
|
+
readonly simulations: SimulationFailureSimulation[];
|
|
125
|
+
constructor(params: BaseErrorParams & SimulationFailureDetails);
|
|
126
|
+
}
|
|
79
127
|
declare class ExternalServiceTimeoutError extends OrchestratorError {
|
|
80
128
|
constructor(params: BaseErrorParams);
|
|
81
129
|
}
|
|
@@ -110,7 +158,23 @@ declare function isOrchestratorError(error: unknown): error is OrchestratorError
|
|
|
110
158
|
declare function isRateLimited(error: unknown): error is RateLimitedError;
|
|
111
159
|
declare function isValidationError(error: unknown): error is ValidationError;
|
|
112
160
|
declare function isAuthError(error: unknown): error is UnauthorizedError | ForbiddenError;
|
|
161
|
+
declare function isSimulationFailed(error: unknown): error is SimulationFailedError;
|
|
113
162
|
declare function isRetryable(error: unknown): boolean;
|
|
114
|
-
|
|
115
|
-
|
|
163
|
+
/**
|
|
164
|
+
* Detects transport-level failures (connection reset, socket closed, DNS, TLS)
|
|
165
|
+
* that `fetch` rejects with instead of returning an HTTP response. Unlike HTTP
|
|
166
|
+
* errors — which the client converts into typed {@link OrchestratorError}s —
|
|
167
|
+
* these carry no status and bubble up untyped, so {@link isRetryable} misses
|
|
168
|
+
* them. They are safe to retry for idempotent reads (e.g. intent-status
|
|
169
|
+
* polling). We match by `code` and message across the cause chain — never by
|
|
170
|
+
* error type: `fetch` rejects network failures as `TypeError`, but `TypeError`
|
|
171
|
+
* is also thrown for logic bugs, bad URLs, and response-decoding errors that
|
|
172
|
+
* must NOT be retried (`waitForExecution` has no SDK-side deadline). Runtimes
|
|
173
|
+
* differ (Bun throws a plain `Error` with a socket message; undici/Node a
|
|
174
|
+
* `TypeError` with a coded `cause`), hence both signals. Caller-initiated
|
|
175
|
+
* aborts are excluded so deadlines/cancellation still propagate.
|
|
176
|
+
*/
|
|
177
|
+
declare function isConnectionError(error: unknown): boolean;
|
|
178
|
+
export type { ErrorCode, ErrorEnvelope, SimulationAction, SimulationCall, SimulationDetails, SimulationErrorCategory, SimulationFailureDetails, SimulationFailureSimulation, SimulationRetryHint, ValidationIssue, };
|
|
179
|
+
export { parseErrorEnvelope, isOrchestratorError, isRetryable, isConnectionError, isAuthError, isValidationError, isRateLimited, isSimulationFailed, OrchestratorError, ValidationError, InsufficientLiquidityError, NotFoundError, UnauthorizedError, ForbiddenError, KeyScopeDeniedError, ConflictError, UnprocessableContentError, RateLimitedError, SettlementQuoteError, SettlementExecutionError, SimulationFailedError, ExternalServiceTimeoutError, RelayerMarketUnavailableError, InternalServerError, UnsupportedChainError, UnsupportedTokenError, };
|
|
116
180
|
//# sourceMappingURL=error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../orchestrator/error.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../orchestrator/error.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,6 +85,27 @@ class SettlementExecutionError extends OrchestratorError {
|
|
|
85
85
|
super({ ...params, code: 'SETTLEMENT_EXECUTION_ERROR' });
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
+
class SimulationFailedError extends OrchestratorError {
|
|
89
|
+
nonce;
|
|
90
|
+
category;
|
|
91
|
+
errorSelector;
|
|
92
|
+
errorName;
|
|
93
|
+
errorArgs;
|
|
94
|
+
retryable;
|
|
95
|
+
retryHint;
|
|
96
|
+
simulations;
|
|
97
|
+
constructor(params) {
|
|
98
|
+
super({ ...params, code: 'SIMULATION_FAILED' });
|
|
99
|
+
this.nonce = params.nonce;
|
|
100
|
+
this.category = params.category;
|
|
101
|
+
this.errorSelector = params.errorSelector;
|
|
102
|
+
this.errorName = params.errorName;
|
|
103
|
+
this.errorArgs = params.errorArgs;
|
|
104
|
+
this.retryable = params.retryable ?? false;
|
|
105
|
+
this.retryHint = params.retryHint;
|
|
106
|
+
this.simulations = params.simulations ?? [];
|
|
107
|
+
}
|
|
108
|
+
}
|
|
88
109
|
class ExternalServiceTimeoutError extends OrchestratorError {
|
|
89
110
|
constructor(params) {
|
|
90
111
|
super({ ...params, code: 'EXTERNAL_SERVICE_TIMEOUT' });
|
|
@@ -124,6 +145,114 @@ class UnsupportedTokenError extends Error {
|
|
|
124
145
|
function parseTokenAmounts(record) {
|
|
125
146
|
return Object.fromEntries(Object.entries(record).map(([addr, amount]) => [addr, BigInt(amount)]));
|
|
126
147
|
}
|
|
148
|
+
function isRecord(value) {
|
|
149
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
150
|
+
}
|
|
151
|
+
function stringValue(value) {
|
|
152
|
+
return typeof value === 'string' ? value : undefined;
|
|
153
|
+
}
|
|
154
|
+
function booleanValue(value) {
|
|
155
|
+
return typeof value === 'boolean' ? value : undefined;
|
|
156
|
+
}
|
|
157
|
+
function recordValue(value) {
|
|
158
|
+
return isRecord(value) ? value : undefined;
|
|
159
|
+
}
|
|
160
|
+
const SIMULATION_ACTIONS = ['claim', 'fill'];
|
|
161
|
+
const SIMULATION_RETRY_HINTS = ['RE_PREPARE', 'RETRY_LATER'];
|
|
162
|
+
const SIMULATION_ERROR_CATEGORIES = [
|
|
163
|
+
'QUOTE_EXPIRED',
|
|
164
|
+
'ORDER_EXPIRED',
|
|
165
|
+
'PERMIT_EXPIRED',
|
|
166
|
+
'PERMIT2_NONCE_CONSUMED',
|
|
167
|
+
'EXECUTOR_NONCE_CONSUMED',
|
|
168
|
+
'INVALID_SIGNATURE',
|
|
169
|
+
'INVALID_PERMIT2_SIGNATURE',
|
|
170
|
+
'INVALID_CONTRACT_SIGNATURE',
|
|
171
|
+
'INVALID_SIGNER',
|
|
172
|
+
'INSUFFICIENT_BALANCE',
|
|
173
|
+
'INSUFFICIENT_ALLOWANCE',
|
|
174
|
+
'ACCOUNT_CREATION_FAILED',
|
|
175
|
+
'ACCOUNT_UNAUTHORIZED',
|
|
176
|
+
'ADAPTER_CALL_FAILED',
|
|
177
|
+
'EXECUTION_FAILED',
|
|
178
|
+
'CLAIM_FAILED',
|
|
179
|
+
'ROUTER_PAUSED',
|
|
180
|
+
'ADAPTER_NOT_FOUND',
|
|
181
|
+
'PANIC',
|
|
182
|
+
'REQUIRE_FAILED',
|
|
183
|
+
'UNCLASSIFIED_REVERT',
|
|
184
|
+
'EMPTY_REVERT',
|
|
185
|
+
];
|
|
186
|
+
function oneOf(value, allowed) {
|
|
187
|
+
return typeof value === 'string' && allowed.includes(value)
|
|
188
|
+
? value
|
|
189
|
+
: undefined;
|
|
190
|
+
}
|
|
191
|
+
function stringArrayValue(value) {
|
|
192
|
+
return Array.isArray(value)
|
|
193
|
+
? value.filter((item) => typeof item === 'string')
|
|
194
|
+
: undefined;
|
|
195
|
+
}
|
|
196
|
+
function parseSimulationCall(value) {
|
|
197
|
+
if (!isRecord(value)) {
|
|
198
|
+
return undefined;
|
|
199
|
+
}
|
|
200
|
+
return {
|
|
201
|
+
chainId: stringValue(value.chainId),
|
|
202
|
+
to: stringValue(value.to),
|
|
203
|
+
data: stringValue(value.data),
|
|
204
|
+
value: stringValue(value.value),
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
function parseSimulationDetails(value) {
|
|
208
|
+
if (!isRecord(value)) {
|
|
209
|
+
return undefined;
|
|
210
|
+
}
|
|
211
|
+
return {
|
|
212
|
+
stateOverride: value.stateOverride,
|
|
213
|
+
blockNumber: stringValue(value.blockNumber),
|
|
214
|
+
relayer: stringValue(value.relayer),
|
|
215
|
+
simulationUrls: stringArrayValue(value.simulationUrls),
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
function isSimulationFailureSimulation(value) {
|
|
219
|
+
return isRecord(value) && value.success === false;
|
|
220
|
+
}
|
|
221
|
+
function parseSimulationFailureSimulation(value) {
|
|
222
|
+
if (!isSimulationFailureSimulation(value)) {
|
|
223
|
+
return undefined;
|
|
224
|
+
}
|
|
225
|
+
return {
|
|
226
|
+
success: false,
|
|
227
|
+
action: oneOf(value.action, SIMULATION_ACTIONS),
|
|
228
|
+
chainId: stringValue(value.chainId),
|
|
229
|
+
call: parseSimulationCall(value.call),
|
|
230
|
+
errorSelector: stringValue(value.errorSelector),
|
|
231
|
+
errorName: stringValue(value.errorName),
|
|
232
|
+
errorArgs: recordValue(value.errorArgs),
|
|
233
|
+
errorCategory: oneOf(value.errorCategory, SIMULATION_ERROR_CATEGORIES),
|
|
234
|
+
details: parseSimulationDetails(value.details),
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
function parseSimulationFailureDetails(details) {
|
|
238
|
+
if (!isRecord(details)) {
|
|
239
|
+
return {};
|
|
240
|
+
}
|
|
241
|
+
return {
|
|
242
|
+
nonce: stringValue(details.nonce),
|
|
243
|
+
category: oneOf(details.category, SIMULATION_ERROR_CATEGORIES),
|
|
244
|
+
errorSelector: stringValue(details.errorSelector),
|
|
245
|
+
errorName: stringValue(details.errorName),
|
|
246
|
+
errorArgs: recordValue(details.errorArgs),
|
|
247
|
+
retryable: booleanValue(details.retryable),
|
|
248
|
+
retryHint: oneOf(details.retryHint, SIMULATION_RETRY_HINTS),
|
|
249
|
+
simulations: Array.isArray(details.simulations)
|
|
250
|
+
? details.simulations
|
|
251
|
+
.map(parseSimulationFailureSimulation)
|
|
252
|
+
.filter((simulation) => simulation !== undefined)
|
|
253
|
+
: undefined,
|
|
254
|
+
};
|
|
255
|
+
}
|
|
127
256
|
function parseErrorEnvelope(envelope, statusCode, retryAfter) {
|
|
128
257
|
const base = {
|
|
129
258
|
message: envelope.message,
|
|
@@ -173,6 +302,11 @@ function parseErrorEnvelope(envelope, statusCode, retryAfter) {
|
|
|
173
302
|
return new SettlementQuoteError(base);
|
|
174
303
|
case 'SETTLEMENT_EXECUTION_ERROR':
|
|
175
304
|
return new SettlementExecutionError(base);
|
|
305
|
+
case 'SIMULATION_FAILED':
|
|
306
|
+
return new SimulationFailedError({
|
|
307
|
+
...base,
|
|
308
|
+
...parseSimulationFailureDetails(envelope.details),
|
|
309
|
+
});
|
|
176
310
|
case 'EXTERNAL_SERVICE_TIMEOUT':
|
|
177
311
|
return new ExternalServiceTimeoutError(base);
|
|
178
312
|
case 'RELAYER_MARKET_UNAVAILABLE':
|
|
@@ -195,9 +329,79 @@ function isValidationError(error) {
|
|
|
195
329
|
function isAuthError(error) {
|
|
196
330
|
return error instanceof UnauthorizedError || error instanceof ForbiddenError;
|
|
197
331
|
}
|
|
332
|
+
function isSimulationFailed(error) {
|
|
333
|
+
return error instanceof SimulationFailedError;
|
|
334
|
+
}
|
|
198
335
|
function isRetryable(error) {
|
|
199
336
|
return (error instanceof InternalServerError ||
|
|
200
337
|
error instanceof ExternalServiceTimeoutError ||
|
|
201
|
-
error instanceof RelayerMarketUnavailableError
|
|
338
|
+
error instanceof RelayerMarketUnavailableError ||
|
|
339
|
+
(error instanceof SimulationFailedError && error.retryable));
|
|
340
|
+
}
|
|
341
|
+
// Transport-level error codes that escape `fetch` as raw errors rather than
|
|
342
|
+
// typed HTTP envelopes. Spans Node/undici and common system codes.
|
|
343
|
+
const CONNECTION_ERROR_CODES = new Set([
|
|
344
|
+
'ECONNRESET',
|
|
345
|
+
'ECONNREFUSED',
|
|
346
|
+
'ECONNABORTED',
|
|
347
|
+
'ETIMEDOUT',
|
|
348
|
+
'EPIPE',
|
|
349
|
+
'ENOTFOUND',
|
|
350
|
+
'EAI_AGAIN',
|
|
351
|
+
'EHOSTUNREACH',
|
|
352
|
+
'ENETUNREACH',
|
|
353
|
+
'UND_ERR_SOCKET',
|
|
354
|
+
'UND_ERR_CONNECT_TIMEOUT',
|
|
355
|
+
'UND_ERR_HEADERS_TIMEOUT',
|
|
356
|
+
'UND_ERR_BODY_TIMEOUT',
|
|
357
|
+
]);
|
|
358
|
+
const CONNECTION_ERROR_MESSAGES = [
|
|
359
|
+
'socket connection was closed', // Bun
|
|
360
|
+
'fetch failed', // undici/Node (the coded cause is matched separately)
|
|
361
|
+
'failed to fetch', // Chrome/Edge
|
|
362
|
+
'networkerror when attempting to fetch', // Firefox
|
|
363
|
+
'network request failed',
|
|
364
|
+
'connection closed',
|
|
365
|
+
'connection reset',
|
|
366
|
+
];
|
|
367
|
+
/**
|
|
368
|
+
* Detects transport-level failures (connection reset, socket closed, DNS, TLS)
|
|
369
|
+
* that `fetch` rejects with instead of returning an HTTP response. Unlike HTTP
|
|
370
|
+
* errors — which the client converts into typed {@link OrchestratorError}s —
|
|
371
|
+
* these carry no status and bubble up untyped, so {@link isRetryable} misses
|
|
372
|
+
* them. They are safe to retry for idempotent reads (e.g. intent-status
|
|
373
|
+
* polling). We match by `code` and message across the cause chain — never by
|
|
374
|
+
* error type: `fetch` rejects network failures as `TypeError`, but `TypeError`
|
|
375
|
+
* is also thrown for logic bugs, bad URLs, and response-decoding errors that
|
|
376
|
+
* must NOT be retried (`waitForExecution` has no SDK-side deadline). Runtimes
|
|
377
|
+
* differ (Bun throws a plain `Error` with a socket message; undici/Node a
|
|
378
|
+
* `TypeError` with a coded `cause`), hence both signals. Caller-initiated
|
|
379
|
+
* aborts are excluded so deadlines/cancellation still propagate.
|
|
380
|
+
*/
|
|
381
|
+
function isConnectionError(error) {
|
|
382
|
+
// HTTP-status errors are already typed and classified elsewhere.
|
|
383
|
+
if (isOrchestratorError(error)) {
|
|
384
|
+
return false;
|
|
385
|
+
}
|
|
386
|
+
// Caller cancellation / deadline must propagate, not retry.
|
|
387
|
+
if (error instanceof Error && error.name === 'AbortError') {
|
|
388
|
+
return false;
|
|
389
|
+
}
|
|
390
|
+
// Walk the `cause` chain; `seen` guards against cyclic causes looping forever.
|
|
391
|
+
const seen = new Set();
|
|
392
|
+
let current = error;
|
|
393
|
+
while (current != null && !seen.has(current)) {
|
|
394
|
+
seen.add(current);
|
|
395
|
+
const code = current.code;
|
|
396
|
+
if (typeof code === 'string' && CONNECTION_ERROR_CODES.has(code)) {
|
|
397
|
+
return true;
|
|
398
|
+
}
|
|
399
|
+
const message = current instanceof Error ? current.message.toLowerCase() : '';
|
|
400
|
+
if (CONNECTION_ERROR_MESSAGES.some((m) => message.includes(m))) {
|
|
401
|
+
return true;
|
|
402
|
+
}
|
|
403
|
+
current = current.cause;
|
|
404
|
+
}
|
|
405
|
+
return false;
|
|
202
406
|
}
|
|
203
|
-
export { parseErrorEnvelope, isOrchestratorError, isRetryable, isAuthError, isValidationError, isRateLimited, OrchestratorError, ValidationError, InsufficientLiquidityError, NotFoundError, UnauthorizedError, ForbiddenError, KeyScopeDeniedError, ConflictError, UnprocessableContentError, RateLimitedError, SettlementQuoteError, SettlementExecutionError, ExternalServiceTimeoutError, RelayerMarketUnavailableError, InternalServerError, UnsupportedChainError, UnsupportedTokenError, };
|
|
407
|
+
export { parseErrorEnvelope, isOrchestratorError, isRetryable, isConnectionError, isAuthError, isValidationError, isRateLimited, isSimulationFailed, OrchestratorError, ValidationError, InsufficientLiquidityError, NotFoundError, UnauthorizedError, ForbiddenError, KeyScopeDeniedError, ConflictError, UnprocessableContentError, RateLimitedError, SettlementQuoteError, SettlementExecutionError, SimulationFailedError, ExternalServiceTimeoutError, RelayerMarketUnavailableError, InternalServerError, UnsupportedChainError, UnsupportedTokenError, };
|
|
@@ -2,11 +2,11 @@ import type { AuthProvider } from '../auth/provider.js';
|
|
|
2
2
|
import { Orchestrator } from './client.js';
|
|
3
3
|
import { RHINESTONE_SPOKE_POOL_ADDRESS } from './consts.js';
|
|
4
4
|
import { type DestinationChain, hyperCoreMainnet, isNonEvmChain, type NonEvmAddress, type NonEvmChain, solanaMainnet, tronMainnet } from './destinations.js';
|
|
5
|
-
import { ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, isAuthError, isOrchestratorError, isRateLimited, isRetryable, isValidationError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SettlementExecutionError, SettlementQuoteError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError } from './error.js';
|
|
5
|
+
import { ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, isAuthError, isConnectionError, isOrchestratorError, isRateLimited, isRetryable, isSimulationFailed, isValidationError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SettlementExecutionError, SettlementQuoteError, SimulationFailedError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError } from './error.js';
|
|
6
6
|
import { getTokenSymbol, getWethAddress, isTokenAddressSupported } from './registry.js';
|
|
7
7
|
import type { ApprovalRequired, AuxiliaryFunds, BridgeFill, ChainOperation, Cost, CostTokenEntry, EstimatedFillTime, Execution, FailureReason, FeeBreakdown, Fees, IntentInput, IntentOpStatus, IntentOptions, IntentSubmitRequest, IntentSubmitResponse, OperationStatus, OriginSignature, Portfolio, Price, Quote, QuoteResponse, SettlementLayer, SettlementLayerFilter, SignatureMode, SignData, SignedAuthorization, SplitIntentsInput, SplitIntentsResult, SponsorSettings, SupportedChain, TokenConfig, TokenRequirements, TypedDataDefinition, UsdAmount, WrapRequired } from './types.js';
|
|
8
8
|
import { INTENT_STATUS_COMPLETED, INTENT_STATUS_FAILED, INTENT_STATUS_PENDING } from './types.js';
|
|
9
9
|
declare function getOrchestrator(authProvider: AuthProvider, orchestratorUrl?: string, headers?: Record<string, string>): Orchestrator;
|
|
10
10
|
export type { ApprovalRequired, AuxiliaryFunds, BridgeFill, ChainOperation, Cost, CostTokenEntry, DestinationChain, NonEvmAddress, NonEvmChain, EstimatedFillTime, Execution, FailureReason, FeeBreakdown, Fees, IntentInput, IntentOpStatus, IntentOptions, IntentSubmitRequest, IntentSubmitResponse, OperationStatus, OriginSignature, Portfolio, Price, Quote, QuoteResponse, SettlementLayer, SettlementLayerFilter, SignatureMode, SignData, SignedAuthorization, SplitIntentsInput, SplitIntentsResult, SponsorSettings, SupportedChain, TokenConfig, TokenRequirements, TypedDataDefinition, UsdAmount, WrapRequired, };
|
|
11
|
-
export { hyperCoreMainnet, isNonEvmChain, solanaMainnet, tronMainnet, INTENT_STATUS_PENDING, INTENT_STATUS_COMPLETED, INTENT_STATUS_FAILED, RHINESTONE_SPOKE_POOL_ADDRESS, Orchestrator, ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SettlementExecutionError, SettlementQuoteError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError, getOrchestrator, getWethAddress, getTokenSymbol, isOrchestratorError, isRetryable, isAuthError, isValidationError, isRateLimited, isTokenAddressSupported, };
|
|
11
|
+
export { hyperCoreMainnet, isNonEvmChain, solanaMainnet, tronMainnet, INTENT_STATUS_PENDING, INTENT_STATUS_COMPLETED, INTENT_STATUS_FAILED, RHINESTONE_SPOKE_POOL_ADDRESS, Orchestrator, ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SimulationFailedError, SettlementExecutionError, SettlementQuoteError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError, getOrchestrator, getWethAddress, getTokenSymbol, isOrchestratorError, isRetryable, isConnectionError, isAuthError, isValidationError, isRateLimited, isSimulationFailed, isTokenAddressSupported, };
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAyB,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAC/E,OAAO,EACL,KAAK,gBAAgB,EACrB,gBAAgB,EAChB,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,aAAa,EACb,WAAW,EACZ,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,aAAa,EACb,2BAA2B,EAC3B,cAAc,EACd,0BAA0B,EAC1B,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,6BAA6B,EAC7B,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EAChB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,cAAc,EACd,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,cAAc,EACd,IAAI,EACJ,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,SAAS,EACT,KAAK,EACL,KAAK,EACL,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,YAAY,EACb,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAEhB,iBAAS,eAAe,CACtB,YAAY,EAAE,YAAY,EAC1B,eAAe,CAAC,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,YAAY,CAMd;AAED,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,cAAc,EACd,IAAI,EACJ,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,SAAS,EACT,KAAK,EACL,KAAK,EACL,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,YAAY,GACb,CAAA;AACD,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,EAC7B,YAAY,EACZ,aAAa,EACb,2BAA2B,EAC3B,cAAc,EACd,0BAA0B,EAC1B,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,6BAA6B,EAC7B,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,uBAAuB,GACxB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../orchestrator/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Orchestrator } from './client.js';
|
|
2
2
|
import { PROD_ORCHESTRATOR_URL, RHINESTONE_SPOKE_POOL_ADDRESS } from './consts.js';
|
|
3
3
|
import { hyperCoreMainnet, isNonEvmChain, solanaMainnet, tronMainnet, } from './destinations.js';
|
|
4
|
-
import { ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, isAuthError, isOrchestratorError, isRateLimited, isRetryable, isValidationError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SettlementExecutionError, SettlementQuoteError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError, } from './error.js';
|
|
4
|
+
import { ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, isAuthError, isConnectionError, isOrchestratorError, isRateLimited, isRetryable, isSimulationFailed, isValidationError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SettlementExecutionError, SettlementQuoteError, SimulationFailedError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError, } from './error.js';
|
|
5
5
|
import { getTokenSymbol, getWethAddress, isTokenAddressSupported, } from './registry.js';
|
|
6
6
|
import { INTENT_STATUS_COMPLETED, INTENT_STATUS_FAILED, INTENT_STATUS_PENDING, } from './types.js';
|
|
7
7
|
function getOrchestrator(authProvider, orchestratorUrl, headers) {
|
|
8
8
|
return new Orchestrator(orchestratorUrl ?? PROD_ORCHESTRATOR_URL, authProvider, headers);
|
|
9
9
|
}
|
|
10
|
-
export { hyperCoreMainnet, isNonEvmChain, solanaMainnet, tronMainnet, INTENT_STATUS_PENDING, INTENT_STATUS_COMPLETED, INTENT_STATUS_FAILED, RHINESTONE_SPOKE_POOL_ADDRESS, Orchestrator, ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SettlementExecutionError, SettlementQuoteError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError, getOrchestrator, getWethAddress, getTokenSymbol, isOrchestratorError, isRetryable, isAuthError, isValidationError, isRateLimited, isTokenAddressSupported, };
|
|
10
|
+
export { hyperCoreMainnet, isNonEvmChain, solanaMainnet, tronMainnet, INTENT_STATUS_PENDING, INTENT_STATUS_COMPLETED, INTENT_STATUS_FAILED, RHINESTONE_SPOKE_POOL_ADDRESS, Orchestrator, ConflictError, ExternalServiceTimeoutError, ForbiddenError, InsufficientLiquidityError, InternalServerError, KeyScopeDeniedError, NotFoundError, OrchestratorError, RateLimitedError, RelayerMarketUnavailableError, SimulationFailedError, SettlementExecutionError, SettlementQuoteError, UnauthorizedError, UnprocessableContentError, UnsupportedChainError, UnsupportedTokenError, ValidationError, getOrchestrator, getWethAddress, getTokenSymbol, isOrchestratorError, isRetryable, isConnectionError, isAuthError, isValidationError, isRateLimited, isSimulationFailed, isTokenAddressSupported, };
|
package/dist/src/types.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { WebAuthnAccount } from 'viem/account-abstraction';
|
|
|
3
3
|
import type { ModuleType } from './modules/common.js';
|
|
4
4
|
import type { NonEvmAddress, NonEvmChain } from './orchestrator/destinations.js';
|
|
5
5
|
import type { AuxiliaryFunds, SettlementLayerFilter } from './orchestrator/types.js';
|
|
6
|
-
type AccountType = 'safe' | 'nexus' | 'kernel' | 'startale' | 'eoa';
|
|
6
|
+
type AccountType = 'safe' | 'nexus' | 'kernel' | 'startale' | 'eoa' | 'hca';
|
|
7
7
|
interface SafeAccount {
|
|
8
8
|
type: 'safe';
|
|
9
9
|
version?: '1.4.1';
|
|
@@ -24,10 +24,13 @@ interface StartaleAccount {
|
|
|
24
24
|
type: 'startale';
|
|
25
25
|
salt?: Hex;
|
|
26
26
|
}
|
|
27
|
+
interface HcaAccount {
|
|
28
|
+
type: 'hca';
|
|
29
|
+
}
|
|
27
30
|
interface EoaAccount {
|
|
28
31
|
type: 'eoa';
|
|
29
32
|
}
|
|
30
|
-
type AccountProviderConfig = SafeAccount | NexusAccount | KernelAccount | StartaleAccount | EoaAccount;
|
|
33
|
+
type AccountProviderConfig = SafeAccount | NexusAccount | KernelAccount | StartaleAccount | HcaAccount | EoaAccount;
|
|
31
34
|
interface OwnableValidatorConfig {
|
|
32
35
|
type: 'ecdsa';
|
|
33
36
|
accounts: Account[];
|
|
@@ -575,5 +578,5 @@ interface UserOperationTransaction {
|
|
|
575
578
|
chain: Chain;
|
|
576
579
|
}
|
|
577
580
|
type Transaction = SameChainTransaction | CrossChainTransaction;
|
|
578
|
-
export type { AccountType, SafeAccount, NexusAccount, KernelAccount, StartaleAccount, EoaAccount, RhinestoneAccountConfig, RhinestoneSDKConfig, RhinestoneConfig, AccountProviderConfig, ProviderConfig, BundlerConfig, PaymasterConfig, Transaction, UserOperationTransaction, TokenSymbol, CalldataInput, LazyCallInput, CallInput, SourceCallProvidedFunds, SourceCallInput, CallResolveContext, Call, Sponsorship, TokenRequest, TokenRequests, NonEvmTokenRequest, NonEvmTokenRequests, SourceAssetInput, OwnerSet, OwnableValidatorConfig, ENSValidatorConfig, WebauthnValidatorConfig, MultiFactorValidatorConfig, SignerSet, ChainSessionConfig, SingleSessionSignerSet, PerChainSessionSignerSet, SessionSignerSet, SessionDefinition, SessionInput, SessionEnableData, Session, Recovery, ModuleType, ModuleInput, Action, ScopedAction, FallbackAction, Permission, PermissionsForAbis, PermissionFunctionConfig, ParamConstraint, ResolvedAction, ResolvedERC7739Content, ResolvedERC7739Policies, ResolvedPolicy, Policy, Permit2ClaimPolicy, UniversalActionPolicyParamCondition, ArgPolicyExpression, SessionPolicyAddresses, ApiKeyAuth, JwtAuth, AuthConfig, };
|
|
581
|
+
export type { AccountType, SafeAccount, NexusAccount, KernelAccount, StartaleAccount, HcaAccount, EoaAccount, RhinestoneAccountConfig, RhinestoneSDKConfig, RhinestoneConfig, AccountProviderConfig, ProviderConfig, BundlerConfig, PaymasterConfig, Transaction, UserOperationTransaction, TokenSymbol, CalldataInput, LazyCallInput, CallInput, SourceCallProvidedFunds, SourceCallInput, CallResolveContext, Call, Sponsorship, TokenRequest, TokenRequests, NonEvmTokenRequest, NonEvmTokenRequests, SourceAssetInput, OwnerSet, OwnableValidatorConfig, ENSValidatorConfig, WebauthnValidatorConfig, MultiFactorValidatorConfig, SignerSet, ChainSessionConfig, SingleSessionSignerSet, PerChainSessionSignerSet, SessionSignerSet, SessionDefinition, SessionInput, SessionEnableData, Session, Recovery, ModuleType, ModuleInput, Action, ScopedAction, FallbackAction, Permission, PermissionsForAbis, PermissionFunctionConfig, ParamConstraint, ResolvedAction, ResolvedERC7739Content, ResolvedERC7739Policies, ResolvedPolicy, Policy, Permit2ClaimPolicy, UniversalActionPolicyParamCondition, ArgPolicyExpression, SessionPolicyAddresses, ApiKeyAuth, JwtAuth, AuthConfig, };
|
|
579
582
|
//# sourceMappingURL=types.d.ts.map
|