@stableflow/core 0.0.0-experimental-5a8afd7389-20260703

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/index.js ADDED
@@ -0,0 +1,1996 @@
1
+ 'use strict';
2
+
3
+ var axios = require('axios');
4
+ var FormData = require('form-data');
5
+ var buffer = require('buffer');
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
+
9
+ var axios__default = /*#__PURE__*/_interopDefault(axios);
10
+ var FormData__default = /*#__PURE__*/_interopDefault(FormData);
11
+
12
+ var __typeError = (msg) => {
13
+ throw TypeError(msg);
14
+ };
15
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
16
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
17
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
18
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
19
+
20
+ // src/core/ApiError.ts
21
+ var ApiError = class extends Error {
22
+ constructor(request2, response, message) {
23
+ super(message);
24
+ this.name = "ApiError";
25
+ this.url = response.url;
26
+ this.status = response.status;
27
+ this.statusText = response.statusText;
28
+ this.body = response.body;
29
+ this.request = request2;
30
+ }
31
+ };
32
+
33
+ // src/core/CancelablePromise.ts
34
+ var CancelError = class extends Error {
35
+ constructor(message) {
36
+ super(message);
37
+ this.name = "CancelError";
38
+ }
39
+ get isCancelled() {
40
+ return true;
41
+ }
42
+ };
43
+ var _isResolved, _isRejected, _isCancelled, _cancelHandlers, _promise, _resolve, _reject;
44
+ var CancelablePromise = class {
45
+ constructor(executor) {
46
+ __privateAdd(this, _isResolved);
47
+ __privateAdd(this, _isRejected);
48
+ __privateAdd(this, _isCancelled);
49
+ __privateAdd(this, _cancelHandlers);
50
+ __privateAdd(this, _promise);
51
+ __privateAdd(this, _resolve);
52
+ __privateAdd(this, _reject);
53
+ __privateSet(this, _isResolved, false);
54
+ __privateSet(this, _isRejected, false);
55
+ __privateSet(this, _isCancelled, false);
56
+ __privateSet(this, _cancelHandlers, []);
57
+ __privateSet(this, _promise, new Promise((resolve2, reject) => {
58
+ __privateSet(this, _resolve, resolve2);
59
+ __privateSet(this, _reject, reject);
60
+ const onResolve = (value) => {
61
+ if (__privateGet(this, _isResolved) || __privateGet(this, _isRejected) || __privateGet(this, _isCancelled)) {
62
+ return;
63
+ }
64
+ __privateSet(this, _isResolved, true);
65
+ if (__privateGet(this, _resolve)) __privateGet(this, _resolve).call(this, value);
66
+ };
67
+ const onReject = (reason) => {
68
+ if (__privateGet(this, _isResolved) || __privateGet(this, _isRejected) || __privateGet(this, _isCancelled)) {
69
+ return;
70
+ }
71
+ __privateSet(this, _isRejected, true);
72
+ if (__privateGet(this, _reject)) __privateGet(this, _reject).call(this, reason);
73
+ };
74
+ const onCancel = (cancelHandler) => {
75
+ if (__privateGet(this, _isResolved) || __privateGet(this, _isRejected) || __privateGet(this, _isCancelled)) {
76
+ return;
77
+ }
78
+ __privateGet(this, _cancelHandlers).push(cancelHandler);
79
+ };
80
+ Object.defineProperty(onCancel, "isResolved", {
81
+ get: () => __privateGet(this, _isResolved)
82
+ });
83
+ Object.defineProperty(onCancel, "isRejected", {
84
+ get: () => __privateGet(this, _isRejected)
85
+ });
86
+ Object.defineProperty(onCancel, "isCancelled", {
87
+ get: () => __privateGet(this, _isCancelled)
88
+ });
89
+ return executor(onResolve, onReject, onCancel);
90
+ }));
91
+ }
92
+ get [Symbol.toStringTag]() {
93
+ return "Cancellable Promise";
94
+ }
95
+ then(onFulfilled, onRejected) {
96
+ return __privateGet(this, _promise).then(onFulfilled, onRejected);
97
+ }
98
+ catch(onRejected) {
99
+ return __privateGet(this, _promise).catch(onRejected);
100
+ }
101
+ finally(onFinally) {
102
+ return __privateGet(this, _promise).finally(onFinally);
103
+ }
104
+ cancel() {
105
+ if (__privateGet(this, _isResolved) || __privateGet(this, _isRejected) || __privateGet(this, _isCancelled)) {
106
+ return;
107
+ }
108
+ __privateSet(this, _isCancelled, true);
109
+ if (__privateGet(this, _cancelHandlers).length) {
110
+ try {
111
+ for (const cancelHandler of __privateGet(this, _cancelHandlers)) {
112
+ cancelHandler();
113
+ }
114
+ } catch (error) {
115
+ console.warn("Cancellation threw an error", error);
116
+ return;
117
+ }
118
+ }
119
+ __privateGet(this, _cancelHandlers).length = 0;
120
+ if (__privateGet(this, _reject)) __privateGet(this, _reject).call(this, new CancelError("Request aborted"));
121
+ }
122
+ get isCancelled() {
123
+ return __privateGet(this, _isCancelled);
124
+ }
125
+ };
126
+ _isResolved = new WeakMap();
127
+ _isRejected = new WeakMap();
128
+ _isCancelled = new WeakMap();
129
+ _cancelHandlers = new WeakMap();
130
+ _promise = new WeakMap();
131
+ _resolve = new WeakMap();
132
+ _reject = new WeakMap();
133
+
134
+ // src/core/OpenAPI.ts
135
+ var OpenAPI = {
136
+ BASE: "https://api.stableflow.ai",
137
+ VERSION: "1.0.0",
138
+ WITH_CREDENTIALS: false,
139
+ CREDENTIALS: "include",
140
+ TOKEN: void 0,
141
+ NEARINTENTS_TOKEN: void 0,
142
+ USERNAME: void 0,
143
+ PASSWORD: void 0,
144
+ HEADERS: void 0,
145
+ ENCODE_PATH: void 0,
146
+ DEBUG: false
147
+ };
148
+
149
+ // src/utils/log.ts
150
+ var logStyles = {
151
+ "red-50": "background:oklch(97.1% 0.013 17.38);color:#000;",
152
+ "red-100": "background:oklch(93.6% 0.032 17.717);color:#000;",
153
+ "red-200": "background:oklch(88.5% 0.062 18.334);color:#000;",
154
+ "red-300": "background:oklch(80.8% 0.114 19.571);color:#000;",
155
+ "red-400": "background:oklch(70.4% 0.191 22.216);color:#fff;",
156
+ "red-500": "background:oklch(63.7% 0.237 25.331);color:#fff;",
157
+ "red-600": "background:oklch(57.7% 0.245 27.325);color:#fff;",
158
+ "red-700": "background:oklch(50.5% 0.213 27.518);color:#fff;",
159
+ "red-800": "background:oklch(44.4% 0.177 26.899);color:#fff;",
160
+ "red-900": "background:oklch(39.6% 0.141 25.723);color:#fff;",
161
+ "red-950": "background:oklch(25.8% 0.092 26.042);color:#fff;",
162
+ "yellow-50": "background:oklch(98.73% 0.0262 102.21);color:#000;",
163
+ "yellow-100": "background:oklch(97.29% 0.0693 103.19);color:#000;",
164
+ "yellow-200": "background:oklch(94.51% 0.1243 101.54);color:#000;",
165
+ "yellow-300": "background:oklch(90.52% 0.1657 98.11);color:#000;",
166
+ "yellow-400": "background:oklch(86.06% 0.1731 91.94);color:#fff;",
167
+ "yellow-500": "background:oklch(79.52% 0.1617 86.05);color:#fff;",
168
+ "yellow-600": "background:oklch(68.06% 0.1423 75.83);color:#fff;",
169
+ "yellow-700": "background:oklch(55.38% 0.1207 66.44);color:#fff;",
170
+ "yellow-800": "background:oklch(47.62% 0.1034 61.91);color:#fff;",
171
+ "yellow-900": "background:oklch(42.1% 0.0897 57.71);color:#fff;",
172
+ "yellow-950": "background:oklch(28.57% 0.0639 53.81);color:#fff;",
173
+ "green-50": "background:oklch(98.19% 0.0181 155.83);color:#000;",
174
+ "green-100": "background:oklch(96.24% 0.0434 156.74);color:#000;",
175
+ "green-200": "background:oklch(92.5% 0.0806 155.99);color:#000;",
176
+ "green-300": "background:oklch(87.12% 0.1363 154.45);color:#000;",
177
+ "green-400": "background:oklch(80.03% 0.1821 151.71);color:#fff;",
178
+ "green-500": "background:oklch(72.27% 0.192 149.58);color:#fff;",
179
+ "green-600": "background:oklch(62.71% 0.1699 149.21);color:#fff;",
180
+ "green-700": "background:oklch(52.73% 0.1371 150.07);color:#fff;",
181
+ "green-800": "background:oklch(44.79% 0.1083 151.33);color:#fff;",
182
+ "green-900": "background:oklch(39.25% 0.0896 152.54);color:#fff;",
183
+ "green-950": "background:oklch(26.64% 0.0628 152.93);color:#fff;",
184
+ "blue-50": "background:oklch(97.05% 0.0142 254.6);color:#000;",
185
+ "blue-100": "background:oklch(93.19% 0.0316 255.59);color:#000;",
186
+ "blue-200": "background:oklch(88.23% 0.0571 254.13);color:#000;",
187
+ "blue-300": "background:oklch(80.91% 0.0956 251.81);color:#000;",
188
+ "blue-400": "background:oklch(71.37% 0.1434 254.62);color:#fff;",
189
+ "blue-500": "background:oklch(62.31% 0.188 259.81);color:#fff;",
190
+ "blue-600": "background:oklch(54.61% 0.2152 262.88);color:#fff;",
191
+ "blue-700": "background:oklch(48.82% 0.2172 264.38);color:#fff;",
192
+ "blue-800": "background:oklch(42.44% 0.1809 265.64);color:#fff;",
193
+ "blue-900": "background:oklch(37.91% 0.1378 265.52);color:#fff;",
194
+ "blue-950": "background:oklch(28.23% 0.0874 267.94);color:#fff;",
195
+ "sky-50": "background:oklch(97.71% 0.0125 236.62);color:#000;",
196
+ "sky-100": "background:oklch(95.14% 0.025 236.82);color:#000;",
197
+ "sky-200": "background:oklch(90.14% 0.0555 230.9);color:#000;",
198
+ "sky-300": "background:oklch(82.76% 0.1013 230.32);color:#000;",
199
+ "sky-400": "background:oklch(75.35% 0.139 232.66);color:#fff;",
200
+ "sky-500": "background:oklch(68.47% 0.1479 237.32);color:#fff;",
201
+ "sky-600": "background:oklch(58.76% 0.1389 241.97);color:#fff;",
202
+ "sky-700": "background:oklch(50% 0.1193 242.75);color:#fff;",
203
+ "sky-800": "background:oklch(44.34% 0.1 240.79);color:#fff;",
204
+ "sky-900": "background:oklch(39.12% 0.0845 240.88);color:#fff;",
205
+ "sky-950": "background:oklch(29.35% 0.0632 243.16);color:#fff;",
206
+ "teal-50": "background:oklch(98.36% 0.0142 180.72);color:#000;",
207
+ "teal-100": "background:oklch(95.27% 0.0498 180.8);color:#000;",
208
+ "teal-200": "background:oklch(91% 0.0927 180.43);color:#000;",
209
+ "teal-300": "background:oklch(85.49% 0.1251 181.07);color:#000;",
210
+ "teal-400": "background:oklch(78.45% 0.1325 181.91);color:#fff;",
211
+ "teal-500": "background:oklch(70.38% 0.123 182.5);color:#fff;",
212
+ "teal-600": "background:oklch(60.02% 0.1038 184.7);color:#fff;",
213
+ "teal-700": "background:oklch(51.09% 0.0861 186.39);color:#fff;",
214
+ "teal-800": "background:oklch(43.7% 0.0705 188.22);color:#fff;",
215
+ "teal-900": "background:oklch(38.61% 0.059 188.42);color:#fff;",
216
+ "teal-950": "background:oklch(27.73% 0.0447 192.52);color:#fff;",
217
+ "purple-50": "background:oklch(97.68% 0.0142 308.3);color:#000;",
218
+ "purple-100": "background:oklch(94.64% 0.0327 307.17);color:#000;",
219
+ "purple-200": "background:oklch(90.24% 0.0604 306.7);color:#000;",
220
+ "purple-300": "background:oklch(82.68% 0.1082 306.38);color:#000;",
221
+ "purple-400": "background:oklch(72.17% 0.1767 305.5);color:#fff;",
222
+ "purple-500": "background:oklch(62.68% 0.2325 303.9);color:#fff;",
223
+ "purple-600": "background:oklch(55.75% 0.2525 302.32);color:#fff;",
224
+ "purple-700": "background:oklch(49.55% 0.2369 301.92);color:#fff;",
225
+ "purple-800": "background:oklch(43.83% 0.1983 303.72);color:#fff;",
226
+ "purple-900": "background:oklch(38.07% 0.1661 304.99);color:#fff;",
227
+ "purple-950": "background:oklch(29.05% 0.1432 302.72);color:#fff;",
228
+ "pink-50": "background:oklch(97.14% 0.0141 343.2);color:#000;",
229
+ "pink-100": "background:oklch(94.82% 0.0276 342.26);color:#000;",
230
+ "pink-200": "background:oklch(89.94% 0.0589 343.23);color:#000;",
231
+ "pink-300": "background:oklch(82.28% 0.1095 346.02);color:#000;",
232
+ "pink-400": "background:oklch(72.53% 0.1752 349.76);color:#fff;",
233
+ "pink-500": "background:oklch(65.59% 0.2118 354.31);color:#fff;",
234
+ "pink-600": "background:oklch(59.16% 0.218 354.58);color:#fff;",
235
+ "pink-700": "background:oklch(52.46% 0.199 353.96);color:#fff;",
236
+ "pink-800": "background:oklch(45.87% 0.1697 353.82);color:#fff;",
237
+ "pink-900": "background:oklch(40.78% 0.1442 352.43);color:#fff;",
238
+ "pink-950": "background:oklch(28.45% 0.1048 353.91);color:#fff;",
239
+ "rose-50": "background:oklch(96.94% 0.0151 12.42);color:#000;",
240
+ "rose-100": "background:oklch(94.14% 0.0297 12.58);color:#000;",
241
+ "rose-200": "background:oklch(89.24% 0.0559 10);color:#000;",
242
+ "rose-300": "background:oklch(80.97% 0.1061 11.64);color:#000;",
243
+ "rose-400": "background:oklch(71.92% 0.169 13.43);color:#fff;",
244
+ "rose-500": "background:oklch(64.5% 0.2154 16.44);color:#fff;",
245
+ "rose-600": "background:oklch(58.58% 0.222 17.58);color:#fff;",
246
+ "rose-700": "background:oklch(51.43% 0.1978 16.93);color:#fff;",
247
+ "rose-800": "background:oklch(45.46% 0.1713 13.7);color:#fff;",
248
+ "rose-900": "background:oklch(41.03% 0.1502 10.27);color:#fff;",
249
+ "rose-950": "background:oklch(27.08% 0.1009 12.09);color:#fff;",
250
+ "gray-50": "background:oklch(98.46% 0.0017 247.84);color:#000;",
251
+ "gray-100": "background:oklch(96.7% 0.0029 264.54);color:#000;",
252
+ "gray-200": "background:oklch(92.76% 0.0058 264.53);color:#000;",
253
+ "gray-300": "background:oklch(87.17% 0.0093 258.34);color:#000;",
254
+ "gray-400": "background:oklch(71.37% 0.0192 261.32);color:#fff;",
255
+ "gray-500": "background:oklch(55.1% 0.0234 264.36);color:#fff;",
256
+ "gray-600": "background:oklch(44.55% 0.0234 264.36);color:#fff;",
257
+ "gray-700": "background:oklch(37.29% 0.0306 259.73);color:#fff;",
258
+ "gray-800": "background:oklch(27.81% 0.0296 256.85);color:#fff;",
259
+ "gray-900": "background:oklch(21.01% 0.0318 264.66);color:#fff;",
260
+ "gray-950": "background:oklch(12.96% 0.0274 261.69);color:#fff;",
261
+ "indigo-50": "background:oklch(96.2% 0.018 272.314);color:#000;",
262
+ "indigo-100": "background:oklch(93% 0.034 272.788);color:#000;",
263
+ "indigo-200": "background:oklch(87% 0.065 274.039);color:#000;",
264
+ "indigo-300": "background:oklch(78.5% 0.115 274.713);color:#000;",
265
+ "indigo-400": "background:oklch(67.3% 0.182 276.935);color:#fff;",
266
+ "indigo-500": "background:oklch(58.5% 0.233 277.117);color:#fff;",
267
+ "indigo-600": "background:oklch(51.1% 0.262 276.966);color:#fff;",
268
+ "indigo-700": "background:oklch(45.7% 0.24 277.023);color:#fff;",
269
+ "indigo-800": "background:oklch(39.8% 0.195 277.366);color:#fff;",
270
+ "indigo-900": "background:oklch(35.9% 0.144 278.697);color:#fff;",
271
+ "indigo-950": "background:oklch(25.7% 0.09 281.288);color:#fff;",
272
+ "fuchsia-50": "background:oklch(97.7% 0.017 320.058);color:#000;",
273
+ "fuchsia-100": "background:oklch(95.2% 0.037 318.852);color:#000;",
274
+ "fuchsia-200": "background:oklch(90.3% 0.076 319.62);color:#000;",
275
+ "fuchsia-300": "background:oklch(83.3% 0.145 321.434);color:#000;",
276
+ "fuchsia-400": "background:oklch(74% 0.238 322.16);color:#fff;",
277
+ "fuchsia-500": "background:oklch(66.7% 0.295 322.15);color:#fff;",
278
+ "fuchsia-600": "background:oklch(59.1% 0.293 322.896);color:#fff;",
279
+ "fuchsia-700": "background:oklch(51.8% 0.253 323.949);color:#fff;",
280
+ "fuchsia-800": "background:oklch(45.2% 0.211 324.591);color:#fff;",
281
+ "fuchsia-900": "background:oklch(40.1% 0.17 325.612);color:#fff;",
282
+ "fuchsia-950": "background:oklch(29.3% 0.136 325.661);color:#fff;",
283
+ "stone-50": "background:oklch(98.5% 0.001 106.423);color:#000;",
284
+ "stone-100": "background:oklch(97% 0.001 106.424);color:#000;",
285
+ "stone-200": "background:oklch(92.3% 0.003 48.717);color:#000;",
286
+ "stone-300": "background:oklch(86.9% 0.005 56.366);color:#000;",
287
+ "stone-400": "background:oklch(70.9% 0.01 56.259);color:#fff;",
288
+ "stone-500": "background:oklch(55.3% 0.013 58.071);color:#fff;",
289
+ "stone-600": "background:oklch(44.4% 0.011 73.639);color:#fff;",
290
+ "stone-700": "background:oklch(37.4% 0.01 67.558);color:#fff;",
291
+ "stone-800": "background:oklch(26.8% 0.007 34.298);color:#fff;",
292
+ "stone-900": "background:oklch(21.6% 0.006 56.043);color:#fff;",
293
+ "stone-950": "background:oklch(14.7% 0.004 49.25);color:#fff;",
294
+ "lime-50": "background:oklch(98.6% 0.031 120.757);color:#000;",
295
+ "lime-100": "background:oklch(96.7% 0.067 122.328);color:#000;",
296
+ "lime-200": "background:oklch(93.8% 0.127 124.321);color:#000;",
297
+ "lime-300": "background:oklch(89.7% 0.196 126.665);color:#000;",
298
+ "lime-400": "background:oklch(84.1% 0.238 128.85);color:#fff;",
299
+ "lime-500": "background:oklch(76.8% 0.233 130.85);color:#fff;",
300
+ "lime-600": "background:oklch(64.8% 0.2 131.684);color:#fff;",
301
+ "lime-700": "background:oklch(53.2% 0.157 131.589);color:#fff;",
302
+ "lime-800": "background:oklch(45.3% 0.124 130.933);color:#fff;",
303
+ "lime-900": "background:oklch(40.5% 0.101 131.063);color:#fff;",
304
+ "lime-950": "background:oklch(27.4% 0.072 132.109);color:#fff;"
305
+ };
306
+ var csl = (isDebug, type, style, str, ...args) => {
307
+ if (!isDebug) {
308
+ return;
309
+ }
310
+ const _style = logStyles[style] || logStyles["blue-400"];
311
+ console.log(`%c[StableFlowAiSDK]${type ? ".[" + type + "]" : ""} ${str}`, _style, ...args);
312
+ };
313
+ var Csl = class {
314
+ constructor(isDebug) {
315
+ this.log = (type, style, str, ...args) => {
316
+ csl(this.isDebug, type, style, str, ...args);
317
+ };
318
+ this.info = (type, str, ...args) => {
319
+ csl(this.isDebug, type, "blue-400", str, ...args);
320
+ };
321
+ this.error = (type, str, ...args) => {
322
+ csl(this.isDebug, type, "red-400", str, ...args);
323
+ };
324
+ this.success = (type, str, ...args) => {
325
+ csl(this.isDebug, type, "green-400", str, ...args);
326
+ };
327
+ this.simple = (str, ...args) => {
328
+ csl(this.isDebug, "", "blue-400", str, ...args);
329
+ };
330
+ this.isDebug = isDebug;
331
+ }
332
+ };
333
+ var isDefined = (value) => {
334
+ return value !== void 0 && value !== null;
335
+ };
336
+ var isString = (value) => {
337
+ return typeof value === "string";
338
+ };
339
+ var isStringWithValue = (value) => {
340
+ return isString(value) && value !== "";
341
+ };
342
+ var isBlob = (value) => {
343
+ return typeof value === "object" && typeof value.type === "string" && typeof value.stream === "function" && typeof value.arrayBuffer === "function" && typeof value.constructor === "function" && typeof value.constructor.name === "string" && /^(Blob|File)$/.test(value.constructor.name) && /^(Blob|File)$/.test(value[Symbol.toStringTag]);
344
+ };
345
+ var isFormData = (value) => {
346
+ return value instanceof FormData__default.default;
347
+ };
348
+ var isSuccess = (status) => {
349
+ return status >= 200 && status < 300;
350
+ };
351
+ var base64 = (str) => {
352
+ try {
353
+ return btoa(str);
354
+ } catch (err) {
355
+ return buffer.Buffer.from(str).toString("base64");
356
+ }
357
+ };
358
+ var getQueryString = (params) => {
359
+ const qs = [];
360
+ const append = (key, value) => {
361
+ qs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);
362
+ };
363
+ const process = (key, value) => {
364
+ if (isDefined(value)) {
365
+ if (Array.isArray(value)) {
366
+ value.forEach((v) => {
367
+ process(key, v);
368
+ });
369
+ } else if (typeof value === "object") {
370
+ Object.entries(value).forEach(([k, v]) => {
371
+ process(`${key}[${k}]`, v);
372
+ });
373
+ } else {
374
+ append(key, value);
375
+ }
376
+ }
377
+ };
378
+ Object.entries(params).forEach(([key, value]) => {
379
+ process(key, value);
380
+ });
381
+ if (qs.length > 0) {
382
+ return `?${qs.join("&")}`;
383
+ }
384
+ return "";
385
+ };
386
+ var getUrl = (config, options) => {
387
+ const encoder = config.ENCODE_PATH || encodeURI;
388
+ const path = options.url.replace("{api-version}", config.VERSION).replace(/{(.*?)}/g, (substring, group) => {
389
+ if (options.path?.hasOwnProperty(group)) {
390
+ return encoder(String(options.path[group]));
391
+ }
392
+ return substring;
393
+ });
394
+ const url = `${config.BASE}${path}`;
395
+ if (options.query) {
396
+ return `${url}${getQueryString(options.query)}`;
397
+ }
398
+ return url;
399
+ };
400
+ var getFormData = (options) => {
401
+ if (options.formData) {
402
+ const formData = new FormData__default.default();
403
+ const process = (key, value) => {
404
+ if (isString(value) || isBlob(value)) {
405
+ formData.append(key, value);
406
+ } else {
407
+ formData.append(key, JSON.stringify(value));
408
+ }
409
+ };
410
+ Object.entries(options.formData).filter(([_, value]) => isDefined(value)).forEach(([key, value]) => {
411
+ if (Array.isArray(value)) {
412
+ value.forEach((v) => process(key, v));
413
+ } else {
414
+ process(key, value);
415
+ }
416
+ });
417
+ return formData;
418
+ }
419
+ return void 0;
420
+ };
421
+ var resolve = async (options, resolver) => {
422
+ if (typeof resolver === "function") {
423
+ return resolver(options);
424
+ }
425
+ return resolver;
426
+ };
427
+ var getHeaders = async (config, options, formData) => {
428
+ const [token, username, password, additionalHeaders, nearintentsToken] = await Promise.all([
429
+ resolve(options, config.TOKEN),
430
+ resolve(options, config.USERNAME),
431
+ resolve(options, config.PASSWORD),
432
+ resolve(options, config.HEADERS),
433
+ resolve(options, config.NEARINTENTS_TOKEN)
434
+ ]);
435
+ const formHeaders = typeof formData?.getHeaders === "function" && formData?.getHeaders() || {};
436
+ const headers = Object.entries({
437
+ Accept: "application/json",
438
+ ...additionalHeaders,
439
+ ...options.headers,
440
+ ...formHeaders
441
+ }).filter(([_, value]) => isDefined(value)).reduce((headers2, [key, value]) => ({
442
+ ...headers2,
443
+ [key]: String(value)
444
+ }), {});
445
+ if (isStringWithValue(token)) {
446
+ headers["Authorization"] = `Bearer ${token}`;
447
+ }
448
+ if (isStringWithValue(nearintentsToken)) {
449
+ headers["nearintent-api-key"] = nearintentsToken;
450
+ }
451
+ if (isStringWithValue(username) && isStringWithValue(password)) {
452
+ const credentials = base64(`${username}:${password}`);
453
+ headers["Authorization"] = `Basic ${credentials}`;
454
+ }
455
+ if (options.body !== void 0) {
456
+ if (options.mediaType) {
457
+ headers["Content-Type"] = options.mediaType;
458
+ } else if (isBlob(options.body)) {
459
+ headers["Content-Type"] = options.body.type || "application/octet-stream";
460
+ } else if (isString(options.body)) {
461
+ headers["Content-Type"] = "text/plain";
462
+ } else if (!isFormData(options.body)) {
463
+ headers["Content-Type"] = "application/json";
464
+ }
465
+ }
466
+ return headers;
467
+ };
468
+ var getRequestBody = (options) => {
469
+ if (options.body) {
470
+ return options.body;
471
+ }
472
+ return void 0;
473
+ };
474
+ var sendRequest = async (config, options, url, body, formData, headers, onCancel, axiosClient) => {
475
+ const source = axios__default.default.CancelToken.source();
476
+ const requestConfig = {
477
+ url,
478
+ headers,
479
+ data: body ?? formData,
480
+ method: options.method,
481
+ withCredentials: config.WITH_CREDENTIALS,
482
+ withXSRFToken: config.CREDENTIALS === "include" ? config.WITH_CREDENTIALS : false,
483
+ cancelToken: source.token,
484
+ timeout: options.timeout
485
+ };
486
+ onCancel(() => source.cancel("The user aborted a request."));
487
+ try {
488
+ return await axiosClient.request(requestConfig);
489
+ } catch (error) {
490
+ const axiosError = error;
491
+ if (axiosError.response) {
492
+ return axiosError.response;
493
+ }
494
+ throw error;
495
+ }
496
+ };
497
+ var getResponseHeader = (response, responseHeader) => {
498
+ if (responseHeader) {
499
+ const content = response.headers[responseHeader];
500
+ if (isString(content)) {
501
+ return content;
502
+ }
503
+ }
504
+ return void 0;
505
+ };
506
+ var getResponseBody = (response) => {
507
+ if (response.status !== 204) {
508
+ return response.data;
509
+ }
510
+ return void 0;
511
+ };
512
+ var catchErrorCodes = (options, result) => {
513
+ const errors = {
514
+ 401: "Unauthorized",
515
+ ...options.errors
516
+ };
517
+ const error = errors[result.status];
518
+ if (error) {
519
+ throw new ApiError(options, result, error);
520
+ }
521
+ if (!result.ok) {
522
+ const errorStatus = result.status ?? "unknown";
523
+ const errorStatusText = result.statusText ?? "unknown";
524
+ const errorBody = (() => {
525
+ try {
526
+ return JSON.stringify(result.body, null, 2);
527
+ } catch (e) {
528
+ return void 0;
529
+ }
530
+ })();
531
+ throw new ApiError(
532
+ options,
533
+ result,
534
+ `Generic Error: status: ${errorStatus}; status text: ${errorStatusText}; body: ${errorBody}`
535
+ );
536
+ }
537
+ };
538
+ var request = (config, options, axiosClient = axios__default.default) => {
539
+ const csl2 = new Csl(config.DEBUG);
540
+ return new CancelablePromise(async (resolve2, reject, onCancel) => {
541
+ try {
542
+ const url = getUrl(config, options);
543
+ const formData = getFormData(options);
544
+ const body = getRequestBody(options);
545
+ const headers = await getHeaders(config, options, formData);
546
+ csl2.simple("\n\u{1F535} ========== API Request ==========");
547
+ csl2.simple("Method:", options.method);
548
+ csl2.simple("URL:", url);
549
+ csl2.simple("Headers:", JSON.stringify(headers, null, 2));
550
+ if (body) {
551
+ csl2.simple("Body:", JSON.stringify(body, null, 2));
552
+ }
553
+ if (formData) {
554
+ csl2.simple("FormData:", formData);
555
+ }
556
+ csl2.simple("====================================\n");
557
+ if (!onCancel.isCancelled) {
558
+ const response = await sendRequest(config, options, url, body, formData, headers, onCancel, axiosClient);
559
+ const responseBody = getResponseBody(response);
560
+ const responseHeader = getResponseHeader(response, options.responseHeader);
561
+ const result = {
562
+ url,
563
+ ok: isSuccess(response.status),
564
+ status: response.status,
565
+ statusText: response.statusText,
566
+ body: responseHeader ?? responseBody
567
+ };
568
+ catchErrorCodes(options, result);
569
+ csl2.simple("\n\u{1F7E2} ========== API Response ==========");
570
+ csl2.simple("Status:", response.status, response.statusText);
571
+ csl2.simple("Response Headers:", JSON.stringify(response.headers, null, 2));
572
+ csl2.simple("Response Body:", JSON.stringify(responseBody, null, 2));
573
+ csl2.simple("=====================================\n");
574
+ resolve2(result.body);
575
+ }
576
+ } catch (error) {
577
+ csl2.simple("\n\u{1F534} ========== API Error ==========");
578
+ csl2.simple("Error:", error);
579
+ if (error instanceof ApiError) {
580
+ csl2.simple("Status:", error.status);
581
+ csl2.simple("Status Text:", error.statusText);
582
+ csl2.simple("URL:", error.url);
583
+ csl2.simple("Body:", JSON.stringify(error.body, null, 2));
584
+ }
585
+ csl2.simple("==================================\n");
586
+ reject(error);
587
+ }
588
+ });
589
+ };
590
+
591
+ // src/core/Fetch.ts
592
+ var REQUEST_ERRORS = {
593
+ 401: `Unauthorized - JWT token is invalid`
594
+ };
595
+ var getRequest = (url, query) => {
596
+ return request(OpenAPI, {
597
+ method: "GET",
598
+ timeout: 3e4,
599
+ url,
600
+ query,
601
+ headers: {
602
+ "Content-Type": "application/json"
603
+ },
604
+ errors: REQUEST_ERRORS
605
+ });
606
+ };
607
+ var postRequest = (url, data) => {
608
+ return request(OpenAPI, {
609
+ method: "POST",
610
+ timeout: 3e4,
611
+ url,
612
+ body: data,
613
+ mediaType: "application/json",
614
+ errors: REQUEST_ERRORS
615
+ });
616
+ };
617
+
618
+ // src/core/Send.ts
619
+ var SendType = /* @__PURE__ */ ((SendType2) => {
620
+ SendType2["SEND"] = "SEND";
621
+ SendType2["TRANSFER"] = "TRANSFER";
622
+ return SendType2;
623
+ })(SendType || {});
624
+
625
+ // src/core/Service.ts
626
+ var Service = {
627
+ OneClick: "oneclick",
628
+ Usdt0: "usdt0",
629
+ CCTP: "cctp",
630
+ FraxZero: "fraxzero",
631
+ FraxZeroOneClick: "fraxzero-oneclick",
632
+ OneClickFraxZero: "oneclick-fraxzero",
633
+ Usdt0OneClick: "usdt0-oneclick",
634
+ OneClickUsdt0: "oneclick-usdt0",
635
+ Native: "native"
636
+ };
637
+ var ServiceBackend = {
638
+ [Service.OneClick]: "nearintents",
639
+ [Service.Usdt0]: "layerzero",
640
+ [Service.CCTP]: "cctp",
641
+ [Service.FraxZero]: "fraxzero",
642
+ [Service.FraxZeroOneClick]: "fraxzerointent",
643
+ [Service.OneClickFraxZero]: "intentfraxzero",
644
+ [Service.Usdt0OneClick]: "zerointent",
645
+ [Service.OneClickUsdt0]: "intentzero",
646
+ [Service.Native]: "native"
647
+ };
648
+ ({
649
+ [0 /* OneClick */]: { service: Service.OneClick },
650
+ [1 /* Usdt0 */]: { service: Service.Usdt0 },
651
+ [2 /* CCTP */]: { service: Service.CCTP },
652
+ [6 /* FraxZero */]: { service: Service.FraxZero },
653
+ [7 /* FraxZeroOneClick */]: { service: Service.FraxZeroOneClick },
654
+ [8 /* OneClickFraxZero */]: { service: Service.OneClickFraxZero },
655
+ [3 /* Usdt0OneClick */]: { service: Service.Usdt0OneClick },
656
+ [4 /* OneClickUsdt0 */]: { service: Service.OneClickUsdt0 },
657
+ [5 /* Native */]: { service: Service.Native }
658
+ });
659
+
660
+ // src/models/ServiceStatus.ts
661
+ var OneClickStatus = /* @__PURE__ */ ((OneClickStatus2) => {
662
+ OneClickStatus2["KNOWN_DEPOSIT_TX"] = "KNOWN_DEPOSIT_TX";
663
+ OneClickStatus2["PENDING_DEPOSIT"] = "PENDING_DEPOSIT";
664
+ OneClickStatus2["INCOMPLETE_DEPOSIT"] = "INCOMPLETE_DEPOSIT";
665
+ OneClickStatus2["PROCESSING"] = "PROCESSING";
666
+ OneClickStatus2["SUCCESS"] = "SUCCESS";
667
+ OneClickStatus2["REFUNDED"] = "REFUNDED";
668
+ OneClickStatus2["FAILED"] = "FAILED";
669
+ return OneClickStatus2;
670
+ })(OneClickStatus || {});
671
+ var LayerZeroStatus = /* @__PURE__ */ ((LayerZeroStatus2) => {
672
+ LayerZeroStatus2["DELIVERED"] = "DELIVERED";
673
+ LayerZeroStatus2["INFLIGHT"] = "INFLIGHT";
674
+ LayerZeroStatus2["PAYLOAD_STORED"] = "PAYLOAD_STORED";
675
+ LayerZeroStatus2["FAILED"] = "FAILED";
676
+ LayerZeroStatus2["BLOCKED"] = "BLOCKED";
677
+ LayerZeroStatus2["CONFIRMING"] = "CONFIRMING";
678
+ LayerZeroStatus2["APPLICATION_BURNED"] = "APPLICATION_BURNED";
679
+ LayerZeroStatus2["APPLICATION_SKIPPED"] = "APPLICATION_SKIPPED";
680
+ LayerZeroStatus2["UNRESOLVABLE_COMMAND"] = "UNRESOLVABLE_COMMAND";
681
+ LayerZeroStatus2["MALFORMED_COMMAND"] = "MALFORMED_COMMAND";
682
+ return LayerZeroStatus2;
683
+ })(LayerZeroStatus || {});
684
+ var StableflowStatus = /* @__PURE__ */ ((StableflowStatus2) => {
685
+ StableflowStatus2[StableflowStatus2["PENDING"] = 0] = "PENDING";
686
+ StableflowStatus2[StableflowStatus2["SUCCESS"] = 1] = "SUCCESS";
687
+ StableflowStatus2[StableflowStatus2["FAILED"] = 2] = "FAILED";
688
+ StableflowStatus2[StableflowStatus2["CONFIRMING"] = 3] = "CONFIRMING";
689
+ StableflowStatus2[StableflowStatus2["CONTINUE"] = 4] = "CONTINUE";
690
+ StableflowStatus2[StableflowStatus2["LAYERZERO_SUBMITTED"] = 5] = "LAYERZERO_SUBMITTED";
691
+ return StableflowStatus2;
692
+ })(StableflowStatus || {});
693
+
694
+ // src/models/QuoteRequest.ts
695
+ exports.QuoteRequest = void 0;
696
+ ((QuoteRequest2) => {
697
+ ((depositMode2) => {
698
+ depositMode2["SIMPLE"] = "SIMPLE";
699
+ depositMode2["MEMO"] = "MEMO";
700
+ })(QuoteRequest2.depositMode || (QuoteRequest2.depositMode = {}));
701
+ ((swapType2) => {
702
+ swapType2["EXACT_INPUT"] = "EXACT_INPUT";
703
+ swapType2["EXACT_OUTPUT"] = "EXACT_OUTPUT";
704
+ swapType2["FLEX_INPUT"] = "FLEX_INPUT";
705
+ })(QuoteRequest2.swapType || (QuoteRequest2.swapType = {}));
706
+ ((depositType2) => {
707
+ depositType2["ORIGIN_CHAIN"] = "ORIGIN_CHAIN";
708
+ depositType2["INTENTS"] = "INTENTS";
709
+ })(QuoteRequest2.depositType || (QuoteRequest2.depositType = {}));
710
+ ((refundType2) => {
711
+ refundType2["ORIGIN_CHAIN"] = "ORIGIN_CHAIN";
712
+ refundType2["INTENTS"] = "INTENTS";
713
+ })(QuoteRequest2.refundType || (QuoteRequest2.refundType = {}));
714
+ ((recipientType2) => {
715
+ recipientType2["DESTINATION_CHAIN"] = "DESTINATION_CHAIN";
716
+ recipientType2["INTENTS"] = "INTENTS";
717
+ })(QuoteRequest2.recipientType || (QuoteRequest2.recipientType = {}));
718
+ })(exports.QuoteRequest || (exports.QuoteRequest = {}));
719
+
720
+ // src/models/TokenResponse.ts
721
+ exports.TokenResponse = void 0;
722
+ ((TokenResponse2) => {
723
+ ((blockchain2) => {
724
+ blockchain2["NEAR"] = "near";
725
+ blockchain2["ETH"] = "eth";
726
+ blockchain2["BASE"] = "base";
727
+ blockchain2["ARB"] = "arb";
728
+ blockchain2["BTC"] = "btc";
729
+ blockchain2["SOL"] = "sol";
730
+ blockchain2["TON"] = "ton";
731
+ blockchain2["DOGE"] = "doge";
732
+ blockchain2["XRP"] = "xrp";
733
+ blockchain2["ZEC"] = "zec";
734
+ blockchain2["GNOSIS"] = "gnosis";
735
+ blockchain2["BERA"] = "bera";
736
+ blockchain2["BSC"] = "bsc";
737
+ blockchain2["POL"] = "pol";
738
+ blockchain2["TRON"] = "tron";
739
+ blockchain2["SUI"] = "sui";
740
+ blockchain2["OP"] = "op";
741
+ blockchain2["AVAX"] = "avax";
742
+ blockchain2["CARDANO"] = "cardano";
743
+ })(TokenResponse2.blockchain || (TokenResponse2.blockchain = {}));
744
+ })(exports.TokenResponse || (exports.TokenResponse = {}));
745
+
746
+ // src/models/Status.ts
747
+ var TransactionStatus = /* @__PURE__ */ ((TransactionStatus2) => {
748
+ TransactionStatus2["Pending"] = "pending";
749
+ TransactionStatus2["Success"] = "success";
750
+ TransactionStatus2["Failed"] = "failed";
751
+ return TransactionStatus2;
752
+ })(TransactionStatus || {});
753
+
754
+ // src/services/SFA.ts
755
+ var submitOneclickDepositTx = (requestBody) => {
756
+ return postRequest("/v0/deposit/submit", requestBody);
757
+ };
758
+ var SFA = class {
759
+ /**
760
+ * Get supported tokens
761
+ * Retrieves a list of tokens currently supported by the StableFlow AI API for asset swaps.
762
+ */
763
+ static getTokens() {
764
+ return getRequest("/v0/tokens");
765
+ }
766
+ /**
767
+ * Request a swap quote
768
+ * Generates a swap quote based on input parameters such as the assets, amount, slippage tolerance, and recipient/refund information.
769
+ */
770
+ static getQuote(requestBody) {
771
+ return postRequest("/v0/quote", {
772
+ ...requestBody,
773
+ referral: "stableflow"
774
+ });
775
+ }
776
+ /**
777
+ * Check swap execution status
778
+ * Retrieves the current status of a swap using the unique deposit address from the quote.
779
+ */
780
+ static getExecutionStatus(depositAddress, depositMemo) {
781
+ return getRequest("/v0/status", {
782
+ "depositAddress": depositAddress,
783
+ "depositMemo": depositMemo
784
+ });
785
+ }
786
+ };
787
+ /**
788
+ * Submit deposit transaction hash (OneClick)
789
+ * Optionally notifies the service that a deposit has been sent to the specified address.
790
+ */
791
+ SFA.submitDepositTx = submitOneclickDepositTx;
792
+
793
+ // src/wallets/config/rpcs.ts
794
+ var NetworkRpcUrlsMap = {
795
+ "eth": ["https://0xrpc.io/eth"],
796
+ "arb": ["https://arb1.arbitrum.io/rpc"],
797
+ "bsc": ["https://56.rpc.thirdweb.com"],
798
+ "avax": ["https://api.avax.network/ext/bc/C/rpc"],
799
+ "base": ["https://mainnet.base.org"],
800
+ "pol": ["https://polygon-rpc.com"],
801
+ "gnosis": ["https://rpc.gnosischain.com"],
802
+ "op": ["https://mainnet.optimism.io"],
803
+ "bera": ["https://rpc.berachain.com"],
804
+ "tron": ["https://api.trongrid.io"],
805
+ "aptos": ["https://api.mainnet.aptoslabs.com/v1"],
806
+ "sol": ["https://solana-rpc.publicnode.com"],
807
+ "near": ["https://nearinner.deltarpc.com"],
808
+ "xlayer": ["https://rpc.xlayer.tech"],
809
+ "plasma": ["https://rpc.plasma.to"],
810
+ "mantle": ["https://rpc.mantle.xyz", "https://mantle-rpc.publicnode.com"],
811
+ "megaeth": ["https://mainnet.megaeth.com/rpc"],
812
+ "ink": ["https://rpc-gel.inkonchain.com", "https://rpc-qnd.inkonchain.com"],
813
+ "stable": ["https://rpc.stable.xyz"],
814
+ "celo": ["https://forno.celo.org"],
815
+ "sei": ["https://sei-evm-rpc.publicnode.com"],
816
+ "flare": ["https://flare-api.flare.network/ext/C/rpc"],
817
+ "frax": ["https://rpc.frax.com"],
818
+ "ton": ["https://toncenter.com/api/v2/jsonRPC"],
819
+ "sui": ["https://fullnode.mainnet.sui.io:443"],
820
+ "katana": ["https://rpc.katana.network", "https://katana.drpc.org"]
821
+ };
822
+ var getRpcUrls = (blockchain) => {
823
+ return NetworkRpcUrlsMap[blockchain] || [];
824
+ };
825
+ var getChainRpcUrl = (blockchain) => {
826
+ return {
827
+ rpcUrls: NetworkRpcUrlsMap[blockchain],
828
+ rpcUrl: NetworkRpcUrlsMap[blockchain][0]
829
+ };
830
+ };
831
+ var setRpcUrls = (urls) => {
832
+ for (const blockchain in urls) {
833
+ const prev = NetworkRpcUrlsMap[blockchain] ?? [];
834
+ const next = urls[blockchain];
835
+ for (let i = next.length - 1; i >= 0; i--) {
836
+ const rpc = next[i];
837
+ if (prev.some((_rpc) => _rpc.toLowerCase() === rpc.toLowerCase())) {
838
+ continue;
839
+ }
840
+ prev.unshift(rpc);
841
+ }
842
+ }
843
+ return NetworkRpcUrlsMap;
844
+ };
845
+
846
+ // src/wallets/config/chains.ts
847
+ var chainTypes = {
848
+ near: {
849
+ value: "near"},
850
+ sol: {
851
+ value: "sol"},
852
+ evm: {
853
+ value: "evm"},
854
+ tron: {
855
+ value: "tron"},
856
+ aptos: {
857
+ value: "aptos"},
858
+ ton: {
859
+ value: "ton"},
860
+ sui: {
861
+ value: "sui"}
862
+ };
863
+ var getStableflowChainLogo = (name) => {
864
+ return `/chains/${name}.png`;
865
+ };
866
+ var chains = {
867
+ near: {
868
+ chainName: "Near",
869
+ blockchain: "near",
870
+ chainIcon: getStableflowChainLogo("near"),
871
+ chainIconGray: getStableflowChainLogo("near-gray"),
872
+ chainType: chainTypes.near.value,
873
+ blockExplorerUrl: "https://nearblocks.io/txns",
874
+ blockExplorerUrls: ["https://nearblocks.io"],
875
+ primaryColor: "#76EA9E",
876
+ nativeToken: {
877
+ symbol: "NEAR",
878
+ decimals: 24
879
+ },
880
+ ...getChainRpcUrl("near")
881
+ },
882
+ sol: {
883
+ chainName: "Solana",
884
+ blockchain: "sol",
885
+ chainIcon: getStableflowChainLogo("solana"),
886
+ chainIconGray: getStableflowChainLogo("solana-gray"),
887
+ chainType: chainTypes.sol.value,
888
+ blockExplorerUrl: "https://solscan.io/tx",
889
+ blockExplorerUrls: ["https://solscan.io"],
890
+ primaryColor: "#B93EF0",
891
+ nativeToken: {
892
+ symbol: "SOL",
893
+ decimals: 9
894
+ },
895
+ ...getChainRpcUrl("sol")
896
+ },
897
+ eth: {
898
+ chainName: "Ethereum",
899
+ blockchain: "eth",
900
+ chainIcon: getStableflowChainLogo("Ethereum"),
901
+ chainIconGray: getStableflowChainLogo("Ethereum-gray"),
902
+ chainType: chainTypes.evm.value,
903
+ chainId: 1,
904
+ blockExplorerUrl: "https://etherscan.io/tx",
905
+ blockExplorerUrls: ["https://etherscan.io"],
906
+ primaryColor: "#7083ee",
907
+ nativeToken: {
908
+ symbol: "ETH",
909
+ decimals: 18
910
+ },
911
+ ...getChainRpcUrl("eth")
912
+ },
913
+ arb: {
914
+ chainName: "Arbitrum",
915
+ blockchain: "arb",
916
+ chainIcon: getStableflowChainLogo("Arbitrum"),
917
+ chainIconGray: getStableflowChainLogo("Arbitrum-gray"),
918
+ chainType: chainTypes.evm.value,
919
+ chainId: 42161,
920
+ blockExplorerUrl: "https://arbiscan.io/tx",
921
+ blockExplorerUrls: ["https://arbiscan.io"],
922
+ primaryColor: "#4763A7",
923
+ nativeToken: {
924
+ symbol: "ETH",
925
+ decimals: 18
926
+ },
927
+ ...getChainRpcUrl("arb")
928
+ },
929
+ bsc: {
930
+ chainName: "BNB Chain",
931
+ blockchain: "bsc",
932
+ chainIcon: getStableflowChainLogo("bsc"),
933
+ chainIconGray: getStableflowChainLogo("bsc-gray"),
934
+ chainType: chainTypes.evm.value,
935
+ chainId: 56,
936
+ blockExplorerUrl: "https://bscscan.com/tx",
937
+ blockExplorerUrls: ["https://bscscan.com"],
938
+ primaryColor: "#F1C144",
939
+ nativeToken: {
940
+ symbol: "BNB",
941
+ decimals: 18
942
+ },
943
+ ...getChainRpcUrl("bsc")
944
+ },
945
+ avax: {
946
+ chainName: "Avalanche",
947
+ blockchain: "avax",
948
+ chainIcon: getStableflowChainLogo("Avalanche"),
949
+ chainIconGray: getStableflowChainLogo("Avalanche-gray"),
950
+ chainType: chainTypes.evm.value,
951
+ chainId: 43114,
952
+ blockExplorerUrl: "https://snowtrace.io/tx",
953
+ blockExplorerUrls: ["https://snowtrace.io"],
954
+ primaryColor: "#9D2620",
955
+ nativeToken: {
956
+ symbol: "AVAX",
957
+ decimals: 18
958
+ },
959
+ ...getChainRpcUrl("avax")
960
+ },
961
+ base: {
962
+ chainName: "Base",
963
+ blockchain: "base",
964
+ chainIcon: getStableflowChainLogo("Base"),
965
+ chainIconGray: getStableflowChainLogo("Base-gray"),
966
+ chainType: chainTypes.evm.value,
967
+ chainId: 8453,
968
+ blockExplorerUrl: "https://basescan.org/tx",
969
+ blockExplorerUrls: ["https://basescan.org"],
970
+ primaryColor: "#3137F6",
971
+ nativeToken: {
972
+ symbol: "ETH",
973
+ decimals: 18
974
+ },
975
+ ...getChainRpcUrl("base")
976
+ },
977
+ pol: {
978
+ chainName: "Polygon",
979
+ blockchain: "pol",
980
+ chainIcon: getStableflowChainLogo("Polygon"),
981
+ chainIconGray: getStableflowChainLogo("Polygon-gray"),
982
+ chainType: chainTypes.evm.value,
983
+ chainId: 137,
984
+ blockExplorerUrl: "https://polygonscan.com/tx",
985
+ blockExplorerUrls: ["https://polygonscan.com"],
986
+ primaryColor: "#5A2AD1",
987
+ nativeToken: {
988
+ symbol: "POL",
989
+ decimals: 18
990
+ },
991
+ ...getChainRpcUrl("pol")
992
+ },
993
+ gnosis: {
994
+ ...getChainRpcUrl("gnosis")
995
+ },
996
+ op: {
997
+ chainName: "Optimism",
998
+ blockchain: "op",
999
+ chainIcon: getStableflowChainLogo("Optimism"),
1000
+ chainIconGray: getStableflowChainLogo("Optimism-gray"),
1001
+ chainType: chainTypes.evm.value,
1002
+ chainId: 10,
1003
+ blockExplorerUrl: "https://optimistic.etherscan.io/tx",
1004
+ blockExplorerUrls: ["https://optimistic.etherscan.io"],
1005
+ primaryColor: "#B5271D",
1006
+ nativeToken: {
1007
+ symbol: "ETH",
1008
+ decimals: 18
1009
+ },
1010
+ ...getChainRpcUrl("op")
1011
+ },
1012
+ tron: {
1013
+ chainName: "Tron",
1014
+ blockchain: "tron",
1015
+ chainIcon: getStableflowChainLogo("Tron"),
1016
+ chainIconGray: getStableflowChainLogo("Tron-gray"),
1017
+ chainType: chainTypes.tron.value,
1018
+ blockExplorerUrl: "https://tronscan.org/#/transaction",
1019
+ blockExplorerUrls: ["https://tronscan.org"],
1020
+ primaryColor: "#BC3221",
1021
+ nativeToken: {
1022
+ symbol: "TRX",
1023
+ decimals: 6
1024
+ },
1025
+ ...getChainRpcUrl("tron")
1026
+ },
1027
+ aptos: {
1028
+ chainName: "Aptos",
1029
+ blockchain: "aptos",
1030
+ chainIcon: getStableflowChainLogo("Aptos"),
1031
+ chainIconGray: getStableflowChainLogo("Aptos-gray"),
1032
+ chainType: chainTypes.aptos.value,
1033
+ blockExplorerUrl: "https://aptoscan.com/transaction",
1034
+ blockExplorerUrls: ["https://aptoscan.com"],
1035
+ primaryColor: "#000000",
1036
+ nativeToken: {
1037
+ symbol: "APT",
1038
+ decimals: 8
1039
+ },
1040
+ ...getChainRpcUrl("aptos")
1041
+ },
1042
+ bera: {
1043
+ chainName: "Berachain",
1044
+ blockchain: "bera",
1045
+ chainIcon: getStableflowChainLogo("Berachain"),
1046
+ chainIconGray: getStableflowChainLogo("Berachain-gray"),
1047
+ chainType: chainTypes.evm.value,
1048
+ chainId: 80094,
1049
+ blockExplorerUrl: "https://berascan.com/tx/",
1050
+ blockExplorerUrls: ["https://berascan.com"],
1051
+ primaryColor: "#F37325",
1052
+ nativeToken: {
1053
+ symbol: "BERA",
1054
+ decimals: 18
1055
+ },
1056
+ ...getChainRpcUrl("bera")
1057
+ },
1058
+ xlayer: {
1059
+ chainName: "X Layer",
1060
+ blockchain: "xlayer",
1061
+ chainIcon: getStableflowChainLogo("xlayer"),
1062
+ chainIconGray: getStableflowChainLogo("xlayer-gray"),
1063
+ chainType: chainTypes.evm.value,
1064
+ chainId: 196,
1065
+ blockExplorerUrl: "https://www.oklink.com/xlayer/tx/",
1066
+ blockExplorerUrls: ["https://www.oklink.com"],
1067
+ primaryColor: "#000000",
1068
+ nativeToken: {
1069
+ symbol: "OKB",
1070
+ decimals: 18
1071
+ },
1072
+ ...getChainRpcUrl("xlayer")
1073
+ },
1074
+ plasma: {
1075
+ chainName: "Plasma",
1076
+ blockchain: "plasma",
1077
+ chainIcon: getStableflowChainLogo("Plasma"),
1078
+ chainIconGray: getStableflowChainLogo("Plasma-gray"),
1079
+ chainType: chainTypes.evm.value,
1080
+ chainId: 9745,
1081
+ blockExplorerUrl: "https://plasmascan.to/tx/",
1082
+ blockExplorerUrls: ["https://plasmascan.to"],
1083
+ primaryColor: "#162F29",
1084
+ nativeToken: {
1085
+ symbol: "XPL",
1086
+ decimals: 18
1087
+ },
1088
+ ...getChainRpcUrl("plasma")
1089
+ },
1090
+ ton: {
1091
+ chainName: "Ton",
1092
+ blockchain: "ton",
1093
+ chainIcon: getStableflowChainLogo("Ton"),
1094
+ chainIconGray: getStableflowChainLogo("Ton-gray"),
1095
+ chainType: chainTypes.ton.value,
1096
+ blockExplorerUrl: "https://tonviewer.com/transaction/",
1097
+ blockExplorerUrls: ["https://tonviewer.com"],
1098
+ primaryColor: "#0098EA",
1099
+ nativeToken: {
1100
+ symbol: "TON",
1101
+ decimals: 9
1102
+ },
1103
+ ...getChainRpcUrl("ton")
1104
+ },
1105
+ mantle: {
1106
+ chainName: "Mantle",
1107
+ blockchain: "mantle",
1108
+ chainIcon: getStableflowChainLogo("Mantle"),
1109
+ chainIconGray: getStableflowChainLogo("Mantle-gray"),
1110
+ chainType: chainTypes.evm.value,
1111
+ chainId: 5e3,
1112
+ blockExplorerUrl: "https://mantlescan.xyz/tx/",
1113
+ blockExplorerUrls: ["https://mantlescan.xyz"],
1114
+ primaryColor: "#162F29",
1115
+ nativeToken: {
1116
+ symbol: "MNT",
1117
+ decimals: 18
1118
+ },
1119
+ ...getChainRpcUrl("mantle")
1120
+ },
1121
+ megaeth: {
1122
+ chainName: "MegaETH",
1123
+ blockchain: "megaeth",
1124
+ chainIcon: getStableflowChainLogo("MegaETH"),
1125
+ chainIconGray: getStableflowChainLogo("MegaETH-gray"),
1126
+ chainType: chainTypes.evm.value,
1127
+ chainId: 4326,
1128
+ blockExplorerUrl: "https://mega.etherscan.io/tx/",
1129
+ blockExplorerUrls: ["https://mega.etherscan.io"],
1130
+ primaryColor: "#19191A",
1131
+ nativeToken: {
1132
+ symbol: "ETH",
1133
+ decimals: 18
1134
+ },
1135
+ ...getChainRpcUrl("megaeth")
1136
+ },
1137
+ ink: {
1138
+ chainName: "Ink",
1139
+ blockchain: "ink",
1140
+ chainIcon: getStableflowChainLogo("Ink"),
1141
+ chainIconGray: getStableflowChainLogo("Ink-gray"),
1142
+ chainType: chainTypes.evm.value,
1143
+ chainId: 57073,
1144
+ blockExplorerUrl: "https://explorer.inkonchain.com/tx/",
1145
+ blockExplorerUrls: ["https://explorer.inkonchain.com"],
1146
+ primaryColor: "#7132F5",
1147
+ nativeToken: {
1148
+ symbol: "ETH",
1149
+ decimals: 18
1150
+ },
1151
+ ...getChainRpcUrl("ink")
1152
+ },
1153
+ stable: {
1154
+ chainName: "Stable",
1155
+ blockchain: "stable",
1156
+ chainIcon: getStableflowChainLogo("Stable"),
1157
+ chainIconGray: getStableflowChainLogo("Stable-gray"),
1158
+ chainType: chainTypes.evm.value,
1159
+ chainId: 988,
1160
+ blockExplorerUrl: "https://uniscan.xyz/tx/",
1161
+ blockExplorerUrls: ["https://uniscan.xyz"],
1162
+ primaryColor: "#01241D",
1163
+ nativeToken: {
1164
+ symbol: "USDT0",
1165
+ decimals: 18
1166
+ },
1167
+ ...getChainRpcUrl("stable")
1168
+ },
1169
+ celo: {
1170
+ chainName: "Celo",
1171
+ blockchain: "celo",
1172
+ chainIcon: getStableflowChainLogo("Celo"),
1173
+ chainIconGray: getStableflowChainLogo("Celo-gray"),
1174
+ chainType: chainTypes.evm.value,
1175
+ chainId: 42220,
1176
+ blockExplorerUrl: "https://celoscan.io/tx/",
1177
+ blockExplorerUrls: ["https://celoscan.io"],
1178
+ primaryColor: "#FCFF52",
1179
+ nativeToken: {
1180
+ symbol: "CELO",
1181
+ decimals: 18
1182
+ },
1183
+ ...getChainRpcUrl("celo")
1184
+ },
1185
+ sei: {
1186
+ chainName: "Sei",
1187
+ blockchain: "sei",
1188
+ chainIcon: getStableflowChainLogo("Sei"),
1189
+ chainIconGray: getStableflowChainLogo("Sei-gray"),
1190
+ chainType: chainTypes.evm.value,
1191
+ chainId: 1329,
1192
+ blockExplorerUrl: "https://seitrace.com/tx/",
1193
+ blockExplorerUrls: ["https://seitrace.com"],
1194
+ primaryColor: "#991717",
1195
+ nativeToken: {
1196
+ symbol: "SEI",
1197
+ decimals: 18
1198
+ },
1199
+ ...getChainRpcUrl("sei")
1200
+ },
1201
+ flare: {
1202
+ chainName: "Flare",
1203
+ blockchain: "flare",
1204
+ chainIcon: getStableflowChainLogo("Flare"),
1205
+ chainIconGray: getStableflowChainLogo("Flare-gray"),
1206
+ chainType: chainTypes.evm.value,
1207
+ chainId: 14,
1208
+ blockExplorerUrl: "https://flare-explorer.flare.network/tx/",
1209
+ blockExplorerUrls: ["https://flare-explorer.flare.network"],
1210
+ primaryColor: "#E62058",
1211
+ nativeToken: {
1212
+ symbol: "FLR",
1213
+ decimals: 18
1214
+ },
1215
+ ...getChainRpcUrl("flare")
1216
+ },
1217
+ frax: {
1218
+ chainName: "Fraxtal",
1219
+ blockchain: "frax",
1220
+ chainIcon: getStableflowChainLogo("Frax"),
1221
+ chainIconGray: getStableflowChainLogo("Frax-gray"),
1222
+ chainType: chainTypes.evm.value,
1223
+ chainId: 252,
1224
+ blockExplorerUrl: "https://fraxscan.com/tx/",
1225
+ blockExplorerUrls: ["https://fraxscan.com"],
1226
+ primaryColor: "#000",
1227
+ nativeToken: {
1228
+ symbol: "FRAX",
1229
+ decimals: 18
1230
+ },
1231
+ ...getChainRpcUrl("frax")
1232
+ },
1233
+ sui: {
1234
+ chainName: "Sui",
1235
+ blockchain: "sui",
1236
+ chainIcon: getStableflowChainLogo("Sui"),
1237
+ chainIconGray: getStableflowChainLogo("Sui-gray"),
1238
+ chainType: chainTypes.sui.value,
1239
+ blockExplorerUrl: "https://suiscan.xyz/mainnet/tx",
1240
+ blockExplorerUrls: ["https://suiscan.xyz/mainnet"],
1241
+ primaryColor: "#298DFF",
1242
+ nativeToken: {
1243
+ symbol: "SUI",
1244
+ decimals: 9
1245
+ },
1246
+ ...getChainRpcUrl("sui")
1247
+ },
1248
+ katana: {
1249
+ chainName: "Katana",
1250
+ blockchain: "katana",
1251
+ chainIcon: getStableflowChainLogo("Katana"),
1252
+ chainIconGray: getStableflowChainLogo("Katana-gray"),
1253
+ chainType: chainTypes.evm.value,
1254
+ chainId: 747474,
1255
+ blockExplorerUrl: "https://katanascan.com/tx",
1256
+ blockExplorerUrls: ["https://katanascan.com"],
1257
+ primaryColor: "#F6FF0D",
1258
+ nativeToken: {
1259
+ symbol: "ETH",
1260
+ decimals: 18
1261
+ },
1262
+ ...getChainRpcUrl("katana")
1263
+ }
1264
+ };
1265
+ var chains_default = chains;
1266
+
1267
+ // src/wallets/config/usdt.ts
1268
+ var usdt = {
1269
+ symbol: "USDT",
1270
+ decimals: 6,
1271
+ icon: "/usdt.png",
1272
+ name: "Tether USD"
1273
+ };
1274
+ var usdtChains = {
1275
+ eth: {
1276
+ ...usdt,
1277
+ assetId: "nep141:eth-0xdac17f958d2ee523a2206206994597c13d831ec7.omft.near",
1278
+ contractAddress: "0xdac17f958d2ee523a2206206994597c13d831ec7",
1279
+ ...chains_default.eth,
1280
+ services: [Service.OneClick, Service.Usdt0, Service.Native]
1281
+ },
1282
+ bsc: {
1283
+ ...usdt,
1284
+ assetId: "nep245:v2_1.omni.hot.tg:56_2CMMyVTGZkeyNZTSvS5sarzfir6g",
1285
+ contractAddress: "0x55d398326f99059ff775485246999027b3197955",
1286
+ ...chains_default.bsc,
1287
+ decimals: 18,
1288
+ services: [Service.OneClick, Service.Native]
1289
+ },
1290
+ op: {
1291
+ ...usdt,
1292
+ assetId: "nep245:v2_1.omni.hot.tg:10_359RPSJVdTxwTJT9TyGssr2rFoWo",
1293
+ contractAddress: "0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",
1294
+ ...chains_default.op,
1295
+ services: [Service.OneClick]
1296
+ },
1297
+ avax: {
1298
+ ...usdt,
1299
+ assetId: "nep245:v2_1.omni.hot.tg:43114_372BeH7ENZieCaabwkbWkBiTTgXp",
1300
+ contractAddress: "0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7",
1301
+ ...chains_default.avax,
1302
+ services: [Service.OneClick]
1303
+ },
1304
+ // disabled gnosis temporarily, 22/Oct/2025
1305
+ // gnosis: {
1306
+ // ...usdt,
1307
+ // assetId: "nep141:gnosis-0x4ecaba5870353805a9f068101a40e0f32ed605c6.omft.near",
1308
+ // contractAddress: "0x4ecaba5870353805a9f068101a40e0f32ed605c6",
1309
+ // ...chains.gnosis,
1310
+ // services: [Service.OneClick],
1311
+ // },
1312
+ near: {
1313
+ ...usdt,
1314
+ assetId: "nep141:usdt.tether-token.near",
1315
+ contractAddress: "usdt.tether-token.near",
1316
+ ...chains_default.near,
1317
+ services: [Service.OneClick]
1318
+ },
1319
+ sol: {
1320
+ ...usdt,
1321
+ assetId: "nep141:sol-c800a4bd850783ccb82c2b2c7e84175443606352.omft.near",
1322
+ contractAddress: "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
1323
+ ...chains_default.sol,
1324
+ services: [Service.OneClick, Service.Usdt0]
1325
+ },
1326
+ tron: {
1327
+ ...usdt,
1328
+ assetId: "nep141:tron-d28a265909efecdcee7c5028585214ea0b96f015.omft.near",
1329
+ contractAddress: "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
1330
+ ...chains_default.tron,
1331
+ services: [Service.OneClick, Service.Usdt0]
1332
+ },
1333
+ aptos: {
1334
+ ...usdt,
1335
+ assetId: "nep141:aptos-88cb7619440a914fe6400149a12b443c3ac21d59.omft.near",
1336
+ contractAddress: "0x357b0b74bc833e95a115ad22604854d6b0fca151cecd94111770e5d6ffc9dc2b",
1337
+ ...chains_default.aptos,
1338
+ services: [Service.OneClick]
1339
+ },
1340
+ ton: {
1341
+ ...usdt,
1342
+ assetId: "nep245:v2_1.omni.hot.tg:1117_3tsdfyziyc7EJbP2aULWSKU4toBaAcN4FdTgfm5W1mC4ouR",
1343
+ contractAddress: "EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs",
1344
+ ...chains_default.ton,
1345
+ services: [Service.OneClick, Service.Usdt0]
1346
+ }
1347
+ };
1348
+ ({
1349
+ ...usdtChains.sol,
1350
+ chains: [usdtChains.sol]
1351
+ });
1352
+ ({
1353
+ ...usdtChains.near,
1354
+ chains: [usdtChains.near]
1355
+ });
1356
+ ({
1357
+ chains: Object.values(usdtChains).filter((chain) => chain.chainType === "evm")
1358
+ });
1359
+ ({
1360
+ ...usdtChains.tron,
1361
+ chains: [usdtChains.tron]
1362
+ });
1363
+ ({
1364
+ ...usdtChains.aptos,
1365
+ chains: [usdtChains.aptos]
1366
+ });
1367
+ ({
1368
+ ...usdtChains.ton,
1369
+ chains: [usdtChains.ton]
1370
+ });
1371
+
1372
+ // src/wallets/config/usdt0.ts
1373
+ var usdt0 = {
1374
+ symbol: "USD\u20AE0",
1375
+ decimals: 6,
1376
+ icon: "/usdt0.png",
1377
+ name: "USD\u20AE0"
1378
+ };
1379
+ var usdt0Chains = {
1380
+ // eth: {
1381
+ // ...usdt0,
1382
+ // symbol: "USDT",
1383
+ // icon: "/usdt.png",
1384
+ // assetId: "nep141:eth-0xdac17f958d2ee523a2206206994597c13d831ec7.omft.near",
1385
+ // contractAddress: "0xdac17f958d2ee523a2206206994597c13d831ec7",
1386
+ // ...chains.eth,
1387
+ // services: [Service.OneClick, Service.Usdt0, Service.Native],
1388
+ // },
1389
+ arb: {
1390
+ ...usdt0,
1391
+ assetId: "nep141:arb-0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9.omft.near",
1392
+ contractAddress: "0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",
1393
+ ...chains_default.arb,
1394
+ services: [Service.OneClick, Service.Usdt0, Service.Native]
1395
+ },
1396
+ pol: {
1397
+ ...usdt0,
1398
+ assetId: "nep245:v2_1.omni.hot.tg:137_3hpYoaLtt8MP1Z2GH1U473DMRKgr",
1399
+ contractAddress: "0xc2132d05d31c914a87c6611c10748aeb04b58e8f",
1400
+ ...chains_default.pol,
1401
+ services: [Service.OneClick, Service.Usdt0]
1402
+ },
1403
+ op: {
1404
+ ...usdt0,
1405
+ assetId: "",
1406
+ contractAddress: "0x01bFF41798a0BcF287b996046Ca68b395DbC1071",
1407
+ ...chains_default.op,
1408
+ services: [Service.Usdt0]
1409
+ },
1410
+ bera: {
1411
+ ...usdt0,
1412
+ assetId: "nep141:bera-0x779ded0c9e1022225f8e0630b35a9b54be713736.omft.near",
1413
+ contractAddress: "0x779Ded0c9e1022225f8E0630b35a9b54bE713736",
1414
+ ...chains_default.bera,
1415
+ services: [Service.OneClick, Service.Usdt0]
1416
+ },
1417
+ xlayer: {
1418
+ ...usdt0,
1419
+ assetId: "nep245:v2_1.omni.hot.tg:196_2fezDCvVYRsG8wrK6deJ2VRPiAS1",
1420
+ contractAddress: "0x779ded0c9e1022225f8e0630b35a9b54be713736",
1421
+ ...chains_default.xlayer,
1422
+ services: [Service.OneClick, Service.Usdt0]
1423
+ },
1424
+ plasma: {
1425
+ ...usdt0,
1426
+ assetId: "nep141:plasma-0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb.omft.near",
1427
+ contractAddress: "0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb",
1428
+ ...chains_default.plasma,
1429
+ services: [Service.OneClick, Service.Usdt0]
1430
+ },
1431
+ mantle: {
1432
+ ...usdt0,
1433
+ assetId: "",
1434
+ contractAddress: "0x779Ded0c9e1022225f8E0630b35a9b54bE713736",
1435
+ ...chains_default.mantle,
1436
+ services: [Service.Usdt0]
1437
+ },
1438
+ megaeth: {
1439
+ ...usdt0,
1440
+ assetId: "",
1441
+ contractAddress: "0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb",
1442
+ ...chains_default.megaeth,
1443
+ services: [Service.Usdt0]
1444
+ },
1445
+ ink: {
1446
+ ...usdt0,
1447
+ assetId: "",
1448
+ contractAddress: "0x0200C29006150606B650577BBE7B6248F58470c1",
1449
+ ...chains_default.ink,
1450
+ services: [Service.Usdt0]
1451
+ },
1452
+ stable: {
1453
+ ...usdt0,
1454
+ assetId: "",
1455
+ contractAddress: "0x779Ded0c9e1022225f8E0630b35a9b54bE713736",
1456
+ ...chains_default.stable,
1457
+ services: [Service.Usdt0]
1458
+ },
1459
+ celo: {
1460
+ ...usdt0,
1461
+ assetId: "",
1462
+ contractAddress: "0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e",
1463
+ ...chains_default.celo,
1464
+ services: [Service.Usdt0]
1465
+ },
1466
+ sei: {
1467
+ ...usdt0,
1468
+ assetId: "",
1469
+ contractAddress: "0x9151434b16b9763660705744891fA906F660EcC5",
1470
+ ...chains_default.sei,
1471
+ services: [Service.Usdt0]
1472
+ },
1473
+ flare: {
1474
+ ...usdt0,
1475
+ assetId: "",
1476
+ contractAddress: "0xe7cd86e13AC4309349F30B3435a9d337750fC82D",
1477
+ ...chains_default.flare,
1478
+ services: [Service.Usdt0]
1479
+ }
1480
+ };
1481
+ ({
1482
+ chains: Object.values(usdt0Chains).filter((chain) => chain.chainType === "evm")
1483
+ });
1484
+
1485
+ // src/wallets/config/usdc.ts
1486
+ var usdc = {
1487
+ symbol: "USDC",
1488
+ decimals: 6,
1489
+ icon: "/usdc.png",
1490
+ name: "USD Coin"
1491
+ };
1492
+ var usdcChains = {
1493
+ eth: {
1494
+ ...usdc,
1495
+ assetId: "nep141:eth-0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.omft.near",
1496
+ contractAddress: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
1497
+ ...chains_default.eth,
1498
+ services: [Service.OneClick, Service.CCTP, Service.Native]
1499
+ },
1500
+ arb: {
1501
+ ...usdc,
1502
+ assetId: "nep141:arb-0xaf88d065e77c8cc2239327c5edb3a432268e5831.omft.near",
1503
+ contractAddress: "0xaf88d065e77c8cc2239327c5edb3a432268e5831",
1504
+ ...chains_default.arb,
1505
+ services: [Service.OneClick, Service.CCTP, Service.Native]
1506
+ },
1507
+ base: {
1508
+ ...usdc,
1509
+ assetId: "nep141:base-0x833589fcd6edb6e08f4c7c32d4f71b54bda02913.omft.near",
1510
+ contractAddress: "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
1511
+ ...chains_default.base,
1512
+ services: [Service.OneClick, Service.CCTP, Service.Native]
1513
+ },
1514
+ // gnosis: {
1515
+ // ...usdc,
1516
+ // assetId:
1517
+ // "nep141:gnosis-0x2a22f9c3b484c3629090feed35f17ff8f88f76f0.omft.near",
1518
+ // contractAddress: "0x2a22f9c3b484c3629090feed35f17ff8f88f76f0",
1519
+ // ...chains.gnosis,
1520
+ // services: [Service.OneClick],
1521
+ // },
1522
+ pol: {
1523
+ ...usdc,
1524
+ assetId: "nep245:v2_1.omni.hot.tg:137_qiStmoQJDQPTebaPjgx5VBxZv6L",
1525
+ contractAddress: "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
1526
+ ...chains_default.pol,
1527
+ services: [Service.OneClick, Service.CCTP]
1528
+ },
1529
+ bsc: {
1530
+ ...usdc,
1531
+ assetId: "nep245:v2_1.omni.hot.tg:56_2w93GqMcEmQFDru84j3HZZWt557r",
1532
+ contractAddress: "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d",
1533
+ ...chains_default.bsc,
1534
+ decimals: 18,
1535
+ services: [Service.OneClick, Service.Native]
1536
+ },
1537
+ op: {
1538
+ ...usdc,
1539
+ assetId: "nep245:v2_1.omni.hot.tg:10_A2ewyUyDp6qsue1jqZsGypkCxRJ",
1540
+ contractAddress: "0x0b2c639c533813f4aa9d7837caf62653d097ff85",
1541
+ ...chains_default.op,
1542
+ services: [Service.OneClick, Service.CCTP]
1543
+ },
1544
+ avax: {
1545
+ ...usdc,
1546
+ assetId: "nep245:v2_1.omni.hot.tg:43114_3atVJH3r5c4GqiSYmg9fECvjc47o",
1547
+ contractAddress: "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
1548
+ ...chains_default.avax,
1549
+ services: [Service.OneClick, Service.CCTP]
1550
+ },
1551
+ near: {
1552
+ ...usdc,
1553
+ assetId: "nep141:17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1",
1554
+ contractAddress: "17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1",
1555
+ ...chains_default.near,
1556
+ services: [Service.OneClick]
1557
+ },
1558
+ sol: {
1559
+ ...usdc,
1560
+ assetId: "nep141:sol-5ce3bf3a31af18be40ba30f721101b4341690186.omft.near",
1561
+ contractAddress: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
1562
+ ...chains_default.sol,
1563
+ services: [Service.OneClick, Service.CCTP]
1564
+ },
1565
+ xlayer: {
1566
+ ...usdc,
1567
+ assetId: "nep245:v2_1.omni.hot.tg:196_2dK9kLNR7Ekq7su8FxNGiUW3djTw",
1568
+ contractAddress: "0x74b7f16337b8972027f6196a17a631ac6de26d22",
1569
+ ...chains_default.xlayer,
1570
+ services: [Service.OneClick]
1571
+ },
1572
+ aptos: {
1573
+ ...usdc,
1574
+ assetId: "nep141:aptos-34ee497f210c5a511e8d5b53bc56d75b63612bb5.omft.near",
1575
+ contractAddress: "0xbae207659db88bea0cbead6da0ed00aac12edcdda169e591cd41c94180b46f3b",
1576
+ ...chains_default.aptos,
1577
+ services: [Service.OneClick]
1578
+ },
1579
+ sui: {
1580
+ ...usdc,
1581
+ assetId: "nep141:sui-c1b81ecaf27933252d31a963bc5e9458f13c18ce.omft.near",
1582
+ contractAddress: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC",
1583
+ ...chains_default.sui,
1584
+ services: [Service.OneClick]
1585
+ }
1586
+ };
1587
+ ({
1588
+ ...usdcChains.sol,
1589
+ chains: [usdcChains.sol]
1590
+ });
1591
+ ({
1592
+ ...usdcChains.near,
1593
+ chains: [usdcChains.near]
1594
+ });
1595
+ ({
1596
+ ...usdcChains.aptos,
1597
+ chains: [usdcChains.aptos]
1598
+ });
1599
+ ({
1600
+ chains: Object.values(usdcChains).filter((chain) => chain.chainType === "evm")
1601
+ });
1602
+ ({
1603
+ ...usdcChains.sui,
1604
+ chains: [usdcChains.sui]
1605
+ });
1606
+
1607
+ // src/wallets/config/frxusd.ts
1608
+ var frxusd = {
1609
+ symbol: "frxUSD",
1610
+ decimals: 18,
1611
+ icon: "/frxusd.png",
1612
+ name: "Frax USD"
1613
+ };
1614
+ var frxusdChains = {
1615
+ frax: {
1616
+ ...frxusd,
1617
+ assetId: "",
1618
+ contractAddress: "0xFc00000000000000000000000000000000000001",
1619
+ ...chains_default.frax,
1620
+ services: [Service.FraxZero]
1621
+ },
1622
+ eth: {
1623
+ ...frxusd,
1624
+ assetId: "",
1625
+ contractAddress: "0xCAcd6fd266aF91b8AeD52aCCc382b4e165586E29",
1626
+ ...chains_default.eth,
1627
+ services: [Service.FraxZero]
1628
+ },
1629
+ arb: {
1630
+ ...frxusd,
1631
+ assetId: "",
1632
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1633
+ ...chains_default.arb,
1634
+ services: [Service.FraxZero]
1635
+ },
1636
+ avax: {
1637
+ ...frxusd,
1638
+ assetId: "",
1639
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1640
+ ...chains_default.avax,
1641
+ services: [Service.FraxZero]
1642
+ },
1643
+ // base: {
1644
+ // ...frxusd,
1645
+ // assetId: "",
1646
+ // contractAddress: "0xe5020A6d073a794B6E7f05678707dE47986Fb0b6",
1647
+ // ...chains.base,
1648
+ // services: [Service.FraxZero],
1649
+ // },
1650
+ bera: {
1651
+ ...frxusd,
1652
+ assetId: "",
1653
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1654
+ ...chains_default.bera,
1655
+ services: [Service.FraxZero]
1656
+ },
1657
+ bsc: {
1658
+ ...frxusd,
1659
+ assetId: "",
1660
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1661
+ ...chains_default.bsc,
1662
+ services: [Service.FraxZero]
1663
+ },
1664
+ op: {
1665
+ ...frxusd,
1666
+ assetId: "",
1667
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1668
+ ...chains_default.op,
1669
+ services: [Service.FraxZero]
1670
+ },
1671
+ pol: {
1672
+ ...frxusd,
1673
+ assetId: "",
1674
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1675
+ ...chains_default.pol,
1676
+ services: [Service.FraxZero]
1677
+ },
1678
+ xlayer: {
1679
+ ...frxusd,
1680
+ assetId: "",
1681
+ contractAddress: "0x80eede496655fb9047dd39d9f418d5483ed600df",
1682
+ ...chains_default.xlayer,
1683
+ services: [Service.FraxZero]
1684
+ },
1685
+ sol: {
1686
+ ...frxusd,
1687
+ assetId: "",
1688
+ contractAddress: "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw",
1689
+ decimals: 9,
1690
+ ...chains_default.sol,
1691
+ services: [Service.FraxZero]
1692
+ },
1693
+ katana: {
1694
+ ...frxusd,
1695
+ assetId: "",
1696
+ contractAddress: "0x80Eede496655FB9047dd39d9f418d5483ED600df",
1697
+ ...chains_default.katana,
1698
+ services: [Service.FraxZero]
1699
+ }
1700
+ };
1701
+ ({
1702
+ ...frxusdChains.sol,
1703
+ chains: [frxusdChains.sol]
1704
+ });
1705
+ ({
1706
+ chains: Object.values(frxusdChains).filter((chain) => chain.chainType === "evm")
1707
+ });
1708
+
1709
+ // src/wallets/config/tokens.ts
1710
+ var tokens = [
1711
+ ...Object.values(usdtChains),
1712
+ ...Object.values(usdcChains),
1713
+ ...Object.values(usdt0Chains),
1714
+ ...Object.values(frxusdChains)
1715
+ ];
1716
+ var usdtTokens = [...Object.values(usdtChains), ...Object.values(usdt0Chains)];
1717
+ var usdcTokens = Object.values(usdcChains);
1718
+ var frxusdTokens = Object.values(frxusdChains);
1719
+
1720
+ // src/wallets/config/addresses.ts
1721
+ var DefaultAddresses = {
1722
+ near: "stableflow.near",
1723
+ sol: "2bRTgL16xgu6VkSRY7TJcLRuT93T1pLtaYeChhyhfFcX",
1724
+ evm: "0x10b06e6A12E86f8C2b55B5073fA3dB39b120C7F5",
1725
+ tron: "TSKMAaJLnWAUa6cKtTTm5oathCQPPaJZtF",
1726
+ aptos: "0x93493b07d031c4f18ad1e874575761be7e47d4cea5c81d538600e8ec72d6ab1c",
1727
+ ton: "UQBv1hzUIB5liMe1cqxUAvfO2tWMnN6wDyXP4DFSptAbePVK",
1728
+ sui: "0xeae6dbc896a8a6994c093bf8ea47116063f0b016f1fdc61bff95ba9dfb36c4d2"
1729
+ };
1730
+
1731
+ // src/wallets/config/erc20.ts
1732
+ var erc20_default = [
1733
+ {
1734
+ inputs: [
1735
+ { internalType: "address", name: "owner", type: "address" },
1736
+ { internalType: "address", name: "spender", type: "address" }
1737
+ ],
1738
+ name: "allowance",
1739
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
1740
+ stateMutability: "view",
1741
+ type: "function"
1742
+ },
1743
+ {
1744
+ inputs: [
1745
+ { internalType: "address", name: "spender", type: "address" },
1746
+ { internalType: "uint256", name: "value", type: "uint256" }
1747
+ ],
1748
+ name: "approve",
1749
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
1750
+ stateMutability: "nonpayable",
1751
+ type: "function"
1752
+ },
1753
+ {
1754
+ inputs: [{ internalType: "address", name: "account", type: "address" }],
1755
+ name: "balanceOf",
1756
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
1757
+ stateMutability: "view",
1758
+ type: "function"
1759
+ },
1760
+ {
1761
+ inputs: [
1762
+ { internalType: "address", name: "to", type: "address" },
1763
+ { internalType: "uint256", name: "value", type: "uint256" }
1764
+ ],
1765
+ name: "transfer",
1766
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
1767
+ stateMutability: "nonpayable",
1768
+ type: "function"
1769
+ },
1770
+ {
1771
+ inputs: [],
1772
+ name: "decimals",
1773
+ outputs: [{ internalType: "uint8", name: "", type: "uint8" }],
1774
+ stateMutability: "view",
1775
+ type: "function"
1776
+ },
1777
+ {
1778
+ inputs: [],
1779
+ name: "name",
1780
+ outputs: [{ internalType: "string", name: "", type: "string" }],
1781
+ stateMutability: "view",
1782
+ type: "function"
1783
+ },
1784
+ {
1785
+ inputs: [{ internalType: "address", name: "owner", type: "address" }],
1786
+ name: "nonces",
1787
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
1788
+ stateMutability: "view",
1789
+ type: "function"
1790
+ },
1791
+ {
1792
+ inputs: [
1793
+ { internalType: "address", name: "owner_", type: "address" },
1794
+ { internalType: "address", name: "spender", type: "address" },
1795
+ { internalType: "uint256", name: "value", type: "uint256" },
1796
+ { internalType: "uint256", name: "deadline", type: "uint256" },
1797
+ { internalType: "uint8", name: "v", type: "uint8" },
1798
+ { internalType: "bytes32", name: "r", type: "bytes32" },
1799
+ { internalType: "bytes32", name: "s", type: "bytes32" }
1800
+ ],
1801
+ name: "permit",
1802
+ outputs: [],
1803
+ stateMutability: "nonpayable",
1804
+ type: "function"
1805
+ }
1806
+ ];
1807
+
1808
+ // src/utils/price.ts
1809
+ function getPrice(prices, symbol) {
1810
+ let price = "1";
1811
+ if (prices[symbol]) {
1812
+ price = prices[symbol];
1813
+ if (price !== "0") {
1814
+ return price;
1815
+ }
1816
+ }
1817
+ if (prices[symbol.toLowerCase()]) {
1818
+ price = prices[symbol.toLowerCase()];
1819
+ if (price !== "0") {
1820
+ return price;
1821
+ }
1822
+ }
1823
+ if (prices[symbol.toUpperCase()]) {
1824
+ price = prices[symbol.toUpperCase()];
1825
+ if (price !== "0") {
1826
+ return price;
1827
+ }
1828
+ }
1829
+ return "1";
1830
+ }
1831
+
1832
+ // src/utils/number.ts
1833
+ var numberRemoveEndZero = (value) => {
1834
+ return value.replace("-", "").replace(/\.?0+$/, "");
1835
+ };
1836
+
1837
+ // src/utils/exec-time.ts
1838
+ var ExecTime = class {
1839
+ constructor(options) {
1840
+ this.startTimestamp = 0;
1841
+ this.currentTimestamp = 0;
1842
+ this.performanceThreshold = 1e3;
1843
+ const { type, logStyle, isPerformance, isDebug } = options;
1844
+ this.type = type;
1845
+ this.logStyle = logStyle ?? "stone-500";
1846
+ this.isPerformance = isPerformance ?? false;
1847
+ this.isDebug = isDebug;
1848
+ this.csl = new Csl(isDebug);
1849
+ if (!isDebug) return;
1850
+ this.startTimestamp = performance.now();
1851
+ this.currentTimestamp = this.startTimestamp;
1852
+ }
1853
+ breakpoint() {
1854
+ if (!this.isDebug) return;
1855
+ this.currentTimestamp = performance.now();
1856
+ }
1857
+ log(subType, str, ...params) {
1858
+ const duration = performance.now() - this.currentTimestamp;
1859
+ if (this.isPerformance) {
1860
+ if (duration <= this.performanceThreshold) {
1861
+ return;
1862
+ }
1863
+ }
1864
+ this.csl.log(this.type, this.logStyle, `<${subType}>cost: %c%sms%c${str ? ", " + str : ""}`, "color:red;font-weight:bold;", duration.toFixed(0), "color:black;font-weight:normal;", ...params);
1865
+ }
1866
+ logTotal(subType, str, ...params) {
1867
+ const duration = performance.now() - this.startTimestamp;
1868
+ this.csl.log(this.type, this.logStyle, `<${subType}>total cost: %c%sms%c${str ? ", " + str : ""}`, "color:red;font-weight:bold;", duration.toFixed(0), "color:black;font-weight:normal;", ...params);
1869
+ }
1870
+ };
1871
+
1872
+ // src/utils/service.ts
1873
+ var getRouteStatus = (service, disabledServices) => {
1874
+ const result = { disabled: false };
1875
+ if (!disabledServices || disabledServices.length === 0) {
1876
+ return result;
1877
+ }
1878
+ const IS_PAUSE_ONECLICK = disabledServices.includes(Service.OneClick);
1879
+ const IS_PAUSE_USDT0 = disabledServices.includes(Service.Usdt0);
1880
+ const IS_PAUSE_CCTP = disabledServices.includes(Service.CCTP);
1881
+ const IS_PAUSE_FRAXZERO = disabledServices.includes(Service.FraxZero);
1882
+ const IS_PAUSE_NATIVE = disabledServices.includes(Service.Native);
1883
+ const IS_PAUSE_USDT0_ONECLICK = disabledServices.includes(Service.OneClickUsdt0);
1884
+ const IS_PAUSE_ONECLICK_USDT0 = disabledServices.includes(Service.OneClickUsdt0);
1885
+ const IS_PAUSE_FRAXZERO_ONECLICK = disabledServices.includes(Service.FraxZeroOneClick);
1886
+ const IS_PAUSE_ONECLICK_FRAXZERO = disabledServices.includes(Service.OneClickFraxZero);
1887
+ const IS_PAUSE_ALL = IS_PAUSE_ONECLICK && IS_PAUSE_USDT0 && IS_PAUSE_CCTP && IS_PAUSE_FRAXZERO && IS_PAUSE_NATIVE;
1888
+ if (IS_PAUSE_ALL) {
1889
+ result.disabled = true;
1890
+ return result;
1891
+ }
1892
+ if (service === Service.CCTP) {
1893
+ if (IS_PAUSE_CCTP) {
1894
+ result.disabled = true;
1895
+ return result;
1896
+ }
1897
+ }
1898
+ if (service === Service.FraxZero) {
1899
+ if (IS_PAUSE_FRAXZERO) {
1900
+ result.disabled = true;
1901
+ return result;
1902
+ }
1903
+ }
1904
+ if ([Service.FraxZeroOneClick, Service.OneClickFraxZero].includes(service)) {
1905
+ if (IS_PAUSE_ONECLICK || IS_PAUSE_FRAXZERO) {
1906
+ result.disabled = true;
1907
+ return result;
1908
+ }
1909
+ }
1910
+ if (service === Service.Native) {
1911
+ if (IS_PAUSE_NATIVE) {
1912
+ result.disabled = true;
1913
+ return result;
1914
+ }
1915
+ }
1916
+ if (service === Service.OneClick) {
1917
+ if (IS_PAUSE_ONECLICK) {
1918
+ result.disabled = true;
1919
+ return result;
1920
+ }
1921
+ }
1922
+ if (service === Service.Usdt0) {
1923
+ if (IS_PAUSE_USDT0) {
1924
+ result.disabled = true;
1925
+ return result;
1926
+ }
1927
+ }
1928
+ if ([Service.Usdt0OneClick, Service.OneClickUsdt0].includes(service)) {
1929
+ if (IS_PAUSE_ONECLICK || IS_PAUSE_USDT0) {
1930
+ result.disabled = true;
1931
+ return result;
1932
+ }
1933
+ }
1934
+ if (service === Service.Usdt0OneClick) {
1935
+ if (IS_PAUSE_USDT0_ONECLICK) {
1936
+ result.disabled = true;
1937
+ return result;
1938
+ }
1939
+ }
1940
+ if (service === Service.OneClickUsdt0) {
1941
+ if (IS_PAUSE_ONECLICK_USDT0) {
1942
+ result.disabled = true;
1943
+ return result;
1944
+ }
1945
+ }
1946
+ if (service === Service.FraxZeroOneClick) {
1947
+ if (IS_PAUSE_FRAXZERO_ONECLICK) {
1948
+ result.disabled = true;
1949
+ return result;
1950
+ }
1951
+ }
1952
+ if (service === Service.OneClickFraxZero) {
1953
+ if (IS_PAUSE_ONECLICK_FRAXZERO) {
1954
+ result.disabled = true;
1955
+ return result;
1956
+ }
1957
+ }
1958
+ return result;
1959
+ };
1960
+
1961
+ exports.ApiError = ApiError;
1962
+ exports.CancelError = CancelError;
1963
+ exports.CancelablePromise = CancelablePromise;
1964
+ exports.Csl = Csl;
1965
+ exports.DefaultAddresses = DefaultAddresses;
1966
+ exports.ExecTime = ExecTime;
1967
+ exports.LayerZeroStatus = LayerZeroStatus;
1968
+ exports.NetworkRpcUrlsMap = NetworkRpcUrlsMap;
1969
+ exports.OneClickStatus = OneClickStatus;
1970
+ exports.OpenAPI = OpenAPI;
1971
+ exports.SFA = SFA;
1972
+ exports.SendType = SendType;
1973
+ exports.Service = Service;
1974
+ exports.ServiceBackend = ServiceBackend;
1975
+ exports.StableflowStatus = StableflowStatus;
1976
+ exports.TransactionStatus = TransactionStatus;
1977
+ exports.erc20Abi = erc20_default;
1978
+ exports.frxusdChains = frxusdChains;
1979
+ exports.frxusdTokens = frxusdTokens;
1980
+ exports.getChainRpcUrl = getChainRpcUrl;
1981
+ exports.getPrice = getPrice;
1982
+ exports.getRequest = getRequest;
1983
+ exports.getRouteStatus = getRouteStatus;
1984
+ exports.getRpcUrls = getRpcUrls;
1985
+ exports.numberRemoveEndZero = numberRemoveEndZero;
1986
+ exports.postRequest = postRequest;
1987
+ exports.request = request;
1988
+ exports.setRpcUrls = setRpcUrls;
1989
+ exports.tokens = tokens;
1990
+ exports.usdcChains = usdcChains;
1991
+ exports.usdcTokens = usdcTokens;
1992
+ exports.usdt0Chains = usdt0Chains;
1993
+ exports.usdtChains = usdtChains;
1994
+ exports.usdtTokens = usdtTokens;
1995
+ //# sourceMappingURL=index.js.map
1996
+ //# sourceMappingURL=index.js.map