Skip to content

Commit

Permalink
feat: add flags and args
Browse files Browse the repository at this point in the history
  • Loading branch information
mdonnalley committed Sep 21, 2023
1 parent d8b4336 commit bfe25bb
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions src/commands/cjs1.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,36 @@
import {Command} from '@oclif/core'
import {Args, Command, Flags, Interfaces} from '@oclif/core'

type Result = {
args: Interfaces.InferredArgs<typeof CJS1.args>
flags: Interfaces.InferredFlags<typeof CJS1.flags>
}

export default class CJS1 extends Command {
async run(): Promise<void> {
static flags = {
optionalString: Flags.string(),
defaultString: Flags.string({
default: 'simple string default',
}),
defaultFnString: Flags.string({
default: async () => Promise.resolve('async fn default'),
}),
}

static args = {
optionalArg: Args.string(),
defaultArg: Args.string({
default: 'simple string default',
}),
defaultFnArg: Args.string({
default: async () => Promise.resolve('async fn default'),
}),
}

static enableJsonFlag = true

async run(): Promise<Result> {
const {args, flags} = await this.parse(CJS1)
this.log(`hello I am a CJS plugin from ${this.config.root}!`)
return {args, flags}
}
}

0 comments on commit bfe25bb

Please sign in to comment.