@cyberismo/cli 0.0.11 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -11,8 +11,11 @@
11
11
  details. You should have received a copy of the GNU Affero General Public
12
12
  License along with this program. If not, see <https://www.gnu.org/licenses/>.
13
13
  */
14
+ import { readFile } from 'node:fs/promises';
15
+ import { resolve } from 'node:path';
14
16
  import { Argument, Command, Option } from 'commander';
15
17
  import confirm from '@inquirer/confirm';
18
+ import { checkbox, select } from '@inquirer/prompts';
16
19
  import dotenv from 'dotenv';
17
20
  import { Cmd, Commands, ExportFormats, validContexts, } from '@cyberismo/data-handler';
18
21
  import { ResourceTypeParser as Parser } from './resource-type-parser.js';
@@ -20,6 +23,7 @@ import { startServer, exportSite, previewSite } from '@cyberismo/backend';
20
23
  import cliProgress from 'cli-progress';
21
24
  // How many validation errors are shown when staring app, if any.
22
25
  const VALIDATION_ERROR_ROW_LIMIT = 10;
26
+ const DEFAULT_HUB = 'https://raw.githubusercontent.com/CyberismoCom/cyberismo/main/tools/assets/src/hub/';
23
27
  // To avoid duplication, fetch description and version from package.json file.
24
28
  // Importing dynamically allows filtering of warnings in cli/bin/run.
25
29
  const packageDef = (await import('../package.json', { with: { type: 'json' } }))
@@ -70,6 +74,23 @@ function handleResponse(response) {
70
74
  }
71
75
  }
72
76
  }
77
+ // Helper to get modules that have not been imported.
78
+ async function importableModules(options) {
79
+ const copyOptions = Object.assign({}, options);
80
+ copyOptions.details = true;
81
+ const importableModules = await commandHandler.command(Cmd.show, ['importableModules'], copyOptions);
82
+ if (!importableModules?.payload ||
83
+ importableModules.payload.length === 0) {
84
+ console.error('No modules available');
85
+ process.exit(1);
86
+ }
87
+ // return potential importable modules
88
+ const choices = importableModules.payload?.map((module) => ({
89
+ name: module.displayName ? module.displayName : module.name,
90
+ value: module,
91
+ })) || [];
92
+ return choices;
93
+ }
73
94
  // Load environment variables from .env file
74
95
  dotenv.config({ quiet: true });
75
96
  // Commander
@@ -154,6 +175,9 @@ const additionalHelpForRemove = `Sub-command help:
154
175
  remove module <name>, where
155
176
  <name> Name of the module to remove
156
177
 
178
+ remove hub <location>, where
179
+ <location> URL of hub to remove
180
+
157
181
  remove <resourceName>, where
158
182
  <resourceName> is <project prefix>/<type>/<identifier>, where
159
183
  <project prefix> Prefix for the project.
@@ -195,9 +219,10 @@ program
195
219
  .addOption(new Option('-L, --log-level <level>', 'Set the log level')
196
220
  .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])
197
221
  .default('fatal'));
222
+ const addCmd = program.command('add').description('Add items to the project');
198
223
  // Add card to a template
199
- program
200
- .command('add')
224
+ addCmd
225
+ .command('card')
201
226
  .description('Add card to a template')
202
227
  .argument('<template>', 'Template for a new card. \nYou can list the templates in a project with "show templates" command.')
203
228
  .argument('<cardType>', 'Card type to use for the new card. \nYou can list the card types in a project with "show cardTypes" command.')
@@ -205,7 +230,16 @@ program
205
230
  .option('-p, --project-path [path]', `${pathGuideline}`)
206
231
  .option('-r, --repeat <quantity>', 'Add multiple cards to a template')
207
232
  .action(async (template, cardType, cardKey, options) => {
208
- const result = await commandHandler.command(Cmd.add, [template, cardType, cardKey], Object.assign({}, options, program.opts()));
233
+ const result = await commandHandler.command(Cmd.add, ['card', template, cardType, cardKey], Object.assign({}, options, program.opts()));
234
+ handleResponse(result);
235
+ });
236
+ addCmd
237
+ .command('hub')
238
+ .description('Add a hub to the project')
239
+ .argument('<location>', 'Hub URL')
240
+ .option('-p, --project-path [path]', `${pathGuideline}`)
241
+ .action(async (location, options) => {
242
+ const result = await commandHandler.command(Cmd.add, ['hub', location], Object.assign({}, options, program.opts()));
209
243
  handleResponse(result);
210
244
  });
211
245
  const calculate = program
@@ -213,11 +247,13 @@ const calculate = program
213
247
  .description('Used for running logic programs');
214
248
  calculate
215
249
  .command('generate')
216
- .description('DEPRECATED: Generate a logic program')
217
- .argument('[cardKey]', 'If given, calculates on the subtree of the card')
250
+ .description('Generate a logic program')
251
+ .argument('<destination>', 'Path to an output file. Command writes the logic program to this file.')
252
+ .argument('[query]', 'Query to run')
218
253
  .option('-p, --project-path [path]', `${pathGuideline}`)
219
- .action(async () => {
220
- console.warn('This command is deprecated. Use "cyberismo calc run" directly instead.');
254
+ .action(async (destination, query, options) => {
255
+ const result = await commandHandler.command(Cmd.calc, ['generate', destination, query], Object.assign({}, options, program.opts()));
256
+ handleResponse(result);
221
257
  });
222
258
  calculate
223
259
  .command('run')
@@ -238,6 +274,7 @@ program
238
274
  .argument('[parameter3]', 'Depends on context; see below for specific remove operation')
239
275
  .addHelpText('after', additionalHelpForCreate)
240
276
  .option('-p, --project-path [path]', `${pathGuideline}`)
277
+ .option('-s, --skipModuleImport', 'Skip importing modules when creating a project')
241
278
  .action(async (type, target, parameter1, parameter2, parameter3, options) => {
242
279
  if (!type) {
243
280
  program.error(`missing required argument <type>`);
@@ -293,7 +330,39 @@ program
293
330
  // Project path must be set to 'options' when creating a project.
294
331
  options.projectPath = parameter2;
295
332
  }
296
- const result = await commandHandler.command(Cmd.create, [type, target, parameter1, parameter2, parameter3], Object.assign({}, options, program.opts()));
333
+ const commandOptions = Object.assign({}, options, program.opts());
334
+ const result = await commandHandler.command(Cmd.create, [type, target, parameter1, parameter2, parameter3], commandOptions);
335
+ // Post-handling after creating a new project.
336
+ if (type === 'project' && !commandOptions.skipModuleImport) {
337
+ try {
338
+ // add default hub
339
+ await commandHandler.command(Cmd.add, ['hub', DEFAULT_HUB], commandOptions);
340
+ // fetch modules from default hub
341
+ await commandHandler.command(Cmd.fetch, ['hubs'], commandOptions);
342
+ // show importable modules
343
+ const choices = await importableModules(commandOptions);
344
+ const selectedModules = await checkbox({
345
+ message: 'Select modules to import',
346
+ theme: { helpMode: 'always' },
347
+ choices,
348
+ });
349
+ // finally, import the selected modules
350
+ for (const module of selectedModules) {
351
+ await commandHandler.command(Cmd.import, [
352
+ 'module',
353
+ module.location,
354
+ module.branch ?? '',
355
+ module.private ? 'true' : 'false',
356
+ ], commandOptions);
357
+ }
358
+ }
359
+ catch (error) {
360
+ if (error instanceof Error) {
361
+ console.warn('Module import setup failed:', error.message);
362
+ }
363
+ console.log('Project created successfully, but module import was skipped');
364
+ }
365
+ }
297
366
  handleResponse(result);
298
367
  });
299
368
  // Edit command
@@ -352,17 +421,84 @@ program
352
421
  const result = await commandHandler.command(Cmd.export, [format, output, cardKey], Object.assign({}, options, program.opts()));
353
422
  handleResponse(result);
354
423
  });
424
+ const fetchCmd = program
425
+ .command('fetch')
426
+ .description('Retrieve external data to local file system.');
427
+ fetchCmd
428
+ .command('hubs')
429
+ .description('Retrieves module lists from hubs')
430
+ .option('-p, --project-path [path]', `${pathGuideline}`)
431
+ .action(async (options) => {
432
+ const result = await commandHandler.command(Cmd.fetch, ['hubs'], Object.assign({}, options, program.opts()));
433
+ handleResponse(result);
434
+ });
355
435
  const importCmd = program.command('import');
356
436
  // Import module
357
437
  importCmd
358
438
  .command('module')
359
- .description('Imports another project to this project as a module. Source can be local relative file path, or git HTTPS URL.')
360
- .argument('<source>', 'Path to import from')
439
+ .description('Imports another project to this project as a module. Source can be local relative file path, git HTTPS URL, or module name from fetched module list.')
440
+ .argument('[source]', 'Path to import from or module name. If omitted, shows interactive selection')
361
441
  .argument('[branch]', 'When using git URL defines the branch. Default: main')
362
442
  .argument('[useCredentials]', 'When using git URL uses credentials for cloning. Default: false')
363
443
  .option('-p, --project-path [path]', `${pathGuideline}`)
364
444
  .action(async (source, branch, useCredentials, options) => {
365
- const result = await commandHandler.command(Cmd.import, ['module', source, branch, String(useCredentials)], Object.assign({}, options, program.opts()), credentials());
445
+ let resolvedSource = source;
446
+ let resolvedBranch = branch;
447
+ let resolvedUseCredentials = useCredentials;
448
+ if (!source) {
449
+ // Interactive mode: show importable modules
450
+ try {
451
+ const choices = await importableModules(options);
452
+ const selectedModule = await select({
453
+ message: 'Select a module to import:',
454
+ choices,
455
+ });
456
+ resolvedSource = selectedModule.location;
457
+ resolvedBranch = branch || selectedModule.branch || '';
458
+ resolvedUseCredentials =
459
+ useCredentials ?? selectedModule.private ?? false;
460
+ }
461
+ catch (error) {
462
+ console.error('Error in module selection:', error instanceof Error ? error.message : String(error));
463
+ process.exit(1);
464
+ }
465
+ }
466
+ else {
467
+ try {
468
+ const projectPath = await commandHandler.getProjectPath(options.projectPath);
469
+ const moduleListPath = resolve(projectPath, '.temp/moduleList.json');
470
+ let moduleListContent = '';
471
+ try {
472
+ moduleListContent = await readFile(moduleListPath, 'utf-8');
473
+ }
474
+ catch {
475
+ // if file is missing, either project that was created before hub support, or
476
+ // creation of project done with 'skipModuleImport' flag.
477
+ // TODO: The item should be logged once we have log that is shareable between applications.
478
+ }
479
+ const moduleList = JSON.parse(moduleListContent);
480
+ const modules = moduleList.modules || [];
481
+ const foundModule = modules?.find((m) => m.name === source);
482
+ if (foundModule) {
483
+ resolvedSource = foundModule.location;
484
+ resolvedBranch = branch || foundModule.branch || '';
485
+ resolvedUseCredentials =
486
+ useCredentials ?? foundModule.private ?? false;
487
+ }
488
+ }
489
+ catch (error) {
490
+ if (error instanceof Error) {
491
+ // TODO: The item should be logged.
492
+ console.error(error.message);
493
+ }
494
+ }
495
+ }
496
+ const result = await commandHandler.command(Cmd.import, [
497
+ 'module',
498
+ resolvedSource,
499
+ resolvedBranch,
500
+ String(resolvedUseCredentials),
501
+ ], Object.assign({}, options, program.opts()), credentials());
366
502
  handleResponse(result);
367
503
  });
368
504
  // import csv
@@ -450,6 +586,9 @@ program
450
586
  if (!parameter3 && type === 'link') {
451
587
  program.error('error: missing argument <linkType>');
452
588
  }
589
+ if (!parameter1 && type === 'hub') {
590
+ program.error('error: missing argument <location>');
591
+ }
453
592
  const result = await commandHandler.command(Cmd.remove, [type, parameter1, parameter2, parameter3], Object.assign({}, options, program.opts()));
454
593
  handleResponse(result);
455
594
  }
@@ -483,6 +622,7 @@ program
483
622
  .argument('<type>', `details can be seen from: ${Parser.listTargets('show').join(', ')}`, Parser.parseShowTypes)
484
623
  .argument('[typeDetail]', 'additional information about the requested type; for example a card key')
485
624
  .option('-d --details', 'Certain types (such as cards) can have additional details')
625
+ .option('-a --showAll', 'Show all modules, irregardless if it has been imported or not. Only with "show importableModules"')
486
626
  .option('-p, --project-path [path]', `${pathGuideline}`)
487
627
  .option('-u --show-use', 'Show where resource is used. Only used with resources, otherwise will be ignored.')
488
628
  .action(async (type, typeDetail, options) => {
@@ -568,7 +708,7 @@ program
568
708
  return;
569
709
  }
570
710
  }
571
- startServer(await commandHandler.getProjectPath(options.projectPath));
711
+ await startServer(await commandHandler.getProjectPath(options.projectPath));
572
712
  });
573
713
  export default program;
574
714
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,8 @@ class ShowTypes {
76
76
  'attachments',
77
77
  'card',
78
78
  'cards',
79
+ 'hubs',
80
+ 'importableModules',
79
81
  'labels',
80
82
  'module',
81
83
  'project',
@@ -104,6 +106,7 @@ class RemoveTypes {
104
106
  static ResourceLikeTypes = [
105
107
  'attachment',
106
108
  'card',
109
+ 'hub',
107
110
  'label',
108
111
  'link',
109
112
  'module',
@@ -1 +1 @@
1
- {"version":3,"file":"resource-type-parser.js","sourceRoot":"","sources":["../src/resource-type-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-type-parser.js","sourceRoot":"","sources":["../src/resource-type-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyberismo/cli",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "description": "CLI tool to handle tasks.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -15,12 +15,13 @@
15
15
  "author": "",
16
16
  "license": "AGPL-3.0",
17
17
  "dependencies": {
18
- "@inquirer/confirm": "^5.1.12",
18
+ "@inquirer/confirm": "^5.1.16",
19
+ "@inquirer/prompts": "^7.8.4",
19
20
  "cli-progress": "^3.12.0",
20
21
  "commander": "^14.0.0",
21
- "dotenv": "^17.2.1",
22
- "@cyberismo/data-handler": "0.0.11",
23
- "@cyberismo/backend": "0.0.11"
22
+ "dotenv": "^17.2.2",
23
+ "@cyberismo/data-handler": "0.0.12",
24
+ "@cyberismo/backend": "0.0.12"
24
25
  },
25
26
  "types": "dist/index.d.ts",
26
27
  "type": "module",
package/src/index.ts CHANGED
@@ -12,8 +12,12 @@
12
12
  License along with this program. If not, see <https://www.gnu.org/licenses/>.
13
13
  */
14
14
 
15
+ import { readFile } from 'node:fs/promises';
16
+ import { resolve } from 'node:path';
17
+
15
18
  import { Argument, Command, Option } from 'commander';
16
19
  import confirm from '@inquirer/confirm';
20
+ import { checkbox, select } from '@inquirer/prompts';
17
21
  import dotenv from 'dotenv';
18
22
  import {
19
23
  type CardsOptions,
@@ -21,6 +25,7 @@ import {
21
25
  Commands,
22
26
  ExportFormats,
23
27
  type Credentials,
28
+ type ModuleSettingFromHub,
24
29
  type requestStatus,
25
30
  type UpdateOperations,
26
31
  validContexts,
@@ -31,6 +36,8 @@ import cliProgress from 'cli-progress';
31
36
 
32
37
  // How many validation errors are shown when staring app, if any.
33
38
  const VALIDATION_ERROR_ROW_LIMIT = 10;
39
+ const DEFAULT_HUB =
40
+ 'https://raw.githubusercontent.com/CyberismoCom/cyberismo/main/tools/assets/src/hub/';
34
41
 
35
42
  // To avoid duplication, fetch description and version from package.json file.
36
43
  // Importing dynamically allows filtering of warnings in cli/bin/run.
@@ -86,6 +93,33 @@ function handleResponse(response: requestStatus) {
86
93
  }
87
94
  }
88
95
 
96
+ // Helper to get modules that have not been imported.
97
+ async function importableModules(options: CardsOptions) {
98
+ const copyOptions = Object.assign({}, options);
99
+ copyOptions.details = true;
100
+ const importableModules = await commandHandler.command(
101
+ Cmd.show,
102
+ ['importableModules'],
103
+ copyOptions,
104
+ );
105
+
106
+ if (
107
+ !importableModules?.payload ||
108
+ (importableModules.payload as ModuleSettingFromHub[]).length === 0
109
+ ) {
110
+ console.error('No modules available');
111
+ process.exit(1);
112
+ }
113
+
114
+ // return potential importable modules
115
+ const choices =
116
+ (importableModules.payload as ModuleSettingFromHub[])?.map((module) => ({
117
+ name: module.displayName ? module.displayName : module.name,
118
+ value: module,
119
+ })) || [];
120
+ return choices;
121
+ }
122
+
89
123
  // Load environment variables from .env file
90
124
  dotenv.config({ quiet: true });
91
125
 
@@ -177,6 +211,9 @@ const additionalHelpForRemove = `Sub-command help:
177
211
  remove module <name>, where
178
212
  <name> Name of the module to remove
179
213
 
214
+ remove hub <location>, where
215
+ <location> URL of hub to remove
216
+
180
217
  remove <resourceName>, where
181
218
  <resourceName> is <project prefix>/<type>/<identifier>, where
182
219
  <project prefix> Prefix for the project.
@@ -227,9 +264,11 @@ program
227
264
  .default('fatal'),
228
265
  );
229
266
 
267
+ const addCmd = program.command('add').description('Add items to the project');
268
+
230
269
  // Add card to a template
231
- program
232
- .command('add')
270
+ addCmd
271
+ .command('card')
233
272
  .description('Add card to a template')
234
273
  .argument(
235
274
  '<template>',
@@ -251,26 +290,47 @@ program
251
290
  ) => {
252
291
  const result = await commandHandler.command(
253
292
  Cmd.add,
254
- [template, cardType, cardKey],
293
+ ['card', template, cardType, cardKey],
255
294
  Object.assign({}, options, program.opts()),
256
295
  );
257
296
  handleResponse(result);
258
297
  },
259
298
  );
260
299
 
300
+ addCmd
301
+ .command('hub')
302
+ .description('Add a hub to the project')
303
+ .argument('<location>', 'Hub URL')
304
+ .option('-p, --project-path [path]', `${pathGuideline}`)
305
+ .action(async (location: string, options: CardsOptions) => {
306
+ const result = await commandHandler.command(
307
+ Cmd.add,
308
+ ['hub', location],
309
+ Object.assign({}, options, program.opts()),
310
+ );
311
+ handleResponse(result);
312
+ });
313
+
261
314
  const calculate = program
262
315
  .command('calc')
263
316
  .description('Used for running logic programs');
264
317
 
265
318
  calculate
266
319
  .command('generate')
267
- .description('DEPRECATED: Generate a logic program')
268
- .argument('[cardKey]', 'If given, calculates on the subtree of the card')
320
+ .description('Generate a logic program')
321
+ .argument(
322
+ '<destination>',
323
+ 'Path to an output file. Command writes the logic program to this file.',
324
+ )
325
+ .argument('[query]', 'Query to run')
269
326
  .option('-p, --project-path [path]', `${pathGuideline}`)
270
- .action(async () => {
271
- console.warn(
272
- 'This command is deprecated. Use "cyberismo calc run" directly instead.',
327
+ .action(async (destination: string, query: string, options: CardsOptions) => {
328
+ const result = await commandHandler.command(
329
+ Cmd.calc,
330
+ ['generate', destination, query],
331
+ Object.assign({}, options, program.opts()),
273
332
  );
333
+ handleResponse(result);
274
334
  });
275
335
 
276
336
  calculate
@@ -313,6 +373,10 @@ program
313
373
  )
314
374
  .addHelpText('after', additionalHelpForCreate)
315
375
  .option('-p, --project-path [path]', `${pathGuideline}`)
376
+ .option(
377
+ '-s, --skipModuleImport',
378
+ 'Skip importing modules when creating a project',
379
+ )
316
380
  .action(
317
381
  async (
318
382
  type: string,
@@ -384,12 +448,57 @@ program
384
448
  // Project path must be set to 'options' when creating a project.
385
449
  options.projectPath = parameter2;
386
450
  }
387
-
451
+ const commandOptions = Object.assign({}, options, program.opts());
388
452
  const result = await commandHandler.command(
389
453
  Cmd.create,
390
454
  [type, target, parameter1, parameter2, parameter3],
391
- Object.assign({}, options, program.opts()),
455
+ commandOptions,
392
456
  );
457
+
458
+ // Post-handling after creating a new project.
459
+ if (type === 'project' && !commandOptions.skipModuleImport) {
460
+ try {
461
+ // add default hub
462
+ await commandHandler.command(
463
+ Cmd.add,
464
+ ['hub', DEFAULT_HUB],
465
+ commandOptions,
466
+ );
467
+
468
+ // fetch modules from default hub
469
+ await commandHandler.command(Cmd.fetch, ['hubs'], commandOptions);
470
+
471
+ // show importable modules
472
+ const choices = await importableModules(commandOptions);
473
+ const selectedModules = await checkbox({
474
+ message: 'Select modules to import',
475
+ theme: { helpMode: 'always' },
476
+ choices,
477
+ });
478
+
479
+ // finally, import the selected modules
480
+ for (const module of selectedModules) {
481
+ await commandHandler.command(
482
+ Cmd.import,
483
+ [
484
+ 'module',
485
+ module.location,
486
+ module.branch ?? '',
487
+ module.private ? 'true' : 'false',
488
+ ],
489
+ commandOptions,
490
+ );
491
+ }
492
+ } catch (error) {
493
+ if (error instanceof Error) {
494
+ console.warn('Module import setup failed:', error.message);
495
+ }
496
+ console.log(
497
+ 'Project created successfully, but module import was skipped',
498
+ );
499
+ }
500
+ }
501
+
393
502
  handleResponse(result);
394
503
  },
395
504
  );
@@ -489,15 +598,35 @@ program
489
598
  },
490
599
  );
491
600
 
601
+ const fetchCmd = program
602
+ .command('fetch')
603
+ .description('Retrieve external data to local file system.');
604
+
605
+ fetchCmd
606
+ .command('hubs')
607
+ .description('Retrieves module lists from hubs')
608
+ .option('-p, --project-path [path]', `${pathGuideline}`)
609
+ .action(async (options: CardsOptions) => {
610
+ const result = await commandHandler.command(
611
+ Cmd.fetch,
612
+ ['hubs'],
613
+ Object.assign({}, options, program.opts()),
614
+ );
615
+ handleResponse(result);
616
+ });
617
+
492
618
  const importCmd = program.command('import');
493
619
 
494
620
  // Import module
495
621
  importCmd
496
622
  .command('module')
497
623
  .description(
498
- 'Imports another project to this project as a module. Source can be local relative file path, or git HTTPS URL.',
624
+ 'Imports another project to this project as a module. Source can be local relative file path, git HTTPS URL, or module name from fetched module list.',
625
+ )
626
+ .argument(
627
+ '[source]',
628
+ 'Path to import from or module name. If omitted, shows interactive selection',
499
629
  )
500
- .argument('<source>', 'Path to import from')
501
630
  .argument('[branch]', 'When using git URL defines the branch. Default: main')
502
631
  .argument(
503
632
  '[useCredentials]',
@@ -511,9 +640,72 @@ importCmd
511
640
  useCredentials: boolean,
512
641
  options: CardsOptions,
513
642
  ) => {
643
+ let resolvedSource = source;
644
+ let resolvedBranch = branch;
645
+ let resolvedUseCredentials = useCredentials;
646
+
647
+ if (!source) {
648
+ // Interactive mode: show importable modules
649
+ try {
650
+ const choices = await importableModules(options);
651
+ const selectedModule = await select({
652
+ message: 'Select a module to import:',
653
+ choices,
654
+ });
655
+
656
+ resolvedSource = selectedModule.location;
657
+ resolvedBranch = branch || selectedModule.branch || '';
658
+ resolvedUseCredentials =
659
+ useCredentials ?? selectedModule.private ?? false;
660
+ } catch (error) {
661
+ console.error(
662
+ 'Error in module selection:',
663
+ error instanceof Error ? error.message : String(error),
664
+ );
665
+ process.exit(1);
666
+ }
667
+ } else {
668
+ try {
669
+ const projectPath = await commandHandler.getProjectPath(
670
+ options.projectPath,
671
+ );
672
+ const moduleListPath = resolve(projectPath, '.temp/moduleList.json');
673
+ let moduleListContent = '';
674
+ try {
675
+ moduleListContent = await readFile(moduleListPath, 'utf-8');
676
+ } catch {
677
+ // if file is missing, either project that was created before hub support, or
678
+ // creation of project done with 'skipModuleImport' flag.
679
+ // TODO: The item should be logged once we have log that is shareable between applications.
680
+ }
681
+ const moduleList = JSON.parse(moduleListContent);
682
+ const modules = moduleList.modules || [];
683
+ const foundModule = modules?.find(
684
+ (m: ModuleSettingFromHub) => m.name === source,
685
+ );
686
+
687
+ if (foundModule) {
688
+ resolvedSource = foundModule.location;
689
+ resolvedBranch = branch || foundModule.branch || '';
690
+ resolvedUseCredentials =
691
+ useCredentials ?? foundModule.private ?? false;
692
+ }
693
+ } catch (error) {
694
+ if (error instanceof Error) {
695
+ // TODO: The item should be logged.
696
+ console.error(error.message);
697
+ }
698
+ }
699
+ }
700
+
514
701
  const result = await commandHandler.command(
515
702
  Cmd.import,
516
- ['module', source, branch, String(useCredentials)],
703
+ [
704
+ 'module',
705
+ resolvedSource!,
706
+ resolvedBranch,
707
+ String(resolvedUseCredentials),
708
+ ],
517
709
  Object.assign({}, options, program.opts()),
518
710
  credentials(),
519
711
  );
@@ -671,6 +863,10 @@ program
671
863
  program.error('error: missing argument <linkType>');
672
864
  }
673
865
 
866
+ if (!parameter1 && type === 'hub') {
867
+ program.error('error: missing argument <location>');
868
+ }
869
+
674
870
  const result = await commandHandler.command(
675
871
  Cmd.remove,
676
872
  [type, parameter1, parameter2, parameter3],
@@ -738,6 +934,10 @@ program
738
934
  '-d --details',
739
935
  'Certain types (such as cards) can have additional details',
740
936
  )
937
+ .option(
938
+ '-a --showAll',
939
+ 'Show all modules, irregardless if it has been imported or not. Only with "show importableModules"',
940
+ )
741
941
  .option('-p, --project-path [path]', `${pathGuideline}`)
742
942
  .option(
743
943
  '-u --show-use',
@@ -889,7 +1089,7 @@ program
889
1089
  return;
890
1090
  }
891
1091
  }
892
- startServer(await commandHandler.getProjectPath(options.projectPath));
1092
+ await startServer(await commandHandler.getProjectPath(options.projectPath));
893
1093
  });
894
1094
 
895
1095
  export default program;
@@ -84,6 +84,8 @@ abstract class ShowTypes {
84
84
  'attachments',
85
85
  'card',
86
86
  'cards',
87
+ 'hubs',
88
+ 'importableModules',
87
89
  'labels',
88
90
  'module',
89
91
  'project',
@@ -117,6 +119,7 @@ abstract class RemoveTypes {
117
119
  private static ResourceLikeTypes = [
118
120
  'attachment',
119
121
  'card',
122
+ 'hub',
120
123
  'label',
121
124
  'link',
122
125
  'module',