UNPKG

@kadena/kadena-cli

Version:

Kadena CLI tool to interact with the Kadena blockchain (manage keys, transactions, etc.)

72 lines 3.09 kB
import { Option } from 'commander'; import { z } from 'zod'; import { keys, wallets } from '../../prompts/index.js'; import { services } from '../../services/index.js'; import { createOption } from '../../utils/createOption.js'; import { mnemonicPromptTransform } from '../../utils/helpers.js'; export const walletOptions = { createWalletConfirmation: createOption({ key: 'createWallet', prompt: wallets.createWalletPrompt, defaultIsOptional: false, validation: z.string(), option: new Option('-c --create-wallet <createWallet>', 'Confirmation for creating a new wallet'), }), walletName: createOption({ key: 'walletName', prompt: wallets.walletNamePrompt, validation: z.string(), option: new Option('-w, --wallet-name <walletName>', 'Enter you wallet name'), }), walletNameSelectWithAll: createOption({ key: 'walletName', prompt: wallets.walletSelectAllPrompt, validation: z.string(), option: new Option('-w, --wallet-name <walletName>', 'Enter your wallet'), defaultIsOptional: false, expand: async (walletName) => { return walletName === 'all' ? await services.wallet.list() : await services.wallet.getByAlias(walletName); }, }), mnemonicFile: createOption({ key: 'mnemonicFile', prompt: keys.keyMnemonicPrompt, validation: z.string().or(z.object({ _secret: z.string() })), option: new Option('-m, --mnemonic-file <mnemonicFile>', 'Filepath to your 12-word mnemonic phrase file to generate keys from (can be passed via stdin)'), transform: mnemonicPromptTransform('--mnemonic-file'), }), createAccount: createOption({ key: 'createAccount', prompt: keys.walletCreateAccountPrompt, validation: z.string(), option: new Option('-a, --create-account <createAccount>', 'Create an account using the first wallet key'), }), amount: createOption({ key: 'amount', prompt: keys.walletGenerateKeyAmountPrompt, validation: z.string(), option: new Option('-n, --amount <amount>', 'Amount of keys to generate (default: 1)'), }), startIndex: createOption({ key: 'startIndex', prompt: () => '1', validation: z.string(), option: new Option('-i, --start-index <startIndex>', 'Index to start generating keys at'), }), keyAlias: createOption({ key: 'keyAlias', prompt: keys.walletGenerateKeyAliasPrompt, validation: z.string().optional(), option: new Option('-a, --key-alias <keyAlias>', 'Optional alias for generated key(s)'), transform: (value) => (value !== '' ? value : undefined), }), keyIndex: createOption({ key: 'keyIndex', prompt: keys.walletKeyIndex, validation: z.string(), option: new Option('-i, --key-index <keyIndex>', 'The key index of which you want to export the unencrypted keypair'), }), }; //# sourceMappingURL=walletOptions.js.map