{"version":3,"file":"static/chunks/pages/liquidity/browse-9a09288d67cb1bcc.js","mappings":"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","sources":["webpack://_N_E/?40f3","webpack://_N_E/./src/components/base/Bar.tsx","webpack://_N_E/./src/components/liquidity-pools/helpers.ts","webpack://_N_E/./src/components/liquidity-pools/pool.tsx","webpack://_N_E/./src/components/liquidity-pools/pool.skeleton.tsx","webpack://_N_E/./src/components/liquidity-pools/view.tsx","webpack://_N_E/./src/components/liquidity-pools/container.tsx","webpack://_N_E/./src/components/liquidity-pools/index.tsx","webpack://_N_E/./src/pages/liquidity/browse.nemo.tsx","webpack://_N_E/"],"sourcesContent":["\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/liquidity/browse\",\n function () {\n return require(\"private-next-pages/liquidity/browse.nemo.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/liquidity/browse\"])\n });\n }\n ","import SearchIcon from '@mui/icons-material/Search'\nimport {\n Box,\n type BoxProps,\n Button,\n Input,\n InputAdornment,\n Typography,\n useMediaQuery,\n useTheme,\n} from '@mui/material'\nimport Stack from '@mui/material/Stack'\nimport { useRouter } from 'next/router'\nimport { memo } from 'react'\n\nimport useTrans from '@/hooks/useTrans'\n\ntype BarProps = BoxProps & {\n inputValue?: string\n setInputValue?: (inputValue: string) => void\n tabActive: 'pools' | 'portfolio'\n}\n\nconst Bar = ({ inputValue, setInputValue, tabActive, ...props }: BarProps) => {\n const router = useRouter()\n const trans = useTrans()\n const redirectTab = (tab: string) => {\n if (tab !== tabActive) {\n router.replace(`/liquidity/${tab === 'pools' ? 'browse' : 'portfolio'}`)\n }\n }\n const isSmallScreen = useMediaQuery(useTheme().breakpoints.down('sm'))\n\n return (\n \n \n \n redirectTab('pools')}\n fullWidth\n className=\"py-3 px-4\"\n >\n \n {trans.liquidity.bar.pools}\n \n \n \n \n \n redirectTab('portfolio')}\n fullWidth\n className=\"py-3 px-4\"\n >\n \n {trans.liquidity.bar.positions}\n \n \n \n \n \n {tabActive === 'pools' && (\n \n \n \n \n }\n inputProps={{\n className: 'p-0 pr-3 text-md',\n }}\n onChange={(e) => setInputValue?.(e.target.value)}\n value={inputValue}\n style={isSmallScreen ? { width: '100%' } : undefined}\n />\n \n )}\n \n )\n}\n\nexport default memo(Bar)\n","import Decimal from 'decimal.js'\n\nimport { fetchRemitanoRate } from '@/utils/apis/helper'\nimport { CustomTokenInfo } from '@/utils/helpers'\n\nexport const DAY_IN_SECONDS = 60 * 60 * 24\n\ntype RateData = Awaited> | undefined\nexport const calculatePoolApr = ({\n fee24h,\n totalLiquidity,\n reward24h,\n rateData,\n rewardTokenInfo,\n}: {\n fee24h: Decimal,\n totalLiquidity: number,\n reward24h: Decimal | null,\n rateData: RateData,\n rewardTokenInfo: CustomTokenInfo | null,\n}) => {\n if (!totalLiquidity) return new Decimal(0)\n\n const tokenSymbol = rewardTokenInfo?.symbol.toUpperCase()\n\n const tokenRate: number = rateData?.[tokenSymbol as keyof RateData] || 0\n const reward24hInUsd = reward24h?.mul(tokenRate) || new Decimal(0)\n\n // ((24h reward + 24h fee) / total liquidity) * 365\n return reward24hInUsd.plus(fee24h).div(totalLiquidity).mul(365).mul(100)\n}\n","import Box from '@mui/material/Box'\nimport Grid from '@mui/material/Grid'\nimport Skeleton from '@mui/material/Skeleton'\nimport Stack from '@mui/material/Stack'\nimport { useTheme } from '@mui/material/styles'\nimport Table from '@mui/material/Table'\nimport TableBody from '@mui/material/TableBody'\nimport TableCell from '@mui/material/TableCell'\nimport TableRow from '@mui/material/TableRow'\nimport Typography from '@mui/material/Typography'\nimport useMediaQuery from '@mui/material/useMediaQuery'\nimport { DecimalUtil } from '@orca-so/common-sdk'\nimport { PublicKey } from '@solana/web3.js'\nimport Decimal from 'decimal.js'\nimport { useRouter } from 'next/router'\nimport { useMemo } from 'react'\nimport { useQuery } from 'react-query'\n\nimport Button from '@/components/base/Button'\nimport useAmplitude, { EVENT_NAMES } from '@/hooks/use-amplitude'\nimport { useRemitanoRate } from '@/hooks/use-settings'\nimport useTokens from '@/hooks/use-tokens'\nimport useTrans from '@/hooks/useTrans'\nimport { useNemoProgram } from '@/providers/nemo-program'\nimport { LiquidityPool } from '@/utils/apis/liquidity'\nimport { NOT_AVAILABLE_LOGO_URL, toResultAsync } from '@/utils/helpers'\nimport { format } from '@/utils/numeric'\n\nimport { calculatePoolApr, DAY_IN_SECONDS } from './helpers'\n\ntype PoolItemProps = {\n pool: LiquidityPool\n}\n\nconst PoolItem = ({ pool }: PoolItemProps) => {\n const amplitude = useAmplitude()\n const trans = useTrans()\n const router = useRouter()\n const { data: rateData } = useRemitanoRate()\n\n const theme = useTheme()\n const { getTokenInfo } = useTokens()\n const sm = useMediaQuery(theme.breakpoints.up('sm'))\n const md = useMediaQuery(theme.breakpoints.up('md'))\n const { client: nemoProgramClient } = useNemoProgram()\n const poolAddress = pool.pool_address\n\n const { data: whirlPool, isLoading: isLoadingWhirlPool } = useQuery({\n queryKey: ['getPool', poolAddress],\n queryFn: async () => {\n const poolKey = new PublicKey(poolAddress)\n const [, whirlPoolData] = await toResultAsync(nemoProgramClient.getPool(poolKey))\n return whirlPoolData\n },\n })\n\n const poolRewardInfo = useMemo(() => {\n return whirlPool?.getRewardInfos()?.find((rewardInfo) => rewardInfo.initialized)\n }, [whirlPool])\n\n const poolRewardTokenInfo = useMemo(() => {\n if (!poolRewardInfo) return null\n return getTokenInfo(poolRewardInfo?.mint.toBase58())\n }, [poolRewardInfo, getTokenInfo])\n\n const emissionPerDay = useMemo(() => {\n if (!poolRewardInfo || !poolRewardTokenInfo) return null\n return DecimalUtil.fromU64(\n /** Ref: https://github.com/renec-chain/nemo-swap/blob/master/scripts/create_pool/10_set_pool_reward_emission.ts#L97C75-L97C75 */\n poolRewardInfo.emissionsPerSecondX64.muln(DAY_IN_SECONDS).shrn(64),\n poolRewardTokenInfo.decimals,\n )\n }, [poolRewardInfo, poolRewardTokenInfo])\n\n const emissionPerDayStr = useMemo(() => {\n return emissionPerDay ? format(emissionPerDay) : '0'\n }, [emissionPerDay])\n\n const fee24h = useMemo(() => {\n return new Decimal(pool.fee || 0)\n .div(100)\n .mul(pool.volumes_in_24h || 0)\n }, [pool])\n\n const aprValue = useMemo(() => {\n return format(\n calculatePoolApr({\n fee24h,\n totalLiquidity: Number(pool.total_liquidity),\n reward24h: emissionPerDay,\n rateData,\n rewardTokenInfo: poolRewardTokenInfo,\n }).toFixed(2),\n { decimals: 2 },\n )\n }, [fee24h, pool.total_liquidity, emissionPerDay, rateData, poolRewardTokenInfo])\n\n const elmTokenPair = (\n \n \n \n \n \n \n {pool.token_a_symbol} / {pool.token_b_symbol}\n \n \n )\n\n const elmFee = (\n \n {format(pool.fee)}%\n \n )\n const elmApr = (\n \n {aprValue}%\n \n )\n const elm24hVolume = (\n \n ${format(pool.volumes_in_24h, 6)}\n \n )\n const elm24hFee = (\n \n ${format(fee24h.toFixed(6))}\n \n )\n const elmTotalLiquidity = (\n \n ${format(pool.total_liquidity || 0, 3)}\n \n )\n const elmDepositButton = (\n {\n amplitude.track(EVENT_NAMES.liquidity_list_select, {\n from_token: pool.token_a_symbol,\n to_token: pool.token_b_symbol,\n pool_address: poolAddress,\n })\n router.push(`/liquidity/open-position/${poolAddress}`)\n }}\n >\n {trans.liquidity.pool.deposit}\n \n )\n\n const elmRewardInfo = (\n \n {trans.liquidity.pool.reward}:{' '}\n {emissionPerDayStr !== '0' && poolRewardTokenInfo ? (\n <>\n \n +{emissionPerDayStr}\n {' '}\n {poolRewardTokenInfo.displaySymbol}/{trans.liquidity.pool.day}\n \n ) : (\n 0\n )}\n \n )\n\n return (\n \n {elmTokenPair}\n \n \n \n \n \n {trans.home.commission}\n \n {elmFee}\n \n \n\n \n \n \n APR\n \n {elmApr}\n \n \n \n \n \n \n \n \n \n {trans.liquidity.pool.volume_24h}\n \n \n {elm24hVolume}\n \n\n \n \n \n {trans.liquidity.pool.fee_24h}\n \n \n {elm24hFee}\n \n\n \n \n \n {trans.liquidity.pool.total_liquidity}\n \n \n \n {elmTotalLiquidity}\n \n \n \n
\n
\n \n {isLoadingWhirlPool ? (\n \n ) : (\n elmRewardInfo\n )}\n {elmDepositButton}\n \n
\n
\n )\n}\n\nexport default PoolItem\n","import Box from '@mui/material/Box'\nimport Grid from '@mui/material/Grid'\nimport Skeleton from '@mui/material/Skeleton'\nimport Stack from '@mui/material/Stack'\nimport { useTheme } from '@mui/material/styles'\nimport Table from '@mui/material/Table'\nimport TableBody from '@mui/material/TableBody'\nimport TableCell from '@mui/material/TableCell'\nimport TableRow from '@mui/material/TableRow'\nimport Typography from '@mui/material/Typography'\nimport useMediaQuery from '@mui/material/useMediaQuery'\n\nimport useTrans from '@/hooks/useTrans'\n\nconst PoolItemSkeleton = () => {\n const trans = useTrans()\n\n const theme = useTheme()\n const sm = useMediaQuery(theme.breakpoints.up('sm'))\n const md = useMediaQuery(theme.breakpoints.up('md'))\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \\\n \n \n {trans.home.commission}\n \n \n \n \n\n \n \n \n APR\n \n \n \n \n \n \n \n \n \n \n \n {trans.liquidity.pool.volume_24h}\n \n \n \n \n \n \n\n \n \n \n {trans.liquidity.pool.fee_24h}\n \n \n \n \n \n \n\n \n \n \n {trans.liquidity.pool.total_liquidity}\n \n \n \n \n \n \n \n
\n
\n \n \n \n \n
\n
\n )\n}\n\nconst PoolSkeleton = ({ numPools = 0 }: { numPools?: number }) => {\n const theme = useTheme()\n const sm = useMediaQuery(theme.breakpoints.up('sm'))\n const md = useMediaQuery(theme.breakpoints.up('md'))\n\n // The number of pool item skeletons should fill the remaining blank space of\n // the last pool line, e.g., on large screens with three pools per line, two\n // skeletons should show in the position of the remaining pool items if there\n // is currently one pool alone on that line.\n // If the last pool line has no empty space left, show a new line with all\n // pool skeletons.\n const numPoolsPerLine = md ? 3 : sm ? 2 : 3\n const numSkeletons = numPoolsPerLine - (numPools % numPoolsPerLine)\n\n return (\n <>\n {[...Array(numSkeletons)].map((_, index) => (\n \n ))}\n \n )\n}\n\nexport default PoolSkeleton\n","import Box from '@mui/material/Box'\nimport Grid from '@mui/material/Grid'\nimport Stack from '@mui/material/Stack'\nimport Typography from '@mui/material/Typography'\nimport {\n memo,\n useEffect,\n} from 'react'\nimport { useInView } from 'react-intersection-observer'\n\nimport Bar from '@/components/base/Bar'\nimport useTrans from '@/hooks/useTrans'\n\nimport Pool from './pool'\nimport PoolSkeleton from './pool.skeleton'\nimport { LiquidityPoolsPageProps } from './types'\n\nconst View = (props: LiquidityPoolsPageProps) => {\n const {\n poolsData,\n inputValue,\n setInputValue,\n isLoading,\n fetchNextPage,\n isEmptyPools,\n } = props\n const trans = useTrans()\n const { ref, inView } = useInView()\n\n useEffect(() => {\n if (inView) {\n fetchNextPage()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [inView])\n\n return (\n \n \n \n \n \n \n {!isLoading && isEmptyPools(poolsData) && (\n \n \n {inputValue ? trans.liquidity.no_results_found : trans.liquidity.no_pools_found}\n \n \n )}\n \n {poolsData?.pages &&\n poolsData?.pages?.length > 0 &&\n poolsData.pages.map((poolsData) =>\n poolsData.pools.map((pool) => ),\n )}\n {isLoading && (\n prev + curr.pools.length, 0)}\n />\n )}\n \n \n \n \n \n \n \n )\n}\n\nexport default memo(View)\n","import { debounce } from '@mui/material/utils'\nimport {\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react'\n\nimport { useLiquidityPoolsInfinite } from '@/hooks/use-nemo-apis'\n\nimport { PoolDataInfinite } from './types'\nimport View from './view'\n\nlet debounceFn: any\n\nconst Container = () => {\n const [inputValue, setInputValue] = useState('')\n const [keyword, setKeyword] = useState('')\n\n const {\n data: poolsFromBE,\n isFetching: isFetchingPools,\n fetchNextPage: fetchPoolsNextPage,\n } = useLiquidityPoolsInfinite(keyword)\n\n const fetch = useMemo(\n () =>\n debounceFn = debounce(\n (request: { input: string }) => {\n setKeyword(request.input)\n },\n 400,\n ),\n [],\n )\n\n useEffect(() => {\n if (debounceFn) {\n debounceFn.clear()\n }\n\n if (inputValue) {\n fetch({ input: inputValue })\n } else {\n setKeyword('')\n }\n }, [inputValue, fetch])\n\n const fetchNextPage = useCallback(() => {\n if (!poolsFromBE?.pages[poolsFromBE.pageParams.length - 1].has_next_page) return\n\n fetchPoolsNextPage()\n }, [fetchPoolsNextPage, poolsFromBE?.pageParams.length, poolsFromBE?.pages])\n\n const isEmptyPools = useCallback((poolsData: PoolDataInfinite | undefined) => {\n if (!poolsData) return true\n if (poolsData.pages.length === 1 && poolsData.pages[0].pools.length === 0) return true\n\n return false\n }, [])\n\n const computedProps = {\n poolsData: poolsFromBE,\n inputValue,\n setInputValue,\n isLoading: isFetchingPools,\n fetchNextPage: fetchNextPage,\n isEmptyPools,\n }\n\n return \n}\n\nexport default Container\n","export { default } from './container'\n","import LiquidityPools from '@/components/liquidity-pools'\nimport { MainLayout } from '@/layouts/MainLayout'\nimport gssp from '@/utils/gssp'\n\nconst LiquidityPoolsPage = () => {\n return (\n \n \n \n )\n}\n\nexport const getServerSideProps = gssp()\n\nexport default LiquidityPoolsPage\n","(self[\"webpackChunk_N_E\"] = self[\"webpackChunk_N_E\"] || []).push([[4281],{\n\n/***/ 64049:\n/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {\n\n\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/liquidity/browse\",\n function () {\n return __webpack_require__(46899);\n }\n ]);\n if(false) {}\n \n\n/***/ }),\n\n/***/ 10577:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(85893);\n/* harmony import */ var _mui_icons_material_Search__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(42761);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(98396);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2734);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83321);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(15861);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(99226);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(79332);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(87109);\n/* harmony import */ var _mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(26447);\n/* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11163);\n/* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(67294);\n/* harmony import */ var _hooks_useTrans__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(74069);\n\n\n\n\n\n\n\nconst Bar = (param)=>{\n let { inputValue , setInputValue , tabActive , ...props } = param;\n const router = (0,next_router__WEBPACK_IMPORTED_MODULE_1__.useRouter)();\n const trans = (0,_hooks_useTrans__WEBPACK_IMPORTED_MODULE_3__/* [\"default\"] */ .Z)();\n const redirectTab = (tab)=>{\n if (tab !== tabActive) {\n router.replace(\"/liquidity/\".concat(tab === \"pools\" ? \"browse\" : \"portfolio\"));\n }\n };\n const isSmallScreen = (0,_mui_material__WEBPACK_IMPORTED_MODULE_4__/* [\"default\"] */ .Z)((0,_mui_material__WEBPACK_IMPORTED_MODULE_5__/* [\"default\"] */ .Z)().breakpoints.down(\"sm\"));\n return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__/* [\"default\"] */ .Z, {\n direction: isSmallScreen ? \"column\" : \"row\",\n className: \"h-full\",\n alignItems: isSmallScreen ? \"normal\" : \"center\",\n justifyContent: \"space-between\",\n spacing: isSmallScreen ? 2 : 1,\n ...props,\n children: [\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__/* [\"default\"] */ .Z, {\n direction: \"row\",\n spacing: 1,\n children: [\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__/* [\"default\"] */ .Z, {\n direction: \"column\",\n className: \"w-full\",\n children: [\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_7__/* [\"default\"] */ .Z, {\n \"data-testid\": \"btn-nav-pools\",\n onClick: ()=>redirectTab(\"pools\"),\n fullWidth: true,\n className: \"py-3 px-4\",\n children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_8__/* [\"default\"] */ .Z, {\n sx: {\n color: tabActive === \"pools\" ? \"#FFFFFF\" : \"#888C9E\",\n fontWeight: 600\n },\n textTransform: \"none\",\n whiteSpace: \"nowrap\",\n children: trans.liquidity.bar.pools\n })\n }),\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_9__/* [\"default\"] */ .Z, {\n sx: {\n height: 2\n },\n className: tabActive === \"pools\" ? \"bg-gradient-btn\" : \"\"\n })\n ]\n }),\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__/* [\"default\"] */ .Z, {\n direction: \"column\",\n className: \"w-full\",\n children: [\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_7__/* [\"default\"] */ .Z, {\n \"data-testid\": \"btn-nav-portfolio\",\n onClick: ()=>redirectTab(\"portfolio\"),\n fullWidth: true,\n className: \"py-3 px-4\",\n children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_8__/* [\"default\"] */ .Z, {\n sx: {\n color: tabActive === \"portfolio\" ? \"#FFFFFF\" : \"#888C9E\",\n fontWeight: 600\n },\n textTransform: \"none\",\n whiteSpace: \"nowrap\",\n children: trans.liquidity.bar.positions\n })\n }),\n /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_9__/* [\"default\"] */ .Z, {\n sx: {\n height: 2\n },\n className: tabActive === \"portfolio\" ? \"bg-gradient-btn\" : \"\"\n })\n ]\n })\n ]\n }),\n tabActive === \"pools\" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__/* [\"default\"] */ .Z, {\n direction: isSmallScreen ? \"column-reverse\" : \"row\",\n alignItems: \"flex-start\",\n spacing: 2,\n children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_10__/* [\"default\"] */ .Z, {\n \"data-testid\": \"input-search-mint-address\",\n className: \"border border-solid border-[#61667E] bg-[#2A3748] rounded-lg p-2 text-sm sm:w-56 md:w-80 lg:w-96\",\n disableUnderline: true,\n placeholder: trans.liquidity.pool_search_placeholder,\n startAdornment: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_material__WEBPACK_IMPORTED_MODULE_11__/* [\"default\"] */ .Z, {\n position: \"start\",\n children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_mui_icons_material_Search__WEBPACK_IMPORTED_MODULE_12__/* [\"default\"] */ .Z, {})\n }),\n inputProps: {\n className: \"p-0 pr-3 text-md\"\n },\n onChange: (e)=>{\n return setInputValue === null || setInputValue === void 0 ? void 0 : setInputValue(e.target.value);\n },\n value: inputValue,\n style: isSmallScreen ? {\n width: \"100%\"\n } : undefined\n })\n })\n ]\n });\n};\n/* harmony default export */ __webpack_exports__[\"Z\"] = (/*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_2__.memo)(Bar));\n\n\n/***/ }),\n\n/***/ 46899:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"__N_SSP\": function() { return /* binding */ __N_SSP; },\n \"default\": function() { return /* binding */ browse_nemo; }\n});\n\n// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js\nvar jsx_runtime = __webpack_require__(85893);\n// EXTERNAL MODULE: ./node_modules/@mui/material/utils/debounce.js\nvar debounce = __webpack_require__(57144);\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__(67294);\n// EXTERNAL MODULE: ./src/hooks/use-nemo-apis.ts\nvar use_nemo_apis = __webpack_require__(67013);\n// EXTERNAL MODULE: ./node_modules/@mui/material/Box/Box.js\nvar Box = __webpack_require__(99226);\n// EXTERNAL MODULE: ./node_modules/@mui/material/Grid/Grid.js + 2 modules\nvar Grid = __webpack_require__(86886);\n// EXTERNAL MODULE: ./node_modules/@mui/material/Stack/Stack.js\nvar Stack = __webpack_require__(26447);\n// EXTERNAL MODULE: ./node_modules/@mui/material/Typography/Typography.js + 1 modules\nvar Typography = __webpack_require__(15861);\n// EXTERNAL MODULE: ./node_modules/react-intersection-observer/index.mjs\nvar react_intersection_observer = __webpack_require__(42708);\n// EXTERNAL MODULE: ./src/components/base/Bar.tsx\nvar Bar = __webpack_require__(10577);\n// EXTERNAL MODULE: ./src/hooks/useTrans.ts + 2 modules\nvar useTrans = __webpack_require__(74069);\n// EXTERNAL MODULE: ./node_modules/@mui/material/Skeleton/Skeleton.js + 2 modules\nvar Skeleton = __webpack_require__(88078);\n// EXTERNAL MODULE: ./node_modules/@mui/material/styles/useTheme.js\nvar useTheme = __webpack_require__(2734);\n// EXTERNAL MODULE: ./node_modules/@mui/material/Table/Table.js + 1 modules\nvar Table = __webpack_require__(7906);\n// EXTERNAL MODULE: ./node_modules/@mui/material/TableBody/TableBody.js + 1 modules\nvar TableBody = __webpack_require__(295);\n// EXTERNAL MODULE: ./node_modules/@mui/material/TableCell/TableCell.js\nvar TableCell = __webpack_require__(98102);\n// EXTERNAL MODULE: ./node_modules/@mui/material/TableRow/TableRow.js + 1 modules\nvar TableRow = __webpack_require__(68509);\n// EXTERNAL MODULE: ./node_modules/@mui/material/useMediaQuery/useMediaQuery.js\nvar useMediaQuery = __webpack_require__(98396);\n// EXTERNAL MODULE: ./node_modules/@orca-so/common-sdk/dist/index.js\nvar dist = __webpack_require__(66259);\n// EXTERNAL MODULE: ./node_modules/@solana/web3.js/lib/index.browser.esm.js + 3 modules\nvar index_browser_esm = __webpack_require__(27632);\n// EXTERNAL MODULE: ./node_modules/decimal.js/decimal.mjs\nvar decimal = __webpack_require__(90482);\n// EXTERNAL MODULE: ./node_modules/next/router.js\nvar next_router = __webpack_require__(11163);\n// EXTERNAL MODULE: ./node_modules/react-query/es/index.js\nvar es = __webpack_require__(88767);\n// EXTERNAL MODULE: ./src/components/base/Button/index.tsx\nvar Button = __webpack_require__(10737);\n// EXTERNAL MODULE: ./src/hooks/use-amplitude.ts + 61 modules\nvar use_amplitude = __webpack_require__(54341);\n// EXTERNAL MODULE: ./src/hooks/use-settings.ts + 1 modules\nvar use_settings = __webpack_require__(49472);\n// EXTERNAL MODULE: ./src/hooks/use-tokens/index.ts + 1 modules\nvar use_tokens = __webpack_require__(28309);\n// EXTERNAL MODULE: ./src/providers/nemo-program/index.tsx\nvar nemo_program = __webpack_require__(67477);\n// EXTERNAL MODULE: ./src/utils/helpers.ts\nvar helpers = __webpack_require__(73680);\n// EXTERNAL MODULE: ./src/utils/numeric.ts\nvar numeric = __webpack_require__(14847);\n;// CONCATENATED MODULE: ./src/components/liquidity-pools/helpers.ts\n\nconst DAY_IN_SECONDS = 60 * 60 * 24;\nconst calculatePoolApr = (param)=>{\n let { fee24h , totalLiquidity , reward24h , rateData , rewardTokenInfo } = param;\n if (!totalLiquidity) return new decimal/* default */.Z(0);\n const tokenSymbol = rewardTokenInfo === null || rewardTokenInfo === void 0 ? void 0 : rewardTokenInfo.symbol.toUpperCase();\n const tokenRate = (rateData === null || rateData === void 0 ? void 0 : rateData[tokenSymbol]) || 0;\n const reward24hInUsd = (reward24h === null || reward24h === void 0 ? void 0 : reward24h.mul(tokenRate)) || new decimal/* default */.Z(0);\n // ((24h reward + 24h fee) / total liquidity) * 365\n return reward24hInUsd.plus(fee24h).div(totalLiquidity).mul(365).mul(100);\n};\n\n;// CONCATENATED MODULE: ./src/components/liquidity-pools/pool.tsx\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst PoolItem = (param)=>{\n let { pool } = param;\n const amplitude = (0,use_amplitude/* default */.Z)();\n const trans = (0,useTrans/* default */.Z)();\n const router = (0,next_router.useRouter)();\n const { data: rateData } = (0,use_settings/* useRemitanoRate */.T)();\n const theme = (0,useTheme/* default */.Z)();\n const { getTokenInfo } = (0,use_tokens/* default */.Co)();\n const sm = (0,useMediaQuery/* default */.Z)(theme.breakpoints.up(\"sm\"));\n const md = (0,useMediaQuery/* default */.Z)(theme.breakpoints.up(\"md\"));\n const { client: nemoProgramClient } = (0,nemo_program/* useNemoProgram */.J)();\n const poolAddress = pool.pool_address;\n const { data: whirlPool , isLoading: isLoadingWhirlPool } = (0,es.useQuery)({\n queryKey: [\n \"getPool\",\n poolAddress\n ],\n queryFn: async ()=>{\n const poolKey = new index_browser_esm.PublicKey(poolAddress);\n const [, whirlPoolData] = await (0,helpers/* toResultAsync */.zM)(nemoProgramClient.getPool(poolKey));\n return whirlPoolData;\n }\n });\n const poolRewardInfo = (0,react.useMemo)(()=>{\n var _whirlPool_getRewardInfos;\n return (_whirlPool_getRewardInfos = whirlPool === null || whirlPool === void 0 ? void 0 : whirlPool.getRewardInfos()) === null || _whirlPool_getRewardInfos === void 0 ? void 0 : _whirlPool_getRewardInfos.find((rewardInfo)=>rewardInfo.initialized);\n }, [\n whirlPool\n ]);\n const poolRewardTokenInfo = (0,react.useMemo)(()=>{\n if (!poolRewardInfo) return null;\n return getTokenInfo(poolRewardInfo === null || poolRewardInfo === void 0 ? void 0 : poolRewardInfo.mint.toBase58());\n }, [\n poolRewardInfo,\n getTokenInfo\n ]);\n const emissionPerDay = (0,react.useMemo)(()=>{\n if (!poolRewardInfo || !poolRewardTokenInfo) return null;\n return dist.DecimalUtil.fromU64(/** Ref: https://github.com/renec-chain/nemo-swap/blob/master/scripts/create_pool/10_set_pool_reward_emission.ts#L97C75-L97C75 */ poolRewardInfo.emissionsPerSecondX64.muln(DAY_IN_SECONDS).shrn(64), poolRewardTokenInfo.decimals);\n }, [\n poolRewardInfo,\n poolRewardTokenInfo\n ]);\n const emissionPerDayStr = (0,react.useMemo)(()=>{\n return emissionPerDay ? (0,numeric/* format */.WU)(emissionPerDay) : \"0\";\n }, [\n emissionPerDay\n ]);\n const fee24h = (0,react.useMemo)(()=>{\n return new decimal/* default */.Z(pool.fee || 0).div(100).mul(pool.volumes_in_24h || 0);\n }, [\n pool\n ]);\n const aprValue = (0,react.useMemo)(()=>{\n return (0,numeric/* format */.WU)(calculatePoolApr({\n fee24h,\n totalLiquidity: Number(pool.total_liquidity),\n reward24h: emissionPerDay,\n rateData,\n rewardTokenInfo: poolRewardTokenInfo\n }).toFixed(2), {\n decimals: 2\n });\n }, [\n fee24h,\n pool.total_liquidity,\n emissionPerDay,\n rateData,\n poolRewardTokenInfo\n ]);\n const elmTokenPair = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n direction: \"row\",\n alignItems: \"center\",\n className: \"py-4 px-6 bg-[#1A2332] rounded-t-[16px]\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n direction: \"row\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(\"img\", {\n \"data-testid\": \"img-token-a\",\n src: pool.token_a_logo_url || helpers/* NOT_AVAILABLE_LOGO_URL */.Ov,\n alt: pool.token_a_name,\n className: \"rounded-full w-[40px] h-[40px] min-w-[40px] min-h-[40px] object-cover\"\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(\"img\", {\n \"data-testid\": \"img-token-b\",\n src: pool.token_b_logo_url || helpers/* NOT_AVAILABLE_LOGO_URL */.Ov,\n alt: pool.token_b_name,\n className: \"relative left-[-8px] w-[40px] h-[40px] min-w-[40px] min-h-[40px] rounded-full object-cover\"\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n \"data-testid\": \"txt-pool-pair-name\",\n className: \"text-[20px] font-semibold text-[#C2CBD9]\",\n children: [\n pool.token_a_symbol,\n \" / \",\n pool.token_b_symbol\n ]\n })\n ]\n });\n const elmFee = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n className: \"text-xl font-bold text-white\",\n children: [\n (0,numeric/* format */.WU)(pool.fee),\n \"%\"\n ]\n });\n const elmApr = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n className: \"text-xl font-bold text-white\",\n \"data-testid\": \"apr-value\",\n children: [\n aprValue,\n \"%\"\n ]\n });\n const elm24hVolume = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n className: \"text-sm text-[#DDE0E5]\",\n children: [\n \"$\",\n (0,numeric/* format */.WU)(pool.volumes_in_24h, 6)\n ]\n });\n const elm24hFee = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n className: \"text-sm text-[#DDE0E5]\",\n children: [\n \"$\",\n (0,numeric/* format */.WU)(fee24h.toFixed(6))\n ]\n });\n const elmTotalLiquidity = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n className: \"text-sm text-[#DDE0E5]\",\n children: [\n \"$\",\n (0,numeric/* format */.WU)(pool.total_liquidity || 0, 3)\n ]\n });\n const elmDepositButton = /*#__PURE__*/ (0,jsx_runtime.jsx)(Button/* default */.Z, {\n \"data-testid\": \"btn-goto-open-position\",\n className: \"w-full\",\n size: \"md\",\n onClick: ()=>{\n amplitude.track(use_amplitude/* EVENT_NAMES.liquidity_list_select */.K.liquidity_list_select, {\n from_token: pool.token_a_symbol,\n to_token: pool.token_b_symbol,\n pool_address: poolAddress\n });\n router.push(\"/liquidity/open-position/\".concat(poolAddress));\n },\n children: trans.liquidity.pool.deposit\n });\n const elmRewardInfo = /*#__PURE__*/ (0,jsx_runtime.jsxs)(Typography/* default */.Z, {\n className: \"text-center text-sm text-[#C2CBD9]\",\n \"data-testid\": \"reward-info\",\n children: [\n trans.liquidity.pool.reward,\n \":\",\n \" \",\n emissionPerDayStr !== \"0\" && poolRewardTokenInfo ? /*#__PURE__*/ (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(\"span\", {\n className: \"text-base font-bold leading-none text-[#10DC60]\",\n children: [\n \"+\",\n emissionPerDayStr\n ]\n }),\n \" \",\n poolRewardTokenInfo.displaySymbol,\n \"/\",\n trans.liquidity.pool.day\n ]\n }) : /*#__PURE__*/ (0,jsx_runtime.jsx)(\"span\", {\n className: \"text-base font-bold leading-none text-[#9CA3AE]\",\n children: \"0\"\n })\n ]\n });\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(Grid/* default */.ZP, {\n item: true,\n \"data-testid\": \"pool-\".concat(poolAddress),\n xs: md ? 4 : sm ? 6 : 12,\n children: [\n elmTokenPair,\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n className: \"bg-[#1E2735] p-6 rounded-b-[16px] gap-4\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n direction: \"row\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n flex: \"1\",\n direction: \"row\",\n alignItems: \"center\",\n gap: \"12px\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsxs)(Box/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-fee\",\n className: \"text-sm text-[#9CA3AE]\",\n children: trans.home.commission\n }),\n elmFee\n ]\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n flex: \"1\",\n direction: \"row\",\n alignItems: \"center\",\n gap: \"12px\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsxs)(Box/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-fee\",\n className: \"text-sm text-[#9CA3AE]\",\n children: \"APR\"\n }),\n elmApr\n ]\n })\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Box/* default */.Z, {\n className: \"py-4 border-t border-b border-solid border-[#3B4A5E]\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Table/* default */.Z, {\n size: \"small\",\n padding: \"none\",\n className: \"\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableBody/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableRow/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-24h-volume-\".concat(poolAddress),\n sx: {\n fontSize: 14,\n color: \"#888C9E\"\n },\n children: trans.liquidity.pool.volume_24h\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5 pl-2 text-right\",\n children: elm24hVolume\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableRow/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-24h-fee-\".concat(poolAddress),\n sx: {\n fontSize: 14,\n color: \"#888C9E\"\n },\n children: trans.liquidity.pool.fee_24h\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5 pl-2 text-right\",\n children: elm24hFee\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableRow/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-liquidity\",\n sx: {\n fontSize: 14,\n color: \"#888C9E\"\n },\n children: trans.liquidity.pool.total_liquidity\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5 pl-2 text-right\",\n children: elmTotalLiquidity\n })\n ]\n })\n ]\n })\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n gap: \"8px\",\n alignItems: \"center\",\n children: [\n isLoadingWhirlPool ? /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 16,\n width: \"70%\",\n className: \"transform-none inline-block\",\n \"data-testid\": \"skeleton-reward-info\"\n }) : elmRewardInfo,\n elmDepositButton\n ]\n })\n ]\n })\n ]\n });\n};\n/* harmony default export */ var liquidity_pools_pool = (PoolItem);\n\n;// CONCATENATED MODULE: ./src/components/liquidity-pools/pool.skeleton.tsx\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst PoolItemSkeleton = ()=>{\n const trans = (0,useTrans/* default */.Z)();\n const theme = (0,useTheme/* default */.Z)();\n const sm = (0,useMediaQuery/* default */.Z)(theme.breakpoints.up(\"sm\"));\n const md = (0,useMediaQuery/* default */.Z)(theme.breakpoints.up(\"md\"));\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(Grid/* default */.ZP, {\n item: true,\n xs: md ? 4 : sm ? 6 : 12,\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n direction: \"row\",\n alignItems: \"center\",\n className: \"py-4 px-6 bg-[#1A2332] rounded-t-[16px]\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n direction: \"row\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 40,\n width: 40,\n variant: \"circular\"\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 40,\n width: 40,\n variant: \"circular\",\n className: \"relative left-[-8px]\"\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"txt-pool-pair-name\",\n className: \"text-[20px] font-semibold text-[#C2CBD9]\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 30,\n width: 140\n })\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n className: \"bg-[#1E2735] p-6 rounded-b-[16px] gap-4\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n direction: \"row\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n flex: \"1\",\n direction: \"row\",\n alignItems: \"center\",\n gap: \"12px\",\n children: [\n \"\\\\\",\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Box/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-fee\",\n className: \"text-sm text-[#9CA3AE]\",\n children: trans.home.commission\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 28,\n width: 55\n })\n ]\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n flex: \"1\",\n direction: \"row\",\n alignItems: \"center\",\n gap: \"12px\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsxs)(Box/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-fee\",\n className: \"text-sm text-[#9CA3AE]\",\n children: \"APR\"\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 28,\n width: 55\n })\n ]\n })\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Box/* default */.Z, {\n className: \"py-4 border-t border-b border-solid border-[#3B4A5E]\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Table/* default */.Z, {\n size: \"small\",\n padding: \"none\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableBody/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableRow/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-24h-volume-?\",\n sx: {\n fontSize: 14,\n color: \"#888C9E\"\n },\n children: trans.liquidity.pool.volume_24h\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5 pl-2 text-right\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 20,\n width: 50,\n className: \"inline-block transform-none\"\n })\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableRow/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-1.5\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-24h-fee-?\",\n sx: {\n fontSize: 14,\n color: \"#888C9E\"\n },\n children: trans.liquidity.pool.fee_24h\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-2 pl-2 text-right\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 20,\n width: 50,\n className: \"inline-block transform-none\"\n })\n })\n ]\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(TableRow/* default */.Z, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-2\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n \"data-testid\": \"table-heading-pool-liquidity\",\n sx: {\n fontSize: 14,\n color: \"#888C9E\"\n },\n children: trans.liquidity.pool.total_liquidity\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(TableCell/* default */.Z, {\n className: \"border-none py-2 pl-2 text-right\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 20,\n width: 60,\n className: \"inline-block transform-none\"\n })\n })\n ]\n })\n ]\n })\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Stack/* default */.Z, {\n gap: \"8px\",\n alignItems: \"center\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 20,\n width: \"70%\",\n className: \"transform-none\"\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Skeleton/* default */.Z, {\n height: 40,\n width: \"100%\",\n className: \"transform-none\"\n })\n ]\n })\n ]\n })\n ]\n });\n};\nconst PoolSkeleton = (param)=>{\n let { numPools =0 } = param;\n const theme = (0,useTheme/* default */.Z)();\n const sm = (0,useMediaQuery/* default */.Z)(theme.breakpoints.up(\"sm\"));\n const md = (0,useMediaQuery/* default */.Z)(theme.breakpoints.up(\"md\"));\n // The number of pool item skeletons should fill the remaining blank space of\n // the last pool line, e.g., on large screens with three pools per line, two\n // skeletons should show in the position of the remaining pool items if there\n // is currently one pool alone on that line.\n // If the last pool line has no empty space left, show a new line with all\n // pool skeletons.\n const numPoolsPerLine = md ? 3 : sm ? 2 : 3;\n const numSkeletons = numPoolsPerLine - numPools % numPoolsPerLine;\n return /*#__PURE__*/ (0,jsx_runtime.jsx)(jsx_runtime.Fragment, {\n children: [\n ...Array(numSkeletons)\n ].map((_, index)=>/*#__PURE__*/ (0,jsx_runtime.jsx)(PoolItemSkeleton, {}, index))\n });\n};\n/* harmony default export */ var pool_skeleton = (PoolSkeleton);\n\n;// CONCATENATED MODULE: ./src/components/liquidity-pools/view.tsx\n\n\n\n\n\n\n\n\n\n\n\nconst View = (props)=>{\n var _poolsData_pages;\n const { poolsData , inputValue , setInputValue , isLoading , fetchNextPage , isEmptyPools } = props;\n const trans = (0,useTrans/* default */.Z)();\n const { ref , inView } = (0,react_intersection_observer/* useInView */.YD)();\n (0,react.useEffect)(()=>{\n if (inView) {\n fetchNextPage();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n inView\n ]);\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(Box/* default */.Z, {\n className: \"mt-6 mb-3\",\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Bar/* default */.Z, {\n inputValue: inputValue,\n setInputValue: setInputValue,\n tabActive: \"pools\",\n className: \"mb-4\"\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n className: \"h-full\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Box/* default */.Z, {\n className: \"w-full\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsxs)(Box/* default */.Z, {\n \"data-testid\": \"container-pool-list\",\n className: \"w-full\",\n children: [\n !isLoading && isEmptyPools(poolsData) && /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n className: \"m-8\",\n justifyContent: \"center\",\n alignItems: \"center\",\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Typography/* default */.Z, {\n children: inputValue ? trans.liquidity.no_results_found : trans.liquidity.no_pools_found\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(Grid/* default */.ZP, {\n container: true,\n spacing: !isEmptyPools(poolsData) || isLoading ? 2 : 0,\n children: [\n (poolsData === null || poolsData === void 0 ? void 0 : poolsData.pages) && (poolsData === null || poolsData === void 0 ? void 0 : (_poolsData_pages = poolsData.pages) === null || _poolsData_pages === void 0 ? void 0 : _poolsData_pages.length) > 0 && poolsData.pages.map((poolsData)=>poolsData.pools.map((pool)=>/*#__PURE__*/ (0,jsx_runtime.jsx)(liquidity_pools_pool, {\n pool: pool\n }, pool.pool_address))),\n isLoading && /*#__PURE__*/ (0,jsx_runtime.jsx)(pool_skeleton, {\n numPools: poolsData === null || poolsData === void 0 ? void 0 : poolsData.pages.reduce((prev, curr)=>prev + curr.pools.length, 0)\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Stack/* default */.Z, {\n ref: ref\n })\n ]\n })\n ]\n })\n })\n })\n })\n ]\n });\n};\n/* harmony default export */ var view = (/*#__PURE__*/(0,react.memo)(View));\n\n;// CONCATENATED MODULE: ./src/components/liquidity-pools/container.tsx\n\n\n\n\n\nlet debounceFn;\nconst Container = ()=>{\n const [inputValue, setInputValue] = (0,react.useState)(\"\");\n const [keyword, setKeyword] = (0,react.useState)(\"\");\n const { data: poolsFromBE , isFetching: isFetchingPools , fetchNextPage: fetchPoolsNextPage } = (0,use_nemo_apis/* useLiquidityPoolsInfinite */.uf)(keyword);\n const fetch = (0,react.useMemo)(()=>debounceFn = (0,debounce/* default */.Z)((request)=>{\n setKeyword(request.input);\n }, 400), []);\n (0,react.useEffect)(()=>{\n if (debounceFn) {\n debounceFn.clear();\n }\n if (inputValue) {\n fetch({\n input: inputValue\n });\n } else {\n setKeyword(\"\");\n }\n }, [\n inputValue,\n fetch\n ]);\n const fetchNextPage = (0,react.useCallback)(()=>{\n if (!(poolsFromBE === null || poolsFromBE === void 0 ? void 0 : poolsFromBE.pages[poolsFromBE.pageParams.length - 1].has_next_page)) return;\n fetchPoolsNextPage();\n }, [\n fetchPoolsNextPage,\n poolsFromBE === null || poolsFromBE === void 0 ? void 0 : poolsFromBE.pageParams.length,\n poolsFromBE === null || poolsFromBE === void 0 ? void 0 : poolsFromBE.pages\n ]);\n const isEmptyPools = (0,react.useCallback)((poolsData)=>{\n if (!poolsData) return true;\n if (poolsData.pages.length === 1 && poolsData.pages[0].pools.length === 0) return true;\n return false;\n }, []);\n const computedProps = {\n poolsData: poolsFromBE,\n inputValue,\n setInputValue,\n isLoading: isFetchingPools,\n fetchNextPage: fetchNextPage,\n isEmptyPools\n };\n return /*#__PURE__*/ (0,jsx_runtime.jsx)(view, {\n ...computedProps\n });\n};\n/* harmony default export */ var container = (Container);\n\n;// CONCATENATED MODULE: ./src/components/liquidity-pools/index.tsx\n\n\n// EXTERNAL MODULE: ./src/layouts/MainLayout/index.tsx + 28 modules\nvar MainLayout = __webpack_require__(72026);\n;// CONCATENATED MODULE: ./src/pages/liquidity/browse.nemo.tsx\n\n\n\nconst LiquidityPoolsPage = ()=>{\n return /*#__PURE__*/ (0,jsx_runtime.jsx)(MainLayout/* MainLayout */.Z, {\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(container, {})\n });\n};\nvar __N_SSP = true;\n/* harmony default export */ var browse_nemo = (LiquidityPoolsPage);\n\n\n/***/ })\n\n},\n/******/ function(__webpack_require__) { // webpackRuntimeModules\n/******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }\n/******/ __webpack_require__.O(0, [3714,7357,6571,3419,3595,7375,1988,4430,9774,2888,179], function() { return __webpack_exec__(64049); });\n/******/ var __webpack_exports__ = __webpack_require__.O();\n/******/ _N_E = __webpack_exports__;\n/******/ }\n]);"],"names":["self","push","__unused_webpack_module","__unused_webpack_exports","__webpack_require__","window","__NEXT_P","__webpack_exports__","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","_mui_icons_material_Search__WEBPACK_IMPORTED_MODULE_12__","_mui_material__WEBPACK_IMPORTED_MODULE_4__","_mui_material__WEBPACK_IMPORTED_MODULE_5__","_mui_material__WEBPACK_IMPORTED_MODULE_7__","_mui_material__WEBPACK_IMPORTED_MODULE_8__","_mui_material__WEBPACK_IMPORTED_MODULE_9__","_mui_material__WEBPACK_IMPORTED_MODULE_10__","_mui_material__WEBPACK_IMPORTED_MODULE_11__","_mui_material_Stack__WEBPACK_IMPORTED_MODULE_6__","next_router__WEBPACK_IMPORTED_MODULE_1__","react__WEBPACK_IMPORTED_MODULE_2__","_hooks_useTrans__WEBPACK_IMPORTED_MODULE_3__","Bar","inputValue","setInputValue","tabActive","props","param","router","useRouter","trans","Z","redirectTab","tab","replace","concat","isSmallScreen","breakpoints","down","jsxs","direction","className","alignItems","justifyContent","spacing","children","jsx","onClick","fullWidth","sx","color","fontWeight","textTransform","whiteSpace","liquidity","bar","pools","height","positions","disableUnderline","placeholder","pool_search_placeholder","startAdornment","position","inputProps","onChange","e","target","value","style","width","undefined","memo","debounceFn","r","d","__N_SSP","browse_nemo","jsx_runtime","debounce","react","use_nemo_apis","Box","Grid","Stack","Typography","react_intersection_observer","useTrans","Skeleton","useTheme","Table","TableBody","TableCell","TableRow","useMediaQuery","dist","index_browser_esm","decimal","next_router","es","Button","use_amplitude","use_settings","use_tokens","nemo_program","helpers","numeric","calculatePoolApr","fee24h","totalLiquidity","reward24h","rateData","rewardTokenInfo","tokenSymbol","symbol","toUpperCase","tokenRate","reward24hInUsd","mul","plus","div","PoolItem","pool","amplitude","data","T","theme","getTokenInfo","Co","sm","up","md","client","nemoProgramClient","J","poolAddress","pool_address","whirlPool","isLoading","isLoadingWhirlPool","useQuery","queryKey","queryFn","poolKey","PublicKey","whirlPoolData","zM","getPool","poolRewardInfo","useMemo","_whirlPool_getRewardInfos","getRewardInfos","find","rewardInfo","initialized","poolRewardTokenInfo","mint","toBase58","emissionPerDay","DecimalUtil","fromU64","emissionsPerSecondX64","muln","shrn","decimals","emissionPerDayStr","WU","fee","volumes_in_24h","aprValue","Number","total_liquidity","toFixed","elmTokenPair","src","token_a_logo_url","Ov","alt","token_a_name","token_b_logo_url","token_b_name","token_a_symbol","token_b_symbol","elmFee","elmApr","elm24hVolume","elm24hFee","elmTotalLiquidity","elmDepositButton","size","track","K","liquidity_list_select","from_token","to_token","deposit","elmRewardInfo","reward","Fragment","displaySymbol","day","ZP","item","xs","flex","gap","home","commission","padding","fontSize","volume_24h","fee_24h","PoolItemSkeleton","variant","PoolSkeleton","numPools","numPoolsPerLine","Array","map","_","index","View","_poolsData_pages","poolsData","fetchNextPage","isEmptyPools","ref","inView","YD","useEffect","no_results_found","no_pools_found","container","pages","length","reduce","prev","curr","view","Container","useState","keyword","setKeyword","poolsFromBE","isFetching","isFetchingPools","fetchPoolsNextPage","uf","fetch","request","input","clear","useCallback","pageParams","has_next_page","MainLayout","LiquidityPoolsPage","O","s","_N_E"],"sourceRoot":""}