@gobob/bob-sdk 4.3.5 → 4.3.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.
Files changed (64) hide show
  1. package/dist/gateway/base-client.d.ts +4 -0
  2. package/dist/gateway/base-client.js +29 -0
  3. package/dist/gateway/base-client.js.map +1 -0
  4. package/dist/gateway/client.d.ts +4 -11
  5. package/dist/gateway/client.js +10 -29
  6. package/dist/gateway/client.js.map +1 -1
  7. package/dist/gateway/index.d.ts +4 -4
  8. package/dist/gateway/index.js +9 -7
  9. package/dist/gateway/index.js.map +1 -1
  10. package/dist/gateway/layerzero.d.ts +12 -16
  11. package/dist/gateway/layerzero.js +273 -69
  12. package/dist/gateway/layerzero.js.map +1 -1
  13. package/dist/gateway/tokens.d.ts +1 -1
  14. package/dist/gateway/tokens.js +16 -3
  15. package/dist/gateway/tokens.js.map +1 -1
  16. package/dist/gateway/types/bitcoin.d.ts +10 -0
  17. package/dist/gateway/types/bitcoin.js +3 -0
  18. package/dist/gateway/types/bitcoin.js.map +1 -0
  19. package/dist/gateway/types/crosschain-swap.d.ts +33 -0
  20. package/dist/gateway/types/crosschain-swap.js +3 -0
  21. package/dist/gateway/types/crosschain-swap.js.map +1 -0
  22. package/dist/gateway/types/defiLlama.d.ts +11 -0
  23. package/dist/gateway/types/defiLlama.js +3 -0
  24. package/dist/gateway/types/defiLlama.js.map +1 -0
  25. package/dist/gateway/types/index.d.ts +11 -0
  26. package/dist/gateway/types/index.js +28 -0
  27. package/dist/gateway/types/index.js.map +1 -0
  28. package/dist/gateway/types/layerzero.d.ts +90 -0
  29. package/dist/gateway/types/layerzero.js +3 -0
  30. package/dist/gateway/types/layerzero.js.map +1 -0
  31. package/dist/gateway/types/offramp.d.ts +96 -0
  32. package/dist/gateway/types/offramp.js +3 -0
  33. package/dist/gateway/types/offramp.js.map +1 -0
  34. package/dist/gateway/types/onramp.d.ts +96 -0
  35. package/dist/gateway/types/onramp.js +3 -0
  36. package/dist/gateway/types/onramp.js.map +1 -0
  37. package/dist/gateway/types/order.d.ts +77 -0
  38. package/dist/gateway/types/order.js +10 -0
  39. package/dist/gateway/types/order.js.map +1 -0
  40. package/dist/gateway/types/quote.d.ts +34 -0
  41. package/dist/gateway/{types.js → types/quote.js} +1 -1
  42. package/dist/gateway/types/quote.js.map +1 -0
  43. package/dist/gateway/types/strategy.d.ts +64 -0
  44. package/dist/gateway/types/strategy.js +3 -0
  45. package/dist/gateway/types/strategy.js.map +1 -0
  46. package/dist/gateway/types/token.d.ts +24 -0
  47. package/dist/gateway/types/token.js +3 -0
  48. package/dist/gateway/types/token.js.map +1 -0
  49. package/dist/gateway/types/utils.d.ts +1 -0
  50. package/dist/gateway/types/utils.js +3 -0
  51. package/dist/gateway/types/utils.js.map +1 -0
  52. package/dist/gateway/{utils.d.ts → utils/common.d.ts} +2 -3
  53. package/dist/gateway/{utils.js → utils/common.js} +8 -9
  54. package/dist/gateway/utils/common.js.map +1 -0
  55. package/dist/gateway/utils/index.d.ts +2 -0
  56. package/dist/gateway/utils/index.js +19 -0
  57. package/dist/gateway/utils/index.js.map +1 -0
  58. package/dist/gateway/utils/layerzero.d.ts +3 -0
  59. package/dist/gateway/utils/layerzero.js +27 -0
  60. package/dist/gateway/utils/layerzero.js.map +1 -0
  61. package/package.json +1 -1
  62. package/dist/gateway/types.d.ts +0 -379
  63. package/dist/gateway/types.js.map +0 -1
  64. package/dist/gateway/utils.js.map +0 -1
@@ -0,0 +1,4 @@
1
+ export declare abstract class BaseClient {
2
+ protected safeFetch(url: URL | string, init: RequestInit | undefined, errorMessage: string): Promise<Response>;
3
+ protected handleFetchError(err: unknown, message: string): never;
4
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseClient = void 0;
4
+ class BaseClient {
5
+ async safeFetch(url, init, errorMessage) {
6
+ const defaultInit = {
7
+ method: 'GET',
8
+ headers: {
9
+ 'Content-Type': 'application/json',
10
+ Accept: 'application/json',
11
+ },
12
+ };
13
+ try {
14
+ const response = await fetch(url, init || defaultInit);
15
+ return response;
16
+ }
17
+ catch (err) {
18
+ this.handleFetchError(err, errorMessage);
19
+ }
20
+ }
21
+ handleFetchError(err, message) {
22
+ if (err instanceof TypeError && err.message === 'Failed to fetch') {
23
+ throw new Error(message);
24
+ }
25
+ throw err;
26
+ }
27
+ }
28
+ exports.BaseClient = BaseClient;
29
+ //# sourceMappingURL=base-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-client.js","sourceRoot":"","sources":["../../src/gateway/base-client.ts"],"names":[],"mappings":";;;AAIA,MAAsB,UAAU;IASlB,KAAK,CAAC,SAAS,CAAC,GAAiB,EAAE,IAA6B,EAAE,YAAoB;QAC5F,MAAM,WAAW,GAAG;YAChB,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,kBAAkB;aAC7B;SACJ,CAAC;QAEF,IAAI,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,IAAI,WAAW,CAAC,CAAC;YACvD,OAAO,QAAQ,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAQS,gBAAgB,CAAC,GAAY,EAAE,OAAe;QACpD,IAAI,GAAG,YAAY,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QACD,MAAM,GAAG,CAAC;IACd,CAAC;CACJ;AAvCD,gCAuCC"}
@@ -1,5 +1,6 @@
1
1
  import { Account, Address, Hash, PublicClient, Transport, Chain as ViemChain, WalletClient } from 'viem';
2
- import { BitcoinSigner, BumpFeeParams, EnrichedToken, ExecuteQuoteParams, GatewayStartOrder, GatewayStrategyContract, GatewayTokensInfo, GetQuoteParams, OfframpCreateOrderParams, OfframpLiquidity, OfframpOrder, OfframpOrderStatus, OfframpQuote, OnrampOrder, OnrampQuote, StrategyParams, Token, UnlockOrderParams } from './types';
2
+ import { BaseClient } from './base-client';
3
+ import { BitcoinSigner, BumpFeeParams, EnrichedToken, ExecuteQuoteParams, GatewayOrder, GatewayStartOrder, GatewayStrategyContract, GatewayTokensInfo, GetQuoteParams, OfframpCreateOrderParams, OfframpLiquidity, OfframpOrder, OfframpOrderStatus, OfframpQuote, OnrampOrder, OnrampQuote, StrategyParams, Token, UnlockOrderParams } from './types';
3
4
  export declare const MAINNET_GATEWAY_BASE_URL = "https://gateway-api-mainnet.gobob.xyz";
4
5
  export declare const SIGNET_GATEWAY_BASE_URL = "https://gateway-api-signet.gobob.xyz";
5
6
  export declare const ORDER_DEADLINE_IN_SECONDS: number;
@@ -10,7 +11,7 @@ interface EvmWalletClientParams {
10
11
  export interface AllWalletClientParams extends EvmWalletClientParams {
11
12
  btcSigner?: BitcoinSigner;
12
13
  }
13
- export declare class GatewayApiClient {
14
+ export declare class GatewayApiClient extends BaseClient {
14
15
  private chain;
15
16
  private strategy;
16
17
  private isSignet;
@@ -45,14 +46,6 @@ export declare class GatewayApiClient {
45
46
  getTokens(includeStrategies?: boolean): Promise<Token[]>;
46
47
  private getPrices;
47
48
  getEnrichedTokens(includeStrategies?: boolean): Promise<EnrichedToken[]>;
48
- getOrders(userAddress: Address): Promise<Array<{
49
- type: 'onramp';
50
- order: OnrampOrder;
51
- } | {
52
- type: 'offramp';
53
- order: OfframpOrder;
54
- }>>;
55
- private safeFetch;
56
- private handleFetchError;
49
+ getOrders(userAddress: Address): Promise<Array<GatewayOrder>>;
57
50
  }
58
51
  export {};
@@ -45,17 +45,20 @@ const esplora_1 = require("../esplora");
45
45
  const utils_1 = require("../utils");
46
46
  const wallet_1 = require("../wallet");
47
47
  const abi_1 = require("./abi");
48
+ const base_client_1 = require("./base-client");
48
49
  const strategy_1 = __importDefault(require("./strategy"));
49
50
  const tokens_1 = require("./tokens");
51
+ const types_1 = require("./types");
50
52
  const utils_2 = require("./utils");
51
53
  exports.MAINNET_GATEWAY_BASE_URL = 'https://gateway-api-mainnet.gobob.xyz';
52
54
  exports.SIGNET_GATEWAY_BASE_URL = 'https://gateway-api-signet.gobob.xyz';
53
55
  exports.ORDER_DEADLINE_IN_SECONDS = 30 * 60;
54
- class GatewayApiClient {
56
+ class GatewayApiClient extends base_client_1.BaseClient {
55
57
  chain;
56
58
  strategy;
57
59
  isSignet = false;
58
60
  constructor(chainId, options) {
61
+ super();
59
62
  switch (chainId) {
60
63
  case chains_1.bob.id:
61
64
  this.chain = chains_1.bob;
@@ -80,7 +83,7 @@ class GatewayApiClient {
80
83
  if (params.fromChain?.toString().toLowerCase() === 'bitcoin') {
81
84
  const data = await this.getOnrampQuote(params);
82
85
  return {
83
- type: 'onramp',
86
+ type: types_1.GatewayOrderType.Onramp,
84
87
  params,
85
88
  finalOutputSats: data.outputSatoshis,
86
89
  finalFeeSats: data.feeBreakdown.overallFeeSats,
@@ -97,7 +100,7 @@ class GatewayApiClient {
97
100
  console.warn('Failed to get create order gas cost, defaulting to 0', err);
98
101
  }
99
102
  return {
100
- type: 'offramp',
103
+ type: types_1.GatewayOrderType.Offramp,
101
104
  params,
102
105
  finalOutputSats: data.amountReceiveInSat,
103
106
  finalFeeSats: data.feeBreakdown.overallFeeSats,
@@ -113,7 +116,7 @@ class GatewayApiClient {
113
116
  throw new Error('Invalid quote arguments');
114
117
  }
115
118
  async getOfframpCreateOrderGasCost(params, offrampQuote) {
116
- const chain = (0, utils_2.getChainConfig)(params.fromChain);
119
+ const chain = (0, utils_2.getChainConfig)(params.l0ChainId ?? params.fromChain);
117
120
  const publicClient = (0, utils_2.viemClient)(chain);
118
121
  if (!params.toUserAddress) {
119
122
  params.toUserAddress = this.isSignet
@@ -131,7 +134,7 @@ class GatewayApiClient {
131
134
  publicClient.getGasPrice(),
132
135
  ]);
133
136
  const fee = feeValues.maxFeePerGas ?? gasPrice;
134
- const slots = (0, tokens_1.getTokenSlots)(offrampOrder.quote.token, this.chainId);
137
+ const slots = (0, tokens_1.getTokenSlots)(offrampOrder.quote.token, this.chainId === chains_1.bob.id ? 'bob' : 'bob-sepolia');
135
138
  const user = params.fromUserAddress;
136
139
  const allowanceSlot = (0, utils_2.computeAllowanceSlot)(user, offrampRegistryAddress, slots.allowanceSlot);
137
140
  const balanceSlot = (0, utils_2.computeBalanceSlot)(user, slots.balanceSlot);
@@ -843,32 +846,10 @@ class GatewayApiClient {
843
846
  this.getOfframpOrders(userAddress),
844
847
  ]);
845
848
  return [
846
- ...onrampOrders.map((order) => ({ type: 'onramp', order })),
847
- ...offrampOrders.map((order) => ({ type: 'offramp', order })),
849
+ ...onrampOrders.map((order) => ({ type: types_1.GatewayOrderType.Onramp, order })),
850
+ ...offrampOrders.map((order) => ({ type: types_1.GatewayOrderType.Offramp, order })),
848
851
  ];
849
852
  }
850
- async safeFetch(url, init, errorMessage) {
851
- const defaultInit = {
852
- method: 'GET',
853
- headers: {
854
- 'Content-Type': 'application/json',
855
- Accept: 'application/json',
856
- },
857
- };
858
- try {
859
- const response = await fetch(url, init || defaultInit);
860
- return response;
861
- }
862
- catch (err) {
863
- this.handleFetchError(err, errorMessage);
864
- }
865
- }
866
- handleFetchError(err, message) {
867
- if (err instanceof TypeError && err.message === 'Failed to fetch') {
868
- throw new Error(message);
869
- }
870
- throw err;
871
- }
872
853
  }
873
854
  exports.GatewayApiClient = GatewayApiClient;
874
855
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/gateway/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/gateway/client.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- export { GatewayApiClient as GatewaySDK } from './client';
2
- export { GatewayQuoteParams, OnrampOrder, GatewayStrategyContract, OrderStatus } from './types';
3
- export { parseBtc } from './utils';
4
- export { ReownWalletAdapter } from './adapters/reown';
5
1
  export { OkxWalletAdapter } from './adapters/okx-wallet';
2
+ export { ReownWalletAdapter } from './adapters/reown';
3
+ export { GatewayApiClient as GatewaySDK } from './client';
6
4
  export { LayerZeroGatewayClient } from './layerzero';
5
+ export { CrossChainOrder, CrossChainOrderStatus, CrossChainSwapQuote, CrossChainSwapQuoteParams, ExecuteQuoteParams, GatewayOrderType, GatewayQuoteParams, GatewayStrategyContract, GetQuoteParams, OfframpOrder, OnrampOrder, OnrampOrderStatus, } from './types';
6
+ export { parseBtc } from './utils';
@@ -1,14 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LayerZeroGatewayClient = exports.OkxWalletAdapter = exports.ReownWalletAdapter = exports.parseBtc = exports.GatewaySDK = void 0;
4
- var client_1 = require("./client");
5
- Object.defineProperty(exports, "GatewaySDK", { enumerable: true, get: function () { return client_1.GatewayApiClient; } });
6
- var utils_1 = require("./utils");
7
- Object.defineProperty(exports, "parseBtc", { enumerable: true, get: function () { return utils_1.parseBtc; } });
8
- var reown_1 = require("./adapters/reown");
9
- Object.defineProperty(exports, "ReownWalletAdapter", { enumerable: true, get: function () { return reown_1.ReownWalletAdapter; } });
3
+ exports.parseBtc = exports.GatewayOrderType = exports.LayerZeroGatewayClient = exports.GatewaySDK = exports.ReownWalletAdapter = exports.OkxWalletAdapter = void 0;
10
4
  var okx_wallet_1 = require("./adapters/okx-wallet");
11
5
  Object.defineProperty(exports, "OkxWalletAdapter", { enumerable: true, get: function () { return okx_wallet_1.OkxWalletAdapter; } });
6
+ var reown_1 = require("./adapters/reown");
7
+ Object.defineProperty(exports, "ReownWalletAdapter", { enumerable: true, get: function () { return reown_1.ReownWalletAdapter; } });
8
+ var client_1 = require("./client");
9
+ Object.defineProperty(exports, "GatewaySDK", { enumerable: true, get: function () { return client_1.GatewayApiClient; } });
12
10
  var layerzero_1 = require("./layerzero");
13
11
  Object.defineProperty(exports, "LayerZeroGatewayClient", { enumerable: true, get: function () { return layerzero_1.LayerZeroGatewayClient; } });
12
+ var types_1 = require("./types");
13
+ Object.defineProperty(exports, "GatewayOrderType", { enumerable: true, get: function () { return types_1.GatewayOrderType; } });
14
+ var utils_1 = require("./utils");
15
+ Object.defineProperty(exports, "parseBtc", { enumerable: true, get: function () { return utils_1.parseBtc; } });
14
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gateway/index.ts"],"names":[],"mappings":";;;AAAA,mCAA0D;AAAjD,oGAAA,gBAAgB,OAAc;AAEvC,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AACjB,0CAAsD;AAA7C,2GAAA,kBAAkB,OAAA;AAC3B,oDAAyD;AAAhD,8GAAA,gBAAgB,OAAA;AACzB,yCAAqD;AAA5C,mHAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gateway/index.ts"],"names":[],"mappings":";;;AAAA,oDAAyD;AAAhD,8GAAA,gBAAgB,OAAA;AACzB,0CAAsD;AAA7C,2GAAA,kBAAkB,OAAA;AAC3B,mCAA0D;AAAjD,oGAAA,gBAAgB,OAAc;AACvC,yCAAqD;AAA5C,mHAAA,sBAAsB,OAAA;AAC/B,iCAaiB;AAPb,yGAAA,gBAAgB,OAAA;AAQpB,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA"}
@@ -1,27 +1,18 @@
1
+ import { Address } from 'viem';
1
2
  import { AllWalletClientParams, GatewayApiClient } from './client';
2
- import { ExecuteQuoteParams, GetQuoteParams } from './types';
3
- type LayerZeroChainInfo = {
4
- name: string;
5
- eid?: string;
6
- oftAddress: string;
7
- nativeChainId?: number;
8
- };
9
- interface LayerZeroQuoteParamsExt {
10
- l0OriginFinalityBuffer?: number | bigint;
11
- l0DestinationFinalityBuffer?: number | bigint;
12
- }
3
+ import { CrossChainOrder, ExecuteQuoteParams, GatewayOrder, GetQuoteParams, LayerZeroChainInfo, LayerZeroQuoteParamsExt, LayerZeroSendParam } from './types';
13
4
  export declare class LayerZeroClient {
14
5
  private basePath;
15
6
  private getChainDeploymentsPromiseCache;
16
7
  private getWbtcDeploymentsPromiseCache;
17
8
  constructor();
18
9
  private getChainDeployments;
19
- getEidForChain(chainKey: string): Promise<string | null>;
10
+ getEidForChain(chainKey: string): Promise<number | null>;
20
11
  private getWbtcDeployments;
21
12
  getSupportedChains(): Promise<Array<string>>;
22
13
  getOftAddressForChain(chainKey: string): Promise<string | null>;
23
14
  getSupportedChainsInfo(): Promise<Array<LayerZeroChainInfo>>;
24
- getChainId(eid: string): Promise<number | null>;
15
+ getChainId(eid: number): Promise<number | null>;
25
16
  private getJson;
26
17
  }
27
18
  export declare class LayerZeroGatewayClient extends GatewayApiClient {
@@ -31,12 +22,17 @@ export declare class LayerZeroGatewayClient extends GatewayApiClient {
31
22
  });
32
23
  getSupportedChainsInfo(): Promise<Array<LayerZeroChainInfo>>;
33
24
  getSupportedChains(): Promise<Array<string>>;
34
- getEidForChain(chainKey: string): Promise<string | null>;
35
- getChainIdForEid(eid: string): Promise<number | null>;
25
+ getEidForChain(chainKey: string): Promise<number | null>;
26
+ getChainIdForEid(eid: number): Promise<number | null>;
36
27
  getOftAddressForChain(chainKey: string): Promise<string | null>;
37
28
  getQuote(params: GetQuoteParams<LayerZeroQuoteParamsExt>): Promise<ExecuteQuoteParams>;
38
29
  executeQuote({ quote, walletClient, publicClient, btcSigner, }: {
39
30
  quote: ExecuteQuoteParams;
40
31
  } & AllWalletClientParams): Promise<string>;
32
+ getL0CreateOrderGasCost(params: GetQuoteParams<LayerZeroQuoteParamsExt>, sendParams: LayerZeroSendParam, sendFees: {
33
+ nativeFee: bigint;
34
+ lzTokenFee: bigint;
35
+ }, fromChain: string): Promise<bigint>;
36
+ getCrossChainSwapOrders(_userAddress: Address): Promise<CrossChainOrder[]>;
37
+ getOrders(userAddress: Address): Promise<Array<GatewayOrder>>;
41
38
  }
42
- export {};