@cucumber/cucumber 7.0.0-rc.0 → 7.0.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 (36) hide show
  1. package/CHANGELOG.md +40 -3
  2. package/README.md +2 -2
  3. package/lib/cli/argv_parser.js +1 -0
  4. package/lib/cli/argv_parser.js.map +1 -1
  5. package/lib/cli/helpers.js +2 -2
  6. package/lib/cli/helpers.js.map +1 -1
  7. package/lib/cli/index.js +7 -4
  8. package/lib/cli/index.js.map +1 -1
  9. package/lib/formatter/builder.d.ts +2 -1
  10. package/lib/formatter/builder.js +5 -2
  11. package/lib/formatter/builder.js.map +1 -1
  12. package/lib/formatter/html_formatter.d.ts +6 -0
  13. package/lib/formatter/html_formatter.js +33 -0
  14. package/lib/formatter/html_formatter.js.map +1 -0
  15. package/lib/formatter/index.d.ts +4 -0
  16. package/lib/formatter/index.js +4 -0
  17. package/lib/formatter/index.js.map +1 -1
  18. package/lib/index.d.ts +2 -0
  19. package/lib/index.js +4 -2
  20. package/lib/index.js.map +1 -1
  21. package/lib/models/test_step_hook_definition.d.ts +9 -0
  22. package/lib/models/test_step_hook_definition.js +26 -0
  23. package/lib/models/test_step_hook_definition.js.map +1 -0
  24. package/lib/runtime/index.js +2 -2
  25. package/lib/runtime/index.js.map +1 -1
  26. package/lib/runtime/pickle_runner.d.ts +8 -3
  27. package/lib/runtime/pickle_runner.js +54 -48
  28. package/lib/runtime/pickle_runner.js.map +1 -1
  29. package/lib/support_code_library_builder/index.d.ts +12 -1
  30. package/lib/support_code_library_builder/index.js +46 -0
  31. package/lib/support_code_library_builder/index.js.map +1 -1
  32. package/lib/support_code_library_builder/types.d.ts +19 -0
  33. package/lib/support_code_library_builder/validate_arguments.js +12 -0
  34. package/lib/support_code_library_builder/validate_arguments.js.map +1 -1
  35. package/package.json +47 -51
  36. package/dist/cucumber.js +0 -80053
@@ -1,34 +1,16 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
22
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
4
  };
24
5
  Object.defineProperty(exports, "__esModule", { value: true });
25
- const lodash_1 = __importStar(require("lodash"));
6
+ const lodash_1 = require("lodash");
26
7
  const helpers_1 = require("./helpers");
27
8
  const attachment_manager_1 = __importDefault(require("./attachment_manager"));
28
9
  const step_runner_1 = __importDefault(require("./step_runner"));
29
10
  const messages_1 = require("@cucumber/messages");
30
11
  const time_1 = require("../time");
31
12
  const value_checker_1 = require("../value_checker");
13
+ const query_1 = require("@cucumber/query");
32
14
  const { Status } = messages_1.messages.TestStepFinished.TestStepResult;
33
15
  class PickleRunner {
34
16
  constructor({ eventBroadcaster, stopwatch, gherkinDocument, newId, pickle, retries = 0, skip, supportCodeLibrary, worldParameters, }) {
@@ -65,10 +47,7 @@ class PickleRunner {
65
47
  log: this.attachmentManager.log.bind(this.attachmentManager),
66
48
  parameters: this.worldParameters,
67
49
  });
68
- this.result = messages_1.messages.TestStepFinished.TestStepResult.fromObject({
69
- duration: time_1.getZeroDuration(),
70
- status: this.skip ? Status.SKIPPED : Status.PASSED,
71
- });
50
+ this.testStepResults = [];
72
51
  }
73
52
  buildTestSteps() {
74
53
  const testSteps = [];
@@ -148,9 +127,25 @@ class PickleRunner {
148
127
  getBeforeHookDefinitions() {
149
128
  return this.supportCodeLibrary.beforeTestCaseHookDefinitions.filter((hookDefinition) => hookDefinition.appliesToTestCase(this.pickle));
150
129
  }
130
+ getBeforeStepHookDefinitions() {
131
+ return this.supportCodeLibrary.beforeTestStepHookDefinitions.filter((hookDefinition) => hookDefinition.appliesToTestCase(this.pickle));
132
+ }
133
+ getAfterStepHookDefinitions() {
134
+ return lodash_1.clone(this.supportCodeLibrary.afterTestStepHookDefinitions)
135
+ .reverse()
136
+ .filter((hookDefinition) => hookDefinition.appliesToTestCase(this.pickle));
137
+ }
151
138
  getStepDefinitions(pickleStep) {
152
139
  return this.supportCodeLibrary.stepDefinitions.filter((stepDefinition) => stepDefinition.matchesStepName(pickleStep.text));
153
140
  }
141
+ getWorstStepResult() {
142
+ if (this.testStepResults.length === 0) {
143
+ return messages_1.messages.TestStepFinished.TestStepResult.fromObject({
144
+ status: this.skip ? Status.SKIPPED : Status.PASSED,
145
+ });
146
+ }
147
+ return new query_1.Query().getWorstTestStepResult(this.testStepResults);
148
+ }
154
149
  async invokeStep(step, stepDefinition, hookParameter) {
155
150
  return await step_runner_1.default.run({
156
151
  defaultTimeout: this.supportCodeLibrary.defaultTimeout,
@@ -161,21 +156,11 @@ class PickleRunner {
161
156
  });
162
157
  }
163
158
  isSkippingSteps() {
164
- return this.result.status !== Status.PASSED;
159
+ return this.getWorstStepResult().status !== Status.PASSED;
165
160
  }
166
161
  shouldSkipHook(isBeforeHook) {
167
162
  return this.skip || (this.isSkippingSteps() && isBeforeHook);
168
163
  }
169
- shouldUpdateStatus(testStepResult) {
170
- switch (testStepResult.status) {
171
- case Status.UNDEFINED:
172
- case Status.FAILED:
173
- case Status.AMBIGUOUS:
174
- return !lodash_1.default.some([Status.FAILED, Status.AMBIGUOUS, Status.UNDEFINED], this.result.status);
175
- default:
176
- return this.result.status === Status.PASSED;
177
- }
178
- }
179
164
  async aroundTestStep(testStepId, attempt, runStepFn) {
180
165
  this.eventBroadcaster.emit('envelope', messages_1.messages.Envelope.fromObject({
181
166
  testStepStarted: {
@@ -187,21 +172,14 @@ class PickleRunner {
187
172
  this.currentTestStepId = testStepId;
188
173
  const testStepResult = await runStepFn();
189
174
  this.currentTestStepId = null;
190
- this.result.duration = time_1.addDurations(this.result.duration, testStepResult.duration);
191
- if (this.shouldUpdateStatus(testStepResult)) {
192
- this.result.status = testStepResult.status;
193
- }
194
- if (this.result.status === Status.FAILED &&
175
+ this.testStepResults.push(testStepResult);
176
+ if (testStepResult.status === Status.FAILED &&
195
177
  attempt + 1 < this.maxAttempts) {
196
178
  /*
197
179
  TODO dont rely on `testStepResult.willBeRetried`, it will be moved or removed
198
180
  see https://github.com/cucumber/cucumber/issues/902
199
181
  */
200
182
  testStepResult.willBeRetried = true;
201
- this.result.willBeRetried = true;
202
- }
203
- if (testStepResult.message !== '') {
204
- this.result.message = testStepResult.message;
205
183
  }
206
184
  this.eventBroadcaster.emit('envelope', messages_1.messages.Envelope.fromObject({
207
185
  testStepFinished: {
@@ -233,7 +211,7 @@ class PickleRunner {
233
211
  testCaseStartedId: this.currentTestCaseStartedId,
234
212
  };
235
213
  if (!testStep.isBeforeHook) {
236
- hookParameter.result = this.result;
214
+ hookParameter.result = this.getWorstStepResult();
237
215
  }
238
216
  return await this.runHook(testStep.hookDefinition, hookParameter, testStep.isBeforeHook);
239
217
  }
@@ -248,12 +226,12 @@ class PickleRunner {
248
226
  timestamp: this.stopwatch.timestamp(),
249
227
  },
250
228
  }));
251
- if (!this.result.willBeRetried) {
229
+ if (!this.getWorstStepResult().willBeRetried) {
252
230
  break;
253
231
  }
254
232
  this.resetTestProgressData();
255
233
  }
256
- return this.result;
234
+ return this.getWorstStepResult().status;
257
235
  }
258
236
  async runHook(hookDefinition, hookParameter, isBeforeHook) {
259
237
  if (this.shouldSkipHook(isBeforeHook)) {
@@ -263,6 +241,20 @@ class PickleRunner {
263
241
  }
264
242
  return await this.invokeStep(null, hookDefinition, hookParameter);
265
243
  }
244
+ async runStepHooks(stepHooks, stepResult) {
245
+ const stepHooksResult = [];
246
+ const hookParameter = {
247
+ gherkinDocument: this.gherkinDocument,
248
+ pickle: this.pickle,
249
+ testCaseStartedId: this.currentTestCaseStartedId,
250
+ testStepId: this.currentTestStepId,
251
+ result: stepResult,
252
+ };
253
+ for (const stepHookDefinition of stepHooks) {
254
+ stepHooksResult.push(await this.invokeStep(null, stepHookDefinition, hookParameter));
255
+ }
256
+ return stepHooksResult;
257
+ }
266
258
  async runStep(testStep) {
267
259
  if (testStep.stepDefinitions.length === 0) {
268
260
  return messages_1.messages.TestStepFinished.TestStepResult.fromObject({
@@ -292,7 +284,21 @@ class PickleRunner {
292
284
  },
293
285
  });
294
286
  }
295
- return await this.invokeStep(testStep.pickleStep, testStep.stepDefinitions[0]);
287
+ let stepResult;
288
+ let stepResults = await this.runStepHooks(this.getBeforeStepHookDefinitions(), stepResult);
289
+ if (new query_1.Query().getWorstTestStepResult(stepResults).status !== Status.FAILED) {
290
+ stepResult = await this.invokeStep(testStep.pickleStep, testStep.stepDefinitions[0]);
291
+ stepResults.push(stepResult);
292
+ }
293
+ const afterStepHookResults = await this.runStepHooks(this.getAfterStepHookDefinitions(), stepResult);
294
+ stepResults = stepResults.concat(afterStepHookResults);
295
+ const finalStepResult = new query_1.Query().getWorstTestStepResult(stepResults);
296
+ let finalDuration = time_1.getZeroDuration();
297
+ for (const result of stepResults) {
298
+ finalDuration = time_1.addDurations(finalDuration, result.duration);
299
+ }
300
+ finalStepResult.duration = finalDuration;
301
+ return finalStepResult;
296
302
  }
297
303
  }
298
304
  exports.default = PickleRunner;
@@ -1 +1 @@
1
- {"version":3,"file":"pickle_runner.js","sourceRoot":"","sources":["../../src/runtime/pickle_runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pickle_runner.js","sourceRoot":"","sources":["../../src/runtime/pickle_runner.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,21 @@
1
1
  import { IdGenerator, messages } from '@cucumber/messages';
2
2
  import TestCaseHookDefinition from '../models/test_case_hook_definition';
3
+ import TestStepHookDefinition from '../models/test_step_hook_definition';
3
4
  import TestRunHookDefinition from '../models/test_run_hook_definition';
4
5
  import StepDefinition from '../models/step_definition';
5
- import { DefineStepPattern, IDefineStepOptions, IDefineSupportCodeMethods, IDefineTestCaseHookOptions, IDefineTestRunHookOptions, IParameterTypeDefinition, ISupportCodeLibrary, TestCaseHookFunction } from './types';
6
+ import { DefineStepPattern, IDefineStepOptions, IDefineSupportCodeMethods, IDefineTestCaseHookOptions, IDefineTestStepHookOptions, IDefineTestRunHookOptions, IParameterTypeDefinition, ISupportCodeLibrary, TestCaseHookFunction, TestStepHookFunction } from './types';
6
7
  interface ITestCaseHookDefinitionConfig {
7
8
  code: any;
8
9
  line: number;
9
10
  options: any;
10
11
  uri: string;
11
12
  }
13
+ interface ITestStepHookDefinitionConfig {
14
+ code: any;
15
+ line: number;
16
+ options: any;
17
+ uri: string;
18
+ }
12
19
  interface ITestRunHookDefinitionConfig {
13
20
  code: any;
14
21
  line: number;
@@ -20,8 +27,10 @@ export declare class SupportCodeLibraryBuilder {
20
27
  readonly methods: IDefineSupportCodeMethods;
21
28
  private afterTestCaseHookDefinitionConfigs;
22
29
  private afterTestRunHookDefinitionConfigs;
30
+ private afterTestStepHookDefinitionConfigs;
23
31
  private beforeTestCaseHookDefinitionConfigs;
24
32
  private beforeTestRunHookDefinitionConfigs;
33
+ private beforeTestStepHookDefinitionConfigs;
25
34
  private cwd;
26
35
  private defaultTimeout;
27
36
  private definitionFunctionWrapper;
@@ -33,12 +42,14 @@ export declare class SupportCodeLibraryBuilder {
33
42
  defineParameterType(options: IParameterTypeDefinition<any>): void;
34
43
  defineStep(pattern: DefineStepPattern, options: IDefineStepOptions | Function, code?: Function): void;
35
44
  defineTestCaseHook(getCollection: () => ITestCaseHookDefinitionConfig[]): (options: string | IDefineTestCaseHookOptions | TestCaseHookFunction, code?: TestCaseHookFunction) => void;
45
+ defineTestStepHook(getCollection: () => ITestStepHookDefinitionConfig[]): (options: string | IDefineTestStepHookOptions | TestStepHookFunction, code?: TestStepHookFunction) => void;
36
46
  defineTestRunHook(getCollection: () => ITestRunHookDefinitionConfig[]): (options: IDefineTestRunHookOptions | Function, code?: Function) => void;
37
47
  wrapCode({ code, wrapperOptions, }: {
38
48
  code: Function;
39
49
  wrapperOptions: any;
40
50
  }): Function;
41
51
  buildTestCaseHookDefinitions(configs: ITestCaseHookDefinitionConfig[]): TestCaseHookDefinition[];
52
+ buildTestStepHookDefinitions(configs: ITestStepHookDefinitionConfig[]): TestStepHookDefinition[];
42
53
  buildTestRunHookDefinitions(configs: ITestRunHookDefinitionConfig[]): TestRunHookDefinition[];
43
54
  buildStepDefinitions(): {
44
55
  stepDefinitions: StepDefinition[];
@@ -7,6 +7,7 @@ exports.SupportCodeLibraryBuilder = exports.builtinParameterTypes = void 0;
7
7
  const lodash_1 = __importDefault(require("lodash"));
8
8
  const build_helpers_1 = require("./build_helpers");
9
9
  const test_case_hook_definition_1 = __importDefault(require("../models/test_case_hook_definition"));
10
+ const test_step_hook_definition_1 = __importDefault(require("../models/test_step_hook_definition"));
10
11
  const test_run_hook_definition_1 = __importDefault(require("../models/test_run_hook_definition"));
11
12
  const step_definition_1 = __importDefault(require("../models/step_definition"));
12
13
  const helpers_1 = require("../formatter/helpers");
@@ -23,8 +24,10 @@ class SupportCodeLibraryBuilder {
23
24
  this.methods = {
24
25
  After: this.defineTestCaseHook(() => this.afterTestCaseHookDefinitionConfigs),
25
26
  AfterAll: this.defineTestRunHook(() => this.afterTestRunHookDefinitionConfigs),
27
+ AfterStep: this.defineTestStepHook(() => this.afterTestStepHookDefinitionConfigs),
26
28
  Before: this.defineTestCaseHook(() => this.beforeTestCaseHookDefinitionConfigs),
27
29
  BeforeAll: this.defineTestRunHook(() => this.beforeTestRunHookDefinitionConfigs),
30
+ BeforeStep: this.defineTestStepHook(() => this.beforeTestStepHookDefinitionConfigs),
28
31
  defineParameterType: this.defineParameterType.bind(this),
29
32
  defineStep,
30
33
  Given: defineStep,
@@ -87,6 +90,29 @@ class SupportCodeLibraryBuilder {
87
90
  });
88
91
  };
89
92
  }
93
+ defineTestStepHook(getCollection) {
94
+ return (options, code) => {
95
+ if (typeof options === 'string') {
96
+ options = { tags: options };
97
+ }
98
+ else if (typeof options === 'function') {
99
+ code = options;
100
+ options = {};
101
+ }
102
+ const { line, uri } = build_helpers_1.getDefinitionLineAndUri(this.cwd);
103
+ validate_arguments_1.default({
104
+ args: { code, options },
105
+ fnName: 'defineTestStepHook',
106
+ location: helpers_1.formatLocation({ line, uri }),
107
+ });
108
+ getCollection().push({
109
+ code,
110
+ line,
111
+ options,
112
+ uri,
113
+ });
114
+ };
115
+ }
90
116
  defineTestRunHook(getCollection) {
91
117
  return (options, code) => {
92
118
  if (typeof options === 'function') {
@@ -134,6 +160,22 @@ class SupportCodeLibraryBuilder {
134
160
  });
135
161
  });
136
162
  }
163
+ buildTestStepHookDefinitions(configs) {
164
+ return configs.map(({ code, line, options, uri }) => {
165
+ const wrappedCode = this.wrapCode({
166
+ code,
167
+ wrapperOptions: options.wrapperOptions,
168
+ });
169
+ return new test_step_hook_definition_1.default({
170
+ code: wrappedCode,
171
+ id: this.newId(),
172
+ line,
173
+ options,
174
+ unwrappedCode: code,
175
+ uri,
176
+ });
177
+ });
178
+ }
137
179
  buildTestRunHookDefinitions(configs) {
138
180
  return configs.map(({ code, line, options, uri }) => {
139
181
  const wrappedCode = this.wrapCode({
@@ -207,8 +249,10 @@ class SupportCodeLibraryBuilder {
207
249
  return {
208
250
  afterTestCaseHookDefinitions: this.buildTestCaseHookDefinitions(this.afterTestCaseHookDefinitionConfigs),
209
251
  afterTestRunHookDefinitions: this.buildTestRunHookDefinitions(this.afterTestRunHookDefinitionConfigs),
252
+ afterTestStepHookDefinitions: this.buildTestStepHookDefinitions(this.afterTestStepHookDefinitionConfigs),
210
253
  beforeTestCaseHookDefinitions: this.buildTestCaseHookDefinitions(this.beforeTestCaseHookDefinitionConfigs),
211
254
  beforeTestRunHookDefinitions: this.buildTestRunHookDefinitions(this.beforeTestRunHookDefinitionConfigs),
255
+ beforeTestStepHookDefinitions: this.buildTestStepHookDefinitions(this.beforeTestStepHookDefinitionConfigs),
212
256
  defaultTimeout: this.defaultTimeout,
213
257
  parameterTypeRegistry: this.parameterTypeRegistry,
214
258
  undefinedParameterTypes: stepDefinitionsResult.undefinedParameterTypes,
@@ -221,8 +265,10 @@ class SupportCodeLibraryBuilder {
221
265
  this.newId = newId;
222
266
  this.afterTestCaseHookDefinitionConfigs = [];
223
267
  this.afterTestRunHookDefinitionConfigs = [];
268
+ this.afterTestStepHookDefinitionConfigs = [];
224
269
  this.beforeTestCaseHookDefinitionConfigs = [];
225
270
  this.beforeTestRunHookDefinitionConfigs = [];
271
+ this.beforeTestStepHookDefinitionConfigs = [];
226
272
  this.definitionFunctionWrapper = null;
227
273
  this.defaultTimeout = 5000;
228
274
  this.parameterTypeRegistry = new cucumber_expressions_1.ParameterTypeRegistry();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/support_code_library_builder/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/support_code_library_builder/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAsB;AACtB,mDAA6E;AAE7E,oGAAwE;AACxE,oGAAwE;AACxE,kGAAsE;AACtE,gFAAsD;AACtD,kDAAqD;AACrD,8EAAoD;AACpD,4DAA8B;AAE9B,yEAIuC;AACvC,oDAAkE;AAClE,yDAAiE;AAajE,oDAA2B;AA+Bd,QAAA,qBAAqB,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;AAE3E,MAAa,yBAAyB;IAiBpC;QACE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7C,IAAI,CAAC,OAAO,GAAG;YACb,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAC5B,GAAG,EAAE,CAAC,IAAI,CAAC,kCAAkC,CAC9C;YACD,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAC9B,GAAG,EAAE,CAAC,IAAI,CAAC,iCAAiC,CAC7C;YACD,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAChC,GAAG,EAAE,CAAC,IAAI,CAAC,kCAAkC,CAC9C;YACD,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAC7B,GAAG,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAC/C;YACD,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAC/B,GAAG,EAAE,CAAC,IAAI,CAAC,kCAAkC,CAC9C;YACD,UAAU,EAAE,IAAI,CAAC,kBAAkB,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAC/C;YACD,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;YACxD,UAAU;YACV,KAAK,EAAE,UAAU;YACjB,iBAAiB,EAAE,CAAC,YAAY,EAAE,EAAE;gBAClC,IAAI,CAAC,cAAc,GAAG,YAAY,CAAA;YACpC,CAAC;YACD,4BAA4B,EAAE,CAAC,EAAE,EAAE,EAAE;gBACnC,IAAI,CAAC,yBAAyB,GAAG,EAAE,CAAA;YACrC,CAAC;YACD,mBAAmB,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;YACjB,CAAC;YACD,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,UAAU;SACjB,CAAA;IACH,CAAC;IAED,mBAAmB,CAAC,OAAsC;QACxD,MAAM,aAAa,GAAG,kCAAkB,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAA;IAC/D,CAAC;IAED,UAAU,CACR,OAA0B,EAC1B,OAAsC,EACtC,IAAe;QAEf,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YACjC,IAAI,GAAG,OAAO,CAAA;YACd,OAAO,GAAG,EAAE,CAAA;SACb;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,uCAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACvD,4BAAiB,CAAC;YAChB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE;YAChC,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,wBAAc,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;SACxC,CAAC,CAAA;QACF,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;YAC9B,IAAI;YACJ,IAAI;YACJ,OAAO;YACP,OAAO;YACP,GAAG;SACJ,CAAC,CAAA;IACJ,CAAC;IAED,kBAAkB,CAChB,aAAoD;QAKpD,OAAO,CACL,OAAmE,EACnE,IAA2B,EAC3B,EAAE;YACF,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;aAC5B;iBAAM,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;gBACxC,IAAI,GAAG,OAAO,CAAA;gBACd,OAAO,GAAG,EAAE,CAAA;aACb;YACD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,uCAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACvD,4BAAiB,CAAC;gBAChB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBACvB,MAAM,EAAE,oBAAoB;gBAC5B,QAAQ,EAAE,wBAAc,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;aACxC,CAAC,CAAA;YACF,aAAa,EAAE,CAAC,IAAI,CAAC;gBACnB,IAAI;gBACJ,IAAI;gBACJ,OAAO;gBACP,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC,CAAA;IACH,CAAC;IAED,kBAAkB,CAChB,aAAoD;QAKpD,OAAO,CACL,OAAmE,EACnE,IAA2B,EAC3B,EAAE;YACF,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;aAC5B;iBAAM,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;gBACxC,IAAI,GAAG,OAAO,CAAA;gBACd,OAAO,GAAG,EAAE,CAAA;aACb;YACD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,uCAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACvD,4BAAiB,CAAC;gBAChB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBACvB,MAAM,EAAE,oBAAoB;gBAC5B,QAAQ,EAAE,wBAAc,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;aACxC,CAAC,CAAA;YACF,aAAa,EAAE,CAAC,IAAI,CAAC;gBACnB,IAAI;gBACJ,IAAI;gBACJ,OAAO;gBACP,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC,CAAA;IACH,CAAC;IAED,iBAAiB,CACf,aAAmD;QAEnD,OAAO,CAAC,OAA6C,EAAE,IAAe,EAAE,EAAE;YACxE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;gBACjC,IAAI,GAAG,OAAO,CAAA;gBACd,OAAO,GAAG,EAAE,CAAA;aACb;YACD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,uCAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACvD,4BAAiB,CAAC;gBAChB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBACvB,MAAM,EAAE,mBAAmB;gBAC3B,QAAQ,EAAE,wBAAc,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;aACxC,CAAC,CAAA;YACF,aAAa,EAAE,CAAC,IAAI,CAAC;gBACnB,IAAI;gBACJ,IAAI;gBACJ,OAAO;gBACP,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,EACP,IAAI,EACJ,cAAc,GAIf;QACC,IAAI,6BAAa,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAA;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;YACxE,IAAI,WAAW,KAAK,IAAI,EAAE;gBACxB,OAAO,oBAAK,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;aACtC;YACD,OAAO,WAAW,CAAA;SACnB;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,4BAA4B,CAC1B,OAAwC;QAExC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;YAClD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAChC,IAAI;gBACJ,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAA;YACF,OAAO,IAAI,mCAAsB,CAAC;gBAChC,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;gBAChB,IAAI;gBACJ,OAAO;gBACP,aAAa,EAAE,IAAI;gBACnB,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,4BAA4B,CAC1B,OAAwC;QAExC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;YAClD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAChC,IAAI;gBACJ,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAA;YACF,OAAO,IAAI,mCAAsB,CAAC;gBAChC,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;gBAChB,IAAI;gBACJ,OAAO;gBACP,aAAa,EAAE,IAAI;gBACnB,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,2BAA2B,CACzB,OAAuC;QAEvC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;YAClD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAChC,IAAI;gBACJ,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAA;YACF,OAAO,IAAI,kCAAqB,CAAC;gBAC/B,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;gBAChB,IAAI;gBACJ,OAAO;gBACP,aAAa,EAAE,IAAI;gBACnB,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,oBAAoB;QAIlB,MAAM,eAAe,GAAqB,EAAE,CAAA;QAC5C,MAAM,uBAAuB,GAAuC,EAAE,CAAA;QACtE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAChC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;YACxC,IAAI,UAAU,CAAA;YACd,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,IAAI;oBACF,UAAU,GAAG,IAAI,yCAAkB,CACjC,OAAO,EACP,IAAI,CAAC,qBAAqB,CAC3B,CAAA;iBACF;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,6BAAa,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE;wBAC/C,uBAAuB,CAAC,IAAI,CAAC;4BAC3B,IAAI,EAAE,CAAC,CAAC,0BAA0B;4BAClC,UAAU,EAAE,OAAO;yBACpB,CAAC,CAAA;wBACF,OAAM;qBACP;oBACD,MAAM,CAAC,CAAA;iBACR;aACF;iBAAM;gBACL,UAAU,GAAG,IAAI,wCAAiB,CAChC,OAAO,EACP,IAAI,CAAC,qBAAqB,CAC3B,CAAA;aACF;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAChC,IAAI;gBACJ,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAA;YACF,eAAe,CAAC,IAAI,CAClB,IAAI,yBAAc,CAAC;gBACjB,IAAI,EAAE,WAAW;gBACjB,UAAU;gBACV,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;gBAChB,IAAI;gBACJ,OAAO;gBACP,OAAO;gBACP,aAAa,EAAE,IAAI;gBACnB,GAAG;aACJ,CAAC,CACH,CAAA;QACH,CAAC,CACF,CAAA;QACD,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,CAAA;IACrD,CAAC;IAED,QAAQ;QACN,IAAI,gCAAgB,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE;YACpD,MAAM,iBAAiB,GAAG,gBAAC,CAAC,KAAK,CAAC;gBAChC,IAAI,CAAC,kCAAkC;gBACvC,IAAI,CAAC,iCAAiC;gBACtC,IAAI,CAAC,mCAAmC;gBACxC,IAAI,CAAC,kCAAkC;gBACvC,IAAI,CAAC,qBAAqB;aAC3B,CAAC;iBACC,OAAO,EAAE;iBACT,KAAK,EAAE,CAAA;YACV,+CAA4B,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAA;SACnE;QACD,MAAM,qBAAqB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QACzD,OAAO;YACL,4BAA4B,EAAE,IAAI,CAAC,4BAA4B,CAC7D,IAAI,CAAC,kCAAkC,CACxC;YACD,2BAA2B,EAAE,IAAI,CAAC,2BAA2B,CAC3D,IAAI,CAAC,iCAAiC,CACvC;YACD,4BAA4B,EAAE,IAAI,CAAC,4BAA4B,CAC7D,IAAI,CAAC,kCAAkC,CACxC;YACD,6BAA6B,EAAE,IAAI,CAAC,4BAA4B,CAC9D,IAAI,CAAC,mCAAmC,CACzC;YACD,4BAA4B,EAAE,IAAI,CAAC,2BAA2B,CAC5D,IAAI,CAAC,kCAAkC,CACxC;YACD,6BAA6B,EAAE,IAAI,CAAC,4BAA4B,CAC9D,IAAI,CAAC,mCAAmC,CACzC;YACD,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,uBAAuB,EAAE,qBAAqB,CAAC,uBAAuB;YACtE,eAAe,EAAE,qBAAqB,CAAC,eAAe;YACtD,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,GAAW,EAAE,KAAwB;QACzC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,kCAAkC,GAAG,EAAE,CAAA;QAC5C,IAAI,CAAC,iCAAiC,GAAG,EAAE,CAAA;QAC3C,IAAI,CAAC,kCAAkC,GAAG,EAAE,CAAA;QAC5C,IAAI,CAAC,mCAAmC,GAAG,EAAE,CAAA;QAC7C,IAAI,CAAC,kCAAkC,GAAG,EAAE,CAAA;QAC5C,IAAI,CAAC,mCAAmC,GAAG,EAAE,CAAA;QAC7C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAA;QACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;QAC1B,IAAI,CAAC,qBAAqB,GAAG,IAAI,4CAAqB,EAAE,CAAA;QACxD,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,eAAK,CAAA;IACpB,CAAC;CACF;AAjWD,8DAiWC;AAED,kBAAe,IAAI,yBAAyB,EAAE,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { messages } from '@cucumber/messages';
2
2
  import TestCaseHookDefinition from '../models/test_case_hook_definition';
3
+ import TestStepHookDefinition from '../models/test_step_hook_definition';
3
4
  import TestRunHookDefinition from '../models/test_run_hook_definition';
4
5
  import StepDefinition from '../models/step_definition';
5
6
  import { ParameterTypeRegistry } from '@cucumber/cucumber-expressions';
@@ -10,9 +11,19 @@ export interface ITestCaseHookParameter {
10
11
  result?: messages.TestStepFinished.ITestStepResult;
11
12
  testCaseStartedId: string;
12
13
  }
14
+ export interface ITestStepHookParameter {
15
+ gherkinDocument: messages.IGherkinDocument;
16
+ pickle: messages.IPickle;
17
+ result: messages.TestStepFinished.ITestStepResult;
18
+ testCaseStartedId: string;
19
+ testStepId: string;
20
+ }
13
21
  export declare type TestCaseHookFunctionWithoutParameter = () => void | Promise<void>;
14
22
  export declare type TestCaseHookFunctionWithParameter = (arg: ITestCaseHookParameter) => void | Promise<void>;
15
23
  export declare type TestCaseHookFunction = TestCaseHookFunctionWithoutParameter | TestCaseHookFunctionWithParameter;
24
+ export declare type TestStepHookFunctionWithoutParameter = () => void;
25
+ export declare type TestStepHookFunctionWithParameter = (arg: ITestStepHookParameter) => void;
26
+ export declare type TestStepHookFunction = TestStepHookFunctionWithoutParameter | TestStepHookFunctionWithParameter;
16
27
  export interface IDefineStepOptions {
17
28
  timeout?: number;
18
29
  wrapperOptions?: any;
@@ -21,6 +32,10 @@ export interface IDefineTestCaseHookOptions {
21
32
  tags?: string;
22
33
  timeout?: number;
23
34
  }
35
+ export interface IDefineTestStepHookOptions {
36
+ tags?: string;
37
+ timeout?: number;
38
+ }
24
39
  export interface IDefineTestRunHookOptions {
25
40
  timeout?: number;
26
41
  }
@@ -38,8 +53,10 @@ export interface IDefineSupportCodeMethods {
38
53
  setDefinitionFunctionWrapper: (fn: Function) => void;
39
54
  setWorldConstructor: (fn: any) => void;
40
55
  After: ((code: TestCaseHookFunction) => void) & ((tags: string, code: TestCaseHookFunction) => void) & ((options: IDefineTestCaseHookOptions, code: TestCaseHookFunction) => void);
56
+ AfterStep: ((code: TestStepHookFunction) => void) & ((tags: string, code: TestStepHookFunction) => void) & ((options: IDefineTestStepHookOptions, code: TestStepHookFunction) => void);
41
57
  AfterAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
42
58
  Before: ((code: TestCaseHookFunction) => void) & ((tags: string, code: TestCaseHookFunction) => void) & ((options: IDefineTestCaseHookOptions, code: TestCaseHookFunction) => void);
59
+ BeforeStep: ((code: TestStepHookFunction) => void) & ((tags: string, code: TestStepHookFunction) => void) & ((options: IDefineTestStepHookOptions, code: TestStepHookFunction) => void);
43
60
  BeforeAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
44
61
  Given: ((pattern: DefineStepPattern, code: Function) => void) & ((pattern: DefineStepPattern, options: IDefineStepOptions, code: Function) => void);
45
62
  Then: ((pattern: DefineStepPattern, code: Function) => void) & ((pattern: DefineStepPattern, options: IDefineStepOptions, code: Function) => void);
@@ -47,8 +64,10 @@ export interface IDefineSupportCodeMethods {
47
64
  }
48
65
  export interface ISupportCodeLibrary {
49
66
  readonly afterTestCaseHookDefinitions: TestCaseHookDefinition[];
67
+ readonly afterTestStepHookDefinitions: TestStepHookDefinition[];
50
68
  readonly afterTestRunHookDefinitions: TestRunHookDefinition[];
51
69
  readonly beforeTestCaseHookDefinitions: TestCaseHookDefinition[];
70
+ readonly beforeTestStepHookDefinitions: TestStepHookDefinition[];
52
71
  readonly beforeTestRunHookDefinitions: TestRunHookDefinition[];
53
72
  readonly defaultTimeout: number;
54
73
  readonly stepDefinitions: StepDefinition[];
@@ -42,6 +42,18 @@ const validations = {
42
42
  optionsTimeoutValidation,
43
43
  Object.assign({ identifier: 'second argument' }, fnValidation),
44
44
  ],
45
+ defineTestStepHook: [
46
+ Object.assign({ identifier: 'first argument' }, optionsValidation),
47
+ {
48
+ identifier: '"options.tags"',
49
+ expectedType: 'string',
50
+ predicate({ options }) {
51
+ return value_checker_1.doesNotHaveValue(options.tags) || lodash_1.default.isString(options.tags);
52
+ },
53
+ },
54
+ optionsTimeoutValidation,
55
+ Object.assign({ identifier: 'second argument' }, fnValidation),
56
+ ],
45
57
  defineStep: [
46
58
  {
47
59
  identifier: 'first argument',
@@ -1 +1 @@
1
- {"version":3,"file":"validate_arguments.js","sourceRoot":"","sources":["../../src/support_code_library_builder/validate_arguments.ts"],"names":[],"mappings":";;;;;AAAA,oDAAsC;AACtC,oDAAmD;AAenD,MAAM,iBAAiB,GAAG;IACxB,YAAY,EAAE,oBAAoB;IAClC,SAAS,CAAC,EAAE,OAAO,EAAwB;QACzC,OAAO,gBAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;CACF,CAAA;AAED,MAAM,wBAAwB,GAAG;IAC/B,UAAU,EAAE,mBAAmB;IAC/B,YAAY,EAAE,SAAS;IACvB,SAAS,CAAC,EAAE,OAAO,EAAwB;QACzC,OAAO,gCAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1E,CAAC;CACF,CAAA;AAED,MAAM,YAAY,GAAG;IACnB,YAAY,EAAE,UAAU;IACxB,SAAS,CAAC,EAAE,IAAI,EAAwB;QACtC,OAAO,gBAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;CACF,CAAA;AAED,MAAM,WAAW,GAA8B;IAC7C,iBAAiB,EAAE;wBACf,UAAU,EAAE,gBAAgB,IAAK,iBAAiB;QACpD,wBAAwB;wBACtB,UAAU,EAAE,iBAAiB,IAAK,YAAY;KACjD;IACD,kBAAkB,EAAE;wBAChB,UAAU,EAAE,gBAAgB,IAAK,iBAAiB;QACpD;YACE,UAAU,EAAE,gBAAgB;YAC5B,YAAY,EAAE,QAAQ;YACtB,SAAS,CAAC,EAAE,OAAO,EAAE;gBACnB,OAAO,gCAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACnE,CAAC;SACF;QACD,wBAAwB;wBACtB,UAAU,EAAE,iBAAiB,IAAK,YAAY;KACjD;IACD,UAAU,EAAE;QACV;YACE,UAAU,EAAE,gBAAgB;YAC5B,YAAY,EAAE,8BAA8B;YAC5C,SAAS,CAAC,EAAE,OAAO,EAAE;gBACnB,OAAO,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YACnD,CAAC;SACF;wBACC,UAAU,EAAE,iBAAiB,IAAK,iBAAiB;QACrD,wBAAwB;wBACtB,UAAU,EAAE,gBAAgB,IAAK,YAAY;KAChD;CACF,CAAA;AAED,SAAwB,iBAAiB,CAAC,EACxC,IAAI,EACJ,MAAM,EACN,QAAQ,GAKT;IACC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE;QACtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACpB,MAAM,IAAI,KAAK,CACb,GAAG,QAAQ,aAAa,UAAU,iBAAiB,YAAY,EAAE,CAClE,CAAA;SACF;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAhBD,oCAgBC"}
1
+ {"version":3,"file":"validate_arguments.js","sourceRoot":"","sources":["../../src/support_code_library_builder/validate_arguments.ts"],"names":[],"mappings":";;;;;AAAA,oDAAsC;AACtC,oDAAmD;AAenD,MAAM,iBAAiB,GAAG;IACxB,YAAY,EAAE,oBAAoB;IAClC,SAAS,CAAC,EAAE,OAAO,EAAwB;QACzC,OAAO,gBAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;CACF,CAAA;AAED,MAAM,wBAAwB,GAAG;IAC/B,UAAU,EAAE,mBAAmB;IAC/B,YAAY,EAAE,SAAS;IACvB,SAAS,CAAC,EAAE,OAAO,EAAwB;QACzC,OAAO,gCAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1E,CAAC;CACF,CAAA;AAED,MAAM,YAAY,GAAG;IACnB,YAAY,EAAE,UAAU;IACxB,SAAS,CAAC,EAAE,IAAI,EAAwB;QACtC,OAAO,gBAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;CACF,CAAA;AAED,MAAM,WAAW,GAA8B;IAC7C,iBAAiB,EAAE;wBACf,UAAU,EAAE,gBAAgB,IAAK,iBAAiB;QACpD,wBAAwB;wBACtB,UAAU,EAAE,iBAAiB,IAAK,YAAY;KACjD;IACD,kBAAkB,EAAE;wBAChB,UAAU,EAAE,gBAAgB,IAAK,iBAAiB;QACpD;YACE,UAAU,EAAE,gBAAgB;YAC5B,YAAY,EAAE,QAAQ;YACtB,SAAS,CAAC,EAAE,OAAO,EAAE;gBACnB,OAAO,gCAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACnE,CAAC;SACF;QACD,wBAAwB;wBACtB,UAAU,EAAE,iBAAiB,IAAK,YAAY;KACjD;IACD,kBAAkB,EAAE;wBAChB,UAAU,EAAE,gBAAgB,IAAK,iBAAiB;QACpD;YACE,UAAU,EAAE,gBAAgB;YAC5B,YAAY,EAAE,QAAQ;YACtB,SAAS,CAAC,EAAE,OAAO,EAAE;gBACnB,OAAO,gCAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACnE,CAAC;SACF;QACD,wBAAwB;wBACtB,UAAU,EAAE,iBAAiB,IAAK,YAAY;KACjD;IACD,UAAU,EAAE;QACV;YACE,UAAU,EAAE,gBAAgB;YAC5B,YAAY,EAAE,8BAA8B;YAC5C,SAAS,CAAC,EAAE,OAAO,EAAE;gBACnB,OAAO,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,gBAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YACnD,CAAC;SACF;wBACC,UAAU,EAAE,iBAAiB,IAAK,iBAAiB;QACrD,wBAAwB;wBACtB,UAAU,EAAE,gBAAgB,IAAK,YAAY;KAChD;CACF,CAAA;AAED,SAAwB,iBAAiB,CAAC,EACxC,IAAI,EACJ,MAAM,EACN,QAAQ,GAKT;IACC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE;QACtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACpB,MAAM,IAAI,KAAK,CACb,GAAG,QAAQ,aAAa,UAAU,iBAAiB,YAAY,EAAE,CAClE,CAAA;SACF;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAhBD,oCAgBC"}