@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 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 class ThemeDesignTokens {
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",
@@ -1 +1 @@
1
- "use strict";var S=Object.defineProperty;var U=(e,t,r)=>t in e?S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var D=(e,t,r)=>U(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let m=(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})({}),d=(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})({}),P=(function(e){return e.ACKNOWLEDGED="acknowledged",e.UNACKNOWLEDGED="unacknowledged",e.REJECTED="rejected",e})({}),w=(function(e){return e.RAW="raw",e.USER_OP="userop",e.POLYMARKET_WALLET="polymarket_wallet",e.HYPERCORE="hypercore",e})({});const X=new Set([T.COMPLETED,T.FAILED,T.FAILED_EXPIRED,T.EXPIRED,T.REFUNDED_BY_PROVIDER]);var I=(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))(I||{});const M=new Set(Object.values(I));class O extends Error{constructor(r,s,n){super(n??s);D(this,"name","WithdrawalApiError");this.status=r,this.code=s,this.detail=n}}const l=e=>e&&M.has(e)?e:I.UNKNOWN,p=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),i=>i.charCodeAt(0)),n=new TextDecoder().decode(s);return JSON.parse(n)},g=(e,t=5e3)=>{try{const{exp:r}=p(e);return r===void 0?!0:Date.now()<r*1e3-t}catch{return!1}},R="1.5.5",W="https://api.hel.io/v1";class B{constructor(t){D(this,"baseUrl");D(this,"headers");D(this,"fetch");D(this,"consumer");var s,n;this.consumer=t.consumer;const r=t.baseUrl??W;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 i=`${this.baseUrl}${r}`,E=await this.fetch(i,{method:t,headers:this.headers,body:s!==void 0?JSON.stringify(s):void 0,signal:n});if(!E.ok)throw await this.buildError(E);return await E.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 O(t.status,l(s),r)}}const A=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),i=s===-1?"":t.slice(s+1),E=n.split(".");if(E.length>3)return null;const o=[];for(const _ of E){if(!A(_))return null;o.push(Number(_))}const u=i===""?[]:i.split(".").filter(_=>_!=="");return s!==-1&&u.length===0?null:{major:o[0]??0,minor:o[1]??0,patch:o[2]??0,prerelease:u}}function c(e,t){return e<t?-1:e>t?1:0}function F(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],i=t[s];if(n===i)continue;const E=A(n),o=A(i);if(E&&o){const u=c(Number(n),Number(i));if(u!==0)return u}else return E?-1:o?1:n<i?-1:1}return c(e.length,t.length)}function G(e,t){const r=N(e)??{major:0,minor:0,patch:0,prerelease:[]},s=N(t)??{major:0,minor:0,patch:0,prerelease:[]},n=c(r.major,s.major)||c(r.minor,s.minor)||c(r.patch,s.patch);return n!==0?n:F(r.prerelease,s.prerelease)}function h(e,t){return G(e,t)<0}const f="@heliofi/withdraw-core";function L(e={}){const{minSupportedVersions:t,consumer:r}=e,s=(t==null?void 0:t.packages)??{},n=e.sdkVersion??R,i={[f]:n};r!=null&&r.name&&r.version!=null&&(i[r.name]=r.version);for(const[E,o]of Object.entries(s)){const u=i[E];if(u!=null&&h(u,o))return!1}return!0}class a{constructor(t){this.api=t}static create(t={}){return new a(new B(t))}isSupported(t){return L({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.BlockchainEngineType=C;exports.BlockchainSymbol=m;exports.BroadcastAck=P;exports.DEFAULT_BASE_URL=W;exports.Platform=d;exports.SDK_PACKAGE_NAME=f;exports.SDK_VERSION=R;exports.SignedTransactionKind=w;exports.TERMINAL_STATES=X;exports.WithdrawalApiError=O;exports.WithdrawalErrorCode=I;exports.WithdrawalFeature=H;exports.WithdrawalSDK=a;exports.WithdrawalState=T;exports.decodeJwt=p;exports.isBelow=h;exports.isQuoteValid=g;exports.isSupported=L;exports.toWithdrawalErrorCode=l;
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;
@@ -1,190 +1,194 @@
1
- var a = Object.defineProperty;
2
- var l = (e, t, s) => t in e ? a(e, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : e[t] = s;
3
- var T = (e, t, s) => l(e, typeof t != "symbol" ? t + "" : t, s);
4
- let d = /* @__PURE__ */ (function(e) {
5
- 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;
6
- })({}), w = /* @__PURE__ */ (function(e) {
7
- 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;
8
- })({}), M = /* @__PURE__ */ (function(e) {
9
- return e.HELIO = "HELIO", e.MAGIC_EDEN = "MAGIC_EDEN", e;
10
- })({}), g = /* @__PURE__ */ (function(e) {
11
- return e.IRON = "iron", e.MP_SELL = "mp_sell", e;
12
- })({}), o = /* @__PURE__ */ (function(e) {
13
- 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;
14
- })({}), G = /* @__PURE__ */ (function(e) {
15
- return e.ACKNOWLEDGED = "acknowledged", e.UNACKNOWLEDGED = "unacknowledged", e.REJECTED = "rejected", e;
16
- })({}), F = /* @__PURE__ */ (function(e) {
17
- return e.RAW = "raw", e.USER_OP = "userop", e.POLYMARKET_WALLET = "polymarket_wallet", e.HYPERCORE = "hypercore", e;
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 B = /* @__PURE__ */ new Set([
20
- o.COMPLETED,
21
- o.FAILED,
22
- o.FAILED_EXPIRED,
23
- o.EXPIRED,
24
- o.REFUNDED_BY_PROVIDER
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__ */ ((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))(R || {});
27
- const p = new Set(Object.values(R));
28
- class W extends Error {
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 f = (e) => e && p.has(e) ? e : R.UNKNOWN, L = (e) => {
36
- const t = e.split(".");
37
- if (t.length !== 3)
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 = t[1].replace(/-/g, "+").replace(/_/g, "/");
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
- }, v = (e, t = 5e3) => {
47
+ }, K = (t, e = 5e3) => {
44
48
  try {
45
- const { exp: s } = L(e);
46
- return s === void 0 ? !0 : Date.now() < s * 1e3 - t;
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.5", h = "https://api.hel.io/v1";
51
- class U {
52
- constructor(t) {
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 = t.consumer;
59
- const s = t.baseUrl ?? h;
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
- ...t.headers
66
- }, this.fetch = t.fetch ?? globalThis.fetch.bind(globalThis);
69
+ ...e.headers
70
+ }, this.fetch = e.fetch ?? globalThis.fetch.bind(globalThis);
67
71
  }
68
- async get(t, s) {
69
- return this.request("GET", t, void 0, s);
72
+ async get(e, s) {
73
+ return this.request("GET", e, void 0, s);
70
74
  }
71
- async post(t, s, r) {
72
- return this.request("POST", t, s, r);
75
+ async post(e, s, r) {
76
+ return this.request("POST", e, s, r);
73
77
  }
74
- async patch(t, s, r) {
75
- return this.request("PATCH", t, s, r);
78
+ async patch(e, s, r) {
79
+ return this.request("PATCH", e, s, r);
76
80
  }
77
- async request(t, s, r, n) {
78
- const E = `${this.baseUrl}${s}`, u = await this.fetch(E, {
79
- method: t,
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 (!u.ok)
85
- throw await this.buildError(u);
86
- return await u.json();
88
+ if (!D.ok)
89
+ throw await this.buildError(D);
90
+ return await D.json();
87
91
  }
88
- async buildError(t) {
92
+ async buildError(e) {
89
93
  let s, r;
90
94
  try {
91
- const n = await t.json();
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 = t.statusText || void 0;
98
+ s = e.statusText || void 0;
95
99
  }
96
- return new W(
97
- t.status,
98
- f(r),
100
+ return new p(
101
+ e.status,
102
+ W(r),
99
103
  s
100
104
  );
101
105
  }
102
106
  }
103
- const c = (e) => /^\d+$/.test(e);
104
- function A(e) {
105
- if (typeof e != "string") return null;
106
- let t = e.trim();
107
- if ((t.startsWith("v") || t.startsWith("V")) && (t = t.slice(1)), t === "") return null;
108
- const s = t.indexOf("+");
109
- s !== -1 && (t = t.slice(0, s));
110
- const r = t.indexOf("-"), n = r === -1 ? t : t.slice(0, r), E = r === -1 ? "" : t.slice(r + 1), u = n.split(".");
111
- if (u.length > 3) return null;
112
- const D = [];
113
- for (const _ of u) {
114
- if (!c(_)) return null;
115
- D.push(Number(_));
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: D[0] ?? 0,
120
- minor: D[1] ?? 0,
121
- patch: D[2] ?? 0,
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(e, t) {
126
- return e < t ? -1 : e > t ? 1 : 0;
129
+ function I(t, e) {
130
+ return t < e ? -1 : t > e ? 1 : 0;
127
131
  }
128
- function m(e, t) {
129
- if (e.length === 0 && t.length === 0) return 0;
130
- if (e.length === 0) return 1;
131
- if (t.length === 0) return -1;
132
- const s = Math.min(e.length, t.length);
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 = e[r], E = t[r];
138
+ const n = t[r], E = e[r];
135
139
  if (n === E) continue;
136
- const u = c(n), D = c(E);
137
- if (u && D) {
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 u ? -1 : D ? 1 : n < E ? -1 : 1;
144
+ } else return D ? -1 : u ? 1 : n < E ? -1 : 1;
141
145
  }
142
- return I(e.length, t.length);
146
+ return I(t.length, e.length);
143
147
  }
144
- function C(e, t) {
145
- const s = A(e) ?? { major: 0, minor: 0, patch: 0, prerelease: [] }, r = A(t) ?? { major: 0, minor: 0, patch: 0, prerelease: [] }, n = I(s.major, r.major) || I(s.minor, r.minor) || I(s.patch, r.patch);
146
- return n !== 0 ? n : m(s.prerelease, r.prerelease);
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(e, t) {
149
- return C(e, t) < 0;
152
+ function H(t, e) {
153
+ return U(t, e) < 0;
150
154
  }
151
- const P = "@heliofi/withdraw-core";
152
- function S(e = {}) {
153
- const { minSupportedVersions: t, consumer: s } = e, r = (t == null ? void 0 : t.packages) ?? {}, n = e.sdkVersion ?? O, E = { [P]: n };
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 [u, D] of Object.entries(r)) {
156
- const i = E[u];
157
- if (i != null && H(i, D)) return !1;
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(t) {
165
- this.api = t;
168
+ constructor(e) {
169
+ this.api = e;
166
170
  }
167
- static create(t = {}) {
168
- return new N(new U(t));
171
+ static create(e = {}) {
172
+ return new N(new S(e));
169
173
  }
170
- isSupported(t) {
171
- return S({
172
- minSupportedVersions: t,
174
+ isSupported(e) {
175
+ return m({
176
+ minSupportedVersions: e,
173
177
  consumer: this.api.consumer
174
178
  });
175
179
  }
176
- async getWithdrawalConfig(t, s) {
180
+ async getWithdrawalConfig(e, s) {
177
181
  return this.api.get(
178
- `/withdrawal-configs/${t}/public`,
182
+ `/withdrawal-configs/${e}/public`,
179
183
  s
180
184
  );
181
185
  }
182
- async getRoutes(t, s) {
183
- return this.api.get(`/withdraw/${t}/routes`, s);
186
+ async getRoutes(e, s) {
187
+ return this.api.get(`/withdraw/${e}/routes`, s);
184
188
  }
185
- async getBalance(t, s, r) {
189
+ async getBalance(e, s, r) {
186
190
  return this.api.get(
187
- `/withdraw/${t}/balances?walletAddress=${encodeURIComponent(
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(t, s) {
201
- const { withdrawalConfigId: r, ...n } = t;
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(t, s, r) {
212
+ async updateWithdrawalDetail(e, s, r) {
209
213
  return this.api.patch(
210
- `/withdraw-details/${t}`,
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(t, s) {
220
- const { withdrawalDetailId: r, ...n } = t;
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(t, s) {
228
- return this.api.get(`/withdraw-details/${t}`, s);
231
+ async getWithdrawalDetail(e, s) {
232
+ return this.api.get(`/withdraw-details/${e}`, s);
229
233
  }
230
234
  }
231
235
  export {
232
- w as BlockchainEngineType,
233
- d as BlockchainSymbol,
234
- G as BroadcastAck,
236
+ Y as BetaFeature,
237
+ d as BlockchainEngineType,
238
+ X as BlockchainSymbol,
239
+ g as BroadcastAck,
235
240
  h as DEFAULT_BASE_URL,
236
- M as Platform,
237
- P as SDK_PACKAGE_NAME,
241
+ w as Platform,
242
+ C as SDK_PACKAGE_NAME,
238
243
  O as SDK_VERSION,
239
- F as SignedTransactionKind,
240
- B as TERMINAL_STATES,
241
- W as WithdrawalApiError,
244
+ V as SignedTransactionKind,
245
+ F as TERMINAL_STATES,
246
+ v as ThemeType,
247
+ p as WithdrawalApiError,
242
248
  R as WithdrawalErrorCode,
243
- g as WithdrawalFeature,
249
+ G as WithdrawalFeature,
244
250
  N as WithdrawalSDK,
245
- o as WithdrawalState,
246
- L as decodeJwt,
251
+ _ as WithdrawalState,
252
+ f as decodeJwt,
247
253
  H as isBelow,
248
- v as isQuoteValid,
249
- S as isSupported,
250
- f as toWithdrawalErrorCode
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.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.305"
44
+ "@heliofi/common-fe": "0.2.313"
45
45
  }
46
46
  }