@lynxwall/cucumber-tsflow 6.1.1 → 6.2.0

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 (98) hide show
  1. package/README.md +62 -21
  2. package/lib/behave.d.ts +1 -1
  3. package/lib/behave.js +27 -27
  4. package/lib/cli/argv-parser.d.ts +24 -24
  5. package/lib/cli/argv-parser.js +103 -103
  6. package/lib/cli/index.d.ts +21 -22
  7. package/lib/cli/index.js +95 -101
  8. package/lib/cli/load-configuration.d.ts +20 -20
  9. package/lib/cli/load-configuration.js +101 -90
  10. package/lib/cli/run.d.ts +1 -1
  11. package/lib/cli/run.js +49 -47
  12. package/lib/cucumber/binding-decorator.d.ts +10 -10
  13. package/lib/cucumber/binding-decorator.js +180 -180
  14. package/lib/cucumber/binding-registry.d.ts +82 -82
  15. package/lib/cucumber/binding-registry.js +215 -215
  16. package/lib/cucumber/hook-decorators.d.ts +46 -46
  17. package/lib/cucumber/hook-decorators.js +102 -102
  18. package/lib/cucumber/managed-scenario-context.d.ts +21 -21
  19. package/lib/cucumber/managed-scenario-context.js +95 -95
  20. package/lib/cucumber/message-collector.d.ts +81 -81
  21. package/lib/cucumber/message-collector.js +250 -250
  22. package/lib/cucumber/parallel/coordinator.d.ts +79 -79
  23. package/lib/cucumber/parallel/coordinator.js +246 -246
  24. package/lib/cucumber/parallel/run-worker.d.ts +1 -1
  25. package/lib/cucumber/parallel/run-worker.js +31 -31
  26. package/lib/cucumber/parallel/worker.d.ts +30 -30
  27. package/lib/cucumber/parallel/worker.js +103 -103
  28. package/lib/cucumber/run-cucumber.d.ts +14 -14
  29. package/lib/cucumber/run-cucumber.js +118 -118
  30. package/lib/cucumber/runtime.d.ts +25 -25
  31. package/lib/cucumber/runtime.js +39 -39
  32. package/lib/cucumber/step-definition-decorators.d.ts +24 -24
  33. package/lib/cucumber/step-definition-decorators.js +91 -91
  34. package/lib/cucumber/utils.d.ts +16 -16
  35. package/lib/cucumber/utils.js +77 -77
  36. package/lib/esnode.js +18 -18
  37. package/lib/esvue.d.ts +1 -1
  38. package/lib/esvue.js +40 -40
  39. package/lib/formatters/behave-json-formatter.d.ts +49 -49
  40. package/lib/formatters/behave-json-formatter.js +74 -74
  41. package/lib/formatters/tsflow-snippet-syntax.d.ts +9 -9
  42. package/lib/formatters/tsflow-snippet-syntax.js +89 -89
  43. package/lib/gherkin/configuration.d.ts +30 -30
  44. package/lib/gherkin/configuration.js +26 -26
  45. package/lib/gherkin/gherkin-feature.d.ts +28 -28
  46. package/lib/gherkin/gherkin-feature.js +352 -352
  47. package/lib/gherkin/gherkin-manager.d.ts +29 -29
  48. package/lib/gherkin/gherkin-manager.js +143 -143
  49. package/lib/gherkin/models.d.ts +46 -46
  50. package/lib/gherkin/models.js +2 -2
  51. package/lib/index.d.ts +4 -4
  52. package/lib/index.js +22 -22
  53. package/lib/snippet.d.ts +1 -1
  54. package/lib/snippet.js +27 -27
  55. package/lib/transpilers/esbuild-transpiler.d.ts +4 -4
  56. package/lib/transpilers/esbuild-transpiler.js +18 -18
  57. package/lib/transpilers/esbuild.d.ts +12 -12
  58. package/lib/transpilers/esbuild.js +54 -54
  59. package/lib/transpilers/vue-sfc/compiler.d.ts +7 -7
  60. package/lib/transpilers/vue-sfc/compiler.js +21 -21
  61. package/lib/transpilers/vue-sfc/index.d.ts +23 -23
  62. package/lib/transpilers/vue-sfc/index.js +46 -46
  63. package/lib/transpilers/vue-sfc/main.d.ts +8 -8
  64. package/lib/transpilers/vue-sfc/main.js +247 -247
  65. package/lib/transpilers/vue-sfc/script.d.ts +5 -5
  66. package/lib/transpilers/vue-sfc/script.js +41 -41
  67. package/lib/transpilers/vue-sfc/template.d.ts +8 -8
  68. package/lib/transpilers/vue-sfc/template.js +101 -101
  69. package/lib/transpilers/vue-sfc/types.d.ts +55 -55
  70. package/lib/transpilers/vue-sfc/types.js +2 -2
  71. package/lib/transpilers/vue-sfc/utils/descriptorCache.d.ts +13 -13
  72. package/lib/transpilers/vue-sfc/utils/descriptorCache.js +67 -67
  73. package/lib/transpilers/vue-sfc/utils/error.d.ts +3 -3
  74. package/lib/transpilers/vue-sfc/utils/error.js +22 -22
  75. package/lib/transpilers/vue-sfc/utils/query.d.ts +13 -13
  76. package/lib/transpilers/vue-sfc/utils/query.js +35 -35
  77. package/lib/tsnode.js +17 -17
  78. package/lib/tsvue.d.ts +1 -1
  79. package/lib/tsvue.js +39 -39
  80. package/lib/types/scenario-context.d.ts +16 -16
  81. package/lib/types/scenario-context.js +17 -17
  82. package/lib/types/scenario-info.d.ts +16 -16
  83. package/lib/types/scenario-info.js +22 -22
  84. package/lib/types/step-binding-flags.d.ts +53 -53
  85. package/lib/types/step-binding-flags.js +59 -59
  86. package/lib/types/step-binding.d.ts +50 -50
  87. package/lib/types/step-binding.js +17 -17
  88. package/lib/types/types.d.ts +21 -21
  89. package/lib/types/types.js +2 -2
  90. package/lib/utils/helpers.d.ts +6 -6
  91. package/lib/utils/helpers.js +17 -17
  92. package/lib/utils/logger.d.ts +3 -3
  93. package/lib/utils/logger.js +29 -29
  94. package/lib/utils/our-callsite.d.ts +27 -27
  95. package/lib/utils/our-callsite.js +72 -72
  96. package/lib/version.d.ts +1 -1
  97. package/lib/version.js +5 -5
  98. package/package.json +11 -11
package/lib/cli/index.js CHANGED
@@ -1,101 +1,95 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const messages_1 = require("@cucumber/messages");
7
- const index_1 = require("@cucumber/cucumber/lib/configuration/index");
8
- const run_cucumber_1 = require("../cucumber/run-cucumber");
9
- const load_configuration_1 = require("./load-configuration");
10
- const i18n_1 = require("@cucumber/cucumber/lib/cli/i18n");
11
- const install_validator_1 = require("@cucumber/cucumber/lib/cli/install_validator");
12
- const paths_1 = require("@cucumber/cucumber/lib/api/paths");
13
- const environment_1 = require("@cucumber/cucumber/lib/api/environment");
14
- const support_1 = require("@cucumber/cucumber/lib/api/support");
15
- const binding_registry_1 = require("../cucumber/binding-registry");
16
- const argv_parser_1 = __importDefault(require("./argv-parser"));
17
- const debug_1 = __importDefault(require("debug"));
18
- const console_logger_1 = require("@cucumber/cucumber/lib/api/console_logger");
19
- const console_1 = require("console");
20
- class Cli {
21
- argv;
22
- cwd;
23
- stdout;
24
- stderr;
25
- env;
26
- constructor({ argv, cwd, stdout, stderr, env }) {
27
- this.argv = argv;
28
- this.cwd = cwd;
29
- this.stdout = stdout;
30
- this.stderr = stderr;
31
- this.env = env;
32
- }
33
- async run() {
34
- await (0, install_validator_1.validateInstall)();
35
- const { options, configuration: argvConfiguration } = argv_parser_1.default.parse(this.argv);
36
- if (options.i18nLanguages) {
37
- this.stdout.write((0, i18n_1.getLanguages)());
38
- return {
39
- shouldAdvertisePublish: false,
40
- shouldExitImmediately: true,
41
- success: true
42
- };
43
- }
44
- if (options.i18nKeywords) {
45
- this.stdout.write((0, i18n_1.getKeywords)(options.i18nKeywords));
46
- return {
47
- shouldAdvertisePublish: false,
48
- shouldExitImmediately: true,
49
- success: true
50
- };
51
- }
52
- const enableDebug = debug_1.default.enabled('cucumber');
53
- const environment = {
54
- cwd: this.cwd,
55
- stdout: this.stdout,
56
- stderr: this.stderr,
57
- env: this.env,
58
- debug: enableDebug
59
- };
60
- const consoleLogger = new console_1.Console(environment.stdout, environment.stderr);
61
- consoleLogger.info('Loading configuration and step definitions...\n');
62
- const { useConfiguration: configuration, runConfiguration } = await (0, load_configuration_1.loadConfiguration)({
63
- file: options.config,
64
- profiles: options.profile,
65
- provided: argvConfiguration
66
- }, environment);
67
- // get run options
68
- const { cwd } = (0, environment_1.mergeEnvironment)(environment);
69
- const newId = messages_1.IdGenerator.uuid();
70
- const runOptions = runConfiguration;
71
- const supportCoordinates = 'World' in runOptions.support ? runOptions.support.originalCoordinates : runOptions.support;
72
- const logger = new console_logger_1.ConsoleLogger(environment.stderr, enableDebug);
73
- const { requirePaths, importPaths } = await (0, paths_1.resolvePaths)(logger, cwd, runOptions.sources, supportCoordinates);
74
- // Load the step and hook definitions
75
- const supportCodeLibrary = 'World' in runOptions.support
76
- ? runOptions.support
77
- : await (0, support_1.getSupportCodeLibrary)({
78
- cwd,
79
- newId,
80
- requirePaths,
81
- importPaths,
82
- requireModules: supportCoordinates.requireModules
83
- });
84
- // Set support to the updated step and hook definitions
85
- // in the supportCodeLibrary. We also need to initialize originalCoordinates
86
- // to support parallel execution.
87
- runOptions.support = binding_registry_1.BindingRegistry.instance.updateSupportCodeLibrary(supportCodeLibrary);
88
- runOptions.support = { ...runOptions.support, ...{ originalCoordinates: supportCoordinates } };
89
- // now we can run cucumber
90
- const { success } = await (0, run_cucumber_1.runCucumber)(runOptions, environment);
91
- return {
92
- shouldAdvertisePublish: !runConfiguration.formats.publish &&
93
- !configuration.publishQuiet &&
94
- !(0, index_1.isTruthyString)(this.env.CUCUMBER_PUBLISH_QUIET),
95
- shouldExitImmediately: configuration.forceExit,
96
- success
97
- };
98
- }
99
- }
100
- exports.default = Cli;
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQWlEO0FBQ2pELHNFQUE0RTtBQUc1RSwyREFBdUQ7QUFDdkQsNkRBQXlEO0FBQ3pELDBEQUE0RTtBQUM1RSxvRkFBK0U7QUFDL0UsNERBQWdFO0FBQ2hFLHdFQUEwRTtBQUMxRSxnRUFBMkU7QUFDM0UsbUVBQStEO0FBQy9ELGdFQUF1QztBQUN2QyxrREFBMEI7QUFFMUIsOEVBQTBFO0FBQzFFLHFDQUFrQztBQVFsQyxNQUFxQixHQUFHO0lBQ04sSUFBSSxDQUFXO0lBQ2YsR0FBRyxDQUFTO0lBQ1osTUFBTSxDQUFtQjtJQUN6QixNQUFNLENBQW1CO0lBQ3pCLEdBQUcsQ0FBb0I7SUFFeEMsWUFBWSxFQUNYLElBQUksRUFDSixHQUFHLEVBQ0gsTUFBTSxFQUNOLE1BQU0sRUFDTixHQUFHLEVBT0g7UUFDQSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBRztRQUNSLE1BQU0sSUFBQSxtQ0FBZSxHQUFFLENBQUM7UUFFeEIsTUFBTSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxxQkFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEYsSUFBSSxPQUFPLENBQUMsYUFBYSxFQUFFO1lBQ3pCLElBQUksQ0FBQyxNQUFjLENBQUMsS0FBSyxDQUFDLElBQUEsbUJBQVksR0FBRSxDQUFDLENBQUM7WUFDM0MsT0FBTztn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
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const messages_1 = require("@cucumber/messages");
7
+ const run_cucumber_1 = require("../cucumber/run-cucumber");
8
+ const load_configuration_1 = require("./load-configuration");
9
+ const i18n_1 = require("@cucumber/cucumber/lib/cli/i18n");
10
+ const install_validator_1 = require("@cucumber/cucumber/lib/cli/install_validator");
11
+ const paths_1 = require("@cucumber/cucumber/lib/api/paths");
12
+ const environment_1 = require("@cucumber/cucumber/lib/api/environment");
13
+ const support_1 = require("@cucumber/cucumber/lib/api/support");
14
+ const binding_registry_1 = require("../cucumber/binding-registry");
15
+ const argv_parser_1 = __importDefault(require("./argv-parser"));
16
+ const debug_1 = __importDefault(require("debug"));
17
+ const console_logger_1 = require("@cucumber/cucumber/lib/api/console_logger");
18
+ const console_1 = require("console");
19
+ class Cli {
20
+ argv;
21
+ cwd;
22
+ stdout;
23
+ stderr;
24
+ env;
25
+ constructor({ argv, cwd, stdout, stderr, env }) {
26
+ this.argv = argv;
27
+ this.cwd = cwd;
28
+ this.stdout = stdout;
29
+ this.stderr = stderr;
30
+ this.env = env;
31
+ }
32
+ async run() {
33
+ await (0, install_validator_1.validateInstall)();
34
+ const { options, configuration: argvConfiguration } = argv_parser_1.default.parse(this.argv);
35
+ if (options.i18nLanguages) {
36
+ this.stdout.write((0, i18n_1.getLanguages)());
37
+ return {
38
+ shouldExitImmediately: true,
39
+ success: true
40
+ };
41
+ }
42
+ if (options.i18nKeywords) {
43
+ this.stdout.write((0, i18n_1.getKeywords)(options.i18nKeywords));
44
+ return {
45
+ shouldExitImmediately: true,
46
+ success: true
47
+ };
48
+ }
49
+ const enableDebug = debug_1.default.enabled('cucumber');
50
+ const environment = {
51
+ cwd: this.cwd,
52
+ stdout: this.stdout,
53
+ stderr: this.stderr,
54
+ env: this.env,
55
+ debug: enableDebug
56
+ };
57
+ const consoleLogger = new console_1.Console(environment.stdout, environment.stderr);
58
+ consoleLogger.info('Loading configuration and step definitions...\n');
59
+ const { useConfiguration: configuration, runConfiguration } = await (0, load_configuration_1.loadConfiguration)({
60
+ file: options.config,
61
+ profiles: options.profile,
62
+ provided: argvConfiguration
63
+ }, environment);
64
+ // get run options
65
+ const { cwd } = (0, environment_1.mergeEnvironment)(environment);
66
+ const newId = messages_1.IdGenerator.uuid();
67
+ const runOptions = runConfiguration;
68
+ const supportCoordinates = 'World' in runOptions.support ? runOptions.support.originalCoordinates : runOptions.support;
69
+ const logger = new console_logger_1.ConsoleLogger(environment.stderr, enableDebug);
70
+ const { requirePaths, importPaths } = await (0, paths_1.resolvePaths)(logger, cwd, runOptions.sources, supportCoordinates);
71
+ // Load the step and hook definitions
72
+ const supportCodeLibrary = 'World' in runOptions.support
73
+ ? runOptions.support
74
+ : await (0, support_1.getSupportCodeLibrary)({
75
+ cwd,
76
+ newId,
77
+ requirePaths,
78
+ importPaths,
79
+ requireModules: supportCoordinates.requireModules
80
+ });
81
+ // Set support to the updated step and hook definitions
82
+ // in the supportCodeLibrary. We also need to initialize originalCoordinates
83
+ // to support parallel execution.
84
+ runOptions.support = binding_registry_1.BindingRegistry.instance.updateSupportCodeLibrary(supportCodeLibrary);
85
+ runOptions.support = { ...runOptions.support, ...{ originalCoordinates: supportCoordinates } };
86
+ // now we can run cucumber
87
+ const { success } = await (0, run_cucumber_1.runCucumber)(runOptions, environment);
88
+ return {
89
+ shouldExitImmediately: configuration.forceExit,
90
+ success
91
+ };
92
+ }
93
+ }
94
+ exports.default = Cli;
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQWlEO0FBSWpELDJEQUF1RDtBQUN2RCw2REFBeUQ7QUFDekQsMERBQTRFO0FBQzVFLG9GQUErRTtBQUMvRSw0REFBZ0U7QUFDaEUsd0VBQTBFO0FBQzFFLGdFQUEyRTtBQUMzRSxtRUFBK0Q7QUFDL0QsZ0VBQXVDO0FBQ3ZDLGtEQUEwQjtBQUUxQiw4RUFBMEU7QUFDMUUscUNBQWtDO0FBT2xDLE1BQXFCLEdBQUc7SUFDTixJQUFJLENBQVc7SUFDZixHQUFHLENBQVM7SUFDWixNQUFNLENBQW1CO0lBQ3pCLE1BQU0sQ0FBbUI7SUFDekIsR0FBRyxDQUFvQjtJQUV4QyxZQUFZLEVBQ1gsSUFBSSxFQUNKLEdBQUcsRUFDSCxNQUFNLEVBQ04sTUFBTSxFQUNOLEdBQUcsRUFPSDtRQUNBLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFHO1FBQ1IsTUFBTSxJQUFBLG1DQUFlLEdBQUUsQ0FBQztRQUV4QixNQUFNLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxHQUFHLHFCQUFVLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRixJQUFJLE9BQU8sQ0FBQyxhQUFhLEVBQUU7WUFDekIsSUFBSSxDQUFDLE1BQWMsQ0FBQyxLQUFLLENBQUMsSUFBQSxtQkFBWSxHQUFFLENBQUMsQ0FBQztZQUMzQyxPQUFPO2dCQUNOLHFCQUFxQixF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
@@ -1,20 +1,20 @@
1
- import { IRunEnvironment, ILoadConfigurationOptions, IRunConfiguration } from '@cucumber/cucumber/lib/api/types';
2
- import { ITsflowConfiguration } from './argv-parser';
3
- export interface ITsflowResolvedConfiguration {
4
- /**
5
- * The final flat configuration object resolved from the configuration file/profiles plus any extra provided.
6
- */
7
- useConfiguration: ITsflowConfiguration;
8
- /**
9
- * The format that can be passed into `runCucumber`.
10
- */
11
- runConfiguration: IRunConfiguration;
12
- }
13
- /**
14
- * Load user-authored configuration to be used in a test run.
15
- *
16
- * @public
17
- * @param options - Coordinates required to find configuration.
18
- * @param environment - Project environment.
19
- */
20
- export declare const loadConfiguration: (options?: ILoadConfigurationOptions, environment?: IRunEnvironment) => Promise<ITsflowResolvedConfiguration>;
1
+ import { IRunEnvironment, ILoadConfigurationOptions, IRunConfiguration } from '@cucumber/cucumber/lib/api/types';
2
+ import { ITsflowConfiguration } from './argv-parser';
3
+ export interface ITsflowResolvedConfiguration {
4
+ /**
5
+ * The final flat configuration object resolved from the configuration file/profiles plus any extra provided.
6
+ */
7
+ useConfiguration: ITsflowConfiguration;
8
+ /**
9
+ * The format that can be passed into `runCucumber`.
10
+ */
11
+ runConfiguration: IRunConfiguration;
12
+ }
13
+ /**
14
+ * Load user-authored configuration to be used in a test run.
15
+ *
16
+ * @public
17
+ * @param options - Coordinates required to find configuration.
18
+ * @param environment - Project environment.
19
+ */
20
+ export declare const loadConfiguration: (options?: ILoadConfigurationOptions, environment?: IRunEnvironment) => Promise<ITsflowResolvedConfiguration>;
@@ -1,90 +1,101 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.loadConfiguration = void 0;
7
- const locate_file_1 = require("@cucumber/cucumber/lib/configuration/locate_file");
8
- const index_1 = require("@cucumber/cucumber/lib/configuration/index");
9
- const validate_configuration_1 = require("@cucumber/cucumber/lib/configuration/validate_configuration");
10
- const convert_configuration_1 = require("@cucumber/cucumber/lib/api/convert_configuration");
11
- const environment_1 = require("@cucumber/cucumber/lib/api/environment");
12
- const chalk_1 = __importDefault(require("chalk"));
13
- const helpers_1 = require("../utils/helpers");
14
- const gherkin_manager_1 = __importDefault(require("../gherkin/gherkin-manager"));
15
- const console_logger_1 = require("@cucumber/cucumber/lib/api/console_logger");
16
- /**
17
- * Load user-authored configuration to be used in a test run.
18
- *
19
- * @public
20
- * @param options - Coordinates required to find configuration.
21
- * @param environment - Project environment.
22
- */
23
- const loadConfiguration = async (options = {}, environment = {}) => {
24
- const { cwd, stderr, env, debug } = (0, environment_1.mergeEnvironment)(environment);
25
- const logger = new console_logger_1.ConsoleLogger(stderr, debug);
26
- const configFile = options.file ?? (0, locate_file_1.locateFile)(cwd);
27
- if (configFile) {
28
- logger.debug(`Configuration will be loaded from "${configFile}"`);
29
- }
30
- else {
31
- logger.debug('No configuration file found');
32
- }
33
- const profileConfiguration = configFile ? await (0, index_1.fromFile)(logger, cwd, configFile, options.profiles) : {};
34
- // if a feature was passed in on command line it's added
35
- // to the provided configuration as paths. We need to clear
36
- // any paths from configuration so that only the feature passed
37
- // in is executed.
38
- if (options.provided?.paths && options.provided.paths?.length > 0) {
39
- profileConfiguration.paths = [];
40
- }
41
- const original = (0, index_1.mergeConfigurations)(index_1.DEFAULT_CONFIGURATION, profileConfiguration, options.provided);
42
- switch (original.transpiler) {
43
- case 'esvue':
44
- original.requireModule.push('@lynxwall/cucumber-tsflow/lib/esvue');
45
- break;
46
- case 'tsvue':
47
- original.requireModule.push('@lynxwall/cucumber-tsflow/lib/tsvue');
48
- break;
49
- case 'tsnode':
50
- original.requireModule.push('@lynxwall/cucumber-tsflow/lib/tsnode');
51
- break;
52
- default:
53
- // defaulting to esbuild
54
- original.requireModule.push('@lynxwall/cucumber-tsflow/lib/esnode');
55
- break;
56
- }
57
- // set the snippet syntax
58
- if (!original.formatOptions.snippetSyntax) {
59
- original.formatOptions.snippetSyntax = '@lynxwall/cucumber-tsflow/lib/snippet.js';
60
- }
61
- // look for behave format
62
- const behaveIdx = original.format.findIndex(e => e.startsWith('behave:'));
63
- if (behaveIdx >= 0) {
64
- original.format[behaveIdx] = original.format[behaveIdx].replace('behave', '@lynxwall/cucumber-tsflow/lib/behave.js');
65
- }
66
- // check to see if a debugFile was passed in
67
- if ((0, helpers_1.hasStringValue)(original.debugFile)) {
68
- // Initialize gherkin manager with path to feature files
69
- const gherkin = new gherkin_manager_1.default();
70
- await gherkin.loadFeatures(original.paths);
71
- const features = gherkin.findFeaturesByStepFile(original.debugFile);
72
- if (features.length > 0) {
73
- original.paths = [];
74
- features.forEach(x => original.paths.push(x.featureFile));
75
- }
76
- else {
77
- // log a message if the feature path is not found
78
- logger.warn(chalk_1.default.yellow(`\nUnable to find feature for debugFile: ${original.debugFile}`));
79
- logger.warn(chalk_1.default.yellow('All tests will be executed\n'));
80
- }
81
- }
82
- (0, validate_configuration_1.validateConfiguration)(original);
83
- const runnable = await (0, convert_configuration_1.convertConfiguration)(original, env);
84
- return {
85
- useConfiguration: original,
86
- runConfiguration: runnable
87
- };
88
- };
89
- exports.loadConfiguration = loadConfiguration;
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1jb25maWd1cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9sb2FkLWNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0Esa0ZBQThFO0FBQzlFLHNFQUtvRDtBQUNwRCx3R0FBb0c7QUFDcEcsNEZBQXdGO0FBQ3hGLHdFQUEwRTtBQUUxRSxrREFBMEI7QUFDMUIsOENBQWtEO0FBQ2xELGlGQUF3RDtBQUV4RCw4RUFBMEU7QUFZMUU7Ozs7OztHQU1HO0FBQ0ksTUFBTSxpQkFBaUIsR0FBRyxLQUFLLEVBQ3JDLFVBQXFDLEVBQUUsRUFDdkMsY0FBK0IsRUFBRSxFQUNPLEVBQUU7SUFDMUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUEsOEJBQWdCLEVBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEUsTUFBTSxNQUFNLEdBQVksSUFBSSw4QkFBYSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUV6RCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLElBQUEsd0JBQVUsRUFBQyxHQUFHLENBQUMsQ0FBQztJQUNuRCxJQUFJLFVBQVUsRUFBRTtRQUNmLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0NBQXNDLFVBQVUsR0FBRyxDQUFDLENBQUM7S0FDbEU7U0FBTTtRQUNOLE1BQU0sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztLQUM1QztJQUNELE1BQU0sb0JBQW9CLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUEsZ0JBQVEsRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUV6Ryx3REFBd0Q7SUFDeEQsMkRBQTJEO0lBQzNELCtEQUErRDtJQUMvRCxrQkFBa0I7SUFDbEIsSUFB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
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.loadConfiguration = void 0;
7
+ const locate_file_1 = require("@cucumber/cucumber/lib/configuration/locate_file");
8
+ const index_1 = require("@cucumber/cucumber/lib/configuration/index");
9
+ const validate_configuration_1 = require("@cucumber/cucumber/lib/configuration/validate_configuration");
10
+ const convert_configuration_1 = require("@cucumber/cucumber/lib/api/convert_configuration");
11
+ const environment_1 = require("@cucumber/cucumber/lib/api/environment");
12
+ const chalk_1 = __importDefault(require("chalk"));
13
+ const helpers_1 = require("../utils/helpers");
14
+ const gherkin_manager_1 = __importDefault(require("../gherkin/gherkin-manager"));
15
+ const console_logger_1 = require("@cucumber/cucumber/lib/api/console_logger");
16
+ /**
17
+ * Load user-authored configuration to be used in a test run.
18
+ *
19
+ * @public
20
+ * @param options - Coordinates required to find configuration.
21
+ * @param environment - Project environment.
22
+ */
23
+ const loadConfiguration = async (options = {}, environment = {}) => {
24
+ const { cwd, stderr, env, debug } = (0, environment_1.mergeEnvironment)(environment);
25
+ const logger = new console_logger_1.ConsoleLogger(stderr, debug);
26
+ const configFile = options.file ?? (0, locate_file_1.locateFile)(cwd);
27
+ if (configFile) {
28
+ logger.debug(`Configuration will be loaded from "${configFile}"`);
29
+ }
30
+ else {
31
+ logger.debug('No configuration file found');
32
+ }
33
+ const profileConfiguration = configFile ? await (0, index_1.fromFile)(logger, cwd, configFile, options.profiles) : {};
34
+ // if a feature was passed in on command line it's added
35
+ // to the provided configuration as paths. We need to clear
36
+ // any paths from configuration so that only the feature passed
37
+ // in is executed.
38
+ if (options.provided?.paths && options.provided.paths?.length > 0) {
39
+ profileConfiguration.paths = [];
40
+ }
41
+ const original = (0, index_1.mergeConfigurations)(index_1.DEFAULT_CONFIGURATION, profileConfiguration, options.provided);
42
+ switch (original.transpiler) {
43
+ case 'esvue':
44
+ original.requireModule.push('@lynxwall/cucumber-tsflow/lib/esvue');
45
+ break;
46
+ case 'tsvue':
47
+ original.requireModule.push('@lynxwall/cucumber-tsflow/lib/tsvue');
48
+ break;
49
+ case 'tsnode':
50
+ original.requireModule.push('@lynxwall/cucumber-tsflow/lib/tsnode');
51
+ break;
52
+ default:
53
+ // defaulting to esbuild
54
+ original.requireModule.push('@lynxwall/cucumber-tsflow/lib/esnode');
55
+ break;
56
+ }
57
+ // set the snippet syntax
58
+ if (!original.formatOptions.snippetSyntax) {
59
+ original.formatOptions.snippetSyntax = '@lynxwall/cucumber-tsflow/lib/snippet.js';
60
+ }
61
+ // look for behave format
62
+ for (let idx = 0; idx < original.format.length; idx++) {
63
+ if (typeof original.format[idx] === 'string') {
64
+ const formatItem = original.format[idx];
65
+ if (formatItem.startsWith('behave:')) {
66
+ original.format[idx] = formatItem.replace('behave', '@lynxwall/cucumber-tsflow/lib/behave.js');
67
+ }
68
+ }
69
+ else if (original.format[idx].length > 0) {
70
+ const formatItem = original.format[idx][0];
71
+ if (formatItem.startsWith('behave')) {
72
+ const newVal = formatItem.replace('behave', '@lynxwall/cucumber-tsflow/lib/behave.js');
73
+ original.format[idx] = original.format[idx].length > 1 ? [newVal, original.format[idx][1]] : [newVal];
74
+ }
75
+ }
76
+ }
77
+ // check to see if a debugFile was passed in
78
+ if ((0, helpers_1.hasStringValue)(original.debugFile)) {
79
+ // Initialize gherkin manager with path to feature files
80
+ const gherkin = new gherkin_manager_1.default();
81
+ await gherkin.loadFeatures(original.paths);
82
+ const features = gherkin.findFeaturesByStepFile(original.debugFile);
83
+ if (features.length > 0) {
84
+ original.paths = [];
85
+ features.forEach(x => original.paths.push(x.featureFile));
86
+ }
87
+ else {
88
+ // log a message if the feature path is not found
89
+ logger.warn(chalk_1.default.yellow(`\nUnable to find feature for debugFile: ${original.debugFile}`));
90
+ logger.warn(chalk_1.default.yellow('All tests will be executed\n'));
91
+ }
92
+ }
93
+ (0, validate_configuration_1.validateConfiguration)(original, logger);
94
+ const runnable = await (0, convert_configuration_1.convertConfiguration)(logger, original, env);
95
+ return {
96
+ useConfiguration: original,
97
+ runConfiguration: runnable
98
+ };
99
+ };
100
+ exports.loadConfiguration = loadConfiguration;
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1jb25maWd1cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9sb2FkLWNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0Esa0ZBQThFO0FBQzlFLHNFQUtvRDtBQUNwRCx3R0FBb0c7QUFDcEcsNEZBQXdGO0FBQ3hGLHdFQUEwRTtBQUUxRSxrREFBMEI7QUFDMUIsOENBQWtEO0FBQ2xELGlGQUF3RDtBQUV4RCw4RUFBMEU7QUFZMUU7Ozs7OztHQU1HO0FBQ0ksTUFBTSxpQkFBaUIsR0FBRyxLQUFLLEVBQ3JDLFVBQXFDLEVBQUUsRUFDdkMsY0FBK0IsRUFBRSxFQUNPLEVBQUU7SUFDMUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUEsOEJBQWdCLEVBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEUsTUFBTSxNQUFNLEdBQVksSUFBSSw4QkFBYSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUV6RCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLElBQUEsd0JBQVUsRUFBQyxHQUFHLENBQUMsQ0FBQztJQUNuRCxJQUFJLFVBQVUsRUFBRTtRQUNmLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0NBQXNDLFVBQVUsR0FBRyxDQUFDLENBQUM7S0FDbEU7U0FBTTtRQUNOLE1BQU0sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztLQUM1QztJQUNELE1BQU0sb0JBQW9CLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUEsZ0JBQVEsRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUV6Ryx3REFBd0Q7SUFDeEQsMkRBQTJEO0lBQzNELCtEQUErRDtJQUMvRCxrQkFBa0I7SUFDbEIsSUFB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
package/lib/cli/run.d.ts CHANGED
@@ -1 +1 @@
1
- export default function run(): Promise<void>;
1
+ export default function run(): Promise<void>;
package/lib/cli/run.js CHANGED
@@ -1,47 +1,49 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- /* eslint-disable no-console */
7
- /* This is one rare place where we're fine to use process/console directly,
8
- * but other code abstracts those to remain composable and testable. */
9
- const _1 = __importDefault(require("./"));
10
- const verror_1 = __importDefault(require("verror"));
11
- const validate_node_engine_version_1 = require("@cucumber/cucumber/lib/cli/validate_node_engine_version");
12
- function logErrorMessageAndExit(message) {
13
- console.error(message);
14
- process.exit(1);
15
- }
16
- async function run() {
17
- (0, validate_node_engine_version_1.validateNodeEngineVersion)(process.version, (error) => {
18
- console.error(error);
19
- process.exit(1);
20
- }, console.warn);
21
- const cli = new _1.default({
22
- argv: process.argv,
23
- cwd: process.cwd(),
24
- stdout: process.stdout,
25
- stderr: process.stderr,
26
- env: process.env
27
- });
28
- let result;
29
- try {
30
- result = await cli.run();
31
- }
32
- catch (error) {
33
- logErrorMessageAndExit(verror_1.default.fullStack(error));
34
- }
35
- let exitCode = result.success ? 0 : 1;
36
- if (!result.success && global.messageCollector.hasFailures()) {
37
- exitCode = 2;
38
- }
39
- if (result.shouldExitImmediately) {
40
- process.exit(exitCode);
41
- }
42
- else {
43
- process.exitCode = exitCode;
44
- }
45
- }
46
- exports.default = run;
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9ydW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBK0I7QUFDL0I7dUVBQ3VFO0FBQ3ZFLDBDQUF3QztBQUN4QyxvREFBNEI7QUFDNUIsMEdBQW9HO0FBRXBHLFNBQVMsc0JBQXNCLENBQUMsT0FBZTtJQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakIsQ0FBQztBQUVjLEtBQUssVUFBVSxHQUFHO0lBQ2hDLElBQUEsd0RBQXlCLEVBQ3hCLE9BQU8sQ0FBQyxPQUFPLEVBQ2YsQ0FBQyxLQUFVLEVBQUUsRUFBRTtRQUNkLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQixDQUFDLEVBQ0QsT0FBTyxDQUFDLElBQUksQ0FDWixDQUFDO0lBRUYsTUFBTSxHQUFHLEdBQUcsSUFBSSxVQUFHLENBQUM7UUFDbkIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1FBQ2xCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFO1FBQ2xCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07UUFDdEIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO0tBQ2hCLENBQUMsQ0FBQztJQUVILElBQUksTUFBc0IsQ0FBQztJQUMzQixJQUFJO1FBQ0gsTUFBTSxHQUFHLE1BQU0sR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO0tBQ3pCO0lBQUMsT0FBTyxLQUFVLEVBQUU7UUFDcEIsc0JBQXNCLENBQUMsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztLQUNoRDtJQUVELElBQUksUUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsRUFBRTtRQUM3RCxRQUFRLEdBQUcsQ0FBQyxDQUFDO0tBQ2I7SUFFRCxJQUFJLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRTtRQUNqQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBQ3ZCO1NBQU07UUFDTixPQUFPLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztLQUM1QjtBQUNGLENBQUM7QUFuQ0Qsc0JBbUNDIn0=
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /* eslint-disable no-console */
7
+ /* This is one rare place where we're fine to use process/console directly,
8
+ * but other code abstracts those to remain composable and testable. */
9
+ const _1 = __importDefault(require("./"));
10
+ const verror_1 = __importDefault(require("verror"));
11
+ const validate_node_engine_version_1 = require("@cucumber/cucumber/lib/cli/validate_node_engine_version");
12
+ function logErrorMessageAndExit(message) {
13
+ console.error(message);
14
+ process.exit(1);
15
+ }
16
+ async function run() {
17
+ (0, validate_node_engine_version_1.validateNodeEngineVersion)(process.version, (error) => {
18
+ console.error(error);
19
+ process.exit(1);
20
+ }, console.warn);
21
+ const cli = new _1.default({
22
+ argv: process.argv,
23
+ cwd: process.cwd(),
24
+ stdout: process.stdout,
25
+ stderr: process.stderr,
26
+ env: process.env
27
+ });
28
+ let result;
29
+ try {
30
+ result = await cli.run();
31
+ }
32
+ catch (error) {
33
+ logErrorMessageAndExit(verror_1.default.fullStack(error));
34
+ }
35
+ // 0 = success, 2 = failed or has pending, undefined or unknown steps
36
+ let exitCode = result.success ? 0 : 2;
37
+ if (!result.success && global.messageCollector.hasFailures()) {
38
+ // 3 = implemented tests have failed
39
+ exitCode = 3;
40
+ }
41
+ if (result.shouldExitImmediately) {
42
+ process.exit(exitCode);
43
+ }
44
+ else {
45
+ process.exitCode = exitCode;
46
+ }
47
+ }
48
+ exports.default = run;
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9ydW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBK0I7QUFDL0I7dUVBQ3VFO0FBQ3ZFLDBDQUF3QztBQUN4QyxvREFBNEI7QUFDNUIsMEdBQW9HO0FBRXBHLFNBQVMsc0JBQXNCLENBQUMsT0FBZTtJQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakIsQ0FBQztBQUVjLEtBQUssVUFBVSxHQUFHO0lBQ2hDLElBQUEsd0RBQXlCLEVBQ3hCLE9BQU8sQ0FBQyxPQUFPLEVBQ2YsQ0FBQyxLQUFVLEVBQUUsRUFBRTtRQUNkLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQixDQUFDLEVBQ0QsT0FBTyxDQUFDLElBQUksQ0FDWixDQUFDO0lBRUYsTUFBTSxHQUFHLEdBQUcsSUFBSSxVQUFHLENBQUM7UUFDbkIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1FBQ2xCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFO1FBQ2xCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07UUFDdEIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO0tBQ2hCLENBQUMsQ0FBQztJQUVILElBQUksTUFBc0IsQ0FBQztJQUMzQixJQUFJO1FBQ0gsTUFBTSxHQUFHLE1BQU0sR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO0tBQ3pCO0lBQUMsT0FBTyxLQUFVLEVBQUU7UUFDcEIsc0JBQXNCLENBQUMsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztLQUNoRDtJQUVELHFFQUFxRTtJQUNyRSxJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLEVBQUU7UUFDN0Qsb0NBQW9DO1FBQ3BDLFFBQVEsR0FBRyxDQUFDLENBQUM7S0FDYjtJQUVELElBQUksTUFBTSxDQUFDLHFCQUFxQixFQUFFO1FBQ2pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDdkI7U0FBTTtRQUNOLE9BQU8sQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0tBQzVCO0FBQ0YsQ0FBQztBQXJDRCxzQkFxQ0MifQ==
@@ -1,10 +1,10 @@
1
- import { ContextType, TypeDecorator } from '../types/types';
2
- /**
3
- * A class decorator that marks the associated class as a CucumberJS binding.
4
- *
5
- * @param requiredContextTypes An optional array of Types that will be created and passed into the created
6
- * object for each scenario.
7
- *
8
- * An instance of the decorated class will be created for each scenario.
9
- */
10
- export declare function binding(requiredContextTypes?: ContextType[]): TypeDecorator;
1
+ import { ContextType, TypeDecorator } from '../types/types';
2
+ /**
3
+ * A class decorator that marks the associated class as a CucumberJS binding.
4
+ *
5
+ * @param requiredContextTypes An optional array of Types that will be created and passed into the created
6
+ * object for each scenario.
7
+ *
8
+ * An instance of the decorated class will be created for each scenario.
9
+ */
10
+ export declare function binding(requiredContextTypes?: ContextType[]): TypeDecorator;