@forge/cli-shared 3.2.0-next.4 → 3.2.0-next.5

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.
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import { Ora } from 'ora';
3
- import { UI } from './ui';
3
+ import { TableCell, TableOptions, UI } from './ui';
4
4
  export interface ProgressResult {
5
5
  successful: boolean;
6
6
  message: string;
@@ -32,6 +32,7 @@ export declare class CommandLineUI implements UI {
32
32
  promptForList(message: string, choices: string[]): Promise<string>;
33
33
  promptForTable(message: string, infoMessage: string, columns: string[], choices: object[]): Promise<number[]>;
34
34
  promptForSingleChoiceTable(message: string, infoMessage: string, columns: string[], choices: object[]): Promise<number>;
35
+ table<Key extends string>(head: [Key, string][], data: Record<Key, TableCell>[] | undefined | null, { json, emptyMessage, preMessage, postMessage, format }?: TableOptions<Key>): void;
35
36
  private log;
36
37
  private logSuccess;
37
38
  private logError;
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-ui.d.ts","sourceRoot":"","sources":["../../src/ui/command-line-ui.ts"],"names":[],"mappings":";AACA,OAAY,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAM/B,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAW1B,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAc,YAAW,EAAE;IA2B1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IA1BpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAKjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAM;IAE9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAG/C,OAAO,CAAC,cAAc,CAAS;IAc/B,OAAO,CAAC,oBAAoB,CAAS;gBAER,OAAO,EAAE,MAAM,OAAO,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO;IASpF,IAAW,YAAY,IAAI,OAAO,CAEjC;IAED,IAAW,YAAY,IAAI,OAAO,CAEjC;IAEY,eAAe,CAAC,MAAM,EACjC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAC/B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,cAAc,CAAC,GAClE,OAAO,CAAC,MAAM,CAAC;IAgCL,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyBzG,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAU5B,KAAK,CAAC,OAAO,EAAE,MAAM;IAUrB,IAAI,CAAC,OAAO,EAAE,MAAM;IAKpB,IAAI,CAAC,OAAO,EAAE,MAAM;IAMpB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,GAAU,EAAE;;KAAK;IAcvC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,GAAG,SAAS,GAAG,OAAgB,GAAG,IAAI;IAKhF,SAAS,IAAI,IAAI;IAIX,OAAO,CAAC,OAAO,EAAE,MAAM;IAa7B,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIpD,eAAe,CAAC,OAAO,EAAE,MAAM;IAIzB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAYlE,cAAc,CACzB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC;IAeP,0BAA0B,CACrC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,MAAM,CAAC;IAelB,OAAO,CAAC,GAAG;IAqBX,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,yBAAyB;IAQjC,OAAO,CAAC,eAAe;YAaT,eAAe;IAa7B,OAAO,CAAC,wBAAwB;CAIjC"}
1
+ {"version":3,"file":"command-line-ui.d.ts","sourceRoot":"","sources":["../../src/ui/command-line-ui.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CommandLineUI = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ const cli_table3_1 = tslib_1.__importDefault(require("cli-table3"));
5
6
  const inquirer_1 = tslib_1.__importDefault(require("inquirer"));
6
7
  const ora_1 = tslib_1.__importDefault(require("ora"));
7
8
  const log_color_1 = require("./log-color");
@@ -184,6 +185,31 @@ class CommandLineUI {
184
185
  ]);
185
186
  return choice;
186
187
  }
188
+ table(head, data, { json, emptyMessage, preMessage, postMessage, format = {} } = {}) {
189
+ if (json) {
190
+ this.log(JSON.stringify(data, null, 2));
191
+ return;
192
+ }
193
+ if (!data && emptyMessage) {
194
+ this.info(emptyMessage);
195
+ return;
196
+ }
197
+ if (preMessage) {
198
+ this.info(preMessage);
199
+ }
200
+ const table = new cli_table3_1.default(Object.assign(Object.assign({}, log_color_1.TableStyle.default), { head: head.map(([, heading]) => heading) }));
201
+ if (data) {
202
+ table.push(...data.map((row) => head.map(([key]) => {
203
+ const value = row[key];
204
+ const formatter = format[key];
205
+ return formatter ? formatter(value) : value;
206
+ })));
207
+ }
208
+ this.info(table.toString());
209
+ if (postMessage) {
210
+ this.info(postMessage);
211
+ }
212
+ }
187
213
  log(message, progressLogType = ProgressLogType.other) {
188
214
  let msg = message;
189
215
  if (this.insideProgress) {
package/out/ui/text.d.ts CHANGED
@@ -45,6 +45,7 @@ export declare const Text: {
45
45
  optionSite: string;
46
46
  optionProduct: (supportedProducts: string[]) => string;
47
47
  optionVerbose: string;
48
+ optionJson: string;
48
49
  invalidCmd: (command: string) => string;
49
50
  invalidCmdHelp: string;
50
51
  extraArguments: (commandName: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/ui/text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/ui/text.ts"],"names":[],"mappings":"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"}
package/out/ui/text.js CHANGED
@@ -88,6 +88,7 @@ exports.Text = {
88
88
  optionSite: 'site URL (example.atlassian.net)',
89
89
  optionProduct: (supportedProducts) => `product (${supportedProducts.join(', ')})`,
90
90
  optionVerbose: 'enable verbose mode',
91
+ optionJson: 'output results in JSON format',
91
92
  invalidCmd: (command) => `’${command}’ is not a Forge command.`,
92
93
  invalidCmdHelp: `Run ${chalk_1.default.bold('forge --help')} to see the full list of available commands.`,
93
94
  extraArguments: (commandName) => `Unexpected argument. Run ${chalk_1.default.bold(`forge ${commandName} --help`)} for a list of available arguments.`,
package/out/ui/ui.d.ts CHANGED
@@ -8,9 +8,20 @@ export interface Prompt {
8
8
  promptForTable(message: string, infoMessage: string, columns: string[], choices: object[]): Promise<number[]>;
9
9
  promptForSingleChoiceTable(message: string, infoMessage: string, columns: string[], choices: object[]): Promise<number>;
10
10
  }
11
+ export declare type TableCell = string | boolean | null | undefined;
12
+ export declare type TableOptions<Key extends string> = {
13
+ json?: boolean;
14
+ emptyMessage?: string;
15
+ preMessage?: string;
16
+ postMessage?: string;
17
+ format?: {
18
+ [K in Key]?: (value: TableCell) => string;
19
+ };
20
+ };
11
21
  export interface UI extends Logger, Prompt {
12
22
  emptyLine(): void;
13
23
  displayProgress<Result>(progress: () => Promise<Result>, startText: string, successText: string | ((result: Result) => string | ProgressResult)): Promise<Result>;
14
24
  displayTemporaryMessage<Result>(progress: () => Promise<Result>, waitText: string): Promise<Result>;
25
+ table<Key extends string>(head: [Key, string][], data: Record<Key, TableCell>[] | undefined | null, options?: TableOptions<Key>): void;
15
26
  }
16
27
  //# sourceMappingURL=ui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/ui/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,MAAM;IACrB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9G,0BAA0B,CACxB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,MAAM,WAAW,EAAG,SAAQ,MAAM,EAAE,MAAM;IACxC,SAAS,IAAI,IAAI,CAAC;IAElB,eAAe,CAAC,MAAM,EACpB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAC/B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,cAAc,CAAC,GAClE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACrG"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/ui/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,MAAM;IACrB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9G,0BAA0B,CACxB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,oBAAY,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAE5D,oBAAY,YAAY,CAAC,GAAG,SAAS,MAAM,IAAI;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE;SAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM;KAAE,CAAC;CACxD,CAAC;AAEF,MAAM,WAAW,EAAG,SAAQ,MAAM,EAAE,MAAM;IACxC,SAAS,IAAI,IAAI,CAAC;IAElB,eAAe,CAAC,MAAM,EACpB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAC/B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,cAAc,CAAC,GAClE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpG,KAAK,CAAC,GAAG,SAAS,MAAM,EACtB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EACrB,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,GAAG,IAAI,EACjD,OAAO,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,GAC1B,IAAI,CAAC;CACT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/cli-shared",
3
- "version": "3.2.0-next.4",
3
+ "version": "3.2.0-next.5",
4
4
  "description": "Common functionality for Forge CLI",
5
5
  "author": "Atlassian",
6
6
  "license": "UNLICENSED",