allure 3.0.0-beta.16 → 3.0.0-beta.18

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.
Files changed (56) hide show
  1. package/dist/commands/allure2.d.ts +15 -13
  2. package/dist/commands/allure2.js +67 -79
  3. package/dist/commands/awesome.d.ts +18 -15
  4. package/dist/commands/awesome.js +79 -99
  5. package/dist/commands/classic.d.ts +15 -13
  6. package/dist/commands/classic.js +67 -79
  7. package/dist/commands/csv.d.ts +13 -11
  8. package/dist/commands/csv.js +59 -65
  9. package/dist/commands/dashboard.d.ts +15 -13
  10. package/dist/commands/dashboard.js +67 -78
  11. package/dist/commands/generate.d.ts +11 -9
  12. package/dist/commands/generate.js +70 -36
  13. package/dist/commands/history.d.ts +9 -7
  14. package/dist/commands/history.js +31 -28
  15. package/dist/commands/index.d.ts +1 -0
  16. package/dist/commands/index.js +1 -0
  17. package/dist/commands/knownIssue.d.ts +8 -6
  18. package/dist/commands/knownIssue.js +30 -23
  19. package/dist/commands/log.d.ts +12 -9
  20. package/dist/commands/log.js +54 -58
  21. package/dist/commands/login.d.ts +8 -7
  22. package/dist/commands/login.js +39 -36
  23. package/dist/commands/logout.d.ts +8 -7
  24. package/dist/commands/logout.js +39 -36
  25. package/dist/commands/open.d.ts +11 -9
  26. package/dist/commands/open.js +34 -40
  27. package/dist/commands/projects/create.d.ts +9 -7
  28. package/dist/commands/projects/create.js +70 -66
  29. package/dist/commands/projects/delete.d.ts +10 -7
  30. package/dist/commands/projects/delete.js +55 -61
  31. package/dist/commands/projects/list.d.ts +8 -7
  32. package/dist/commands/projects/list.js +62 -62
  33. package/dist/commands/qualityGate.d.ts +14 -7
  34. package/dist/commands/qualityGate.js +131 -45
  35. package/dist/commands/results/index.d.ts +2 -0
  36. package/dist/commands/results/index.js +2 -0
  37. package/dist/commands/results/pack.d.ts +10 -0
  38. package/dist/commands/results/pack.js +111 -0
  39. package/dist/commands/results/unpack.d.ts +9 -0
  40. package/dist/commands/results/unpack.js +79 -0
  41. package/dist/commands/run.d.ts +22 -10
  42. package/dist/commands/run.js +244 -101
  43. package/dist/commands/slack.d.ts +9 -7
  44. package/dist/commands/slack.js +51 -48
  45. package/dist/commands/testplan.d.ts +8 -6
  46. package/dist/commands/testplan.js +36 -29
  47. package/dist/commands/watch.d.ts +12 -10
  48. package/dist/commands/watch.js +103 -99
  49. package/dist/commands/whoami.d.ts +8 -7
  50. package/dist/commands/whoami.js +44 -38
  51. package/dist/index.js +33 -35
  52. package/dist/utils/process.d.ts +7 -1
  53. package/dist/utils/process.js +17 -6
  54. package/package.json +27 -20
  55. package/dist/utils/commands.d.ts +0 -16
  56. package/dist/utils/commands.js +0 -16
@@ -1,38 +1,45 @@
1
1
  import { AllureReport, resolveConfig } from "@allurereport/core";
2
+ import { Command, Option } from "clipanion";
2
3
  import * as console from "node:console";
3
4
  import { basename, dirname, resolve } from "node:path";
4
- import { createCommand } from "../utils/commands.js";
5
- export const TestPlanCommandAction = async (resultsDir, options) => {
6
- const before = new Date().getTime();
7
- const resolved = resolve(options.output ?? "./testplan.json");
8
- const output = dirname(resolved);
9
- const fileName = basename(resolved);
10
- const config = await resolveConfig({
11
- output: output,
12
- plugins: {
13
- "@allurereport/plugin-testplan": {
14
- options: { fileName },
5
+ export class TestPlanCommand extends Command {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.resultsDir = Option.String({ required: true, name: "The directory with Allure results" });
9
+ this.output = Option.String("--output,-o", {
10
+ description: "The output file name. Absolute paths are accepted as well",
11
+ });
12
+ }
13
+ async execute() {
14
+ const before = new Date().getTime();
15
+ const resolved = resolve(this.output ?? "./testplan.json");
16
+ const output = dirname(resolved);
17
+ const fileName = basename(resolved);
18
+ const config = await resolveConfig({
19
+ output: output,
20
+ plugins: {
21
+ "@allurereport/plugin-testplan": {
22
+ options: { fileName },
23
+ },
15
24
  },
16
- },
17
- });
18
- const allureReport = new AllureReport(config);
19
- await allureReport.start();
20
- await allureReport.readDirectory(resultsDir);
21
- await allureReport.done();
22
- const after = new Date().getTime();
23
- console.log(`the report successfully generated (${after - before}ms)`);
24
- };
25
- export const TestPlanCommand = createCommand({
26
- name: "testplan <resultsDir>",
25
+ });
26
+ const allureReport = new AllureReport(config);
27
+ await allureReport.start();
28
+ await allureReport.readDirectory(this.resultsDir);
29
+ await allureReport.done();
30
+ const after = new Date().getTime();
31
+ console.log(`the report successfully generated (${after - before}ms)`);
32
+ }
33
+ }
34
+ TestPlanCommand.paths = [["testplan"]];
35
+ TestPlanCommand.usage = Command.Usage({
27
36
  description: "Generates testplan.json based on provided Allure Results",
28
- options: [
37
+ details: "This command generates a testplan.json file from the provided Allure Results directory.",
38
+ examples: [
39
+ ["testplan ./allure-results", "Generate a testplan.json file from the ./allure-results directory"],
29
40
  [
30
- "--output, -o <file>",
31
- {
32
- description: "The output file name. Absolute paths are accepted as well",
33
- default: "testplan.json",
34
- },
41
+ "testplan ./allure-results --output custom-testplan.json",
42
+ "Generate a custom-testplan.json file from the ./allure-results directory",
35
43
  ],
36
44
  ],
37
- action: TestPlanCommandAction,
38
45
  });
@@ -1,10 +1,12 @@
1
- type WatchCommandOptions = {
2
- config?: string;
3
- output?: string;
4
- cwd?: string;
5
- reportName?: string;
6
- port?: string;
7
- };
8
- export declare const WatchCommandAction: (resultsDir: string, options: WatchCommandOptions) => Promise<void>;
9
- export declare const WatchCommand: (cli: import("cac").CAC) => void;
10
- export {};
1
+ import { Command } from "clipanion";
2
+ export declare class WatchCommand extends Command {
3
+ static paths: string[][];
4
+ static usage: import("clipanion").Usage;
5
+ resultsDir: string;
6
+ config: string | undefined;
7
+ cwd: string | undefined;
8
+ output: string | undefined;
9
+ reportName: string | undefined;
10
+ port: string | undefined;
11
+ execute(): Promise<void>;
12
+ }
@@ -5,114 +5,118 @@ import ProgressPlugin from "@allurereport/plugin-progress";
5
5
  import ServerReloadPlugin from "@allurereport/plugin-server-reload";
6
6
  import { PathResultFile } from "@allurereport/reader-api";
7
7
  import { serve } from "@allurereport/static-server";
8
+ import { Command, Option } from "clipanion";
8
9
  import * as console from "node:console";
9
10
  import { rm } from "node:fs/promises";
10
11
  import { join, resolve } from "node:path";
11
12
  import process from "node:process";
12
- import { createCommand } from "../utils/commands.js";
13
- export const WatchCommandAction = async (resultsDir, options) => {
14
- const before = new Date().getTime();
15
- process.on("exit", (code) => {
16
- const after = new Date().getTime();
17
- console.log(`exit code ${code} (${after - before}ms)`);
18
- });
19
- const { config: configPath, output, cwd, reportName } = options;
20
- const config = await readConfig(cwd, configPath, { output, name: reportName });
21
- try {
22
- await rm(config.output, { recursive: true });
13
+ export class WatchCommand extends Command {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.resultsDir = Option.String({ required: true, name: "The directory with Allure results" });
17
+ this.config = Option.String("--config,-c", {
18
+ description: "The path Allure config file",
19
+ });
20
+ this.cwd = Option.String("--cwd", {
21
+ description: "The working directory for the command to run (default: current working directory)",
22
+ });
23
+ this.output = Option.String("--output,-o", {
24
+ description: "The output file name, allure.csv by default. Accepts absolute paths (default: ./allure-report)",
25
+ });
26
+ this.reportName = Option.String("--report-name,--name", {
27
+ description: "The report name (default: Allure Report)",
28
+ });
29
+ this.port = Option.String("--port", {
30
+ description: "The port to serve the reports on (default: random port)",
31
+ });
23
32
  }
24
- catch (e) {
25
- if (!isFileNotFoundError(e)) {
26
- console.error("could not clean output directory", e);
33
+ async execute() {
34
+ const before = new Date().getTime();
35
+ process.on("exit", (code) => {
36
+ const after = new Date().getTime();
37
+ console.log(`exit code ${code} (${after - before}ms)`);
38
+ });
39
+ const config = await readConfig(this.cwd, this.config, {
40
+ output: this.output,
41
+ name: this.reportName,
42
+ });
43
+ try {
44
+ await rm(config.output, { recursive: true });
27
45
  }
46
+ catch (e) {
47
+ if (!isFileNotFoundError(e)) {
48
+ console.error("could not clean output directory", e);
49
+ }
50
+ }
51
+ const server = await serve({
52
+ servePath: config.output,
53
+ port: this.port ? parseInt(this.port, 10) : undefined,
54
+ live: false,
55
+ open: false,
56
+ });
57
+ const allureReport = new AllureReport({
58
+ ...config,
59
+ realTime: true,
60
+ plugins: [
61
+ ...(config.plugins?.length
62
+ ? config.plugins
63
+ : [
64
+ {
65
+ id: "awesome",
66
+ enabled: true,
67
+ options: {},
68
+ plugin: new Awesome({
69
+ reportName: config.name,
70
+ }),
71
+ },
72
+ ]),
73
+ {
74
+ id: "watch log",
75
+ enabled: true,
76
+ options: {},
77
+ plugin: new ProgressPlugin(),
78
+ },
79
+ {
80
+ id: "server reload",
81
+ enabled: true,
82
+ options: {},
83
+ plugin: new ServerReloadPlugin({
84
+ server,
85
+ }),
86
+ },
87
+ ],
88
+ });
89
+ await allureReport.start();
90
+ const input = resolve(this.resultsDir[0]);
91
+ const { abort } = newFilesInDirectoryWatcher(input, async (path) => {
92
+ await allureReport.readResult(new PathResultFile(path));
93
+ });
94
+ const pluginIdToOpen = config.plugins?.find((plugin) => !!plugin.options.open)?.id;
95
+ if (pluginIdToOpen) {
96
+ await server.open(join(server.url, pluginIdToOpen));
97
+ }
98
+ else {
99
+ await server.open(server.url);
100
+ }
101
+ console.info("Press Ctrl+C to exit");
102
+ process.on("SIGINT", async () => {
103
+ console.log("");
104
+ await abort();
105
+ await server.stop();
106
+ await allureReport.done();
107
+ process.exit(0);
108
+ });
28
109
  }
29
- const server = await serve({
30
- servePath: config.output,
31
- port: options.port ? parseInt(options.port, 10) : undefined,
32
- live: false,
33
- open: false,
34
- });
35
- const allureReport = new AllureReport({
36
- ...config,
37
- realTime: true,
38
- plugins: [
39
- ...(config.plugins?.length
40
- ? config.plugins
41
- : [
42
- {
43
- id: "awesome",
44
- enabled: true,
45
- options: {},
46
- plugin: new Awesome({
47
- reportName: config.name,
48
- }),
49
- },
50
- ]),
51
- {
52
- id: "watch log",
53
- enabled: true,
54
- options: {},
55
- plugin: new ProgressPlugin(),
56
- },
57
- {
58
- id: "server reload",
59
- enabled: true,
60
- options: {},
61
- plugin: new ServerReloadPlugin({
62
- server,
63
- }),
64
- },
65
- ],
66
- });
67
- await allureReport.start();
68
- const input = resolve(resultsDir);
69
- const { abort } = newFilesInDirectoryWatcher(input, async (path) => {
70
- await allureReport.readResult(new PathResultFile(path));
71
- });
72
- const pluginIdToOpen = config.plugins?.find((plugin) => !!plugin.options.open)?.id;
73
- if (pluginIdToOpen) {
74
- await server.open(join(server.url, pluginIdToOpen));
75
- }
76
- else {
77
- await server.open(server.url);
78
- }
79
- console.info("Press Ctrl+C to exit");
80
- process.on("SIGINT", async () => {
81
- console.log("");
82
- await abort();
83
- await server.stop();
84
- await allureReport.done();
85
- process.exit(0);
86
- });
87
- };
88
- export const WatchCommand = createCommand({
89
- name: "watch <resultsDir>",
110
+ }
111
+ WatchCommand.paths = [["watch"]];
112
+ WatchCommand.usage = Command.Usage({
90
113
  description: "Watches Allure Results changes in Real-time",
91
- options: [
92
- [
93
- "--cwd <cwd>",
94
- {
95
- description: "The working directory for the command to run (default: current working directory)",
96
- },
97
- ],
98
- [
99
- "--output, -o <file>",
100
- {
101
- description: "The output file name, allure.csv by default. Accepts absolute paths (default: ./allure-report)",
102
- },
103
- ],
104
- [
105
- "--report-name, --name <string>",
106
- {
107
- description: "The report name (default: Allure Report)",
108
- },
109
- ],
114
+ details: "This command watches for changes in the Allure Results directory and updates the report in real-time.",
115
+ examples: [
116
+ ["watch ./allure-results", "Watch for changes in the ./allure-results directory"],
110
117
  [
111
- "--port <port>",
112
- {
113
- description: "The port to serve the reports on (default: random port)",
114
- },
118
+ "watch ./allure-results --port 8080",
119
+ "Watch for changes in the ./allure-results directory and serve the report on port 8080",
115
120
  ],
116
121
  ],
117
- action: WatchCommandAction,
118
122
  });
@@ -1,7 +1,8 @@
1
- type CommandOptions = {
2
- config?: string;
3
- cwd?: string;
4
- };
5
- export declare const WhoamiCommandAction: (options?: CommandOptions) => Promise<void>;
6
- export declare const WhoamiCommand: (cli: import("cac").CAC) => void;
7
- export {};
1
+ import { Command } from "clipanion";
2
+ export declare class WhoamiCommand extends Command {
3
+ static paths: string[][];
4
+ static usage: import("clipanion").Usage;
5
+ config: string | undefined;
6
+ cwd: string | undefined;
7
+ execute(): Promise<void>;
8
+ }
@@ -1,51 +1,57 @@
1
1
  import { readConfig } from "@allurereport/core";
2
2
  import { AllureServiceClient, KnownError } from "@allurereport/service";
3
+ import { Command, Option } from "clipanion";
4
+ import * as console from "node:console";
5
+ import { exit } from "node:process";
3
6
  import { green, red } from "yoctocolors";
4
- import { createCommand } from "../utils/commands.js";
5
7
  import { logError } from "../utils/logs.js";
6
- export const WhoamiCommandAction = async (options) => {
7
- const { config: configPath, cwd } = options ?? {};
8
- const config = await readConfig(cwd, configPath);
9
- if (!config?.allureService?.url) {
10
- console.error(red("No Allure Service URL is provided. Please provide it in the `allureService.url` field in the `allure.config.js` file"));
11
- process.exit(1);
12
- return;
8
+ export class WhoamiCommand extends Command {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.config = Option.String("--config,-c", {
12
+ description: "The path Allure config file",
13
+ });
14
+ this.cwd = Option.String("--cwd", {
15
+ description: "The working directory for the command to run (default: current working directory)",
16
+ });
13
17
  }
14
- const serviceClient = new AllureServiceClient(config.allureService);
15
- try {
16
- const profile = await serviceClient.profile();
17
- const lines = [`You are logged in as "${profile.email}"`];
18
- if (config.allureService?.project) {
19
- lines.push(`Current project is "${config.allureService.project}"`);
20
- }
21
- console.info(green(lines.join("\n")));
22
- }
23
- catch (error) {
24
- if (error instanceof KnownError) {
25
- console.error(red(error.message));
26
- process.exit(1);
18
+ async execute() {
19
+ const config = await readConfig(this.cwd, this.config);
20
+ if (!config?.allureService?.url) {
21
+ console.error(red("No Allure Service URL is provided. Please provide it in the `allureService.url` field in the `allure.config.js` file"));
22
+ exit(1);
27
23
  return;
28
24
  }
29
- await logError("Failed to get profile due to unexpected error", error);
30
- process.exit(1);
25
+ const serviceClient = new AllureServiceClient(config.allureService);
26
+ try {
27
+ const profile = await serviceClient.profile();
28
+ const lines = [`You are logged in as "${profile.email}"`];
29
+ if (config.allureService?.project) {
30
+ lines.push(`Current project is "${config.allureService.project}"`);
31
+ }
32
+ console.info(green(lines.join("\n")));
33
+ }
34
+ catch (error) {
35
+ if (error instanceof KnownError) {
36
+ console.error(red(error.message));
37
+ exit(1);
38
+ return;
39
+ }
40
+ await logError("Failed to get profile due to unexpected error", error);
41
+ exit(1);
42
+ }
31
43
  }
32
- };
33
- export const WhoamiCommand = createCommand({
34
- name: "whoami",
44
+ }
45
+ WhoamiCommand.paths = [["whoami"]];
46
+ WhoamiCommand.usage = Command.Usage({
47
+ category: "Allure Service",
35
48
  description: "Prints information about current user",
36
- options: [
37
- [
38
- "--config, -c <file>",
39
- {
40
- description: "The path Allure config file",
41
- },
42
- ],
49
+ details: "This command prints information about the current user logged in to the Allure Service.",
50
+ examples: [
51
+ ["whoami", "Print information about the current user using the default configuration"],
43
52
  [
44
- "--cwd <cwd>",
45
- {
46
- description: "The working directory for the command to run (default: current working directory)",
47
- },
53
+ "whoami --config custom-config.js",
54
+ "Print information about the current user using a custom configuration file",
48
55
  ],
49
56
  ],
50
- action: WhoamiCommandAction,
51
57
  });
package/dist/index.js CHANGED
@@ -1,41 +1,39 @@
1
- import { cac } from "cac";
1
+ import { Builtins, Cli } from "clipanion";
2
2
  import console from "node:console";
3
3
  import { readFileSync } from "node:fs";
4
- import { cwd } from "node:process";
5
- import { AwesomeCommand, ClassicCommand, ClassicLegacyCommand, CsvCommand, DashboardCommand, GenerateCommand, HistoryCommand, KnownIssueCommand, LogCommand, LoginCommand, LogoutCommand, OpenCommand, ProjectsCreateCommand, ProjectsDeleteCommand, ProjectsListCommand, QualityGateCommand, RunCommand, SlackCommand, TestPlanCommand, WatchCommand, WhoamiCommand, } from "./commands/index.js";
4
+ import { argv, cwd } from "node:process";
5
+ import { Allure2Command, AwesomeCommand, ClassicCommand, CsvCommand, DashboardCommand, GenerateCommand, HistoryCommand, KnownIssueCommand, LogCommand, LoginCommand, LogoutCommand, OpenCommand, ProjectsCreateCommand, ProjectsDeleteCommand, ProjectsListCommand, QualityGateCommand, ResultsPackCommand, ResultsUnpackCommand, RunCommand, SlackCommand, TestPlanCommand, WatchCommand, WhoamiCommand, } from "./commands/index.js";
6
+ const [node, app, ...args] = argv;
6
7
  const pkg = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
7
- const cli = cac(pkg.name).usage(pkg.description).help().version(pkg.version);
8
- const commands = [
9
- ClassicCommand,
10
- ClassicLegacyCommand,
11
- AwesomeCommand,
12
- CsvCommand,
13
- DashboardCommand,
14
- GenerateCommand,
15
- HistoryCommand,
16
- KnownIssueCommand,
17
- LogCommand,
18
- OpenCommand,
19
- QualityGateCommand,
20
- RunCommand,
21
- SlackCommand,
22
- TestPlanCommand,
23
- WatchCommand,
24
- LoginCommand,
25
- LogoutCommand,
26
- WhoamiCommand,
27
- ProjectsCreateCommand,
28
- ProjectsDeleteCommand,
29
- ProjectsListCommand,
30
- ];
31
- commands.forEach((command) => {
32
- command(cli);
33
- });
34
- cli.on("command:*", () => {
35
- console.error(`Invalid command: "${cli.args.join(" ")}"`);
36
- console.error("See --help for a list of available commands");
37
- process.exit(1);
8
+ const cli = new Cli({
9
+ binaryName: pkg.name,
10
+ binaryLabel: `${node} ${app}`,
11
+ binaryVersion: pkg.version,
38
12
  });
13
+ cli.register(AwesomeCommand);
14
+ cli.register(Allure2Command);
15
+ cli.register(ClassicCommand);
16
+ cli.register(CsvCommand);
17
+ cli.register(DashboardCommand);
18
+ cli.register(GenerateCommand);
19
+ cli.register(HistoryCommand);
20
+ cli.register(KnownIssueCommand);
21
+ cli.register(LogCommand);
22
+ cli.register(LoginCommand);
23
+ cli.register(LogoutCommand);
24
+ cli.register(OpenCommand);
25
+ cli.register(QualityGateCommand);
26
+ cli.register(RunCommand);
27
+ cli.register(SlackCommand);
28
+ cli.register(TestPlanCommand);
29
+ cli.register(WatchCommand);
30
+ cli.register(WhoamiCommand);
31
+ cli.register(ProjectsCreateCommand);
32
+ cli.register(ProjectsDeleteCommand);
33
+ cli.register(ProjectsListCommand);
34
+ cli.register(ResultsPackCommand);
35
+ cli.register(ResultsUnpackCommand);
36
+ cli.register(Builtins.HelpCommand);
37
+ cli.runExit(args);
39
38
  console.log(cwd());
40
- cli.parse();
41
39
  export { defineConfig } from "@allurereport/plugin-api";
@@ -1,3 +1,9 @@
1
1
  import type { ChildProcess } from "node:child_process";
2
- export declare const runProcess: (command: string, commandArgs: string[], cwd: string | undefined, environment: Record<string, string>, silent?: boolean) => ChildProcess;
2
+ export declare const runProcess: (params: {
3
+ command: string;
4
+ commandArgs: string[];
5
+ cwd: string | undefined;
6
+ environment?: Record<string, string>;
7
+ logs?: "pipe" | "inherit" | "ignore";
8
+ }) => ChildProcess;
3
9
  export declare const terminationOf: (testProcess: ChildProcess) => Promise<number | null>;
@@ -1,12 +1,23 @@
1
1
  import { spawn } from "node:child_process";
2
- export const runProcess = (command, commandArgs, cwd, environment, silent) => {
2
+ export const runProcess = (params) => {
3
+ const { command, commandArgs, cwd, environment = {}, logs = "inherit" } = params;
4
+ const env = {
5
+ ...process.env,
6
+ ...environment,
7
+ };
8
+ if (logs === "pipe") {
9
+ Object.assign(env, {
10
+ FORCE_COLOR: "1",
11
+ CLICOLOR_FORCE: "1",
12
+ COLOR: "1",
13
+ COLORTERM: "truecolor",
14
+ TERM: "xterm-256color",
15
+ });
16
+ }
3
17
  return spawn(command, commandArgs, {
4
- env: {
5
- ...process.env,
6
- ...environment,
7
- },
18
+ env,
8
19
  cwd,
9
- stdio: silent ? "ignore" : "inherit",
20
+ stdio: logs,
10
21
  shell: true,
11
22
  });
12
23
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "allure",
3
- "version": "3.0.0-beta.16",
3
+ "version": "3.0.0-beta.18",
4
4
  "description": "Allure Commandline Tool",
5
5
  "keywords": [
6
6
  "allure",
@@ -12,7 +12,8 @@
12
12
  "author": "Qameta Software",
13
13
  "type": "module",
14
14
  "exports": {
15
- ".": "./dist/index.js"
15
+ ".": "./dist/index.js",
16
+ "./qualityGate": "./dist/qualityGate.js"
16
17
  },
17
18
  "main": "./dist/index.js",
18
19
  "module": "./dist/index.js",
@@ -30,38 +31,44 @@
30
31
  "test": "vitest run"
31
32
  },
32
33
  "dependencies": {
33
- "@allurereport/core": "3.0.0-beta.16",
34
- "@allurereport/core-api": "3.0.0-beta.16",
35
- "@allurereport/directory-watcher": "3.0.0-beta.16",
36
- "@allurereport/plugin-allure2": "3.0.0-beta.16",
37
- "@allurereport/plugin-api": "3.0.0-beta.16",
38
- "@allurereport/plugin-awesome": "3.0.0-beta.16",
39
- "@allurereport/plugin-classic": "3.0.0-beta.16",
40
- "@allurereport/plugin-csv": "3.0.0-beta.16",
41
- "@allurereport/plugin-dashboard": "3.0.0-beta.16",
42
- "@allurereport/plugin-log": "3.0.0-beta.16",
43
- "@allurereport/plugin-progress": "3.0.0-beta.16",
44
- "@allurereport/plugin-server-reload": "3.0.0-beta.16",
45
- "@allurereport/plugin-slack": "3.0.0-beta.16",
46
- "@allurereport/reader-api": "3.0.0-beta.16",
47
- "@allurereport/service": "3.0.0-beta.16",
48
- "@allurereport/static-server": "3.0.0-beta.16",
49
- "cac": "^6.7.14",
34
+ "@allurereport/core": "3.0.0-beta.18",
35
+ "@allurereport/core-api": "3.0.0-beta.18",
36
+ "@allurereport/directory-watcher": "3.0.0-beta.18",
37
+ "@allurereport/plugin-allure2": "3.0.0-beta.18",
38
+ "@allurereport/plugin-api": "3.0.0-beta.18",
39
+ "@allurereport/plugin-awesome": "3.0.0-beta.18",
40
+ "@allurereport/plugin-classic": "3.0.0-beta.18",
41
+ "@allurereport/plugin-csv": "3.0.0-beta.18",
42
+ "@allurereport/plugin-dashboard": "3.0.0-beta.18",
43
+ "@allurereport/plugin-log": "3.0.0-beta.18",
44
+ "@allurereport/plugin-progress": "3.0.0-beta.18",
45
+ "@allurereport/plugin-server-reload": "3.0.0-beta.18",
46
+ "@allurereport/plugin-slack": "3.0.0-beta.18",
47
+ "@allurereport/reader-api": "3.0.0-beta.18",
48
+ "@allurereport/service": "3.0.0-beta.18",
49
+ "@allurereport/static-server": "3.0.0-beta.18",
50
+ "adm-zip": "^0.5.16",
51
+ "clipanion": "^4.0.0-rc.4",
50
52
  "lodash.omit": "^4.5.0",
53
+ "picomatch": "^4.0.3",
51
54
  "prompts": "^2.4.2",
55
+ "terminate": "^2.8.0",
56
+ "typanion": "^3.14.0",
52
57
  "yoctocolors": "^2.1.1"
53
58
  },
54
59
  "devDependencies": {
55
60
  "@stylistic/eslint-plugin": "^2.6.1",
61
+ "@types/adm-zip": "^0",
56
62
  "@types/eslint": "^8.56.11",
57
63
  "@types/lodash.omit": "^4.5.9",
58
64
  "@types/node": "^20.17.9",
65
+ "@types/picomatch": "^4",
59
66
  "@types/prompts": "^2",
60
67
  "@typescript-eslint/eslint-plugin": "^8.0.0",
61
68
  "@typescript-eslint/parser": "^8.0.0",
62
69
  "@vitest/runner": "^2.1.9",
63
70
  "@vitest/snapshot": "^2.1.9",
64
- "allure-vitest": "^3.0.9",
71
+ "allure-vitest": "^3.3.3",
65
72
  "eslint": "^8.57.0",
66
73
  "eslint-config-prettier": "^9.1.0",
67
74
  "eslint-plugin-import": "^2.29.1",
@@ -1,16 +0,0 @@
1
- import type { CAC } from "cac";
2
- export type OptionDescription = [string] | [
3
- string,
4
- {
5
- description?: string;
6
- type?: any[];
7
- default?: any;
8
- }
9
- ];
10
- export type CreateCommandOptions = {
11
- name: string;
12
- description?: string;
13
- options?: OptionDescription[];
14
- action: (...args: any[]) => Promise<void>;
15
- };
16
- export declare const createCommand: (payload: CreateCommandOptions) => (cli: CAC) => void;