{"version":3,"sources":["../src/wallets/chain.ts"],"sourcesContent":["import * as allEVMChains from \"viem/chains\";\n\n/**\n * @param type - \"evm\" or \"solana\", extend this union as needed (e.g., \"sui\")\n * @param id - Chain ID, optional for EVM\n */\nexport type Chain = {\n    type: \"evm\" | \"solana\" | \"aptos\" | \"chromia\";\n    id?: number; // optional for EVM\n};\n\nexport type ChainToken = {\n    symbol: string;\n    name: string;\n    decimals: number;\n};\n\nexport function getChainToken(chain: Chain): ChainToken {\n    switch (chain.type) {\n        case \"evm\": {\n            if (!chain.id) {\n                throw new Error(\"Chain ID is required for EVM chains\");\n            }\n            // Get all viem chains\n            const allChains = Object.values(allEVMChains);\n            // Find matching chain by ID\n            const viemChain = allChains.find((c) => c.id === chain.id);\n\n            if (!viemChain) {\n                throw new Error(`Unsupported EVM chain ID: ${chain.id}`);\n            }\n\n            return {\n                symbol: viemChain.nativeCurrency.symbol,\n                name: viemChain.nativeCurrency.name,\n                decimals: viemChain.nativeCurrency.decimals,\n            };\n        }\n        case \"solana\":\n            return {\n                symbol: \"SOL\",\n                name: \"Solana\",\n                decimals: 9,\n            };\n        case \"aptos\":\n            return {\n                symbol: \"APT\",\n                name: \"Aptos Coin\",\n                decimals: 8,\n            };\n        case \"chromia\":\n            return {\n                symbol: \"CHR\",\n                name: \"Chroma\",\n                decimals: 6,\n            };\n        default:\n            throw new Error(`Unsupported chain type: ${chain.type} ${chain.id ? `with id: ${chain.id}` : \"\"}`);\n    }\n}\n"],"mappings":";AAAA,YAAY,kBAAkB;AAiBvB,SAAS,cAAc,OAA0B;AACpD,UAAQ,MAAM,MAAM;AAAA,IAChB,KAAK,OAAO;AACR,UAAI,CAAC,MAAM,IAAI;AACX,cAAM,IAAI,MAAM,qCAAqC;AAAA,MACzD;AAEA,YAAM,YAAY,OAAO,OAAO,YAAY;AAE5C,YAAM,YAAY,UAAU,KAAK,CAAC,MAAM,EAAE,OAAO,MAAM,EAAE;AAEzD,UAAI,CAAC,WAAW;AACZ,cAAM,IAAI,MAAM,6BAA6B,MAAM,EAAE,EAAE;AAAA,MAC3D;AAEA,aAAO;AAAA,QACH,QAAQ,UAAU,eAAe;AAAA,QACjC,MAAM,UAAU,eAAe;AAAA,QAC/B,UAAU,UAAU,eAAe;AAAA,MACvC;AAAA,IACJ;AAAA,IACA,KAAK;AACD,aAAO;AAAA,QACH,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,UAAU;AAAA,MACd;AAAA,IACJ,KAAK;AACD,aAAO;AAAA,QACH,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,UAAU;AAAA,MACd;AAAA,IACJ,KAAK;AACD,aAAO;AAAA,QACH,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,UAAU;AAAA,MACd;AAAA,IACJ;AACI,YAAM,IAAI,MAAM,2BAA2B,MAAM,IAAI,IAAI,MAAM,KAAK,YAAY,MAAM,EAAE,KAAK,EAAE,EAAE;AAAA,EACzG;AACJ;","names":[]}