@heliofi/withdraw-core 1.5.5 → 1.5.7
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.d.ts +14 -5
- package/dist/withdraw-core.cjs +1 -1
- package/dist/withdraw-core.js +140 -134
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -65,6 +65,7 @@ declare class BaseCompany extends Entity {
|
|
|
65
65
|
customTheme?: CustomTheme;
|
|
66
66
|
defaultThemeId?: string;
|
|
67
67
|
allowDeposit?: boolean;
|
|
68
|
+
walletVerificationRequired?: boolean;
|
|
68
69
|
enabledRestrictedDepositEngines?: BlockchainEngineType[];
|
|
69
70
|
enabledBetaFeatures: BetaFeature[];
|
|
70
71
|
verifiedEntity?: {
|
|
@@ -91,13 +92,12 @@ declare class BaseCurrency extends Entity {
|
|
|
91
92
|
isNative?: boolean;
|
|
92
93
|
}
|
|
93
94
|
|
|
94
|
-
declare enum BetaFeature {
|
|
95
|
+
export declare enum BetaFeature {
|
|
95
96
|
SWAP = "SWAP",
|
|
96
97
|
MOONPAY_HEADLESS_FRAMES = "MOONPAY_HEADLESS_FRAMES",
|
|
97
98
|
GLIDE_DEPOSITS = "GLIDE_DEPOSITS",
|
|
98
99
|
CHECKOUT_V2 = "checkout_v2",
|
|
99
100
|
TRON_ENERGY_RENTAL = "TRON_ENERGY_RENTAL",
|
|
100
|
-
MOONPAY_WALLET_VERIFY = "MOONPAY_WALLET_VERIFY",
|
|
101
101
|
THEMES_V2 = "themesV2",
|
|
102
102
|
}
|
|
103
103
|
|
|
@@ -402,14 +402,23 @@ declare class Theme extends Entity {
|
|
|
402
402
|
light: ThemePalette;
|
|
403
403
|
dark: ThemePalette;
|
|
404
404
|
designTokens: ThemeDesignTokens;
|
|
405
|
+
themeMode: ThemeAppearance;
|
|
405
406
|
type: ThemeType;
|
|
406
407
|
slug?: string;
|
|
407
408
|
isDefault?: boolean;
|
|
408
409
|
createdAt: string;
|
|
409
410
|
updatedAt: string;
|
|
410
411
|
}
|
|
412
|
+
export { Theme as RenderableTheme }
|
|
413
|
+
export { Theme }
|
|
411
414
|
|
|
412
|
-
declare
|
|
415
|
+
declare enum ThemeAppearance {
|
|
416
|
+
AUTOMATIC = "automatic",
|
|
417
|
+
LIGHT = "light",
|
|
418
|
+
DARK = "dark",
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
export declare class ThemeDesignTokens {
|
|
413
422
|
containerBorderRadius: number;
|
|
414
423
|
inputBorderRadius: number;
|
|
415
424
|
buttonBorderRadius: number;
|
|
@@ -424,7 +433,7 @@ declare enum ThemeMode {
|
|
|
424
433
|
DARK = "DARK",
|
|
425
434
|
}
|
|
426
435
|
|
|
427
|
-
declare class ThemePalette {
|
|
436
|
+
export declare class ThemePalette {
|
|
428
437
|
primaryColor: string;
|
|
429
438
|
neutralColor: string;
|
|
430
439
|
backgroundColor: string;
|
|
@@ -433,7 +442,7 @@ declare class ThemePalette {
|
|
|
433
442
|
warningColor?: string;
|
|
434
443
|
}
|
|
435
444
|
|
|
436
|
-
declare enum ThemeType {
|
|
445
|
+
export declare enum ThemeType {
|
|
437
446
|
MOONPAY = "MOONPAY",
|
|
438
447
|
USER = "USER",
|
|
439
448
|
PRIVATE = "PRIVATE",
|
package/dist/withdraw-core.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var h=Object.defineProperty;var P=(e,t,r)=>t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var u=(e,t,r)=>P(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let U=(function(e){return e.SOL="SOL",e.ETH="ETH",e.POLYGON="POLYGON",e.BASE="BASE",e.BITCOIN="BITCOIN",e.ARBITRUM="ARBITRUM",e.BSC="BSC",e.TRON="TRON",e.DOGE="DOGE",e.TON="TON",e})({}),C=(function(e){return e.EVM="EVM",e.SOL="SOL",e.BTC="BTC",e.TRON="TRON",e.HYPERCORE="HYPERCORE",e.DOGE="DOGE",e.TON="TON",e.SEISMIC="SEISMIC",e})({}),m=(function(e){return e.HELIO="HELIO",e.MAGIC_EDEN="MAGIC_EDEN",e})({}),H=(function(e){return e.IRON="iron",e.MP_SELL="mp_sell",e})({}),T=(function(e){return e.QUOTED="QUOTED",e.SUBMITTING="SUBMITTING",e.SUBMITTED="SUBMITTED",e.BRIDGING="BRIDGING",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.FAILED_EXPIRED="FAILED_EXPIRED",e.EXPIRED="EXPIRED",e.REFUNDED_BY_PROVIDER="REFUNDED_BY_PROVIDER",e})({}),d=(function(e){return e.ACKNOWLEDGED="acknowledged",e.UNACKNOWLEDGED="unacknowledged",e.REJECTED="rejected",e})({}),M=(function(e){return e.RAW="raw",e.USER_OP="userop",e.POLYMARKET_WALLET="polymarket_wallet",e.HYPERCORE="hypercore",e})({}),w=(function(e){return e.MOONPAY="MOONPAY",e.USER="USER",e.PRIVATE="PRIVATE",e})({}),X=(function(e){return e.SWAP="SWAP",e.MOONPAY_HEADLESS_FRAMES="MOONPAY_HEADLESS_FRAMES",e.GLIDE_DEPOSITS="GLIDE_DEPOSITS",e.CHECKOUT_V2="checkout_v2",e.TRON_ENERGY_RENTAL="TRON_ENERGY_RENTAL",e.THEMES_V2="themesV2",e})({});const g=new Set([T.COMPLETED,T.FAILED,T.FAILED_EXPIRED,T.EXPIRED,T.REFUNDED_BY_PROVIDER]);var c=(e=>(e.WITHDRAW_TX_INVALID_SIGNATURE="WITHDRAW_TX_INVALID_SIGNATURE",e.WITHDRAW_TX_BLOCKHASH_EXPIRED="WITHDRAW_TX_BLOCKHASH_EXPIRED",e.WITHDRAW_TX_NONCE_TOO_LOW="WITHDRAW_TX_NONCE_TOO_LOW",e.WITHDRAW_TX_USEROP_EXPIRED="WITHDRAW_TX_USEROP_EXPIRED",e.WITHDRAW_TX_UNDERPRICED="WITHDRAW_TX_UNDERPRICED",e.WITHDRAW_BUNDLER_REJECTED="WITHDRAW_BUNDLER_REJECTED",e.WITHDRAW_TX_BROADCAST_TIMEOUT="WITHDRAW_TX_BROADCAST_TIMEOUT",e.WITHDRAW_TX_ALREADY_KNOWN="WITHDRAW_TX_ALREADY_KNOWN",e.WITHDRAW_QUOTE_EXPIRED="WITHDRAW_QUOTE_EXPIRED",e.WITHDRAW_SANCTIONS_BLOCKED="WITHDRAW_SANCTIONS_BLOCKED",e.WITHDRAW_NO_ROUTE="WITHDRAW_NO_ROUTE",e.WITHDRAW_NOT_FOUND="WITHDRAW_NOT_FOUND",e.WITHDRAW_INSUFFICIENT_BALANCE="WITHDRAW_INSUFFICIENT_BALANCE",e.WITHDRAW_DETAILS_NOT_UPDATABLE="WITHDRAW_DETAILS_NOT_UPDATABLE",e.INVALID_WALLET_ADDRESS="INVALID_WALLET_ADDRESS",e.BALANCE_FETCH_FAILED="BALANCE_FETCH_FAILED",e.UNKNOWN="UNKNOWN",e))(c||{});const G=new Set(Object.values(c));class a extends Error{constructor(r,s,n){super(n??s);u(this,"name","WithdrawalApiError");this.status=r,this.code=s,this.detail=n}}const l=e=>e&&G.has(e)?e:c.UNKNOWN,W=e=>{const t=e.split(".");if(t.length!==3)throw new Error("Invalid JWT: expected 3 parts");let r=t[1].replace(/-/g,"+").replace(/_/g,"/");r+="=".repeat((4-r.length%4)%4);const s=Uint8Array.from(atob(r),E=>E.charCodeAt(0)),n=new TextDecoder().decode(s);return JSON.parse(n)},V=(e,t=5e3)=>{try{const{exp:r}=W(e);return r===void 0?!0:Date.now()<r*1e3-t}catch{return!1}},R="1.5.7",p="https://api.hel.io/v1";class K{constructor(t){u(this,"baseUrl");u(this,"headers");u(this,"fetch");u(this,"consumer");var s,n;this.consumer=t.consumer;const r=t.baseUrl??p;this.baseUrl=r.endsWith("/")?r.slice(0,-1):r,this.headers={"Content-Type":"application/json","X-MoonPay-Commerce-SDK-Version":R,...(s=this.consumer)!=null&&s.name?{"X-MoonPay-Commerce-Consumer":this.consumer.name}:{},...(n=this.consumer)!=null&&n.version?{"X-MoonPay-Commerce-Consumer-Version":this.consumer.version}:{},...t.headers},this.fetch=t.fetch??globalThis.fetch.bind(globalThis)}async get(t,r){return this.request("GET",t,void 0,r)}async post(t,r,s){return this.request("POST",t,r,s)}async patch(t,r,s){return this.request("PATCH",t,r,s)}async request(t,r,s,n){const E=`${this.baseUrl}${r}`,i=await this.fetch(E,{method:t,headers:this.headers,body:s!==void 0?JSON.stringify(s):void 0,signal:n});if(!i.ok)throw await this.buildError(i);return await i.json()}async buildError(t){let r,s;try{const n=await t.json();r=n.message??void 0,s=n.errorCode??n.errorType??void 0}catch{r=t.statusText||void 0}return new a(t.status,l(s),r)}}const I=e=>/^\d+$/.test(e);function N(e){if(typeof e!="string")return null;let t=e.trim();if((t.startsWith("v")||t.startsWith("V"))&&(t=t.slice(1)),t==="")return null;const r=t.indexOf("+");r!==-1&&(t=t.slice(0,r));const s=t.indexOf("-"),n=s===-1?t:t.slice(0,s),E=s===-1?"":t.slice(s+1),i=n.split(".");if(i.length>3)return null;const o=[];for(const A of i){if(!I(A))return null;o.push(Number(A))}const D=E===""?[]:E.split(".").filter(A=>A!=="");return s!==-1&&D.length===0?null:{major:o[0]??0,minor:o[1]??0,patch:o[2]??0,prerelease:D}}function _(e,t){return e<t?-1:e>t?1:0}function v(e,t){if(e.length===0&&t.length===0)return 0;if(e.length===0)return 1;if(t.length===0)return-1;const r=Math.min(e.length,t.length);for(let s=0;s<r;s++){const n=e[s],E=t[s];if(n===E)continue;const i=I(n),o=I(E);if(i&&o){const D=_(Number(n),Number(E));if(D!==0)return D}else return i?-1:o?1:n<E?-1:1}return _(e.length,t.length)}function B(e,t){const r=N(e)??{major:0,minor:0,patch:0,prerelease:[]},s=N(t)??{major:0,minor:0,patch:0,prerelease:[]},n=_(r.major,s.major)||_(r.minor,s.minor)||_(r.patch,s.patch);return n!==0?n:v(r.prerelease,s.prerelease)}function L(e,t){return B(e,t)<0}const S="@heliofi/withdraw-core";function f(e={}){const{minSupportedVersions:t,consumer:r}=e,s=(t==null?void 0:t.packages)??{},n=e.sdkVersion??R,E={[S]:n};r!=null&&r.name&&r.version!=null&&(E[r.name]=r.version);for(const[i,o]of Object.entries(s)){const D=E[i];if(D!=null&&L(D,o))return!1}return!0}class O{constructor(t){this.api=t}static create(t={}){return new O(new K(t))}isSupported(t){return f({minSupportedVersions:t,consumer:this.api.consumer})}async getWithdrawalConfig(t,r){return this.api.get(`/withdrawal-configs/${t}/public`,r)}async getRoutes(t,r){return this.api.get(`/withdraw/${t}/routes`,r)}async getBalance(t,r,s){return this.api.get(`/withdraw/${t}/balances?walletAddress=${encodeURIComponent(r)}`,s)}async createWithdrawalDetail(t,r){const{withdrawalConfigId:s,...n}=t;return this.api.post(`/withdraw/${s}/prepare`,n,r)}async updateWithdrawalDetail(t,r,s){return this.api.patch(`/withdraw-details/${t}`,r,s)}async submitWithdrawal(t,r){const{withdrawalDetailId:s,...n}=t;return this.api.post(`/withdraw/${s}/submit`,n,r)}async getWithdrawalDetail(t,r){return this.api.get(`/withdraw-details/${t}`,r)}}exports.BetaFeature=X;exports.BlockchainEngineType=C;exports.BlockchainSymbol=U;exports.BroadcastAck=d;exports.DEFAULT_BASE_URL=p;exports.Platform=m;exports.SDK_PACKAGE_NAME=S;exports.SDK_VERSION=R;exports.SignedTransactionKind=M;exports.TERMINAL_STATES=g;exports.ThemeType=w;exports.WithdrawalApiError=a;exports.WithdrawalErrorCode=c;exports.WithdrawalFeature=H;exports.WithdrawalSDK=O;exports.WithdrawalState=T;exports.decodeJwt=W;exports.isBelow=L;exports.isQuoteValid=V;exports.isSupported=f;exports.toWithdrawalErrorCode=l;
|
package/dist/withdraw-core.js
CHANGED
|
@@ -1,190 +1,194 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var T = (
|
|
4
|
-
let
|
|
5
|
-
return
|
|
6
|
-
})({}),
|
|
7
|
-
return
|
|
8
|
-
})({}),
|
|
9
|
-
return
|
|
10
|
-
})({}),
|
|
11
|
-
return
|
|
12
|
-
})({}),
|
|
13
|
-
return
|
|
14
|
-
})({}),
|
|
15
|
-
return
|
|
16
|
-
})({}),
|
|
17
|
-
return
|
|
1
|
+
var l = Object.defineProperty;
|
|
2
|
+
var a = (t, e, s) => e in t ? l(t, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : t[e] = s;
|
|
3
|
+
var T = (t, e, s) => a(t, typeof e != "symbol" ? e + "" : e, s);
|
|
4
|
+
let X = /* @__PURE__ */ (function(t) {
|
|
5
|
+
return t.SOL = "SOL", t.ETH = "ETH", t.POLYGON = "POLYGON", t.BASE = "BASE", t.BITCOIN = "BITCOIN", t.ARBITRUM = "ARBITRUM", t.BSC = "BSC", t.TRON = "TRON", t.DOGE = "DOGE", t.TON = "TON", t;
|
|
6
|
+
})({}), d = /* @__PURE__ */ (function(t) {
|
|
7
|
+
return t.EVM = "EVM", t.SOL = "SOL", t.BTC = "BTC", t.TRON = "TRON", t.HYPERCORE = "HYPERCORE", t.DOGE = "DOGE", t.TON = "TON", t.SEISMIC = "SEISMIC", t;
|
|
8
|
+
})({}), w = /* @__PURE__ */ (function(t) {
|
|
9
|
+
return t.HELIO = "HELIO", t.MAGIC_EDEN = "MAGIC_EDEN", t;
|
|
10
|
+
})({}), G = /* @__PURE__ */ (function(t) {
|
|
11
|
+
return t.IRON = "iron", t.MP_SELL = "mp_sell", t;
|
|
12
|
+
})({}), _ = /* @__PURE__ */ (function(t) {
|
|
13
|
+
return t.QUOTED = "QUOTED", t.SUBMITTING = "SUBMITTING", t.SUBMITTED = "SUBMITTED", t.BRIDGING = "BRIDGING", t.COMPLETED = "COMPLETED", t.FAILED = "FAILED", t.FAILED_EXPIRED = "FAILED_EXPIRED", t.EXPIRED = "EXPIRED", t.REFUNDED_BY_PROVIDER = "REFUNDED_BY_PROVIDER", t;
|
|
14
|
+
})({}), g = /* @__PURE__ */ (function(t) {
|
|
15
|
+
return t.ACKNOWLEDGED = "acknowledged", t.UNACKNOWLEDGED = "unacknowledged", t.REJECTED = "rejected", t;
|
|
16
|
+
})({}), V = /* @__PURE__ */ (function(t) {
|
|
17
|
+
return t.RAW = "raw", t.USER_OP = "userop", t.POLYMARKET_WALLET = "polymarket_wallet", t.HYPERCORE = "hypercore", t;
|
|
18
|
+
})({}), v = /* @__PURE__ */ (function(t) {
|
|
19
|
+
return t.MOONPAY = "MOONPAY", t.USER = "USER", t.PRIVATE = "PRIVATE", t;
|
|
20
|
+
})({}), Y = /* @__PURE__ */ (function(t) {
|
|
21
|
+
return t.SWAP = "SWAP", t.MOONPAY_HEADLESS_FRAMES = "MOONPAY_HEADLESS_FRAMES", t.GLIDE_DEPOSITS = "GLIDE_DEPOSITS", t.CHECKOUT_V2 = "checkout_v2", t.TRON_ENERGY_RENTAL = "TRON_ENERGY_RENTAL", t.THEMES_V2 = "themesV2", t;
|
|
18
22
|
})({});
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
const F = /* @__PURE__ */ new Set([
|
|
24
|
+
_.COMPLETED,
|
|
25
|
+
_.FAILED,
|
|
26
|
+
_.FAILED_EXPIRED,
|
|
27
|
+
_.EXPIRED,
|
|
28
|
+
_.REFUNDED_BY_PROVIDER
|
|
25
29
|
]);
|
|
26
|
-
var R = /* @__PURE__ */ ((
|
|
27
|
-
const
|
|
28
|
-
class
|
|
30
|
+
var R = /* @__PURE__ */ ((t) => (t.WITHDRAW_TX_INVALID_SIGNATURE = "WITHDRAW_TX_INVALID_SIGNATURE", t.WITHDRAW_TX_BLOCKHASH_EXPIRED = "WITHDRAW_TX_BLOCKHASH_EXPIRED", t.WITHDRAW_TX_NONCE_TOO_LOW = "WITHDRAW_TX_NONCE_TOO_LOW", t.WITHDRAW_TX_USEROP_EXPIRED = "WITHDRAW_TX_USEROP_EXPIRED", t.WITHDRAW_TX_UNDERPRICED = "WITHDRAW_TX_UNDERPRICED", t.WITHDRAW_BUNDLER_REJECTED = "WITHDRAW_BUNDLER_REJECTED", t.WITHDRAW_TX_BROADCAST_TIMEOUT = "WITHDRAW_TX_BROADCAST_TIMEOUT", t.WITHDRAW_TX_ALREADY_KNOWN = "WITHDRAW_TX_ALREADY_KNOWN", t.WITHDRAW_QUOTE_EXPIRED = "WITHDRAW_QUOTE_EXPIRED", t.WITHDRAW_SANCTIONS_BLOCKED = "WITHDRAW_SANCTIONS_BLOCKED", t.WITHDRAW_NO_ROUTE = "WITHDRAW_NO_ROUTE", t.WITHDRAW_NOT_FOUND = "WITHDRAW_NOT_FOUND", t.WITHDRAW_INSUFFICIENT_BALANCE = "WITHDRAW_INSUFFICIENT_BALANCE", t.WITHDRAW_DETAILS_NOT_UPDATABLE = "WITHDRAW_DETAILS_NOT_UPDATABLE", t.INVALID_WALLET_ADDRESS = "INVALID_WALLET_ADDRESS", t.BALANCE_FETCH_FAILED = "BALANCE_FETCH_FAILED", t.UNKNOWN = "UNKNOWN", t))(R || {});
|
|
31
|
+
const L = new Set(Object.values(R));
|
|
32
|
+
class p extends Error {
|
|
29
33
|
constructor(s, r, n) {
|
|
30
34
|
super(n ?? r);
|
|
31
35
|
T(this, "name", "WithdrawalApiError");
|
|
32
36
|
this.status = s, this.code = r, this.detail = n;
|
|
33
37
|
}
|
|
34
38
|
}
|
|
35
|
-
const
|
|
36
|
-
const
|
|
37
|
-
if (
|
|
39
|
+
const W = (t) => t && L.has(t) ? t : R.UNKNOWN, f = (t) => {
|
|
40
|
+
const e = t.split(".");
|
|
41
|
+
if (e.length !== 3)
|
|
38
42
|
throw new Error("Invalid JWT: expected 3 parts");
|
|
39
|
-
let s =
|
|
43
|
+
let s = e[1].replace(/-/g, "+").replace(/_/g, "/");
|
|
40
44
|
s += "=".repeat((4 - s.length % 4) % 4);
|
|
41
45
|
const r = Uint8Array.from(atob(s), (E) => E.charCodeAt(0)), n = new TextDecoder().decode(r);
|
|
42
46
|
return JSON.parse(n);
|
|
43
|
-
},
|
|
47
|
+
}, K = (t, e = 5e3) => {
|
|
44
48
|
try {
|
|
45
|
-
const { exp: s } =
|
|
46
|
-
return s === void 0 ? !0 : Date.now() < s * 1e3 -
|
|
49
|
+
const { exp: s } = f(t);
|
|
50
|
+
return s === void 0 ? !0 : Date.now() < s * 1e3 - e;
|
|
47
51
|
} catch {
|
|
48
52
|
return !1;
|
|
49
53
|
}
|
|
50
|
-
}, O = "1.5.
|
|
51
|
-
class
|
|
52
|
-
constructor(
|
|
54
|
+
}, O = "1.5.7", h = "https://api.hel.io/v1";
|
|
55
|
+
class S {
|
|
56
|
+
constructor(e) {
|
|
53
57
|
T(this, "baseUrl");
|
|
54
58
|
T(this, "headers");
|
|
55
59
|
T(this, "fetch");
|
|
56
60
|
T(this, "consumer");
|
|
57
61
|
var r, n;
|
|
58
|
-
this.consumer =
|
|
59
|
-
const s =
|
|
62
|
+
this.consumer = e.consumer;
|
|
63
|
+
const s = e.baseUrl ?? h;
|
|
60
64
|
this.baseUrl = s.endsWith("/") ? s.slice(0, -1) : s, this.headers = {
|
|
61
65
|
"Content-Type": "application/json",
|
|
62
66
|
"X-MoonPay-Commerce-SDK-Version": O,
|
|
63
67
|
...(r = this.consumer) != null && r.name ? { "X-MoonPay-Commerce-Consumer": this.consumer.name } : {},
|
|
64
68
|
...(n = this.consumer) != null && n.version ? { "X-MoonPay-Commerce-Consumer-Version": this.consumer.version } : {},
|
|
65
|
-
...
|
|
66
|
-
}, this.fetch =
|
|
69
|
+
...e.headers
|
|
70
|
+
}, this.fetch = e.fetch ?? globalThis.fetch.bind(globalThis);
|
|
67
71
|
}
|
|
68
|
-
async get(
|
|
69
|
-
return this.request("GET",
|
|
72
|
+
async get(e, s) {
|
|
73
|
+
return this.request("GET", e, void 0, s);
|
|
70
74
|
}
|
|
71
|
-
async post(
|
|
72
|
-
return this.request("POST",
|
|
75
|
+
async post(e, s, r) {
|
|
76
|
+
return this.request("POST", e, s, r);
|
|
73
77
|
}
|
|
74
|
-
async patch(
|
|
75
|
-
return this.request("PATCH",
|
|
78
|
+
async patch(e, s, r) {
|
|
79
|
+
return this.request("PATCH", e, s, r);
|
|
76
80
|
}
|
|
77
|
-
async request(
|
|
78
|
-
const E = `${this.baseUrl}${s}`,
|
|
79
|
-
method:
|
|
81
|
+
async request(e, s, r, n) {
|
|
82
|
+
const E = `${this.baseUrl}${s}`, D = await this.fetch(E, {
|
|
83
|
+
method: e,
|
|
80
84
|
headers: this.headers,
|
|
81
85
|
body: r !== void 0 ? JSON.stringify(r) : void 0,
|
|
82
86
|
signal: n
|
|
83
87
|
});
|
|
84
|
-
if (!
|
|
85
|
-
throw await this.buildError(
|
|
86
|
-
return await
|
|
88
|
+
if (!D.ok)
|
|
89
|
+
throw await this.buildError(D);
|
|
90
|
+
return await D.json();
|
|
87
91
|
}
|
|
88
|
-
async buildError(
|
|
92
|
+
async buildError(e) {
|
|
89
93
|
let s, r;
|
|
90
94
|
try {
|
|
91
|
-
const n = await
|
|
95
|
+
const n = await e.json();
|
|
92
96
|
s = n.message ?? void 0, r = n.errorCode ?? n.errorType ?? void 0;
|
|
93
97
|
} catch {
|
|
94
|
-
s =
|
|
98
|
+
s = e.statusText || void 0;
|
|
95
99
|
}
|
|
96
|
-
return new
|
|
97
|
-
|
|
98
|
-
|
|
100
|
+
return new p(
|
|
101
|
+
e.status,
|
|
102
|
+
W(r),
|
|
99
103
|
s
|
|
100
104
|
);
|
|
101
105
|
}
|
|
102
106
|
}
|
|
103
|
-
const
|
|
104
|
-
function
|
|
105
|
-
if (typeof
|
|
106
|
-
let
|
|
107
|
-
if ((
|
|
108
|
-
const s =
|
|
109
|
-
s !== -1 && (
|
|
110
|
-
const r =
|
|
111
|
-
if (
|
|
112
|
-
const
|
|
113
|
-
for (const
|
|
114
|
-
if (!
|
|
115
|
-
|
|
116
|
-
}
|
|
117
|
-
const i = E === "" ? [] : E.split(".").filter((
|
|
107
|
+
const A = (t) => /^\d+$/.test(t);
|
|
108
|
+
function c(t) {
|
|
109
|
+
if (typeof t != "string") return null;
|
|
110
|
+
let e = t.trim();
|
|
111
|
+
if ((e.startsWith("v") || e.startsWith("V")) && (e = e.slice(1)), e === "") return null;
|
|
112
|
+
const s = e.indexOf("+");
|
|
113
|
+
s !== -1 && (e = e.slice(0, s));
|
|
114
|
+
const r = e.indexOf("-"), n = r === -1 ? e : e.slice(0, r), E = r === -1 ? "" : e.slice(r + 1), D = n.split(".");
|
|
115
|
+
if (D.length > 3) return null;
|
|
116
|
+
const u = [];
|
|
117
|
+
for (const o of D) {
|
|
118
|
+
if (!A(o)) return null;
|
|
119
|
+
u.push(Number(o));
|
|
120
|
+
}
|
|
121
|
+
const i = E === "" ? [] : E.split(".").filter((o) => o !== "");
|
|
118
122
|
return r !== -1 && i.length === 0 ? null : {
|
|
119
|
-
major:
|
|
120
|
-
minor:
|
|
121
|
-
patch:
|
|
123
|
+
major: u[0] ?? 0,
|
|
124
|
+
minor: u[1] ?? 0,
|
|
125
|
+
patch: u[2] ?? 0,
|
|
122
126
|
prerelease: i
|
|
123
127
|
};
|
|
124
128
|
}
|
|
125
|
-
function I(
|
|
126
|
-
return
|
|
129
|
+
function I(t, e) {
|
|
130
|
+
return t < e ? -1 : t > e ? 1 : 0;
|
|
127
131
|
}
|
|
128
|
-
function
|
|
129
|
-
if (
|
|
130
|
-
if (
|
|
131
|
-
if (
|
|
132
|
-
const s = Math.min(
|
|
132
|
+
function P(t, e) {
|
|
133
|
+
if (t.length === 0 && e.length === 0) return 0;
|
|
134
|
+
if (t.length === 0) return 1;
|
|
135
|
+
if (e.length === 0) return -1;
|
|
136
|
+
const s = Math.min(t.length, e.length);
|
|
133
137
|
for (let r = 0; r < s; r++) {
|
|
134
|
-
const n =
|
|
138
|
+
const n = t[r], E = e[r];
|
|
135
139
|
if (n === E) continue;
|
|
136
|
-
const
|
|
137
|
-
if (
|
|
140
|
+
const D = A(n), u = A(E);
|
|
141
|
+
if (D && u) {
|
|
138
142
|
const i = I(Number(n), Number(E));
|
|
139
143
|
if (i !== 0) return i;
|
|
140
|
-
} else return
|
|
144
|
+
} else return D ? -1 : u ? 1 : n < E ? -1 : 1;
|
|
141
145
|
}
|
|
142
|
-
return I(
|
|
146
|
+
return I(t.length, e.length);
|
|
143
147
|
}
|
|
144
|
-
function
|
|
145
|
-
const s =
|
|
146
|
-
return n !== 0 ? n :
|
|
148
|
+
function U(t, e) {
|
|
149
|
+
const s = c(t) ?? { major: 0, minor: 0, patch: 0, prerelease: [] }, r = c(e) ?? { major: 0, minor: 0, patch: 0, prerelease: [] }, n = I(s.major, r.major) || I(s.minor, r.minor) || I(s.patch, r.patch);
|
|
150
|
+
return n !== 0 ? n : P(s.prerelease, r.prerelease);
|
|
147
151
|
}
|
|
148
|
-
function H(
|
|
149
|
-
return
|
|
152
|
+
function H(t, e) {
|
|
153
|
+
return U(t, e) < 0;
|
|
150
154
|
}
|
|
151
|
-
const
|
|
152
|
-
function
|
|
153
|
-
const { minSupportedVersions:
|
|
155
|
+
const C = "@heliofi/withdraw-core";
|
|
156
|
+
function m(t = {}) {
|
|
157
|
+
const { minSupportedVersions: e, consumer: s } = t, r = (e == null ? void 0 : e.packages) ?? {}, n = t.sdkVersion ?? O, E = { [C]: n };
|
|
154
158
|
s != null && s.name && s.version != null && (E[s.name] = s.version);
|
|
155
|
-
for (const [
|
|
156
|
-
const i = E[
|
|
157
|
-
if (i != null && H(i,
|
|
159
|
+
for (const [D, u] of Object.entries(r)) {
|
|
160
|
+
const i = E[D];
|
|
161
|
+
if (i != null && H(i, u)) return !1;
|
|
158
162
|
}
|
|
159
163
|
return !0;
|
|
160
164
|
}
|
|
161
165
|
class N {
|
|
162
166
|
// Takes a prebuilt ApiClient (DI). Use `WithdrawalSDK.create()` for the
|
|
163
167
|
// common case where you just have config.
|
|
164
|
-
constructor(
|
|
165
|
-
this.api =
|
|
168
|
+
constructor(e) {
|
|
169
|
+
this.api = e;
|
|
166
170
|
}
|
|
167
|
-
static create(
|
|
168
|
-
return new N(new
|
|
171
|
+
static create(e = {}) {
|
|
172
|
+
return new N(new S(e));
|
|
169
173
|
}
|
|
170
|
-
isSupported(
|
|
171
|
-
return
|
|
172
|
-
minSupportedVersions:
|
|
174
|
+
isSupported(e) {
|
|
175
|
+
return m({
|
|
176
|
+
minSupportedVersions: e,
|
|
173
177
|
consumer: this.api.consumer
|
|
174
178
|
});
|
|
175
179
|
}
|
|
176
|
-
async getWithdrawalConfig(
|
|
180
|
+
async getWithdrawalConfig(e, s) {
|
|
177
181
|
return this.api.get(
|
|
178
|
-
`/withdrawal-configs/${
|
|
182
|
+
`/withdrawal-configs/${e}/public`,
|
|
179
183
|
s
|
|
180
184
|
);
|
|
181
185
|
}
|
|
182
|
-
async getRoutes(
|
|
183
|
-
return this.api.get(`/withdraw/${
|
|
186
|
+
async getRoutes(e, s) {
|
|
187
|
+
return this.api.get(`/withdraw/${e}/routes`, s);
|
|
184
188
|
}
|
|
185
|
-
async getBalance(
|
|
189
|
+
async getBalance(e, s, r) {
|
|
186
190
|
return this.api.get(
|
|
187
|
-
`/withdraw/${
|
|
191
|
+
`/withdraw/${e}/balances?walletAddress=${encodeURIComponent(
|
|
188
192
|
s
|
|
189
193
|
)}`,
|
|
190
194
|
r
|
|
@@ -197,17 +201,17 @@ class N {
|
|
|
197
201
|
* `withdrawalConfigId` goes in the path; the remaining fields are the
|
|
198
202
|
* request body matching the backend `PreparedWithdrawalDto`.
|
|
199
203
|
*/
|
|
200
|
-
async createWithdrawalDetail(
|
|
201
|
-
const { withdrawalConfigId: r, ...n } =
|
|
204
|
+
async createWithdrawalDetail(e, s) {
|
|
205
|
+
const { withdrawalConfigId: r, ...n } = e;
|
|
202
206
|
return this.api.post(
|
|
203
207
|
`/withdraw/${r}/prepare`,
|
|
204
208
|
n,
|
|
205
209
|
s
|
|
206
210
|
);
|
|
207
211
|
}
|
|
208
|
-
async updateWithdrawalDetail(
|
|
212
|
+
async updateWithdrawalDetail(e, s, r) {
|
|
209
213
|
return this.api.patch(
|
|
210
|
-
`/withdraw-details/${
|
|
214
|
+
`/withdraw-details/${e}`,
|
|
211
215
|
s,
|
|
212
216
|
r
|
|
213
217
|
);
|
|
@@ -216,36 +220,38 @@ class N {
|
|
|
216
220
|
* Body matches the backend `SubmitWithdrawalDto`:
|
|
217
221
|
* `{ token, signedTx }`, where `signedTx` is the bare signed payload string.
|
|
218
222
|
*/
|
|
219
|
-
async submitWithdrawal(
|
|
220
|
-
const { withdrawalDetailId: r, ...n } =
|
|
223
|
+
async submitWithdrawal(e, s) {
|
|
224
|
+
const { withdrawalDetailId: r, ...n } = e;
|
|
221
225
|
return this.api.post(
|
|
222
226
|
`/withdraw/${r}/submit`,
|
|
223
227
|
n,
|
|
224
228
|
s
|
|
225
229
|
);
|
|
226
230
|
}
|
|
227
|
-
async getWithdrawalDetail(
|
|
228
|
-
return this.api.get(`/withdraw-details/${
|
|
231
|
+
async getWithdrawalDetail(e, s) {
|
|
232
|
+
return this.api.get(`/withdraw-details/${e}`, s);
|
|
229
233
|
}
|
|
230
234
|
}
|
|
231
235
|
export {
|
|
232
|
-
|
|
233
|
-
d as
|
|
234
|
-
|
|
236
|
+
Y as BetaFeature,
|
|
237
|
+
d as BlockchainEngineType,
|
|
238
|
+
X as BlockchainSymbol,
|
|
239
|
+
g as BroadcastAck,
|
|
235
240
|
h as DEFAULT_BASE_URL,
|
|
236
|
-
|
|
237
|
-
|
|
241
|
+
w as Platform,
|
|
242
|
+
C as SDK_PACKAGE_NAME,
|
|
238
243
|
O as SDK_VERSION,
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
244
|
+
V as SignedTransactionKind,
|
|
245
|
+
F as TERMINAL_STATES,
|
|
246
|
+
v as ThemeType,
|
|
247
|
+
p as WithdrawalApiError,
|
|
242
248
|
R as WithdrawalErrorCode,
|
|
243
|
-
|
|
249
|
+
G as WithdrawalFeature,
|
|
244
250
|
N as WithdrawalSDK,
|
|
245
|
-
|
|
246
|
-
|
|
251
|
+
_ as WithdrawalState,
|
|
252
|
+
f as decodeJwt,
|
|
247
253
|
H as isBelow,
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
254
|
+
K as isQuoteValid,
|
|
255
|
+
m as isSupported,
|
|
256
|
+
W as toWithdrawalErrorCode
|
|
251
257
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@heliofi/withdraw-core",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.5.
|
|
4
|
+
"version": "1.5.7",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"dev": "vite",
|
|
@@ -41,6 +41,6 @@
|
|
|
41
41
|
"vitest": "3.2.4"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@heliofi/common-fe": "0.2.
|
|
44
|
+
"@heliofi/common-fe": "0.2.313"
|
|
45
45
|
}
|
|
46
46
|
}
|