(vault: string, args: ParsedArgs)
| 94 | } |
| 95 | |
| 96 | export async function cmdCreate(vault: string, args: ParsedArgs): Promise<void> { |
| 97 | const folder = parseFolderFlag(getString(args, 'folder')) ?? 'inbox' |
| 98 | if (folder === 'trash') { |
| 99 | throw new Error('Refusing to create a note directly in trash.') |
| 100 | } |
| 101 | const title = getString(args, 'title') ?? args.positionals[0] |
| 102 | const subpath = getString(args, 'subpath') ?? '' |
| 103 | const tags = getMany(args, 'tag').map((t) => t.replace(/^#/, '')) |
| 104 | const inputBody = await resolveBody(args) |
| 105 | const composed = composeBody(title, inputBody, tags) |
| 106 | const meta = await createNote(vault, folder, title, subpath, composed) |
| 107 | emitCreated(meta, args) |
| 108 | } |
| 109 | |
| 110 | function composeBody( |
| 111 | title: string | undefined, |
nothing calls this directly
no test coverage detected