From 77b80fc989a473255c8273f3d9447fb61e4c1206 Mon Sep 17 00:00:00 2001 From: Serkan Reis Date: Fri, 27 Oct 2023 10:11:22 +0300 Subject: [PATCH] Include nBTC as an option for mint price denom --- .env.example | 6 ++++ config/minter.ts | 60 +++++++++++++++++++++++++++++++++++- config/token.ts | 9 +++++- env.d.ts | 6 ++++ pages/collections/create.tsx | 3 +- utils/constants.ts | 9 ++++++ 6 files changed, 90 insertions(+), 3 deletions(-) diff --git a/.env.example b/.env.example index ab98aa4..7d2556a 100644 --- a/.env.example +++ b/.env.example @@ -48,6 +48,12 @@ NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_FACTORY_ADDRESS="stars1fk5dkzcylam8mcpqrn8y9s NEXT_PUBLIC_OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS="stars1vzffawsjhvspstu5lvtzz2x5n7zh07hnw09c9dfxcj78un05rcms5n3q3e" NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS="stars1tc09vlgdg8rqyapcxwm9qdq8naj4gym9px4ntue9cs0kse5rvess0nee3a" +NEXT_PUBLIC_OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS="stars1cd4gykxfq4nc4yx8uzn8yr3ggu86r57chhxme4y7q2jag53cw75qgs96u8" +NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS="stars1d57xe77mvcg5q337umf4qz49vumfn6w3wss0t7u8ra6s3cyvezsqyaeejn" + +NEXT_PUBLIC_VENDING_IBC_NBTC_FACTORY_ADDRESS="stars1e6t6lp052er2gu3rwjnf434vgh59ydkfg8dm589fxlx593afqmuqh75a0s" +NEXT_PUBLIC_VENDING_IBC_NBTC_UPDATABLE_FACTORY_ADDRESS="stars1k6ee8qgwvumguqnqqrvsnwluwk0rp994nkcgdemk0tj3ecc5kk8su2tcr4" + NEXT_PUBLIC_SG721_NAME_ADDRESS="stars1fx74nkqkw2748av8j7ew7r3xt9cgjqduwn8m0ur5lhe49uhlsasszc5fhr" NEXT_PUBLIC_ROYALTY_REGISTRY_ADDRESS="stars1crgx0f70fzksa57hq87wtl8f04h0qyk5la0hk0fu8dyhl67ju80qaxzr5z" NEXT_PUBLIC_INFINITY_SWAP_PROTOCOL_ADDRESS="stars136yp6fl9h66m0cwv8weu4w4aawveuz40992ty0atj5ecjd8z0thqv9xpy5" diff --git a/config/minter.ts b/config/minter.ts index e65fc2e..37330b4 100644 --- a/config/minter.ts +++ b/config/minter.ts @@ -2,10 +2,12 @@ import { OPEN_EDITION_FACTORY_ADDRESS, OPEN_EDITION_IBC_ATOM_FACTORY_ADDRESS, OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS, + OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS, OPEN_EDITION_IBC_USDC_FACTORY_ADDRESS, OPEN_EDITION_UPDATABLE_FACTORY_ADDRESS, OPEN_EDITION_UPDATABLE_IBC_ATOM_FACTORY_ADDRESS, OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS, + OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS, OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS, VENDING_FACTORY_ADDRESS, VENDING_FACTORY_FLEX_ADDRESS, @@ -15,6 +17,10 @@ import { VENDING_IBC_ATOM_FACTORY_FLEX_ADDRESS, VENDING_IBC_ATOM_UPDATABLE_FACTORY_ADDRESS, VENDING_IBC_ATOM_UPDATABLE_FACTORY_FLEX_ADDRESS, + VENDING_IBC_NBTC_FACTORY_ADDRESS, + VENDING_IBC_NBTC_FACTORY_FLEX_ADDRESS, + VENDING_IBC_NBTC_UPDATABLE_FACTORY_ADDRESS, + VENDING_IBC_NBTC_UPDATABLE_FACTORY_FLEX_ADDRESS, VENDING_IBC_USDC_FACTORY_ADDRESS, VENDING_IBC_USDC_FACTORY_FLEX_ADDRESS, VENDING_IBC_USDC_UPDATABLE_FACTORY_ADDRESS, @@ -29,7 +35,7 @@ import { } from 'utils/constants' import type { TokenInfo } from './token' -import { ibcAtom, ibcFrnz, ibcUsdc, ibcUsk, nativeStardust, stars } from './token' +import { ibcAtom, ibcFrnz, ibcNbtc, ibcUsdc, ibcUsk, nativeStardust, stars } from './token' export interface MinterInfo { id: string @@ -74,6 +80,13 @@ export const openEditionIbcUsdcMinter: MinterInfo = { updatable: false, } +export const openEditionIbcNbtcMinter: MinterInfo = { + id: 'open-edition-ibc-nbtc-minter', + factoryAddress: OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS, + supportedToken: ibcNbtc, + updatable: false, +} + export const openEditionUpdatableIbcUsdcMinter: MinterInfo = { id: 'open-edition-updatable-ibc-usdc-minter', factoryAddress: OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS, @@ -81,6 +94,13 @@ export const openEditionUpdatableIbcUsdcMinter: MinterInfo = { updatable: true, } +export const openEditionUpdatableIbcNbtcMinter: MinterInfo = { + id: 'open-edition-updatable-ibc-nbtc-minter', + factoryAddress: OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS, + supportedToken: ibcNbtc, + updatable: true, +} + export const openEditionIbcFrnzMinter: MinterInfo = { id: 'open-edition-ibc-frnz-minter', factoryAddress: OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS, @@ -104,6 +124,8 @@ export const openEditionMinterList = [ openEditionUpdatableIbcFrnzMinter, openEditionIbcUsdcMinter, openEditionUpdatableIbcUsdcMinter, + openEditionIbcNbtcMinter, + openEditionUpdatableIbcNbtcMinter, ] export const vendingStarsMinter: MinterInfo = { @@ -146,6 +168,14 @@ export const vendingIbcUsdcMinter: MinterInfo = { flexible: false, } +export const vendingIbcNbtcMinter: MinterInfo = { + id: 'vending-ibc-nbtc-minter', + factoryAddress: VENDING_IBC_NBTC_FACTORY_ADDRESS, + supportedToken: ibcNbtc, + updatable: false, + flexible: false, +} + export const vendingUpdatableIbcUsdcMinter: MinterInfo = { id: 'vending-updatable-ibc-usdc-minter', factoryAddress: VENDING_IBC_USDC_UPDATABLE_FACTORY_ADDRESS, @@ -154,6 +184,14 @@ export const vendingUpdatableIbcUsdcMinter: MinterInfo = { flexible: false, } +export const vendingUpdatableIbcNbtcMinter: MinterInfo = { + id: 'vending-updatable-ibc-nbtc-minter', + factoryAddress: VENDING_IBC_NBTC_UPDATABLE_FACTORY_ADDRESS, + supportedToken: ibcNbtc, + updatable: true, + flexible: false, +} + export const vendingIbcUskMinter: MinterInfo = { id: 'vending-ibc-usk-minter', factoryAddress: VENDING_IBC_USK_FACTORY_ADDRESS, @@ -193,6 +231,8 @@ export const vendingMinterList = [ vendingUpdatableIbcAtomMinter, vendingIbcUsdcMinter, vendingUpdatableIbcUsdcMinter, + vendingIbcNbtcMinter, + vendingUpdatableIbcNbtcMinter, vendingIbcUskMinter, vendingUpdatableIbcUskMinter, vendingNativeStardustMinter, @@ -239,6 +279,14 @@ export const flexibleVendingIbcUsdcMinter: MinterInfo = { flexible: true, } +export const flexibleVendingIbcNbtcMinter: MinterInfo = { + id: 'flexible-vending-ibc-nbtc-minter', + factoryAddress: VENDING_IBC_NBTC_FACTORY_FLEX_ADDRESS, + supportedToken: ibcNbtc, + updatable: false, + flexible: true, +} + export const flexibleVendingUpdatableIbcUsdcMinter: MinterInfo = { id: 'flexible-vending-updatable-ibc-usdc-minter', factoryAddress: VENDING_IBC_USDC_UPDATABLE_FACTORY_FLEX_ADDRESS, @@ -247,6 +295,14 @@ export const flexibleVendingUpdatableIbcUsdcMinter: MinterInfo = { flexible: true, } +export const flexibleVendingUpdatableIbcNbtcMinter: MinterInfo = { + id: 'flexible-vending-updatable-ibc-nbtc-minter', + factoryAddress: VENDING_IBC_NBTC_UPDATABLE_FACTORY_FLEX_ADDRESS, + supportedToken: ibcNbtc, + updatable: true, + flexible: true, +} + export const flexibleVendingIbcUskMinter: MinterInfo = { id: 'flexible-vending-ibc-usk-minter', factoryAddress: VENDING_IBC_USK_FACTORY_FLEX_ADDRESS, @@ -278,6 +334,8 @@ export const flexibleVendingMinterList = [ flexibleVendingUpdatableIbcAtomMinter, flexibleVendingIbcUsdcMinter, flexibleVendingUpdatableIbcUsdcMinter, + flexibleVendingIbcNbtcMinter, + flexibleVendingUpdatableIbcNbtcMinter, flexibleVendingIbcUskMinter, flexibleVendingUpdatableIbcUskMinter, flexibleVendingStrdstMinter, diff --git a/config/token.ts b/config/token.ts index 979b12b..184f911 100644 --- a/config/token.ts +++ b/config/token.ts @@ -50,6 +50,13 @@ export const ibcFrnz: TokenInfo = { decimalPlaces: 6, } +export const ibcNbtc: TokenInfo = { + id: 'ibc-nBTC', + denom: NETWORK === 'mainnet' ? 'Not available' : 'factory/stars153w5xhuqu3et29lgqk4dsynj6gjn96lr33wx4e/unbtc', + displayName: 'nBTC', + decimalPlaces: 6, +} + export const nativeStardust: TokenInfo = { id: 'native-strdst', denom: @@ -60,4 +67,4 @@ export const nativeStardust: TokenInfo = { decimalPlaces: 6, } -export const tokensList = [stars, ibcAtom, ibcUsdc, ibcUsk, ibcFrnz, nativeStardust] +export const tokensList = [stars, ibcAtom, ibcUsdc, ibcUsk, ibcFrnz, ibcNbtc, nativeStardust] diff --git a/env.d.ts b/env.d.ts index 4bc4008..dfae968 100644 --- a/env.d.ts +++ b/env.d.ts @@ -31,12 +31,16 @@ declare namespace NodeJS { readonly NEXT_PUBLIC_VENDING_IBC_ATOM_UPDATABLE_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USDC_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USDC_UPDATABLE_FACTORY_ADDRESS: string + readonly NEXT_PUBLIC_VENDING_IBC_NBTC_FACTORY_ADDRESS: string + readonly NEXT_PUBLIC_VENDING_IBC_NBTC_UPDATABLE_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USK_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USK_UPDATABLE_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_ATOM_FACTORY_FLEX_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_ATOM_UPDATABLE_FACTORY_FLEX_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USDC_FACTORY_FLEX_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USDC_UPDATABLE_FACTORY_FLEX_ADDRESS: string + readonly NEXT_PUBLIC_VENDING_IBC_NBTC_FACTORY_FLEX_ADDRESS: string + readonly NEXT_PUBLIC_VENDING_IBC_NBTC_UPDATABLE_FACTORY_FLEX_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USK_FACTORY_FLEX_ADDRESS: string readonly NEXT_PUBLIC_VENDING_IBC_USK_UPDATABLE_FACTORY_FLEX_ADDRESS: string readonly NEXT_PUBLIC_VENDING_NATIVE_STARDUST_FACTORY_ADDRESS: string @@ -48,6 +52,8 @@ declare namespace NodeJS { readonly NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_ATOM_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_OPEN_EDITION_IBC_USDC_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS: string + readonly NEXT_PUBLIC_OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS: string + readonly NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS: string readonly NEXT_PUBLIC_OPEN_EDITION_MINTER_CODE_ID: string diff --git a/pages/collections/create.tsx b/pages/collections/create.tsx index a5c1b01..4a41fc9 100644 --- a/pages/collections/create.tsx +++ b/pages/collections/create.tsx @@ -578,7 +578,8 @@ const CollectionCreationPage: NextPage = () => { ? SG721_UPDATABLE_CODE_ID : mintingDetails?.selectedMintToken?.displayName === 'STRDST' || mintingDetails?.selectedMintToken?.displayName === 'USK' || - mintingDetails?.selectedMintToken?.displayName === 'USDC' + mintingDetails?.selectedMintToken?.displayName === 'USDC' || + mintingDetails?.selectedMintToken?.displayName === 'nBTC' ? STRDST_SG721_CODE_ID : SG721_CODE_ID, name: collectionDetails?.name, diff --git a/utils/constants.ts b/utils/constants.ts index ad6105e..ed8f354 100644 --- a/utils/constants.ts +++ b/utils/constants.ts @@ -20,6 +20,9 @@ export const VENDING_IBC_ATOM_UPDATABLE_FACTORY_ADDRESS = export const VENDING_IBC_USDC_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USDC_FACTORY_ADDRESS export const VENDING_IBC_USDC_UPDATABLE_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USDC_UPDATABLE_FACTORY_ADDRESS +export const VENDING_IBC_NBTC_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_NBTC_FACTORY_ADDRESS +export const VENDING_IBC_NBTC_UPDATABLE_FACTORY_ADDRESS = + process.env.NEXT_PUBLIC_VENDING_IBC_NBTC_UPDATABLE_FACTORY_ADDRESS export const VENDING_IBC_USK_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USK_FACTORY_ADDRESS export const VENDING_IBC_USK_UPDATABLE_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USK_UPDATABLE_FACTORY_ADDRESS @@ -29,6 +32,9 @@ export const VENDING_IBC_ATOM_UPDATABLE_FACTORY_FLEX_ADDRESS = export const VENDING_IBC_USDC_FACTORY_FLEX_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USDC_FACTORY_FLEX_ADDRESS export const VENDING_IBC_USDC_UPDATABLE_FACTORY_FLEX_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USDC_UPDATABLE_FACTORY_FLEX_ADDRESS +export const VENDING_IBC_NBTC_FACTORY_FLEX_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_NBTC_FACTORY_FLEX_ADDRESS +export const VENDING_IBC_NBTC_UPDATABLE_FACTORY_FLEX_ADDRESS = + process.env.NEXT_PUBLIC_VENDING_IBC_NBTC_UPDATABLE_FACTORY_FLEX_ADDRESS export const VENDING_IBC_USK_FACTORY_FLEX_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USK_FACTORY_FLEX_ADDRESS export const VENDING_IBC_USK_UPDATABLE_FACTORY_FLEX_ADDRESS = process.env.NEXT_PUBLIC_VENDING_IBC_USK_UPDATABLE_FACTORY_FLEX_ADDRESS @@ -47,6 +53,9 @@ export const OPEN_EDITION_UPDATABLE_IBC_ATOM_FACTORY_ADDRESS = export const OPEN_EDITION_IBC_USDC_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_OPEN_EDITION_IBC_USDC_FACTORY_ADDRESS export const OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS +export const OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS +export const OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS = + process.env.NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS export const OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS export const OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS = process.env.NEXT_PUBLIC_OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS