@ape.swap/bonds-sdk 5.1.40 → 5.1.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/uikit-sdk/Svg/Icons/GiftBoxPlain.d.ts +4 -0
- package/dist/components/uikit-sdk/Svg/Icons/GiftBoxPlain.js +10 -0
- package/dist/components/uikit-sdk/Svg/Icons/GiftBoxPlain.js.map +1 -0
- package/dist/components/uikit-sdk/Svg/index.js +3 -0
- package/dist/components/uikit-sdk/Svg/index.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/types.d.ts +1 -0
- package/dist/components/uikit-sdk/Svg/types.js +1 -0
- package/dist/components/uikit-sdk/Svg/types.js.map +1 -1
- package/dist/views/BuyBond/components/Estimations.js +39 -22
- package/dist/views/BuyBond/components/Estimations.js.map +1 -1
- package/dist/views/BuyBond/components/GetUpToComponent/GetUpToComponent.js +3 -23
- package/dist/views/BuyBond/components/GetUpToComponent/GetUpToComponent.js.map +1 -1
- package/dist/views/BuyBond/utils.js +3 -2
- package/dist/views/BuyBond/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'theme-ui/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
const GiftBoxPlain = ({ width }) => {
|
|
4
|
+
return (jsxs("svg", { width: width || '15',
|
|
5
|
+
// @ts-ignore
|
|
6
|
+
height: width ? Number(width) * (17 / 15) : '17', viewBox: "0 0 15 17", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsx("path", { d: "M3.75245 0.00693698C3.89293 -0.00845415 4.08361 0.00360447 4.22851 0.0250998C5.30305 0.184515 5.99251 1.14651 6.64986 1.91483C6.71404 1.98986 6.8366 2.17636 6.89266 2.26004C7.2029 2.7231 7.45788 2.65376 7.9351 2.72454C8.06841 2.59297 8.17344 2.41014 8.28572 2.26063C8.9849 1.32909 9.82355 0.181819 11.0676 0.0400192C11.5602 -0.0204889 12.0565 0.118815 12.4458 0.426824C12.8642 0.762139 13.1146 1.25363 13.1732 1.78316C13.2898 2.83807 12.7773 3.60683 11.911 4.15494C11.8475 4.19511 11.4298 4.41953 11.4241 4.42671C11.5213 4.51132 12.5855 4.49123 12.7753 4.4905L14.0316 4.48276C14.2728 4.47914 14.631 4.4718 14.8156 4.64878C15.0424 4.86618 14.9972 5.27186 14.9948 5.56325C14.9922 5.79621 14.9918 6.02919 14.9938 6.26216C14.9975 6.56835 14.9948 6.87511 14.9952 7.1819C14.9905 7.4088 15.0144 7.63701 14.9732 7.86116C14.8902 8.31229 14.5415 8.33097 14.1616 8.34397C13.7885 8.35665 13.4266 8.34208 13.0577 8.34184L10.2571 8.34192L8.11955 8.33766C8.12199 8.03572 8.11514 7.72894 8.11396 7.42646L8.11325 5.84617L8.11726 5.17741C8.1179 5.01835 8.11443 4.83295 8.12609 4.67624C7.90004 4.66966 7.67382 4.66683 7.44762 4.66775C7.30947 4.6681 7.08018 4.67017 6.94395 4.6918C6.94955 4.76075 6.95095 4.8287 6.95177 4.8978C6.95641 5.28923 6.95146 5.68118 6.95139 6.07269C6.95728 6.82822 6.95868 7.58379 6.95559 8.33932C6.81269 8.34184 6.66767 8.34019 6.52463 8.33987C5.58112 8.33774 4.63717 8.34736 3.69381 8.34712L2.19858 8.3487L1.3221 8.35082C1.07101 8.35106 0.760707 8.35658 0.513572 8.31363C0.40171 8.29519 0.298176 8.24287 0.216856 8.16392C-0.00231628 7.95141 0.0277788 7.57692 0.0200788 7.29218C0.0111151 6.97603 0.00529106 6.65979 0.00260738 6.34351C-0.000522132 6.04341 -0.022578 4.81174 0.147409 4.64817C0.253689 4.54591 0.45123 4.52208 0.591708 4.50499C0.966665 4.4594 1.34738 4.48238 1.72404 4.48472L3.06021 4.48517C3.25619 4.48571 3.45155 4.49416 3.64707 4.49254C3.55289 4.42163 3.40747 4.33713 3.30702 4.27584C2.55331 3.81604 1.96451 3.26078 1.90691 2.32374C1.86957 1.71627 1.99364 1.12512 2.4032 0.644979C2.76275 0.223488 3.21412 0.0486833 3.75245 0.00693698ZM8.81164 3.65713C9.0644 3.66714 9.31748 3.66195 9.56953 3.64159C10.3451 3.58917 11.2744 3.41166 11.8152 2.80219C12.1387 2.43753 12.0729 1.67752 11.7023 1.36033C11.5907 1.26472 11.4058 1.19667 11.2586 1.22764C10.7137 1.29492 10.3654 1.5172 9.98846 1.89485C9.83308 2.04953 9.68779 2.21399 9.55346 2.38721C9.30605 2.70388 8.94709 3.27563 8.81164 3.65713ZM5.37471 3.63389C5.50941 3.64275 5.64421 3.64991 5.77908 3.65535C5.85551 3.6578 5.94813 3.65509 6.02149 3.65994C6.07882 3.58846 6.15045 3.49359 6.20139 3.41707C5.88378 2.68234 4.97558 1.60048 4.2059 1.27496C4.12406 1.24035 3.98579 1.20446 3.89582 1.20462C3.66708 1.21 3.43145 1.32653 3.27592 1.49002C2.86951 1.91721 3.0417 2.57125 3.44729 2.93053C3.96747 3.39131 4.70302 3.56677 5.37471 3.63389Z", fill: "white" }), jsx("path", { d: "M3.88313 9.46265L6.9575 9.48573L6.9623 16.1087L4.02467 16.1186L2.93492 16.1159C2.3577 16.1153 1.71935 16.1879 1.27806 15.7349C0.912854 15.36 0.94627 14.8061 0.940352 14.314C0.93605 13.9323 0.93542 13.5504 0.938461 13.1687C0.932355 11.9342 0.935846 10.6997 0.948917 9.46533C1.09083 9.4944 1.45091 9.47793 1.60723 9.47533L2.38212 9.46911L3.36502 9.46777C3.529 9.46753 3.72266 9.47179 3.88313 9.46265Z", fill: "white" }), jsx("path", { d: "M9.85677 9.47062C9.89719 9.4666 10.0039 9.46857 10.047 9.46849L10.4324 9.46825C10.8295 9.46644 11.2266 9.46802 11.6237 9.47306L14.0549 9.48023C14.0408 9.66485 14.0541 9.99965 14.0552 10.1912C14.0572 10.5545 14.0581 10.9168 14.0581 11.2801L14.058 13.183L14.0594 14.1444C14.0609 14.4965 14.0673 14.8926 14.0002 15.2407C13.9682 15.4066 13.8023 15.6251 13.688 15.746C13.3275 16.127 12.8141 16.1069 12.3294 16.1146L8.11747 16.1118C8.12968 15.5466 8.11834 14.9379 8.11826 14.3676L8.12046 11.7571L8.11621 10.4655C8.1166 10.1554 8.11377 9.78233 8.14812 9.47487C8.59998 9.45864 9.0728 9.49378 9.52727 9.47448C9.636 9.46991 9.74741 9.47866 9.85677 9.47062Z", fill: "white" })] }));
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export { GiftBoxPlain as default };
|
|
10
|
+
//# sourceMappingURL=GiftBoxPlain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GiftBoxPlain.js","sources":["../../../../../src/components/uikit-sdk/Svg/Icons/GiftBoxPlain.tsx"],"sourcesContent":["import React from 'react'\nimport { SvgProps } from './types'\n\nconst GiftBoxPlain: React.FC<SvgProps> = ({ width }) => {\n return (\n <svg\n width={width || '15'}\n // @ts-ignore\n height={width ? Number(width) * (17 / 15) : '17'}\n viewBox=\"0 0 15 17\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M3.75245 0.00693698C3.89293 -0.00845415 4.08361 0.00360447 4.22851 0.0250998C5.30305 0.184515 5.99251 1.14651 6.64986 1.91483C6.71404 1.98986 6.8366 2.17636 6.89266 2.26004C7.2029 2.7231 7.45788 2.65376 7.9351 2.72454C8.06841 2.59297 8.17344 2.41014 8.28572 2.26063C8.9849 1.32909 9.82355 0.181819 11.0676 0.0400192C11.5602 -0.0204889 12.0565 0.118815 12.4458 0.426824C12.8642 0.762139 13.1146 1.25363 13.1732 1.78316C13.2898 2.83807 12.7773 3.60683 11.911 4.15494C11.8475 4.19511 11.4298 4.41953 11.4241 4.42671C11.5213 4.51132 12.5855 4.49123 12.7753 4.4905L14.0316 4.48276C14.2728 4.47914 14.631 4.4718 14.8156 4.64878C15.0424 4.86618 14.9972 5.27186 14.9948 5.56325C14.9922 5.79621 14.9918 6.02919 14.9938 6.26216C14.9975 6.56835 14.9948 6.87511 14.9952 7.1819C14.9905 7.4088 15.0144 7.63701 14.9732 7.86116C14.8902 8.31229 14.5415 8.33097 14.1616 8.34397C13.7885 8.35665 13.4266 8.34208 13.0577 8.34184L10.2571 8.34192L8.11955 8.33766C8.12199 8.03572 8.11514 7.72894 8.11396 7.42646L8.11325 5.84617L8.11726 5.17741C8.1179 5.01835 8.11443 4.83295 8.12609 4.67624C7.90004 4.66966 7.67382 4.66683 7.44762 4.66775C7.30947 4.6681 7.08018 4.67017 6.94395 4.6918C6.94955 4.76075 6.95095 4.8287 6.95177 4.8978C6.95641 5.28923 6.95146 5.68118 6.95139 6.07269C6.95728 6.82822 6.95868 7.58379 6.95559 8.33932C6.81269 8.34184 6.66767 8.34019 6.52463 8.33987C5.58112 8.33774 4.63717 8.34736 3.69381 8.34712L2.19858 8.3487L1.3221 8.35082C1.07101 8.35106 0.760707 8.35658 0.513572 8.31363C0.40171 8.29519 0.298176 8.24287 0.216856 8.16392C-0.00231628 7.95141 0.0277788 7.57692 0.0200788 7.29218C0.0111151 6.97603 0.00529106 6.65979 0.00260738 6.34351C-0.000522132 6.04341 -0.022578 4.81174 0.147409 4.64817C0.253689 4.54591 0.45123 4.52208 0.591708 4.50499C0.966665 4.4594 1.34738 4.48238 1.72404 4.48472L3.06021 4.48517C3.25619 4.48571 3.45155 4.49416 3.64707 4.49254C3.55289 4.42163 3.40747 4.33713 3.30702 4.27584C2.55331 3.81604 1.96451 3.26078 1.90691 2.32374C1.86957 1.71627 1.99364 1.12512 2.4032 0.644979C2.76275 0.223488 3.21412 0.0486833 3.75245 0.00693698ZM8.81164 3.65713C9.0644 3.66714 9.31748 3.66195 9.56953 3.64159C10.3451 3.58917 11.2744 3.41166 11.8152 2.80219C12.1387 2.43753 12.0729 1.67752 11.7023 1.36033C11.5907 1.26472 11.4058 1.19667 11.2586 1.22764C10.7137 1.29492 10.3654 1.5172 9.98846 1.89485C9.83308 2.04953 9.68779 2.21399 9.55346 2.38721C9.30605 2.70388 8.94709 3.27563 8.81164 3.65713ZM5.37471 3.63389C5.50941 3.64275 5.64421 3.64991 5.77908 3.65535C5.85551 3.6578 5.94813 3.65509 6.02149 3.65994C6.07882 3.58846 6.15045 3.49359 6.20139 3.41707C5.88378 2.68234 4.97558 1.60048 4.2059 1.27496C4.12406 1.24035 3.98579 1.20446 3.89582 1.20462C3.66708 1.21 3.43145 1.32653 3.27592 1.49002C2.86951 1.91721 3.0417 2.57125 3.44729 2.93053C3.96747 3.39131 4.70302 3.56677 5.37471 3.63389Z\"\n fill=\"white\"\n />\n <path\n d=\"M3.88313 9.46265L6.9575 9.48573L6.9623 16.1087L4.02467 16.1186L2.93492 16.1159C2.3577 16.1153 1.71935 16.1879 1.27806 15.7349C0.912854 15.36 0.94627 14.8061 0.940352 14.314C0.93605 13.9323 0.93542 13.5504 0.938461 13.1687C0.932355 11.9342 0.935846 10.6997 0.948917 9.46533C1.09083 9.4944 1.45091 9.47793 1.60723 9.47533L2.38212 9.46911L3.36502 9.46777C3.529 9.46753 3.72266 9.47179 3.88313 9.46265Z\"\n fill=\"white\"\n />\n <path\n d=\"M9.85677 9.47062C9.89719 9.4666 10.0039 9.46857 10.047 9.46849L10.4324 9.46825C10.8295 9.46644 11.2266 9.46802 11.6237 9.47306L14.0549 9.48023C14.0408 9.66485 14.0541 9.99965 14.0552 10.1912C14.0572 10.5545 14.0581 10.9168 14.0581 11.2801L14.058 13.183L14.0594 14.1444C14.0609 14.4965 14.0673 14.8926 14.0002 15.2407C13.9682 15.4066 13.8023 15.6251 13.688 15.746C13.3275 16.127 12.8141 16.1069 12.3294 16.1146L8.11747 16.1118C8.12968 15.5466 8.11834 14.9379 8.11826 14.3676L8.12046 11.7571L8.11621 10.4655C8.1166 10.1554 8.11377 9.78233 8.14812 9.47487C8.59998 9.45864 9.0728 9.49378 9.52727 9.47448C9.636 9.46991 9.74741 9.47866 9.85677 9.47062Z\"\n fill=\"white\"\n />\n </svg>\n )\n}\n\nexport default GiftBoxPlain\n"],"names":["_jsxs","_jsx"],"mappings":";;AAGA,MAAM,YAAY,GAAuB,CAAC,EAAE,KAAK,EAAE,KAAI;AACrD,IAAA,QACEA,IAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE,KAAK,IAAI,IAAI;;AAEpB,QAAA,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAChD,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,EAAA,QAAA,EAAA,CAElCC,GAAA,CAAA,MAAA,EAAA,EACE,CAAC,EAAC,qvFAAqvF,EACvvF,IAAI,EAAC,OAAO,EAAA,CACZ,EACFA,GAAA,CAAA,MAAA,EAAA,EACE,CAAC,EAAC,gZAAgZ,EAClZ,IAAI,EAAC,OAAO,EAAA,CACZ,EACFA,GAAA,CAAA,MAAA,EAAA,EACE,CAAC,EAAC,woBAAwoB,EAC1oB,IAAI,EAAC,OAAO,EAAA,CACZ,CAAA,EAAA,CACE;AAEV;;;;"}
|
|
@@ -42,6 +42,7 @@ import Tick from './Icons/Tick.js';
|
|
|
42
42
|
import TurnArrow from './Icons/TurnArrow.js';
|
|
43
43
|
import Discount from './Icons/Discount.js';
|
|
44
44
|
import GiftBox from './Icons/GiftBox.js';
|
|
45
|
+
import GiftBoxPlain from './Icons/GiftBoxPlain.js';
|
|
45
46
|
import GRAPHLINQ from './tokens/GraphLinq.js';
|
|
46
47
|
import SOL from './tokens/SOL.js';
|
|
47
48
|
import BLAST from './tokens/BLAST.js';
|
|
@@ -164,6 +165,8 @@ const Svg = ({ icon, ...props }) => {
|
|
|
164
165
|
return jsx(Discount, { ...props, getStyles: getStyles });
|
|
165
166
|
case icons.GIFTBOX:
|
|
166
167
|
return jsx(GiftBox, { ...props, getStyles: getStyles });
|
|
168
|
+
case icons.GIFTBOX_PLAIN:
|
|
169
|
+
return jsx(GiftBoxPlain, { ...props, getStyles: getStyles });
|
|
167
170
|
// ONLY TOKENS BELOW
|
|
168
171
|
case icons.BLAST:
|
|
169
172
|
return jsx(BLAST, { ...props, getStyles: getStyles });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/uikit-sdk/Svg/index.tsx"],"sourcesContent":["import { icons, SvgProps } from './types'\nimport { dynamicStyles } from './styles'\nimport { IconStyles } from './Icons/types'\nimport Arrow from './Icons/Arrow'\nimport Caret from './Icons/Caret'\nimport Website from './Icons/Website'\nimport External from './Icons/External'\nimport More from './Icons/More'\nimport Hamburger from './Icons/Hamburger'\nimport Twitter from './Icons/Twitter'\nimport Error from './Icons/Error'\nimport Close from './Icons/Close'\nimport Search from './Icons/Search'\nimport Success from './Icons/Success'\nimport QuestionCircle from './Icons/QuestionCircle'\nimport Question from './Icons/Question'\nimport Discord from './Icons/Discord'\nimport Reddit from './Icons/Reddit'\nimport Medium from './Icons/Medium'\nimport Instagram from './Icons/Instagram'\nimport ZapIcon from './Icons/ZapIcon'\nimport ZapArrow from './Icons/ZapArrow'\nimport Telegram from './Icons/Telegram'\nimport Cog from './Icons/Cog'\nimport PlaceholderMonkey from './Icons/PlaceholderMonkey'\nimport URL from './Icons/URL'\nimport DexScreener from './Icons/DexScreener'\nimport CoinGecko from './Icons/CoinGecko'\nimport Audit from './Icons/Audit'\nimport Fire from './Icons/Fire'\nimport Tag from './Icons/Tag'\nimport Insight from './Icons/Insight'\nimport Expand from './Icons/Expand'\nimport LineChart from './Icons/LineChart'\nimport Sort from './Icons/Sort'\nimport AllChains from './Icons/AllChains'\nimport Star from './Icons/Star'\nimport StarFilled from './Icons/StarFilled'\nimport FirePink from './Icons/FirePink'\nimport Timer from './Icons/Timer'\nimport Tick from './Icons/Tick'\nimport TurnArrow from './Icons/TurnArrow'\nimport Discount from './Icons/Discount'\nimport GiftBox from './Icons/GiftBox'\n\n// ONLY TOKENS BELOW\nimport GRAPHLINQ from './tokens/GraphLinq'\nimport SOL from './tokens/SOL'\nimport BLAST from './tokens/BLAST'\nimport CROSSFI from './tokens/CROSSFI'\nimport MONAD from './tokens/MONAD'\nimport SONIC from './tokens/SONIC'\nimport BERA from './tokens/BERA'\nimport KATANA from './tokens/KATANA'\nimport UNICHAIN from './tokens/UNICHAIN'\nimport MEGAETH from './tokens/MEGAETH'\nimport BNB from './tokens/BNB'\nimport ETH from './tokens/ETH'\nimport POLYGON from './tokens/POLYGON'\nimport TLOS from './tokens/TLOS'\nimport BSC from './tokens/BSC'\nimport ARBITRUM from './tokens/ARBITRUM'\nimport AVAX from './tokens/AVAX'\nimport FANTOM from './tokens/FANTOM'\nimport OPTIMISM from './tokens/OPTIMISM'\nimport CRONOS from './tokens/CRONOS'\nimport POLYGONZK from './tokens/POLYGONZK'\nimport CELO from './tokens/CELO'\nimport GNOSIS from './tokens/GNOSIS'\nimport OKX from './tokens/OKX'\nimport INEVM from './tokens/INEVM'\nimport LINEA from './tokens/LINEA'\nimport LIGHTLINK from './tokens/LIGHTLINK'\nimport IOTA from './tokens/IOTA'\nimport BASE from './tokens/BASE'\nimport HYPEREVM from './tokens/HYPEREVM'\n\nconst Svg: React.FC<SvgProps> = ({ icon, ...props }: any) => {\n const getStyles = ({ degree, color, margin }: IconStyles) =>\n dynamicStyles.generic({\n degree,\n color,\n margin,\n })\n switch (icon) {\n case icons.ARROW:\n return <Arrow {...props} getStyles={getStyles} />\n case icons.CARET:\n return <Caret {...props} getStyles={getStyles} />\n case icons.WEBSITE:\n return <Website {...props} getStyles={getStyles} />\n case icons.EXTERNAL:\n return <External {...props} getStyles={getStyles} />\n case icons.MORE:\n return <More {...props} getStyles={getStyles} />\n case icons.HAMBURGER:\n return <Hamburger {...props} getStyles={getStyles} />\n case icons.TWITTER:\n return <Twitter {...props} getStyles={getStyles} />\n case icons.ERROR:\n return <Error {...props} getStyles={getStyles} />\n case icons.CLOSE:\n return <Close {...props} getStyles={getStyles} />\n case icons.SEARCH:\n return <Search {...props} getStyles={getStyles} />\n case icons.SUCCESS:\n return <Success {...props} getStyles={getStyles} />\n case icons.QUESTION_CIRCLE:\n return <QuestionCircle {...props} getStyles={getStyles} />\n case icons.QUESTION:\n return <Question {...props} getStyles={getStyles} />\n case icons.DISCORD:\n return <Discord {...props} getStyles={getStyles} />\n case icons.REDDIT:\n return <Reddit {...props} getStyles={getStyles} />\n case icons.MEDIUM:\n return <Medium {...props} getStyles={getStyles} />\n case icons.INSTAGRAM:\n return <Instagram {...props} getStyles={getStyles} />\n case icons.ZAP_ICON:\n return <ZapIcon {...props} getStyles={getStyles} />\n case icons.ZAP_ARROW:\n return <ZapArrow {...props} getStyles={getStyles} color=\"white\" />\n case icons.TELEGRAM:\n return <Telegram {...props} getStyles={getStyles} />\n case icons.COG:\n return <Cog {...props} getStyles={getStyles} />\n case icons.PLACEHOLDER_MONKEY:\n return <PlaceholderMonkey {...props} getStyles={getStyles} />\n case icons.URL:\n return <URL {...props} getStyles={getStyles} />\n case icons.DEXSCREENER:\n return <DexScreener {...props} getStyles={getStyles} />\n case icons.COINGECKO:\n return <CoinGecko {...props} getStyles={getStyles} />\n case icons.AUDIT:\n return <Audit {...props} getStyles={getStyles} />\n case icons.FIRE:\n return <Fire {...props} getStyles={getStyles} />\n case icons.TAG:\n return <Tag {...props} getStyles={getStyles} />\n case icons.INSIGHT:\n return <Insight {...props} getStyles={getStyles} />\n case icons.EXPAND:\n return <Expand {...props} getStyles={getStyles} />\n case icons.LINE_CHART:\n return <LineChart {...props} getStyles={getStyles} />\n case icons.SORT:\n return <Sort {...props} getStyles={getStyles} />\n case icons.AllChains:\n return <AllChains {...props} getStyles={getStyles} />\n case icons.Star:\n return <Star {...props} getStyles={getStyles} />\n case icons.StarFilled:\n return <StarFilled {...props} getStyles={getStyles} />\n case icons.FirePink:\n return <FirePink {...props} getStyles={getStyles} />\n case icons.GRAPHLINQ:\n return <GRAPHLINQ {...props} getStyles={getStyles} />\n case icons.TIMER:\n return <Timer {...props} getStyles={getStyles} />\n case icons.TICK:\n return <Tick {...props} getStyles={getStyles} />\n case icons.TURN_ARROW:\n return <TurnArrow {...props} getStyles={getStyles} />\n case icons.DISCOUNT:\n return <Discount {...props} getStyles={getStyles} />\n case icons.GIFTBOX:\n return <GiftBox {...props} getStyles={getStyles} />\n\n // ONLY TOKENS BELOW\n case icons.BLAST:\n return <BLAST {...props} getStyles={getStyles} />\n case icons.CROSSFI:\n return <CROSSFI {...props} getStyles={getStyles} />\n case icons.MONAD:\n return <MONAD {...props} getStyles={getStyles} />\n case icons.SONIC:\n return <SONIC {...props} getStyles={getStyles} />\n case icons.BERA:\n return <BERA {...props} getStyles={getStyles} />\n case icons.SOL:\n return <SOL {...props} getStyles={getStyles} />\n case icons.KATANA:\n return <KATANA {...props} getStyles={getStyles} />\n case icons.UNICHAIN:\n return <UNICHAIN {...props} getStyles={getStyles} />\n case icons.MEGAETH:\n return <MEGAETH {...props} getStyles={getStyles} />\n case icons.BNB_TOKEN:\n return <BNB {...props} getStyles={getStyles} />\n case icons.ETH_TOKEN:\n return <ETH {...props} getStyles={getStyles} />\n case icons.POLYGON_TOKEN:\n return <POLYGON {...props} getStyles={getStyles} />\n case icons.TLOS_TOKEN:\n return <TLOS {...props} getStyles={getStyles} />\n case icons.BSC_TOKEN:\n return <BSC {...props} getStyles={getStyles} />\n case icons.ARBITRUM_TOKEN:\n return <ARBITRUM {...props} getStyles={getStyles} />\n case icons.AVAX_TOKEN:\n return <AVAX {...props} getStyles={getStyles} />\n case icons.FANTOM_TOKEN:\n return <FANTOM {...props} getStyles={getStyles} />\n case icons.OPTIMISM_TOKEN:\n return <OPTIMISM {...props} getStyles={getStyles} />\n case icons.CRONOS_TOKEN:\n return <CRONOS {...props} getStyles={getStyles} />\n case icons.POLYGONZK_TOKEN:\n return <POLYGONZK {...props} getStyles={getStyles} />\n case icons.CELO_TOKEN:\n return <CELO {...props} getStyles={getStyles} />\n case icons.GNOSIS_TOKEN:\n return <GNOSIS {...props} getStyles={getStyles} />\n case icons.OKX_TOKEN:\n return <OKX {...props} getStyles={getStyles} />\n case icons.INEVM:\n return <INEVM {...props} getStyles={getStyles} />\n case icons.LINEA:\n return <LINEA {...props} getStyles={getStyles} />\n case icons.LIGHTLINK:\n return <LIGHTLINK {...props} getStyles={getStyles} />\n case icons.IOTA:\n return <IOTA {...props} getStyles={getStyles} />\n case icons.BASE:\n return <BASE {...props} getStyles={getStyles} />\n case icons.HYPEREVM:\n return <HYPEREVM {...props} getStyles={getStyles} />\n // ONLY TOKENS ABOVE\n\n default:\n return null\n }\n}\n\nexport default Svg\n"],"names":["_jsx","Arrow","Success","ZapIcon","ZapArrow","Fire","MONAD","SONIC","ARBITRUM","OPTIMISM","OKX"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/uikit-sdk/Svg/index.tsx"],"sourcesContent":["import { icons, SvgProps } from './types'\nimport { dynamicStyles } from './styles'\nimport { IconStyles } from './Icons/types'\nimport Arrow from './Icons/Arrow'\nimport Caret from './Icons/Caret'\nimport Website from './Icons/Website'\nimport External from './Icons/External'\nimport More from './Icons/More'\nimport Hamburger from './Icons/Hamburger'\nimport Twitter from './Icons/Twitter'\nimport Error from './Icons/Error'\nimport Close from './Icons/Close'\nimport Search from './Icons/Search'\nimport Success from './Icons/Success'\nimport QuestionCircle from './Icons/QuestionCircle'\nimport Question from './Icons/Question'\nimport Discord from './Icons/Discord'\nimport Reddit from './Icons/Reddit'\nimport Medium from './Icons/Medium'\nimport Instagram from './Icons/Instagram'\nimport ZapIcon from './Icons/ZapIcon'\nimport ZapArrow from './Icons/ZapArrow'\nimport Telegram from './Icons/Telegram'\nimport Cog from './Icons/Cog'\nimport PlaceholderMonkey from './Icons/PlaceholderMonkey'\nimport URL from './Icons/URL'\nimport DexScreener from './Icons/DexScreener'\nimport CoinGecko from './Icons/CoinGecko'\nimport Audit from './Icons/Audit'\nimport Fire from './Icons/Fire'\nimport Tag from './Icons/Tag'\nimport Insight from './Icons/Insight'\nimport Expand from './Icons/Expand'\nimport LineChart from './Icons/LineChart'\nimport Sort from './Icons/Sort'\nimport AllChains from './Icons/AllChains'\nimport Star from './Icons/Star'\nimport StarFilled from './Icons/StarFilled'\nimport FirePink from './Icons/FirePink'\nimport Timer from './Icons/Timer'\nimport Tick from './Icons/Tick'\nimport TurnArrow from './Icons/TurnArrow'\nimport Discount from './Icons/Discount'\nimport GiftBox from './Icons/GiftBox'\nimport GiftBoxPlain from './Icons/GiftBoxPlain'\n\n// ONLY TOKENS BELOW\nimport GRAPHLINQ from './tokens/GraphLinq'\nimport SOL from './tokens/SOL'\nimport BLAST from './tokens/BLAST'\nimport CROSSFI from './tokens/CROSSFI'\nimport MONAD from './tokens/MONAD'\nimport SONIC from './tokens/SONIC'\nimport BERA from './tokens/BERA'\nimport KATANA from './tokens/KATANA'\nimport UNICHAIN from './tokens/UNICHAIN'\nimport MEGAETH from './tokens/MEGAETH'\nimport BNB from './tokens/BNB'\nimport ETH from './tokens/ETH'\nimport POLYGON from './tokens/POLYGON'\nimport TLOS from './tokens/TLOS'\nimport BSC from './tokens/BSC'\nimport ARBITRUM from './tokens/ARBITRUM'\nimport AVAX from './tokens/AVAX'\nimport FANTOM from './tokens/FANTOM'\nimport OPTIMISM from './tokens/OPTIMISM'\nimport CRONOS from './tokens/CRONOS'\nimport POLYGONZK from './tokens/POLYGONZK'\nimport CELO from './tokens/CELO'\nimport GNOSIS from './tokens/GNOSIS'\nimport OKX from './tokens/OKX'\nimport INEVM from './tokens/INEVM'\nimport LINEA from './tokens/LINEA'\nimport LIGHTLINK from './tokens/LIGHTLINK'\nimport IOTA from './tokens/IOTA'\nimport BASE from './tokens/BASE'\nimport HYPEREVM from './tokens/HYPEREVM'\n\nconst Svg: React.FC<SvgProps> = ({ icon, ...props }: any) => {\n const getStyles = ({ degree, color, margin }: IconStyles) =>\n dynamicStyles.generic({\n degree,\n color,\n margin,\n })\n switch (icon) {\n case icons.ARROW:\n return <Arrow {...props} getStyles={getStyles} />\n case icons.CARET:\n return <Caret {...props} getStyles={getStyles} />\n case icons.WEBSITE:\n return <Website {...props} getStyles={getStyles} />\n case icons.EXTERNAL:\n return <External {...props} getStyles={getStyles} />\n case icons.MORE:\n return <More {...props} getStyles={getStyles} />\n case icons.HAMBURGER:\n return <Hamburger {...props} getStyles={getStyles} />\n case icons.TWITTER:\n return <Twitter {...props} getStyles={getStyles} />\n case icons.ERROR:\n return <Error {...props} getStyles={getStyles} />\n case icons.CLOSE:\n return <Close {...props} getStyles={getStyles} />\n case icons.SEARCH:\n return <Search {...props} getStyles={getStyles} />\n case icons.SUCCESS:\n return <Success {...props} getStyles={getStyles} />\n case icons.QUESTION_CIRCLE:\n return <QuestionCircle {...props} getStyles={getStyles} />\n case icons.QUESTION:\n return <Question {...props} getStyles={getStyles} />\n case icons.DISCORD:\n return <Discord {...props} getStyles={getStyles} />\n case icons.REDDIT:\n return <Reddit {...props} getStyles={getStyles} />\n case icons.MEDIUM:\n return <Medium {...props} getStyles={getStyles} />\n case icons.INSTAGRAM:\n return <Instagram {...props} getStyles={getStyles} />\n case icons.ZAP_ICON:\n return <ZapIcon {...props} getStyles={getStyles} />\n case icons.ZAP_ARROW:\n return <ZapArrow {...props} getStyles={getStyles} color=\"white\" />\n case icons.TELEGRAM:\n return <Telegram {...props} getStyles={getStyles} />\n case icons.COG:\n return <Cog {...props} getStyles={getStyles} />\n case icons.PLACEHOLDER_MONKEY:\n return <PlaceholderMonkey {...props} getStyles={getStyles} />\n case icons.URL:\n return <URL {...props} getStyles={getStyles} />\n case icons.DEXSCREENER:\n return <DexScreener {...props} getStyles={getStyles} />\n case icons.COINGECKO:\n return <CoinGecko {...props} getStyles={getStyles} />\n case icons.AUDIT:\n return <Audit {...props} getStyles={getStyles} />\n case icons.FIRE:\n return <Fire {...props} getStyles={getStyles} />\n case icons.TAG:\n return <Tag {...props} getStyles={getStyles} />\n case icons.INSIGHT:\n return <Insight {...props} getStyles={getStyles} />\n case icons.EXPAND:\n return <Expand {...props} getStyles={getStyles} />\n case icons.LINE_CHART:\n return <LineChart {...props} getStyles={getStyles} />\n case icons.SORT:\n return <Sort {...props} getStyles={getStyles} />\n case icons.AllChains:\n return <AllChains {...props} getStyles={getStyles} />\n case icons.Star:\n return <Star {...props} getStyles={getStyles} />\n case icons.StarFilled:\n return <StarFilled {...props} getStyles={getStyles} />\n case icons.FirePink:\n return <FirePink {...props} getStyles={getStyles} />\n case icons.GRAPHLINQ:\n return <GRAPHLINQ {...props} getStyles={getStyles} />\n case icons.TIMER:\n return <Timer {...props} getStyles={getStyles} />\n case icons.TICK:\n return <Tick {...props} getStyles={getStyles} />\n case icons.TURN_ARROW:\n return <TurnArrow {...props} getStyles={getStyles} />\n case icons.DISCOUNT:\n return <Discount {...props} getStyles={getStyles} />\n case icons.GIFTBOX:\n return <GiftBox {...props} getStyles={getStyles} />\n case icons.GIFTBOX_PLAIN:\n return <GiftBoxPlain {...props} getStyles={getStyles} />\n\n // ONLY TOKENS BELOW\n case icons.BLAST:\n return <BLAST {...props} getStyles={getStyles} />\n case icons.CROSSFI:\n return <CROSSFI {...props} getStyles={getStyles} />\n case icons.MONAD:\n return <MONAD {...props} getStyles={getStyles} />\n case icons.SONIC:\n return <SONIC {...props} getStyles={getStyles} />\n case icons.BERA:\n return <BERA {...props} getStyles={getStyles} />\n case icons.SOL:\n return <SOL {...props} getStyles={getStyles} />\n case icons.KATANA:\n return <KATANA {...props} getStyles={getStyles} />\n case icons.UNICHAIN:\n return <UNICHAIN {...props} getStyles={getStyles} />\n case icons.MEGAETH:\n return <MEGAETH {...props} getStyles={getStyles} />\n case icons.BNB_TOKEN:\n return <BNB {...props} getStyles={getStyles} />\n case icons.ETH_TOKEN:\n return <ETH {...props} getStyles={getStyles} />\n case icons.POLYGON_TOKEN:\n return <POLYGON {...props} getStyles={getStyles} />\n case icons.TLOS_TOKEN:\n return <TLOS {...props} getStyles={getStyles} />\n case icons.BSC_TOKEN:\n return <BSC {...props} getStyles={getStyles} />\n case icons.ARBITRUM_TOKEN:\n return <ARBITRUM {...props} getStyles={getStyles} />\n case icons.AVAX_TOKEN:\n return <AVAX {...props} getStyles={getStyles} />\n case icons.FANTOM_TOKEN:\n return <FANTOM {...props} getStyles={getStyles} />\n case icons.OPTIMISM_TOKEN:\n return <OPTIMISM {...props} getStyles={getStyles} />\n case icons.CRONOS_TOKEN:\n return <CRONOS {...props} getStyles={getStyles} />\n case icons.POLYGONZK_TOKEN:\n return <POLYGONZK {...props} getStyles={getStyles} />\n case icons.CELO_TOKEN:\n return <CELO {...props} getStyles={getStyles} />\n case icons.GNOSIS_TOKEN:\n return <GNOSIS {...props} getStyles={getStyles} />\n case icons.OKX_TOKEN:\n return <OKX {...props} getStyles={getStyles} />\n case icons.INEVM:\n return <INEVM {...props} getStyles={getStyles} />\n case icons.LINEA:\n return <LINEA {...props} getStyles={getStyles} />\n case icons.LIGHTLINK:\n return <LIGHTLINK {...props} getStyles={getStyles} />\n case icons.IOTA:\n return <IOTA {...props} getStyles={getStyles} />\n case icons.BASE:\n return <BASE {...props} getStyles={getStyles} />\n case icons.HYPEREVM:\n return <HYPEREVM {...props} getStyles={getStyles} />\n // ONLY TOKENS ABOVE\n\n default:\n return null\n }\n}\n\nexport default Svg\n"],"names":["_jsx","Arrow","Success","ZapIcon","ZapArrow","Fire","MONAD","SONIC","ARBITRUM","OPTIMISM","OKX"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../src/components/uikit-sdk/Svg/types.ts"],"sourcesContent":["export enum icons {\n TURN_ARROW = 'turnArrow',\n CARET = 'caret',\n EXTERNAL = 'external',\n MORE = 'more',\n TWITTER = 'twitter',\n CLOSE = 'close',\n HAMBURGER = 'hamburger',\n SEARCH = 'search',\n QUESTION_CIRCLE = 'questionCircle',\n QUESTION = 'question',\n SUCCESS = 'success',\n ERROR = 'error',\n ARROW = 'arrow',\n ZAP_ARROW = 'ZapArrow',\n ZAP_ICON = 'ZapIcon',\n COG = 'cog',\n PLACEHOLDER_MONKEY = 'placeholderMonkey',\n INSIGHT = 'insight',\n EXPAND = 'expand',\n LINE_CHART = 'lineChart',\n URL = 'URL',\n DEXSCREENER = 'dexscreener',\n COINGECKO = 'coingecko',\n AUDIT = 'audit',\n FIRE = 'fire',\n TAG = 'tag',\n SORT = 'sort',\n AllChains = 'AllChains',\n Star = 'Star',\n StarFilled = 'StarFilled',\n FirePink = 'FirePink',\n TIMER = 'Timer',\n TICK = 'TICK',\n DISCOUNT = 'Discount',\n GIFTBOX = 'GiftBox',\n\n // ONLY TOKENS BELLOW\n BNB_TOKEN = 'bnb_token',\n ETH_TOKEN = 'eth_token',\n POLYGON_TOKEN = 'polygon_token',\n TLOS_TOKEN = 'tlos_token',\n BSC_TOKEN = 'bsc_token',\n ARBITRUM_TOKEN = 'arbitrum_token',\n AVAX_TOKEN = 'avax_token',\n OPTIMISM_TOKEN = 'optimism_token',\n FANTOM_TOKEN = 'fantom_token',\n CRONOS_TOKEN = 'cronos_token',\n POLYGONZK_TOKEN = 'polygonzk_token',\n CELO_TOKEN = 'celo_token',\n GNOSIS_TOKEN = 'gnosis_token',\n OKX_TOKEN = 'okx_token',\n INEVM = 'inEvm',\n LINEA = 'linea',\n LIGHTLINK = 'lightlink',\n IOTA = 'iota',\n BASE = 'base',\n BLAST = 'blast',\n CROSSFI = 'crossfi',\n MONAD = 'monad',\n SONIC = 'sonic',\n BERA = 'bera',\n SOL = 'sol',\n KATANA = 'katana',\n UNICHAIN = 'unichain',\n MEGAETH = 'megaeth',\n GRAPHLINQ = 'GRAPHLINQ',\n HYPEREVM = 'hyperevm',\n // ONLY TOKENS ABOVE\n\n // ONLY SOCIAL MEDIA BELOW\n DISCORD = 'discord',\n REDDIT = 'reddit',\n MEDIUM = 'medium',\n INSTAGRAM = 'instagram',\n WEBSITE = 'website',\n TELEGRAM = 'telegram',\n // ONLY SOCIAL MEDIA ABOVE\n}\n\nexport enum directions {\n LEFT = 'left',\n RIGHT = 'right',\n UP = 'up',\n DOWN = 'down',\n}\n\nexport type iconTypes = `${icons}`\ntype directionTypes = `${directions}`\n\nexport interface SvgProps {\n icon?: iconTypes\n direction?: directionTypes\n color?: string\n width?: string | number\n height?: string | number\n spin?: boolean\n margin?: string\n}\n"],"names":[],"mappings":"IAAY;AAAZ,CAAA,UAAY,KAAK,EAAA;AACf,IAAA,KAAA,CAAA,YAAA,CAAA,GAAA,WAAwB;AACxB,IAAA,KAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,KAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,KAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,KAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,KAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,KAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,KAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,KAAA,CAAA,iBAAA,CAAA,GAAA,gBAAkC;AAClC,IAAA,KAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,KAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,KAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,KAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,KAAA,CAAA,WAAA,CAAA,GAAA,UAAsB;AACtB,IAAA,KAAA,CAAA,UAAA,CAAA,GAAA,SAAoB;AACpB,IAAA,KAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,KAAA,CAAA,oBAAA,CAAA,GAAA,mBAAwC;AACxC,IAAA,KAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,KAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,KAAA,CAAA,YAAA,CAAA,GAAA,WAAwB;AACxB,IAAA,KAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,KAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,KAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,KAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,KAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,KAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,KAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,KAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,KAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,KAAA,CAAA,YAAA,CAAA,GAAA,YAAyB;AACzB,IAAA,KAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,KAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,KAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,KAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,KAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;;
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../src/components/uikit-sdk/Svg/types.ts"],"sourcesContent":["export enum icons {\n TURN_ARROW = 'turnArrow',\n CARET = 'caret',\n EXTERNAL = 'external',\n MORE = 'more',\n TWITTER = 'twitter',\n CLOSE = 'close',\n HAMBURGER = 'hamburger',\n SEARCH = 'search',\n QUESTION_CIRCLE = 'questionCircle',\n QUESTION = 'question',\n SUCCESS = 'success',\n ERROR = 'error',\n ARROW = 'arrow',\n ZAP_ARROW = 'ZapArrow',\n ZAP_ICON = 'ZapIcon',\n COG = 'cog',\n PLACEHOLDER_MONKEY = 'placeholderMonkey',\n INSIGHT = 'insight',\n EXPAND = 'expand',\n LINE_CHART = 'lineChart',\n URL = 'URL',\n DEXSCREENER = 'dexscreener',\n COINGECKO = 'coingecko',\n AUDIT = 'audit',\n FIRE = 'fire',\n TAG = 'tag',\n SORT = 'sort',\n AllChains = 'AllChains',\n Star = 'Star',\n StarFilled = 'StarFilled',\n FirePink = 'FirePink',\n TIMER = 'Timer',\n TICK = 'TICK',\n DISCOUNT = 'Discount',\n GIFTBOX = 'GiftBox',\n GIFTBOX_PLAIN = 'GiftBoxPlain',\n\n // ONLY TOKENS BELLOW\n BNB_TOKEN = 'bnb_token',\n ETH_TOKEN = 'eth_token',\n POLYGON_TOKEN = 'polygon_token',\n TLOS_TOKEN = 'tlos_token',\n BSC_TOKEN = 'bsc_token',\n ARBITRUM_TOKEN = 'arbitrum_token',\n AVAX_TOKEN = 'avax_token',\n OPTIMISM_TOKEN = 'optimism_token',\n FANTOM_TOKEN = 'fantom_token',\n CRONOS_TOKEN = 'cronos_token',\n POLYGONZK_TOKEN = 'polygonzk_token',\n CELO_TOKEN = 'celo_token',\n GNOSIS_TOKEN = 'gnosis_token',\n OKX_TOKEN = 'okx_token',\n INEVM = 'inEvm',\n LINEA = 'linea',\n LIGHTLINK = 'lightlink',\n IOTA = 'iota',\n BASE = 'base',\n BLAST = 'blast',\n CROSSFI = 'crossfi',\n MONAD = 'monad',\n SONIC = 'sonic',\n BERA = 'bera',\n SOL = 'sol',\n KATANA = 'katana',\n UNICHAIN = 'unichain',\n MEGAETH = 'megaeth',\n GRAPHLINQ = 'GRAPHLINQ',\n HYPEREVM = 'hyperevm',\n // ONLY TOKENS ABOVE\n\n // ONLY SOCIAL MEDIA BELOW\n DISCORD = 'discord',\n REDDIT = 'reddit',\n MEDIUM = 'medium',\n INSTAGRAM = 'instagram',\n WEBSITE = 'website',\n TELEGRAM = 'telegram',\n // ONLY SOCIAL MEDIA ABOVE\n}\n\nexport enum directions {\n LEFT = 'left',\n RIGHT = 'right',\n UP = 'up',\n DOWN = 'down',\n}\n\nexport type iconTypes = `${icons}`\ntype directionTypes = `${directions}`\n\nexport interface SvgProps {\n icon?: iconTypes\n direction?: directionTypes\n color?: string\n width?: string | number\n height?: string | number\n spin?: boolean\n margin?: string\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx, Fragment } from 'theme-ui/jsx-runtime';
|
|
|
2
2
|
import { getRawBonus, getPayoutAmount, getBonusColor } from '../../../utils/displayHelpers.js';
|
|
3
3
|
import { TooltipText } from '../../../config/constants/tooltips.js';
|
|
4
4
|
import { findHighestTrueBondPrice } from '../../../utils/bondPriceHelpers.js';
|
|
5
|
-
import useTierPoints, { getUserTier, TIERS_NAMES, TIERS_COLORS, TIERS_BG } from '../../../state/tiers/useTierPoints.js';
|
|
5
|
+
import useTierPoints, { Promotions, getUserTier, TIERS_NAMES, TIERS_COLORS, TIERS_BG } from '../../../state/tiers/useTierPoints.js';
|
|
6
6
|
import { useSDKConfig } from '../../../state/useSDKConfig.js';
|
|
7
7
|
import { formatNumberSI } from '../../../utils/formatNumber.js';
|
|
8
8
|
import { BillVersion } from '@ape.swap/apeswap-lists';
|
|
@@ -16,9 +16,27 @@ import { useAbondPrice } from '../../../state/tokenPrices/useAbondPrice.js';
|
|
|
16
16
|
import TokenImage from '../../../components/uikit-sdk/TokenImage/index.js';
|
|
17
17
|
import { tierOptimizerUIEnabled } from '../../../config/constants/variables.js';
|
|
18
18
|
|
|
19
|
+
const DEFAULT_BOOST_PRESENTATION = {
|
|
20
|
+
label: 'Boost',
|
|
21
|
+
iconType: 'tierMonkey',
|
|
22
|
+
};
|
|
23
|
+
const PROMOTION_BOOST_PRESENTATIONS = {
|
|
24
|
+
[Promotions.WelcomeBonus]: {
|
|
25
|
+
label: 'Welcome Bonus',
|
|
26
|
+
iconType: 'svg',
|
|
27
|
+
iconName: 'GiftBoxPlain',
|
|
28
|
+
iconWidth: 15,
|
|
29
|
+
iconSx: { mr: '3px', lineHeight: '21px', mt: '-4px' },
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
const getBoostPresentation = (promotion) => {
|
|
33
|
+
if (!promotion)
|
|
34
|
+
return DEFAULT_BOOST_PRESENTATION;
|
|
35
|
+
return PROMOTION_BOOST_PRESENTATIONS[promotion] ?? DEFAULT_BOOST_PRESENTATION;
|
|
36
|
+
};
|
|
19
37
|
const Estimations = ({ depositAmount, inputValue, inputTokenPrice, bondData, youSpendString, isZap, fetchingZapQuote, zapError, }) => {
|
|
20
38
|
const { data: tierPointsState } = useTierPoints();
|
|
21
|
-
const { promotionalPoints } = tierPointsState || {};
|
|
39
|
+
const { promotionalPoints, promotion } = tierPointsState || {};
|
|
22
40
|
const abondPrice = useAbondPrice();
|
|
23
41
|
const trueBondPrice = findHighestTrueBondPrice(promotionalPoints, bondData?.trueBondPrices);
|
|
24
42
|
const SDKConfig = useSDKConfig();
|
|
@@ -34,6 +52,7 @@ const Estimations = ({ depositAmount, inputValue, inputTokenPrice, bondData, you
|
|
|
34
52
|
const boostAmount = parseFloat(getRawBonus(bondData, depositAmount, promotionalPoints ?? '0')) - parseFloat(noTierAmount);
|
|
35
53
|
const optimizationData = calculateOptimizationData(inputValue ?? '', promotionalPoints, bondData, inputTokenPrice, abondPrice);
|
|
36
54
|
const highestProfitableTier = optimizationData?.highestProfitableTier;
|
|
55
|
+
const boostPresentation = getBoostPresentation(promotion);
|
|
37
56
|
return (jsxs(Flex, { className: "modaltable-container text-container", children: [jsxs(Flex, { className: "text-container row", children: [jsx(Flex, { className: "row-container spend", children: "You Spend:" }), jsx(Flex, { className: "row-container spend-val", children: youSpendString })] }), jsxs(Flex, { className: "text-container row", children: [jsxs(Flex, { className: "row-container premium", children: [!!userTier && !!promotionalPoints && SDKConfig.useTiers && bondData.billVersion === BillVersion.V4
|
|
38
57
|
? 'Base Bonus:'
|
|
39
58
|
: 'Bonus:', jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(Flex, { children: (bondData?.feeInPayout || 0) > 0
|
|
@@ -45,15 +64,13 @@ const Estimations = ({ depositAmount, inputValue, inputTokenPrice, bondData, you
|
|
|
45
64
|
py: '2px',
|
|
46
65
|
position: 'relative',
|
|
47
66
|
justifyContent: 'space-between',
|
|
48
|
-
}, children: [jsxs(Flex, { className: "row-container premium", sx: { zIndex: 1 }, children: [jsx("img", { src: `https://ape.bond/images/launch/${tierName?.toLowerCase()}.png`, alt: "minTier", style: { width: '21px', height: '21px', marginRight: '3px', zIndex: 1 } }),
|
|
67
|
+
}, children: [jsxs(Flex, { className: "row-container premium", sx: { zIndex: 1 }, children: [boostPresentation.iconType === 'svg' ? (jsx(Flex, { sx: boostPresentation.iconSx, children: jsx(Svg, { icon: boostPresentation.iconName, width: boostPresentation.iconWidth }) })) : (jsx("img", { src: `https://ape.bond/images/launch/${tierName?.toLowerCase()}.png`, alt: "minTier", style: { width: '21px', height: '21px', marginRight: '3px', zIndex: 1 } })), boostPresentation.label, jsx(Flex, { sx: { color: 'success', mx: '3px', fontWeight: 700 }, children: `+${trueBondPrice?.boost ?? 0}%` }), jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(Flex, { children: TooltipText.Boost }), width: "230px", placement: "bottomLeft", transformTip: "translate(-5%, 0%)", children: jsx(Flex, { className: "row-container premium-icon", children: jsx(Svg, { icon: "questionCircle", width: "12px" }) }) })] }), isZap && fetchingZapQuote ? (jsx(Dots, {})) : isZap && zapError ? ('-') : (jsxs(Flex, { className: `row-container premium-val premium-positive`, children: ["$ ", formatNumberSI(boostAmount)] }))] })), jsxs(Flex, { sx: {
|
|
49
68
|
border: '1px solid #9960C5',
|
|
50
69
|
borderRadius: 'normal',
|
|
51
70
|
mx: '-8px',
|
|
52
71
|
px: '8px',
|
|
53
72
|
py: '4px',
|
|
54
73
|
position: 'relative',
|
|
55
|
-
flexDirection: 'column',
|
|
56
|
-
gap: '3px',
|
|
57
74
|
}, children: [jsx(Flex, { sx: {
|
|
58
75
|
position: 'absolute',
|
|
59
76
|
width: '100%',
|
|
@@ -64,23 +81,23 @@ const Estimations = ({ depositAmount, inputValue, inputTokenPrice, bondData, you
|
|
|
64
81
|
background: '#9960C5',
|
|
65
82
|
opacity: 0.2,
|
|
66
83
|
borderRadius: 'normal',
|
|
67
|
-
} }), jsxs(Flex, { sx: { width: '100%', justifyContent: 'space-between', height: '21px' }, children: [jsxs(Flex, { className: "row-container get", children: ["You Get (over ", getTimePeriods(bondData?.vestingTerm, true).days, " days):"] }), isZap && fetchingZapQuote ? (jsx(Dots, {})) : isZap && zapError ? ('-') : (jsxs(Flex, { className: "row-container get-val", children: [formatNumberSI(estimatedOutputAmount, 4), " ", bondData?.showcaseTokenName, " = $", ' ', formatNumberSI(estimatedOutputUSD, 2)] }))] }), (bondData.tierBoostRate || highestProfitableTier) && (jsxs(Flex, { sx: { width: '100%', justifyContent: 'space-between', height: '21px' }, children: [jsxs(Flex, { className: "row-container get", children: ["Ape Points Earned:", jsx(Flex, { sx: { ml: '5px' }, children: jsx(TooltipBubble, { body: 'This purchase will earn you Ape Points. Ape Points provide a weekly yield in USDT and count toward your Ape Tier progression. Unlock higher Ape Tiers to get extra discounts on all Bonds.', width: ['200px', '200px', '200px', '250px'], placement: "bottomLeft", transformTip: [
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
} }), jsxs(Flex, { sx: { width: '100%', justifyContent: 'space-between', height: '21px' }, children: [jsxs(Flex, { className: "row-container get", sx: { zIndex: 1 }, children: ["You Get (over ", getTimePeriods(bondData?.vestingTerm, true).days, " days):"] }), isZap && fetchingZapQuote ? (jsx(Dots, {})) : isZap && zapError ? ('-') : (jsxs(Flex, { className: "row-container get-val", sx: { zIndex: 1 }, children: [formatNumberSI(estimatedOutputAmount, 4), " ", bondData?.showcaseTokenName, " = $", ' ', formatNumberSI(estimatedOutputUSD, 2)] }))] })] }), (bondData.tierBoostRate || highestProfitableTier) && (jsxs(Flex, { sx: { width: '100%', justifyContent: 'space-between', height: '21px', mt: '3px' }, children: [jsxs(Flex, { className: "row-container get", children: ["Ape Points Earned:", jsx(Flex, { sx: { ml: '5px' }, children: jsx(TooltipBubble, { body: 'This purchase will earn you Ape Points. Ape Points provide a weekly yield in USDT and count toward your Ape Tier progression. Unlock higher Ape Tiers to get extra discounts on all Bonds.', width: ['200px', '200px', '200px', '250px'], placement: "bottomLeft", transformTip: [
|
|
85
|
+
'translate(-8%, 0%)',
|
|
86
|
+
'translate(-8%, 0%)',
|
|
87
|
+
'translate(-8%, 0%)',
|
|
88
|
+
'translate(-7%, 0%)',
|
|
89
|
+
], children: jsx(Svg, { icon: "questionCircle", width: "12px" }) }) })] }), isZap && fetchingZapQuote ? (jsx(Dots, {})) : isZap && zapError ? ('-') : (jsx(Flex, { className: "row-container get-val", children: jsxs(Flex, { sx: { alignItems: 'center', gap: '5px' }, children: [highestProfitableTier || optimizationData?.tierBoostPoints ? (jsxs(Fragment, { children: [jsx(TokenImage, { symbol: 'veABOND', size: 15 }), formatNumberSI(highestProfitableTier && tierOptimizerUIEnabled
|
|
90
|
+
? highestProfitableTier.necessaryPointsToUpgrade
|
|
91
|
+
: optimizationData?.tierBoostPoints, 2, true), jsx(Flex, { children: "points" })] })) : ('-'), highestProfitableTier && tierOptimizerUIEnabled && (jsxs(Fragment, { children: ["+", jsxs(Flex, { sx: {
|
|
92
|
+
px: '3px',
|
|
93
|
+
height: '24px',
|
|
94
|
+
background: TIERS_BG[highestProfitableTier.tier],
|
|
95
|
+
border: `2px solid ${TIERS_COLORS[highestProfitableTier.tier]}`,
|
|
96
|
+
borderRadius: '5px',
|
|
97
|
+
fontWeight: 700,
|
|
98
|
+
alignItems: 'center',
|
|
99
|
+
minWidth: highestProfitableTier.tier > 2 && '118px',
|
|
100
|
+
}, children: [jsx("img", { src: `https://ape.bond/images/launch/${highestProfitableTier?.tierName?.toLowerCase()}.png`, alt: "minTier", style: { width: '21px', height: '21px', marginRight: '3px', zIndex: 1 } }), highestProfitableTier.tierName, " Tier"] })] }))] }) }))] }))] }));
|
|
84
101
|
};
|
|
85
102
|
|
|
86
103
|
export { Estimations as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Estimations.js","sources":["../../../../src/views/BuyBond/components/Estimations.tsx"],"sourcesContent":["import React from 'react'\nimport { getBonusColor, getPayoutAmount, getRawBonus } from '../../../utils/displayHelpers'\nimport { TooltipText } from '../../../config/constants/tooltips'\nimport { findHighestTrueBondPrice } from '../../../utils/bondPriceHelpers'\nimport { BondsData } from '../../../types/bonds'\nimport useTierPoints, {\n getUserTier,\n NewTiers,\n TIERS_BG,\n TIERS_COLORS,\n TIERS_NAMES,\n} from '../../../state/tiers/useTierPoints'\nimport { useSDKConfig } from '../../../state/useSDKConfig'\nimport { formatNumberSI } from '../../../utils/formatNumber'\nimport { BillVersion } from '@ape.swap/apeswap-lists'\nimport { getTimePeriods } from '../../../utils/getTimePeriods'\nimport Flex from '../../../components/uikit-sdk/Flex'\nimport TooltipBubble from '../../../components/uikit-sdk/TooltipBubble'\nimport Svg from '../../../components/uikit-sdk/Svg'\nimport LoadingDots from '../../../components/uikit-sdk/LoadingDots'\nimport { calculateOptimizationData } from '../utils'\nimport { useAbondPrice } from '../../../state/tokenPrices/useAbondPrice'\nimport TokenImage from '../../../components/uikit-sdk/TokenImage'\nimport { tierOptimizerUIEnabled } from '../../../config/constants/variables'\n\nconst Estimations = ({\n depositAmount,\n inputValue,\n inputTokenPrice,\n bondData,\n youSpendString,\n isZap,\n fetchingZapQuote,\n zapError,\n}: {\n depositAmount: string // actually deposited (after zap fees and estimations)\n inputValue?: string // input amount selected on the UI\n inputTokenPrice?: number\n bondData: BondsData\n youSpendString?: string\n isZap?: boolean\n fetchingZapQuote?: boolean\n zapError?: boolean\n}) => {\n const { data: tierPointsState } = useTierPoints()\n const { promotionalPoints } = tierPointsState || {}\n const abondPrice = useAbondPrice()\n const trueBondPrice = findHighestTrueBondPrice(promotionalPoints, bondData?.trueBondPrices)\n const SDKConfig = useSDKConfig()\n const userTier = getUserTier(promotionalPoints)\n const tierName = userTier ? TIERS_NAMES[userTier] : ''\n\n // Estimations\n const bonusString = getRawBonus(bondData, depositAmount, '0')\n // const fee = getFeeAmount(bondData, depositAmount, userPoints ?? '0')\n // const feeUSD = fee * parseFloat(bondData?.payoutTokenPrice ?? '0')\n\n const estimatedOutputAmount = getPayoutAmount(bondData, depositAmount, promotionalPoints)\n const estimatedOutputUSD = estimatedOutputAmount * parseFloat(bondData?.payoutTokenPrice ?? '0')\n\n const noTierAmount = getRawBonus(bondData, depositAmount, '0')\n const boostAmount =\n parseFloat(getRawBonus(bondData, depositAmount, promotionalPoints ?? '0')) - parseFloat(noTierAmount)\n\n const optimizationData = calculateOptimizationData(\n inputValue ?? '',\n promotionalPoints!,\n bondData,\n inputTokenPrice,\n abondPrice,\n )\n const highestProfitableTier = optimizationData?.highestProfitableTier\n\n return (\n <Flex className=\"modaltable-container text-container\">\n <Flex className=\"text-container row\">\n <Flex className=\"row-container spend\">You Spend:</Flex>\n <Flex className=\"row-container spend-val\">{youSpendString}</Flex>\n </Flex>\n <Flex className=\"text-container row\">\n <Flex className=\"row-container premium\">\n {!!userTier && !!promotionalPoints && SDKConfig.useTiers && bondData.billVersion === BillVersion.V4\n ? 'Base Bonus:'\n : 'Bonus:'}\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={\n <Flex>\n {(bondData?.feeInPayout || 0) > 0\n ? `This is the dollar value of the bonus tokens you’ll receive at current market price, already accounting for the protocol fee (${bondData.feeInPayout}%)`\n : 'This is the dollar value of the bonus tokens you’ll receive at current market price.'}\n </Flex>\n }\n width=\"230px\"\n placement=\"bottomLeft\"\n transformTip=\"translate(-5%, 0%)\"\n >\n <Flex className=\"row-container premium-icon\">\n <Svg icon=\"questionCircle\" width=\"12px\" />\n </Flex>\n </TooltipBubble>\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className={`row-container premium-val ${getBonusColor(bonusString)}`}>\n $ {formatNumberSI(bonusString)}\n </Flex>\n )}\n </Flex>\n {trueBondPrice?.points !== '0' && userTier && promotionalPoints && SDKConfig.useTiers && (\n <Flex\n sx={{\n borderRadius: 'normal',\n mx: '-8px',\n px: '8px',\n py: '2px',\n position: 'relative',\n justifyContent: 'space-between',\n }}\n >\n <Flex className=\"row-container premium\" sx={{ zIndex: 1 }}>\n <img\n src={`https://ape.bond/images/launch/${tierName?.toLowerCase()}.png`}\n alt=\"minTier\"\n style={{ width: '21px', height: '21px', marginRight: '3px', zIndex: 1 }}\n />\n Boost\n <Flex sx={{ color: 'success', mx: '3px', fontWeight: 700 }}>{`+${trueBondPrice?.boost ?? 0}%`}</Flex>\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={<Flex>{TooltipText.Boost}</Flex>}\n width=\"230px\"\n placement=\"bottomLeft\"\n transformTip=\"translate(-5%, 0%)\"\n >\n <Flex className=\"row-container premium-icon\">\n <Svg icon=\"questionCircle\" width=\"12px\" />\n </Flex>\n </TooltipBubble>\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className={`row-container premium-val premium-positive`}>$ {formatNumberSI(boostAmount)}</Flex>\n )}\n </Flex>\n )}\n <Flex\n sx={{\n border: '1px solid #9960C5',\n borderRadius: 'normal',\n mx: '-8px',\n px: '8px',\n py: '4px',\n position: 'relative',\n flexDirection: 'column',\n gap: '3px',\n }}\n >\n <Flex\n sx={{\n position: 'absolute',\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n zIndex: 0,\n background: '#9960C5',\n opacity: 0.2,\n borderRadius: 'normal',\n }}\n />\n <Flex sx={{ width: '100%', justifyContent: 'space-between', height: '21px' }}>\n <Flex className=\"row-container get\">\n You Get (over {getTimePeriods(bondData?.vestingTerm, true).days} days):\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className=\"row-container get-val\">\n {formatNumberSI(estimatedOutputAmount, 4)} {bondData?.showcaseTokenName} = ${' '}\n {formatNumberSI(estimatedOutputUSD, 2)}\n </Flex>\n )}\n </Flex>\n {(bondData.tierBoostRate || highestProfitableTier) && (\n <Flex sx={{ width: '100%', justifyContent: 'space-between', height: '21px' }}>\n <Flex className=\"row-container get\">\n Ape Points Earned:\n <Flex sx={{ ml: '5px' }}>\n <TooltipBubble\n body={\n 'This purchase will earn you Ape Points. Ape Points provide a weekly yield in USDT and count toward your Ape Tier progression. Unlock higher Ape Tiers to get extra discounts on all Bonds.'\n }\n width={['200px', '200px', '200px', '250px']}\n placement=\"bottomLeft\"\n transformTip={[\n 'translate(-8%, 0%)',\n 'translate(-8%, 0%)',\n 'translate(-8%, 0%)',\n 'translate(-7%, 0%)',\n ]}\n >\n <Svg icon=\"questionCircle\" width=\"12px\" />\n </TooltipBubble>\n </Flex>\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className=\"row-container get-val\">\n <Flex sx={{ alignItems: 'center', gap: '5px' }}>\n {highestProfitableTier || optimizationData?.tierBoostPoints ? (\n <>\n <TokenImage symbol={'veABOND'} size={15} />\n {formatNumberSI(\n highestProfitableTier && tierOptimizerUIEnabled\n ? highestProfitableTier.necessaryPointsToUpgrade\n : optimizationData?.tierBoostPoints,\n 2,\n true,\n )}\n <Flex>points</Flex>\n </>\n ) : (\n '-'\n )}\n {highestProfitableTier && tierOptimizerUIEnabled && (\n <>\n +\n <Flex\n sx={{\n px: '3px',\n height: '24px',\n background: TIERS_BG[highestProfitableTier.tier as NewTiers],\n border: `2px solid ${TIERS_COLORS[highestProfitableTier.tier as NewTiers]}`,\n borderRadius: '5px',\n fontWeight: 700,\n alignItems: 'center',\n minWidth: highestProfitableTier.tier > 2 && '118px',\n }}\n >\n <img\n src={`https://ape.bond/images/launch/${highestProfitableTier?.tierName?.toLowerCase()}.png`}\n alt=\"minTier\"\n style={{ width: '21px', height: '21px', marginRight: '3px', zIndex: 1 }}\n />\n {highestProfitableTier.tierName} Tier\n </Flex>\n </>\n )}\n </Flex>\n </Flex>\n )}\n </Flex>\n )}\n </Flex>\n </Flex>\n )\n}\n\nexport default Estimations\n"],"names":["_jsxs","_jsx","LoadingDots","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Estimations.js","sources":["../../../../src/views/BuyBond/components/Estimations.tsx"],"sourcesContent":["import React from 'react'\nimport { getBonusColor, getPayoutAmount, getRawBonus } from '../../../utils/displayHelpers'\nimport { TooltipText } from '../../../config/constants/tooltips'\nimport { findHighestTrueBondPrice } from '../../../utils/bondPriceHelpers'\nimport { BondsData } from '../../../types/bonds'\nimport useTierPoints, {\n getUserTier,\n NewTiers,\n Promotions,\n TIERS_BG,\n TIERS_COLORS,\n TIERS_NAMES,\n} from '../../../state/tiers/useTierPoints'\nimport { useSDKConfig } from '../../../state/useSDKConfig'\nimport { formatNumberSI } from '../../../utils/formatNumber'\nimport { BillVersion } from '@ape.swap/apeswap-lists'\nimport { getTimePeriods } from '../../../utils/getTimePeriods'\nimport Flex from '../../../components/uikit-sdk/Flex'\nimport TooltipBubble from '../../../components/uikit-sdk/TooltipBubble'\nimport Svg from '../../../components/uikit-sdk/Svg'\nimport LoadingDots from '../../../components/uikit-sdk/LoadingDots'\nimport { calculateOptimizationData } from '../utils'\nimport { useAbondPrice } from '../../../state/tokenPrices/useAbondPrice'\nimport TokenImage from '../../../components/uikit-sdk/TokenImage'\nimport { tierOptimizerUIEnabled } from '../../../config/constants/variables'\n\ntype BoostPresentation = {\n label: string\n iconType: 'tierMonkey' | 'svg'\n iconName?: 'GiftBoxPlain'\n iconWidth?: number\n iconSx?: Record<string, string | number>\n}\n\nconst DEFAULT_BOOST_PRESENTATION: BoostPresentation = {\n label: 'Boost',\n iconType: 'tierMonkey',\n}\n\nconst PROMOTION_BOOST_PRESENTATIONS: Partial<Record<Promotions, BoostPresentation>> = {\n [Promotions.WelcomeBonus]: {\n label: 'Welcome Bonus',\n iconType: 'svg',\n iconName: 'GiftBoxPlain',\n iconWidth: 15,\n iconSx: { mr: '3px', lineHeight: '21px', mt: '-4px' },\n },\n}\n\nconst getBoostPresentation = (promotion?: Promotions | null): BoostPresentation => {\n if (!promotion) return DEFAULT_BOOST_PRESENTATION\n return PROMOTION_BOOST_PRESENTATIONS[promotion] ?? DEFAULT_BOOST_PRESENTATION\n}\n\nconst Estimations = ({\n depositAmount,\n inputValue,\n inputTokenPrice,\n bondData,\n youSpendString,\n isZap,\n fetchingZapQuote,\n zapError,\n}: {\n depositAmount: string // actually deposited (after zap fees and estimations)\n inputValue?: string // input amount selected on the UI\n inputTokenPrice?: number\n bondData: BondsData\n youSpendString?: string\n isZap?: boolean\n fetchingZapQuote?: boolean\n zapError?: boolean\n}) => {\n const { data: tierPointsState } = useTierPoints()\n const { promotionalPoints, promotion } = tierPointsState || {}\n const abondPrice = useAbondPrice()\n const trueBondPrice = findHighestTrueBondPrice(promotionalPoints, bondData?.trueBondPrices)\n const SDKConfig = useSDKConfig()\n const userTier = getUserTier(promotionalPoints)\n const tierName = userTier ? TIERS_NAMES[userTier] : ''\n\n // Estimations\n const bonusString = getRawBonus(bondData, depositAmount, '0')\n // const fee = getFeeAmount(bondData, depositAmount, userPoints ?? '0')\n // const feeUSD = fee * parseFloat(bondData?.payoutTokenPrice ?? '0')\n\n const estimatedOutputAmount = getPayoutAmount(bondData, depositAmount, promotionalPoints)\n const estimatedOutputUSD = estimatedOutputAmount * parseFloat(bondData?.payoutTokenPrice ?? '0')\n\n const noTierAmount = getRawBonus(bondData, depositAmount, '0')\n const boostAmount =\n parseFloat(getRawBonus(bondData, depositAmount, promotionalPoints ?? '0')) - parseFloat(noTierAmount)\n\n const optimizationData = calculateOptimizationData(\n inputValue ?? '',\n promotionalPoints!,\n bondData,\n inputTokenPrice,\n abondPrice,\n )\n const highestProfitableTier = optimizationData?.highestProfitableTier\n const boostPresentation = getBoostPresentation(promotion)\n\n return (\n <Flex className=\"modaltable-container text-container\">\n <Flex className=\"text-container row\">\n <Flex className=\"row-container spend\">You Spend:</Flex>\n <Flex className=\"row-container spend-val\">{youSpendString}</Flex>\n </Flex>\n <Flex className=\"text-container row\">\n <Flex className=\"row-container premium\">\n {!!userTier && !!promotionalPoints && SDKConfig.useTiers && bondData.billVersion === BillVersion.V4\n ? 'Base Bonus:'\n : 'Bonus:'}\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={\n <Flex>\n {(bondData?.feeInPayout || 0) > 0\n ? `This is the dollar value of the bonus tokens you’ll receive at current market price, already accounting for the protocol fee (${bondData.feeInPayout}%)`\n : 'This is the dollar value of the bonus tokens you’ll receive at current market price.'}\n </Flex>\n }\n width=\"230px\"\n placement=\"bottomLeft\"\n transformTip=\"translate(-5%, 0%)\"\n >\n <Flex className=\"row-container premium-icon\">\n <Svg icon=\"questionCircle\" width=\"12px\" />\n </Flex>\n </TooltipBubble>\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className={`row-container premium-val ${getBonusColor(bonusString)}`}>\n $ {formatNumberSI(bonusString)}\n </Flex>\n )}\n </Flex>\n {trueBondPrice?.points !== '0' && userTier && promotionalPoints && SDKConfig.useTiers && (\n <Flex\n sx={{\n borderRadius: 'normal',\n mx: '-8px',\n px: '8px',\n py: '2px',\n position: 'relative',\n justifyContent: 'space-between',\n }}\n >\n <Flex className=\"row-container premium\" sx={{ zIndex: 1 }}>\n {boostPresentation.iconType === 'svg' ? (\n <Flex sx={boostPresentation.iconSx}>\n <Svg icon={boostPresentation.iconName} width={boostPresentation.iconWidth} />\n </Flex>\n ) : (\n <img\n src={`https://ape.bond/images/launch/${tierName?.toLowerCase()}.png`}\n alt=\"minTier\"\n style={{ width: '21px', height: '21px', marginRight: '3px', zIndex: 1 }}\n />\n )}\n {boostPresentation.label}\n <Flex sx={{ color: 'success', mx: '3px', fontWeight: 700 }}>{`+${trueBondPrice?.boost ?? 0}%`}</Flex>\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={<Flex>{TooltipText.Boost}</Flex>}\n width=\"230px\"\n placement=\"bottomLeft\"\n transformTip=\"translate(-5%, 0%)\"\n >\n <Flex className=\"row-container premium-icon\">\n <Svg icon=\"questionCircle\" width=\"12px\" />\n </Flex>\n </TooltipBubble>\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className={`row-container premium-val premium-positive`}>$ {formatNumberSI(boostAmount)}</Flex>\n )}\n </Flex>\n )}\n <Flex\n sx={{\n border: '1px solid #9960C5',\n borderRadius: 'normal',\n mx: '-8px',\n px: '8px',\n py: '4px',\n position: 'relative',\n }}\n >\n <Flex\n sx={{\n position: 'absolute',\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n zIndex: 0,\n background: '#9960C5',\n opacity: 0.2,\n borderRadius: 'normal',\n }}\n />\n <Flex sx={{ width: '100%', justifyContent: 'space-between', height: '21px' }}>\n <Flex className=\"row-container get\" sx={{ zIndex: 1 }}>\n You Get (over {getTimePeriods(bondData?.vestingTerm, true).days} days):\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className=\"row-container get-val\" sx={{ zIndex: 1 }}>\n {formatNumberSI(estimatedOutputAmount, 4)} {bondData?.showcaseTokenName} = ${' '}\n {formatNumberSI(estimatedOutputUSD, 2)}\n </Flex>\n )}\n </Flex>\n </Flex>\n {(bondData.tierBoostRate || highestProfitableTier) && (\n <Flex sx={{ width: '100%', justifyContent: 'space-between', height: '21px', mt: '3px' }}>\n <Flex className=\"row-container get\">\n Ape Points Earned:\n <Flex sx={{ ml: '5px' }}>\n <TooltipBubble\n body={\n 'This purchase will earn you Ape Points. Ape Points provide a weekly yield in USDT and count toward your Ape Tier progression. Unlock higher Ape Tiers to get extra discounts on all Bonds.'\n }\n width={['200px', '200px', '200px', '250px']}\n placement=\"bottomLeft\"\n transformTip={[\n 'translate(-8%, 0%)',\n 'translate(-8%, 0%)',\n 'translate(-8%, 0%)',\n 'translate(-7%, 0%)',\n ]}\n >\n <Svg icon=\"questionCircle\" width=\"12px\" />\n </TooltipBubble>\n </Flex>\n </Flex>\n {isZap && fetchingZapQuote ? (\n <LoadingDots />\n ) : isZap && zapError ? (\n '-'\n ) : (\n <Flex className=\"row-container get-val\">\n <Flex sx={{ alignItems: 'center', gap: '5px' }}>\n {highestProfitableTier || optimizationData?.tierBoostPoints ? (\n <>\n <TokenImage symbol={'veABOND'} size={15} />\n {formatNumberSI(\n highestProfitableTier && tierOptimizerUIEnabled\n ? highestProfitableTier.necessaryPointsToUpgrade\n : optimizationData?.tierBoostPoints,\n 2,\n true,\n )}\n <Flex>points</Flex>\n </>\n ) : (\n '-'\n )}\n {highestProfitableTier && tierOptimizerUIEnabled && (\n <>\n +\n <Flex\n sx={{\n px: '3px',\n height: '24px',\n background: TIERS_BG[highestProfitableTier.tier as NewTiers],\n border: `2px solid ${TIERS_COLORS[highestProfitableTier.tier as NewTiers]}`,\n borderRadius: '5px',\n fontWeight: 700,\n alignItems: 'center',\n minWidth: highestProfitableTier.tier > 2 && '118px',\n }}\n >\n <img\n src={`https://ape.bond/images/launch/${highestProfitableTier?.tierName?.toLowerCase()}.png`}\n alt=\"minTier\"\n style={{ width: '21px', height: '21px', marginRight: '3px', zIndex: 1 }}\n />\n {highestProfitableTier.tierName} Tier\n </Flex>\n </>\n )}\n </Flex>\n </Flex>\n )}\n </Flex>\n )}\n </Flex>\n )\n}\n\nexport default Estimations\n"],"names":["_jsxs","_jsx","LoadingDots","_Fragment"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxs, jsx } from 'theme-ui/jsx-runtime';
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import Flex from '../../../../components/uikit-sdk/Flex/index.js';
|
|
4
4
|
import Svg from '../../../../components/uikit-sdk/Svg/index.js';
|
|
@@ -13,7 +13,7 @@ import { Box } from 'theme-ui';
|
|
|
13
13
|
const GetUpToComponent = ({ bond, depositAmount }) => {
|
|
14
14
|
// Hooks & Data
|
|
15
15
|
const { data: tierState } = useTierPoints();
|
|
16
|
-
const { promotionalPoints
|
|
16
|
+
const { promotionalPoints } = tierState || {};
|
|
17
17
|
const userTier = getUserTier(promotionalPoints);
|
|
18
18
|
const bonusString = getRawBonus(bond, depositAmount, TIERS_WEIGHT[LaunchBondTiers.Mythical]);
|
|
19
19
|
const noTierAmount = getRawBonus(bond, depositAmount, '0');
|
|
@@ -21,27 +21,7 @@ const GetUpToComponent = ({ bond, depositAmount }) => {
|
|
|
21
21
|
const trueBondPrice = findHighestTrueBondPriceUserAgnostic(bond);
|
|
22
22
|
//State
|
|
23
23
|
const [isOpen, setIsOpen] = useState(false);
|
|
24
|
-
return
|
|
25
|
-
width: '100%',
|
|
26
|
-
mt: '10px',
|
|
27
|
-
fontSize: '12px',
|
|
28
|
-
fontWeight: 400,
|
|
29
|
-
flexDirection: 'column',
|
|
30
|
-
position: 'relative',
|
|
31
|
-
}, children: jsxs("span", { onClick: () => setIsOpen(!isOpen), sx: {
|
|
32
|
-
border: '1px solid #9960C5',
|
|
33
|
-
borderRadius: 'normal',
|
|
34
|
-
pl: '10px',
|
|
35
|
-
pr: '20px',
|
|
36
|
-
py: '4px',
|
|
37
|
-
cursor: 'pointer',
|
|
38
|
-
background: '#312341',
|
|
39
|
-
display: 'inline-flex',
|
|
40
|
-
alignItems: 'center',
|
|
41
|
-
gap: '4px',
|
|
42
|
-
width: '100%',
|
|
43
|
-
boxSizing: 'border-box',
|
|
44
|
-
}, children: [jsx("span", { sx: { mt: '-7px' }, children: jsx(Svg, { icon: "GiftBox", width: 20, color: 'textDisabledButton' }) }), `You've been awarded with a Welcome Bonus. `, jsx("span", { sx: { ml: '3px', color: 'primaryButton', ':hover': { textDecoration: 'underline' } }, children: `Learn More >` })] }) })) : (userTier !== LaunchBondTiers.Mythical && bond.billVersion === BillVersion.V4 && (jsxs(Flex, { sx: {
|
|
24
|
+
return (userTier !== LaunchBondTiers.Mythical && bond.billVersion === BillVersion.V4 && (jsxs(Flex, { sx: {
|
|
45
25
|
width: '100%',
|
|
46
26
|
mt: '10px',
|
|
47
27
|
fontSize: '12px',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetUpToComponent.js","sources":["../../../../../src/views/BuyBond/components/GetUpToComponent/GetUpToComponent.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport Flex from '../../../../components/uikit-sdk/Flex'\nimport Svg from '../../../../components/uikit-sdk/Svg'\nimport { BondsData } from '../../../../types/bonds'\nimport useTierPoints, { getUserTier, TIERS_WEIGHT } from '../../../../state/tiers/useTierPoints'\nimport { BillVersion, LaunchBondTiers } from '@ape.swap/apeswap-lists'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport BonusTable from '../../../Bonds/components/BonusComponents/BonusTable'\nimport { formatUSDNumber, getRawBonus } from '../../../../utils/displayHelpers'\nimport { findHighestTrueBondPriceUserAgnostic } from '../../../../utils/bondPriceHelpers'\nimport { Box } from 'theme-ui'\n\ninterface GetUpToComponentProps {\n bond: BondsData\n depositAmount: string\n}\n\nconst GetUpToComponent: React.FC<GetUpToComponentProps> = ({ bond, depositAmount }) => {\n // Hooks & Data\n const { data: tierState } = useTierPoints()\n const { promotionalPoints, usingPromotion } = tierState || {}\n const userTier = getUserTier(promotionalPoints)\n const bonusString = getRawBonus(bond, depositAmount, TIERS_WEIGHT[LaunchBondTiers.Mythical])\n const noTierAmount = getRawBonus(bond, depositAmount, '0')\n const boostAmount = parseFloat(bonusString) - parseFloat(noTierAmount)\n const trueBondPrice = findHighestTrueBondPriceUserAgnostic(bond)\n\n //State\n const [isOpen, setIsOpen] = useState(false)\n return usingPromotion ? (\n <Flex\n sx={{\n width: '100%',\n mt: '10px',\n fontSize: '12px',\n fontWeight: 400,\n flexDirection: 'column',\n position: 'relative',\n }}\n >\n <span\n onClick={() => setIsOpen(!isOpen)}\n sx={{\n border: '1px solid #9960C5',\n borderRadius: 'normal',\n pl: '10px',\n pr: '20px',\n py: '4px',\n cursor: 'pointer',\n background: '#312341',\n display: 'inline-flex',\n alignItems: 'center',\n gap: '4px',\n width: '100%',\n boxSizing: 'border-box',\n }}\n >\n <span sx={{ mt: '-7px' }}>\n <Svg icon=\"GiftBox\" width={20} color={'textDisabledButton'} />\n </span>\n {`You've been awarded with a Welcome Bonus. `}\n <span\n sx={{ ml: '3px', color: 'primaryButton', ':hover': { textDecoration: 'underline' } }}\n >{`Learn More >`}</span>\n </span>\n </Flex>\n ) : (\n userTier !== LaunchBondTiers.Mythical && bond.billVersion === BillVersion.V4 && (\n <Flex\n sx={{\n width: '100%',\n mt: '10px',\n fontSize: '12px',\n fontWeight: 400,\n flexDirection: 'column',\n position: 'relative',\n }}\n >\n <Flex\n onClick={() => setIsOpen(!isOpen)}\n sx={{\n border: '1px solid #9960C5',\n borderRadius: 'normal',\n position: 'relative',\n overflow: 'hidden',\n pl: '10px',\n pr: '20px',\n py: '2px',\n alignItems: 'center',\n cursor: 'pointer',\n justifyContent: 'space-between',\n background: '#312341',\n }}\n >\n <Flex sx={{ alignItems: 'center' }}>\n <img\n src={`https://ape.bond/images/launch/mythical.png`}\n alt=\"minTier\"\n style={{ width: '21px', height: '21px', marginRight: '3px', zIndex: 1 }}\n />\n <Box>\n Get up to\n <span sx={{ color: 'success', mx: '3px', fontWeight: 700 }}>{`+${trueBondPrice?.boost ?? 0}%`}</span>\n Boost.\n <span\n sx={{\n ml: '5px',\n color: 'primaryButton',\n fontWeight: 500,\n cursor: 'pointer',\n ':hover': { textDecoration: 'underline' },\n display: ['none', 'none', 'none', 'inline'],\n }}\n onClick={(e) => {\n e.stopPropagation()\n window.open('https://www.ape.bond/true-yield?createPosition', '_blank')\n }}\n >\n {'By locking ABOND >'}\n </span>\n </Box>\n </Flex>\n {!!depositAmount && parseFloat(depositAmount) !== 0 && (\n <Flex sx={{ color: 'success', fontWeight: 700, minWidth: '65px', justifyContent: 'flex-end' }}>\n $ {formatUSDNumber(boostAmount.toString())}\n </Flex>\n )}\n <Flex sx={{ position: 'absolute', right: '6px' }}>\n <Svg icon=\"caret\" direction={isOpen ? 'up' : 'down'} />\n </Flex>\n </Flex>\n <AnimatePresence>\n {isOpen && (\n <motion.div\n initial={{ height: 0 }}\n animate={{ height: 'fit-content' }}\n transition={{ opacity: { duration: 0.2 } }}\n exit={{ height: 0 }}\n sx={{ overflow: 'hidden', width: '100%', marginTop: '5px', cursor: 'pointer' }}\n onClick={(e) => {\n e.stopPropagation()\n window.open('https://www.ape.bond/true-yield?createPosition', '_blank')\n }}\n >\n <BonusTable trueBondPrices={bond?.trueBondPrices} minTier={bond.minTier} hideTitle />\n </motion.div>\n )}\n </AnimatePresence>\n </Flex>\n )\n )\n}\n\nexport default GetUpToComponent\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GetUpToComponent.js","sources":["../../../../../src/views/BuyBond/components/GetUpToComponent/GetUpToComponent.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport Flex from '../../../../components/uikit-sdk/Flex'\nimport Svg from '../../../../components/uikit-sdk/Svg'\nimport { BondsData } from '../../../../types/bonds'\nimport useTierPoints, { getUserTier, TIERS_WEIGHT } from '../../../../state/tiers/useTierPoints'\nimport { BillVersion, LaunchBondTiers } from '@ape.swap/apeswap-lists'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport BonusTable from '../../../Bonds/components/BonusComponents/BonusTable'\nimport { formatUSDNumber, getRawBonus } from '../../../../utils/displayHelpers'\nimport { findHighestTrueBondPriceUserAgnostic } from '../../../../utils/bondPriceHelpers'\nimport { Box } from 'theme-ui'\n\ninterface GetUpToComponentProps {\n bond: BondsData\n depositAmount: string\n}\n\nconst GetUpToComponent: React.FC<GetUpToComponentProps> = ({ bond, depositAmount }) => {\n // Hooks & Data\n const { data: tierState } = useTierPoints()\n const { promotionalPoints } = tierState || {}\n const userTier = getUserTier(promotionalPoints)\n const bonusString = getRawBonus(bond, depositAmount, TIERS_WEIGHT[LaunchBondTiers.Mythical])\n const noTierAmount = getRawBonus(bond, depositAmount, '0')\n const boostAmount = parseFloat(bonusString) - parseFloat(noTierAmount)\n const trueBondPrice = findHighestTrueBondPriceUserAgnostic(bond)\n\n //State\n const [isOpen, setIsOpen] = useState(false)\n return (\n userTier !== LaunchBondTiers.Mythical && bond.billVersion === BillVersion.V4 && (\n <Flex\n sx={{\n width: '100%',\n mt: '10px',\n fontSize: '12px',\n fontWeight: 400,\n flexDirection: 'column',\n position: 'relative',\n }}\n >\n <Flex\n onClick={() => setIsOpen(!isOpen)}\n sx={{\n border: '1px solid #9960C5',\n borderRadius: 'normal',\n position: 'relative',\n overflow: 'hidden',\n pl: '10px',\n pr: '20px',\n py: '2px',\n alignItems: 'center',\n cursor: 'pointer',\n justifyContent: 'space-between',\n background: '#312341',\n }}\n >\n <Flex sx={{ alignItems: 'center' }}>\n <img\n src={`https://ape.bond/images/launch/mythical.png`}\n alt=\"minTier\"\n style={{ width: '21px', height: '21px', marginRight: '3px', zIndex: 1 }}\n />\n <Box>\n Get up to\n <span sx={{ color: 'success', mx: '3px', fontWeight: 700 }}>{`+${trueBondPrice?.boost ?? 0}%`}</span>\n Boost.\n <span\n sx={{\n ml: '5px',\n color: 'primaryButton',\n fontWeight: 500,\n cursor: 'pointer',\n ':hover': { textDecoration: 'underline' },\n display: ['none', 'none', 'none', 'inline'],\n }}\n onClick={(e) => {\n e.stopPropagation()\n window.open('https://www.ape.bond/true-yield?createPosition', '_blank')\n }}\n >\n {'By locking ABOND >'}\n </span>\n </Box>\n </Flex>\n {!!depositAmount && parseFloat(depositAmount) !== 0 && (\n <Flex sx={{ color: 'success', fontWeight: 700, minWidth: '65px', justifyContent: 'flex-end' }}>\n $ {formatUSDNumber(boostAmount.toString())}\n </Flex>\n )}\n <Flex sx={{ position: 'absolute', right: '6px' }}>\n <Svg icon=\"caret\" direction={isOpen ? 'up' : 'down'} />\n </Flex>\n </Flex>\n <AnimatePresence>\n {isOpen && (\n <motion.div\n initial={{ height: 0 }}\n animate={{ height: 'fit-content' }}\n transition={{ opacity: { duration: 0.2 } }}\n exit={{ height: 0 }}\n sx={{ overflow: 'hidden', width: '100%', marginTop: '5px', cursor: 'pointer' }}\n onClick={(e) => {\n e.stopPropagation()\n window.open('https://www.ape.bond/true-yield?createPosition', '_blank')\n }}\n >\n <BonusTable trueBondPrices={bond?.trueBondPrices} minTier={bond.minTier} hideTitle />\n </motion.div>\n )}\n </AnimatePresence>\n </Flex>\n )\n )\n}\n\nexport default GetUpToComponent\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -41,16 +41,17 @@ function calculateOptimizationData(inputAmount, userPoints = '0', bond, inputTok
|
|
|
41
41
|
// const denominator = bonus_new - bonus_curr + tierBoostRate
|
|
42
42
|
const denominator = (1 - tierBoostRate) * priceDiff + tierBoostRate;
|
|
43
43
|
const minBreakeven = denominator > 0 ? tierCostUsd / denominator : Infinity;
|
|
44
|
+
const minBreakevenWithFee = minBreakeven * 1.05 + 0.1;
|
|
44
45
|
// for debugging purposes this two should match
|
|
45
46
|
// const originalOutputUsd = minBreakeven * bonus_curr
|
|
46
47
|
// const outputAfterUpgrade = (minBreakeven - (tierCostUsd - minBreakeven * tierBoostRate)) * bonus_new
|
|
47
|
-
const isProfitable = inputAmountUSD > (
|
|
48
|
+
const isProfitable = inputAmountUSD > (minBreakevenWithFee ?? 0);
|
|
48
49
|
dataToReturn[tierData.boost] = {
|
|
49
50
|
tier: tierData.boost,
|
|
50
51
|
tierName,
|
|
51
52
|
isProfitable,
|
|
52
53
|
tierCostUSD: tierCostUsd,
|
|
53
|
-
minBreakevenWithFeeUSD:
|
|
54
|
+
minBreakevenWithFeeUSD: minBreakevenWithFee,
|
|
54
55
|
necessaryPointsToUpgrade: abondNeededRaw * 4,
|
|
55
56
|
};
|
|
56
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../src/views/BuyBond/utils.ts"],"sourcesContent":["import { BondsData } from '../../types/bonds'\nimport { findHighestTrueBondPrice } from '../../utils/bondPriceHelpers'\nimport { getUserTier, NewTiers, TIERS_NAMES } from '../../state/tiers/useTierPoints'\n\nexport function calculateOptimizationData(\n inputAmount: string,\n userPoints = '0',\n bond: BondsData,\n inputTokenPriceUsd = 0,\n abondPriceUsd?: number,\n) {\n const { trueBondPrices } = bond\n\n if (!trueBondPrices) {\n console.log('no truebondprices')\n return null\n }\n if (!abondPriceUsd) {\n console.log('No Abond Price')\n return null\n }\n\n if (inputTokenPriceUsd <= 0) {\n console.log('missing token price')\n return null\n }\n\n const currentTierData = findHighestTrueBondPrice(userPoints, trueBondPrices)\n const currentTier = getUserTier(userPoints)!\n\n // const bonus_curr = 1 + currentTierData?.bonusWithFee! / 100\n const currentPoints = BigInt(userPoints)\n\n const inputAmountUSD = parseFloat(inputAmount || '0') * inputTokenPriceUsd\n\n const tierBoostRate = (bond.tierBoostRate ?? 0) / 100\n const tierBoostUsd = inputAmountUSD * tierBoostRate\n const feeInAbond = tierBoostUsd / abondPriceUsd\n const tierBoostPoints = feeInAbond * 4\n const currentPrice = parseFloat(currentTierData?.trueBondPrice!)\n\n const dataToReturn: Record<\n number,\n {\n tier: number\n tierName: string\n isProfitable: boolean\n tierCostUSD: number\n minBreakevenWithFeeUSD: number\n necessaryPointsToUpgrade: number\n }\n > = {}\n\n for (const tierData of trueBondPrices) {\n if (tierData.boost <= currentTier) continue\n // @ts-ignore\n const tierName = TIERS_NAMES[tierData.boost]\n\n const pointsNeededWei = BigInt(tierData.points) - currentPoints\n const abondNeededRaw = Math.ceil(Number(pointsNeededWei) / 1e18 / 4)\n\n const tierCostUsd = abondNeededRaw * abondPriceUsd\n const newPrice = parseFloat(tierData.trueBondPrice)\n const priceDiff = (currentPrice - newPrice) / currentPrice\n\n // const newBonusWithThisTier = tierData.bonusWithFee\n\n // const bonus_new = 1 + newBonusWithThisTier / 100\n\n // const denominator = bonus_new - bonus_curr + tierBoostRate\n const denominator = (1 - tierBoostRate) * priceDiff + tierBoostRate\n const minBreakeven = denominator > 0 ? tierCostUsd / denominator : Infinity\n\n // for debugging purposes this two should match\n // const originalOutputUsd = minBreakeven * bonus_curr\n // const outputAfterUpgrade = (minBreakeven - (tierCostUsd - minBreakeven * tierBoostRate)) * bonus_new\n\n const isProfitable = inputAmountUSD > (
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../src/views/BuyBond/utils.ts"],"sourcesContent":["import { BondsData } from '../../types/bonds'\nimport { findHighestTrueBondPrice } from '../../utils/bondPriceHelpers'\nimport { getUserTier, NewTiers, TIERS_NAMES } from '../../state/tiers/useTierPoints'\n\nexport function calculateOptimizationData(\n inputAmount: string,\n userPoints = '0',\n bond: BondsData,\n inputTokenPriceUsd = 0,\n abondPriceUsd?: number,\n) {\n const { trueBondPrices } = bond\n\n if (!trueBondPrices) {\n console.log('no truebondprices')\n return null\n }\n if (!abondPriceUsd) {\n console.log('No Abond Price')\n return null\n }\n\n if (inputTokenPriceUsd <= 0) {\n console.log('missing token price')\n return null\n }\n\n const currentTierData = findHighestTrueBondPrice(userPoints, trueBondPrices)\n const currentTier = getUserTier(userPoints)!\n\n // const bonus_curr = 1 + currentTierData?.bonusWithFee! / 100\n const currentPoints = BigInt(userPoints)\n\n const inputAmountUSD = parseFloat(inputAmount || '0') * inputTokenPriceUsd\n\n const tierBoostRate = (bond.tierBoostRate ?? 0) / 100\n const tierBoostUsd = inputAmountUSD * tierBoostRate\n const feeInAbond = tierBoostUsd / abondPriceUsd\n const tierBoostPoints = feeInAbond * 4\n const currentPrice = parseFloat(currentTierData?.trueBondPrice!)\n\n const dataToReturn: Record<\n number,\n {\n tier: number\n tierName: string\n isProfitable: boolean\n tierCostUSD: number\n minBreakevenWithFeeUSD: number\n necessaryPointsToUpgrade: number\n }\n > = {}\n\n for (const tierData of trueBondPrices) {\n if (tierData.boost <= currentTier) continue\n // @ts-ignore\n const tierName = TIERS_NAMES[tierData.boost]\n\n const pointsNeededWei = BigInt(tierData.points) - currentPoints\n const abondNeededRaw = Math.ceil(Number(pointsNeededWei) / 1e18 / 4)\n\n const tierCostUsd = abondNeededRaw * abondPriceUsd\n const newPrice = parseFloat(tierData.trueBondPrice)\n const priceDiff = (currentPrice - newPrice) / currentPrice\n\n // const newBonusWithThisTier = tierData.bonusWithFee\n\n // const bonus_new = 1 + newBonusWithThisTier / 100\n\n // const denominator = bonus_new - bonus_curr + tierBoostRate\n const denominator = (1 - tierBoostRate) * priceDiff + tierBoostRate\n const minBreakeven = denominator > 0 ? tierCostUsd / denominator : Infinity\n const minBreakevenWithFee = minBreakeven * 1.05 + 0.1\n\n // for debugging purposes this two should match\n // const originalOutputUsd = minBreakeven * bonus_curr\n // const outputAfterUpgrade = (minBreakeven - (tierCostUsd - minBreakeven * tierBoostRate)) * bonus_new\n\n const isProfitable = inputAmountUSD > (minBreakevenWithFee ?? 0)\n\n dataToReturn[tierData.boost] = {\n tier: tierData.boost as NewTiers,\n tierName,\n isProfitable,\n tierCostUSD: tierCostUsd,\n minBreakevenWithFeeUSD: minBreakevenWithFee,\n necessaryPointsToUpgrade: abondNeededRaw * 4,\n }\n }\n\n const profitableTiers = Object.values(dataToReturn).filter((item) => item.isProfitable)\n const highestProfitableTier = profitableTiers[profitableTiers.length - 1]\n\n return { tierBoostPoints, highestProfitableTier, data: Object.values(dataToReturn) }\n}\n"],"names":[],"mappings":"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"}
|