@serenity-js/jasmine 3.37.2 → 3.39.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.
- package/CHANGELOG.md +22 -0
- package/README.md +1 -0
- package/esm/SerenityReporterForJasmine.d.ts +11 -1
- package/esm/SerenityReporterForJasmine.d.ts.map +1 -1
- package/esm/SerenityReporterForJasmine.js +44 -8
- package/esm/SerenityReporterForJasmine.js.map +1 -1
- package/esm/bootstrap.d.ts +7 -2
- package/esm/bootstrap.d.ts.map +1 -1
- package/esm/bootstrap.js +99 -13
- package/esm/bootstrap.js.map +1 -1
- package/esm/jasmine/SpecResult.d.ts +10 -1
- package/esm/jasmine/SpecResult.d.ts.map +1 -1
- package/esm/jasmine/SuiteResult.d.ts +10 -1
- package/esm/jasmine/SuiteResult.d.ts.map +1 -1
- package/esm/jasmine/index.d.ts +1 -0
- package/esm/jasmine/index.d.ts.map +1 -1
- package/esm/jasmine/index.js +1 -0
- package/esm/jasmine/index.js.map +1 -1
- package/esm/monkeyPatched.d.ts +4 -0
- package/esm/monkeyPatched.d.ts.map +1 -1
- package/esm/monkeyPatched.js +36 -2
- package/esm/monkeyPatched.js.map +1 -1
- package/lib/SerenityReporterForJasmine.d.ts +11 -1
- package/lib/SerenityReporterForJasmine.d.ts.map +1 -1
- package/lib/SerenityReporterForJasmine.js +44 -8
- package/lib/SerenityReporterForJasmine.js.map +1 -1
- package/lib/bootstrap.d.ts +7 -2
- package/lib/bootstrap.d.ts.map +1 -1
- package/lib/bootstrap.js +99 -13
- package/lib/bootstrap.js.map +1 -1
- package/lib/jasmine/SpecResult.d.ts +10 -1
- package/lib/jasmine/SpecResult.d.ts.map +1 -1
- package/lib/jasmine/SuiteResult.d.ts +10 -1
- package/lib/jasmine/SuiteResult.d.ts.map +1 -1
- package/lib/jasmine/index.d.ts +1 -0
- package/lib/jasmine/index.d.ts.map +1 -1
- package/lib/jasmine/index.js +1 -0
- package/lib/jasmine/index.js.map +1 -1
- package/lib/monkeyPatched.d.ts +4 -0
- package/lib/monkeyPatched.d.ts.map +1 -1
- package/lib/monkeyPatched.js +36 -2
- package/lib/monkeyPatched.js.map +1 -1
- package/package.json +5 -5
- package/src/SerenityReporterForJasmine.ts +61 -10
- package/src/bootstrap.ts +112 -13
- package/src/jasmine/SpecResult.ts +11 -1
- package/src/jasmine/SuiteResult.ts +11 -1
- package/src/jasmine/index.ts +1 -0
- package/src/monkeyPatched.ts +39 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,28 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.39.0](https://github.com/serenity-js/serenity-js/compare/v3.38.0...v3.39.0) (2026-01-30)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **jasmine:** add support for Jasmine 6 ([cdd767c](https://github.com/serenity-js/serenity-js/commit/cdd767caca1d273e5c26a0b8e16ff7460d1ffedb))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# [3.38.0](https://github.com/serenity-js/serenity-js/compare/v3.37.2...v3.38.0) (2026-01-29)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* **webdriverio:** support afterTest hooks ([a79c83c](https://github.com/serenity-js/serenity-js/commit/a79c83cf0d2b975f9d7831dbf8cbe6dc1cc4935d)), closes [#3005](https://github.com/serenity-js/serenity-js/issues/3005)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
6
28
|
## [3.37.2](https://github.com/serenity-js/serenity-js/compare/v3.37.1...v3.37.2) (2026-01-23)
|
|
7
29
|
|
|
8
30
|
**Note:** Version bump only for package @serenity-js/jasmine
|
package/README.md
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
## Features
|
|
19
19
|
|
|
20
|
+
- Supports Jasmine 5.x and 6.x
|
|
20
21
|
- Enables [Screenplay Pattern](https://serenity-js.org/handbook/design/screenplay-pattern/) APIs in Jasmine tests
|
|
21
22
|
- Supports all [Serenity/JS reporting features](https://serenity-js.org/handbook/reporting/)
|
|
22
23
|
- TypeScript-first design with strong typing for safer and more predictable test code.
|
|
@@ -12,7 +12,8 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
|
|
|
12
12
|
private describes;
|
|
13
13
|
private currentSceneId;
|
|
14
14
|
/**
|
|
15
|
-
* @param
|
|
15
|
+
* @param serenity - The Serenity instance
|
|
16
|
+
* @param requirementsHierarchy - The requirements hierarchy for tagging
|
|
16
17
|
*/
|
|
17
18
|
constructor(serenity: Serenity, requirementsHierachy: RequirementsHierarchy);
|
|
18
19
|
jasmineStarted(info: JasmineStartedInfo): void;
|
|
@@ -26,6 +27,15 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
|
|
|
26
27
|
* @param {DomainEvent[]} events
|
|
27
28
|
*/
|
|
28
29
|
private emit;
|
|
30
|
+
/**
|
|
31
|
+
* Extracts location information from a spec or suite result.
|
|
32
|
+
* Supports both Jasmine 5.x and 6.x (location object from monkey-patching).
|
|
33
|
+
*
|
|
34
|
+
* @private
|
|
35
|
+
* @param result - The spec or suite result
|
|
36
|
+
* @returns Location object with path, line, and column
|
|
37
|
+
*/
|
|
38
|
+
private locationOf;
|
|
29
39
|
/**
|
|
30
40
|
* @private
|
|
31
41
|
* @param {SpecResult} spec
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,
|
|
1
|
+
{"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,EAElB,UAAU,EACV,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IAY1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAXzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IACzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,cAAc,CAA4B;IAElD;;;OAGG;gBAEkB,QAAQ,EAAE,QAAQ,EAClB,oBAAoB,EAAE,qBAAqB;IAIhE,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMvC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMpC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAiBrC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D3C,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAuBlB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,4DAA4D;IAMpE,OAAO,CAAC,kCAAkC;IAI1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;CAS/B"}
|
|
@@ -13,7 +13,8 @@ export class SerenityReporterForJasmine {
|
|
|
13
13
|
describes = [];
|
|
14
14
|
currentSceneId = undefined;
|
|
15
15
|
/**
|
|
16
|
-
* @param
|
|
16
|
+
* @param serenity - The Serenity instance
|
|
17
|
+
* @param requirementsHierarchy - The requirements hierarchy for tagging
|
|
17
18
|
*/
|
|
18
19
|
constructor(serenity, requirementsHierachy) {
|
|
19
20
|
this.serenity = serenity;
|
|
@@ -44,18 +45,22 @@ export class SerenityReporterForJasmine {
|
|
|
44
45
|
if (result.failedExpectations.length > 1) {
|
|
45
46
|
result.failedExpectations.forEach(failedExpectation => {
|
|
46
47
|
const sceneId = this.serenity.currentSceneId();
|
|
47
|
-
const
|
|
48
|
+
const location = this.locationOf(result);
|
|
49
|
+
const activityDetails = new ActivityDetails(new Name('Expectation'), new FileSystemLocation(Path.from(location.path), location.line, location.column));
|
|
48
50
|
const activityId = this.serenity.assignNewActivityId(activityDetails);
|
|
49
51
|
this.emit(new TaskStarts(sceneId, activityId, activityDetails, this.serenity.currentTime()), new TaskFinished(sceneId, activityId, activityDetails, this.failureOutcomeFrom(failedExpectation), this.serenity.currentTime()));
|
|
50
52
|
});
|
|
51
53
|
}
|
|
52
54
|
const { scenarioDetails } = this.scenarioDetailsOf(result), outcome = this.outcomeFrom(result);
|
|
53
|
-
this.emit(new SceneFinishes(this.currentSceneId, this.serenity.currentTime()));
|
|
55
|
+
this.emit(new SceneFinishes(this.currentSceneId, outcome, this.serenity.currentTime()));
|
|
54
56
|
return this.serenity.waitForNextCue()
|
|
55
57
|
.then(() => {
|
|
56
58
|
this.emit(new SceneFinished(this.currentSceneId, scenarioDetails, outcome, this.serenity.currentTime()));
|
|
57
59
|
}, error => {
|
|
58
|
-
|
|
60
|
+
const errorOutcome = new ExecutionFailedWithError(error);
|
|
61
|
+
this.emit(new SceneFinished(this.currentSceneId, scenarioDetails, errorOutcome.isWorseThan(outcome)
|
|
62
|
+
? errorOutcome
|
|
63
|
+
: outcome, this.serenity.currentTime()));
|
|
59
64
|
throw error;
|
|
60
65
|
});
|
|
61
66
|
}
|
|
@@ -77,6 +82,34 @@ export class SerenityReporterForJasmine {
|
|
|
77
82
|
emit(...events) {
|
|
78
83
|
events.forEach(event => this.serenity.announce(event));
|
|
79
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Extracts location information from a spec or suite result.
|
|
87
|
+
* Supports both Jasmine 5.x and 6.x (location object from monkey-patching).
|
|
88
|
+
*
|
|
89
|
+
* @private
|
|
90
|
+
* @param result - The spec or suite result
|
|
91
|
+
* @returns Location object with path, line, and column
|
|
92
|
+
*/
|
|
93
|
+
locationOf(result) {
|
|
94
|
+
// Jasmine 5.x and 6.x with monkey-patching provides location object
|
|
95
|
+
if (result.location) {
|
|
96
|
+
return result.location;
|
|
97
|
+
}
|
|
98
|
+
// Fallback: use filename property if available (Jasmine 6.x without monkey-patching)
|
|
99
|
+
if (result.filename) {
|
|
100
|
+
return {
|
|
101
|
+
path: result.filename,
|
|
102
|
+
line: 0,
|
|
103
|
+
column: 0,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
// Fallback for edge cases
|
|
107
|
+
return {
|
|
108
|
+
path: 'unknown',
|
|
109
|
+
line: 0,
|
|
110
|
+
column: 0,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
80
113
|
/**
|
|
81
114
|
* @private
|
|
82
115
|
* @param {SpecResult} spec
|
|
@@ -85,8 +118,9 @@ export class SerenityReporterForJasmine {
|
|
|
85
118
|
scenarioDetailsOf(spec) {
|
|
86
119
|
const name = this.currentScenarioNameFor(spec.description);
|
|
87
120
|
const featureName = this.currentFeatureNameFor(spec);
|
|
121
|
+
const location = this.locationOf(spec);
|
|
88
122
|
return {
|
|
89
|
-
scenarioDetails: new ScenarioDetails(new Name(Tags.stripFrom(name)), new Category(Tags.stripFrom(featureName)), FileSystemLocation.
|
|
123
|
+
scenarioDetails: new ScenarioDetails(new Name(Tags.stripFrom(name)), new Category(Tags.stripFrom(featureName)), new FileSystemLocation(Path.from(location.path), location.line, location.column)),
|
|
90
124
|
scenarioTags: Tags.from(`${featureName} ${name}`)
|
|
91
125
|
};
|
|
92
126
|
}
|
|
@@ -96,14 +130,16 @@ export class SerenityReporterForJasmine {
|
|
|
96
130
|
* @returns {TestSuiteDetails}
|
|
97
131
|
*/
|
|
98
132
|
testSuiteDetailsOf(result) {
|
|
99
|
-
|
|
133
|
+
const location = this.locationOf(result);
|
|
134
|
+
return new TestSuiteDetails(new Name(result.description), new FileSystemLocation(Path.from(location.path), location.line, location.column), new CorrelationId(result.id));
|
|
100
135
|
}
|
|
101
136
|
/**
|
|
102
137
|
* @private
|
|
103
138
|
* @returns {string}
|
|
104
139
|
*/
|
|
105
140
|
currentFeatureNameFor(spec) {
|
|
106
|
-
const
|
|
141
|
+
const location = this.locationOf(spec);
|
|
142
|
+
const path = new Path(location.path);
|
|
107
143
|
return this.describes[0]
|
|
108
144
|
? this.describes[0].description
|
|
109
145
|
: this.serenity.cwd().relative(path).value;
|
|
@@ -131,7 +167,7 @@ export class SerenityReporterForJasmine {
|
|
|
131
167
|
return new ImplementationPending(new ImplementationPendingError(result.pendingReason || ''));
|
|
132
168
|
case 'excluded':
|
|
133
169
|
return new ExecutionSkipped();
|
|
134
|
-
case 'passed':
|
|
170
|
+
case 'passed':
|
|
135
171
|
default:
|
|
136
172
|
return new ExecutionSuccessful();
|
|
137
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerenityReporterForJasmine.js","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,eAAe,EACf,0BAA0B,EAE1B,oBAAoB,EACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEH,aAAa,EACb,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,UAAU,EACV,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,eAAe,GAClB,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EACH,eAAe,EACf,QAAQ,EACR,aAAa,EACb,oBAAoB,EACpB,iCAAiC,EACjC,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,IAAI,EAGJ,eAAe,EAEf,IAAI,EACJ,gBAAgB,GACnB,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"SerenityReporterForJasmine.js","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"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"}
|
package/esm/bootstrap.d.ts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { SerenityReporterForJasmine } from './SerenityReporterForJasmine.js';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* Bootstraps the Serenity/JS reporter for Jasmine.
|
|
4
|
+
*
|
|
5
|
+
* This function monkey-patches Jasmine's Suite and Spec constructors
|
|
6
|
+
* so that they provide more accurate location information.
|
|
7
|
+
*
|
|
8
|
+
* For Jasmine 5.x, Suite and Spec are on the jasmine object directly.
|
|
9
|
+
* For Jasmine 6.x, Suite and Spec are in jasmine.private.
|
|
5
10
|
*
|
|
6
11
|
* ## Registering the reporter from the command line
|
|
7
12
|
*
|
package/esm/bootstrap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,SAAS,CAAC,MAAM,GAAE,gCAAqC,EAAE,OAAO,MAA0B,GAAG,0BAA0B,CA6CtI;AA0ED,MAAM,WAAW,gCAAgC;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
package/esm/bootstrap.js
CHANGED
|
@@ -3,8 +3,13 @@ import { FileSystem, Path, RequirementsHierarchy } from '@serenity-js/core/lib/i
|
|
|
3
3
|
import { monkeyPatched } from './monkeyPatched.js';
|
|
4
4
|
import { SerenityReporterForJasmine } from './SerenityReporterForJasmine.js';
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* Bootstraps the Serenity/JS reporter for Jasmine.
|
|
7
|
+
*
|
|
8
|
+
* This function monkey-patches Jasmine's Suite and Spec constructors
|
|
9
|
+
* so that they provide more accurate location information.
|
|
10
|
+
*
|
|
11
|
+
* For Jasmine 5.x, Suite and Spec are on the jasmine object directly.
|
|
12
|
+
* For Jasmine 6.x, Suite and Spec are in jasmine.private.
|
|
8
13
|
*
|
|
9
14
|
* ## Registering the reporter from the command line
|
|
10
15
|
*
|
|
@@ -25,19 +30,100 @@ import { SerenityReporterForJasmine } from './SerenityReporterForJasmine.js';
|
|
|
25
30
|
* the global.jasmine instance
|
|
26
31
|
*/
|
|
27
32
|
export function bootstrap(config = {}, jasmine = global.jasmine) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
// Jasmine 6+ moved Suite and Spec to jasmine.private,
|
|
34
|
+
// so we check both locations for backwards compatibility
|
|
35
|
+
const Suite = jasmine.Suite || jasmine.private?.Suite;
|
|
36
|
+
const Spec = jasmine.Spec || jasmine.private?.Spec;
|
|
37
|
+
if (Suite && Spec) {
|
|
38
|
+
// Monkey-patch Suite and Spec to capture location info
|
|
39
|
+
const wrappers = {
|
|
40
|
+
expectationResultFactory: originalExpectationResultFactory => ((attributes) => {
|
|
41
|
+
const result = originalExpectationResultFactory(attributes);
|
|
42
|
+
if (!attributes.passed && attributes.error instanceof RuntimeError) {
|
|
43
|
+
result.stack = attributes.error.stack;
|
|
44
|
+
}
|
|
45
|
+
return result;
|
|
46
|
+
}),
|
|
47
|
+
};
|
|
48
|
+
// Jasmine 5.x: Suite and Spec are on jasmine directly
|
|
49
|
+
if (jasmine.Suite && jasmine.Spec) {
|
|
50
|
+
jasmine.Suite = monkeyPatched(jasmine.Suite, wrappers);
|
|
51
|
+
jasmine.Spec = monkeyPatched(jasmine.Spec, wrappers);
|
|
52
|
+
}
|
|
53
|
+
// Jasmine 6+: Suite and Spec are in jasmine.private
|
|
54
|
+
else if (jasmine.private?.Suite && jasmine.private?.Spec) {
|
|
55
|
+
jasmine.private.Suite = monkeyPatched(jasmine.private.Suite, wrappers);
|
|
56
|
+
jasmine.private.Spec = monkeyPatched(jasmine.private.Spec, wrappers);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// For Jasmine 6+, patch the Expector and buildExpectationResult to restore expected/actual values
|
|
60
|
+
// This is needed because Jasmine 6 removed these from expectation results
|
|
61
|
+
patchBuildExpectationResultForExpectedActual(jasmine);
|
|
62
|
+
patchExpectorForExpectedActual(jasmine);
|
|
39
63
|
const cwd = Path.from(process.cwd());
|
|
40
64
|
const requirementsHierarchy = new RequirementsHierarchy(new FileSystem(cwd), config?.specDirectory && cwd.resolve(Path.from(config?.specDirectory)));
|
|
41
65
|
return new SerenityReporterForJasmine(serenity, requirementsHierarchy);
|
|
42
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Patches Jasmine's buildExpectationResult to include expected/actual values
|
|
69
|
+
* in the expectation result. This restores functionality that was removed in Jasmine 6.
|
|
70
|
+
*
|
|
71
|
+
* In Jasmine 6, the buildExpectationResult function no longer includes expected/actual
|
|
72
|
+
* values in the result object. This patch wraps the function to preserve these values
|
|
73
|
+
* when they are provided.
|
|
74
|
+
*
|
|
75
|
+
* @param jasmine - The global jasmine instance
|
|
76
|
+
*/
|
|
77
|
+
function patchBuildExpectationResultForExpectedActual(jasmine) {
|
|
78
|
+
// Access the private buildExpectationResult function
|
|
79
|
+
const originalBuildExpectationResult = jasmine?.private?.buildExpectationResult;
|
|
80
|
+
if (!originalBuildExpectationResult) {
|
|
81
|
+
// buildExpectationResult not available, skip
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
jasmine.private.buildExpectationResult = function (options) {
|
|
85
|
+
const result = originalBuildExpectationResult(options);
|
|
86
|
+
// Restore expected/actual values that Jasmine 6 removed
|
|
87
|
+
if (options.expected !== undefined) {
|
|
88
|
+
result.expected = options.expected;
|
|
89
|
+
}
|
|
90
|
+
if (options.actual !== undefined) {
|
|
91
|
+
result.actual = options.actual;
|
|
92
|
+
}
|
|
93
|
+
return result;
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Patches Jasmine's Expector.prototype.processResult to include expected/actual values
|
|
98
|
+
* when calling addExpectationResult. This ensures the values are passed to
|
|
99
|
+
* buildExpectationResult.
|
|
100
|
+
*
|
|
101
|
+
* @param jasmine - The global jasmine instance
|
|
102
|
+
*/
|
|
103
|
+
function patchExpectorForExpectedActual(jasmine) {
|
|
104
|
+
// Access the private Expector class through jasmine's internal structure
|
|
105
|
+
// In Jasmine 6+, Expector is in jasmine.private.Expector
|
|
106
|
+
const Expector = jasmine?.private?.Expector;
|
|
107
|
+
if (!Expector || !Expector.prototype || !Expector.prototype.processResult) {
|
|
108
|
+
// Expector not available, skip
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
Expector.prototype.processResult = function (result, errorForStack) {
|
|
112
|
+
const message = this.buildMessage(result);
|
|
113
|
+
let expected = this.expected;
|
|
114
|
+
if (Array.isArray(expected) && expected.length === 1) {
|
|
115
|
+
expected = expected[0];
|
|
116
|
+
}
|
|
117
|
+
this.addExpectationResult(result.pass, {
|
|
118
|
+
matcherName: this.matcherName,
|
|
119
|
+
passed: result.pass,
|
|
120
|
+
message: message,
|
|
121
|
+
error: errorForStack ? undefined : result.error,
|
|
122
|
+
errorForStack: errorForStack || undefined,
|
|
123
|
+
// Include expected/actual values that Jasmine 6 removed
|
|
124
|
+
expected: expected,
|
|
125
|
+
actual: this.actual,
|
|
126
|
+
});
|
|
127
|
+
};
|
|
128
|
+
}
|
|
43
129
|
//# sourceMappingURL=bootstrap.js.map
|
package/esm/bootstrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,15 @@ export interface SpecResult {
|
|
|
19
19
|
status?: string;
|
|
20
20
|
/** The time in ms used by the spec execution, including any before/afterEach. */
|
|
21
21
|
duration: number | null;
|
|
22
|
-
|
|
22
|
+
/**
|
|
23
|
+
* The file system location of the spec.
|
|
24
|
+
* Available in Jasmine 5.x and earlier when monkey-patched by Serenity/JS.
|
|
25
|
+
*/
|
|
26
|
+
location?: Location;
|
|
27
|
+
/**
|
|
28
|
+
* The filename where the spec is defined.
|
|
29
|
+
* Available in Jasmine 6.x and later.
|
|
30
|
+
*/
|
|
31
|
+
filename?: string;
|
|
23
32
|
}
|
|
24
33
|
//# sourceMappingURL=SpecResult.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpecResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SpecResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,UAAU;IACvB,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAC;IAEX,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IAEpB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,iFAAiF;IACjF,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IAEtB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,QAAQ,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"SpecResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SpecResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,UAAU;IACvB,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAC;IAEX,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IAEpB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,iFAAiF;IACjF,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IAEtB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -20,6 +20,15 @@ export interface SuiteResult extends Result {
|
|
|
20
20
|
status?: string;
|
|
21
21
|
/** The time in ms for Suite execution, including any before/afterAll, before/afterEach. */
|
|
22
22
|
duration: number | null;
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* The file system location of the suite.
|
|
25
|
+
* Available in Jasmine 5.x and earlier when monkey-patched by Serenity/JS.
|
|
26
|
+
*/
|
|
27
|
+
location?: Location;
|
|
28
|
+
/**
|
|
29
|
+
* The filename where the suite is defined.
|
|
30
|
+
* Available in Jasmine 6.x and later.
|
|
31
|
+
*/
|
|
32
|
+
filename?: string;
|
|
24
33
|
}
|
|
25
34
|
//# sourceMappingURL=SuiteResult.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SuiteResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SuiteResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM;IACvC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IAEX,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IAEpB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,oEAAoE;IACpE,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,+FAA+F;IAC/F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,QAAQ,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"SuiteResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SuiteResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM;IACvC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IAEX,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IAEpB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,oEAAoE;IACpE,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,+FAA+F;IAC/F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
package/esm/jasmine/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export * from './Expectation.js';
|
|
|
2
2
|
export * from './JasmineDoneInfo.js';
|
|
3
3
|
export * from './JasmineReporter.js';
|
|
4
4
|
export * from './JasmineStartedInfo.js';
|
|
5
|
+
export * from './Location.js';
|
|
5
6
|
export * from './Order.js';
|
|
6
7
|
export * from './SpecResult.js';
|
|
7
8
|
export * from './SuiteResult.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
package/esm/jasmine/index.js
CHANGED
|
@@ -2,6 +2,7 @@ export * from './Expectation.js';
|
|
|
2
2
|
export * from './JasmineDoneInfo.js';
|
|
3
3
|
export * from './JasmineReporter.js';
|
|
4
4
|
export * from './JasmineStartedInfo.js';
|
|
5
|
+
export * from './Location.js';
|
|
5
6
|
export * from './Order.js';
|
|
6
7
|
export * from './SpecResult.js';
|
|
7
8
|
export * from './SuiteResult.js';
|
package/esm/jasmine/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
package/esm/monkeyPatched.d.ts
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
*
|
|
5
5
|
* This helps to make reporting more accurate.
|
|
6
6
|
*
|
|
7
|
+
* For Jasmine 5.x, the location is stored on instance.result.location.
|
|
8
|
+
* For Jasmine 6.x, the location is stored on instance._serenityLocation and
|
|
9
|
+
* injected into the result events via patched startedEvent/doneEvent methods.
|
|
10
|
+
*
|
|
7
11
|
* @param jasmineConstructor - A Jasmine constructor function to be patched
|
|
8
12
|
* @param {object} wrappers - Attributes to wrap when the monkey-patched Jasmine constructor is invoked
|
|
9
13
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monkeyPatched.d.ts","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"AAMA
|
|
1
|
+
{"version":3,"file":"monkeyPatched.d.ts","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CACzB,kBAAkB,EAAE,GAAG,EACvB,QAAQ,GAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAA;CAAM,WAE/C,MAAM,SAmDtD"}
|
package/esm/monkeyPatched.js
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { ErrorStackParser } from '@serenity-js/core/lib/errors/index.js';
|
|
2
2
|
const parser = new ErrorStackParser();
|
|
3
|
-
/* eslint-disable @typescript-eslint/explicit-module-boundary-types
|
|
3
|
+
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
4
4
|
/**
|
|
5
5
|
* Monkey-patches Jasmine domain model constructors so that they
|
|
6
6
|
* record information about the file system location of the caller function.
|
|
7
7
|
*
|
|
8
8
|
* This helps to make reporting more accurate.
|
|
9
9
|
*
|
|
10
|
+
* For Jasmine 5.x, the location is stored on instance.result.location.
|
|
11
|
+
* For Jasmine 6.x, the location is stored on instance._serenityLocation and
|
|
12
|
+
* injected into the result events via patched startedEvent/doneEvent methods.
|
|
13
|
+
*
|
|
10
14
|
* @param jasmineConstructor - A Jasmine constructor function to be patched
|
|
11
15
|
* @param {object} wrappers - Attributes to wrap when the monkey-patched Jasmine constructor is invoked
|
|
12
16
|
*/
|
|
@@ -16,7 +20,37 @@ export function monkeyPatched(jasmineConstructor, wrappers = {}) {
|
|
|
16
20
|
attrs[key] = wrappers[key](attrs[key]);
|
|
17
21
|
});
|
|
18
22
|
const instance = new jasmineConstructor(attrs);
|
|
19
|
-
|
|
23
|
+
const location = callerLocation();
|
|
24
|
+
// Jasmine 5.x: instance.result exists, store location there
|
|
25
|
+
if (instance.result) {
|
|
26
|
+
instance.result.location = location;
|
|
27
|
+
}
|
|
28
|
+
// Jasmine 6.x: store location on instance and patch event methods
|
|
29
|
+
else {
|
|
30
|
+
instance._serenityLocation = location;
|
|
31
|
+
// Patch startedEvent to include location
|
|
32
|
+
if (typeof instance.startedEvent === 'function') {
|
|
33
|
+
const originalStartedEvent = instance.startedEvent.bind(instance);
|
|
34
|
+
instance.startedEvent = function () {
|
|
35
|
+
const event = originalStartedEvent();
|
|
36
|
+
if (event && instance._serenityLocation) {
|
|
37
|
+
event.location = instance._serenityLocation;
|
|
38
|
+
}
|
|
39
|
+
return event;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
// Patch doneEvent to include location
|
|
43
|
+
if (typeof instance.doneEvent === 'function') {
|
|
44
|
+
const originalDoneEvent = instance.doneEvent.bind(instance);
|
|
45
|
+
instance.doneEvent = function () {
|
|
46
|
+
const event = originalDoneEvent();
|
|
47
|
+
if (event && instance._serenityLocation) {
|
|
48
|
+
event.location = instance._serenityLocation;
|
|
49
|
+
}
|
|
50
|
+
return event;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
20
54
|
return instance;
|
|
21
55
|
};
|
|
22
56
|
Object.getOwnPropertyNames(jasmineConstructor)
|
package/esm/monkeyPatched.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monkeyPatched.js","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAEtC,
|
|
1
|
+
{"version":3,"file":"monkeyPatched.js","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,8 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
|
|
|
12
12
|
private describes;
|
|
13
13
|
private currentSceneId;
|
|
14
14
|
/**
|
|
15
|
-
* @param
|
|
15
|
+
* @param serenity - The Serenity instance
|
|
16
|
+
* @param requirementsHierarchy - The requirements hierarchy for tagging
|
|
16
17
|
*/
|
|
17
18
|
constructor(serenity: Serenity, requirementsHierachy: RequirementsHierarchy);
|
|
18
19
|
jasmineStarted(info: JasmineStartedInfo): void;
|
|
@@ -26,6 +27,15 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
|
|
|
26
27
|
* @param {DomainEvent[]} events
|
|
27
28
|
*/
|
|
28
29
|
private emit;
|
|
30
|
+
/**
|
|
31
|
+
* Extracts location information from a spec or suite result.
|
|
32
|
+
* Supports both Jasmine 5.x and 6.x (location object from monkey-patching).
|
|
33
|
+
*
|
|
34
|
+
* @private
|
|
35
|
+
* @param result - The spec or suite result
|
|
36
|
+
* @returns Location object with path, line, and column
|
|
37
|
+
*/
|
|
38
|
+
private locationOf;
|
|
29
39
|
/**
|
|
30
40
|
* @private
|
|
31
41
|
* @param {SpecResult} spec
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,
|
|
1
|
+
{"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,EAElB,UAAU,EACV,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IAY1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAXzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IACzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,cAAc,CAA4B;IAElD;;;OAGG;gBAEkB,QAAQ,EAAE,QAAQ,EAClB,oBAAoB,EAAE,qBAAqB;IAIhE,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMvC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMpC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAiBrC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D3C,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAuBlB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,4DAA4D;IAMpE,OAAO,CAAC,kCAAkC;IAI1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;CAS/B"}
|