@boykaframework/boyka-cli
Version:
🧑🏻💻 Command line assistant for Boyka Framework
36 lines (34 loc) • 1.16 kB
text/typescript
import { CommandModule } from 'yargs';
import { epiLogMessage, failureMessage, handleCommand } from '../../utils/constants.js';
import { BoykaError } from '../../utils/boyka-error.js';
import { handleMacConfig } from '../../handler/config/init/mac.js';
export const macCommand = {
command: 'mac [name]',
aliases: ['m'],
describe: 'Add Mac OS Desktop Boyka-Framework Config file',
builder: (yargs) =>
yargs
.option('p', {
alias: ['path'],
describe: 'Path to the config file',
default: `${process.cwd()}/src/test/resources`,
type: 'string',
})
.positional('name', {
demandOption: true,
describe: 'Name of the Mac OS Desktop config block',
type: 'string',
})
.check((argv) => {
if (!argv.name) {
throw new BoykaError('Mac OS Desktop config name should be provided!');
}
return true;
})
.help('help')
.showHelpOnFail(true, failureMessage('Mac OS Desktop config'))
.epilog(epiLogMessage),
handler: async (argv) => {
await handleCommand(handleMacConfig(argv, 'Mac'));
},
} satisfies CommandModule;