@skip-go/client 1.0.1 → 1.0.3-alpha-0
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/api/getAssets.js +2 -15
- package/dist/api/getAssetsBetweenChains.js +2 -11
- package/dist/api/getBridges.js +2 -11
- package/dist/api/getChains.js +2 -11
- package/dist/api/getVenues.js +2 -11
- package/dist/api/postAssetsFromSource.js +3 -12
- package/dist/api/postBalances.js +2 -11
- package/dist/api/postIbcOriginAssets.js +2 -11
- package/dist/api/postMessages.d.ts +183 -183
- package/dist/api/postMessages.js +2 -11
- package/dist/api/postMessagesDirect.d.ts +183 -183
- package/dist/api/postMessagesDirect.js +2 -11
- package/dist/api/postRecommendAssets.js +2 -11
- package/dist/api/postRoute.d.ts +160 -160
- package/dist/api/postRoute.js +2 -11
- package/dist/api/postSubmitTransaction.js +2 -11
- package/dist/api/postTrackTransaction.js +2 -11
- package/dist/api/postTransactionStatus.js +2 -11
- package/dist/chunk-33K6EESX.js +10 -0
- package/dist/{chunk-Z4ZKOUGH.js → chunk-4JJWOILI.js} +3 -5
- package/dist/chunk-BQTQJQ5E.js +10 -0
- package/dist/chunk-BRMONS6A.js +130 -0
- package/dist/{chunk-ZG23Z3WY.js → chunk-C2EDPY6J.js} +3 -5
- package/dist/chunk-DW4U6YI6.js +10 -0
- package/dist/chunk-F75DC5RW.js +1786 -0
- package/dist/chunk-GARVPN2H.js +16 -0
- package/dist/{chunk-CG5CQQBW.js → chunk-JTIHU43D.js} +33 -42
- package/dist/{chunk-5ZJBR5AQ.js → chunk-KNV72XRZ.js} +3 -5
- package/dist/chunk-MGVXJ2U4.js +11 -0
- package/dist/chunk-MTMPHY3Y.js +9 -0
- package/dist/{chunk-GFRPLEJR.js → chunk-PHTQQIAH.js} +278 -311
- package/dist/{chunk-RE2QZJWE.js → chunk-PRQ2NHRZ.js} +3 -5
- package/dist/chunk-RDRDFJQE.js +10 -0
- package/dist/chunk-RMP3HM5N.js +14 -0
- package/dist/{chunk-X2YPYBVN.js → chunk-SONZJVQM.js} +59 -68
- package/dist/chunk-SWYON2RG.js +1 -4
- package/dist/{chunk-RT5TZAMU.js → chunk-TD63P2AG.js} +212 -312
- package/dist/{chunk-PKPZTO4H.js → chunk-TW77BXMT.js} +10 -13
- package/dist/chunk-UNF72WYO.js +22 -0
- package/dist/{chunk-4XWIXR2P.js → chunk-VMPFHQ7U.js} +19 -27
- package/dist/chunk-VQ5SIQWU.js +1 -3
- package/dist/chunk-W6TBGBV3.js +675 -0
- package/dist/index.d.ts +0 -3
- package/dist/index.js +24 -209
- package/dist/public-functions/executeRoute.js +12 -21
- package/dist/public-functions/getFeeInfoForChain.js +5 -14
- package/dist/public-functions/getRecommendedGasPrice.d.ts +1 -1
- package/dist/public-functions/getRecommendedGasPrice.js +7 -16
- package/dist/public-functions/getSigningStargateClient.d.ts +2 -2
- package/dist/public-functions/getSigningStargateClient.js +4 -13
- package/dist/public-functions/setApiOptions.js +2 -11
- package/dist/public-functions/setClientOptions.js +4 -13
- package/package.json +12 -3
- package/dist/chunk-2WHYWV4Y.js +0 -12
- package/dist/chunk-5KVRQLI5.js +0 -17
- package/dist/chunk-6BTWKTNM.js +0 -16
- package/dist/chunk-6GJEXV5J.js +0 -130
- package/dist/chunk-ASPVKNJ7.js +0 -242
- package/dist/chunk-EQLA2SEZ.js +0 -2361
- package/dist/chunk-FVSSCQ6C.js +0 -12
- package/dist/chunk-KYFTM3PI.js +0 -12
- package/dist/chunk-L2Q5RP6O.js +0 -25
- package/dist/chunk-LRIPQQ4M.js +0 -11
- package/dist/chunk-X2E2TKVR.js +0 -12
- package/dist/chunk-YYNIFO2A.js +0 -13
|
@@ -0,0 +1,675 @@
|
|
|
1
|
+
// src/types/swaggerTypes.ts
|
|
2
|
+
var AutopilotAction = /* @__PURE__ */ ((AutopilotAction2) => {
|
|
3
|
+
AutopilotAction2["LIQUID_STAKE"] = "LIQUID_STAKE";
|
|
4
|
+
AutopilotAction2["CLAIM"] = "CLAIM";
|
|
5
|
+
return AutopilotAction2;
|
|
6
|
+
})(AutopilotAction || {});
|
|
7
|
+
var AxelarTransferState = /* @__PURE__ */ ((AxelarTransferState2) => {
|
|
8
|
+
AxelarTransferState2["AXELAR_TRANSFER_UNKNOWN"] = "AXELAR_TRANSFER_UNKNOWN";
|
|
9
|
+
AxelarTransferState2["AXELAR_TRANSFER_PENDING_CONFIRMATION"] = "AXELAR_TRANSFER_PENDING_CONFIRMATION";
|
|
10
|
+
AxelarTransferState2["AXELAR_TRANSFER_PENDING_RECEIPT"] = "AXELAR_TRANSFER_PENDING_RECEIPT";
|
|
11
|
+
AxelarTransferState2["AXELAR_TRANSFER_SUCCESS"] = "AXELAR_TRANSFER_SUCCESS";
|
|
12
|
+
AxelarTransferState2["AXELAR_TRANSFER_FAILURE"] = "AXELAR_TRANSFER_FAILURE";
|
|
13
|
+
return AxelarTransferState2;
|
|
14
|
+
})(AxelarTransferState || {});
|
|
15
|
+
var AxelarTransferType = /* @__PURE__ */ ((AxelarTransferType2) => {
|
|
16
|
+
AxelarTransferType2["AXELAR_TRANSFER_CONTRACT_CALL_WITH_TOKEN"] = "AXELAR_TRANSFER_CONTRACT_CALL_WITH_TOKEN";
|
|
17
|
+
AxelarTransferType2["AXELAR_TRANSFER_SEND_TOKEN"] = "AXELAR_TRANSFER_SEND_TOKEN";
|
|
18
|
+
return AxelarTransferType2;
|
|
19
|
+
})(AxelarTransferType || {});
|
|
20
|
+
var CCTPTransferState = /* @__PURE__ */ ((CCTPTransferState2) => {
|
|
21
|
+
CCTPTransferState2["CCTP_TRANSFER_UNKNOWN"] = "CCTP_TRANSFER_UNKNOWN";
|
|
22
|
+
CCTPTransferState2["CCTP_TRANSFER_SENT"] = "CCTP_TRANSFER_SENT";
|
|
23
|
+
CCTPTransferState2["CCTP_TRANSFER_PENDING_CONFIRMATION"] = "CCTP_TRANSFER_PENDING_CONFIRMATION";
|
|
24
|
+
CCTPTransferState2["CCTP_TRANSFER_CONFIRMED"] = "CCTP_TRANSFER_CONFIRMED";
|
|
25
|
+
CCTPTransferState2["CCTP_TRANSFER_RECEIVED"] = "CCTP_TRANSFER_RECEIVED";
|
|
26
|
+
return CCTPTransferState2;
|
|
27
|
+
})(CCTPTransferState || {});
|
|
28
|
+
var StargateTransferState = /* @__PURE__ */ ((StargateTransferState2) => {
|
|
29
|
+
StargateTransferState2["STARGATE_TRANSFER_UNKNOWN"] = "STARGATE_TRANSFER_UNKNOWN";
|
|
30
|
+
StargateTransferState2["STARGATE_TRANSFER_SENT"] = "STARGATE_TRANSFER_SENT";
|
|
31
|
+
StargateTransferState2["STARGATE_TRANSFER_PENDING_CONFIRMATION"] = "STARGATE_TRANSFER_PENDING_CONFIRMATION";
|
|
32
|
+
StargateTransferState2["STARGATE_TRANSFER_CONFIRMED"] = "STARGATE_TRANSFER_CONFIRMED";
|
|
33
|
+
StargateTransferState2["STARGATE_TRANSFER_RECEIVED"] = "STARGATE_TRANSFER_RECEIVED";
|
|
34
|
+
StargateTransferState2["STARGATE_TRANSFER_FAILED"] = "STARGATE_TRANSFER_FAILED";
|
|
35
|
+
return StargateTransferState2;
|
|
36
|
+
})(StargateTransferState || {});
|
|
37
|
+
var GoFastTransferState = /* @__PURE__ */ ((GoFastTransferState2) => {
|
|
38
|
+
GoFastTransferState2["GO_FAST_TRANSFER_UNKNOWN"] = "GO_FAST_TRANSFER_UNKNOWN";
|
|
39
|
+
GoFastTransferState2["GO_FAST_TRANSFER_SENT"] = "GO_FAST_TRANSFER_SENT";
|
|
40
|
+
GoFastTransferState2["GO_FAST_POST_ACTION_FAILED"] = "GO_FAST_POST_ACTION_FAILED";
|
|
41
|
+
GoFastTransferState2["GO_FAST_TRANSFER_TIMEOUT"] = "GO_FAST_TRANSFER_TIMEOUT";
|
|
42
|
+
GoFastTransferState2["GO_FAST_TRANSFER_FILLED"] = "GO_FAST_TRANSFER_FILLED";
|
|
43
|
+
GoFastTransferState2["GO_FAST_TRANSFER_REFUNDED"] = "GO_FAST_TRANSFER_REFUNDED";
|
|
44
|
+
return GoFastTransferState2;
|
|
45
|
+
})(GoFastTransferState || {});
|
|
46
|
+
var BridgeType = /* @__PURE__ */ ((BridgeType2) => {
|
|
47
|
+
BridgeType2["IBC"] = "IBC";
|
|
48
|
+
BridgeType2["AXELAR"] = "AXELAR";
|
|
49
|
+
BridgeType2["CCTP"] = "CCTP";
|
|
50
|
+
BridgeType2["HYPERLANE"] = "HYPERLANE";
|
|
51
|
+
BridgeType2["OPINIT"] = "OPINIT";
|
|
52
|
+
BridgeType2["GO_FAST"] = "GO_FAST";
|
|
53
|
+
BridgeType2["STARGATE"] = "STARGATE";
|
|
54
|
+
BridgeType2["EUREKA"] = "EUREKA";
|
|
55
|
+
return BridgeType2;
|
|
56
|
+
})(BridgeType || {});
|
|
57
|
+
var ChainType = /* @__PURE__ */ ((ChainType2) => {
|
|
58
|
+
ChainType2["Cosmos"] = "cosmos";
|
|
59
|
+
ChainType2["Evm"] = "evm";
|
|
60
|
+
ChainType2["Svm"] = "svm";
|
|
61
|
+
return ChainType2;
|
|
62
|
+
})(ChainType || {});
|
|
63
|
+
var ContractCallWithTokenErrorType = /* @__PURE__ */ ((ContractCallWithTokenErrorType2) => {
|
|
64
|
+
ContractCallWithTokenErrorType2["CONTRACT_CALL_WITH_TOKEN_EXECUTION_ERROR"] = "CONTRACT_CALL_WITH_TOKEN_EXECUTION_ERROR";
|
|
65
|
+
return ContractCallWithTokenErrorType2;
|
|
66
|
+
})(ContractCallWithTokenErrorType || {});
|
|
67
|
+
var HyperlaneTransferState = /* @__PURE__ */ ((HyperlaneTransferState2) => {
|
|
68
|
+
HyperlaneTransferState2["HYPERLANE_TRANSFER_UNKNOWN"] = "HYPERLANE_TRANSFER_UNKNOWN";
|
|
69
|
+
HyperlaneTransferState2["HYPERLANE_TRANSFER_SENT"] = "HYPERLANE_TRANSFER_SENT";
|
|
70
|
+
HyperlaneTransferState2["HYPERLANE_TRANSFER_FAILED"] = "HYPERLANE_TRANSFER_FAILED";
|
|
71
|
+
HyperlaneTransferState2["HYPERLANE_TRANSFER_RECEIVED"] = "HYPERLANE_TRANSFER_RECEIVED";
|
|
72
|
+
return HyperlaneTransferState2;
|
|
73
|
+
})(HyperlaneTransferState || {});
|
|
74
|
+
var PacketErrorType = /* @__PURE__ */ ((PacketErrorType2) => {
|
|
75
|
+
PacketErrorType2["PACKET_ERROR_UNKNOWN"] = "PACKET_ERROR_UNKNOWN";
|
|
76
|
+
PacketErrorType2["PACKET_ERROR_ACKNOWLEDGEMENT"] = "PACKET_ERROR_ACKNOWLEDGEMENT";
|
|
77
|
+
PacketErrorType2["PACKET_ERROR_TIMEOUT"] = "PACKET_ERROR_TIMEOUT";
|
|
78
|
+
return PacketErrorType2;
|
|
79
|
+
})(PacketErrorType || {});
|
|
80
|
+
var Reason = /* @__PURE__ */ ((Reason2) => {
|
|
81
|
+
Reason2["UNKNOWN"] = "UNKNOWN";
|
|
82
|
+
Reason2["MOST_LIQUID"] = "MOST_LIQUID";
|
|
83
|
+
Reason2["BASE_TOKEN"] = "BASE_TOKEN";
|
|
84
|
+
Reason2["DIRECT"] = "DIRECT";
|
|
85
|
+
return Reason2;
|
|
86
|
+
})(Reason || {});
|
|
87
|
+
var RoutePriceWarningType = /* @__PURE__ */ ((RoutePriceWarningType2) => {
|
|
88
|
+
RoutePriceWarningType2["LOW_INFO_WARNING"] = "LOW_INFO_WARNING";
|
|
89
|
+
RoutePriceWarningType2["BAD_PRICE_WARNING"] = "BAD_PRICE_WARNING";
|
|
90
|
+
return RoutePriceWarningType2;
|
|
91
|
+
})(RoutePriceWarningType || {});
|
|
92
|
+
var SendTokenErrorType = /* @__PURE__ */ ((SendTokenErrorType2) => {
|
|
93
|
+
SendTokenErrorType2["SEND_TOKEN_EXECUTION_ERROR"] = "SEND_TOKEN_EXECUTION_ERROR";
|
|
94
|
+
return SendTokenErrorType2;
|
|
95
|
+
})(SendTokenErrorType || {});
|
|
96
|
+
var StatusErrorType = /* @__PURE__ */ ((StatusErrorType2) => {
|
|
97
|
+
StatusErrorType2["STATUS_ERROR_UNKNOWN"] = "STATUS_ERROR_UNKNOWN";
|
|
98
|
+
StatusErrorType2["STATUS_ERROR_TRANSACTION_EXECUTION"] = "STATUS_ERROR_TRANSACTION_EXECUTION";
|
|
99
|
+
StatusErrorType2["STATUS_ERROR_INDEXING"] = "STATUS_ERROR_INDEXING";
|
|
100
|
+
StatusErrorType2["STATUS_ERROR_TRANSFER"] = "STATUS_ERROR_TRANSFER";
|
|
101
|
+
return StatusErrorType2;
|
|
102
|
+
})(StatusErrorType || {});
|
|
103
|
+
var TransactionState = /* @__PURE__ */ ((TransactionState2) => {
|
|
104
|
+
TransactionState2["STATE_SUBMITTED"] = "STATE_SUBMITTED";
|
|
105
|
+
TransactionState2["STATE_PENDING"] = "STATE_PENDING";
|
|
106
|
+
TransactionState2["STATE_COMPLETED_SUCCESS"] = "STATE_COMPLETED_SUCCESS";
|
|
107
|
+
TransactionState2["STATE_COMPLETED_ERROR"] = "STATE_COMPLETED_ERROR";
|
|
108
|
+
TransactionState2["STATE_ABANDONED"] = "STATE_ABANDONED";
|
|
109
|
+
TransactionState2["STATE_PENDING_ERROR"] = "STATE_PENDING_ERROR";
|
|
110
|
+
return TransactionState2;
|
|
111
|
+
})(TransactionState || {});
|
|
112
|
+
var OPInitTransferState = /* @__PURE__ */ ((OPInitTransferState2) => {
|
|
113
|
+
OPInitTransferState2["OPINIT_TRANSFER_UNKNOWN"] = "OPINIT_TRANSFER_UNKNOWN";
|
|
114
|
+
OPInitTransferState2["OPINIT_TRANSFER_SENT"] = "OPINIT_TRANSFER_SENT";
|
|
115
|
+
OPInitTransferState2["OPINIT_TRANSFER_RECEIVED"] = "OPINIT_TRANSFER_RECEIVED";
|
|
116
|
+
return OPInitTransferState2;
|
|
117
|
+
})(OPInitTransferState || {});
|
|
118
|
+
var LayerZeroTransferState = /* @__PURE__ */ ((LayerZeroTransferState2) => {
|
|
119
|
+
LayerZeroTransferState2["LAYER_ZERO_TRANSFER_UNKNOWN"] = "LAYER_ZERO_TRANSFER_UNKNOWN";
|
|
120
|
+
LayerZeroTransferState2["LAYER_ZERO_TRANSFER_SENT"] = "LAYER_ZERO_TRANSFER_SENT";
|
|
121
|
+
LayerZeroTransferState2["LAYER_ZERO_TRANSFER_RECEIVED"] = "LAYER_ZERO_TRANSFER_RECEIVED";
|
|
122
|
+
LayerZeroTransferState2["LAYER_ZERO_TRANSFER_FAILED"] = "LAYER_ZERO_TRANSFER_FAILED";
|
|
123
|
+
return LayerZeroTransferState2;
|
|
124
|
+
})(LayerZeroTransferState || {});
|
|
125
|
+
var TransferState = /* @__PURE__ */ ((TransferState2) => {
|
|
126
|
+
TransferState2["TRANSFER_UNKNOWN"] = "TRANSFER_UNKNOWN";
|
|
127
|
+
TransferState2["TRANSFER_PENDING"] = "TRANSFER_PENDING";
|
|
128
|
+
TransferState2["TRANSFER_RECEIVED"] = "TRANSFER_RECEIVED";
|
|
129
|
+
TransferState2["TRANSFER_SUCCESS"] = "TRANSFER_SUCCESS";
|
|
130
|
+
TransferState2["TRANSFER_FAILURE"] = "TRANSFER_FAILURE";
|
|
131
|
+
return TransferState2;
|
|
132
|
+
})(TransferState || {});
|
|
133
|
+
var FeeType = /* @__PURE__ */ ((FeeType2) => {
|
|
134
|
+
FeeType2["SMART_RELAY"] = "SMART_RELAY";
|
|
135
|
+
return FeeType2;
|
|
136
|
+
})(FeeType || {});
|
|
137
|
+
var ContentType = /* @__PURE__ */ ((ContentType2) => {
|
|
138
|
+
ContentType2["Json"] = "application/json";
|
|
139
|
+
ContentType2["FormData"] = "multipart/form-data";
|
|
140
|
+
ContentType2["UrlEncoded"] = "application/x-www-form-urlencoded";
|
|
141
|
+
ContentType2["Text"] = "text/plain";
|
|
142
|
+
return ContentType2;
|
|
143
|
+
})(ContentType || {});
|
|
144
|
+
var HttpClient = class {
|
|
145
|
+
baseUrl = "https://api.skip.build";
|
|
146
|
+
securityData = null;
|
|
147
|
+
securityWorker;
|
|
148
|
+
abortControllers = /* @__PURE__ */ new Map();
|
|
149
|
+
customFetch = (...fetchParams) => fetch(...fetchParams);
|
|
150
|
+
baseApiParams = {
|
|
151
|
+
credentials: "same-origin",
|
|
152
|
+
headers: {},
|
|
153
|
+
redirect: "follow",
|
|
154
|
+
referrerPolicy: "no-referrer"
|
|
155
|
+
};
|
|
156
|
+
constructor(apiConfig = {}) {
|
|
157
|
+
Object.assign(this, apiConfig);
|
|
158
|
+
}
|
|
159
|
+
setSecurityData = (data) => {
|
|
160
|
+
this.securityData = data;
|
|
161
|
+
};
|
|
162
|
+
encodeQueryParam(key, value) {
|
|
163
|
+
const encodedKey = encodeURIComponent(key);
|
|
164
|
+
return `${encodedKey}=${encodeURIComponent(typeof value === "number" ? value : `${value}`)}`;
|
|
165
|
+
}
|
|
166
|
+
addQueryParam(query, key) {
|
|
167
|
+
return this.encodeQueryParam(key, query[key]);
|
|
168
|
+
}
|
|
169
|
+
addArrayQueryParam(query, key) {
|
|
170
|
+
const value = query[key];
|
|
171
|
+
return value.map((v) => this.encodeQueryParam(key, v)).join("&");
|
|
172
|
+
}
|
|
173
|
+
toQueryString(rawQuery) {
|
|
174
|
+
const query = rawQuery || {};
|
|
175
|
+
const keys = Object.keys(query).filter((key) => "undefined" !== typeof query[key]);
|
|
176
|
+
return keys.map((key) => Array.isArray(query[key]) ? this.addArrayQueryParam(query, key) : this.addQueryParam(query, key)).join("&");
|
|
177
|
+
}
|
|
178
|
+
addQueryParams(rawQuery) {
|
|
179
|
+
const queryString = this.toQueryString(rawQuery);
|
|
180
|
+
return queryString ? `?${queryString}` : "";
|
|
181
|
+
}
|
|
182
|
+
contentFormatters = {
|
|
183
|
+
["application/json" /* Json */]: (input) => input !== null && (typeof input === "object" || typeof input === "string") ? JSON.stringify(input) : input,
|
|
184
|
+
["text/plain" /* Text */]: (input) => input !== null && typeof input !== "string" ? JSON.stringify(input) : input,
|
|
185
|
+
["multipart/form-data" /* FormData */]: (input) => Object.keys(input || {}).reduce((formData, key) => {
|
|
186
|
+
const property = input[key];
|
|
187
|
+
formData.append(
|
|
188
|
+
key,
|
|
189
|
+
property instanceof Blob ? property : typeof property === "object" && property !== null ? JSON.stringify(property) : `${property}`
|
|
190
|
+
);
|
|
191
|
+
return formData;
|
|
192
|
+
}, new FormData()),
|
|
193
|
+
["application/x-www-form-urlencoded" /* UrlEncoded */]: (input) => this.toQueryString(input)
|
|
194
|
+
};
|
|
195
|
+
mergeRequestParams(params1, params2) {
|
|
196
|
+
return {
|
|
197
|
+
...this.baseApiParams,
|
|
198
|
+
...params1,
|
|
199
|
+
...params2 || {},
|
|
200
|
+
headers: {
|
|
201
|
+
...this.baseApiParams.headers || {},
|
|
202
|
+
...params1.headers || {},
|
|
203
|
+
...params2 && params2.headers || {}
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
createAbortSignal = (cancelToken) => {
|
|
208
|
+
if (this.abortControllers.has(cancelToken)) {
|
|
209
|
+
const abortController2 = this.abortControllers.get(cancelToken);
|
|
210
|
+
if (abortController2) {
|
|
211
|
+
return abortController2.signal;
|
|
212
|
+
}
|
|
213
|
+
return void 0;
|
|
214
|
+
}
|
|
215
|
+
const abortController = new AbortController();
|
|
216
|
+
this.abortControllers.set(cancelToken, abortController);
|
|
217
|
+
return abortController.signal;
|
|
218
|
+
};
|
|
219
|
+
abortRequest = (cancelToken) => {
|
|
220
|
+
const abortController = this.abortControllers.get(cancelToken);
|
|
221
|
+
if (abortController) {
|
|
222
|
+
abortController.abort();
|
|
223
|
+
this.abortControllers.delete(cancelToken);
|
|
224
|
+
}
|
|
225
|
+
};
|
|
226
|
+
request = async ({
|
|
227
|
+
body,
|
|
228
|
+
secure,
|
|
229
|
+
path,
|
|
230
|
+
type,
|
|
231
|
+
query,
|
|
232
|
+
format,
|
|
233
|
+
baseUrl,
|
|
234
|
+
cancelToken,
|
|
235
|
+
...params
|
|
236
|
+
}) => {
|
|
237
|
+
const secureParams = (typeof secure === "boolean" ? secure : this.baseApiParams.secure) && this.securityWorker && await this.securityWorker(this.securityData) || {};
|
|
238
|
+
const requestParams = this.mergeRequestParams(params, secureParams);
|
|
239
|
+
const queryString = query && this.toQueryString(query);
|
|
240
|
+
const payloadFormatter = this.contentFormatters[type || "application/json" /* Json */];
|
|
241
|
+
const responseFormat = format || requestParams.format;
|
|
242
|
+
return this.customFetch(`${baseUrl || this.baseUrl || ""}${path}${queryString ? `?${queryString}` : ""}`, {
|
|
243
|
+
...requestParams,
|
|
244
|
+
headers: {
|
|
245
|
+
...requestParams.headers || {},
|
|
246
|
+
...type && type !== "multipart/form-data" /* FormData */ ? { "Content-Type": type } : {}
|
|
247
|
+
},
|
|
248
|
+
signal: (cancelToken ? this.createAbortSignal(cancelToken) : requestParams.signal) || null,
|
|
249
|
+
body: typeof body === "undefined" || body === null ? null : payloadFormatter(body)
|
|
250
|
+
}).then(async (response) => {
|
|
251
|
+
const r = response.clone();
|
|
252
|
+
r.data = null;
|
|
253
|
+
r.error = null;
|
|
254
|
+
const data = !responseFormat ? r : await response[responseFormat]().then((data2) => {
|
|
255
|
+
if (r.ok) {
|
|
256
|
+
r.data = data2;
|
|
257
|
+
} else {
|
|
258
|
+
r.error = data2;
|
|
259
|
+
}
|
|
260
|
+
return r;
|
|
261
|
+
}).catch((e) => {
|
|
262
|
+
r.error = e;
|
|
263
|
+
return r;
|
|
264
|
+
});
|
|
265
|
+
if (cancelToken) {
|
|
266
|
+
this.abortControllers.delete(cancelToken);
|
|
267
|
+
}
|
|
268
|
+
if (!response.ok) throw data;
|
|
269
|
+
return data;
|
|
270
|
+
});
|
|
271
|
+
};
|
|
272
|
+
};
|
|
273
|
+
var Api = class extends HttpClient {
|
|
274
|
+
/**
|
|
275
|
+
* @description Get all supported chains along with additional data useful for building applications + frontends that interface with them (e.g. logo URI, IBC capabilities, fee assets, bech32 prefix, etc...)
|
|
276
|
+
*
|
|
277
|
+
* @tags Info
|
|
278
|
+
* @name GetChains
|
|
279
|
+
* @request GET:/v2/info/chains
|
|
280
|
+
*/
|
|
281
|
+
getChains = (query, params = {}) => this.request({
|
|
282
|
+
path: `/v2/info/chains`,
|
|
283
|
+
method: "GET",
|
|
284
|
+
query,
|
|
285
|
+
format: "json",
|
|
286
|
+
...params
|
|
287
|
+
});
|
|
288
|
+
/**
|
|
289
|
+
* @description Get the balances of a given set of assets on a given chain and wallet address. Compatible with all Skip Go-supported assets, excluding CW20 assets, across SVM, EVM, and Cosmos chains.
|
|
290
|
+
*
|
|
291
|
+
* @tags Info
|
|
292
|
+
* @name GetBalances
|
|
293
|
+
* @request POST:/v2/info/balances
|
|
294
|
+
*/
|
|
295
|
+
getBalances = (data, params = {}) => this.request({
|
|
296
|
+
path: `/v2/info/balances`,
|
|
297
|
+
method: "POST",
|
|
298
|
+
body: data,
|
|
299
|
+
type: "application/json" /* Json */,
|
|
300
|
+
format: "json",
|
|
301
|
+
...params
|
|
302
|
+
});
|
|
303
|
+
/**
|
|
304
|
+
* @description Get all supported bridges
|
|
305
|
+
*
|
|
306
|
+
* @tags Info
|
|
307
|
+
* @name GetBridges
|
|
308
|
+
* @request GET:/v2/info/bridges
|
|
309
|
+
*/
|
|
310
|
+
getBridges = (params = {}) => this.request({
|
|
311
|
+
path: `/v2/info/bridges`,
|
|
312
|
+
method: "GET",
|
|
313
|
+
format: "json",
|
|
314
|
+
...params
|
|
315
|
+
});
|
|
316
|
+
/**
|
|
317
|
+
* @description Get supported swap venues.
|
|
318
|
+
*
|
|
319
|
+
* @tags Fungible
|
|
320
|
+
* @name GetVenues
|
|
321
|
+
* @request GET:/v2/fungible/venues
|
|
322
|
+
*/
|
|
323
|
+
getVenues = (query, params = {}) => this.request({
|
|
324
|
+
path: `/v2/fungible/venues`,
|
|
325
|
+
method: "GET",
|
|
326
|
+
query,
|
|
327
|
+
format: "json",
|
|
328
|
+
...params
|
|
329
|
+
});
|
|
330
|
+
/**
|
|
331
|
+
* @description Get supported assets. Optionally limit to assets on a given chain and/or native assets.
|
|
332
|
+
*
|
|
333
|
+
* @tags Fungible
|
|
334
|
+
* @name GetAssets
|
|
335
|
+
* @request GET:/v2/fungible/assets
|
|
336
|
+
*/
|
|
337
|
+
getAssets = (query, params = {}) => this.request({
|
|
338
|
+
path: `/v2/fungible/assets`,
|
|
339
|
+
method: "GET",
|
|
340
|
+
query,
|
|
341
|
+
format: "json",
|
|
342
|
+
...params
|
|
343
|
+
});
|
|
344
|
+
/**
|
|
345
|
+
* @description Get assets that can be reached from a source via transfers under different conditions (e.g. single vs multiple txs)
|
|
346
|
+
*
|
|
347
|
+
* @tags Fungible
|
|
348
|
+
* @name GetAssetsFromSource
|
|
349
|
+
* @request POST:/v2/fungible/assets_from_source
|
|
350
|
+
*/
|
|
351
|
+
getAssetsFromSource = (data, params = {}) => this.request({
|
|
352
|
+
path: `/v2/fungible/assets_from_source`,
|
|
353
|
+
method: "POST",
|
|
354
|
+
body: data,
|
|
355
|
+
type: "application/json" /* Json */,
|
|
356
|
+
format: "json",
|
|
357
|
+
...params
|
|
358
|
+
});
|
|
359
|
+
/**
|
|
360
|
+
* @description This supports cross-chain actions among EVM chains, Cosmos chains, and between them. Returns the sequence of transfers and/or swaps to reach the given destination asset from the given source asset, along with estimated amount out. Commonly called before /msgs to generate route info and quote.
|
|
361
|
+
*
|
|
362
|
+
* @tags Fungible
|
|
363
|
+
* @name GetRouteV2
|
|
364
|
+
* @request POST:/v2/fungible/route
|
|
365
|
+
*/
|
|
366
|
+
getRouteV2 = (data, params = {}) => this.request({
|
|
367
|
+
path: `/v2/fungible/route`,
|
|
368
|
+
method: "POST",
|
|
369
|
+
body: data,
|
|
370
|
+
type: "application/json" /* Json */,
|
|
371
|
+
format: "json",
|
|
372
|
+
...params
|
|
373
|
+
});
|
|
374
|
+
/**
|
|
375
|
+
* @description This supports cross-chain actions among EVM chains, Cosmos chains, and between them. Returns minimal number of messages required to execute a multi-chain swap or transfer. Input consists of the output of route with additional information required for message construction (e.g. destination addresses for each chain)
|
|
376
|
+
*
|
|
377
|
+
* @tags Fungible
|
|
378
|
+
* @name GetMsgsV2
|
|
379
|
+
* @request POST:/v2/fungible/msgs
|
|
380
|
+
*/
|
|
381
|
+
getMsgsV2 = (data, params = {}) => this.request({
|
|
382
|
+
path: `/v2/fungible/msgs`,
|
|
383
|
+
method: "POST",
|
|
384
|
+
body: data,
|
|
385
|
+
type: "application/json" /* Json */,
|
|
386
|
+
format: "json",
|
|
387
|
+
...params
|
|
388
|
+
});
|
|
389
|
+
/**
|
|
390
|
+
* @description This supports cross-chain actions among EVM chains, Cosmos chains, and between them. Returns minimal number of messages required to execute a multi-chain swap or transfer. This is a convenience endpoint that combines /route and /msgs into a single call.
|
|
391
|
+
*
|
|
392
|
+
* @tags Fungible
|
|
393
|
+
* @name GetMsgsDirectV2
|
|
394
|
+
* @request POST:/v2/fungible/msgs_direct
|
|
395
|
+
*/
|
|
396
|
+
getMsgsDirectV2 = (data, params = {}) => this.request({
|
|
397
|
+
path: `/v2/fungible/msgs_direct`,
|
|
398
|
+
method: "POST",
|
|
399
|
+
body: data,
|
|
400
|
+
type: "application/json" /* Json */,
|
|
401
|
+
format: "json",
|
|
402
|
+
...params
|
|
403
|
+
});
|
|
404
|
+
/**
|
|
405
|
+
* @description Request asset recommendations for the given source assets on a given destination chain. The response includes recommended destination assets and recommendation reasons.
|
|
406
|
+
*
|
|
407
|
+
* @tags Fungible
|
|
408
|
+
* @name GetAssetRecommendations
|
|
409
|
+
* @request POST:/v2/fungible/recommend_assets
|
|
410
|
+
*/
|
|
411
|
+
getAssetRecommendations = (data, params = {}) => this.request({
|
|
412
|
+
path: `/v2/fungible/recommend_assets`,
|
|
413
|
+
method: "POST",
|
|
414
|
+
body: data,
|
|
415
|
+
type: "application/json" /* Json */,
|
|
416
|
+
format: "json",
|
|
417
|
+
...params
|
|
418
|
+
});
|
|
419
|
+
/**
|
|
420
|
+
* @description Submit a signed base64 encoded transaction to be broadcast to the specified network. On successful submission, the status of the transaction and any subsequent IBC or Axelar transfers can be queried through the /status endpoint.
|
|
421
|
+
*
|
|
422
|
+
* @tags Transaction
|
|
423
|
+
* @name SubmitTransactionV2
|
|
424
|
+
* @request POST:/v2/tx/submit
|
|
425
|
+
*/
|
|
426
|
+
submitTransactionV2 = (data, params = {}) => this.request({
|
|
427
|
+
path: `/v2/tx/submit`,
|
|
428
|
+
method: "POST",
|
|
429
|
+
body: data,
|
|
430
|
+
type: "application/json" /* Json */,
|
|
431
|
+
format: "json",
|
|
432
|
+
...params
|
|
433
|
+
});
|
|
434
|
+
/**
|
|
435
|
+
* @description Requests tracking of a transaction that has already landed on-chain but was not broadcast through the Skip Go API. The status of a tracked transaction and subsequent IBC or Axelar transfers if routing assets cross chain can be queried through the /status endpoint.
|
|
436
|
+
*
|
|
437
|
+
* @tags Transaction
|
|
438
|
+
* @name TrackTransactionV2
|
|
439
|
+
* @request POST:/v2/tx/track
|
|
440
|
+
*/
|
|
441
|
+
trackTransactionV2 = (data, params = {}) => this.request({
|
|
442
|
+
path: `/v2/tx/track`,
|
|
443
|
+
method: "POST",
|
|
444
|
+
body: data,
|
|
445
|
+
type: "application/json" /* Json */,
|
|
446
|
+
format: "json",
|
|
447
|
+
...params
|
|
448
|
+
});
|
|
449
|
+
/**
|
|
450
|
+
* @description Get the status of the specified transaction and any subsequent IBC or Axelar transfers if routing assets cross chain. The transaction must have previously been submitted to either the /submit or /track endpoints.
|
|
451
|
+
*
|
|
452
|
+
* @tags Transaction
|
|
453
|
+
* @name GetTransactionStatusV2
|
|
454
|
+
* @request GET:/v2/tx/status
|
|
455
|
+
*/
|
|
456
|
+
getTransactionStatusV2 = (query, params = {}) => this.request({
|
|
457
|
+
path: `/v2/tx/status`,
|
|
458
|
+
method: "GET",
|
|
459
|
+
query,
|
|
460
|
+
format: "json",
|
|
461
|
+
...params
|
|
462
|
+
});
|
|
463
|
+
/**
|
|
464
|
+
* @description Get origin assets from a given list of denoms and chain IDs.
|
|
465
|
+
*
|
|
466
|
+
* @tags Fungible
|
|
467
|
+
* @name GetOriginAssets
|
|
468
|
+
* @request POST:/v2/fungible/ibc_origin_assets
|
|
469
|
+
*/
|
|
470
|
+
getOriginAssets = (data, params = {}) => this.request({
|
|
471
|
+
path: `/v2/fungible/ibc_origin_assets`,
|
|
472
|
+
method: "POST",
|
|
473
|
+
body: data,
|
|
474
|
+
type: "application/json" /* Json */,
|
|
475
|
+
format: "json",
|
|
476
|
+
...params
|
|
477
|
+
});
|
|
478
|
+
/**
|
|
479
|
+
* @description Given 2 chain IDs, returns a list of equivalent assets that can be transferred
|
|
480
|
+
*
|
|
481
|
+
* @tags Fungible
|
|
482
|
+
* @name FungibleAssetsBetweenChainsCreate
|
|
483
|
+
* @request POST:/v2/fungible/assets_between_chains
|
|
484
|
+
*/
|
|
485
|
+
fungibleAssetsBetweenChainsCreate = (data, params = {}) => this.request({
|
|
486
|
+
path: `/v2/fungible/assets_between_chains`,
|
|
487
|
+
method: "POST",
|
|
488
|
+
body: data,
|
|
489
|
+
type: "application/json" /* Json */,
|
|
490
|
+
format: "json",
|
|
491
|
+
...params
|
|
492
|
+
});
|
|
493
|
+
};
|
|
494
|
+
|
|
495
|
+
// src/utils/convert.ts
|
|
496
|
+
function toSnake(obj) {
|
|
497
|
+
return convertKeys(obj, (key) => key.replace(/([A-Z])/g, "_$1").toLowerCase());
|
|
498
|
+
}
|
|
499
|
+
function toCamel(obj) {
|
|
500
|
+
return convertKeys(obj, (key) => key.replace(/_([a-z])/g, (_, letter) => letter.toUpperCase()));
|
|
501
|
+
}
|
|
502
|
+
function convertKeys(obj, convertKey) {
|
|
503
|
+
if (Array.isArray(obj)) {
|
|
504
|
+
return obj.map((item) => convertKeys(item, convertKey));
|
|
505
|
+
} else if (obj !== null && typeof obj === "object") {
|
|
506
|
+
return Object.keys(obj).reduce((acc, key) => {
|
|
507
|
+
acc[convertKey(key)] = convertKeys(obj[key], convertKey);
|
|
508
|
+
return acc;
|
|
509
|
+
}, {});
|
|
510
|
+
} else {
|
|
511
|
+
return obj;
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
// src/utils/timer.ts
|
|
516
|
+
var wait = (ms) => {
|
|
517
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
518
|
+
};
|
|
519
|
+
|
|
520
|
+
// src/utils/generateApi.ts
|
|
521
|
+
var createRequestClient = ({ baseUrl, apiKey }) => {
|
|
522
|
+
const defaultHeaders = {
|
|
523
|
+
"content-type": "application/json",
|
|
524
|
+
...apiKey ? { authorization: apiKey } : {}
|
|
525
|
+
};
|
|
526
|
+
const handleResponse = async (response) => {
|
|
527
|
+
const contentType = response.headers.get("content-type");
|
|
528
|
+
const isJson = contentType?.includes("application/json");
|
|
529
|
+
const body = isJson ? await response.json() : await response.text();
|
|
530
|
+
if (!response.ok) {
|
|
531
|
+
const message = typeof body === "object" && body?.message ? body.message : response.statusText;
|
|
532
|
+
throw new Error(message);
|
|
533
|
+
}
|
|
534
|
+
return body;
|
|
535
|
+
};
|
|
536
|
+
const get = async (path, params, signal) => {
|
|
537
|
+
const url = new URL(baseUrl + (path ?? ""));
|
|
538
|
+
if (params && typeof params === "object") {
|
|
539
|
+
Object.entries(params).forEach(([key, value]) => {
|
|
540
|
+
if (value !== void 0 && value !== null) {
|
|
541
|
+
url.searchParams.append(key, String(value));
|
|
542
|
+
}
|
|
543
|
+
});
|
|
544
|
+
}
|
|
545
|
+
const response = await fetch(url.toString(), {
|
|
546
|
+
method: "GET",
|
|
547
|
+
headers: defaultHeaders,
|
|
548
|
+
signal
|
|
549
|
+
});
|
|
550
|
+
return handleResponse(response);
|
|
551
|
+
};
|
|
552
|
+
const post = async (path, data = {}, signal) => {
|
|
553
|
+
const response = await fetch(new URL(baseUrl + path).toString(), {
|
|
554
|
+
method: "POST",
|
|
555
|
+
headers: defaultHeaders,
|
|
556
|
+
body: JSON.stringify(data),
|
|
557
|
+
signal
|
|
558
|
+
});
|
|
559
|
+
return handleResponse(response);
|
|
560
|
+
};
|
|
561
|
+
return { get, post };
|
|
562
|
+
};
|
|
563
|
+
function createRequest({
|
|
564
|
+
path,
|
|
565
|
+
method = "get",
|
|
566
|
+
onSuccess,
|
|
567
|
+
transformResponse
|
|
568
|
+
}) {
|
|
569
|
+
let controller = null;
|
|
570
|
+
const request = async (options) => {
|
|
571
|
+
const { apiKey, apiUrl, abortDuplicateRequests, ...requestParams } = options ?? {};
|
|
572
|
+
let fetchClient = ApiState.client;
|
|
573
|
+
if (apiUrl || apiKey) {
|
|
574
|
+
fetchClient = createRequestClient({
|
|
575
|
+
baseUrl: apiUrl || "https://api.skip.build",
|
|
576
|
+
apiKey
|
|
577
|
+
});
|
|
578
|
+
} else {
|
|
579
|
+
await ApiState.clientInitialized;
|
|
580
|
+
}
|
|
581
|
+
if (abortDuplicateRequests && controller && !controller?.signal?.aborted) {
|
|
582
|
+
controller?.abort();
|
|
583
|
+
}
|
|
584
|
+
controller = new AbortController();
|
|
585
|
+
try {
|
|
586
|
+
const response = await fetchClient[method](
|
|
587
|
+
path,
|
|
588
|
+
requestParams ? toSnake(requestParams) : void 0,
|
|
589
|
+
controller.signal
|
|
590
|
+
);
|
|
591
|
+
const camelCased = toCamel(response ?? {});
|
|
592
|
+
const finalResponse = transformResponse ? transformResponse(camelCased) : camelCased;
|
|
593
|
+
onSuccess?.(finalResponse, requestParams);
|
|
594
|
+
return finalResponse;
|
|
595
|
+
} catch (error) {
|
|
596
|
+
if (error.name === "AbortError") {
|
|
597
|
+
console.log("Request was cancelled");
|
|
598
|
+
} else {
|
|
599
|
+
console.error("Error:", error);
|
|
600
|
+
throw error;
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
};
|
|
604
|
+
return request;
|
|
605
|
+
}
|
|
606
|
+
function api({
|
|
607
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
608
|
+
methodName,
|
|
609
|
+
path,
|
|
610
|
+
onSuccess,
|
|
611
|
+
method = "get",
|
|
612
|
+
transformResponse
|
|
613
|
+
}) {
|
|
614
|
+
return createRequest({
|
|
615
|
+
path,
|
|
616
|
+
method,
|
|
617
|
+
onSuccess,
|
|
618
|
+
transformResponse
|
|
619
|
+
});
|
|
620
|
+
}
|
|
621
|
+
function pollingApi({
|
|
622
|
+
methodName,
|
|
623
|
+
path,
|
|
624
|
+
method = "get",
|
|
625
|
+
onSuccess,
|
|
626
|
+
onError,
|
|
627
|
+
isSuccess = () => true,
|
|
628
|
+
maxRetries = 5,
|
|
629
|
+
retryInterval = 1e3,
|
|
630
|
+
backoffMultiplier = 2
|
|
631
|
+
}) {
|
|
632
|
+
const request = async (requestParams) => {
|
|
633
|
+
let attempt = 0;
|
|
634
|
+
let lastError;
|
|
635
|
+
while (attempt < maxRetries) {
|
|
636
|
+
try {
|
|
637
|
+
const result = await api({ methodName, path, method })(requestParams);
|
|
638
|
+
if (result && isSuccess(result)) {
|
|
639
|
+
onSuccess?.(result, attempt);
|
|
640
|
+
return result;
|
|
641
|
+
}
|
|
642
|
+
} catch (err) {
|
|
643
|
+
lastError = err;
|
|
644
|
+
onError?.(err, attempt);
|
|
645
|
+
}
|
|
646
|
+
const delay = retryInterval * Math.pow(backoffMultiplier, attempt);
|
|
647
|
+
await wait(delay);
|
|
648
|
+
attempt++;
|
|
649
|
+
}
|
|
650
|
+
throw lastError ?? new Error("pollingApi: max retries exceeded");
|
|
651
|
+
};
|
|
652
|
+
return (params) => request(params);
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
// src/state/apiState.ts
|
|
656
|
+
var ApiState = class _ApiState {
|
|
657
|
+
static client;
|
|
658
|
+
static chainIdsToAffiliates;
|
|
659
|
+
static cumulativeAffiliateFeeBPS = "0";
|
|
660
|
+
static isInitialized = false;
|
|
661
|
+
static resolveInitialization;
|
|
662
|
+
static clientInitialized = new Promise((resolve) => {
|
|
663
|
+
_ApiState.resolveInitialization = () => {
|
|
664
|
+
if (!_ApiState.isInitialized) {
|
|
665
|
+
_ApiState.isInitialized = true;
|
|
666
|
+
resolve();
|
|
667
|
+
}
|
|
668
|
+
};
|
|
669
|
+
});
|
|
670
|
+
static setClientInitialized() {
|
|
671
|
+
_ApiState.resolveInitialization();
|
|
672
|
+
}
|
|
673
|
+
};
|
|
674
|
+
|
|
675
|
+
export { Api, ApiState, AutopilotAction, AxelarTransferState, AxelarTransferType, BridgeType, CCTPTransferState, ChainType, ContentType, ContractCallWithTokenErrorType, FeeType, GoFastTransferState, HttpClient, HyperlaneTransferState, LayerZeroTransferState, OPInitTransferState, PacketErrorType, Reason, RoutePriceWarningType, SendTokenErrorType, StargateTransferState, StatusErrorType, TransactionState, TransferState, api, createRequestClient, pollingApi, toCamel, wait };
|
package/dist/index.d.ts
CHANGED
|
@@ -28,9 +28,6 @@ import '@cosmjs/stargate';
|
|
|
28
28
|
import 'viem';
|
|
29
29
|
import '@solana/wallet-adapter-base';
|
|
30
30
|
import './apiState-CdzxTxYd.js';
|
|
31
|
-
import '@cosmjs/proto-signing/build/signer';
|
|
32
|
-
import '@cosmjs/stargate/build/signingstargateclient';
|
|
33
|
-
import '@cosmjs/stargate/build/fee';
|
|
34
31
|
|
|
35
32
|
declare const GAS_STATION_CHAIN_IDS: string[];
|
|
36
33
|
|