( command: SmartThingsCommand<FormatAndWriteItemFlags>, config: FormatAndWriteItemConfig<O>, item: O, defaultIOFormat?: IOFormat, )
| 49 | * input so the output can default to the input format. |
| 50 | */ |
| 51 | export async function formatAndWriteItem<O extends object>( |
| 52 | command: SmartThingsCommand<FormatAndWriteItemFlags>, |
| 53 | config: FormatAndWriteItemConfig<O>, |
| 54 | item: O, |
| 55 | defaultIOFormat?: IOFormat, |
| 56 | ): Promise<void> { |
| 57 | const commonFormatter = 'buildTableOutput' in config |
| 58 | ? (data: O) => config.buildTableOutput(data) |
| 59 | : itemTableFormatter<O>(command.tableGenerator, config.tableFieldDefinitions) |
| 60 | const outputFormatter = buildOutputFormatter(command.flags, command.cliConfig, defaultIOFormat, commonFormatter) |
| 61 | await writeOutput(outputFormatter(item), command.flags.output) |
| 62 | } |
| 63 | |
| 64 | export type FormatAndWriteListFlags = BuildOutputFormatterFlags |
| 65 | export const formatAndWriteListBuilder = buildOutputFormatterBuilder |
no test coverage detected