MCPcopy
hub / github.com/foambubble/foam / dispatch

Function dispatch

packages/foam-cli/src/index.ts:138–239  ·  view source on GitHub ↗
(
  command: string | undefined,
  commandArgs: string[],
  logger: ILogger,
  reporter: ITelemetryReporter = NoopTelemetryReporter
)

Source from the content-addressed store, hash-verified

136}
137
138async function dispatch(
139 command: string | undefined,
140 commandArgs: string[],
141 logger: ILogger,
142 reporter: ITelemetryReporter = NoopTelemetryReporter
143): Promise<CommandRunResult> {
144 if (!command || command === 'help' || command === '--help' || command === '-h') {
145 logger.info(renderCliHelp());
146 return 0;
147 }
148
149 if (command === '--version' || command === '-v') {
150 logger.info(getCurrentVersion());
151 return 0;
152 }
153
154 try {
155 switch (command) {
156 case 'publish': {
157 if (commandArgs.includes('--help') || commandArgs.includes('-h')) {
158 logger.info(renderPublishHelp());
159 return 0;
160 }
161
162 await runPublishCommand(parsePublishCommandArgs(commandArgs));
163 return 0;
164 }
165 case 'lint': {
166 return runLintCommand(commandArgs, logger);
167 }
168 case 'list': {
169 return runListCommand(commandArgs, logger);
170 }
171 case 'note': {
172 return runNoteCommand(commandArgs, logger);
173 }
174 case 'outline': {
175 return runOutlineCommand(commandArgs, logger);
176 }
177 case 'links':
178 case 'connections': {
179 return runLinksCommand(commandArgs, logger);
180 }
181 case 'graph': {
182 return runGraphCommand(commandArgs, logger);
183 }
184 case 'daily': {
185 return runDailyCommand(commandArgs, logger);
186 }
187 case 'tag': {
188 return runTagCommand(commandArgs, logger);
189 }
190 case 'grep': {
191 return runGrepCommand(commandArgs, logger);
192 }
193 case 'search': {
194 return runSearchCommand(commandArgs, logger);
195 }

Callers 1

runCliFunction · 0.85

Calls 15

getCurrentVersionFunction · 0.90
renderPublishHelpFunction · 0.90
runPublishCommandFunction · 0.90
parsePublishCommandArgsFunction · 0.90
runLintCommandFunction · 0.90
runListCommandFunction · 0.90
runNoteCommandFunction · 0.90
runOutlineCommandFunction · 0.90
runLinksCommandFunction · 0.90
runGraphCommandFunction · 0.90
runDailyCommandFunction · 0.90
runTagCommandFunction · 0.90

Tested by

no test coverage detected