@kadena/kadena-cli
Version:
Kadena CLI tool to interact with the Kadena blockchain (manage keys, transactions, etc.)
49 lines • 2.18 kB
JavaScript
import { Option } from 'commander';
import { z } from 'zod';
import { typescript } from '../../prompts/index.js';
import { createOption } from '../../utils/createOption.js';
export const typescriptOptions = {
typescriptClean: createOption({
key: 'typescriptClean',
prompt: typescript.typescriptClean,
validation: z.boolean(),
option: new Option('--typescript-clean', 'Clean existing generated files'),
}),
typescriptCapsInterface: createOption({
key: 'typescriptCapsInterface',
prompt: typescript.typescriptCapsInterface,
validation: z.string().optional(),
option: new Option('--typescript-caps-interface <interface>', 'Custom name for the interface of the caps. Can be used to create a type definition with a limited set of capabilities (optional)'),
}),
typescriptFile: createOption({
key: 'typescriptFile',
prompt: typescript.typescriptFile,
validation: z.string().optional(),
option: new Option('--typescript-file <file>', 'Generate d.ts from Pact contract file(s) (comma separated)'),
expand: async (file) => {
return file
.split(',')
.map((value) => value.trim())
.filter((f) => f.length);
},
}),
typescriptContract: createOption({
key: 'typescriptContract',
prompt: typescript.typescriptContract,
validation: z.string().optional(),
option: new Option('--typescript-contract <contractName>', 'Generate d.ts from Pact contract(s) from the blockchain (comma separated)'),
expand: async (contracts) => {
return contracts
.split(',')
.map((value) => value.trim())
.filter((c) => c.length);
},
}),
typescriptNamespace: createOption({
key: 'typescriptNamespace',
prompt: typescript.typescriptNamespace,
validation: z.string().optional(),
option: new Option('--typescript-namespace <string>', 'use as the namespace of the contract if its not clear in the contract (optional)'),
}),
};
//# sourceMappingURL=typescriptOptions.js.map