@ape.swap/bonds-sdk 3.3.0-test.7 → 3.3.0-test.8

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 (31) hide show
  1. package/dist/components/uikit-sdk/Svg/tokens/ROBINHOOD.d.ts +4 -0
  2. package/dist/components/uikit-sdk/Svg/tokens/ROBINHOOD.js +9 -0
  3. package/dist/components/uikit-sdk/Svg/tokens/ROBINHOOD.js.map +1 -0
  4. package/dist/config/constants/addresses.d.ts +0 -1
  5. package/dist/config/constants/addresses.js +2 -17
  6. package/dist/config/constants/addresses.js.map +1 -1
  7. package/dist/config/constants/chains.js +5 -0
  8. package/dist/config/constants/chains.js.map +1 -1
  9. package/dist/config/constants/networks.js +1 -0
  10. package/dist/config/constants/networks.js.map +1 -1
  11. package/dist/config/constants/tokens.js +10 -11
  12. package/dist/config/constants/tokens.js.map +1 -1
  13. package/dist/config/constants/variables.js +1 -0
  14. package/dist/config/constants/variables.js.map +1 -1
  15. package/dist/state/bonds/useBondsData.js +3 -3
  16. package/dist/state/bonds/useBondsData.js.map +1 -1
  17. package/dist/state/bonds/useBondsList.d.ts +2 -2
  18. package/dist/state/bonds/useBondsList.js +6 -18
  19. package/dist/state/bonds/useBondsList.js.map +1 -1
  20. package/dist/state/bonds/utils.js +0 -2
  21. package/dist/state/bonds/utils.js.map +1 -1
  22. package/dist/state/useSDKConfig.d.ts +2 -0
  23. package/dist/state/useSDKConfig.js.map +1 -1
  24. package/dist/state/zap/getChainParam.d.ts +2 -1
  25. package/dist/state/zap/getChainParam.js +4 -1
  26. package/dist/state/zap/getChainParam.js.map +1 -1
  27. package/dist/views/BuyBond/BuyBond.js +6 -3
  28. package/dist/views/BuyBond/BuyBond.js.map +1 -1
  29. package/dist/views/YourBonds/YourBonds.js +1 -1
  30. package/dist/views/YourBonds/YourBonds.js.map +1 -1
  31. package/package.json +22 -22
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { SvgProps } from '../types';
3
+ declare const ROBINHOOD: React.FC<SvgProps>;
4
+ export default ROBINHOOD;
@@ -0,0 +1,9 @@
1
+ import { jsxs, jsx } from 'theme-ui/jsx-runtime';
2
+
3
+ const ROBINHOOD = ({ width }) => {
4
+ const scale = 0.75;
5
+ return (jsxs("svg", { width: width || '32', height: width || '42', viewBox: "0 0 32 42", fill: "rgb(199, 255, 0)", xmlns: "http://www.w3.org/2000/svg", children: [jsx("circle", { cx: "16", cy: "21", r: "30", fill: "rgb(199, 255, 0)" }), jsx("g", { transform: `scale(${scale}) translate(${(16 * (1 - scale)) / scale}, ${(21 * (1 - scale)) / scale})`, children: jsx("path", { d: "M0.237711 42H1.14916C1.31483 42 1.48056 41.9157 1.53587 41.7753C8.41284 23.9672 15.8974 15.1474 20.5926 9.86673C20.786 9.64201 20.7031 9.47355 20.4269 9.47355H12.0309C11.727 9.47355 11.4702 9.59707 11.2576 9.86673L5.23667 17.4507C4.3529 18.5742 4.13199 19.6134 4.13199 21.1021V28.8546C2.17104 34.4442 0.92819 38.2362 0.0168015 41.663C-0.038442 41.882 0.0444232 42 0.237711 42ZM30.5353 1.13119C29.2372 -0.273195 23.3821 -0.329391 20.6754 0.738011C20.1121 0.959852 19.5707 1.33622 19.3221 1.5525C16.8364 3.71537 15.1794 5.4288 13.6051 7.11409C13.4117 7.31068 13.4947 7.50727 13.7709 7.50727H23.0783C23.9345 7.50727 24.4316 8.01291 24.4316 8.88359V19.5573C24.4316 19.8382 24.6525 19.9225 24.8183 19.6696L30.4248 12.2261C31.3362 11.0183 31.6124 10.6532 31.8609 8.96792C32.1924 6.49613 31.999 2.70423 30.5353 1.13119ZM18.5212 29.4445L22.3601 23.0121C22.4431 22.8437 22.4706 22.647 22.4706 22.5066V11.7767C22.4706 11.4958 22.2773 11.3836 22.0841 11.6082C16.3118 18.1529 11.8099 25.0346 7.6395 33.3207C7.53455 33.5285 7.66712 33.7139 7.91572 33.6297L16.5327 30.9332C17.5048 30.6298 18.0517 30.231 18.5212 29.4445Z", fill: "black" }) })] }));
6
+ };
7
+
8
+ export { ROBINHOOD as default };
9
+ //# sourceMappingURL=ROBINHOOD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ROBINHOOD.js","sources":["../../../../../src/components/uikit-sdk/Svg/tokens/ROBINHOOD.tsx"],"sourcesContent":["import React from 'react'\nimport { SvgProps } from '../types'\n\nconst ROBINHOOD: React.FC<SvgProps> = ({ width }) => {\n const scale = 0.75\n return (\n <svg\n width={width || '32'}\n height={width || '42'}\n viewBox=\"0 0 32 42\"\n fill=\"rgb(199, 255, 0)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"16\" cy=\"21\" r=\"30\" fill=\"rgb(199, 255, 0)\" />\n {/* copilot please reduce the size of the path bellow, tried with scale but it didn't worked */}\n\n <g transform={`scale(${scale}) translate(${(16 * (1 - scale)) / scale}, ${(21 * (1 - scale)) / scale})`}>\n <path\n d=\"M0.237711 42H1.14916C1.31483 42 1.48056 41.9157 1.53587 41.7753C8.41284 23.9672 15.8974 15.1474 20.5926 9.86673C20.786 9.64201 20.7031 9.47355 20.4269 9.47355H12.0309C11.727 9.47355 11.4702 9.59707 11.2576 9.86673L5.23667 17.4507C4.3529 18.5742 4.13199 19.6134 4.13199 21.1021V28.8546C2.17104 34.4442 0.92819 38.2362 0.0168015 41.663C-0.038442 41.882 0.0444232 42 0.237711 42ZM30.5353 1.13119C29.2372 -0.273195 23.3821 -0.329391 20.6754 0.738011C20.1121 0.959852 19.5707 1.33622 19.3221 1.5525C16.8364 3.71537 15.1794 5.4288 13.6051 7.11409C13.4117 7.31068 13.4947 7.50727 13.7709 7.50727H23.0783C23.9345 7.50727 24.4316 8.01291 24.4316 8.88359V19.5573C24.4316 19.8382 24.6525 19.9225 24.8183 19.6696L30.4248 12.2261C31.3362 11.0183 31.6124 10.6532 31.8609 8.96792C32.1924 6.49613 31.999 2.70423 30.5353 1.13119ZM18.5212 29.4445L22.3601 23.0121C22.4431 22.8437 22.4706 22.647 22.4706 22.5066V11.7767C22.4706 11.4958 22.2773 11.3836 22.0841 11.6082C16.3118 18.1529 11.8099 25.0346 7.6395 33.3207C7.53455 33.5285 7.66712 33.7139 7.91572 33.6297L16.5327 30.9332C17.5048 30.6298 18.0517 30.231 18.5212 29.4445Z\"\n fill=\"black\"\n />\n </g>\n </svg>\n )\n}\n\nexport default ROBINHOOD\n"],"names":["_jsxs","_jsx"],"mappings":";;AAGA,MAAM,SAAS,GAAuB,CAAC,EAAE,KAAK,EAAE,KAAI;IAClD,MAAM,KAAK,GAAG,IAAI;AAClB,IAAA,QACEA,IAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE,KAAK,IAAI,IAAI,EACpB,MAAM,EAAE,KAAK,IAAI,IAAI,EACrB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,kBAAkB,EACvB,KAAK,EAAC,4BAA4B,aAElCC,GAAA,CAAA,QAAA,EAAA,EAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,kBAAkB,EAAA,CAAG,EAGzDA,GAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAE,CAAA,MAAA,EAAS,KAAK,CAAA,YAAA,EAAe,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,CAAA,EAAA,EAAK,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,CAAA,CAAA,CAAG,YACrGA,GAAA,CAAA,MAAA,EAAA,EACE,CAAC,EAAC,olCAAolC,EACtlC,IAAI,EAAC,OAAO,GACZ,EAAA,CACA,CAAA,EAAA,CACA;AAEV;;;;"}
@@ -2,7 +2,6 @@ import { ChainId } from '@ape.swap/apeswap-lists';
2
2
  type AddressMap = {
3
3
  [chainId: number]: string;
4
4
  };
5
- export declare const PRICE_GETTER_ADDRESSES: AddressMap;
6
5
  export declare const MULTICALL_V2: AddressMap;
7
6
  export declare const SoulZapTokenManager: Partial<Record<ChainId, string>>;
8
7
  export declare const ACF_TO_ABOND: string;
@@ -1,22 +1,5 @@
1
1
  import { ChainId } from '@ape.swap/apeswap-lists';
2
2
 
3
- ({
4
- [ChainId.BSC]: '0x424356909715afcE9D0263dda0B27f0BC6cc638d', // Price getter V3
5
- [ChainId.MATIC]: '0xc5331AF02Cb72e5Df07c47f85C89ef9227418f01', // Price getter V3
6
- [ChainId.MAINNET]: '0xf63e25B5492A856189420724fe6f3573620966f3', // Price getter V3
7
- [ChainId.ARBITRUM]: '0xf1e931A569d8B3Ff5cCd11d2F42422FCABA6DBa4', // Price getter V3
8
- [ChainId.LINEA]: '0x4E4746b8Cfc7E57d824Dd91A80146F9C23C36d52', // Price getter V3
9
- [ChainId.LIGHTLINK]: '0xb4aD8df313109caaF8Fdcde9094e9d1DE41252bc', // Price getter V3
10
- [ChainId.IOTA]: '0x7D8f0e5964a1D05974EfD9aaff8A4154618B49f3', // Price getter V3
11
- [ChainId.BASE]: '0xE29C74B4DD05A268B5FFaadeF4fdbAa1de6FDe84', // Price getter V3
12
- [ChainId.BLAST]: '0x218EB9ACDC721E235969A30f5DA46FB1224Fa7A7', // Price getter V3
13
- [ChainId.AVAX]: '0x01dadaa586D30d93Ac92C79A5Cb02a8F276a8B4F', // Price getter V3
14
- [ChainId.CROSSFI]: '0xC22Db8dDe3A3591fFB02be868Ce2901d30671FE4', // Price getter V3
15
- [ChainId.SONIC]: '0xC22Db8dDe3A3591fFB02be868Ce2901d30671FE4', // Price getter V3
16
- [ChainId.MONAD_TESTNET]: '0x0187D959A28B0D3B490c2D898fA1CcD054cCC3cd', // Price getter V3
17
- [ChainId.BERACHAIN]: '0x70005Da62E17041977f7F99f91098b125CcDE1a7',
18
- [ChainId.UNICHAIN]: '0xE2EaDC50c2F3044065E2484B0287F1CA82fD92E1',
19
- });
20
3
  const MULTICALL_V2 = {
21
4
  [ChainId.BSC]: '0x38ce767d81de3940CFa5020B55af1A400ED4F657',
22
5
  [ChainId.BSC_TESTNET]: '0x67ADCB4dF3931b0C5Da724058ADC2174a9844412',
@@ -39,6 +22,7 @@ const MULTICALL_V2 = {
39
22
  [ChainId.BERACHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11',
40
23
  [ChainId.KATANA]: '0xcA11bde05977b3631167028862bE2a173976CA11',
41
24
  [ChainId.UNICHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11',
25
+ [ChainId.ROBINHOOD]: '0xcA11bde05977b3631167028862bE2a173976CA11',
42
26
  };
43
27
  const SoulZapTokenManager = {
44
28
  [ChainId.MAINNET]: '0x2F87f76336A560bbB0d18d357D10646bB96E8802',
@@ -51,6 +35,7 @@ const SoulZapTokenManager = {
51
35
  [ChainId.BLAST]: '0xde9Eb844AD9e8B067309205707e2fFaA6a049cc0',
52
36
  [ChainId.BERACHAIN]: '0xcFd581f15433899d093ca1ADfc3aC13c37DBfbe7',
53
37
  [ChainId.SONIC]: '0x173E473b314506324E10aD54978d25E1F54bCa48',
38
+ [ChainId.ROBINHOOD]: '0xB77eA97089Bf8B127732eaEf08E0019380fF70e6',
54
39
  };
55
40
  const ACF_TO_ABOND = '0xEce2b9C3704632Ce760271B0b84E3A4A698Ca962';
56
41
  const LENS_CONTRACT = {
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.js","sources":["../../../src/config/constants/addresses.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\n\ntype AddressMap = { [chainId: number]: string }\n\nexport const PRICE_GETTER_ADDRESSES: AddressMap = {\n [ChainId.BSC]: '0x424356909715afcE9D0263dda0B27f0BC6cc638d', // Price getter V3\n [ChainId.MATIC]: '0xc5331AF02Cb72e5Df07c47f85C89ef9227418f01', // Price getter V3\n [ChainId.MAINNET]: '0xf63e25B5492A856189420724fe6f3573620966f3', // Price getter V3\n [ChainId.ARBITRUM]: '0xf1e931A569d8B3Ff5cCd11d2F42422FCABA6DBa4', // Price getter V3\n [ChainId.LINEA]: '0x4E4746b8Cfc7E57d824Dd91A80146F9C23C36d52', // Price getter V3\n [ChainId.LIGHTLINK]: '0xb4aD8df313109caaF8Fdcde9094e9d1DE41252bc', // Price getter V3\n [ChainId.IOTA]: '0x7D8f0e5964a1D05974EfD9aaff8A4154618B49f3', // Price getter V3\n [ChainId.BASE]: '0xE29C74B4DD05A268B5FFaadeF4fdbAa1de6FDe84', // Price getter V3\n [ChainId.BLAST]: '0x218EB9ACDC721E235969A30f5DA46FB1224Fa7A7', // Price getter V3\n [ChainId.AVAX]: '0x01dadaa586D30d93Ac92C79A5Cb02a8F276a8B4F', // Price getter V3\n [ChainId.CROSSFI]: '0xC22Db8dDe3A3591fFB02be868Ce2901d30671FE4', // Price getter V3\n [ChainId.SONIC]: '0xC22Db8dDe3A3591fFB02be868Ce2901d30671FE4', // Price getter V3\n [ChainId.MONAD_TESTNET]: '0x0187D959A28B0D3B490c2D898fA1CcD054cCC3cd', // Price getter V3\n [ChainId.BERACHAIN]: '0x70005Da62E17041977f7F99f91098b125CcDE1a7',\n [ChainId.UNICHAIN]: '0xE2EaDC50c2F3044065E2484B0287F1CA82fD92E1',\n}\n\nexport const MULTICALL_V2: AddressMap = {\n [ChainId.BSC]: '0x38ce767d81de3940CFa5020B55af1A400ED4F657',\n [ChainId.BSC_TESTNET]: '0x67ADCB4dF3931b0C5Da724058ADC2174a9844412',\n [ChainId.MATIC]: '0x95028E5B8a734bb7E2071F96De89BABe75be9C8E',\n [ChainId.MAINNET]: '0xeefBa1e63905eF1D7ACbA5a8513c70307C1cE441',\n [ChainId.TLOS]: '0xa1a283f10f578201a97a8f69d8c15828b778f04b',\n [ChainId.ARBITRUM]: '0x089d8780e1c0789d0ef786bf001bee52d8351cad',\n [ChainId.SEPOLIA]: '0x4170Ebf53bbA01eb45594ad6F090d7FE5407be68',\n [ChainId.INEVM]: '0x7039F6DDB900762c33842e406fB908EB8a03fB84',\n [ChainId.LINEA]: '0x3f6F9c727C9fdf70Fe56f6e22Bc4dcb75206a78c',\n [ChainId.LIGHTLINK]: '0xb9a543d7B7dF05C8845AeA6627dE4a6622Ac863C',\n [ChainId.IOTA]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.BASE]: '0xDF845ff2dA2325Df9C6CC3DDF7418C54E16bbFDF',\n [ChainId.GRAPHLINQ]: '0xCc88b233BbcE04c064C627ad5627da6e24a8A067',\n [ChainId.AVAX]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.BLAST]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.CROSSFI]: '0x007bAC6A07894A69fBcA94ED6274005093E1c44E',\n [ChainId.MONAD_TESTNET]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.SONIC]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.BERACHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.KATANA]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.UNICHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n}\n\nexport const SoulZapTokenManager: Partial<Record<ChainId, string>> = {\n [ChainId.MAINNET]: '0x2F87f76336A560bbB0d18d357D10646bB96E8802',\n [ChainId.MATIC]: '0x3F15Ee3d7dd7AcFB14625A1E2FBce22912Fa91be',\n [ChainId.LINEA]: '0x93b636d58656B2CCA69c539e511C14eb3b71DA2f',\n [ChainId.BSC]: '0x7119014f0d75A7a31b875F79cE14b2a32B34B067',\n [ChainId.BASE]: '0x0B750790dCa8f289fAB5eFd1a48EfAb969e51D16',\n [ChainId.ARBITRUM]: '0x22572A548Ff26Fc5725a17dfd233F49a98c17EE7',\n [ChainId.AVAX]: '0xC4dE46cBE21400dabE2E7c66E04F43acE4b5b910',\n [ChainId.BLAST]: '0xde9Eb844AD9e8B067309205707e2fFaA6a049cc0',\n [ChainId.BERACHAIN]: '0xcFd581f15433899d093ca1ADfc3aC13c37DBfbe7',\n [ChainId.SONIC]: '0x173E473b314506324E10aD54978d25E1F54bCa48',\n}\n\nexport const ACF_TO_ABOND: string = '0xEce2b9C3704632Ce760271B0b84E3A4A698Ca962'\n\nexport const LENS_CONTRACT: AddressMap = {\n [ChainId.BSC]: '0x6Fb7A34A271cc0F4016db6A3BAA6206757a9a164',\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addresses.js","sources":["../../../src/config/constants/addresses.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\n\ntype AddressMap = { [chainId: number]: string }\n\nexport const MULTICALL_V2: AddressMap = {\n [ChainId.BSC]: '0x38ce767d81de3940CFa5020B55af1A400ED4F657',\n [ChainId.BSC_TESTNET]: '0x67ADCB4dF3931b0C5Da724058ADC2174a9844412',\n [ChainId.MATIC]: '0x95028E5B8a734bb7E2071F96De89BABe75be9C8E',\n [ChainId.MAINNET]: '0xeefBa1e63905eF1D7ACbA5a8513c70307C1cE441',\n [ChainId.TLOS]: '0xa1a283f10f578201a97a8f69d8c15828b778f04b',\n [ChainId.ARBITRUM]: '0x089d8780e1c0789d0ef786bf001bee52d8351cad',\n [ChainId.SEPOLIA]: '0x4170Ebf53bbA01eb45594ad6F090d7FE5407be68',\n [ChainId.INEVM]: '0x7039F6DDB900762c33842e406fB908EB8a03fB84',\n [ChainId.LINEA]: '0x3f6F9c727C9fdf70Fe56f6e22Bc4dcb75206a78c',\n [ChainId.LIGHTLINK]: '0xb9a543d7B7dF05C8845AeA6627dE4a6622Ac863C',\n [ChainId.IOTA]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.BASE]: '0xDF845ff2dA2325Df9C6CC3DDF7418C54E16bbFDF',\n [ChainId.GRAPHLINQ]: '0xCc88b233BbcE04c064C627ad5627da6e24a8A067',\n [ChainId.AVAX]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.BLAST]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.CROSSFI]: '0x007bAC6A07894A69fBcA94ED6274005093E1c44E',\n [ChainId.MONAD_TESTNET]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.SONIC]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.BERACHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.KATANA]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.UNICHAIN]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n [ChainId.ROBINHOOD]: '0xcA11bde05977b3631167028862bE2a173976CA11',\n}\n\nexport const SoulZapTokenManager: Partial<Record<ChainId, string>> = {\n [ChainId.MAINNET]: '0x2F87f76336A560bbB0d18d357D10646bB96E8802',\n [ChainId.MATIC]: '0x3F15Ee3d7dd7AcFB14625A1E2FBce22912Fa91be',\n [ChainId.LINEA]: '0x93b636d58656B2CCA69c539e511C14eb3b71DA2f',\n [ChainId.BSC]: '0x7119014f0d75A7a31b875F79cE14b2a32B34B067',\n [ChainId.BASE]: '0x0B750790dCa8f289fAB5eFd1a48EfAb969e51D16',\n [ChainId.ARBITRUM]: '0x22572A548Ff26Fc5725a17dfd233F49a98c17EE7',\n [ChainId.AVAX]: '0xC4dE46cBE21400dabE2E7c66E04F43acE4b5b910',\n [ChainId.BLAST]: '0xde9Eb844AD9e8B067309205707e2fFaA6a049cc0',\n [ChainId.BERACHAIN]: '0xcFd581f15433899d093ca1ADfc3aC13c37DBfbe7',\n [ChainId.SONIC]: '0x173E473b314506324E10aD54978d25E1F54bCa48',\n [ChainId.ROBINHOOD]: '0xB77eA97089Bf8B127732eaEf08E0019380fF70e6',\n}\n\nexport const ACF_TO_ABOND: string = '0xEce2b9C3704632Ce760271B0b84E3A4A698Ca962'\n\nexport const LENS_CONTRACT: AddressMap = {\n [ChainId.BSC]: '0x6Fb7A34A271cc0F4016db6A3BAA6206757a9a164',\n}\n"],"names":[],"mappings":";;AAIO,MAAM,YAAY,GAAe;AACtC,IAAA,CAAC,OAAO,CAAC,GAAG,GAAG,4CAA4C;AAC3D,IAAA,CAAC,OAAO,CAAC,WAAW,GAAG,4CAA4C;AACnE,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,4CAA4C;AAC/D,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,4CAA4C;AAC5D,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,4CAA4C;AAChE,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,4CAA4C;AAC/D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,4CAA4C;AACjE,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,4CAA4C;AAC5D,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,4CAA4C;AAC5D,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,4CAA4C;AACjE,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,4CAA4C;AAC5D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,4CAA4C;AAC/D,IAAA,CAAC,OAAO,CAAC,aAAa,GAAG,4CAA4C;AACrE,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,4CAA4C;AACjE,IAAA,CAAC,OAAO,CAAC,MAAM,GAAG,4CAA4C;AAC9D,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,4CAA4C;AAChE,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,4CAA4C;;AAG5D,MAAM,mBAAmB,GAAqC;AACnE,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,4CAA4C;AAC/D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,GAAG,GAAG,4CAA4C;AAC3D,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,4CAA4C;AAC5D,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,4CAA4C;AAChE,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,4CAA4C;AAC5D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,4CAA4C;AACjE,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,4CAA4C;AAC7D,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,4CAA4C;;AAG5D,MAAM,YAAY,GAAW;AAE7B,MAAM,aAAa,GAAe;AACvC,IAAA,CAAC,OAAO,CAAC,GAAG,GAAG,4CAA4C;;;;;"}
@@ -19,9 +19,11 @@ import BERA from '../../components/uikit-sdk/Svg/tokens/BERA.js';
19
19
  import KATANA from '../../components/uikit-sdk/Svg/tokens/KATANA.js';
20
20
  import UNICHAIN from '../../components/uikit-sdk/Svg/tokens/UNICHAIN.js';
21
21
  import Question from '../../components/uikit-sdk/Svg/Icons/Question.js';
22
+ import ROBINHOOD from '../../components/uikit-sdk/Svg/tokens/ROBINHOOD.js';
22
23
 
23
24
  // These are the lists we will display to the user
24
25
  const MAINNET_CHAINS = [
26
+ ChainId.ROBINHOOD,
25
27
  ChainId.MAINNET,
26
28
  ChainId.BSC,
27
29
  ChainId.MATIC,
@@ -63,6 +65,7 @@ const NETWORK_ICONS = {
63
65
  [ChainId.BERACHAIN]: BERA,
64
66
  [ChainId.KATANA]: KATANA,
65
67
  [ChainId.UNICHAIN]: UNICHAIN,
68
+ [ChainId.ROBINHOOD]: ROBINHOOD,
66
69
  };
67
70
  // Falls back to a generic question-mark icon for chains without a configured logo
68
71
  const getChainIcon = (chain) => (chain !== undefined && NETWORK_ICONS[chain]) || Question;
@@ -90,6 +93,7 @@ const NETWORK_LABEL = {
90
93
  [ChainId.BERACHAIN]: 'Berachain',
91
94
  [ChainId.KATANA]: 'Katana',
92
95
  [ChainId.UNICHAIN]: 'Unichain',
96
+ [ChainId.ROBINHOOD]: 'Robinhood',
93
97
  };
94
98
  // Network block explorers
95
99
  const BLOCK_EXPLORER = {
@@ -115,6 +119,7 @@ const BLOCK_EXPLORER = {
115
119
  [ChainId.BERACHAIN]: 'https://berascan.com',
116
120
  [ChainId.KATANA]: 'https://explorer.katanarpc.com',
117
121
  [ChainId.UNICHAIN]: 'https://uniscan.xyz',
122
+ [ChainId.ROBINHOOD]: 'https://robinhoodchain.blockscout.com',
118
123
  };
119
124
 
120
125
  export { BLOCK_EXPLORER, MAINNET_CHAINS, NETWORK_ICONS, NETWORK_LABEL, TESTNET_CHAINS, getChainIcon };
@@ -1 +1 @@
1
- {"version":3,"file":"chains.js","sources":["../../../src/config/constants/chains.ts"],"sourcesContent":["// Network chain ids\nimport React from 'react'\nimport { SvgProps } from '../../components/uikit-sdk/Svg/types'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport BNB from '../../components/uikit-sdk/Svg/tokens/BNB'\nimport POLYGON from '../../components/uikit-sdk/Svg/tokens/POLYGON'\nimport ETH from '../../components/uikit-sdk/Svg/tokens/ETH'\nimport TLOS from '../../components/uikit-sdk/Svg/tokens/TLOS'\nimport ARBITRUM from '../../components/uikit-sdk/Svg/tokens/ARBITRUM'\nimport INEVM from '../../components/uikit-sdk/Svg/tokens/INEVM'\nimport LINEA from '../../components/uikit-sdk/Svg/tokens/LINEA'\nimport LIGHTLINK from '../../components/uikit-sdk/Svg/tokens/LIGHTLINK'\nimport IOTA from '../../components/uikit-sdk/Svg/tokens/IOTA'\nimport BASE from '../../components/uikit-sdk/Svg/tokens/BASE'\nimport GRAPHLINQ from '../../components/uikit-sdk/Svg/tokens/GraphLinq'\nimport AVAX from '../../components/uikit-sdk/Svg/tokens/AVAX'\nimport BLAST from '../../components/uikit-sdk/Svg/tokens/BLAST'\nimport CROSSFI from '../../components/uikit-sdk/Svg/tokens/CROSSFI'\nimport MONAD from '../../components/uikit-sdk/Svg/tokens/MONAD'\nimport SONIC from '../../components/uikit-sdk/Svg/tokens/SONIC'\nimport BERA from '../../components/uikit-sdk/Svg/tokens/BERA'\nimport KATANA from '../../components/uikit-sdk/Svg/tokens/KATANA'\nimport UNICHAIN from '../../components/uikit-sdk/Svg/tokens/UNICHAIN'\nimport Question from '../../components/uikit-sdk/Svg/Icons/Question'\n\n// These are the lists we will display to the user\nexport const MAINNET_CHAINS = [\n ChainId.MAINNET,\n ChainId.BSC,\n ChainId.MATIC,\n ChainId.BASE,\n ChainId.IOTA,\n ChainId.LINEA,\n ChainId.ARBITRUM,\n ChainId.LIGHTLINK,\n ChainId.GRAPHLINQ,\n ChainId.AVAX,\n ChainId.BLAST,\n ChainId.CROSSFI,\n ChainId.SONIC,\n ChainId.MONAD_TESTNET,\n ChainId.BERACHAIN,\n ChainId.KATANA,\n ChainId.UNICHAIN,\n]\n\nexport const TESTNET_CHAINS = [ChainId.MONAD_TESTNET]\n\n// Network Icons\nexport const NETWORK_ICONS: Partial<Record<number, React.ComponentType<SvgProps>>> = {\n [ChainId.BSC]: BNB,\n [ChainId.MATIC]: POLYGON,\n [ChainId.MAINNET]: ETH,\n [ChainId.TLOS]: TLOS,\n [ChainId.ARBITRUM]: ARBITRUM,\n [ChainId.INEVM]: INEVM,\n [ChainId.SEPOLIA]: ETH,\n [ChainId.LINEA]: LINEA,\n [ChainId.LIGHTLINK]: LIGHTLINK,\n [ChainId.IOTA]: IOTA,\n [ChainId.BASE]: BASE,\n [ChainId.GRAPHLINQ]: GRAPHLINQ,\n [ChainId.AVAX]: AVAX,\n [ChainId.BLAST]: BLAST,\n [ChainId.CROSSFI]: CROSSFI,\n [ChainId.MONAD_TESTNET]: MONAD,\n [ChainId.SONIC]: SONIC,\n [ChainId.BERACHAIN]: BERA,\n [ChainId.KATANA]: KATANA,\n [ChainId.UNICHAIN]: UNICHAIN,\n}\n\n// Falls back to a generic question-mark icon for chains without a configured logo\nexport const getChainIcon = (chain?: number): React.ComponentType<SvgProps> =>\n (chain !== undefined && NETWORK_ICONS[chain]) || Question\n\n// Network labels\nexport const NETWORK_LABEL: Record<number, string> = {\n [ChainId.BSC]: 'BNB',\n [ChainId.BSC_TESTNET]: 'BNB Testnet',\n [ChainId.MATIC]: 'Polygon',\n [ChainId.MAINNET]: 'Ethereum',\n [ChainId.TLOS]: 'Telos',\n [ChainId.ARBITRUM]: 'Arbitrum',\n [ChainId.INEVM]: 'inEVM',\n [ChainId.SEPOLIA]: 'Sepolia',\n [ChainId.LINEA]: 'Linea',\n [ChainId.LIGHTLINK]: 'Lightlink',\n [ChainId.IOTA]: 'Iota',\n [ChainId.IOTA_TESTNET]: 'Iota Testnet',\n [ChainId.BASE]: 'Base',\n [ChainId.GRAPHLINQ]: 'GraphLinq',\n [ChainId.AVAX]: 'Avalanche',\n [ChainId.BLAST]: 'Blast',\n [ChainId.CROSSFI]: 'Crossfi',\n [ChainId.MONAD_TESTNET]: 'Monad Testnet',\n [ChainId.SONIC]: 'Sonic',\n [ChainId.BERACHAIN]: 'Berachain',\n [ChainId.KATANA]: 'Katana',\n [ChainId.UNICHAIN]: 'Unichain',\n}\n\n// Network block explorers\nexport const BLOCK_EXPLORER: Record<number, string> = {\n [ChainId.MAINNET]: 'https://etherscan.io',\n [ChainId.ARBITRUM]: 'https://arbiscan.io',\n [ChainId.MATIC]: 'https://polygonscan.com',\n [ChainId.BSC]: 'https://bscscan.com',\n [ChainId.BSC_TESTNET]: 'https://testnet.bscscan.com',\n [ChainId.TLOS]: 'https://www.teloscan.io',\n [ChainId.INEVM]: 'https://explorer.inevm.com',\n [ChainId.SEPOLIA]: 'https://sepolia.etherscan.io',\n [ChainId.LINEA]: 'https://lineascan.build',\n [ChainId.LIGHTLINK]: 'https://phoenix.lightlink.io',\n [ChainId.IOTA]: 'https://explorer.evm.iota.org',\n [ChainId.IOTA_TESTNET]: 'https://explorer.evm.testnet.iotaledger.net/',\n [ChainId.BASE]: 'https://basescan.org',\n [ChainId.GRAPHLINQ]: 'https://graphlinq.dex.guru',\n [ChainId.AVAX]: 'https://snowscan.xyz',\n [ChainId.BLAST]: 'https://blastscan.io',\n [ChainId.CROSSFI]: 'https://xfiscan.com',\n [ChainId.MONAD_TESTNET]: 'https://testnet.monadexplorer.com/',\n [ChainId.SONIC]: 'https://sonicscan.org',\n [ChainId.BERACHAIN]: 'https://berascan.com',\n [ChainId.KATANA]: 'https://explorer.katanarpc.com',\n [ChainId.UNICHAIN]: 'https://uniscan.xyz',\n}\n"],"names":["MONAD","SONIC"],"mappings":"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"}
1
+ {"version":3,"file":"chains.js","sources":["../../../src/config/constants/chains.ts"],"sourcesContent":["// Network chain ids\nimport React from 'react'\nimport { SvgProps } from '../../components/uikit-sdk/Svg/types'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport BNB from '../../components/uikit-sdk/Svg/tokens/BNB'\nimport POLYGON from '../../components/uikit-sdk/Svg/tokens/POLYGON'\nimport ETH from '../../components/uikit-sdk/Svg/tokens/ETH'\nimport TLOS from '../../components/uikit-sdk/Svg/tokens/TLOS'\nimport ARBITRUM from '../../components/uikit-sdk/Svg/tokens/ARBITRUM'\nimport INEVM from '../../components/uikit-sdk/Svg/tokens/INEVM'\nimport LINEA from '../../components/uikit-sdk/Svg/tokens/LINEA'\nimport LIGHTLINK from '../../components/uikit-sdk/Svg/tokens/LIGHTLINK'\nimport IOTA from '../../components/uikit-sdk/Svg/tokens/IOTA'\nimport BASE from '../../components/uikit-sdk/Svg/tokens/BASE'\nimport GRAPHLINQ from '../../components/uikit-sdk/Svg/tokens/GraphLinq'\nimport AVAX from '../../components/uikit-sdk/Svg/tokens/AVAX'\nimport BLAST from '../../components/uikit-sdk/Svg/tokens/BLAST'\nimport CROSSFI from '../../components/uikit-sdk/Svg/tokens/CROSSFI'\nimport MONAD from '../../components/uikit-sdk/Svg/tokens/MONAD'\nimport SONIC from '../../components/uikit-sdk/Svg/tokens/SONIC'\nimport BERA from '../../components/uikit-sdk/Svg/tokens/BERA'\nimport KATANA from '../../components/uikit-sdk/Svg/tokens/KATANA'\nimport UNICHAIN from '../../components/uikit-sdk/Svg/tokens/UNICHAIN'\nimport Question from '../../components/uikit-sdk/Svg/Icons/Question'\nimport ROBINHOOD from '../../components/uikit-sdk/Svg/tokens/ROBINHOOD'\n\n// These are the lists we will display to the user\nexport const MAINNET_CHAINS = [\n ChainId.ROBINHOOD,\n ChainId.MAINNET,\n ChainId.BSC,\n ChainId.MATIC,\n ChainId.BASE,\n ChainId.IOTA,\n ChainId.LINEA,\n ChainId.ARBITRUM,\n ChainId.LIGHTLINK,\n ChainId.GRAPHLINQ,\n ChainId.AVAX,\n ChainId.BLAST,\n ChainId.CROSSFI,\n ChainId.SONIC,\n ChainId.MONAD_TESTNET,\n ChainId.BERACHAIN,\n ChainId.KATANA,\n ChainId.UNICHAIN,\n]\n\nexport const TESTNET_CHAINS = [ChainId.MONAD_TESTNET]\n\n// Network Icons\nexport const NETWORK_ICONS: Partial<Record<number, React.ComponentType<SvgProps>>> = {\n [ChainId.BSC]: BNB,\n [ChainId.MATIC]: POLYGON,\n [ChainId.MAINNET]: ETH,\n [ChainId.TLOS]: TLOS,\n [ChainId.ARBITRUM]: ARBITRUM,\n [ChainId.INEVM]: INEVM,\n [ChainId.SEPOLIA]: ETH,\n [ChainId.LINEA]: LINEA,\n [ChainId.LIGHTLINK]: LIGHTLINK,\n [ChainId.IOTA]: IOTA,\n [ChainId.BASE]: BASE,\n [ChainId.GRAPHLINQ]: GRAPHLINQ,\n [ChainId.AVAX]: AVAX,\n [ChainId.BLAST]: BLAST,\n [ChainId.CROSSFI]: CROSSFI,\n [ChainId.MONAD_TESTNET]: MONAD,\n [ChainId.SONIC]: SONIC,\n [ChainId.BERACHAIN]: BERA,\n [ChainId.KATANA]: KATANA,\n [ChainId.UNICHAIN]: UNICHAIN,\n [ChainId.ROBINHOOD]: ROBINHOOD,\n}\n\n// Falls back to a generic question-mark icon for chains without a configured logo\nexport const getChainIcon = (chain?: number): React.ComponentType<SvgProps> =>\n (chain !== undefined && NETWORK_ICONS[chain]) || Question\n\n// Network labels\nexport const NETWORK_LABEL: Record<number, string> = {\n [ChainId.BSC]: 'BNB',\n [ChainId.BSC_TESTNET]: 'BNB Testnet',\n [ChainId.MATIC]: 'Polygon',\n [ChainId.MAINNET]: 'Ethereum',\n [ChainId.TLOS]: 'Telos',\n [ChainId.ARBITRUM]: 'Arbitrum',\n [ChainId.INEVM]: 'inEVM',\n [ChainId.SEPOLIA]: 'Sepolia',\n [ChainId.LINEA]: 'Linea',\n [ChainId.LIGHTLINK]: 'Lightlink',\n [ChainId.IOTA]: 'Iota',\n [ChainId.IOTA_TESTNET]: 'Iota Testnet',\n [ChainId.BASE]: 'Base',\n [ChainId.GRAPHLINQ]: 'GraphLinq',\n [ChainId.AVAX]: 'Avalanche',\n [ChainId.BLAST]: 'Blast',\n [ChainId.CROSSFI]: 'Crossfi',\n [ChainId.MONAD_TESTNET]: 'Monad Testnet',\n [ChainId.SONIC]: 'Sonic',\n [ChainId.BERACHAIN]: 'Berachain',\n [ChainId.KATANA]: 'Katana',\n [ChainId.UNICHAIN]: 'Unichain',\n [ChainId.ROBINHOOD]: 'Robinhood',\n}\n\n// Network block explorers\nexport const BLOCK_EXPLORER: Record<number, string> = {\n [ChainId.MAINNET]: 'https://etherscan.io',\n [ChainId.ARBITRUM]: 'https://arbiscan.io',\n [ChainId.MATIC]: 'https://polygonscan.com',\n [ChainId.BSC]: 'https://bscscan.com',\n [ChainId.BSC_TESTNET]: 'https://testnet.bscscan.com',\n [ChainId.TLOS]: 'https://www.teloscan.io',\n [ChainId.INEVM]: 'https://explorer.inevm.com',\n [ChainId.SEPOLIA]: 'https://sepolia.etherscan.io',\n [ChainId.LINEA]: 'https://lineascan.build',\n [ChainId.LIGHTLINK]: 'https://phoenix.lightlink.io',\n [ChainId.IOTA]: 'https://explorer.evm.iota.org',\n [ChainId.IOTA_TESTNET]: 'https://explorer.evm.testnet.iotaledger.net/',\n [ChainId.BASE]: 'https://basescan.org',\n [ChainId.GRAPHLINQ]: 'https://graphlinq.dex.guru',\n [ChainId.AVAX]: 'https://snowscan.xyz',\n [ChainId.BLAST]: 'https://blastscan.io',\n [ChainId.CROSSFI]: 'https://xfiscan.com',\n [ChainId.MONAD_TESTNET]: 'https://testnet.monadexplorer.com/',\n [ChainId.SONIC]: 'https://sonicscan.org',\n [ChainId.BERACHAIN]: 'https://berascan.com',\n [ChainId.KATANA]: 'https://explorer.katanarpc.com',\n [ChainId.UNICHAIN]: 'https://uniscan.xyz',\n [ChainId.ROBINHOOD]: 'https://robinhoodchain.blockscout.com',\n}\n"],"names":["MONAD","SONIC"],"mappings":"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"}
@@ -56,6 +56,7 @@ const PUBLIC_RPC_URLS = {
56
56
  [ChainId.UNICHAIN]: ['https://unichain-rpc.publicnode.com', 'https://unichain.drpc.org'],
57
57
  [ChainId.MEGAETH_TESTNET]: ['https://carrot.megaeth.com/rpc'],
58
58
  [ChainId.HYPEREVM]: ['https://rpc.hyperliquid.xyz/evm'],
59
+ [ChainId.ROBINHOOD]: ['https://rpc.mainnet.chain.robinhood.com'],
59
60
  };
60
61
  // Custom RPC registry — set by the consumer via the `customRPCS` prop
61
62
  let _customRPCS = {};
@@ -1 +1 @@
1
- {"version":3,"file":"networks.js","sources":["../../../src/config/constants/networks.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\n\nexport const PUBLIC_RPC_URLS: Partial<Record<ChainId, string[]>> = {\n [ChainId.BSC]: [\n 'https://bsc-dataseed.binance.org/',\n 'https://bsc-dataseed1.defibit.io',\n 'https://endpoints.omniatech.io/v1/bsc/mainnet/public',\n ],\n [ChainId.ARBITRUM]: ['https://arb1.arbitrum.io/rpc'],\n [ChainId.BSC_TESTNET]: ['https://data-seed-prebsc-2-s3.binance.org:8545/'],\n [ChainId.MATIC]: [\n 'https://polygon.drpc.org',\n 'https://1rpc.io/matic',\n 'https://polygon-rpc.com/', // this is now freemium\n 'https://polygon-mainnet.public.blastapi.io/',\n 'https://rpc-mainnet.matic.network',\n 'https://matic-mainnet.chainstacklabs.com',\n ],\n [ChainId.MAINNET]: [\n 'https://ethereum-rpc.publicnode.com',\n 'https://eth.drpc.org',\n 'https://eth-mainnet.public.blastapi.io',\n 'https://rpc.ankr.com/eth',\n ],\n [ChainId.TLOS]: ['https://mainnet.telos.net/evm'],\n [ChainId.INEVM]: ['https://mainnet.rpc.inevm.com/http'],\n [ChainId.SEPOLIA]: ['https://eth-sepolia-public.unifra.io'],\n [ChainId.LINEA]: [\n 'https://rpc.linea.build',\n 'https://linea.drpc.org',\n 'https://linea.blockpi.network/v1/rpc/public',\n 'https://linea.decubate.com',\n ],\n [ChainId.LIGHTLINK]: [\n 'https://replicator.phoenix.lightlink.io/rpc/v1',\n 'https://endpoints.omniatech.io/v1/lightlink/phoenix/public',\n ],\n [ChainId.IOTA]: ['https://json-rpc.evm.iotaledger.net/'],\n [ChainId.IOTA_TESTNET]: ['https://json-rpc.evm.testnet.iotaledger.net/'],\n [ChainId.BASE]: ['https://base-rpc.publicnode.com', 'https://mainnet.base.org'],\n [ChainId.GRAPHLINQ]: ['https://glq-dataseed.graphlinq.io'],\n [ChainId.AVAX]: ['https://avalanche-c-chain-rpc.publicnode.com', 'https://avax.meowrpc.com'],\n [ChainId.BLAST]: ['https://rpc.blast.io'],\n [ChainId.CROSSFI]: ['https://rpc.mainnet.ms'],\n [ChainId.MONAD_TESTNET]: ['https://testnet-rpc2.monad.xyz/52227f026fa8fac9e2014c58fbf5643369b3bfc6'],\n [ChainId.MONAD]: [\n 'https://rpc.monad.xyz',\n 'https://rpc1.monad.xyz',\n 'https://rpc2.monad.xyz',\n 'https://rpc3.monad.xyz',\n 'https://rpc4.monad.xyz',\n ],\n [ChainId.SONIC]: ['https://rpc.soniclabs.com'],\n [ChainId.BERACHAIN]: ['https://rpc.berachain.com', 'https://berachain.drpc.org'],\n [ChainId.KATANA]: ['https://rpc-katana.t.conduit.xyz/NRcSLqEG4Hw55GzTSu6Sratq94kKtUGfH'],\n [ChainId.UNICHAIN]: ['https://unichain-rpc.publicnode.com', 'https://unichain.drpc.org'],\n [ChainId.MEGAETH_TESTNET]: ['https://carrot.megaeth.com/rpc'],\n [ChainId.HYPEREVM]: ['https://rpc.hyperliquid.xyz/evm'],\n}\n\n// Custom RPC registry — set by the consumer via the `customRPCS` prop\nlet _customRPCS: Partial<Record<ChainId, string[]>> = {}\n\nexport const setCustomRPCS = (urls: Partial<Record<ChainId, string[]>>) => {\n _customRPCS = urls\n}\n\nexport const getRPC = (chain: ChainId): string => {\n return _customRPCS?.[chain]?.[0] ?? (PUBLIC_RPC_URLS?.[chain]?.[0] as string)\n}\n"],"names":[],"mappings":";;AAEO,MAAM,eAAe,GAAuC;AACjE,IAAA,CAAC,OAAO,CAAC,GAAG,GAAG;QACb,mCAAmC;QACnC,kCAAkC;QAClC,sDAAsD;AACvD,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,8BAA8B,CAAC;AACpD,IAAA,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,iDAAiD,CAAC;AAC1E,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG;QACf,0BAA0B;QAC1B,uBAAuB;AACvB,QAAA,0BAA0B;QAC1B,6CAA6C;QAC7C,mCAAmC;QACnC,0CAA0C;AAC3C,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG;QACjB,qCAAqC;QACrC,sBAAsB;QACtB,wCAAwC;QACxC,0BAA0B;AAC3B,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,+BAA+B,CAAC;AACjD,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,oCAAoC,CAAC;AACvD,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,sCAAsC,CAAC;AAC3D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG;QACf,yBAAyB;QACzB,wBAAwB;QACxB,6CAA6C;QAC7C,4BAA4B;AAC7B,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG;QACnB,gDAAgD;QAChD,4DAA4D;AAC7D,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,sCAAsC,CAAC;AACxD,IAAA,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,8CAA8C,CAAC;IACxE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,iCAAiC,EAAE,0BAA0B,CAAC;AAC/E,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,mCAAmC,CAAC;IAC1D,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,8CAA8C,EAAE,0BAA0B,CAAC;AAC5F,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,sBAAsB,CAAC;AACzC,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,wBAAwB,CAAC;AAC7C,IAAA,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,yEAAyE,CAAC;AACpG,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG;QACf,uBAAuB;QACvB,wBAAwB;QACxB,wBAAwB;QACxB,wBAAwB;QACxB,wBAAwB;AACzB,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,2BAA2B,CAAC;IAC9C,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;AAChF,IAAA,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,oEAAoE,CAAC;IACxF,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,qCAAqC,EAAE,2BAA2B,CAAC;AACxF,IAAA,CAAC,OAAO,CAAC,eAAe,GAAG,CAAC,gCAAgC,CAAC;AAC7D,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,iCAAiC,CAAC;;AAGzD;AACA,IAAI,WAAW,GAAuC,EAAE;AAEjD,MAAM,aAAa,GAAG,CAAC,IAAwC,KAAI;IACxE,WAAW,GAAG,IAAI;AACpB;AAEO,MAAM,MAAM,GAAG,CAAC,KAAc,KAAY;AAC/C,IAAA,OAAO,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAK,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,CAAY;AAC/E;;;;"}
1
+ {"version":3,"file":"networks.js","sources":["../../../src/config/constants/networks.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\n\nexport const PUBLIC_RPC_URLS: Partial<Record<ChainId, string[]>> = {\n [ChainId.BSC]: [\n 'https://bsc-dataseed.binance.org/',\n 'https://bsc-dataseed1.defibit.io',\n 'https://endpoints.omniatech.io/v1/bsc/mainnet/public',\n ],\n [ChainId.ARBITRUM]: ['https://arb1.arbitrum.io/rpc'],\n [ChainId.BSC_TESTNET]: ['https://data-seed-prebsc-2-s3.binance.org:8545/'],\n [ChainId.MATIC]: [\n 'https://polygon.drpc.org',\n 'https://1rpc.io/matic',\n 'https://polygon-rpc.com/', // this is now freemium\n 'https://polygon-mainnet.public.blastapi.io/',\n 'https://rpc-mainnet.matic.network',\n 'https://matic-mainnet.chainstacklabs.com',\n ],\n [ChainId.MAINNET]: [\n 'https://ethereum-rpc.publicnode.com',\n 'https://eth.drpc.org',\n 'https://eth-mainnet.public.blastapi.io',\n 'https://rpc.ankr.com/eth',\n ],\n [ChainId.TLOS]: ['https://mainnet.telos.net/evm'],\n [ChainId.INEVM]: ['https://mainnet.rpc.inevm.com/http'],\n [ChainId.SEPOLIA]: ['https://eth-sepolia-public.unifra.io'],\n [ChainId.LINEA]: [\n 'https://rpc.linea.build',\n 'https://linea.drpc.org',\n 'https://linea.blockpi.network/v1/rpc/public',\n 'https://linea.decubate.com',\n ],\n [ChainId.LIGHTLINK]: [\n 'https://replicator.phoenix.lightlink.io/rpc/v1',\n 'https://endpoints.omniatech.io/v1/lightlink/phoenix/public',\n ],\n [ChainId.IOTA]: ['https://json-rpc.evm.iotaledger.net/'],\n [ChainId.IOTA_TESTNET]: ['https://json-rpc.evm.testnet.iotaledger.net/'],\n [ChainId.BASE]: ['https://base-rpc.publicnode.com', 'https://mainnet.base.org'],\n [ChainId.GRAPHLINQ]: ['https://glq-dataseed.graphlinq.io'],\n [ChainId.AVAX]: ['https://avalanche-c-chain-rpc.publicnode.com', 'https://avax.meowrpc.com'],\n [ChainId.BLAST]: ['https://rpc.blast.io'],\n [ChainId.CROSSFI]: ['https://rpc.mainnet.ms'],\n [ChainId.MONAD_TESTNET]: ['https://testnet-rpc2.monad.xyz/52227f026fa8fac9e2014c58fbf5643369b3bfc6'],\n [ChainId.MONAD]: [\n 'https://rpc.monad.xyz',\n 'https://rpc1.monad.xyz',\n 'https://rpc2.monad.xyz',\n 'https://rpc3.monad.xyz',\n 'https://rpc4.monad.xyz',\n ],\n [ChainId.SONIC]: ['https://rpc.soniclabs.com'],\n [ChainId.BERACHAIN]: ['https://rpc.berachain.com', 'https://berachain.drpc.org'],\n [ChainId.KATANA]: ['https://rpc-katana.t.conduit.xyz/NRcSLqEG4Hw55GzTSu6Sratq94kKtUGfH'],\n [ChainId.UNICHAIN]: ['https://unichain-rpc.publicnode.com', 'https://unichain.drpc.org'],\n [ChainId.MEGAETH_TESTNET]: ['https://carrot.megaeth.com/rpc'],\n [ChainId.HYPEREVM]: ['https://rpc.hyperliquid.xyz/evm'],\n [ChainId.ROBINHOOD]: ['https://rpc.mainnet.chain.robinhood.com'],\n}\n\n// Custom RPC registry — set by the consumer via the `customRPCS` prop\nlet _customRPCS: Partial<Record<ChainId, string[]>> = {}\n\nexport const setCustomRPCS = (urls: Partial<Record<ChainId, string[]>>) => {\n _customRPCS = urls\n}\n\nexport const getRPC = (chain: ChainId): string => {\n return _customRPCS?.[chain]?.[0] ?? (PUBLIC_RPC_URLS?.[chain]?.[0] as string)\n}\n"],"names":[],"mappings":";;AAEO,MAAM,eAAe,GAAuC;AACjE,IAAA,CAAC,OAAO,CAAC,GAAG,GAAG;QACb,mCAAmC;QACnC,kCAAkC;QAClC,sDAAsD;AACvD,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,8BAA8B,CAAC;AACpD,IAAA,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,iDAAiD,CAAC;AAC1E,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG;QACf,0BAA0B;QAC1B,uBAAuB;AACvB,QAAA,0BAA0B;QAC1B,6CAA6C;QAC7C,mCAAmC;QACnC,0CAA0C;AAC3C,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG;QACjB,qCAAqC;QACrC,sBAAsB;QACtB,wCAAwC;QACxC,0BAA0B;AAC3B,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,+BAA+B,CAAC;AACjD,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,oCAAoC,CAAC;AACvD,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,sCAAsC,CAAC;AAC3D,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG;QACf,yBAAyB;QACzB,wBAAwB;QACxB,6CAA6C;QAC7C,4BAA4B;AAC7B,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG;QACnB,gDAAgD;QAChD,4DAA4D;AAC7D,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,sCAAsC,CAAC;AACxD,IAAA,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,8CAA8C,CAAC;IACxE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,iCAAiC,EAAE,0BAA0B,CAAC;AAC/E,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,mCAAmC,CAAC;IAC1D,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,8CAA8C,EAAE,0BAA0B,CAAC;AAC5F,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,sBAAsB,CAAC;AACzC,IAAA,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,wBAAwB,CAAC;AAC7C,IAAA,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,yEAAyE,CAAC;AACpG,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG;QACf,uBAAuB;QACvB,wBAAwB;QACxB,wBAAwB;QACxB,wBAAwB;QACxB,wBAAwB;AACzB,KAAA;AACD,IAAA,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,2BAA2B,CAAC;IAC9C,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;AAChF,IAAA,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,oEAAoE,CAAC;IACxF,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,qCAAqC,EAAE,2BAA2B,CAAC;AACxF,IAAA,CAAC,OAAO,CAAC,eAAe,GAAG,CAAC,gCAAgC,CAAC;AAC7D,IAAA,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,iCAAiC,CAAC;AACvD,IAAA,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,yCAAyC,CAAC;;AAGlE;AACA,IAAI,WAAW,GAAuC,EAAE;AAEjD,MAAM,aAAa,GAAG,CAAC,IAAwC,KAAI;IACxE,WAAW,GAAG,IAAI;AACpB;AAEO,MAAM,MAAM,GAAG,CAAC,KAAc,KAAY;AAC/C,IAAA,OAAO,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAK,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,CAAY;AAC/E;;;;"}
@@ -121,6 +121,16 @@ const WNATIVE = {
121
121
  },
122
122
  active: true,
123
123
  },
124
+ [ChainId.ROBINHOOD]: {
125
+ symbol: 'wETH',
126
+ address: {
127
+ [ChainId.ROBINHOOD]: '0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73',
128
+ },
129
+ decimals: {
130
+ [ChainId.ROBINHOOD]: 18,
131
+ },
132
+ active: true,
133
+ },
124
134
  };
125
135
  const zapInputTokens = {
126
136
  [ChainId.MAINNET]: [
@@ -246,17 +256,6 @@ const zapInputTokens = {
246
256
  },
247
257
  active: true,
248
258
  },
249
- // WMATIC or WPOL on BNB chain has been commented out up until we have clarity regarding the migration
250
- // {
251
- // symbol: 'wPOL',
252
- // address: {
253
- // [ChainId.BSC]: '0xCC42724C6683B7E57334c4E856f4c9965ED682bD',
254
- // },
255
- // decimals: {
256
- // [ChainId.BSC]: 18,
257
- // },
258
- // active: true,
259
- // },
260
259
  {
261
260
  symbol: 'AVAX',
262
261
  address: {
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sources":["../../../src/config/constants/tokens.ts"],"sourcesContent":["import { Token, ChainId } from '@ape.swap/apeswap-lists'\n\nexport const WNATIVE: Partial<Record<ChainId, Token>> = {\n [ChainId.MAINNET]: {\n symbol: 'wETH',\n address: {\n [ChainId.MAINNET]: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',\n },\n decimals: {\n [ChainId.MAINNET]: 18,\n },\n active: true,\n },\n [ChainId.BSC]: {\n symbol: 'wBNB',\n address: {\n [ChainId.BSC]: '0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n [ChainId.MATIC]: {\n symbol: 'wPOL',\n address: {\n [ChainId.MATIC]: '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n [ChainId.ARBITRUM]: {\n symbol: 'wETH',\n address: {\n [ChainId.ARBITRUM]: '0x82aF49447D8a07e3bd95BD0d56f35241523fBab1',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n [ChainId.LINEA]: {\n symbol: 'wETH',\n address: {\n [ChainId.LINEA]: '0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f',\n },\n decimals: {\n [ChainId.LINEA]: 18,\n },\n active: true,\n },\n [ChainId.BASE]: {\n symbol: 'wETH',\n address: {\n [ChainId.BASE]: '0x4200000000000000000000000000000000000006',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n [ChainId.IOTA]: {\n symbol: 'wIOTA',\n address: {\n [ChainId.IOTA]: '0x6e47f8d48a01b44DF3fFF35d258A10A3AEdC114c',\n },\n decimals: {\n [ChainId.IOTA]: 18,\n },\n active: true,\n },\n [ChainId.GRAPHLINQ]: {\n symbol: 'wGLQ',\n address: {\n [ChainId.GRAPHLINQ]: '0xEB567ec41738c2bAb2599A1070FC5B727721b3B6',\n },\n decimals: {\n [ChainId.GRAPHLINQ]: 18,\n },\n active: true,\n },\n [ChainId.BLAST]: {\n symbol: 'wETH',\n address: {\n [ChainId.BLAST]: '0x4300000000000000000000000000000000000004',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n [ChainId.MONAD_TESTNET]: {\n symbol: 'wMONAD',\n address: {\n [ChainId.MONAD_TESTNET]: '0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701',\n },\n decimals: {\n [ChainId.MONAD_TESTNET]: 18,\n },\n active: true,\n },\n [ChainId.SONIC]: {\n symbol: 'wS',\n address: {\n [ChainId.SONIC]: '0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38',\n },\n decimals: {\n [ChainId.SONIC]: 18,\n },\n active: true,\n },\n [ChainId.BERACHAIN]: {\n symbol: 'wBERA',\n address: {\n [ChainId.BERACHAIN]: '0x6969696969696969696969696969696969696969',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n}\n\nexport const zapInputTokens: Partial<Record<ChainId, Token[]>> = {\n [ChainId.MAINNET]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.MAINNET]: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',\n },\n decimals: {\n [ChainId.MAINNET]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.MAINNET]: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n },\n decimals: {\n [ChainId.MAINNET]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.MAINNET]: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n },\n decimals: {\n [ChainId.MAINNET]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.MAINNET]: '0x6B175474E89094C44Da98b954EedeAC495271d0F',\n },\n decimals: {\n [ChainId.MAINNET]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.MAINNET]: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599',\n },\n decimals: {\n [ChainId.MAINNET]: 8,\n },\n active: true,\n },\n ],\n [ChainId.BSC]: [\n {\n symbol: 'wBNB',\n address: {\n [ChainId.BSC]: '0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.BSC]: '0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.BSC]: '0x55d398326f99059fF775485246999027B3197955',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.BSC]: '0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'FDUSD',\n address: {\n [ChainId.BSC]: '0xc5f0f7b66764F6ec8C8Dff7BA683102295E16409',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'wETH',\n address: {\n [ChainId.BSC]: '0x2170Ed0880ac9A755fd29B2688956BD959F933F8',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BSC]: '0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n // WMATIC or WPOL on BNB chain has been commented out up until we have clarity regarding the migration\n // {\n // symbol: 'wPOL',\n // address: {\n // [ChainId.BSC]: '0xCC42724C6683B7E57334c4E856f4c9965ED682bD',\n // },\n // decimals: {\n // [ChainId.BSC]: 18,\n // },\n // active: true,\n // },\n {\n symbol: 'AVAX',\n address: {\n [ChainId.BSC]: '0x1ce0c2827e2ef14d5c4f29a091d735a204794041',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'ADA',\n address: {\n [ChainId.BSC]: '0x3ee2200efb3400fabb9aacf31297cbdd1d435d47',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n ],\n [ChainId.MATIC]: [\n {\n symbol: 'wPOL',\n address: {\n [ChainId.MATIC]: '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC.e',\n address: {\n [ChainId.MATIC]: '0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174',\n },\n decimals: {\n [ChainId.MATIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.MATIC]: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359',\n },\n decimals: {\n [ChainId.MATIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.MATIC]: '0xc2132D05D31c914a87C6611C10748AEb04B58e8F',\n },\n decimals: {\n [ChainId.MATIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.MATIC]: '0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'wETH',\n address: {\n [ChainId.MATIC]: '0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.MATIC]: '0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n ],\n [ChainId.ARBITRUM]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.ARBITRUM]: '0x82aF49447D8a07e3bd95BD0d56f35241523fBab1',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.ARBITRUM]: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831', // Circle's USDC, not USDC.e\n },\n decimals: {\n [ChainId.ARBITRUM]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.ARBITRUM]: '0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9',\n },\n decimals: {\n [ChainId.ARBITRUM]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.ARBITRUM]: '0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.ARBITRUM]: '0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f',\n },\n decimals: {\n [ChainId.ARBITRUM]: 8,\n },\n active: true,\n },\n {\n symbol: 'ARB',\n address: {\n [ChainId.ARBITRUM]: '0x912CE59144191C1204E64559FE8253a0e49E6548',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n ],\n [ChainId.LINEA]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.LINEA]: '0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f',\n },\n decimals: {\n [ChainId.LINEA]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC.e',\n address: {\n [ChainId.LINEA]: '0x176211869cA2b568f2A7D4EE941E073a821EE1ff',\n },\n decimals: {\n [ChainId.LINEA]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.LINEA]: '0xA219439258ca9da29E9Cc4cE5596924745e12B93',\n },\n decimals: {\n [ChainId.LINEA]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.LINEA]: '0x4AF15ec2A0BD43Db75dd04E62FAA3B8EF36b00d5',\n },\n decimals: {\n [ChainId.LINEA]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.LINEA]: '0x3aAB2285ddcDdaD8edf438C1bAB47e1a9D05a9b4',\n },\n decimals: {\n [ChainId.LINEA]: 8,\n },\n active: true,\n },\n // WMATIC or WPOL on Linea chain has been commented out up until we have clarity regarding the migration\n // {\n // symbol: 'wPOL',\n // address: {\n // [ChainId.LINEA]: '0x265B25e22bcd7f10a5bD6E6410F10537Cc7567e8',\n // },\n // decimals: {\n // [ChainId.LINEA]: 18,\n // },\n // active: true,\n // },\n ],\n [ChainId.BASE]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.BASE]: '0x4200000000000000000000000000000000000006',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.BASE]: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913',\n },\n decimals: {\n [ChainId.BASE]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.BASE]: '0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2',\n },\n decimals: {\n [ChainId.BASE]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.BASE]: '0x50c5725949a6f0c72e6c4a641f24049a917db0cb',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BASE]: '0x0c41F1FC9022FEB69aF6dc666aBfE73C9FFDA7ce',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n ],\n [ChainId.BLAST]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.BLAST]: '0x4300000000000000000000000000000000000004',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BLAST]: '0xF7bc58b8D8f97ADC129cfC4c9f45Ce3C0E1D2692',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDe',\n address: {\n [ChainId.BLAST]: '0x5d3a1ff2b6bab83b63cd9ad0787074081a52ef34',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n ],\n [ChainId.BERACHAIN]: [\n {\n symbol: 'HONEY',\n address: {\n [ChainId.BERACHAIN]: '0xFCBD14DC51f0A4d49d5E53C2E0950e0bC26d0Dce',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BERACHAIN]: '0x0555E30da8f98308EdB960aa94C0Db47230d2B9c',\n },\n decimals: {\n [ChainId.BERACHAIN]: 8,\n },\n active: true,\n },\n {\n symbol: 'USDe',\n address: {\n [ChainId.BERACHAIN]: '0x5d3a1ff2b6bab83b63cd9ad0787074081a52ef34',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n {\n symbol: 'WETH',\n address: {\n [ChainId.BERACHAIN]: '0x2F6F07CDcf3588944Bf4C42aC74ff24bF56e7590',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC.e',\n address: {\n [ChainId.BERACHAIN]: '0x549943e04f40284185054145c6E4e9568C1D3241',\n },\n decimals: {\n [ChainId.BERACHAIN]: 6,\n },\n active: true,\n },\n ],\n [ChainId.SONIC]: [\n {\n symbol: 'wS',\n address: {\n [ChainId.SONIC]: '0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38',\n },\n decimals: {\n [ChainId.SONIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.SONIC]: '0x29219dd400f2Bf60E5a23d13Be72B486D4038894',\n },\n decimals: {\n [ChainId.SONIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.SONIC]: '0x6047828dc181963ba44974801FF68e538dA5eaF9',\n },\n decimals: {\n [ChainId.SONIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.SONIC]: '0x0555E30da8f98308EdB960aa94C0Db47230d2B9c',\n },\n decimals: {\n [ChainId.SONIC]: 8,\n },\n active: true,\n },\n {\n symbol: 'wETH',\n address: {\n [ChainId.SONIC]: '0x50c42dEAcD8Fc9773493ED674b675bE577f2634b',\n },\n decimals: {\n [ChainId.SONIC]: 18,\n },\n active: true,\n },\n ],\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sources":["../../../src/config/constants/tokens.ts"],"sourcesContent":["import { Token, ChainId } from '@ape.swap/apeswap-lists'\n\nexport const WNATIVE: Partial<Record<ChainId, Token>> = {\n [ChainId.MAINNET]: {\n symbol: 'wETH',\n address: {\n [ChainId.MAINNET]: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',\n },\n decimals: {\n [ChainId.MAINNET]: 18,\n },\n active: true,\n },\n [ChainId.BSC]: {\n symbol: 'wBNB',\n address: {\n [ChainId.BSC]: '0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n [ChainId.MATIC]: {\n symbol: 'wPOL',\n address: {\n [ChainId.MATIC]: '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n [ChainId.ARBITRUM]: {\n symbol: 'wETH',\n address: {\n [ChainId.ARBITRUM]: '0x82aF49447D8a07e3bd95BD0d56f35241523fBab1',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n [ChainId.LINEA]: {\n symbol: 'wETH',\n address: {\n [ChainId.LINEA]: '0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f',\n },\n decimals: {\n [ChainId.LINEA]: 18,\n },\n active: true,\n },\n [ChainId.BASE]: {\n symbol: 'wETH',\n address: {\n [ChainId.BASE]: '0x4200000000000000000000000000000000000006',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n [ChainId.IOTA]: {\n symbol: 'wIOTA',\n address: {\n [ChainId.IOTA]: '0x6e47f8d48a01b44DF3fFF35d258A10A3AEdC114c',\n },\n decimals: {\n [ChainId.IOTA]: 18,\n },\n active: true,\n },\n [ChainId.GRAPHLINQ]: {\n symbol: 'wGLQ',\n address: {\n [ChainId.GRAPHLINQ]: '0xEB567ec41738c2bAb2599A1070FC5B727721b3B6',\n },\n decimals: {\n [ChainId.GRAPHLINQ]: 18,\n },\n active: true,\n },\n [ChainId.BLAST]: {\n symbol: 'wETH',\n address: {\n [ChainId.BLAST]: '0x4300000000000000000000000000000000000004',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n [ChainId.MONAD_TESTNET]: {\n symbol: 'wMONAD',\n address: {\n [ChainId.MONAD_TESTNET]: '0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701',\n },\n decimals: {\n [ChainId.MONAD_TESTNET]: 18,\n },\n active: true,\n },\n [ChainId.SONIC]: {\n symbol: 'wS',\n address: {\n [ChainId.SONIC]: '0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38',\n },\n decimals: {\n [ChainId.SONIC]: 18,\n },\n active: true,\n },\n [ChainId.BERACHAIN]: {\n symbol: 'wBERA',\n address: {\n [ChainId.BERACHAIN]: '0x6969696969696969696969696969696969696969',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n [ChainId.ROBINHOOD]: {\n symbol: 'wETH',\n address: {\n [ChainId.ROBINHOOD]: '0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73',\n },\n decimals: {\n [ChainId.ROBINHOOD]: 18,\n },\n active: true,\n },\n}\n\nexport const zapInputTokens: Partial<Record<ChainId, Token[]>> = {\n [ChainId.MAINNET]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.MAINNET]: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',\n },\n decimals: {\n [ChainId.MAINNET]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.MAINNET]: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n },\n decimals: {\n [ChainId.MAINNET]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.MAINNET]: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n },\n decimals: {\n [ChainId.MAINNET]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.MAINNET]: '0x6B175474E89094C44Da98b954EedeAC495271d0F',\n },\n decimals: {\n [ChainId.MAINNET]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.MAINNET]: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599',\n },\n decimals: {\n [ChainId.MAINNET]: 8,\n },\n active: true,\n },\n ],\n [ChainId.BSC]: [\n {\n symbol: 'wBNB',\n address: {\n [ChainId.BSC]: '0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.BSC]: '0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.BSC]: '0x55d398326f99059fF775485246999027B3197955',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.BSC]: '0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'FDUSD',\n address: {\n [ChainId.BSC]: '0xc5f0f7b66764F6ec8C8Dff7BA683102295E16409',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'wETH',\n address: {\n [ChainId.BSC]: '0x2170Ed0880ac9A755fd29B2688956BD959F933F8',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BSC]: '0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'AVAX',\n address: {\n [ChainId.BSC]: '0x1ce0c2827e2ef14d5c4f29a091d735a204794041',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n {\n symbol: 'ADA',\n address: {\n [ChainId.BSC]: '0x3ee2200efb3400fabb9aacf31297cbdd1d435d47',\n },\n decimals: {\n [ChainId.BSC]: 18,\n },\n active: true,\n },\n ],\n [ChainId.MATIC]: [\n {\n symbol: 'wPOL',\n address: {\n [ChainId.MATIC]: '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC.e',\n address: {\n [ChainId.MATIC]: '0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174',\n },\n decimals: {\n [ChainId.MATIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.MATIC]: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359',\n },\n decimals: {\n [ChainId.MATIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.MATIC]: '0xc2132D05D31c914a87C6611C10748AEb04B58e8F',\n },\n decimals: {\n [ChainId.MATIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.MATIC]: '0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'wETH',\n address: {\n [ChainId.MATIC]: '0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.MATIC]: '0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6',\n },\n decimals: {\n [ChainId.MATIC]: 18,\n },\n active: true,\n },\n ],\n [ChainId.ARBITRUM]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.ARBITRUM]: '0x82aF49447D8a07e3bd95BD0d56f35241523fBab1',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.ARBITRUM]: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831', // Circle's USDC, not USDC.e\n },\n decimals: {\n [ChainId.ARBITRUM]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.ARBITRUM]: '0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9',\n },\n decimals: {\n [ChainId.ARBITRUM]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.ARBITRUM]: '0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.ARBITRUM]: '0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f',\n },\n decimals: {\n [ChainId.ARBITRUM]: 8,\n },\n active: true,\n },\n {\n symbol: 'ARB',\n address: {\n [ChainId.ARBITRUM]: '0x912CE59144191C1204E64559FE8253a0e49E6548',\n },\n decimals: {\n [ChainId.ARBITRUM]: 18,\n },\n active: true,\n },\n ],\n [ChainId.LINEA]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.LINEA]: '0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f',\n },\n decimals: {\n [ChainId.LINEA]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC.e',\n address: {\n [ChainId.LINEA]: '0x176211869cA2b568f2A7D4EE941E073a821EE1ff',\n },\n decimals: {\n [ChainId.LINEA]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.LINEA]: '0xA219439258ca9da29E9Cc4cE5596924745e12B93',\n },\n decimals: {\n [ChainId.LINEA]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.LINEA]: '0x4AF15ec2A0BD43Db75dd04E62FAA3B8EF36b00d5',\n },\n decimals: {\n [ChainId.LINEA]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.LINEA]: '0x3aAB2285ddcDdaD8edf438C1bAB47e1a9D05a9b4',\n },\n decimals: {\n [ChainId.LINEA]: 8,\n },\n active: true,\n },\n // WMATIC or WPOL on Linea chain has been commented out up until we have clarity regarding the migration\n // {\n // symbol: 'wPOL',\n // address: {\n // [ChainId.LINEA]: '0x265B25e22bcd7f10a5bD6E6410F10537Cc7567e8',\n // },\n // decimals: {\n // [ChainId.LINEA]: 18,\n // },\n // active: true,\n // },\n ],\n [ChainId.BASE]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.BASE]: '0x4200000000000000000000000000000000000006',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.BASE]: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913',\n },\n decimals: {\n [ChainId.BASE]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.BASE]: '0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2',\n },\n decimals: {\n [ChainId.BASE]: 6,\n },\n active: true,\n },\n {\n symbol: 'DAI',\n address: {\n [ChainId.BASE]: '0x50c5725949a6f0c72e6c4a641f24049a917db0cb',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BASE]: '0x0c41F1FC9022FEB69aF6dc666aBfE73C9FFDA7ce',\n },\n decimals: {\n [ChainId.BASE]: 18,\n },\n active: true,\n },\n ],\n [ChainId.BLAST]: [\n {\n symbol: 'wETH',\n address: {\n [ChainId.BLAST]: '0x4300000000000000000000000000000000000004',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BLAST]: '0xF7bc58b8D8f97ADC129cfC4c9f45Ce3C0E1D2692',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDe',\n address: {\n [ChainId.BLAST]: '0x5d3a1ff2b6bab83b63cd9ad0787074081a52ef34',\n },\n decimals: {\n [ChainId.BLAST]: 18,\n },\n active: true,\n },\n ],\n [ChainId.BERACHAIN]: [\n {\n symbol: 'HONEY',\n address: {\n [ChainId.BERACHAIN]: '0xFCBD14DC51f0A4d49d5E53C2E0950e0bC26d0Dce',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.BERACHAIN]: '0x0555E30da8f98308EdB960aa94C0Db47230d2B9c',\n },\n decimals: {\n [ChainId.BERACHAIN]: 8,\n },\n active: true,\n },\n {\n symbol: 'USDe',\n address: {\n [ChainId.BERACHAIN]: '0x5d3a1ff2b6bab83b63cd9ad0787074081a52ef34',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n {\n symbol: 'WETH',\n address: {\n [ChainId.BERACHAIN]: '0x2F6F07CDcf3588944Bf4C42aC74ff24bF56e7590',\n },\n decimals: {\n [ChainId.BERACHAIN]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC.e',\n address: {\n [ChainId.BERACHAIN]: '0x549943e04f40284185054145c6E4e9568C1D3241',\n },\n decimals: {\n [ChainId.BERACHAIN]: 6,\n },\n active: true,\n },\n ],\n [ChainId.SONIC]: [\n {\n symbol: 'wS',\n address: {\n [ChainId.SONIC]: '0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38',\n },\n decimals: {\n [ChainId.SONIC]: 18,\n },\n active: true,\n },\n {\n symbol: 'USDC',\n address: {\n [ChainId.SONIC]: '0x29219dd400f2Bf60E5a23d13Be72B486D4038894',\n },\n decimals: {\n [ChainId.SONIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'USDT',\n address: {\n [ChainId.SONIC]: '0x6047828dc181963ba44974801FF68e538dA5eaF9',\n },\n decimals: {\n [ChainId.SONIC]: 6,\n },\n active: true,\n },\n {\n symbol: 'BTC',\n address: {\n [ChainId.SONIC]: '0x0555E30da8f98308EdB960aa94C0Db47230d2B9c',\n },\n decimals: {\n [ChainId.SONIC]: 8,\n },\n active: true,\n },\n {\n symbol: 'wETH',\n address: {\n [ChainId.SONIC]: '0x50c42dEAcD8Fc9773493ED674b675bE577f2634b',\n },\n decimals: {\n [ChainId.SONIC]: 18,\n },\n active: true,\n },\n ],\n}\n"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ const supportedByLIFI = [
12
12
  ChainId.SONIC,
13
13
  ChainId.BERACHAIN,
14
14
  ChainId.UNICHAIN,
15
+ ChainId.ROBINHOOD,
15
16
  ];
16
17
  const STRAPI_URL = `https://strapi-api.ape.bond`;
17
18
  const SOUL_ZAP_API = `https://zap-api.ape.bond/zap?batch=1`;
@@ -1 +1 @@
1
- {"version":3,"file":"variables.js","sources":["../../../src/config/constants/variables.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\nexport const supportedByLIFI = [\n ChainId.MAINNET,\n ChainId.MATIC,\n ChainId.BSC,\n ChainId.ARBITRUM,\n ChainId.LINEA,\n ChainId.BASE,\n ChainId.AVAX,\n ChainId.BLAST,\n ChainId.SONIC,\n ChainId.BERACHAIN,\n ChainId.UNICHAIN,\n]\n\nexport const STRAPI_URL = `https://strapi-api.ape.bond`\nexport const SOUL_ZAP_API = `https://zap-api.ape.bond/zap?batch=1`\nexport const APEBOND = `https://ape.bond`\n"],"names":[],"mappings":";;AACO,MAAM,eAAe,GAAG;AAC7B,IAAA,OAAO,CAAC,OAAO;AACf,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,GAAG;AACX,IAAA,OAAO,CAAC,QAAQ;AAChB,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,IAAI;AACZ,IAAA,OAAO,CAAC,IAAI;AACZ,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,SAAS;AACjB,IAAA,OAAO,CAAC,QAAQ;;AAGX,MAAM,UAAU,GAAG;AACnB,MAAM,YAAY,GAAG;AACrB,MAAM,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"variables.js","sources":["../../../src/config/constants/variables.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\nexport const supportedByLIFI = [\n ChainId.MAINNET,\n ChainId.MATIC,\n ChainId.BSC,\n ChainId.ARBITRUM,\n ChainId.LINEA,\n ChainId.BASE,\n ChainId.AVAX,\n ChainId.BLAST,\n ChainId.SONIC,\n ChainId.BERACHAIN,\n ChainId.UNICHAIN,\n ChainId.ROBINHOOD,\n]\n\nexport const STRAPI_URL = `https://strapi-api.ape.bond`\nexport const SOUL_ZAP_API = `https://zap-api.ape.bond/zap?batch=1`\nexport const APEBOND = `https://ape.bond`\n"],"names":[],"mappings":";;AACO,MAAM,eAAe,GAAG;AAC7B,IAAA,OAAO,CAAC,OAAO;AACf,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,GAAG;AACX,IAAA,OAAO,CAAC,QAAQ;AAChB,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,IAAI;AACZ,IAAA,OAAO,CAAC,IAAI;AACZ,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,KAAK;AACb,IAAA,OAAO,CAAC,SAAS;AACjB,IAAA,OAAO,CAAC,QAAQ;AAChB,IAAA,OAAO,CAAC,SAAS;;AAGZ,MAAM,UAAU,GAAG;AACnB,MAAM,YAAY,GAAG;AACrB,MAAM,OAAO,GAAG;;;;"}
@@ -1,4 +1,4 @@
1
- import { useQueryClient, useQuery } from '@tanstack/react-query';
1
+ import { useQuery } from '@tanstack/react-query';
2
2
  import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
3
3
  import axios from 'axios';
4
4
  import useTokenPrices from '../tokenPrices/useTokenPrices.js';
@@ -12,10 +12,9 @@ function useBondsData() {
12
12
  const { data: preTGEList } = usePreTGEList();
13
13
  const { data: tokenPrices } = useTokenPrices();
14
14
  const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length;
15
- const queryClient = useQueryClient();
16
15
  return useQuery({
17
16
  queryKey: [QUERY_KEYS.BONDS_DATA],
18
- queryFn: () => calculateBondsData(queryClient),
17
+ queryFn: ({ client }) => calculateBondsData(client),
19
18
  refetchInterval: 25000, // i.e. 25 sec
20
19
  enabled: !!bondList && !!preTGEList && !!tokenPricesKey,
21
20
  refetchOnWindowFocus: true,
@@ -50,6 +49,7 @@ const calculateBondsData = async (queryClient) => {
50
49
  return acc;
51
50
  }, {});
52
51
  try {
52
+ throw new Error('asd');
53
53
  // First, we try to fetch from realtime API
54
54
  const realTimeApiResponse = await axios.get(`${realTimeApiUrl}/bonds`);
55
55
  return realTimeApiResponse.data.bonds.filter((bond) => chains.includes(bond.chainId));
@@ -1 +1 @@
1
- {"version":3,"file":"useBondsData.js","sources":["../../../src/state/bonds/useBondsData.ts"],"sourcesContent":["import { QueryClient, useQuery, useQueryClient, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BondsData } from '../../types/bonds'\nimport axios from 'axios'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useBondsList from './useBondsList'\nimport { BillsConfig, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { ACF_TO_ABOND } from '../../config/constants/addresses'\nimport { fetchBondsData, fetchBondsDataPreTGE } from './utils'\nimport usePreTGEList from '../preTGEBonds/usePreTGEList'\n\nexport default function useBondsData(): UseQueryResult<BondsData[]> {\n const { data: bondList } = useBondsList()\n const { data: preTGEList } = usePreTGEList()\n const { data: tokenPrices } = useTokenPrices()\n const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length\n const queryClient = useQueryClient()\n\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_DATA],\n queryFn: () => calculateBondsData(queryClient),\n refetchInterval: 25000, // i.e. 25 sec\n enabled: !!bondList && !!preTGEList && !!tokenPricesKey,\n refetchOnWindowFocus: true,\n refetchOnMount: false,\n refetchOnReconnect: true,\n retry: 0,\n staleTime: 25000, // i.e. 25 sec\n })\n}\n\nexport const calculateBondsData = async (queryClient: QueryClient): Promise<BondsData[]> => {\n console.log('calculateBondsData')\n // Fetch state from queryClient\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiUrl = urls['realTimeApi']\n const apiUrl = urls['apiV2']\n const priceApiUrl = urls['priceApi']\n const bondList: BillsConfig[] = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as BillsConfig[]\n const preTGEList: PreTGEConfig[] = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST_PRE_TGE]) as PreTGEConfig[]\n const tokenPrices: Partial<Record<ChainId, TokenPrices[]>> | undefined = queryClient?.getQueryData([\n QUERY_KEYS.TOKEN_PRICES,\n ])\n if (!tokenPrices) return []\n const reducedBonds = bondList?.reduce<Record<number, BillsConfig[]>>((acc, bill) => {\n const chainId = bill.chainId\n if (!acc[chainId]) {\n acc[chainId] = []\n }\n if (bill.contractAddress?.[chainId]?.toLowerCase() !== ACF_TO_ABOND.toLowerCase() && !bill.soldOut) {\n acc[chainId].push(bill)\n }\n return acc\n }, {})\n try {\n // First, we try to fetch from realtime API\n const realTimeApiResponse = await axios.get(`${realTimeApiUrl}/bonds`)\n return realTimeApiResponse.data.bonds.filter((bond: BondsData) => chains.includes(bond.chainId))\n } catch {\n // If realtime fails, we trigger the fallback strategy on the client\n if (bondList) {\n console.time('Fallback BondsData')\n const billData = await Promise.all([\n ...chains.map(async (chainId: ChainId) => {\n if (!reducedBonds[chainId]) return []\n return (\n (await fetchBondsData(chainId, reducedBonds[chainId], apiUrl, tokenPrices?.[chainId], priceApiUrl)) ?? []\n )\n }),\n ...chains.map(async (chainId: ChainId) => {\n const filteredBonds = preTGEList?.filter((bond) => bond.chainId === chainId) ?? []\n return await fetchBondsDataPreTGE(chainId, tokenPrices, filteredBonds, apiUrl)\n }),\n ])\n console.timeEnd('Fallback BondsData')\n return billData.flat()\n }\n return []\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBondsData.js","sources":["../../../src/state/bonds/useBondsData.ts"],"sourcesContent":["import { QueryClient, useQuery, useQueryClient, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BondsData } from '../../types/bonds'\nimport axios from 'axios'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useBondsList from './useBondsList'\nimport { BillsConfig, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { ACF_TO_ABOND } from '../../config/constants/addresses'\nimport { fetchBondsData, fetchBondsDataPreTGE } from './utils'\nimport usePreTGEList from '../preTGEBonds/usePreTGEList'\n\nexport default function useBondsData(): UseQueryResult<BondsData[]> {\n const { data: bondList } = useBondsList()\n const { data: preTGEList } = usePreTGEList()\n const { data: tokenPrices } = useTokenPrices()\n const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length\n\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_DATA],\n queryFn: ({ client }) => calculateBondsData(client),\n refetchInterval: 25000, // i.e. 25 sec\n enabled: !!bondList && !!preTGEList && !!tokenPricesKey,\n refetchOnWindowFocus: true,\n refetchOnMount: false,\n refetchOnReconnect: true,\n retry: 0,\n staleTime: 25000, // i.e. 25 sec\n })\n}\n\nexport const calculateBondsData = async (queryClient: QueryClient): Promise<BondsData[]> => {\n console.log('calculateBondsData')\n // Fetch state from queryClient\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiUrl = urls['realTimeApi']\n const apiUrl = urls['apiV2']\n const priceApiUrl = urls['priceApi']\n const bondList: BillsConfig[] = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as BillsConfig[]\n const preTGEList: PreTGEConfig[] = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST_PRE_TGE]) as PreTGEConfig[]\n const tokenPrices: Partial<Record<ChainId, TokenPrices[]>> | undefined = queryClient?.getQueryData([\n QUERY_KEYS.TOKEN_PRICES,\n ])\n if (!tokenPrices) return []\n const reducedBonds = bondList?.reduce<Record<number, BillsConfig[]>>((acc, bill) => {\n const chainId = bill.chainId\n if (!acc[chainId]) {\n acc[chainId] = []\n }\n if (bill.contractAddress?.[chainId]?.toLowerCase() !== ACF_TO_ABOND.toLowerCase() && !bill.soldOut) {\n acc[chainId].push(bill)\n }\n return acc\n }, {})\n try {\n throw new Error('asd')\n // First, we try to fetch from realtime API\n const realTimeApiResponse = await axios.get(`${realTimeApiUrl}/bonds`)\n return realTimeApiResponse.data.bonds.filter((bond: BondsData) => chains.includes(bond.chainId))\n } catch {\n // If realtime fails, we trigger the fallback strategy on the client\n if (bondList) {\n console.time('Fallback BondsData')\n const billData = await Promise.all([\n ...chains.map(async (chainId: ChainId) => {\n if (!reducedBonds[chainId]) return []\n return (\n (await fetchBondsData(chainId, reducedBonds[chainId], apiUrl, tokenPrices?.[chainId], priceApiUrl)) ?? []\n )\n }),\n ...chains.map(async (chainId: ChainId) => {\n const filteredBonds = preTGEList?.filter((bond) => bond.chainId === chainId) ?? []\n return await fetchBondsDataPreTGE(chainId, tokenPrices, filteredBonds, apiUrl)\n }),\n ])\n console.timeEnd('Fallback BondsData')\n return billData.flat()\n }\n return []\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
1
+ import { QueryClient, UseQueryResult } from '@tanstack/react-query';
2
2
  import { BillsConfig } from '@ape.swap/apeswap-lists';
3
3
  export default function useBondsList(): UseQueryResult<BillsConfig[]>;
4
- export declare const getBondsList: (realTimeapiURL: string, apiUrl: string) => Promise<BillsConfig[]>;
4
+ export declare const getBondsList: (queryClient: QueryClient) => Promise<BillsConfig[]>;
@@ -1,33 +1,21 @@
1
1
  import { useQuery } from '@tanstack/react-query';
2
2
  import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
3
3
  import axios from 'axios';
4
- import { useURLByEnvironment } from '../useSDKConfig.js';
5
- import { reportError } from '../../utils/reportError.js';
6
4
 
7
5
  function useBondsList() {
8
- const realTime = useURLByEnvironment('realTimeApi');
9
- const apiUrl = useURLByEnvironment('apiV2');
10
6
  return useQuery({
11
7
  queryKey: [QUERY_KEYS.BONDS_LIST],
12
- queryFn: () => getBondsList(realTime, apiUrl),
8
+ queryFn: ({ client }) => getBondsList(client),
13
9
  staleTime: Infinity,
14
10
  refetchInterval: 300000, // 5 min
15
11
  refetchOnWindowFocus: false,
16
12
  });
17
13
  }
18
- const getBondsList = async (realTimeapiURL, apiUrl) => {
19
- try {
20
- const response = await axios.get(`${realTimeapiURL}/utils/bonds`);
21
- return response.data;
22
- }
23
- catch (e) {
24
- reportError({
25
- apiUrl,
26
- error: e,
27
- extraInfo: { type: 'getBondsList', e },
28
- });
29
- return [];
30
- }
14
+ const getBondsList = async (queryClient) => {
15
+ const { urls, customBranch } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]);
16
+ const realTimeApiURL = urls['realTimeApi'];
17
+ const response = await axios.get(`${realTimeApiURL}/utils/bonds${customBranch ? `?branch=${customBranch}` : ''}`);
18
+ return response.data;
31
19
  };
32
20
 
33
21
  export { useBondsList as default, getBondsList };
@@ -1 +1 @@
1
- {"version":3,"file":"useBondsList.js","sources":["../../../src/state/bonds/useBondsList.ts"],"sourcesContent":["import { useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport axios from 'axios'\nimport { BillsConfig } from '@ape.swap/apeswap-lists'\nimport { useURLByEnvironment } from '../useSDKConfig'\nimport { reportError } from '../../utils/reportError'\n\nexport default function useBondsList(): UseQueryResult<BillsConfig[]> {\n const realTime = useURLByEnvironment('realTimeApi')\n const apiUrl = useURLByEnvironment('apiV2')\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_LIST],\n queryFn: () => getBondsList(realTime, apiUrl),\n staleTime: Infinity,\n refetchInterval: 300000, // 5 min\n refetchOnWindowFocus: false,\n })\n}\n\nexport const getBondsList = async (realTimeapiURL: string, apiUrl: string): Promise<BillsConfig[]> => {\n try {\n const response = await axios.get(`${realTimeapiURL}/utils/bonds`)\n return response.data\n } catch (e) {\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getBondsList', e },\n })\n return []\n }\n}\n"],"names":[],"mappings":";;;;;;AAOc,SAAU,YAAY,GAAA;AAClC,IAAA,MAAM,QAAQ,GAAG,mBAAmB,CAAC,aAAa,CAAC;AACnD,IAAA,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC;AAC3C,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC;AAC7C,QAAA,SAAS,EAAE,QAAQ;QACnB,eAAe,EAAE,MAAM;AACvB,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AACJ;AAEO,MAAM,YAAY,GAAG,OAAO,cAAsB,EAAE,MAAc,KAA4B;AACnG,IAAA,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA,EAAG,cAAc,CAAA,YAAA,CAAc,CAAC;QACjE,OAAO,QAAQ,CAAC,IAAI;IACtB;IAAE,OAAO,CAAC,EAAE;AACV,QAAA,WAAW,CAAC;YACV,MAAM;AACN,YAAA,KAAK,EAAE,CAAC;AACR,YAAA,SAAS,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;AACvC,SAAA,CAAC;AACF,QAAA,OAAO,EAAE;IACX;AACF;;;;"}
1
+ {"version":3,"file":"useBondsList.js","sources":["../../../src/state/bonds/useBondsList.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport axios from 'axios'\nimport { BillsConfig } from '@ape.swap/apeswap-lists'\nimport { SDKProps } from '../useSDKConfig'\n\nexport default function useBondsList(): UseQueryResult<BillsConfig[]> {\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_LIST],\n queryFn: ({ client }) => getBondsList(client),\n staleTime: Infinity,\n refetchInterval: 300000, // 5 min\n refetchOnWindowFocus: false,\n })\n}\n\nexport const getBondsList = async (queryClient: QueryClient): Promise<BillsConfig[]> => {\n const { urls, customBranch } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiURL = urls['realTimeApi']\n const response = await axios.get(`${realTimeApiURL}/utils/bonds${customBranch ? `?branch=${customBranch}` : ''}`)\n return response.data\n}\n"],"names":[],"mappings":";;;;AAMc,SAAU,YAAY,GAAA;AAClC,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,MAAM,CAAC;AAC7C,QAAA,SAAS,EAAE,QAAQ;QACnB,eAAe,EAAE,MAAM;AACvB,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AACJ;MAEa,YAAY,GAAG,OAAO,WAAwB,KAA4B;AACrF,IAAA,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAa;AAC7F,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA,EAAG,cAAc,CAAA,YAAA,EAAe,YAAY,GAAG,CAAA,QAAA,EAAW,YAAY,CAAA,CAAE,GAAG,EAAE,CAAA,CAAE,CAAC;IACjH,OAAO,QAAQ,CAAC,IAAI;AACtB;;;;"}
@@ -111,8 +111,6 @@ const fetchBondsDataPreTGE = async (chain, tokenPrices, preTGEBonds, apiUrl) =>
111
111
  }
112
112
  };
113
113
  const fetchBondsData = async (chainId, bills, apiUrl, tokenPrices, priceApiUrl) => {
114
- if (!tokenPrices)
115
- return [];
116
114
  try {
117
115
  const billIds = [];
118
116
  const billCalls = bills.flatMap((bill) => {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/state/bonds/utils.ts"],"sourcesContent":["import { BondsData, TrueBondPrices } from '../../types/bonds'\nimport { getBalanceNumber } from '../../utils/getBalanceNumber'\nimport { BillsConfig, BillVersion, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport multicall from '../../utils/multicall'\nimport launchBondsABI_V2_4_1 from '../../config/abi/launchBond_v2_4_1.json'\nimport BOND_2_4_0 from '../../config/abi/BOND_2_4_0.json'\nimport ERC20ABI from '../../config/abi/erc20.json'\nimport { reportError } from '../../utils/reportError'\nimport BigNumber from 'bignumber.js'\nimport axios from 'axios'\nimport { TIER_MAPPING } from '../tiers/useTierPoints'\nimport { chunk } from 'lodash'\n\nexport const fetchBondsDataPreTGE = async (\n chain: number,\n tokenPrices: Partial<Record<ChainId, TokenPrices[]>>,\n preTGEBonds: PreTGEConfig[],\n apiUrl?: string,\n): Promise<BondsData[]> => {\n try {\n if (!preTGEBonds?.length) return []\n const data = []\n const chainId = chain as ChainId\n\n const preTGEBondsIds: number[] = []\n const launchBondsCalls = preTGEBonds.flatMap((bond) => {\n preTGEBondsIds.push(bond.index)\n const bill = bond\n return [\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'trueBillPrice',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'terms',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'totalPrincipalBilled',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'finalized',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'minPoints',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'maxPoints',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'startVestingTimestamp',\n },\n ]\n })\n const vals = await multicall(chainId, launchBondsABI_V2_4_1, launchBondsCalls)\n const chunkSize = vals.length / preTGEBonds.length\n const chunkedBills = chunk(vals, chunkSize)\n const returnedBills = chunkedBills?.map((chunk: any, index) => {\n const bondConfig = preTGEBonds?.find((bill) => bill?.index === preTGEBondsIds[index])!\n\n const [trueBillPrice, terms, totalPrincipalBilled, finalized, minPoints, maxPoints, startVestingTimestamp] = chunk\n const [, , vestingTerm, , , initialRelease, totalRaise, maxTotalPayout] = terms\n\n const initPrice = getBalanceNumber(\n trueBillPrice,\n bondConfig?.lpToken?.decimals?.[bondConfig?.chainId as ChainId] ?? 18,\n )\n\n const lpPrice =\n tokenPrices?.[bondConfig?.chainId]?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() ===\n bondConfig?.lpToken?.address?.[bondConfig?.chainId]?.toLowerCase(),\n )?.price ?? 0\n const earnTokenPrice =\n tokenPrices?.[bondConfig?.chainId]?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() ===\n bondConfig?.earnToken?.address?.[bondConfig?.chainId]?.toLowerCase(),\n )?.price ?? 0\n\n const principalTokenPrice = lpPrice?.toString() ?? '0'\n const payoutTokenPrice = earnTokenPrice ? earnTokenPrice?.toString() : initPrice?.toString()\n\n const bonus = Math.round((bondConfig.tgePrice! / initPrice) * 100 - 100)\n\n const data: BondsData = {\n ...bondConfig,\n initialRelease: initialRelease / 10000,\n vestingTerm: parseInt(vestingTerm),\n trueBondPrices: [\n {\n points: '0',\n boost: 0,\n trueBondPrice: trueBillPrice?.toString(),\n bonus,\n bonusWithFee: bonus, // placeholder, wont be used\n discount: bonus, // placeholder, wont be used\n discountWithFee: bonus, // placeholder, wont be used\n },\n ],\n maxTotalPayout: maxTotalPayout?.toString(),\n totalPrincipalBilled: totalPrincipalBilled?.toString(),\n payoutTokenPrice,\n principalTokenPrice,\n totalRaise: totalRaise?.toString(),\n finalized: finalized[0],\n minPoints: minPoints.toString(),\n maxPoints: maxPoints.toString(),\n startVestingTimestamp: startVestingTimestamp?.toString(),\n initTime: { [bondConfig.chainId]: parseInt(terms[1]) },\n finishTime: parseInt(terms[0]),\n initPrice,\n soldOut: finalized[0] || (parseInt(terms[0]) ?? 0) < Date.now() / 1000 || bondConfig.soldOut,\n }\n return data\n })\n data.push(returnedBills)\n return data.flat()\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getLaunchBondsPublicData', preTGEBonds, chain, e },\n })\n return []\n }\n}\n\nexport const fetchBondsData = async (\n chainId: number,\n bills: BillsConfig[],\n apiUrl: string,\n tokenPrices?: TokenPrices[],\n priceApiUrl?: string,\n) => {\n if (!tokenPrices) return []\n try {\n const billIds: number[] = []\n const billCalls = bills.flatMap((bill) => {\n billIds.push(bill.index)\n return [\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: bill.billVersion === BillVersion.V4 ? 'trueBondPrices' : 'trueBillPrice()',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'totalPayoutGiven',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'terms',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: bill.billVersion !== BillVersion.V1 ? 'getMaxTotalPayout' : 'maxTotalPayout',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'feeInPayout',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'feeInPrincipal',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'paused',\n },\n // keep custom treasury at the very last position\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'customTreasury',\n },\n ]\n })\n const vals = await multicall(chainId, BOND_2_4_0, billCalls)\n\n // The following lines basically grab the values from customTreasury returned from bills contract and then,\n // appends the treasury contract's balance to the chunk that will be passed to cleanBillsData\n\n // appendIndex value assumes customTreasury will be at the end of the billCalls array\n const appendIndex = billCalls.length / bills.length\n const treasuryAddresses = vals\n .filter((_: any, i: number) => (i % appendIndex) + 1 === appendIndex)\n .map((customTreasury: string[]) => customTreasury[0])\n const treasuryBalanceCalls = treasuryAddresses.map((treasuryAddress: string, i: number) => ({\n address: bills?.[i]?.earnToken?.address?.[chainId as ChainId] ?? '',\n name: 'balanceOf',\n params: [treasuryAddress],\n }))\n const treasuryBalances = await multicall(chainId, ERC20ABI, treasuryBalanceCalls)\n const updatedVals = vals.reduce((acc: any, val: any, index: number) => {\n acc.push(val)\n if ((index + 1) % appendIndex === 0) {\n const pos = (index + 1) / appendIndex\n acc.push(treasuryBalances[pos - 1])\n }\n return acc\n }, [])\n\n //\n const chunkSize = updatedVals?.length / bills?.length\n const chunkedBills = chunk(updatedVals, chunkSize)\n\n return await cleanBillsData(billIds, chunkedBills, chainId, bills, tokenPrices, priceApiUrl)\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getBondsData', e },\n })\n return []\n }\n}\n\nconst cleanBillsData = async (\n billIds: number[],\n chunkedBills: any[],\n chainId: ChainId,\n bills: BillsConfig[],\n tokenPrices?: TokenPrices[],\n priceApiUrl?: string,\n): Promise<BondsData[]> => {\n const data: BondsData[] = await Promise.all(\n chunkedBills?.map(async (chunk, index) => {\n const bill = bills?.find((bill) => bill?.index === billIds[index]) as BillsConfig\n\n let principalTokenPrice = tokenPrices?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() === bill?.lpToken?.address?.[bill?.chainId]?.toLowerCase() &&\n tokenPrice?.chainId === chainId,\n )\n\n if (principalTokenPrice === undefined || !!principalTokenPrice.error) {\n try {\n // Missing token price, therefor make a single call to api to fetch it\n const res = await axios.get(\n `${priceApiUrl}/realtime/price?token=${bill?.lpToken?.address?.[bill?.chainId]}&chain=${bill?.chainId}`,\n )\n console.log('Individual call for: ', bill.lpToken.symbol, '. Price: ', res.data.price)\n principalTokenPrice = res.data\n } catch {\n console.error('Failed to fetch price for: ', bill.lpToken.symbol)\n }\n }\n\n let payoutTokenPrice = tokenPrices?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() === bill?.earnToken?.address?.[bill?.chainId]?.toLowerCase() &&\n tokenPrice?.chainId === chainId,\n )\n\n if (payoutTokenPrice === undefined || !!payoutTokenPrice.error) {\n try {\n // Missing token price, therefor make a single call to api to fetch it\n const res = await axios.get(\n `${priceApiUrl}/realtime/price?token=${bill?.earnToken?.address?.[bill?.chainId]}&chain=${bill?.chainId}`,\n )\n console.log('Individual call for: ', bill.earnToken.symbol, '. Price: ', res.data.price)\n payoutTokenPrice = res.data\n } catch {\n console.error('Failed to fetch price for: ', bill.earnToken.symbol)\n }\n }\n const lpPrice = principalTokenPrice?.price ?? 0\n const earnTokenPrice = payoutTokenPrice?.price ?? 0\n\n const [\n trueBillPriceFromChunk,\n totalPayoutGiven,\n terms,\n maxTotalPayout,\n feeInPayoutRaw,\n feeInPrincipalRaw,\n paused,\n ,\n customTreasuryBalance,\n ] = chunk\n const trueBillPrice = trueBillPriceFromChunk\n\n const feeInPayout = Number(feeInPayoutRaw / 10000)\n const feeInPrincipal = Number(feeInPrincipalRaw / 10000)\n const [, vestingTerm, , maxPayout] = terms\n const tokensRemaining = new BigNumber(maxTotalPayout ?? '0')\n .minus(new BigNumber(totalPayoutGiven))\n .div(new BigNumber(10).pow(bill?.earnToken.decimals[bill?.chainId] ?? 18))\n .toNumber()\n const treasuryBalance = getBalanceNumber(customTreasuryBalance, bill?.earnToken?.decimals?.[bill?.chainId] ?? 18)\n\n let trueBondPrices: TrueBondPrices[] = []\n if (bill?.billVersion === BillVersion.V4) {\n trueBondPrices = trueBillPrice[0].map((data: any) => {\n return {\n points: data?.points?.toString(),\n trueBondPrice: data?.trueBondPrice.toString(),\n bonus: getRawBonus(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n bonusWithFee: getBonusWithFee(feeInPayout, data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n discount: getRawDiscount(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n discountWithFee: getDiscountWithFee(feeInPayout, data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n boost: TIER_MAPPING[data?.points?.toString() as keyof typeof TIER_MAPPING],\n }\n })\n } else {\n const bonus = getRawBonus(trueBillPrice, lpPrice, earnTokenPrice)\n const bonusWithFee = getBonusWithFee(feeInPayout, trueBillPrice, lpPrice, earnTokenPrice)\n const discount = getRawDiscount(trueBillPrice, lpPrice, earnTokenPrice)\n const discountWithFee = getDiscountWithFee(feeInPayout, trueBillPrice, lpPrice, earnTokenPrice)\n trueBondPrices = [\n {\n points: '0',\n boost: 0,\n trueBondPrice: trueBillPrice.toString(),\n bonus,\n bonusWithFee,\n discount,\n discountWithFee,\n },\n ]\n }\n const cleanedData: BondsData = {\n ...bill,\n soldOut: paused[0] ? true : bill.soldOut,\n feeInPayout,\n feeInPrincipal,\n showcaseTokenName: bill?.showcaseToken?.symbol ?? bill?.earnToken.symbol ?? '',\n trueBondPrices,\n principalTokenPrice: lpPrice?.toString(),\n payoutTokenPrice: earnTokenPrice?.toString(),\n tokensRemaining: treasuryBalance\n ? Math.min(treasuryBalance, tokensRemaining).toString()\n : tokensRemaining.toString(),\n maxTotalPayout: maxTotalPayout?.toString(),\n maxPayout: maxPayout?.toString(),\n totalPayoutGiven: totalPayoutGiven?.toString(),\n vestingTerm: typeof vestingTerm === 'number' ? vestingTerm : parseInt(vestingTerm),\n }\n return cleanedData\n }),\n )\n return data\n}\n\nexport const getBonusWithFee = (\n feeInPayout: number,\n trueBillPrice: string,\n lpPrice: number,\n earnTokenPrice: number,\n) => {\n const fee = feeInPayout ?? 0\n const reverseFee = new BigNumber(fee / 100 / (1 - fee / 100))\n const trueBondPrice = new BigNumber(trueBillPrice).plus(new BigNumber(trueBillPrice).times(reverseFee))\n const priceUSDMinusFee = getBalanceNumber(trueBondPrice) * lpPrice\n const discountWithoutFee = ((earnTokenPrice - priceUSDMinusFee) / earnTokenPrice) * 100\n return discountWithoutFee > 0 ? (discountWithoutFee / (100 - discountWithoutFee)) * 100 : 0\n}\n\nconst getRawBonus = (trueBillPrice: any, lpPrice: number, earnTokenPrice: number) => {\n const priceUsd = getBalanceNumber(trueBillPrice.toString()) * lpPrice\n const discount: number = ((earnTokenPrice - priceUsd) / earnTokenPrice) * 100\n return discount > 0 ? (discount / (100 - discount)) * 100 : 0\n}\n\nconst getRawDiscount = (trueBillPrice: any, lpPrice: number, earnTokenPrice: number) => {\n const trueBondPrice = getBalanceNumber(trueBillPrice.toString())\n\n return ((earnTokenPrice - lpPrice * trueBondPrice) / earnTokenPrice) * 100\n}\n\nconst getDiscountWithFee = (feeInPayout: number, trueBillPrice: any, lpPrice: number, earnTokenPrice: number) => {\n const trueBondPrice = getBalanceNumber(trueBillPrice.toString())\n const trueBondPriceWithFee = trueBondPrice * (1 / ((100 - (feeInPayout ?? 0)) / 100))\n\n return ((earnTokenPrice - lpPrice * trueBondPriceWithFee) / earnTokenPrice) * 100\n}\n"],"names":["launchBondsABI_V2_4_1","BOND_2_4_0","ERC20ABI"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/state/bonds/utils.ts"],"sourcesContent":["import { BondsData, TrueBondPrices } from '../../types/bonds'\nimport { getBalanceNumber } from '../../utils/getBalanceNumber'\nimport { BillsConfig, BillVersion, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport multicall from '../../utils/multicall'\nimport launchBondsABI_V2_4_1 from '../../config/abi/launchBond_v2_4_1.json'\nimport BOND_2_4_0 from '../../config/abi/BOND_2_4_0.json'\nimport ERC20ABI from '../../config/abi/erc20.json'\nimport { reportError } from '../../utils/reportError'\nimport BigNumber from 'bignumber.js'\nimport axios from 'axios'\nimport { TIER_MAPPING } from '../tiers/useTierPoints'\nimport { chunk } from 'lodash'\n\nexport const fetchBondsDataPreTGE = async (\n chain: number,\n tokenPrices: Partial<Record<ChainId, TokenPrices[]>>,\n preTGEBonds: PreTGEConfig[],\n apiUrl?: string,\n): Promise<BondsData[]> => {\n try {\n if (!preTGEBonds?.length) return []\n const data = []\n const chainId = chain as ChainId\n\n const preTGEBondsIds: number[] = []\n const launchBondsCalls = preTGEBonds.flatMap((bond) => {\n preTGEBondsIds.push(bond.index)\n const bill = bond\n return [\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'trueBillPrice',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'terms',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'totalPrincipalBilled',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'finalized',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'minPoints',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'maxPoints',\n },\n {\n address: bill.contractAddress[bill.chainId] as string,\n name: 'startVestingTimestamp',\n },\n ]\n })\n const vals = await multicall(chainId, launchBondsABI_V2_4_1, launchBondsCalls)\n const chunkSize = vals.length / preTGEBonds.length\n const chunkedBills = chunk(vals, chunkSize)\n const returnedBills = chunkedBills?.map((chunk: any, index) => {\n const bondConfig = preTGEBonds?.find((bill) => bill?.index === preTGEBondsIds[index])!\n\n const [trueBillPrice, terms, totalPrincipalBilled, finalized, minPoints, maxPoints, startVestingTimestamp] = chunk\n const [, , vestingTerm, , , initialRelease, totalRaise, maxTotalPayout] = terms\n\n const initPrice = getBalanceNumber(\n trueBillPrice,\n bondConfig?.lpToken?.decimals?.[bondConfig?.chainId as ChainId] ?? 18,\n )\n\n const lpPrice =\n tokenPrices?.[bondConfig?.chainId]?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() ===\n bondConfig?.lpToken?.address?.[bondConfig?.chainId]?.toLowerCase(),\n )?.price ?? 0\n const earnTokenPrice =\n tokenPrices?.[bondConfig?.chainId]?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() ===\n bondConfig?.earnToken?.address?.[bondConfig?.chainId]?.toLowerCase(),\n )?.price ?? 0\n\n const principalTokenPrice = lpPrice?.toString() ?? '0'\n const payoutTokenPrice = earnTokenPrice ? earnTokenPrice?.toString() : initPrice?.toString()\n\n const bonus = Math.round((bondConfig.tgePrice! / initPrice) * 100 - 100)\n\n const data: BondsData = {\n ...bondConfig,\n initialRelease: initialRelease / 10000,\n vestingTerm: parseInt(vestingTerm),\n trueBondPrices: [\n {\n points: '0',\n boost: 0,\n trueBondPrice: trueBillPrice?.toString(),\n bonus,\n bonusWithFee: bonus, // placeholder, wont be used\n discount: bonus, // placeholder, wont be used\n discountWithFee: bonus, // placeholder, wont be used\n },\n ],\n maxTotalPayout: maxTotalPayout?.toString(),\n totalPrincipalBilled: totalPrincipalBilled?.toString(),\n payoutTokenPrice,\n principalTokenPrice,\n totalRaise: totalRaise?.toString(),\n finalized: finalized[0],\n minPoints: minPoints.toString(),\n maxPoints: maxPoints.toString(),\n startVestingTimestamp: startVestingTimestamp?.toString(),\n initTime: { [bondConfig.chainId]: parseInt(terms[1]) },\n finishTime: parseInt(terms[0]),\n initPrice,\n soldOut: finalized[0] || (parseInt(terms[0]) ?? 0) < Date.now() / 1000 || bondConfig.soldOut,\n }\n return data\n })\n data.push(returnedBills)\n return data.flat()\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getLaunchBondsPublicData', preTGEBonds, chain, e },\n })\n return []\n }\n}\n\nexport const fetchBondsData = async (\n chainId: number,\n bills: BillsConfig[],\n apiUrl: string,\n tokenPrices?: TokenPrices[],\n priceApiUrl?: string,\n) => {\n try {\n const billIds: number[] = []\n const billCalls = bills.flatMap((bill) => {\n billIds.push(bill.index)\n return [\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: bill.billVersion === BillVersion.V4 ? 'trueBondPrices' : 'trueBillPrice()',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'totalPayoutGiven',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'terms',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: bill.billVersion !== BillVersion.V1 ? 'getMaxTotalPayout' : 'maxTotalPayout',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'feeInPayout',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'feeInPrincipal',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'paused',\n },\n // keep custom treasury at the very last position\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'customTreasury',\n },\n ]\n })\n const vals = await multicall(chainId, BOND_2_4_0, billCalls)\n\n // The following lines basically grab the values from customTreasury returned from bills contract and then,\n // appends the treasury contract's balance to the chunk that will be passed to cleanBillsData\n\n // appendIndex value assumes customTreasury will be at the end of the billCalls array\n const appendIndex = billCalls.length / bills.length\n const treasuryAddresses = vals\n .filter((_: any, i: number) => (i % appendIndex) + 1 === appendIndex)\n .map((customTreasury: string[]) => customTreasury[0])\n const treasuryBalanceCalls = treasuryAddresses.map((treasuryAddress: string, i: number) => ({\n address: bills?.[i]?.earnToken?.address?.[chainId as ChainId] ?? '',\n name: 'balanceOf',\n params: [treasuryAddress],\n }))\n const treasuryBalances = await multicall(chainId, ERC20ABI, treasuryBalanceCalls)\n const updatedVals = vals.reduce((acc: any, val: any, index: number) => {\n acc.push(val)\n if ((index + 1) % appendIndex === 0) {\n const pos = (index + 1) / appendIndex\n acc.push(treasuryBalances[pos - 1])\n }\n return acc\n }, [])\n\n //\n const chunkSize = updatedVals?.length / bills?.length\n const chunkedBills = chunk(updatedVals, chunkSize)\n\n return await cleanBillsData(billIds, chunkedBills, chainId, bills, tokenPrices, priceApiUrl)\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getBondsData', e },\n })\n return []\n }\n}\n\nconst cleanBillsData = async (\n billIds: number[],\n chunkedBills: any[],\n chainId: ChainId,\n bills: BillsConfig[],\n tokenPrices?: TokenPrices[],\n priceApiUrl?: string,\n): Promise<BondsData[]> => {\n const data: BondsData[] = await Promise.all(\n chunkedBills?.map(async (chunk, index) => {\n const bill = bills?.find((bill) => bill?.index === billIds[index]) as BillsConfig\n\n let principalTokenPrice = tokenPrices?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() === bill?.lpToken?.address?.[bill?.chainId]?.toLowerCase() &&\n tokenPrice?.chainId === chainId,\n )\n\n if (principalTokenPrice === undefined || !!principalTokenPrice.error) {\n try {\n // Missing token price, therefor make a single call to api to fetch it\n const res = await axios.get(\n `${priceApiUrl}/realtime/price?token=${bill?.lpToken?.address?.[bill?.chainId]}&chain=${bill?.chainId}`,\n )\n console.log('Individual call for: ', bill.lpToken.symbol, '. Price: ', res.data.price)\n principalTokenPrice = res.data\n } catch {\n console.error('Failed to fetch price for: ', bill.lpToken.symbol)\n }\n }\n\n let payoutTokenPrice = tokenPrices?.find(\n (tokenPrice) =>\n tokenPrice?.tokenAddress?.toLowerCase() === bill?.earnToken?.address?.[bill?.chainId]?.toLowerCase() &&\n tokenPrice?.chainId === chainId,\n )\n\n if (payoutTokenPrice === undefined || !!payoutTokenPrice.error) {\n try {\n // Missing token price, therefor make a single call to api to fetch it\n const res = await axios.get(\n `${priceApiUrl}/realtime/price?token=${bill?.earnToken?.address?.[bill?.chainId]}&chain=${bill?.chainId}`,\n )\n console.log('Individual call for: ', bill.earnToken.symbol, '. Price: ', res.data.price)\n payoutTokenPrice = res.data\n } catch {\n console.error('Failed to fetch price for: ', bill.earnToken.symbol)\n }\n }\n const lpPrice = principalTokenPrice?.price ?? 0\n const earnTokenPrice = payoutTokenPrice?.price ?? 0\n\n const [\n trueBillPriceFromChunk,\n totalPayoutGiven,\n terms,\n maxTotalPayout,\n feeInPayoutRaw,\n feeInPrincipalRaw,\n paused,\n ,\n customTreasuryBalance,\n ] = chunk\n const trueBillPrice = trueBillPriceFromChunk\n\n const feeInPayout = Number(feeInPayoutRaw / 10000)\n const feeInPrincipal = Number(feeInPrincipalRaw / 10000)\n const [, vestingTerm, , maxPayout] = terms\n const tokensRemaining = new BigNumber(maxTotalPayout ?? '0')\n .minus(new BigNumber(totalPayoutGiven))\n .div(new BigNumber(10).pow(bill?.earnToken.decimals[bill?.chainId] ?? 18))\n .toNumber()\n const treasuryBalance = getBalanceNumber(customTreasuryBalance, bill?.earnToken?.decimals?.[bill?.chainId] ?? 18)\n\n let trueBondPrices: TrueBondPrices[] = []\n if (bill?.billVersion === BillVersion.V4) {\n trueBondPrices = trueBillPrice[0].map((data: any) => {\n return {\n points: data?.points?.toString(),\n trueBondPrice: data?.trueBondPrice.toString(),\n bonus: getRawBonus(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n bonusWithFee: getBonusWithFee(feeInPayout, data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n discount: getRawDiscount(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n discountWithFee: getDiscountWithFee(feeInPayout, data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n boost: TIER_MAPPING[data?.points?.toString() as keyof typeof TIER_MAPPING],\n }\n })\n } else {\n const bonus = getRawBonus(trueBillPrice, lpPrice, earnTokenPrice)\n const bonusWithFee = getBonusWithFee(feeInPayout, trueBillPrice, lpPrice, earnTokenPrice)\n const discount = getRawDiscount(trueBillPrice, lpPrice, earnTokenPrice)\n const discountWithFee = getDiscountWithFee(feeInPayout, trueBillPrice, lpPrice, earnTokenPrice)\n trueBondPrices = [\n {\n points: '0',\n boost: 0,\n trueBondPrice: trueBillPrice.toString(),\n bonus,\n bonusWithFee,\n discount,\n discountWithFee,\n },\n ]\n }\n const cleanedData: BondsData = {\n ...bill,\n soldOut: paused[0] ? true : bill.soldOut,\n feeInPayout,\n feeInPrincipal,\n showcaseTokenName: bill?.showcaseToken?.symbol ?? bill?.earnToken.symbol ?? '',\n trueBondPrices,\n principalTokenPrice: lpPrice?.toString(),\n payoutTokenPrice: earnTokenPrice?.toString(),\n tokensRemaining: treasuryBalance\n ? Math.min(treasuryBalance, tokensRemaining).toString()\n : tokensRemaining.toString(),\n maxTotalPayout: maxTotalPayout?.toString(),\n maxPayout: maxPayout?.toString(),\n totalPayoutGiven: totalPayoutGiven?.toString(),\n vestingTerm: typeof vestingTerm === 'number' ? vestingTerm : parseInt(vestingTerm),\n }\n return cleanedData\n }),\n )\n return data\n}\n\nexport const getBonusWithFee = (\n feeInPayout: number,\n trueBillPrice: string,\n lpPrice: number,\n earnTokenPrice: number,\n) => {\n const fee = feeInPayout ?? 0\n const reverseFee = new BigNumber(fee / 100 / (1 - fee / 100))\n const trueBondPrice = new BigNumber(trueBillPrice).plus(new BigNumber(trueBillPrice).times(reverseFee))\n const priceUSDMinusFee = getBalanceNumber(trueBondPrice) * lpPrice\n const discountWithoutFee = ((earnTokenPrice - priceUSDMinusFee) / earnTokenPrice) * 100\n return discountWithoutFee > 0 ? (discountWithoutFee / (100 - discountWithoutFee)) * 100 : 0\n}\n\nconst getRawBonus = (trueBillPrice: any, lpPrice: number, earnTokenPrice: number) => {\n const priceUsd = getBalanceNumber(trueBillPrice.toString()) * lpPrice\n const discount: number = ((earnTokenPrice - priceUsd) / earnTokenPrice) * 100\n return discount > 0 ? (discount / (100 - discount)) * 100 : 0\n}\n\nconst getRawDiscount = (trueBillPrice: any, lpPrice: number, earnTokenPrice: number) => {\n const trueBondPrice = getBalanceNumber(trueBillPrice.toString())\n\n return ((earnTokenPrice - lpPrice * trueBondPrice) / earnTokenPrice) * 100\n}\n\nconst getDiscountWithFee = (feeInPayout: number, trueBillPrice: any, lpPrice: number, earnTokenPrice: number) => {\n const trueBondPrice = getBalanceNumber(trueBillPrice.toString())\n const trueBondPriceWithFee = trueBondPrice * (1 / ((100 - (feeInPayout ?? 0)) / 100))\n\n return ((earnTokenPrice - lpPrice * trueBondPriceWithFee) / earnTokenPrice) * 100\n}\n"],"names":["launchBondsABI_V2_4_1","BOND_2_4_0","ERC20ABI"],"mappings":"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"}
@@ -17,6 +17,7 @@ export interface SDKPropsDTO {
17
17
  highestCompatibleVersion?: string;
18
18
  customRPCS?: Partial<Record<ChainId, string[]>>;
19
19
  openWalletConnectors?: OpenWalletConnectorsDTO;
20
+ customBranch?: string;
20
21
  }
21
22
  export interface SDKProps {
22
23
  referenceId: string;
@@ -35,6 +36,7 @@ export interface SDKProps {
35
36
  openWalletConnectors: {
36
37
  evm: boolean;
37
38
  };
39
+ customBranch?: string;
38
40
  }
39
41
  export declare const useSDKConfig: (config?: SDKPropsDTO) => SDKProps;
40
42
  export type URLKeys = 'apiV2' | 'realTimeApi' | 'mainUrl' | 'priceApi';
@@ -1 +1 @@
1
- {"version":3,"file":"useSDKConfig.js","sources":["../../src/state/useSDKConfig.ts"],"sourcesContent":["import { useQuery } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../config/constants/queryKeys'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { useEffect } from 'react'\nimport { setCustomRPCS } from '../config/constants/networks'\nimport { setWalletConnectorOpener } from '../config/constants/walletConnectors'\n\n// Prod URLS. Do not make changes here\nconst defaultUrls = {\n apiV2: 'https://api.ape.bond',\n realTimeApi: 'https://realtime-api.ape.bond',\n mainUrl: 'https://ape.bond',\n priceApi: 'https://price-api.ape.bond',\n}\n\n// Staging URLS.\nconst stagingUrls = {\n apiV2: 'https://staging-api.ape.bond',\n realTimeApi: 'https://realtime-api-staging.ape.bond',\n mainUrl: 'https://staging.ape.bond',\n priceApi: 'https://price-api.ape.bond',\n}\n\nexport interface OpenWalletConnectorsDTO {\n evm?: () => void\n}\n\nexport interface SDKPropsDTO {\n referenceId: string\n chains: number[]\n hotBondChains?: number[]\n useHotBonds?: boolean\n useTiers?: boolean\n useTGEBonds?: boolean\n showLowValueBonds?: boolean\n bondPartner?: string\n namingPreference?: 'Discount' | 'Bonus'\n urls?: Partial<Record<URLKeys, string>>\n theme?: any\n highestCompatibleVersion?: string\n customRPCS?: Partial<Record<ChainId, string[]>>\n openWalletConnectors?: OpenWalletConnectorsDTO\n}\n\nexport interface SDKProps {\n referenceId: string\n chains: number[]\n hotBondChains: number[]\n useHotBonds: boolean\n useTiers: boolean\n useTGEBonds: boolean\n showLowValueBonds: boolean\n bondPartner?: string\n namingPreference: 'Discount' | 'Bonus'\n urls: Record<URLKeys, string>\n theme?: any\n highestCompatibleVersion?: string\n customRPCS?: Partial<Record<ChainId, string[]>>\n openWalletConnectors: {\n evm: boolean\n }\n}\n\nexport const useSDKConfig = (config?: SDKPropsDTO): SDKProps => {\n const urls = process.env.NODE_ENV === 'production' ? defaultUrls : stagingUrls\n\n const initialData: SDKProps = {\n referenceId: '',\n chains: [],\n hotBondChains: [ChainId.BSC, ChainId.MATIC],\n useHotBonds: true,\n useTiers: false,\n useTGEBonds: false,\n showLowValueBonds: false,\n bondPartner: undefined,\n namingPreference: 'Bonus',\n ...config,\n openWalletConnectors: {\n evm: !!config?.openWalletConnectors?.evm,\n },\n urls: { ...urls, ...config?.urls },\n highestCompatibleVersion: '2.1.3',\n }\n\n const evmConnectorOpener = config?.openWalletConnectors?.evm\n\n useEffect(() => {\n if (config?.customRPCS) {\n setCustomRPCS(config.customRPCS)\n }\n if (evmConnectorOpener) {\n console.log('set evm wallet opener')\n setWalletConnectorOpener('evm', evmConnectorOpener)\n }\n }, [config?.customRPCS, evmConnectorOpener])\n\n const { data } = useQuery({\n queryKey: [QUERY_KEYS.SDK_CONFIG],\n queryFn: () => {\n throw new Error('Just a hotfix for latest versions of react-query that make queryFn a required prop')\n },\n initialData,\n })\n return data as SDKProps\n}\n\nexport type URLKeys = 'apiV2' | 'realTimeApi' | 'mainUrl' | 'priceApi'\n\nexport const useURLByEnvironment = (key: URLKeys) => {\n const config = useSDKConfig()\n return config?.urls?.[key] as string\n}\n"],"names":[],"mappings":";;;;;;;AAOA;AACA,MAAM,WAAW,GAAG;AAClB,IAAA,KAAK,EAAE,sBAAsB;AAC7B,IAAA,WAAW,EAAE,+BAA+B;AAC5C,IAAA,OAAO,EAAE,kBAAkB;AAC3B,IAAA,QAAQ,EAAE,4BAA4B;CACvC;AAED;AACA,MAAM,WAAW,GAAG;AAClB,IAAA,KAAK,EAAE,8BAA8B;AACrC,IAAA,WAAW,EAAE,uCAAuC;AACpD,IAAA,OAAO,EAAE,0BAA0B;AACnC,IAAA,QAAQ,EAAE,4BAA4B;CACvC;AA0CM,MAAM,YAAY,GAAG,CAAC,MAAoB,KAAc;AAC7D,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,GAAG,WAAW,GAAG,WAAW;AAE9E,IAAA,MAAM,WAAW,GAAa;AAC5B,QAAA,WAAW,EAAE,EAAE;AACf,QAAA,MAAM,EAAE,EAAE;QACV,aAAa,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC;AAC3C,QAAA,WAAW,EAAE,IAAI;AACjB,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,WAAW,EAAE,KAAK;AAClB,QAAA,iBAAiB,EAAE,KAAK;AACxB,QAAA,WAAW,EAAE,SAAS;AACtB,QAAA,gBAAgB,EAAE,OAAO;AACzB,QAAA,GAAG,MAAM;AACT,QAAA,oBAAoB,EAAE;AACpB,YAAA,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG;AACzC,SAAA;QACD,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE;AAClC,QAAA,wBAAwB,EAAE,OAAO;KAClC;AAED,IAAA,MAAM,kBAAkB,GAAG,MAAM,EAAE,oBAAoB,EAAE,GAAG;IAE5D,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,MAAM,EAAE,UAAU,EAAE;AACtB,YAAA,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC;QAClC;QACA,IAAI,kBAAkB,EAAE;AACtB,YAAA,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;AACpC,YAAA,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,CAAC;QACrD;IACF,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAAC;AAE5C,IAAA,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;AACxB,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,MAAK;AACZ,YAAA,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC;QACvG,CAAC;QACD,WAAW;AACZ,KAAA,CAAC;AACF,IAAA,OAAO,IAAgB;AACzB;AAIO,MAAM,mBAAmB,GAAG,CAAC,GAAY,KAAI;AAClD,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE;AAC7B,IAAA,OAAO,MAAM,EAAE,IAAI,GAAG,GAAG,CAAW;AACtC;;;;"}
1
+ {"version":3,"file":"useSDKConfig.js","sources":["../../src/state/useSDKConfig.ts"],"sourcesContent":["import { useQuery } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../config/constants/queryKeys'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { useEffect } from 'react'\nimport { setCustomRPCS } from '../config/constants/networks'\nimport { setWalletConnectorOpener } from '../config/constants/walletConnectors'\n\n// Prod URLS. Do not make changes here\nconst defaultUrls = {\n apiV2: 'https://api.ape.bond',\n realTimeApi: 'https://realtime-api.ape.bond',\n mainUrl: 'https://ape.bond',\n priceApi: 'https://price-api.ape.bond',\n}\n\n// Staging URLS.\nconst stagingUrls = {\n apiV2: 'https://staging-api.ape.bond',\n realTimeApi: 'https://realtime-api-staging.ape.bond',\n mainUrl: 'https://staging.ape.bond',\n priceApi: 'https://price-api.ape.bond',\n}\n\nexport interface OpenWalletConnectorsDTO {\n evm?: () => void\n}\n\nexport interface SDKPropsDTO {\n referenceId: string\n chains: number[]\n hotBondChains?: number[]\n useHotBonds?: boolean\n useTiers?: boolean\n useTGEBonds?: boolean\n showLowValueBonds?: boolean\n bondPartner?: string\n namingPreference?: 'Discount' | 'Bonus'\n urls?: Partial<Record<URLKeys, string>>\n theme?: any\n highestCompatibleVersion?: string\n customRPCS?: Partial<Record<ChainId, string[]>>\n openWalletConnectors?: OpenWalletConnectorsDTO\n customBranch?: string\n}\n\nexport interface SDKProps {\n referenceId: string\n chains: number[]\n hotBondChains: number[]\n useHotBonds: boolean\n useTiers: boolean\n useTGEBonds: boolean\n showLowValueBonds: boolean\n bondPartner?: string\n namingPreference: 'Discount' | 'Bonus'\n urls: Record<URLKeys, string>\n theme?: any\n highestCompatibleVersion?: string\n customRPCS?: Partial<Record<ChainId, string[]>>\n openWalletConnectors: {\n evm: boolean\n }\n customBranch?: string\n}\n\nexport const useSDKConfig = (config?: SDKPropsDTO): SDKProps => {\n const urls = process.env.NODE_ENV === 'production' ? defaultUrls : stagingUrls\n\n const initialData: SDKProps = {\n referenceId: '',\n chains: [],\n hotBondChains: [ChainId.BSC, ChainId.MATIC],\n useHotBonds: true,\n useTiers: false,\n useTGEBonds: false,\n showLowValueBonds: false,\n bondPartner: undefined,\n namingPreference: 'Bonus',\n ...config,\n openWalletConnectors: {\n evm: !!config?.openWalletConnectors?.evm,\n },\n urls: { ...urls, ...config?.urls },\n highestCompatibleVersion: '2.1.3',\n }\n\n const evmConnectorOpener = config?.openWalletConnectors?.evm\n\n useEffect(() => {\n if (config?.customRPCS) {\n setCustomRPCS(config.customRPCS)\n }\n if (evmConnectorOpener) {\n console.log('set evm wallet opener')\n setWalletConnectorOpener('evm', evmConnectorOpener)\n }\n }, [config?.customRPCS, evmConnectorOpener])\n\n const { data } = useQuery({\n queryKey: [QUERY_KEYS.SDK_CONFIG],\n queryFn: () => {\n throw new Error('Just a hotfix for latest versions of react-query that make queryFn a required prop')\n },\n initialData,\n })\n return data as SDKProps\n}\n\nexport type URLKeys = 'apiV2' | 'realTimeApi' | 'mainUrl' | 'priceApi'\n\nexport const useURLByEnvironment = (key: URLKeys) => {\n const config = useSDKConfig()\n return config?.urls?.[key] as string\n}\n"],"names":[],"mappings":";;;;;;;AAOA;AACA,MAAM,WAAW,GAAG;AAClB,IAAA,KAAK,EAAE,sBAAsB;AAC7B,IAAA,WAAW,EAAE,+BAA+B;AAC5C,IAAA,OAAO,EAAE,kBAAkB;AAC3B,IAAA,QAAQ,EAAE,4BAA4B;CACvC;AAED;AACA,MAAM,WAAW,GAAG;AAClB,IAAA,KAAK,EAAE,8BAA8B;AACrC,IAAA,WAAW,EAAE,uCAAuC;AACpD,IAAA,OAAO,EAAE,0BAA0B;AACnC,IAAA,QAAQ,EAAE,4BAA4B;CACvC;AA4CM,MAAM,YAAY,GAAG,CAAC,MAAoB,KAAc;AAC7D,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,GAAG,WAAW,GAAG,WAAW;AAE9E,IAAA,MAAM,WAAW,GAAa;AAC5B,QAAA,WAAW,EAAE,EAAE;AACf,QAAA,MAAM,EAAE,EAAE;QACV,aAAa,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC;AAC3C,QAAA,WAAW,EAAE,IAAI;AACjB,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,WAAW,EAAE,KAAK;AAClB,QAAA,iBAAiB,EAAE,KAAK;AACxB,QAAA,WAAW,EAAE,SAAS;AACtB,QAAA,gBAAgB,EAAE,OAAO;AACzB,QAAA,GAAG,MAAM;AACT,QAAA,oBAAoB,EAAE;AACpB,YAAA,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG;AACzC,SAAA;QACD,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE;AAClC,QAAA,wBAAwB,EAAE,OAAO;KAClC;AAED,IAAA,MAAM,kBAAkB,GAAG,MAAM,EAAE,oBAAoB,EAAE,GAAG;IAE5D,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,MAAM,EAAE,UAAU,EAAE;AACtB,YAAA,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC;QAClC;QACA,IAAI,kBAAkB,EAAE;AACtB,YAAA,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;AACpC,YAAA,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,CAAC;QACrD;IACF,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAAC;AAE5C,IAAA,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;AACxB,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,MAAK;AACZ,YAAA,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC;QACvG,CAAC;QACD,WAAW;AACZ,KAAA,CAAC;AACF,IAAA,OAAO,IAAgB;AACzB;AAIO,MAAM,mBAAmB,GAAG,CAAC,GAAY,KAAI;AAClD,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE;AAC7B,IAAA,OAAO,MAAM,EAAE,IAAI,GAAG,GAAG,CAAW;AACtC;;;;"}
@@ -9,7 +9,8 @@ declare enum NetworkNames {
9
9
  AVAX = "ava",
10
10
  BLAST = "bls",
11
11
  SONIC = "son",
12
- BERACHAIN = "ber"
12
+ BERACHAIN = "ber",
13
+ ROBINHOOD = "rob"
13
14
  }
14
15
  export declare const getChainParam: (chain?: ChainId) => NetworkNames | null;
15
16
  export declare const getLpType: (protocol?: Protocols) => "ichi" | "solidly" | "univ2" | "curve" | null;
@@ -12,6 +12,7 @@ var NetworkNames;
12
12
  NetworkNames["BLAST"] = "bls";
13
13
  NetworkNames["SONIC"] = "son";
14
14
  NetworkNames["BERACHAIN"] = "ber";
15
+ NetworkNames["ROBINHOOD"] = "rob";
15
16
  })(NetworkNames || (NetworkNames = {}));
16
17
  const getChainParam = (chain) => {
17
18
  return chain === ChainId.LINEA
@@ -34,7 +35,9 @@ const getChainParam = (chain) => {
34
35
  ? NetworkNames.SONIC
35
36
  : chain === ChainId.BERACHAIN
36
37
  ? NetworkNames.BERACHAIN
37
- : null;
38
+ : chain === ChainId.ROBINHOOD
39
+ ? NetworkNames.ROBINHOOD
40
+ : null;
38
41
  };
39
42
  const getLpType = (protocol) => {
40
43
  return protocol === Protocols.Algebra
@@ -1 +1 @@
1
- {"version":3,"file":"getChainParam.js","sources":["../../../src/state/zap/getChainParam.ts"],"sourcesContent":["import { ChainId, Protocols } from '@ape.swap/apeswap-lists'\n\nenum NetworkNames {\n MAINNET = 'eth',\n BNB = 'bnb',\n POLYGON = 'pol',\n ARBITRUM = 'arb',\n LINEA = 'lna',\n BASE = 'bas',\n AVAX = 'ava',\n BLAST = 'bls',\n SONIC = 'son',\n BERACHAIN = 'ber',\n}\n\nexport const getChainParam = (chain?: ChainId): NetworkNames | null => {\n return chain === ChainId.LINEA\n ? NetworkNames.LINEA\n : chain === ChainId.MATIC\n ? NetworkNames.POLYGON\n : chain === ChainId.BSC\n ? NetworkNames.BNB\n : chain === ChainId.BASE\n ? NetworkNames.BASE\n : chain === ChainId.ARBITRUM\n ? NetworkNames.ARBITRUM\n : chain === ChainId.MAINNET\n ? NetworkNames.MAINNET\n : chain === ChainId.AVAX\n ? NetworkNames.AVAX\n : chain === ChainId.BLAST\n ? NetworkNames.BLAST\n : chain === ChainId.SONIC\n ? NetworkNames.SONIC\n : chain === ChainId.BERACHAIN\n ? NetworkNames.BERACHAIN\n : null\n}\n\nexport const getLpType = (protocol?: Protocols): 'ichi' | 'solidly' | 'univ2' | 'curve' | null => {\n return protocol === Protocols.Algebra\n ? 'ichi'\n : protocol === Protocols.Solidly\n ? 'solidly'\n : protocol === Protocols.V2\n ? 'univ2'\n : protocol === Protocols.V3 // This might be a hot fix. Lets revisit this on the future\n ? 'ichi'\n : protocol === Protocols.Curve\n ? 'curve'\n : null\n}\n"],"names":[],"mappings":";;AAEA,IAAK,YAWJ;AAXD,CAAA,UAAK,YAAY,EAAA;AACf,IAAA,YAAA,CAAA,SAAA,CAAA,GAAA,KAAe;AACf,IAAA,YAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,YAAA,CAAA,SAAA,CAAA,GAAA,KAAe;AACf,IAAA,YAAA,CAAA,UAAA,CAAA,GAAA,KAAgB;AAChB,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,KAAa;AACb,IAAA,YAAA,CAAA,MAAA,CAAA,GAAA,KAAY;AACZ,IAAA,YAAA,CAAA,MAAA,CAAA,GAAA,KAAY;AACZ,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,KAAa;AACb,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,KAAa;AACb,IAAA,YAAA,CAAA,WAAA,CAAA,GAAA,KAAiB;AACnB,CAAC,EAXI,YAAY,KAAZ,YAAY,GAAA,EAAA,CAAA,CAAA;AAaV,MAAM,aAAa,GAAG,CAAC,KAAe,KAAyB;AACpE,IAAA,OAAO,KAAK,KAAK,OAAO,CAAC;UACrB,YAAY,CAAC;AACf,UAAE,KAAK,KAAK,OAAO,CAAC;cAChB,YAAY,CAAC;AACf,cAAE,KAAK,KAAK,OAAO,CAAC;kBAChB,YAAY,CAAC;AACf,kBAAE,KAAK,KAAK,OAAO,CAAC;sBAChB,YAAY,CAAC;AACf,sBAAE,KAAK,KAAK,OAAO,CAAC;0BAChB,YAAY,CAAC;AACf,0BAAE,KAAK,KAAK,OAAO,CAAC;8BAChB,YAAY,CAAC;AACf,8BAAE,KAAK,KAAK,OAAO,CAAC;kCAChB,YAAY,CAAC;AACf,kCAAE,KAAK,KAAK,OAAO,CAAC;sCAChB,YAAY,CAAC;AACf,sCAAE,KAAK,KAAK,OAAO,CAAC;0CAChB,YAAY,CAAC;AACf,0CAAE,KAAK,KAAK,OAAO,CAAC;8CAChB,YAAY,CAAC;8CACb,IAAI;AAC5B;AAEO,MAAM,SAAS,GAAG,CAAC,QAAoB,KAAmD;AAC/F,IAAA,OAAO,QAAQ,KAAK,SAAS,CAAC;AAC5B,UAAE;AACF,UAAE,QAAQ,KAAK,SAAS,CAAC;AACvB,cAAE;AACF,cAAE,QAAQ,KAAK,SAAS,CAAC;AACvB,kBAAE;AACF,kBAAE,QAAQ,KAAK,SAAS,CAAC,EAAE;AACzB,sBAAE;AACF,sBAAE,QAAQ,KAAK,SAAS,CAAC;AACvB,0BAAE;0BACA,IAAI;AAClB;;;;"}
1
+ {"version":3,"file":"getChainParam.js","sources":["../../../src/state/zap/getChainParam.ts"],"sourcesContent":["import { ChainId, Protocols } from '@ape.swap/apeswap-lists'\n\nenum NetworkNames {\n MAINNET = 'eth',\n BNB = 'bnb',\n POLYGON = 'pol',\n ARBITRUM = 'arb',\n LINEA = 'lna',\n BASE = 'bas',\n AVAX = 'ava',\n BLAST = 'bls',\n SONIC = 'son',\n BERACHAIN = 'ber',\n ROBINHOOD = 'rob',\n}\n\nexport const getChainParam = (chain?: ChainId): NetworkNames | null => {\n return chain === ChainId.LINEA\n ? NetworkNames.LINEA\n : chain === ChainId.MATIC\n ? NetworkNames.POLYGON\n : chain === ChainId.BSC\n ? NetworkNames.BNB\n : chain === ChainId.BASE\n ? NetworkNames.BASE\n : chain === ChainId.ARBITRUM\n ? NetworkNames.ARBITRUM\n : chain === ChainId.MAINNET\n ? NetworkNames.MAINNET\n : chain === ChainId.AVAX\n ? NetworkNames.AVAX\n : chain === ChainId.BLAST\n ? NetworkNames.BLAST\n : chain === ChainId.SONIC\n ? NetworkNames.SONIC\n : chain === ChainId.BERACHAIN\n ? NetworkNames.BERACHAIN\n : chain === ChainId.ROBINHOOD\n ? NetworkNames.ROBINHOOD\n : null\n}\n\nexport const getLpType = (protocol?: Protocols): 'ichi' | 'solidly' | 'univ2' | 'curve' | null => {\n return protocol === Protocols.Algebra\n ? 'ichi'\n : protocol === Protocols.Solidly\n ? 'solidly'\n : protocol === Protocols.V2\n ? 'univ2'\n : protocol === Protocols.V3 // This might be a hot fix. Lets revisit this on the future\n ? 'ichi'\n : protocol === Protocols.Curve\n ? 'curve'\n : null\n}\n"],"names":[],"mappings":";;AAEA,IAAK,YAYJ;AAZD,CAAA,UAAK,YAAY,EAAA;AACf,IAAA,YAAA,CAAA,SAAA,CAAA,GAAA,KAAe;AACf,IAAA,YAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,YAAA,CAAA,SAAA,CAAA,GAAA,KAAe;AACf,IAAA,YAAA,CAAA,UAAA,CAAA,GAAA,KAAgB;AAChB,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,KAAa;AACb,IAAA,YAAA,CAAA,MAAA,CAAA,GAAA,KAAY;AACZ,IAAA,YAAA,CAAA,MAAA,CAAA,GAAA,KAAY;AACZ,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,KAAa;AACb,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,KAAa;AACb,IAAA,YAAA,CAAA,WAAA,CAAA,GAAA,KAAiB;AACjB,IAAA,YAAA,CAAA,WAAA,CAAA,GAAA,KAAiB;AACnB,CAAC,EAZI,YAAY,KAAZ,YAAY,GAAA,EAAA,CAAA,CAAA;AAcV,MAAM,aAAa,GAAG,CAAC,KAAe,KAAyB;AACpE,IAAA,OAAO,KAAK,KAAK,OAAO,CAAC;UACrB,YAAY,CAAC;AACf,UAAE,KAAK,KAAK,OAAO,CAAC;cAChB,YAAY,CAAC;AACf,cAAE,KAAK,KAAK,OAAO,CAAC;kBAChB,YAAY,CAAC;AACf,kBAAE,KAAK,KAAK,OAAO,CAAC;sBAChB,YAAY,CAAC;AACf,sBAAE,KAAK,KAAK,OAAO,CAAC;0BAChB,YAAY,CAAC;AACf,0BAAE,KAAK,KAAK,OAAO,CAAC;8BAChB,YAAY,CAAC;AACf,8BAAE,KAAK,KAAK,OAAO,CAAC;kCAChB,YAAY,CAAC;AACf,kCAAE,KAAK,KAAK,OAAO,CAAC;sCAChB,YAAY,CAAC;AACf,sCAAE,KAAK,KAAK,OAAO,CAAC;0CAChB,YAAY,CAAC;AACf,0CAAE,KAAK,KAAK,OAAO,CAAC;8CAChB,YAAY,CAAC;AACf,8CAAE,KAAK,KAAK,OAAO,CAAC;kDAChB,YAAY,CAAC;kDACb,IAAI;AAC9B;AAEO,MAAM,SAAS,GAAG,CAAC,QAAoB,KAAmD;AAC/F,IAAA,OAAO,QAAQ,KAAK,SAAS,CAAC;AAC5B,UAAE;AACF,UAAE,QAAQ,KAAK,SAAS,CAAC;AACvB,cAAE;AACF,cAAE,QAAQ,KAAK,SAAS,CAAC;AACvB,kBAAE;AACF,kBAAE,QAAQ,KAAK,SAAS,CAAC,EAAE;AACzB,sBAAE;AACF,sBAAE,QAAQ,KAAK,SAAS,CAAC;AACvB,0BAAE;0BACA,IAAI;AAClB;;;;"}
@@ -89,11 +89,12 @@ const BuyBond = ({ onDismiss, bondAddress, bondChain, handlePurchasedBond, isPro
89
89
  const isGoldRush = bondData?.billArt?.collection === BillArtCollection.GoldenTicket_Collection1;
90
90
  const zapEnabled = supportedByLIFI.includes(bondData?.chainId);
91
91
  const exceedsMaxBuy = getMaxBuy(bondData, SDKConfig.showLowValueBonds).lt(getPayoutAmount(bondData, depositAmount, userPoints ?? '0'));
92
+ getPayoutAmount(bondData, depositAmount, userPoints ?? '0') < 0.0001;
92
93
  const exceedsBalance = new BigNumber(inputCurrencyBalance ?? '0').lt(inputValue);
93
94
  // Loading State
94
95
  const [loadingTx, setLoadingTx] = useState(false);
95
96
  const { addToastError } = usePopups();
96
- const { isLoading: isConfirming, isSuccess: isConfirmed } = useMonitorTxHash(buyTxHash, userChainId);
97
+ const { isLoading: isConfirming, isSuccess: isConfirmed } = useMonitorTxHash(buyTxHash, bondChain);
97
98
  const load = loadingTx || (isConfirming && !isConfirmed);
98
99
  // State Handlers
99
100
  const handleCurrencySelect = useCallback((newInputToken) => {
@@ -139,7 +140,7 @@ const BuyBond = ({ onDismiss, bondAddress, bondChain, handlePurchasedBond, isPro
139
140
  },
140
141
  });
141
142
  try {
142
- const maxPrice = new BigNumber(trueBondPrice ?? '0').times(102).div(100).toFixed(0); // multiply it by 1.02
143
+ const maxPrice = new BigNumber(trueBondPrice ?? '0').times(1.02).toFixed(0); // multiply it by 1.02
143
144
  const rawAmount = adjustDecimals(inputValue);
144
145
  const amount = new BigNumber(rawAmount).times(new BigNumber(10).pow(decimals ?? 18)).toString();
145
146
  const shouldUseSig = bondData?.billVersion === BillVersion.V4 && SDKConfig.useTiers;
@@ -335,7 +336,9 @@ const BuyBond = ({ onDismiss, bondAddress, bondChain, handlePurchasedBond, isPro
335
336
  ? 'something went wrong'
336
337
  : !inputValue || parseFloat(inputValue) === 0
337
338
  ? 'Insert amount'
338
- : `buy` })) })] })] })] })) : (jsx(Fragment, {}));
339
+ : isZap && fetchingZapQuote
340
+ ? 'Loading'
341
+ : `buy` })) })] })] })] })) : (jsx(Fragment, {}));
339
342
  };
340
343
 
341
344
  export { BuyBond as default };
@@ -1 +1 @@
1
- {"version":3,"file":"BuyBond.js","sources":["../../../src/views/BuyBond/BuyBond.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react'\nimport { BigNumber } from 'bignumber.js'\nimport Button from '../../components/uikit-sdk/Button/Button'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport QuestionCircle from '../../components/uikit-sdk/Svg/Icons/QuestionCircle'\nimport Text from '../../components/uikit-sdk/Text'\nimport TooltipBubble from '../../components/uikit-sdk/TooltipBubble'\nimport { adjustDecimals } from '../../utils/convertToTokenValue'\nimport ABI_DEPOSIT from '../../config/abi/deposit.json'\nimport ABI_DEPOSIT_SIG from '../../config/abi/depositSig.json'\nimport { useAccount, useChainId, useSendTransaction, useWriteContract } from 'wagmi'\nimport useModal from '../../hooks/useModal'\nimport ZapModal from '../ZapModal'\nimport { BillArtCollection, BillVersion, ChainId, Token } from '@ape.swap/apeswap-lists'\nimport TokenSelectorPanel from '../../components/TokenSelectorPanel'\nimport { useApproval } from '../../state/allowance/useAllowance'\nimport { SoulZapTokenManager } from '../../config/constants/addresses'\nimport useSoulZapBondQuote from '../../state/zap/useSoulZapBondQuote'\nimport { parseEther } from 'viem'\nimport useBondsData from '../../state/bonds/useBondsData'\nimport useTokenFromZapList from '../../hooks/useTokenFromZapList'\nimport { useMonitorTxHash } from '../../hooks/useMonitorTxHash'\nimport { usePopups } from '../../state/popups/usePopups'\nimport { formatNumber, formatUSDNumber, getMaxBuy, getPayoutAmount } from '../../utils/displayHelpers'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport { supportedByLIFI } from '../../config/constants/variables'\nimport { getSymbol } from '../../utils/getNativeTicker'\nimport { useSendReferenceId } from '../../hooks/useSendReferenceId'\nimport ConnectButton from '../../components/ConnectButton'\nimport BondModalHeader from './components/BondModalHeader'\nimport BondCards from './components/BondCards'\nimport Estimations from './components/Estimations'\nimport ProjectDescription from './components/ProjectDescription'\nimport track from '../../utils/track'\nimport { remove0xPrefix } from '../../utils/remove0xPrefix'\nimport useTierPoints, { getUserTier } from '../../state/tiers/useTierPoints'\nimport NewRateModal from './components/NewRateModal/NewRateModal'\nimport NoBonusModal from './components/NoBonusModal/NoBonusModal'\nimport useTierProofSignature from '../../state/bonds/useTierProofSignature'\nimport { findHighestTrueBondPrice } from './findHighestTrueBondPrice'\nimport GetUpToComponent from './components/GetUpToComponent/GetUpToComponent'\nimport SafeHTMLComponent from '../../components/SafeHTMLComponent'\nimport { useIsMobile } from '../../hooks/useIsMobile'\nimport useSortedZapList from '../../hooks/useSortedZapList'\nimport TransactionModal from '../TransactionModal/TransactionModal'\nimport { reportError } from '../../utils/reportError'\n\nexport interface BuyBondProps {\n onDismiss?: () => void // this is only the modal\n bondAddress?: string\n bondChain?: number\n handlePurchasedBond?: (hash: string) => void\n isProjectView?: boolean\n}\n\nconst BuyBond: React.FC<BuyBondProps> = ({ onDismiss, bondAddress, bondChain, handlePurchasedBond, isProjectView }) => {\n const SDKConfig = useSDKConfig()\n // Hooks\n const userChainId = useChainId()\n const { address: account } = useAccount()\n const { writeContractAsync } = useWriteContract()\n const { sendTransactionAsync } = useSendTransaction()\n const { data: bonds, refetch: refetchBondState } = useBondsData()\n const sendReferenceId = useSendReferenceId()\n const { data: userPoints } = useTierPoints()\n const bondData = bonds?.find(\n (bond) => bond?.contractAddress?.[bond.chainId]?.toLowerCase() === bondAddress?.toLowerCase(),\n )!\n const isMobile = useIsMobile()\n\n // Tier Gating\n const userTier = getUserTier(userPoints ?? '0')\n const minTier = bondData?.minTier !== undefined ? bondData.minTier : null\n const isUserRestricted = minTier !== null && (userTier === null || userTier < minTier)\n const trueBondPriceData = findHighestTrueBondPrice(userPoints, bondData)\n const trueBondPrice = trueBondPriceData?.trueBondPrice\n const { data: tierProofSig } = useTierProofSignature(bondAddress, bondChain, isUserRestricted)\n\n // State\n const [buyTxHash, setBuyTxHash] = useState<string | undefined>()\n const [inputValue, setInputValue] = useState('')\n const [inputTokenString, setInputTokenString] = useState(bondData?.lpToken?.address?.[bondData.chainId])\n\n // On-chain Data\n const inputToken = useTokenFromZapList(inputTokenString, bondData?.chainId, bondData?.lpToken)\n const isZap = inputTokenString?.toLowerCase() !== bondData?.lpToken?.address?.[bondData?.chainId]?.toLowerCase()\n const [fetchingZapQuote, zapData, zapDepositAmount, zapError, zapTrueBondPrice] = useSoulZapBondQuote(\n inputValue,\n inputToken,\n bondData,\n account,\n tierProofSig ?? undefined,\n )\n\n const { sortedZapList } = useSortedZapList(bondChain, bondData?.lpToken)\n const enrichedTokenData = sortedZapList.find((item) =>\n item.token === 'NATIVE' || inputToken === 'NATIVE'\n ? item.token === inputToken\n : item?.token?.address?.[bondChain as ChainId]?.toLowerCase() ===\n inputToken?.address?.[bondChain as ChainId]?.toLowerCase(),\n )\n const inputCurrencyBalance = enrichedTokenData?.balance\n const inputTokenPrice = enrichedTokenData?.price\n const rateChanged = parseFloat(zapTrueBondPrice ?? '0') > parseFloat(trueBondPrice ?? '0') * 1.01 && isZap\n\n // Estimations\n const depositAmount = isZap ? zapDepositAmount : inputValue\n const youSpendString = `${formatNumber(inputValue)} ${getSymbol(inputToken, bondData?.chainId)} = \n $${formatUSDNumber((parseFloat(inputValue) * (inputTokenPrice ?? 0)).toString())}`\n\n // Validations\n const isGoldRush = bondData?.billArt?.collection === BillArtCollection.GoldenTicket_Collection1\n const zapEnabled = supportedByLIFI.includes(bondData?.chainId)\n const exceedsMaxBuy = getMaxBuy(bondData, SDKConfig.showLowValueBonds).lt(\n getPayoutAmount(bondData, depositAmount, userPoints ?? '0'),\n )\n const exceedsBalance = new BigNumber(inputCurrencyBalance ?? '0').lt(inputValue)\n\n // Loading State\n const [loadingTx, setLoadingTx] = useState(false)\n const { addToastError } = usePopups()\n const { isLoading: isConfirming, isSuccess: isConfirmed } = useMonitorTxHash(buyTxHash, userChainId)\n const load = loadingTx || (isConfirming && !isConfirmed)\n\n // State Handlers\n const handleCurrencySelect = useCallback((newInputToken: string) => {\n setInputValue('')\n setInputTokenString(newInputToken)\n }, [])\n\n const handleOpenZapModal = () => {\n onOpenZapModal()\n track({\n event: 'getTokenClick',\n chain: bondData?.chainId,\n data: {\n bond: bondData?.earnToken.symbol,\n token: bondData?.lpToken?.symbol,\n },\n })\n }\n\n // Approve & Purchase Functions\n const [approvalState, approveCallback] = useApproval(\n inputValue,\n inputToken ?? null,\n (isZap ? SoulZapTokenManager?.[bondData?.chainId as ChainId] : bondData?.contractAddress?.[bondData.chainId]) ??\n null,\n account ?? null,\n bondData?.chainId ?? null,\n )\n const handleApprove = async () => {\n return approveCallback().then(() => {\n track({\n event: 'approveBondClick',\n chain: userChainId,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol,\n },\n })\n })\n }\n\n const handleBuyCallback = async () => {\n const billAddress: `0x${string}` = bondData?.contractAddress?.[bondData.chainId] as `0x${string}`\n const decimals = bondData?.lpToken.decimals?.[bondData?.chainId] ?? 18\n track({\n event: 'buyBondClick',\n chain: bondChain,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol,\n value: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n try {\n const maxPrice = new BigNumber(trueBondPrice ?? '0').times(102).div(100).toFixed(0) // multiply it by 1.02\n const rawAmount = adjustDecimals(inputValue)\n const amount = new BigNumber(rawAmount).times(new BigNumber(10).pow(decimals ?? 18)).toString()\n\n const shouldUseSig = bondData?.billVersion === BillVersion.V4 && SDKConfig.useTiers\n const args = shouldUseSig ? [amount, maxPrice, account, tierProofSig] : [amount, maxPrice, account]\n const hash = await writeContractAsync({\n address: billAddress,\n abi: shouldUseSig ? ABI_DEPOSIT_SIG : ABI_DEPOSIT,\n functionName: 'deposit',\n args: args,\n chain: bondData?.chainId as any,\n account,\n })\n if (hash) {\n setBuyTxHash(hash)\n await sendReferenceId(billAddress, userChainId, hash)\n handlePurchasedBond?.(hash)\n track({\n event: 'bond',\n chain: bondChain,\n data: {\n cat: 'lp-buy',\n type: bondData?.billType ?? '',\n typedValue: inputValue,\n principalToken: bondData?.lpToken.symbol ?? '',\n earnToken: bondData?.earnToken.symbol ?? '',\n address: remove0xPrefix(bondData?.contractAddress?.[bondData.chainId]),\n usdAmount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n }\n } catch (error: any) {\n console.error('Buy error', error)\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error,\n extraInfo: { type: 'buyBond', bondData, error },\n chainId: bondChain,\n account,\n })\n addToastError(error.shortMessage)\n }\n }\n const handleZapCallback = async () => {\n if (zapData && zapData?.txData?.to && zapData?.txData?.data) {\n console.log('Attempting zap tx')\n track({\n event: 'buyBondClick',\n chain: bondData?.chainId,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol ?? '',\n value: zapData.lpQuote.fromAmountUSD,\n },\n })\n try {\n console.log(zapData)\n const validated18DecimalAmount = new BigNumber(inputValue ?? '0').toFixed(18, 5)\n const parsedValue = parseEther(validated18DecimalAmount)\n\n const hash = await sendTransactionAsync({\n to: zapData.txData.to,\n data: zapData.txData.data,\n value: inputToken === 'NATIVE' ? parsedValue : undefined,\n })\n if (hash) {\n setBuyTxHash(hash)\n await sendReferenceId(bondData?.contractAddress?.[bondData.chainId] ?? '', userChainId, hash)\n handlePurchasedBond?.(hash)\n track({\n event: 'zap',\n chain: bondChain,\n data: {\n cat: 'bill',\n token1: getSymbol(inputToken),\n token2: `${bondData?.lpToken.symbol ?? ''}`,\n amount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n track({\n event: 'bond',\n chain: bondChain,\n data: {\n cat: 'zap-buy',\n type: bondData?.billType ?? '',\n principalToken: bondData?.lpToken.symbol ?? '',\n earnToken: bondData?.earnToken.symbol ?? '',\n address: remove0xPrefix(bondData?.contractAddress?.[bondData.chainId]),\n amount: inputValue,\n usdAmount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n }\n } catch (e: any) {\n console.log(e)\n addToastError(e.shortMessage)\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error: e,\n extraInfo: { type: 'zapBuyBond', bondData, zapData, e },\n chainId: bondChain,\n account,\n })\n }\n }\n }\n\n const handleBothPurchases = () => {\n setLoadingTx(true)\n if (isZap) {\n handleZapCallback().finally(() => setLoadingTx(false))\n } else {\n handleBuyCallback().finally(() => setLoadingTx(false))\n }\n }\n\n const handleOpenModal = () => {\n const bonus = trueBondPriceData?.bonusWithFee ?? 0\n if (bonus <= 0) {\n openNoBonusModal()\n } else {\n openTxModal()\n }\n }\n\n const openExternal = () => {\n if (bondData?.lpToken?.getLpUrl?.[bondData?.chainId]) {\n window.open(bondData.lpToken.getLpUrl?.[bondData?.chainId], '_blank')\n } else {\n window.open(\n `https://ape.bond/swap?outputcurrency=${bondData?.lpToken.address[bondData?.chainId]}&outputChain=${bondData?.chainId}`,\n '_blank',\n )\n }\n }\n\n // Modals\n\n const [openNewRateModal] = useModal(\n <NewRateModal\n bond={bondData}\n zapTrueBondPrice={zapTrueBondPrice}\n depositAmount={depositAmount}\n youSpendString={youSpendString}\n fetchingZapQuote={fetchingZapQuote}\n zapError={zapError}\n />,\n true,\n false,\n 'newRateModal',\n )\n\n const [openTxModal] = useModal(\n <TransactionModal\n txChain={bondChain}\n approvalState={approvalState}\n approveCallback={handleApprove}\n loadingTx={loadingTx}\n txCallback={handleBothPurchases}\n bondData={bondData!}\n inputToken={inputToken}\n inputValue={inputValue}\n depositAmount={depositAmount}\n buyTxHash={buyTxHash}\n rateChanged={rateChanged}\n />,\n false,\n true,\n 'transactionModal',\n )\n\n const [onOpenZapModal] = useModal(\n <ZapModal outputToken={bondData?.lpToken as Token} account={account} chainId={bondData?.chainId as ChainId} />,\n true,\n true,\n 'zapModal',\n )\n\n const [openNoBonusModal] = useModal(\n <NoBonusModal onAcknowledge={openTxModal} showcaseTokenName={bondData?.showcaseTokenName} />,\n true,\n true,\n 'NoBonusModal',\n )\n\n // Effects\n const [hasChecked, setHasChecked] = useState(false)\n const [hasCheckedTrack, setHasCheckedTrack] = useState<boolean>(false)\n useEffect(() => {\n if (\n inputCurrencyBalance !== undefined &&\n inputCurrencyBalance === '0' &&\n !hasChecked &&\n bondChain &&\n zapEnabled &&\n sortedZapList?.length > 0 &&\n sortedZapList[0].usdValue !== 0\n ) {\n setHasChecked(true)\n setInputTokenString(\n sortedZapList[0].token === 'NATIVE' ? 'NATIVE' : sortedZapList[0].token.address[bondChain as ChainId],\n )\n }\n if (bondData && !hasCheckedTrack) {\n setHasCheckedTrack(true)\n }\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [inputCurrencyBalance, sortedZapList, bondData])\n\n // If rateChanged meaning the zap quote has a >1% difference from the true bond price, we let the user know and we update state\n useEffect(() => {\n if (rateChanged) {\n console.log('rate changed, refetch state and let user know')\n openNewRateModal()\n refetchBondState()\n }\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [rateChanged])\n\n return bondData ? (\n <Flex className={`modal-content ${isGoldRush ? 'gold-rush' : ''}`}>\n {!isProjectView && <div className=\"gold-ribbon\"></div>}\n <Flex className=\"modaltable-container\">\n <BondModalHeader\n bondData={bondData}\n onDismiss={onDismiss}\n showProjectInfoButton={SDKConfig?.referenceId === 'apebond'}\n />\n <ProjectDescription description={bondData.shortDescription} isProjectView />\n <Flex sx={{ width: '100%', display: isProjectView ? ['flex', 'flex', 'flex', 'none'] : 'flex' }}>\n <BondCards bondData={bondData} />\n </Flex>\n <Estimations\n depositAmount={depositAmount}\n bondData={bondData}\n youSpendString={youSpendString}\n isZap={isZap}\n fetchingZapQuote={fetchingZapQuote}\n zapError={zapError}\n />\n <TokenSelectorPanel\n typedValue={inputValue}\n setTypedValue={setInputValue}\n selectedToken={inputToken}\n handleValueBtn={() => setInputValue(new BigNumber(inputCurrencyBalance ?? '0')?.toString())}\n handleCurrencySelect={handleCurrencySelect}\n chainId={bondData?.chainId}\n enableZap={zapEnabled}\n bondPrincipalToken={bondData?.lpToken}\n tokenBalance={inputCurrencyBalance}\n selectedTokenPrice={inputTokenPrice}\n inputDisabled={isUserRestricted}\n />\n {SDKConfig.useTiers && <GetUpToComponent bond={bondData} depositAmount={depositAmount} />}\n {bondData?.warningCard && (\n <Flex\n sx={{\n width: '100%',\n background: '#DE62F366',\n justifyContent: 'center',\n mt: '10px',\n borderRadius: 'normal',\n p: '2px 10px',\n }}\n >\n <Text sx={{ fontSize: '12px', fontWeight: 400, display: 'flex', alignItems: 'center', gap: '10px' }}>\n <SafeHTMLComponent html={bondData?.warningCard} />\n {bondData?.chainId === ChainId.SONIC && bondData?.earnToken.symbol.toLowerCase() === 'moon' && (\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={\n <Text sx={{ textTransform: 'none' }}>\n Open the &#39;cog&#39; icon menu in the top right and set the Slippage Tolerance to 5% or more.\n </Text>\n }\n width=\"315px\"\n placement=\"topRight\"\n transformTip=\"translate(9%, -10%)\"\n >\n <QuestionCircle width={14} color=\"textDisabledButton\" />\n </TooltipBubble>\n )}\n </Text>\n </Flex>\n )}\n <Flex className=\"modaltable-container button-container\">\n {account && (\n <Flex className=\"button-container get\">\n <Button\n className=\"action-button\"\n onClick={() =>\n bondData.billVersion === BillVersion.V4 && SDKConfig.useTiers && zapEnabled\n ? window.open('http://ape.bond/tier-staking', '_blank')\n : zapEnabled\n ? handleOpenZapModal()\n : openExternal()\n }\n variant=\"secondary\"\n fullWidth\n >\n {bondData.billVersion === BillVersion.V4 && SDKConfig.useTiers && zapEnabled\n ? `Get ${!isMobile ? 'your' : ''} Tier`\n : `Get ${getSymbol(bondData?.lpToken)}`}\n </Button>\n </Flex>\n )}\n <Flex className=\"button-container buy\">\n {!account ? (\n <ConnectButton />\n ) : isUserRestricted ? (\n <Button className=\"action-button\" disabled>\n INSUFFICIENT TIER\n </Button>\n ) : (\n <Button\n className=\"action-button\"\n load={load || fetchingZapQuote}\n disabled={\n load ||\n bondData?.soldOut ||\n !account ||\n !inputValue ||\n parseFloat(inputValue) === 0 ||\n fetchingZapQuote ||\n zapError ||\n exceedsMaxBuy ||\n exceedsBalance ||\n (isZap && !zapData)\n }\n onClick={handleOpenModal}\n >\n {exceedsMaxBuy\n ? 'Exceeds Max Buy'\n : exceedsBalance\n ? 'Exceeds balance'\n : zapError\n ? 'something went wrong'\n : !inputValue || parseFloat(inputValue) === 0\n ? 'Insert amount'\n : `buy`}\n </Button>\n )}\n </Flex>\n </Flex>\n </Flex>\n </Flex>\n ) : (\n <></>\n )\n}\nexport default BuyBond\n"],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"BuyBond.js","sources":["../../../src/views/BuyBond/BuyBond.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react'\nimport { BigNumber } from 'bignumber.js'\nimport Button from '../../components/uikit-sdk/Button/Button'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport QuestionCircle from '../../components/uikit-sdk/Svg/Icons/QuestionCircle'\nimport Text from '../../components/uikit-sdk/Text'\nimport TooltipBubble from '../../components/uikit-sdk/TooltipBubble'\nimport { adjustDecimals } from '../../utils/convertToTokenValue'\nimport ABI_DEPOSIT from '../../config/abi/deposit.json'\nimport ABI_DEPOSIT_SIG from '../../config/abi/depositSig.json'\nimport { useAccount, useChainId, useSendTransaction, useWriteContract } from 'wagmi'\nimport useModal from '../../hooks/useModal'\nimport ZapModal from '../ZapModal'\nimport { BillArtCollection, BillVersion, ChainId, Token } from '@ape.swap/apeswap-lists'\nimport TokenSelectorPanel from '../../components/TokenSelectorPanel'\nimport { useApproval } from '../../state/allowance/useAllowance'\nimport { SoulZapTokenManager } from '../../config/constants/addresses'\nimport useSoulZapBondQuote from '../../state/zap/useSoulZapBondQuote'\nimport { parseEther } from 'viem'\nimport useBondsData from '../../state/bonds/useBondsData'\nimport useTokenFromZapList from '../../hooks/useTokenFromZapList'\nimport { useMonitorTxHash } from '../../hooks/useMonitorTxHash'\nimport { usePopups } from '../../state/popups/usePopups'\nimport { formatNumber, formatUSDNumber, getMaxBuy, getPayoutAmount } from '../../utils/displayHelpers'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport { supportedByLIFI } from '../../config/constants/variables'\nimport { getSymbol } from '../../utils/getNativeTicker'\nimport { useSendReferenceId } from '../../hooks/useSendReferenceId'\nimport ConnectButton from '../../components/ConnectButton'\nimport BondModalHeader from './components/BondModalHeader'\nimport BondCards from './components/BondCards'\nimport Estimations from './components/Estimations'\nimport ProjectDescription from './components/ProjectDescription'\nimport track from '../../utils/track'\nimport { remove0xPrefix } from '../../utils/remove0xPrefix'\nimport useTierPoints, { getUserTier } from '../../state/tiers/useTierPoints'\nimport NewRateModal from './components/NewRateModal/NewRateModal'\nimport NoBonusModal from './components/NoBonusModal/NoBonusModal'\nimport useTierProofSignature from '../../state/bonds/useTierProofSignature'\nimport { findHighestTrueBondPrice } from './findHighestTrueBondPrice'\nimport GetUpToComponent from './components/GetUpToComponent/GetUpToComponent'\nimport SafeHTMLComponent from '../../components/SafeHTMLComponent'\nimport { useIsMobile } from '../../hooks/useIsMobile'\nimport useSortedZapList from '../../hooks/useSortedZapList'\nimport TransactionModal from '../TransactionModal/TransactionModal'\nimport { reportError } from '../../utils/reportError'\n\nexport interface BuyBondProps {\n onDismiss?: () => void // this is only the modal\n bondAddress?: string\n bondChain?: number\n handlePurchasedBond?: (hash: string) => void\n isProjectView?: boolean\n}\n\nconst BuyBond: React.FC<BuyBondProps> = ({ onDismiss, bondAddress, bondChain, handlePurchasedBond, isProjectView }) => {\n const SDKConfig = useSDKConfig()\n // Hooks\n const userChainId = useChainId()\n const { address: account } = useAccount()\n const { writeContractAsync } = useWriteContract()\n const { sendTransactionAsync } = useSendTransaction()\n const { data: bonds, refetch: refetchBondState } = useBondsData()\n const sendReferenceId = useSendReferenceId()\n const { data: userPoints } = useTierPoints()\n const bondData = bonds?.find(\n (bond) => bond?.contractAddress?.[bond.chainId]?.toLowerCase() === bondAddress?.toLowerCase(),\n )!\n const isMobile = useIsMobile()\n\n // Tier Gating\n const userTier = getUserTier(userPoints ?? '0')\n const minTier = bondData?.minTier !== undefined ? bondData.minTier : null\n const isUserRestricted = minTier !== null && (userTier === null || userTier < minTier)\n const trueBondPriceData = findHighestTrueBondPrice(userPoints, bondData)\n const trueBondPrice = trueBondPriceData?.trueBondPrice\n const { data: tierProofSig } = useTierProofSignature(bondAddress, bondChain, isUserRestricted)\n\n // State\n const [buyTxHash, setBuyTxHash] = useState<string | undefined>()\n const [inputValue, setInputValue] = useState('')\n const [inputTokenString, setInputTokenString] = useState(bondData?.lpToken?.address?.[bondData.chainId])\n\n // On-chain Data\n const inputToken = useTokenFromZapList(inputTokenString, bondData?.chainId, bondData?.lpToken)\n const isZap = inputTokenString?.toLowerCase() !== bondData?.lpToken?.address?.[bondData?.chainId]?.toLowerCase()\n const [fetchingZapQuote, zapData, zapDepositAmount, zapError, zapTrueBondPrice] = useSoulZapBondQuote(\n inputValue,\n inputToken,\n bondData,\n account,\n tierProofSig ?? undefined,\n )\n\n const { sortedZapList } = useSortedZapList(bondChain, bondData?.lpToken)\n const enrichedTokenData = sortedZapList.find((item) =>\n item.token === 'NATIVE' || inputToken === 'NATIVE'\n ? item.token === inputToken\n : item?.token?.address?.[bondChain as ChainId]?.toLowerCase() ===\n inputToken?.address?.[bondChain as ChainId]?.toLowerCase(),\n )\n const inputCurrencyBalance = enrichedTokenData?.balance\n const inputTokenPrice = enrichedTokenData?.price\n const rateChanged = parseFloat(zapTrueBondPrice ?? '0') > parseFloat(trueBondPrice ?? '0') * 1.01 && isZap\n\n // Estimations\n const depositAmount = isZap ? zapDepositAmount : inputValue\n const youSpendString = `${formatNumber(inputValue)} ${getSymbol(inputToken, bondData?.chainId)} = \n $${formatUSDNumber((parseFloat(inputValue) * (inputTokenPrice ?? 0)).toString())}`\n\n // Validations\n const isGoldRush = bondData?.billArt?.collection === BillArtCollection.GoldenTicket_Collection1\n const zapEnabled = supportedByLIFI.includes(bondData?.chainId)\n const exceedsMaxBuy = getMaxBuy(bondData, SDKConfig.showLowValueBonds).lt(\n getPayoutAmount(bondData, depositAmount, userPoints ?? '0'),\n )\n const bondTooSmall = getPayoutAmount(bondData, depositAmount, userPoints ?? '0') < 0.0001\n const exceedsBalance = new BigNumber(inputCurrencyBalance ?? '0').lt(inputValue)\n\n // Loading State\n const [loadingTx, setLoadingTx] = useState(false)\n const { addToastError } = usePopups()\n const { isLoading: isConfirming, isSuccess: isConfirmed } = useMonitorTxHash(buyTxHash, bondChain)\n const load = loadingTx || (isConfirming && !isConfirmed)\n\n // State Handlers\n const handleCurrencySelect = useCallback((newInputToken: string) => {\n setInputValue('')\n setInputTokenString(newInputToken)\n }, [])\n\n const handleOpenZapModal = () => {\n onOpenZapModal()\n track({\n event: 'getTokenClick',\n chain: bondData?.chainId,\n data: {\n bond: bondData?.earnToken.symbol,\n token: bondData?.lpToken?.symbol,\n },\n })\n }\n\n // Approve & Purchase Functions\n const [approvalState, approveCallback] = useApproval(\n inputValue,\n inputToken ?? null,\n (isZap ? SoulZapTokenManager?.[bondData?.chainId as ChainId] : bondData?.contractAddress?.[bondData.chainId]) ??\n null,\n account ?? null,\n bondData?.chainId ?? null,\n )\n const handleApprove = async () => {\n return approveCallback().then(() => {\n track({\n event: 'approveBondClick',\n chain: userChainId,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol,\n },\n })\n })\n }\n\n const handleBuyCallback = async () => {\n const billAddress: `0x${string}` = bondData?.contractAddress?.[bondData.chainId] as `0x${string}`\n const decimals = bondData?.lpToken.decimals?.[bondData?.chainId] ?? 18\n track({\n event: 'buyBondClick',\n chain: bondChain,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol,\n value: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n try {\n const maxPrice = new BigNumber(trueBondPrice ?? '0').times(1.02).toFixed(0) // multiply it by 1.02\n const rawAmount = adjustDecimals(inputValue)\n const amount = new BigNumber(rawAmount).times(new BigNumber(10).pow(decimals ?? 18)).toString()\n\n const shouldUseSig = bondData?.billVersion === BillVersion.V4 && SDKConfig.useTiers\n const args = shouldUseSig ? [amount, maxPrice, account, tierProofSig] : [amount, maxPrice, account]\n const hash = await writeContractAsync({\n address: billAddress,\n abi: shouldUseSig ? ABI_DEPOSIT_SIG : ABI_DEPOSIT,\n functionName: 'deposit',\n args: args,\n chain: bondData?.chainId as any,\n account,\n })\n if (hash) {\n setBuyTxHash(hash)\n await sendReferenceId(billAddress, userChainId, hash)\n handlePurchasedBond?.(hash)\n track({\n event: 'bond',\n chain: bondChain,\n data: {\n cat: 'lp-buy',\n type: bondData?.billType ?? '',\n typedValue: inputValue,\n principalToken: bondData?.lpToken.symbol ?? '',\n earnToken: bondData?.earnToken.symbol ?? '',\n address: remove0xPrefix(bondData?.contractAddress?.[bondData.chainId]),\n usdAmount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n }\n } catch (error: any) {\n console.error('Buy error', error)\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error,\n extraInfo: { type: 'buyBond', bondData, error },\n chainId: bondChain,\n account,\n })\n addToastError(error.shortMessage)\n }\n }\n const handleZapCallback = async () => {\n if (zapData && zapData?.txData?.to && zapData?.txData?.data) {\n console.log('Attempting zap tx')\n track({\n event: 'buyBondClick',\n chain: bondData?.chainId,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol ?? '',\n value: zapData.lpQuote.fromAmountUSD,\n },\n })\n try {\n console.log(zapData)\n const validated18DecimalAmount = new BigNumber(inputValue ?? '0').toFixed(18, 5)\n const parsedValue = parseEther(validated18DecimalAmount)\n\n const hash = await sendTransactionAsync({\n to: zapData.txData.to,\n data: zapData.txData.data,\n value: inputToken === 'NATIVE' ? parsedValue : undefined,\n })\n if (hash) {\n setBuyTxHash(hash)\n await sendReferenceId(bondData?.contractAddress?.[bondData.chainId] ?? '', userChainId, hash)\n handlePurchasedBond?.(hash)\n track({\n event: 'zap',\n chain: bondChain,\n data: {\n cat: 'bill',\n token1: getSymbol(inputToken),\n token2: `${bondData?.lpToken.symbol ?? ''}`,\n amount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n track({\n event: 'bond',\n chain: bondChain,\n data: {\n cat: 'zap-buy',\n type: bondData?.billType ?? '',\n principalToken: bondData?.lpToken.symbol ?? '',\n earnToken: bondData?.earnToken.symbol ?? '',\n address: remove0xPrefix(bondData?.contractAddress?.[bondData.chainId]),\n amount: inputValue,\n usdAmount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n }\n } catch (e: any) {\n console.log(e)\n addToastError(e.shortMessage)\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error: e,\n extraInfo: { type: 'zapBuyBond', bondData, zapData, e },\n chainId: bondChain,\n account,\n })\n }\n }\n }\n\n const handleBothPurchases = () => {\n setLoadingTx(true)\n if (isZap) {\n handleZapCallback().finally(() => setLoadingTx(false))\n } else {\n handleBuyCallback().finally(() => setLoadingTx(false))\n }\n }\n\n const handleOpenModal = () => {\n const bonus = trueBondPriceData?.bonusWithFee ?? 0\n if (bonus <= 0) {\n openNoBonusModal()\n } else {\n openTxModal()\n }\n }\n\n const openExternal = () => {\n if (bondData?.lpToken?.getLpUrl?.[bondData?.chainId]) {\n window.open(bondData.lpToken.getLpUrl?.[bondData?.chainId], '_blank')\n } else {\n window.open(\n `https://ape.bond/swap?outputcurrency=${bondData?.lpToken.address[bondData?.chainId]}&outputChain=${bondData?.chainId}`,\n '_blank',\n )\n }\n }\n\n // Modals\n\n const [openNewRateModal] = useModal(\n <NewRateModal\n bond={bondData}\n zapTrueBondPrice={zapTrueBondPrice}\n depositAmount={depositAmount}\n youSpendString={youSpendString}\n fetchingZapQuote={fetchingZapQuote}\n zapError={zapError}\n />,\n true,\n false,\n 'newRateModal',\n )\n\n const [openTxModal] = useModal(\n <TransactionModal\n txChain={bondChain}\n approvalState={approvalState}\n approveCallback={handleApprove}\n loadingTx={loadingTx}\n txCallback={handleBothPurchases}\n bondData={bondData!}\n inputToken={inputToken}\n inputValue={inputValue}\n depositAmount={depositAmount}\n buyTxHash={buyTxHash}\n rateChanged={rateChanged}\n />,\n false,\n true,\n 'transactionModal',\n )\n\n const [onOpenZapModal] = useModal(\n <ZapModal outputToken={bondData?.lpToken as Token} account={account} chainId={bondData?.chainId as ChainId} />,\n true,\n true,\n 'zapModal',\n )\n\n const [openNoBonusModal] = useModal(\n <NoBonusModal onAcknowledge={openTxModal} showcaseTokenName={bondData?.showcaseTokenName} />,\n true,\n true,\n 'NoBonusModal',\n )\n\n // Effects\n const [hasChecked, setHasChecked] = useState(false)\n const [hasCheckedTrack, setHasCheckedTrack] = useState<boolean>(false)\n useEffect(() => {\n if (\n inputCurrencyBalance !== undefined &&\n inputCurrencyBalance === '0' &&\n !hasChecked &&\n bondChain &&\n zapEnabled &&\n sortedZapList?.length > 0 &&\n sortedZapList[0].usdValue !== 0\n ) {\n setHasChecked(true)\n setInputTokenString(\n sortedZapList[0].token === 'NATIVE' ? 'NATIVE' : sortedZapList[0].token.address[bondChain as ChainId],\n )\n }\n if (bondData && !hasCheckedTrack) {\n setHasCheckedTrack(true)\n }\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [inputCurrencyBalance, sortedZapList, bondData])\n\n // If rateChanged meaning the zap quote has a >1% difference from the true bond price, we let the user know and we update state\n useEffect(() => {\n if (rateChanged) {\n console.log('rate changed, refetch state and let user know')\n openNewRateModal()\n refetchBondState()\n }\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [rateChanged])\n\n return bondData ? (\n <Flex className={`modal-content ${isGoldRush ? 'gold-rush' : ''}`}>\n {!isProjectView && <div className=\"gold-ribbon\"></div>}\n <Flex className=\"modaltable-container\">\n <BondModalHeader\n bondData={bondData}\n onDismiss={onDismiss}\n showProjectInfoButton={SDKConfig?.referenceId === 'apebond'}\n />\n <ProjectDescription description={bondData.shortDescription} isProjectView />\n <Flex sx={{ width: '100%', display: isProjectView ? ['flex', 'flex', 'flex', 'none'] : 'flex' }}>\n <BondCards bondData={bondData} />\n </Flex>\n <Estimations\n depositAmount={depositAmount}\n bondData={bondData}\n youSpendString={youSpendString}\n isZap={isZap}\n fetchingZapQuote={fetchingZapQuote}\n zapError={zapError}\n />\n <TokenSelectorPanel\n typedValue={inputValue}\n setTypedValue={setInputValue}\n selectedToken={inputToken}\n handleValueBtn={() => setInputValue(new BigNumber(inputCurrencyBalance ?? '0')?.toString())}\n handleCurrencySelect={handleCurrencySelect}\n chainId={bondData?.chainId}\n enableZap={zapEnabled}\n bondPrincipalToken={bondData?.lpToken}\n tokenBalance={inputCurrencyBalance}\n selectedTokenPrice={inputTokenPrice}\n inputDisabled={isUserRestricted}\n />\n {SDKConfig.useTiers && <GetUpToComponent bond={bondData} depositAmount={depositAmount} />}\n {bondData?.warningCard && (\n <Flex\n sx={{\n width: '100%',\n background: '#DE62F366',\n justifyContent: 'center',\n mt: '10px',\n borderRadius: 'normal',\n p: '2px 10px',\n }}\n >\n <Text sx={{ fontSize: '12px', fontWeight: 400, display: 'flex', alignItems: 'center', gap: '10px' }}>\n <SafeHTMLComponent html={bondData?.warningCard} />\n {bondData?.chainId === ChainId.SONIC && bondData?.earnToken.symbol.toLowerCase() === 'moon' && (\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={\n <Text sx={{ textTransform: 'none' }}>\n Open the &#39;cog&#39; icon menu in the top right and set the Slippage Tolerance to 5% or more.\n </Text>\n }\n width=\"315px\"\n placement=\"topRight\"\n transformTip=\"translate(9%, -10%)\"\n >\n <QuestionCircle width={14} color=\"textDisabledButton\" />\n </TooltipBubble>\n )}\n </Text>\n </Flex>\n )}\n <Flex className=\"modaltable-container button-container\">\n {account && (\n <Flex className=\"button-container get\">\n <Button\n className=\"action-button\"\n onClick={() =>\n bondData.billVersion === BillVersion.V4 && SDKConfig.useTiers && zapEnabled\n ? window.open('http://ape.bond/tier-staking', '_blank')\n : zapEnabled\n ? handleOpenZapModal()\n : openExternal()\n }\n variant=\"secondary\"\n fullWidth\n >\n {bondData.billVersion === BillVersion.V4 && SDKConfig.useTiers && zapEnabled\n ? `Get ${!isMobile ? 'your' : ''} Tier`\n : `Get ${getSymbol(bondData?.lpToken)}`}\n </Button>\n </Flex>\n )}\n <Flex className=\"button-container buy\">\n {!account ? (\n <ConnectButton />\n ) : isUserRestricted ? (\n <Button className=\"action-button\" disabled>\n INSUFFICIENT TIER\n </Button>\n ) : (\n <Button\n className=\"action-button\"\n load={load || fetchingZapQuote}\n disabled={\n load ||\n bondData?.soldOut ||\n !account ||\n !inputValue ||\n parseFloat(inputValue) === 0 ||\n fetchingZapQuote ||\n zapError ||\n exceedsMaxBuy ||\n exceedsBalance ||\n (isZap && !zapData)\n }\n onClick={handleOpenModal}\n >\n {exceedsMaxBuy\n ? 'Exceeds Max Buy'\n : exceedsBalance\n ? 'Exceeds balance'\n : zapError\n ? 'something went wrong'\n : !inputValue || parseFloat(inputValue) === 0\n ? 'Insert amount'\n : isZap && fetchingZapQuote\n ? 'Loading'\n : `buy`}\n </Button>\n )}\n </Flex>\n </Flex>\n </Flex>\n </Flex>\n ) : (\n <></>\n )\n}\nexport default BuyBond\n"],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
@@ -78,7 +78,7 @@ const YourBonds = ({ showOnly }) => {
78
78
  if (bond?.bond?.vestingCliff) {
79
79
  return bond.payout !== '0';
80
80
  }
81
- return bond.pendingRewards !== '0';
81
+ return bond.totalPayout !== '0';
82
82
  });
83
83
  }
84
84
  // Handle sorting //
@@ -1 +1 @@
1
- {"version":3,"file":"YourBonds.js","sources":["../../../src/views/YourBonds/YourBonds.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useState } from 'react'\nimport { Flex, Spinner } from 'theme-ui'\nimport { UserBill } from '../../types/yourbonds'\nimport { useAccount } from 'wagmi'\nimport UserBondRow from './components/UserBondRow'\nimport { claimableUSD, pendingUSD, getTimeLeftForFullyVested } from '../../utils/displayHelpers'\nimport useUserBonds from '../../state/bonds/useUserBonds'\nimport useTokenPrices from '../../state/tokenPrices/useTokenPrices'\nimport PlaceholderMonkey from '../../components/PlaceholderMonkey'\nimport useChainFilterOption from '../../state/chainFilterOption/useChainFilterOption'\nimport YourBondsMenu from './components/YourBondsMenu/YourBondsMenu'\nimport usePreTGEUserBonds from '../../state/preTGEBonds/usePreTGEUserBonds'\nimport PreTGEUserRow from '../PreTGEBonds/components/PreTGEUserRows/PreTGEUserRow'\nimport { useSDKConfig } from '../../state/useSDKConfig'\n\nexport type SortableKeys = 'claimable' | 'pending' | 'terms'\ntype SortDirection = 'asc' | 'desc'\n\nconst YourBonds = ({ showOnly }: { showOnly?: string }) => {\n useTokenPrices()\n // Hooks\n const SDKConfig = useSDKConfig()\n const { address: account } = useAccount()\n const { data: userBonds, isFetched: userBondsFetched } = useUserBonds()\n const { data: chainFilterOption, setChainFilterOption } = useChainFilterOption()\n const { data: preTGEUserBonds } = usePreTGEUserBonds()\n const preTGEBondsToRender = preTGEUserBonds?.filter(\n (userBond) => parseFloat(userBond?.accountInfo?.depositAmount ?? '0') > 0,\n )\n\n // State\n const [sortConfig, setSortConfig] = useState<{ key: SortableKeys; direction: SortDirection } | null>({\n key: 'pending',\n direction: 'desc',\n })\n\n const [inputValue, setInputValue] = useState('')\n const filterOptions = ['CLAIMABLE', 'ALL']\n const [filterOption, setFilterOption] = useState(filterOptions[0])\n\n const handleSort = (key: SortableKeys) => {\n let direction: SortDirection = 'desc'\n if (sortConfig?.key === key && sortConfig?.direction === 'desc') {\n direction = 'asc'\n }\n setSortConfig({ key, direction })\n }\n const bondsToRender = useMemo((): UserBill[] => {\n if (!userBonds) return []\n let bondsToReturn = userBonds\n\n // Handle Filtering //\n\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return bond.bond?.onlyPartner ? bond.bond.bondPartner === SDKConfig.bondPartner : true\n })\n\n if (SDKConfig.bondPartner) {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return bond.bond?.bondPartner === SDKConfig.bondPartner\n })\n }\n\n // Filter Single Token View\n if (showOnly) {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return bond?.bond?.earnToken?.symbol?.toLowerCase() === showOnly.toLowerCase()\n })\n }\n\n // Filter by search query\n if (inputValue !== '') {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return [\n bond?.bond?.showcaseTokenName?.toLowerCase(),\n bond?.bond?.earnToken?.symbol?.toLowerCase(),\n bond?.bond?.lpToken?.symbol?.toLowerCase(),\n ].some((property) => property?.includes(inputValue.toLowerCase()))\n })\n }\n\n // Filter by chain selector\n if (!chainFilterOption.includes('All Chains')) {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return chainFilterOption.includes(bond?.bond?.chainId?.toString() ?? '')\n })\n }\n\n // Filter by filter option (claimable or all buttons)\n if (filterOption === 'CLAIMABLE') {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n if (bond?.bond?.vestingCliff) {\n return bond.payout !== '0'\n }\n return bond.pendingRewards !== '0'\n })\n }\n\n // Handle sorting //\n if (sortConfig !== null) {\n bondsToReturn = bondsToReturn?.sort((a, b) => {\n let aValue: number, bValue: number\n\n if (sortConfig.key === 'claimable') {\n aValue = claimableUSD(a)\n bValue = claimableUSD(b)\n } else if (sortConfig.key === 'pending') {\n aValue = pendingUSD(a)\n bValue = pendingUSD(b)\n } else if (sortConfig.key === 'terms') {\n // little nasty trick to have the lowest time (closest to being fully vested) show up first when sorting ascending\n const aRemainingTime = getTimeLeftForFullyVested(b)\n const bRemainingTime = getTimeLeftForFullyVested(a)\n\n aValue = aRemainingTime\n bValue = bRemainingTime\n } else {\n aValue = a[sortConfig.key]\n bValue = b[sortConfig.key]\n }\n\n if (aValue < bValue) {\n return sortConfig.direction === 'asc' ? -1 : 1\n }\n if (aValue > bValue) {\n return sortConfig.direction === 'asc' ? 1 : -1\n }\n return 0\n })\n }\n return bondsToReturn\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [userBonds, sortConfig, inputValue, chainFilterOption, filterOption, userBondsFetched])\n\n const handleFilterOption = useCallback((newOption: string) => {\n setFilterOption(newOption)\n }, [])\n\n return (\n <Flex className=\"yourbonds table-container\">\n {!showOnly && (\n <YourBondsMenu\n chainFilterOption={chainFilterOption}\n setChainFilterOption={setChainFilterOption}\n filterOptions={filterOptions}\n filterOption={filterOption}\n setFilterOption={handleFilterOption}\n setInputValue={setInputValue}\n inputValue={inputValue}\n handleSort={handleSort}\n />\n )}\n {!account ? (\n <PlaceholderMonkey text={'You are not connected.'} />\n ) : (bondsToRender && bondsToRender?.length > 0) || (preTGEBondsToRender && preTGEBondsToRender.length > 0) ? (\n <>\n {preTGEBondsToRender?.map((userBond, index) => (\n <PreTGEUserRow userBond={userBond} key={index} />\n ))}\n {bondsToRender?.map((bill: UserBill, index) => (\n <UserBondRow bill={bill} key={`${bill.id}-${index}`} />\n ))}\n </>\n ) : inputValue !== '' || !chainFilterOption.includes('All Chains') ? (\n <PlaceholderMonkey text={'No results, change filters.'} />\n ) : userBondsFetched && bondsToRender?.length === 0 ? (\n <PlaceholderMonkey text={'You do not own any Bonds.'} />\n ) : (\n <Flex className=\"yourbonds-spinner\">\n <Spinner size={100} />\n </Flex>\n )}\n </Flex>\n )\n}\n\nexport default YourBonds\n"],"names":["usePreTGEUserBonds","_jsxs","_jsx","_Fragment","PreTGEUserRow"],"mappings":"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"}
1
+ {"version":3,"file":"YourBonds.js","sources":["../../../src/views/YourBonds/YourBonds.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useState } from 'react'\nimport { Flex, Spinner } from 'theme-ui'\nimport { UserBill } from '../../types/yourbonds'\nimport { useAccount } from 'wagmi'\nimport UserBondRow from './components/UserBondRow'\nimport { claimableUSD, pendingUSD, getTimeLeftForFullyVested } from '../../utils/displayHelpers'\nimport useUserBonds from '../../state/bonds/useUserBonds'\nimport useTokenPrices from '../../state/tokenPrices/useTokenPrices'\nimport PlaceholderMonkey from '../../components/PlaceholderMonkey'\nimport useChainFilterOption from '../../state/chainFilterOption/useChainFilterOption'\nimport YourBondsMenu from './components/YourBondsMenu/YourBondsMenu'\nimport usePreTGEUserBonds from '../../state/preTGEBonds/usePreTGEUserBonds'\nimport PreTGEUserRow from '../PreTGEBonds/components/PreTGEUserRows/PreTGEUserRow'\nimport { useSDKConfig } from '../../state/useSDKConfig'\n\nexport type SortableKeys = 'claimable' | 'pending' | 'terms'\ntype SortDirection = 'asc' | 'desc'\n\nconst YourBonds = ({ showOnly }: { showOnly?: string }) => {\n useTokenPrices()\n // Hooks\n const SDKConfig = useSDKConfig()\n const { address: account } = useAccount()\n const { data: userBonds, isFetched: userBondsFetched } = useUserBonds()\n const { data: chainFilterOption, setChainFilterOption } = useChainFilterOption()\n const { data: preTGEUserBonds } = usePreTGEUserBonds()\n const preTGEBondsToRender = preTGEUserBonds?.filter(\n (userBond) => parseFloat(userBond?.accountInfo?.depositAmount ?? '0') > 0,\n )\n\n // State\n const [sortConfig, setSortConfig] = useState<{ key: SortableKeys; direction: SortDirection } | null>({\n key: 'pending',\n direction: 'desc',\n })\n\n const [inputValue, setInputValue] = useState('')\n const filterOptions = ['CLAIMABLE', 'ALL']\n const [filterOption, setFilterOption] = useState(filterOptions[0])\n\n const handleSort = (key: SortableKeys) => {\n let direction: SortDirection = 'desc'\n if (sortConfig?.key === key && sortConfig?.direction === 'desc') {\n direction = 'asc'\n }\n setSortConfig({ key, direction })\n }\n const bondsToRender = useMemo((): UserBill[] => {\n if (!userBonds) return []\n let bondsToReturn = userBonds\n\n // Handle Filtering //\n\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return bond.bond?.onlyPartner ? bond.bond.bondPartner === SDKConfig.bondPartner : true\n })\n\n if (SDKConfig.bondPartner) {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return bond.bond?.bondPartner === SDKConfig.bondPartner\n })\n }\n\n // Filter Single Token View\n if (showOnly) {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return bond?.bond?.earnToken?.symbol?.toLowerCase() === showOnly.toLowerCase()\n })\n }\n\n // Filter by search query\n if (inputValue !== '') {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return [\n bond?.bond?.showcaseTokenName?.toLowerCase(),\n bond?.bond?.earnToken?.symbol?.toLowerCase(),\n bond?.bond?.lpToken?.symbol?.toLowerCase(),\n ].some((property) => property?.includes(inputValue.toLowerCase()))\n })\n }\n\n // Filter by chain selector\n if (!chainFilterOption.includes('All Chains')) {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n return chainFilterOption.includes(bond?.bond?.chainId?.toString() ?? '')\n })\n }\n\n // Filter by filter option (claimable or all buttons)\n if (filterOption === 'CLAIMABLE') {\n bondsToReturn = bondsToReturn?.filter((bond) => {\n if (bond?.bond?.vestingCliff) {\n return bond.payout !== '0'\n }\n return bond.totalPayout !== '0'\n })\n }\n\n // Handle sorting //\n if (sortConfig !== null) {\n bondsToReturn = bondsToReturn?.sort((a, b) => {\n let aValue: number, bValue: number\n\n if (sortConfig.key === 'claimable') {\n aValue = claimableUSD(a)\n bValue = claimableUSD(b)\n } else if (sortConfig.key === 'pending') {\n aValue = pendingUSD(a)\n bValue = pendingUSD(b)\n } else if (sortConfig.key === 'terms') {\n // little nasty trick to have the lowest time (closest to being fully vested) show up first when sorting ascending\n const aRemainingTime = getTimeLeftForFullyVested(b)\n const bRemainingTime = getTimeLeftForFullyVested(a)\n\n aValue = aRemainingTime\n bValue = bRemainingTime\n } else {\n aValue = a[sortConfig.key]\n bValue = b[sortConfig.key]\n }\n\n if (aValue < bValue) {\n return sortConfig.direction === 'asc' ? -1 : 1\n }\n if (aValue > bValue) {\n return sortConfig.direction === 'asc' ? 1 : -1\n }\n return 0\n })\n }\n return bondsToReturn\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [userBonds, sortConfig, inputValue, chainFilterOption, filterOption, userBondsFetched])\n\n const handleFilterOption = useCallback((newOption: string) => {\n setFilterOption(newOption)\n }, [])\n\n return (\n <Flex className=\"yourbonds table-container\">\n {!showOnly && (\n <YourBondsMenu\n chainFilterOption={chainFilterOption}\n setChainFilterOption={setChainFilterOption}\n filterOptions={filterOptions}\n filterOption={filterOption}\n setFilterOption={handleFilterOption}\n setInputValue={setInputValue}\n inputValue={inputValue}\n handleSort={handleSort}\n />\n )}\n {!account ? (\n <PlaceholderMonkey text={'You are not connected.'} />\n ) : (bondsToRender && bondsToRender?.length > 0) || (preTGEBondsToRender && preTGEBondsToRender.length > 0) ? (\n <>\n {preTGEBondsToRender?.map((userBond, index) => (\n <PreTGEUserRow userBond={userBond} key={index} />\n ))}\n {bondsToRender?.map((bill: UserBill, index) => (\n <UserBondRow bill={bill} key={`${bill.id}-${index}`} />\n ))}\n </>\n ) : inputValue !== '' || !chainFilterOption.includes('All Chains') ? (\n <PlaceholderMonkey text={'No results, change filters.'} />\n ) : userBondsFetched && bondsToRender?.length === 0 ? (\n <PlaceholderMonkey text={'You do not own any Bonds.'} />\n ) : (\n <Flex className=\"yourbonds-spinner\">\n <Spinner size={100} />\n </Flex>\n )}\n </Flex>\n )\n}\n\nexport default YourBonds\n"],"names":["usePreTGEUserBonds","_jsxs","_jsx","_Fragment","PreTGEUserRow"],"mappings":"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"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Ape Bond SDK",
4
4
  "author": "Ape Bond",
5
5
  "license": "MIT",
6
- "version": "3.3.0-test.7",
6
+ "version": "3.3.0-test.8",
7
7
  "module": "dist/main.js",
8
8
  "type": "module",
9
9
  "types": "dist/main.d.ts",
@@ -52,41 +52,41 @@
52
52
  "devDependencies": {
53
53
  "@eslint/js": "^9.28.0",
54
54
  "@rainbow-me/rainbowkit": "2.2.11",
55
- "@rollup/plugin-commonjs": "^25.0.7",
56
- "@rollup/plugin-json": "^6.1.0",
57
- "@rollup/plugin-node-resolve": "^15.2.3",
58
- "@rollup/plugin-typescript": "^11.1.6",
55
+ "@rollup/plugin-commonjs": "25.0.8",
56
+ "@rollup/plugin-json": "6.1.0",
57
+ "@rollup/plugin-node-resolve": "15.3.1",
58
+ "@rollup/plugin-typescript": "11.1.6",
59
59
  "@tanstack/react-query": "5.81.5",
60
60
  "@tanstack/react-query-devtools": "5.81.5",
61
- "@types/dom-to-image": "^2.6.7",
62
- "@types/lodash": "^4.17.6",
63
- "@types/node": "^24.0.13",
61
+ "@types/dom-to-image": "2.6.7",
62
+ "@types/lodash": "4.17.24",
63
+ "@types/node": "24.13.3",
64
64
  "@types/react": "19.2.14",
65
65
  "@types/react-dom": "19.2.3",
66
- "@vitejs/plugin-react": "^4.2.1",
66
+ "@vitejs/plugin-react": "4.7.0",
67
67
  "axios": "1.18.1",
68
- "eslint": "^9.28.0",
69
- "eslint-plugin-react": "^7.37.5",
70
- "eslint-plugin-react-hooks": "^5.2.0",
71
- "husky": "^9.0.11",
72
- "lint-staged": "^16.1.0",
73
- "prettier": "^3.3.3",
68
+ "eslint": "9.39.5",
69
+ "eslint-plugin-react": "7.37.5",
70
+ "eslint-plugin-react-hooks": "5.2.0",
71
+ "husky": "9.1.7",
72
+ "lint-staged": "16.4.0",
73
+ "prettier": "3.9.5",
74
74
  "react": "19.2.4",
75
75
  "react-dom": "19.2.4",
76
76
  "rimraf": "5.0.10",
77
- "rollup": "^4.14.0",
78
- "rollup-plugin-scss": "^4.0.0",
79
- "sass": "^1.77.7",
80
- "typescript": "^5.0.0",
81
- "typescript-eslint": "^8.34.0",
77
+ "rollup": "4.62.2",
78
+ "rollup-plugin-scss": "4.0.1",
79
+ "sass": "1.101.0",
80
+ "typescript": "5.9.3",
81
+ "typescript-eslint": "8.65.0",
82
82
  "vite": "7.3.5"
83
83
  },
84
84
  "dependencies": {
85
- "@ape.swap/apeswap-lists": "4.5.11",
85
+ "@ape.swap/apeswap-lists": "4.8.3",
86
86
  "@emotion/react": "11.11.4",
87
87
  "bignumber.js": "^9.1.2",
88
88
  "chart.js": "4.2.0",
89
- "dom-to-image": "^2.6.0",
89
+ "dom-to-image": "2.6.0",
90
90
  "framer-motion": "^11.3.2",
91
91
  "lightweight-charts": "4.1.5",
92
92
  "lodash": "^4.17.21",