executable-stories-formatters 1.18.0 → 1.19.1

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.d.cts CHANGED
@@ -273,6 +273,12 @@ interface FormatterOptions {
273
273
  sortTestCases?: SortTestCasesMode;
274
274
  /** Output routing configuration */
275
275
  output?: OutputConfig;
276
+ /** Base URL for source permalinks, e.g. "https://github.com/org/repo/blob/main". */
277
+ permalinkBaseUrl?: string;
278
+ /** URL template for ticket links; `{ticket}` is the id, e.g. "https://jira.example.com/browse/{ticket}". */
279
+ ticketUrlTemplate?: string;
280
+ /** URL template for trace links; `{traceId}` is the trace id. */
281
+ traceUrlTemplate?: string;
276
282
  /** Cucumber JSON specific options */
277
283
  cucumberJson?: {
278
284
  /** Pretty-print JSON output. Default: false */
@@ -310,6 +316,13 @@ interface FormatterOptions {
310
316
  staleAfterDays?: number;
311
317
  /** Show the Share button in the interactive report header. Default: false. */
312
318
  share?: boolean;
319
+ /**
320
+ * Draw the "Architecture, as it ran" section (the run's span graph) above
321
+ * the features. Default: false. Only an instrumented run has anything to
322
+ * draw, so it is opt-in rather than a section most reports would leave
323
+ * empty. `--html-architecture`.
324
+ */
325
+ architecture?: boolean;
313
326
  /** Command the share dialog shows. Default: `npx executable-stories share <output-dir>`. */
314
327
  shareCommand?: string;
315
328
  };
@@ -491,6 +504,9 @@ interface ResolvedFormatterOptions {
491
504
  toolVersion?: string;
492
505
  };
493
506
  };
507
+ permalinkBaseUrl: string | undefined;
508
+ ticketUrlTemplate: string | undefined;
509
+ traceUrlTemplate: string | undefined;
494
510
  html: {
495
511
  title: string;
496
512
  syntaxHighlighting: boolean;
@@ -498,6 +514,7 @@ interface ResolvedFormatterOptions {
498
514
  staleAfterDays: number;
499
515
  share: boolean;
500
516
  shareCommand: string | undefined;
517
+ architecture: boolean;
501
518
  };
502
519
  historyStore: HistoryStore | undefined;
503
520
  junit: {
@@ -1171,6 +1188,13 @@ interface Formatter {
1171
1188
  }
1172
1189
  interface ExecutableStoriesConfig {
1173
1190
  formatters?: Record<string, Formatter>;
1191
+ /**
1192
+ * Default values for CLI flags, keyed by flag name without the dashes
1193
+ * (`"html-title": "Checkout"`, `"html-architecture": true`). Anything typed
1194
+ * on the command line wins. Plain data, so a `.json` config carries it too,
1195
+ * which is the only way the non-JS adapters' users can set these at all.
1196
+ */
1197
+ defaults?: Record<string, string | number | boolean | (string | number)[]>;
1174
1198
  /**
1175
1199
  * Test-management targets for `coverage` and `sync`. Shape only — credentials
1176
1200
  * are read from the environment so this file stays committable.
@@ -1661,6 +1685,12 @@ declare class CucumberJsonFormatter {
1661
1685
  interface StoryReportJsonOptions {
1662
1686
  /** Pretty-print JSON output with 2-space indent. Default: true. */
1663
1687
  pretty?: boolean;
1688
+ /**
1689
+ * URL template for tickets that carry no URL of their own (`{ticket}` is the
1690
+ * id). The same template the HTML report resolves with, so the contract an
1691
+ * agent reads and the page a person opens link a ticket to the same place.
1692
+ */
1693
+ ticketUrlTemplate?: string;
1664
1694
  }
1665
1695
  declare class StoryReportJsonFormatter {
1666
1696
  private options;
package/dist/index.d.ts CHANGED
@@ -273,6 +273,12 @@ interface FormatterOptions {
273
273
  sortTestCases?: SortTestCasesMode;
274
274
  /** Output routing configuration */
275
275
  output?: OutputConfig;
276
+ /** Base URL for source permalinks, e.g. "https://github.com/org/repo/blob/main". */
277
+ permalinkBaseUrl?: string;
278
+ /** URL template for ticket links; `{ticket}` is the id, e.g. "https://jira.example.com/browse/{ticket}". */
279
+ ticketUrlTemplate?: string;
280
+ /** URL template for trace links; `{traceId}` is the trace id. */
281
+ traceUrlTemplate?: string;
276
282
  /** Cucumber JSON specific options */
277
283
  cucumberJson?: {
278
284
  /** Pretty-print JSON output. Default: false */
@@ -310,6 +316,13 @@ interface FormatterOptions {
310
316
  staleAfterDays?: number;
311
317
  /** Show the Share button in the interactive report header. Default: false. */
312
318
  share?: boolean;
319
+ /**
320
+ * Draw the "Architecture, as it ran" section (the run's span graph) above
321
+ * the features. Default: false. Only an instrumented run has anything to
322
+ * draw, so it is opt-in rather than a section most reports would leave
323
+ * empty. `--html-architecture`.
324
+ */
325
+ architecture?: boolean;
313
326
  /** Command the share dialog shows. Default: `npx executable-stories share <output-dir>`. */
314
327
  shareCommand?: string;
315
328
  };
@@ -491,6 +504,9 @@ interface ResolvedFormatterOptions {
491
504
  toolVersion?: string;
492
505
  };
493
506
  };
507
+ permalinkBaseUrl: string | undefined;
508
+ ticketUrlTemplate: string | undefined;
509
+ traceUrlTemplate: string | undefined;
494
510
  html: {
495
511
  title: string;
496
512
  syntaxHighlighting: boolean;
@@ -498,6 +514,7 @@ interface ResolvedFormatterOptions {
498
514
  staleAfterDays: number;
499
515
  share: boolean;
500
516
  shareCommand: string | undefined;
517
+ architecture: boolean;
501
518
  };
502
519
  historyStore: HistoryStore | undefined;
503
520
  junit: {
@@ -1171,6 +1188,13 @@ interface Formatter {
1171
1188
  }
1172
1189
  interface ExecutableStoriesConfig {
1173
1190
  formatters?: Record<string, Formatter>;
1191
+ /**
1192
+ * Default values for CLI flags, keyed by flag name without the dashes
1193
+ * (`"html-title": "Checkout"`, `"html-architecture": true`). Anything typed
1194
+ * on the command line wins. Plain data, so a `.json` config carries it too,
1195
+ * which is the only way the non-JS adapters' users can set these at all.
1196
+ */
1197
+ defaults?: Record<string, string | number | boolean | (string | number)[]>;
1174
1198
  /**
1175
1199
  * Test-management targets for `coverage` and `sync`. Shape only — credentials
1176
1200
  * are read from the environment so this file stays committable.
@@ -1661,6 +1685,12 @@ declare class CucumberJsonFormatter {
1661
1685
  interface StoryReportJsonOptions {
1662
1686
  /** Pretty-print JSON output with 2-space indent. Default: true. */
1663
1687
  pretty?: boolean;
1688
+ /**
1689
+ * URL template for tickets that carry no URL of their own (`{ticket}` is the
1690
+ * id). The same template the HTML report resolves with, so the contract an
1691
+ * agent reads and the page a person opens link a ticket to the same place.
1692
+ */
1693
+ ticketUrlTemplate?: string;
1664
1694
  }
1665
1695
  declare class StoryReportJsonFormatter {
1666
1696
  private options;