diff --git a/CHANGELOG.md b/CHANGELOG.md index 1da5d6a3a..448b61c62 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,6 +44,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Improvements +- [#334](https://github.com/alleslabs/celatone-frontend/pull/334) Change `osmo-test-4` to `osmo-test-5`, fix tx service when accountId is undefined - [#311](https://github.com/alleslabs/celatone-frontend/pull/311) Refine css styling - [#328](https://github.com/alleslabs/celatone-frontend/pull/328) Add proposal and pool page in sidebar navigation - [#298](https://github.com/alleslabs/celatone-frontend/pull/298) Show deposit/voting period from gov params and add minimum required alert diff --git a/package.json b/package.json index 6c48a0c79..8a0c05ed8 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "axios": "^1.1.3", "big.js": "^6.2.1", "camelcase": "^7.0.0", - "chain-registry": "^1.3.1", + "chain-registry": "1.13.0", "cosmjs-types": "^0.7.2", "dayjs": "^1.11.6", "framer-motion": "^7.6.12", diff --git a/src/env.ts b/src/env.ts index d246d27b9..5aa643efe 100644 --- a/src/env.ts +++ b/src/env.ts @@ -13,7 +13,7 @@ import type { } from "types"; export const CELATONE_FALLBACK_GAS_PRICE: Record = { - osmosistestnet: { + osmosistestnet5: { denom: "uosmo", gasPrice: "0.025" as U, }, @@ -32,7 +32,7 @@ export const CELATONE_APP_CONTRACT_ADDRESS = ( ): CelatoneContractAddress => { switch (chainName) { case "osmosis": - case "osmosistestnet": + case "osmosistestnet5": return { example: "osmo1p0pxllmqjgl2tefy7grypt34jdpdltg3ka98n8unnl322wqps7lqtu576h" as ContractAddr, @@ -55,7 +55,7 @@ export const CELATONE_APP_HUMAN_ADDRESS = ( ): CelatoneHumanAddress => { switch (chainName) { case "osmosis": - case "osmosistestnet": + case "osmosistestnet5": return { example: "osmo14wk9zecqam9jsac7xwtf8e349ckquzzlx9k8c3" as HumanAddr, }; @@ -73,7 +73,7 @@ export const CELATONE_APP_HUMAN_ADDRESS = ( export const FALLBACK_LCD_ENDPOINT: Record = { osmosis: "https://lcd.osmosis.zone/", - osmosistestnet: "https://lcd-test.osmosis.zone/", + osmosistestnet5: "https://lcd.osmotest5.osmosis.zone/", terra2: "https://phoenix-lcd.terra.dev/", terra2testnet: "https://pisco-lcd.terra.dev/", }; @@ -94,7 +94,7 @@ export const CELATONE_API_ENDPOINT = "https://celatone-api.alleslabs.dev"; export const getChainApiPath = (chainName: string) => { switch (chainName) { - case "osmosistestnet": + case "osmosistestnet5": case "osmosis": return "osmosis"; case "terra2": diff --git a/src/lib/app-fns/explorer/index.ts b/src/lib/app-fns/explorer/index.ts index 1d975e04f..d17f1397d 100644 --- a/src/lib/app-fns/explorer/index.ts +++ b/src/lib/app-fns/explorer/index.ts @@ -1,6 +1,6 @@ export const explorerMap: Record = { osmosis: "https://www.mintscan.io/osmosis", - osmosistestnet: "https://testnet.mintscan.io/osmosis-testnet", + osmosistestnet5: "https://testnet.mintscan.io/osmosis-testnet", terra2: "https://terrasco.pe/mainnet", terra2testnet: "https://terrasco.pe/testnet", }; @@ -9,7 +9,7 @@ export const getExplorerProposalUrl = (chainName: string) => { let pathSuffix = ""; switch (chainName) { case "osmosis": - case "osmosistestnet": + case "osmosistestnet5": pathSuffix = "proposals"; break; case "terra2": @@ -26,7 +26,7 @@ export const getExplorerValidatorUrl = (chainName: string) => { let pathSuffix = ""; switch (chainName) { case "osmosis": - case "osmosistestnet": + case "osmosistestnet5": pathSuffix = "validators"; break; case "terra2": diff --git a/src/lib/app-provider/hooks/useAddress.ts b/src/lib/app-provider/hooks/useAddress.ts index 3f3ffbeac..0dfb996cd 100644 --- a/src/lib/app-provider/hooks/useAddress.ts +++ b/src/lib/app-provider/hooks/useAddress.ts @@ -19,7 +19,7 @@ const addressLengthMap: { 50: "validator_address", 63: "contract_address", }, - osmosistestnet: { + osmosistestnet5: { 43: "user_address", 50: "validator_address", 63: "contract_address", diff --git a/src/lib/app-provider/query-client/index.ts b/src/lib/app-provider/query-client/index.ts index 91d1b7b32..74464ceff 100644 --- a/src/lib/app-provider/query-client/index.ts +++ b/src/lib/app-provider/query-client/index.ts @@ -5,7 +5,7 @@ export const GRAPH_URL: Record = { * Revisit graphql for terra2 mainnet and osmosis mainnet */ osmosis: "https://osmosis-mainnet-graphql.alleslabs.dev/v1/graphql", - osmosistestnet: "https://osmosis-testnet-graphql.alleslabs.dev/v1/graphql", + osmosistestnet5: "https://osmo-test-5-graphql.alleslabs.dev/v1/graphql", terra2testnet: "https://terra-testnet-graphql.alleslabs.dev/v1/graphql", }; diff --git a/src/lib/data/chain.ts b/src/lib/data/chain.ts index 3c21cbfb7..28d9f9171 100644 --- a/src/lib/data/chain.ts +++ b/src/lib/data/chain.ts @@ -18,13 +18,13 @@ export const TERRA_CHAINS: Chain = { export const OSMOSIS_CHAINS: Chain = { mainnet: "osmosis", - testnet: "osmosistestnet", + testnet: "osmosistestnet5", }; // TODO: Remove this when mitosis is ready export const MITOSIS_CHAINS: Chain = { mainnet: "osmosis", - testnet: "osmosistestnet", + testnet: "osmosistestnet5", }; export const getSupportedChainNames = (): SupportedChain[] => { diff --git a/src/lib/layout/navbar/index.tsx b/src/lib/layout/navbar/index.tsx index 6da452be0..3bf3097e2 100644 --- a/src/lib/layout/navbar/index.tsx +++ b/src/lib/layout/navbar/index.tsx @@ -38,11 +38,11 @@ const Navbar = observer(({ isExpand, setIsExpand }: NavbarProps) => { slug: "/proposals", icon: "proposal", }, - { - name: "Osmosis Pools", - slug: "/pools", - icon: "pool", - }, + // { + // name: "Osmosis Pools", + // slug: "/pools", + // icon: "pool", + // }, ], }, { diff --git a/src/lib/services/txService.ts b/src/lib/services/txService.ts index a15fb40d0..a24e0dbd5 100644 --- a/src/lib/services/txService.ts +++ b/src/lib/services/txService.ts @@ -85,55 +85,52 @@ export const useTxsByAddressPagination = ( isSigner, }); - const queryFn = useCallback( - async () => - indexerGraphClient - .request(getTxsByAddressPagination, { - expression, - offset, - pageSize, - }) - .then(({ account_transactions }) => - account_transactions.map((transaction) => ({ - hash: parseTxHash(transaction.transaction.hash), - messages: snakeToCamel( - transaction.transaction.messages - ) as Message[], - sender: transaction.transaction.account.address as Addr, - isSigner: transaction.is_signer, - height: transaction.block.height, - created: parseDate(transaction.block.timestamp), - success: transaction.transaction.success, - actionMsgType: getActionMsgType([ - transaction.transaction.is_execute, - transaction.transaction.is_instantiate, - transaction.transaction.is_send, - transaction.transaction.is_store_code, - transaction.transaction.is_migrate, - transaction.transaction.is_update_admin, - transaction.transaction.is_clear_admin, - ]), - furtherAction: getMsgFurtherAction( - transaction.transaction.messages.length, - { - isExecute: transaction.transaction.is_execute, - isInstantiate: transaction.transaction.is_instantiate, - isSend: transaction.transaction.is_send, - isUpload: transaction.transaction.is_store_code, - isMigrate: transaction.transaction.is_migrate, - isUpdateAdmin: transaction.transaction.is_update_admin, - isClearAdmin: transaction.transaction.is_clear_admin, - isIbc: transaction.transaction.is_ibc, - }, - transaction.transaction.success, - transaction.is_signer - ), - isIbc: transaction.transaction.is_ibc, - isInstantiate: transaction.transaction.is_instantiate, - })) - ), - [expression, indexerGraphClient, offset, pageSize] - ); + const queryFn = useCallback(async () => { + if (!address && !accountId) return []; + return indexerGraphClient + .request(getTxsByAddressPagination, { + expression, + offset, + pageSize, + }) + .then(({ account_transactions }) => + account_transactions.map((transaction) => ({ + hash: parseTxHash(transaction.transaction.hash), + messages: snakeToCamel(transaction.transaction.messages) as Message[], + sender: transaction.transaction.account.address as Addr, + isSigner: transaction.is_signer, + height: transaction.block.height, + created: parseDate(transaction.block.timestamp), + success: transaction.transaction.success, + actionMsgType: getActionMsgType([ + transaction.transaction.is_execute, + transaction.transaction.is_instantiate, + transaction.transaction.is_send, + transaction.transaction.is_store_code, + transaction.transaction.is_migrate, + transaction.transaction.is_update_admin, + transaction.transaction.is_clear_admin, + ]), + furtherAction: getMsgFurtherAction( + transaction.transaction.messages.length, + { + isExecute: transaction.transaction.is_execute, + isInstantiate: transaction.transaction.is_instantiate, + isSend: transaction.transaction.is_send, + isUpload: transaction.transaction.is_store_code, + isMigrate: transaction.transaction.is_migrate, + isUpdateAdmin: transaction.transaction.is_update_admin, + isClearAdmin: transaction.transaction.is_clear_admin, + isIbc: transaction.transaction.is_ibc, + }, + transaction.transaction.success, + transaction.is_signer + ), + isIbc: transaction.transaction.is_ibc, + isInstantiate: transaction.transaction.is_instantiate, + })) + ); + }, [accountId, address, expression, indexerGraphClient, offset, pageSize]); return useQuery( [ "transactions_by_address_pagination", @@ -148,7 +145,6 @@ export const useTxsByAddressPagination = ( ], createQueryFnWithTimeout(queryFn), { - enabled: !!address || !!accountId, retry: 1, refetchOnWindowFocus: false, } diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index b65b9626b..33d498733 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -19,7 +19,6 @@ import { AppProvider } from "lib/app-provider/contexts/app"; import { Chakra } from "lib/components/Chakra"; import { MobileGuard } from "lib/components/MobileGuard"; import { CelatoneSeo } from "lib/components/Seo"; -import { terra2testnet, terra2testnetAssets } from "lib/config/terra2testnet"; import Layout from "lib/layout"; import "lib/styles/globals.css"; import { StoreProvider } from "lib/providers/store"; @@ -64,17 +63,17 @@ const MyApp = ({ Component, pageProps }: AppProps) => {