From 3c4c388a668c473666a4ed2db100ba24f89fa88e Mon Sep 17 00:00:00 2001 From: xr9kayu Date: Thu, 4 Sep 2025 17:44:35 +0300 Subject: [PATCH] feature: add usn and wankr --- frontend/app/.env | 34 ++++++++++++++++++++- frontend/app/src/app/earn/[pool]/layout.tsx | 2 ++ frontend/app/src/app/earn/[pool]/page.tsx | 2 ++ frontend/app/src/constants.ts | 2 ++ frontend/app/src/env.ts | 4 ++- frontend/uikit/src/tokens.ts | 26 ++++++++++++++++ 6 files changed, 68 insertions(+), 2 deletions(-) diff --git a/frontend/app/.env b/frontend/app/.env index e9d972788..f91df2863 100644 --- a/frontend/app/.env +++ b/frontend/app/.env @@ -148,6 +148,7 @@ NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=fd37755b4d4f8a59a1a064af3782ded4 # NEXT_PUBLIC_COLL_0_CONTRACT_STABILITY_POOL=0x89fb98c98792c8b9e9d468148c6593fa0fc47b40 # NEXT_PUBLIC_COLL_0_CONTRACT_TROVE_MANAGER=0x364038750236739e0cd96d5754516c9b8168fb0c # NEXT_PUBLIC_COLL_0_CONTRACT_TROVE_NFT=0x814541303b140a70741613a62eef7a8d6a940bee + # NEXT_PUBLIC_COLL_1_CONTRACT_ACTIVE_POOL=0x43765f5697a4dd925b7570966160b466b75ba0b1 # NEXT_PUBLIC_COLL_1_CONTRACT_ADDRESSES_REGISTRY=0x7026ba66c9ac775e33541b2f959c9ec19977b2fe # NEXT_PUBLIC_COLL_1_CONTRACT_BORROWER_OPERATIONS=0x4e7de0a55e967a174f47621b9f993068f96f6898 @@ -160,6 +161,7 @@ NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=fd37755b4d4f8a59a1a064af3782ded4 # NEXT_PUBLIC_COLL_1_CONTRACT_STABILITY_POOL=0x68320bd4bbc16fe14f91501380edaa9ffe5890e1 # NEXT_PUBLIC_COLL_1_CONTRACT_TROVE_MANAGER=0xa7b57913b5643025a15c80ca3a56eb6fb59d095d # NEXT_PUBLIC_COLL_1_CONTRACT_TROVE_NFT=0xa043d764044a239ee888370c22043132ee97817e + # NEXT_PUBLIC_COLL_2_CONTRACT_ACTIVE_POOL=0x770dc60f7d51a0b9e86a22adbcc0dba80925e860 # NEXT_PUBLIC_COLL_2_CONTRACT_ADDRESSES_REGISTRY=0xcc2034f1fbf906fcc0ddc0a4280c163dac88830f # NEXT_PUBLIC_COLL_2_CONTRACT_BORROWER_OPERATIONS=0x274ba4234b3e0a16f830b4a07bc99a33fbc19ba8 @@ -186,7 +188,7 @@ NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=fd37755b4d4f8a59a1a064af3782ded4 # NeuraTestnet # ################ -NEXT_PUBLIC_CHAIN_BLOCK_EXPLORER=https://testnet-blockscout.infra.neuraprotocol.io/ +NEXT_PUBLIC_CHAIN_BLOCK_EXPLORER=NeuraTestnet|https://testnet-blockscout.infra.neuraprotocol.io/ NEXT_PUBLIC_CHAIN_CURRENCY=Ankr|ANKR|18 NEXT_PUBLIC_CHAIN_ID=267 NEXT_PUBLIC_CHAIN_NAME=NeuraTestnet @@ -196,6 +198,9 @@ NEXT_PUBLIC_SUBGRAPH_URL=https://api.goldsky.com/api/public/project_cmevjjq0rde9 NEXT_PUBLIC_COLL_0_TOKEN_ID=WANKR NEXT_PUBLIC_COLL_1_TOKEN_ID=USN +LEGACY_CHECK=false +NEXT_PUBLIC_LEGACY_CHECK=false + NEXT_PUBLIC_COLL_0_CONTRACT_ACTIVE_POOL=0xe9786d98c6203ca0746061abfbfdeeb02e0fe5da NEXT_PUBLIC_COLL_0_CONTRACT_ADDRESSES_REGISTRY=0x9cdc1c9582136916362d84a1dc03f5aa25e318d1 NEXT_PUBLIC_COLL_0_CONTRACT_BORROWER_OPERATIONS=0x1ca56ac150e747074114a33223262f979ffd026c @@ -207,6 +212,21 @@ NEXT_PUBLIC_COLL_0_CONTRACT_SORTED_TROVES=0xc383b06357a330d1f326d8f3e0a92c8e5d91 NEXT_PUBLIC_COLL_0_CONTRACT_STABILITY_POOL=0x0c8a5ebc5b8bac0dfdad159ca61fd0906bf6f53e NEXT_PUBLIC_COLL_0_CONTRACT_TROVE_MANAGER=0x4d2044a26fde2876db02e19e4eac2e75ecb8d510 NEXT_PUBLIC_COLL_0_CONTRACT_TROVE_NFT=0xf92ea65bd8b2c038693e385a5b2965483b1ad60f +NEXT_PUBLIC_COLL_0_CONTRACT_LEVERAGE_ZAPPER=0x0000000000000000000000000000000000000000 + +# NEXT_PUBLIC_COLL_0_CONTRACT_ACTIVE_POOL=0x50f2f8f931955bb415c4d06a63c150756eb8ef66 +# NEXT_PUBLIC_COLL_0_CONTRACT_ADDRESSES_REGISTRY=0x3734cfb34f202b933a54b0b404f1073fd27dd78a +# NEXT_PUBLIC_COLL_0_CONTRACT_BORROWER_OPERATIONS=0xe006d06c9ae1e9636e6cef0fac21179af7470297 +# NEXT_PUBLIC_COLL_0_CONTRACT_COLL_SURPLUS_POOL=0xdaa009e9c65d4a229d5595844f5451be36c42350 +# NEXT_PUBLIC_COLL_0_CONTRACT_COLL_TOKEN=0x8116d0a0e8d4f0197b428c520953f302adca0b50 +# NEXT_PUBLIC_COLL_0_CONTRACT_DEFAULT_POOL=0x4638c071e5ca35be737339f7ebe74c42f95465ea +# NEXT_PUBLIC_COLL_0_CONTRACT_LEVERAGE_ZAPPER=0x482bf4d6a2e61d259a7f97ef6aac8b3ce5dd9f99 +# NEXT_PUBLIC_COLL_0_CONTRACT_PRICE_FEED=0x8fc6c1963d7c33f8c1adf4a25d7a18d45bac5e87 +# NEXT_PUBLIC_COLL_0_CONTRACT_SORTED_TROVES=0x47dca3701ab0a70e39fd900015ac6a32bceafb87 +# NEXT_PUBLIC_COLL_0_CONTRACT_STABILITY_POOL=0x89fb98c98792c8b9e9d468148c6593fa0fc47b40 +# NEXT_PUBLIC_COLL_0_CONTRACT_TROVE_MANAGER=0x364038750236739e0cd96d5754516c9b8168fb0c +# NEXT_PUBLIC_COLL_0_CONTRACT_TROVE_NFT=0x814541303b140a70741613a62eef7a8d6a940bee + NEXT_PUBLIC_COLL_1_CONTRACT_ACTIVE_POOL=0x9e00f9c4b769e11f1768da12a255e2b6e3ca9969 NEXT_PUBLIC_COLL_1_CONTRACT_ADDRESSES_REGISTRY=0x9869a3ce15587b32dec8049aabd0572fffc9a5fc NEXT_PUBLIC_COLL_1_CONTRACT_BORROWER_OPERATIONS=0x53ca33f16a98c877f19bf64a3ecc3411d049fe9f @@ -218,12 +238,24 @@ NEXT_PUBLIC_COLL_1_CONTRACT_SORTED_TROVES=0xf6371a5c497170dbae162c830564fac462f2 NEXT_PUBLIC_COLL_1_CONTRACT_STABILITY_POOL=0x54ccb90ef683a7256fbd600db3d64d6d1015586c NEXT_PUBLIC_COLL_1_CONTRACT_TROVE_MANAGER=0xb048a13fad98f35470ce962ddfce8c8450822d33 NEXT_PUBLIC_COLL_1_CONTRACT_TROVE_NFT=0x23197d6c5199fdcddd441fc4924b5356313dc936 +NEXT_PUBLIC_COLL_1_CONTRACT_LEVERAGE_ZAPPER=0x0000000000000000000000000000000000000000 + + NEXT_PUBLIC_CONTRACT_BOLD_TOKEN=0xc13441f42e0aca71ea246aba87bdcdf646a456dd NEXT_PUBLIC_CONTRACT_COLLATERAL_REGISTRY=0x39e982e327bb27549c447cb91ae220ad8a566afa NEXT_PUBLIC_CONTRACT_HINT_HELPERS=0x7375ff5c5e993d2dfbff6b1d099d16971fae16b8 NEXT_PUBLIC_CONTRACT_MULTI_TROVE_GETTER=0x580d8e94b61a2c3132b9b1f50d944ff4add3c3bb NEXT_PUBLIC_CONTRACT_WETH=0xBd833b6eCC30CAEaBf81dB18BB0f1e00C6997E7a +NEXT_PUBLIC_CONTRACT_LQTY_STAKING=0x0000000000000000000000000000000000000000 +NEXT_PUBLIC_CONTRACT_LQTY_TOKEN=0x0000000000000000000000000000000000000000 +NEXT_PUBLIC_CONTRACT_LUSD_TOKEN=0x0000000000000000000000000000000000000000 +NEXT_PUBLIC_CONTRACT_EXCHANGE_HELPERS=0x0000000000000000000000000000000000000000 +NEXT_PUBLIC_CONTRACT_GOVERNANCE=0x0000000000000000000000000000000000000000 +NEXT_PUBLIC_CHAIN_CONTRACT_MULTICALL=0x0000000000000000000000000000000000000000 +NEXT_PUBLIC_CONTRACT_DEBT_IN_FRONT_HELPER=0x0000000000000000000000000000000000000000 + + ########################### # Hardhat / Anvil (local) # ########################### diff --git a/frontend/app/src/app/earn/[pool]/layout.tsx b/frontend/app/src/app/earn/[pool]/layout.tsx index ddb0f51b3..667cbe58d 100644 --- a/frontend/app/src/app/earn/[pool]/layout.tsx +++ b/frontend/app/src/app/earn/[pool]/layout.tsx @@ -7,6 +7,8 @@ export function generateStaticParams() { { pool: "reth" }, { pool: "wsteth" }, { pool: "sbold" }, + { pool: "wankr" }, + { pool: "usn" }, ]; } diff --git a/frontend/app/src/app/earn/[pool]/page.tsx b/frontend/app/src/app/earn/[pool]/page.tsx index 1ad0372d9..21efcc8e1 100644 --- a/frontend/app/src/app/earn/[pool]/page.tsx +++ b/frontend/app/src/app/earn/[pool]/page.tsx @@ -4,6 +4,8 @@ export function generateStaticParams() { { pool: "reth" }, { pool: "wsteth" }, { pool: "sbold" }, + { pool: "wankr" }, + { pool: "usn" }, ]; } diff --git a/frontend/app/src/constants.ts b/frontend/app/src/constants.ts index 0e1f90b82..75bacdf77 100644 --- a/frontend/app/src/constants.ts +++ b/frontend/app/src/constants.ts @@ -69,6 +69,8 @@ export const MAX_COLLATERAL_DEPOSITS: Record = { ETH: dn.from(100_000_000n, 18), WSTETH: dn.from(100_000_000n, 18), RETH: dn.from(100_000_000n, 18), + WANKR: dn.from(100_000_000n, 18), + USN: dn.from(100_000_000n, 18), }; // LTV factor suggestions, as ratios of the multiply factor range diff --git a/frontend/app/src/env.ts b/frontend/app/src/env.ts index 735873958..d02b0f168 100644 --- a/frontend/app/src/env.ts +++ b/frontend/app/src/env.ts @@ -32,6 +32,8 @@ export const CollateralSymbolSchema = v.union([ v.literal("ETH"), v.literal("RETH"), v.literal("WSTETH"), + v.literal("USN"), + v.literal("WANKR"), ]); function isCollateralSymbol(value: unknown) { @@ -176,7 +178,7 @@ export const EnvSchema = v.pipe( v.transform((value) => value.trim() || null), ), KNOWN_INITIATIVES_URL: v.optional(v.pipe(v.string(), v.url())), - LEGACY_CHECK: v.optional(vEnvLegacyCheck(), "true"), + LEGACY_CHECK: v.optional(vEnvLegacyCheck(), "false"), LIQUITY_STATS_URL: v.optional(v.pipe(v.string(), v.url())), LIQUITY_GOVERNANCE_URL: v.optional(v.union([v.pipe(v.string(), v.url()), v.literal("")])), SAFE_API_URL: v.optional(v.union([v.pipe(v.string(), v.url()), v.literal("")])), diff --git a/frontend/uikit/src/tokens.ts b/frontend/uikit/src/tokens.ts index 6b7ae76d3..cd1cbcda0 100644 --- a/frontend/uikit/src/tokens.ts +++ b/frontend/uikit/src/tokens.ts @@ -27,6 +27,8 @@ export type TokenSymbol = | "LUSD" | "RETH" | "SBOLD" + | "USN" + | "WANKR" | "WSTETH"; export type CollateralSymbol = @@ -34,6 +36,8 @@ export type CollateralSymbol = & ( | "ETH" | "RETH" + | "WANKR" + | "USN" | "WSTETH" ); @@ -46,6 +50,8 @@ export function isTokenSymbol(symbolOrUrl: string): symbolOrUrl is TokenSymbol { || symbolOrUrl === "RETH" || symbolOrUrl === "SBOLD" || symbolOrUrl === "WSTETH" + || symbolOrUrl === "WANKR" + || symbolOrUrl === "USN" ); } @@ -54,6 +60,8 @@ export function isCollateralSymbol(symbol: string): symbol is CollateralSymbol { symbol === "ETH" || symbol === "RETH" || symbol === "WSTETH" + || symbol === "USN" + || symbol === "WANKR" ); } @@ -107,10 +115,26 @@ export const WSTETH: CollateralToken = { symbol: "WSTETH" as const, } as const; +export const USN: CollateralToken = { + collateralRatio: 1.2, + icon: tokenSteth, + name: "USN", + symbol: "USN" as const, +} as const; + +export const WANKR: CollateralToken = { + collateralRatio: 1.2, + icon: tokenSteth, + name: "WANKR", + symbol: "WANKR" as const, +} as const; + export const COLLATERALS: CollateralToken[] = [ ETH, RETH, WSTETH, + WANKR, + USN, ]; export const TOKENS_BY_SYMBOL = { @@ -121,4 +145,6 @@ export const TOKENS_BY_SYMBOL = { RETH, SBOLD, WSTETH, + WANKR, + USN, } as const;