stargaze-studio/config/minter.ts

399 lines
12 KiB
TypeScript
Raw Normal View History

2023-07-27 14:26:51 +00:00
import {
OPEN_EDITION_FACTORY_ADDRESS,
OPEN_EDITION_IBC_ATOM_FACTORY_ADDRESS,
2023-08-07 09:59:23 +00:00
OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS,
OPEN_EDITION_IBC_KUJI_FACTORY_ADDRESS,
OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS,
2023-07-30 18:11:37 +00:00
OPEN_EDITION_IBC_USDC_FACTORY_ADDRESS,
OPEN_EDITION_IBC_USK_FACTORY_ADDRESS,
OPEN_EDITION_NATIVE_STRDST_FACTORY_ADDRESS,
2023-07-30 18:11:37 +00:00
OPEN_EDITION_UPDATABLE_FACTORY_ADDRESS,
OPEN_EDITION_UPDATABLE_IBC_ATOM_FACTORY_ADDRESS,
2023-08-07 09:59:23 +00:00
OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS,
OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS,
2023-07-30 18:11:37 +00:00
OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS,
OPEN_EDITION_UPDATABLE_IBC_USK_FACTORY_ADDRESS,
VENDING_FACTORY_ADDRESS,
VENDING_FACTORY_FLEX_ADDRESS,
VENDING_FACTORY_UPDATABLE_ADDRESS,
VENDING_FACTORY_UPDATABLE_FLEX_ADDRESS,
VENDING_IBC_ATOM_FACTORY_ADDRESS,
VENDING_IBC_ATOM_FACTORY_FLEX_ADDRESS,
VENDING_IBC_ATOM_UPDATABLE_FACTORY_ADDRESS,
VENDING_IBC_ATOM_UPDATABLE_FACTORY_FLEX_ADDRESS,
VENDING_IBC_KUJI_FACTORY_ADDRESS,
VENDING_IBC_KUJI_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,
VENDING_IBC_USDC_UPDATABLE_FACTORY_FLEX_ADDRESS,
2023-10-18 19:47:40 +00:00
VENDING_IBC_USK_FACTORY_ADDRESS,
VENDING_IBC_USK_FACTORY_FLEX_ADDRESS,
VENDING_IBC_USK_UPDATABLE_FACTORY_ADDRESS,
VENDING_IBC_USK_UPDATABLE_FACTORY_FLEX_ADDRESS,
VENDING_NATIVE_STARDUST_FACTORY_ADDRESS,
VENDING_NATIVE_STARDUST_UPDATABLE_FACTORY_ADDRESS,
2023-10-13 16:17:09 +00:00
VENDING_NATIVE_STRDST_FLEX_FACTORY_ADDRESS,
2023-07-27 14:26:51 +00:00
} from 'utils/constants'
import type { TokenInfo } from './token'
import { ibcAtom, ibcFrnz, ibcKuji, ibcNbtc, ibcUsdc, ibcUsk, nativeStardust, stars } from './token'
2023-07-27 14:26:51 +00:00
export interface MinterInfo {
id: string
factoryAddress: string
supportedToken: TokenInfo
2023-07-30 18:11:37 +00:00
updatable?: boolean
flexible?: boolean
2023-07-27 14:26:51 +00:00
}
export const openEditionStarsMinter: MinterInfo = {
id: 'open-edition-stars-minter',
factoryAddress: OPEN_EDITION_FACTORY_ADDRESS,
supportedToken: stars,
2023-07-30 18:11:37 +00:00
updatable: false,
}
export const openEditionUpdatableStarsMinter: MinterInfo = {
id: 'open-edition-updatable-stars-minter',
2023-07-30 18:11:37 +00:00
factoryAddress: OPEN_EDITION_UPDATABLE_FACTORY_ADDRESS,
supportedToken: stars,
updatable: true,
2023-07-27 14:26:51 +00:00
}
export const openEditionIbcAtomMinter: MinterInfo = {
id: 'open-edition-ibc-atom-minter',
factoryAddress: OPEN_EDITION_IBC_ATOM_FACTORY_ADDRESS,
supportedToken: ibcAtom,
2023-07-30 18:11:37 +00:00
updatable: false,
}
export const openEditionUpdatableIbcAtomMinter: MinterInfo = {
id: 'open-edition-updatable-ibc-atom-minter',
2023-07-30 18:11:37 +00:00
factoryAddress: OPEN_EDITION_UPDATABLE_IBC_ATOM_FACTORY_ADDRESS,
supportedToken: ibcAtom,
updatable: true,
}
export const openEditionIbcUsdcMinter: MinterInfo = {
id: 'open-edition-ibc-usdc-minter',
factoryAddress: OPEN_EDITION_IBC_USDC_FACTORY_ADDRESS,
supportedToken: ibcUsdc,
updatable: false,
}
export const openEditionIbcNbtcMinter: MinterInfo = {
id: 'open-edition-ibc-nbtc-minter',
factoryAddress: OPEN_EDITION_IBC_NBTC_FACTORY_ADDRESS,
supportedToken: ibcNbtc,
updatable: false,
}
2023-07-30 18:11:37 +00:00
export const openEditionUpdatableIbcUsdcMinter: MinterInfo = {
id: 'open-edition-updatable-ibc-usdc-minter',
2023-07-30 18:11:37 +00:00
factoryAddress: OPEN_EDITION_UPDATABLE_IBC_USDC_FACTORY_ADDRESS,
supportedToken: ibcUsdc,
updatable: true,
2023-07-27 14:26:51 +00:00
}
export const openEditionUpdatableIbcNbtcMinter: MinterInfo = {
id: 'open-edition-updatable-ibc-nbtc-minter',
factoryAddress: OPEN_EDITION_UPDATABLE_IBC_NBTC_FACTORY_ADDRESS,
supportedToken: ibcNbtc,
updatable: true,
}
2023-08-07 09:59:23 +00:00
export const openEditionIbcFrnzMinter: MinterInfo = {
id: 'open-edition-ibc-frnz-minter',
factoryAddress: OPEN_EDITION_IBC_FRNZ_FACTORY_ADDRESS,
supportedToken: ibcFrnz,
2023-07-30 18:11:37 +00:00
updatable: false,
}
2023-08-07 09:59:23 +00:00
export const openEditionUpdatableIbcFrnzMinter: MinterInfo = {
id: 'open-edition-updatable-ibc-frnz-minter',
factoryAddress: OPEN_EDITION_UPDATABLE_IBC_FRNZ_FACTORY_ADDRESS,
supportedToken: ibcFrnz,
2023-07-30 18:11:37 +00:00
updatable: true,
2023-07-27 14:26:51 +00:00
}
export const openEditionIbcUskMinter: MinterInfo = {
id: 'open-edition-ibc-usk-minter',
factoryAddress: OPEN_EDITION_IBC_USK_FACTORY_ADDRESS,
supportedToken: ibcUsk,
updatable: false,
}
export const openEditionIbcKujiMinter: MinterInfo = {
id: 'open-edition-ibc-kuji-minter',
factoryAddress: OPEN_EDITION_IBC_KUJI_FACTORY_ADDRESS,
supportedToken: ibcKuji,
updatable: false,
}
export const openEditionUpdatableIbcUskMinter: MinterInfo = {
id: 'open-edition-updatable-ibc-usk-minter',
factoryAddress: OPEN_EDITION_UPDATABLE_IBC_USK_FACTORY_ADDRESS,
supportedToken: ibcUsk,
updatable: true,
}
export const openEditionNativeStrdstMinter: MinterInfo = {
id: 'open-edition-native-strdst-minter',
factoryAddress: OPEN_EDITION_NATIVE_STRDST_FACTORY_ADDRESS,
supportedToken: nativeStardust,
updatable: false,
}
export const openEditionMinterList = [
openEditionStarsMinter,
openEditionUpdatableStarsMinter,
openEditionUpdatableIbcAtomMinter,
openEditionIbcAtomMinter,
2023-08-07 09:59:23 +00:00
openEditionIbcFrnzMinter,
openEditionUpdatableIbcFrnzMinter,
openEditionIbcUsdcMinter,
openEditionUpdatableIbcUsdcMinter,
openEditionIbcNbtcMinter,
openEditionUpdatableIbcNbtcMinter,
openEditionIbcUskMinter,
openEditionUpdatableIbcUskMinter,
openEditionIbcKujiMinter,
openEditionNativeStrdstMinter,
]
export const vendingStarsMinter: MinterInfo = {
id: 'vending-stars-minter',
factoryAddress: VENDING_FACTORY_ADDRESS,
supportedToken: stars,
updatable: false,
flexible: false,
}
export const vendingUpdatableStarsMinter: MinterInfo = {
id: 'vending-updatable-stars-minter',
factoryAddress: VENDING_FACTORY_UPDATABLE_ADDRESS,
supportedToken: stars,
updatable: true,
flexible: false,
}
export const vendingIbcAtomMinter: MinterInfo = {
id: 'vending-ibc-atom-minter',
factoryAddress: VENDING_IBC_ATOM_FACTORY_ADDRESS,
supportedToken: ibcAtom,
updatable: false,
flexible: false,
}
export const vendingUpdatableIbcAtomMinter: MinterInfo = {
id: 'vending-updatable-ibc-atom-minter',
factoryAddress: VENDING_IBC_ATOM_UPDATABLE_FACTORY_ADDRESS,
supportedToken: ibcAtom,
updatable: true,
flexible: false,
}
export const vendingIbcUsdcMinter: MinterInfo = {
id: 'vending-ibc-usdc-minter',
factoryAddress: VENDING_IBC_USDC_FACTORY_ADDRESS,
supportedToken: ibcUsdc,
updatable: false,
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,
supportedToken: ibcUsdc,
updatable: true,
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,
}
2023-10-18 19:47:40 +00:00
export const vendingIbcUskMinter: MinterInfo = {
id: 'vending-ibc-usk-minter',
factoryAddress: VENDING_IBC_USK_FACTORY_ADDRESS,
supportedToken: ibcUsk,
updatable: false,
flexible: false,
}
export const vendingUpdatableIbcUskMinter: MinterInfo = {
id: 'vending-updatable-ibc-usk-minter',
factoryAddress: VENDING_IBC_USK_UPDATABLE_FACTORY_ADDRESS,
supportedToken: ibcUsk,
updatable: true,
flexible: false,
}
export const vendingIbcKujiMinter: MinterInfo = {
id: 'vending-ibc-kuji-minter',
factoryAddress: VENDING_IBC_KUJI_FACTORY_ADDRESS,
supportedToken: ibcKuji,
updatable: false,
flexible: false,
}
export const vendingNativeStardustMinter: MinterInfo = {
id: 'vending-native-stardust-minter',
factoryAddress: VENDING_NATIVE_STARDUST_FACTORY_ADDRESS,
supportedToken: nativeStardust,
updatable: false,
flexible: false,
}
export const vendingUpdatableNativeStardustMinter: MinterInfo = {
id: 'vending-native-stardust-minter',
factoryAddress: VENDING_NATIVE_STARDUST_UPDATABLE_FACTORY_ADDRESS,
supportedToken: nativeStardust,
updatable: true,
flexible: false,
}
export const vendingMinterList = [
vendingStarsMinter,
vendingUpdatableStarsMinter,
vendingIbcAtomMinter,
vendingUpdatableIbcAtomMinter,
vendingIbcUsdcMinter,
vendingUpdatableIbcUsdcMinter,
vendingIbcNbtcMinter,
vendingUpdatableIbcNbtcMinter,
2023-10-18 19:47:40 +00:00
vendingIbcUskMinter,
vendingUpdatableIbcUskMinter,
vendingIbcKujiMinter,
vendingNativeStardustMinter,
vendingUpdatableNativeStardustMinter,
]
export const flexibleVendingStarsMinter: MinterInfo = {
id: 'flexible-vending-stars-minter',
factoryAddress: VENDING_FACTORY_FLEX_ADDRESS,
supportedToken: stars,
updatable: false,
flexible: true,
}
export const flexibleVendingUpdatableStarsMinter: MinterInfo = {
id: 'flexible-vending-updatable-stars-minter',
factoryAddress: VENDING_FACTORY_UPDATABLE_FLEX_ADDRESS,
supportedToken: stars,
updatable: true,
flexible: true,
}
export const flexibleVendingIbcAtomMinter: MinterInfo = {
id: 'flexible-vending-ibc-atom-minter',
factoryAddress: VENDING_IBC_ATOM_FACTORY_FLEX_ADDRESS,
supportedToken: ibcAtom,
updatable: false,
flexible: true,
}
export const flexibleVendingUpdatableIbcAtomMinter: MinterInfo = {
id: 'flexible-vending-updatable-ibc-atom-minter',
factoryAddress: VENDING_IBC_ATOM_UPDATABLE_FACTORY_FLEX_ADDRESS,
supportedToken: ibcAtom,
updatable: true,
flexible: true,
}
export const flexibleVendingIbcUsdcMinter: MinterInfo = {
id: 'flexible-vending-ibc-usdc-minter',
factoryAddress: VENDING_IBC_USDC_FACTORY_FLEX_ADDRESS,
supportedToken: ibcUsdc,
updatable: false,
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,
supportedToken: ibcUsdc,
updatable: true,
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,
}
2023-10-18 19:47:40 +00:00
export const flexibleVendingIbcUskMinter: MinterInfo = {
id: 'flexible-vending-ibc-usk-minter',
factoryAddress: VENDING_IBC_USK_FACTORY_FLEX_ADDRESS,
supportedToken: ibcUsk,
updatable: false,
flexible: true,
}
export const flexibleVendingUpdatableIbcUskMinter: MinterInfo = {
id: 'flexible-vending-updatable-ibc-usk-minter',
factoryAddress: VENDING_IBC_USK_UPDATABLE_FACTORY_FLEX_ADDRESS,
supportedToken: ibcUsk,
updatable: true,
flexible: true,
}
export const flexibleVendingIbcKujiMinter: MinterInfo = {
id: 'flexible-vending-ibc-kuji-minter',
factoryAddress: VENDING_IBC_KUJI_FACTORY_FLEX_ADDRESS,
supportedToken: ibcKuji,
updatable: false,
flexible: true,
}
2023-10-13 16:17:09 +00:00
export const flexibleVendingStrdstMinter: MinterInfo = {
id: 'flexible-vending-native-strdst-minter',
factoryAddress: VENDING_NATIVE_STRDST_FLEX_FACTORY_ADDRESS,
supportedToken: nativeStardust,
updatable: false,
flexible: true,
}
export const flexibleVendingMinterList = [
flexibleVendingStarsMinter,
flexibleVendingUpdatableStarsMinter,
flexibleVendingIbcAtomMinter,
flexibleVendingUpdatableIbcAtomMinter,
flexibleVendingIbcUsdcMinter,
flexibleVendingUpdatableIbcUsdcMinter,
flexibleVendingIbcNbtcMinter,
flexibleVendingUpdatableIbcNbtcMinter,
2023-10-18 19:47:40 +00:00
flexibleVendingIbcUskMinter,
flexibleVendingUpdatableIbcUskMinter,
flexibleVendingIbcKujiMinter,
2023-10-13 16:17:09 +00:00
flexibleVendingStrdstMinter,
]