UNPKG

@flipflop-sdk/cli

Version:

FlipFlop CLI tool for common operations

63 lines 2.77 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.launchCommand = launchCommand; const utils_1 = require("./utils"); const node_1 = require("@flipflop-sdk/node"); // Launch token command handler async function launchCommand(options) { const uri = options.uri || `https://example.com/metadata/${options.symbol.toLowerCase()}.json`; if (!options.rpc) { console.error('❌ Error: Missing --rpc parameter'); return; } // Validate required parameters if (!options.keypairBs58 && !options.keypairFile) { console.error('❌ Error: Missing --keypair-bs58 or --keypair-file parameter'); return; } if (!options.name || !options.symbol) { console.error('❌ Error: Missing --name or --symbol parameter'); return; } if (!options.tokenType) { console.error('❌ Error: Missing --token-type parameter'); return; } try { // Load keypair and create wallet (keypair-file takes priority) const creator = options.keypairFile ? (0, utils_1.loadKeypairFromFile)(options.keypairFile) : (0, utils_1.loadKeypairFromBase58)(options.keypairBs58); const result = await (0, node_1.launchToken)({ rpc: options.rpc, name: options.name, symbol: options.symbol, tokenType: options.tokenType, uri: uri, creator, }); if (!result.success || !result.data) { console.error('❌ Error: ', result.message); return; } console.log('\n✅ Token Created Successfully!'); console.log('━'.repeat(50)); console.log(`Transaction Hash: ${result.data.transactionHash}`); console.log(`Mint Address: ${result.data.mintAddress.toBase58()}`); if (result.data.configuration) { console.log('\n⚙️ Token Configuration'); console.log('━'.repeat(50)); console.log(`Admin: ${result.data.configuration.admin}`); console.log(`Fee Rate: ${(result.data.configuration.feeRate * 1).toFixed(2)} SOL`); console.log(`Max Supply: ${result.data.configuration.maxSupply.toLocaleString()}`); console.log(`Initial Mint Size: ${result.data.configuration.initialMintSize.toLocaleString()}`); console.log(`Target Eras: ${result.data.configuration.targetEras}`); console.log(`Epochs Per Era: ${result.data.configuration.epochesPerEra}`); console.log(`Token Vault: ${result.data.configuration.tokenVault}`); } } catch (error) { console.error('❌ Error: ', error instanceof Error ? error.message : 'Unknown error'); } } //# sourceMappingURL=launch.js.map