@o3r/testing 14.1.0-prerelease.9 → 14.1.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +45 -45
- package/schematics/ng-add/jest/index.d.ts +6 -1
- package/schematics/ng-add/jest/index.d.ts.map +1 -1
- package/schematics/ng-add/jest/index.js +37 -7
- package/schematics/ng-add/jest/index.js.map +1 -1
- package/schematics/ng-add/jest/templates/workspace/jest.config.js.template +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@o3r/testing",
|
|
3
|
-
"version": "14.1.0-
|
|
3
|
+
"version": "14.1.0-rc.1",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -99,10 +99,10 @@
|
|
|
99
99
|
"@material/slider": "^14.0.0",
|
|
100
100
|
"@ngrx/store": "^21.0.0",
|
|
101
101
|
"@ngx-translate/core": "^15.0.0 || ~16.0.4",
|
|
102
|
-
"@o3r/core": "~14.1.0-
|
|
103
|
-
"@o3r/eslint-config": "~14.1.0-
|
|
104
|
-
"@o3r/localization": "~14.1.0-
|
|
105
|
-
"@o3r/schematics": "~14.1.0-
|
|
102
|
+
"@o3r/core": "~14.1.0-rc.1",
|
|
103
|
+
"@o3r/eslint-config": "~14.1.0-rc.1",
|
|
104
|
+
"@o3r/localization": "~14.1.0-rc.1",
|
|
105
|
+
"@o3r/schematics": "~14.1.0-rc.1",
|
|
106
106
|
"@playwright/test": "^1.49.0",
|
|
107
107
|
"@schematics/angular": "^21.0.0",
|
|
108
108
|
"eslint": "~9.39.0",
|
|
@@ -170,23 +170,23 @@
|
|
|
170
170
|
}
|
|
171
171
|
},
|
|
172
172
|
"dependencies": {
|
|
173
|
-
"@o3r/schematics": "~14.1.0-
|
|
174
|
-
"esbuild": "~0.
|
|
173
|
+
"@o3r/schematics": "~14.1.0-rc.1",
|
|
174
|
+
"esbuild": "~0.27.0",
|
|
175
175
|
"tslib": "^2.6.2"
|
|
176
176
|
},
|
|
177
177
|
"devDependencies": {
|
|
178
178
|
"@amadeus-it-group/kassette": "^1.7.0",
|
|
179
|
-
"@angular-devkit/build-angular": "~21.
|
|
180
|
-
"@angular-devkit/core": "~21.
|
|
181
|
-
"@angular-devkit/schematics": "~21.
|
|
182
|
-
"@angular/cli": "~21.
|
|
183
|
-
"@angular/common": "~21.
|
|
184
|
-
"@angular/compiler": "~21.
|
|
185
|
-
"@angular/compiler-cli": "~21.
|
|
186
|
-
"@angular/core": "~21.
|
|
187
|
-
"@angular/forms": "~21.
|
|
188
|
-
"@angular/platform-browser": "~21.
|
|
189
|
-
"@angular/platform-browser-dynamic": "~21.
|
|
179
|
+
"@angular-devkit/build-angular": "~21.2.0",
|
|
180
|
+
"@angular-devkit/core": "~21.2.0",
|
|
181
|
+
"@angular-devkit/schematics": "~21.2.0",
|
|
182
|
+
"@angular/cli": "~21.2.0",
|
|
183
|
+
"@angular/common": "~21.2.4",
|
|
184
|
+
"@angular/compiler": "~21.2.4",
|
|
185
|
+
"@angular/compiler-cli": "~21.2.4",
|
|
186
|
+
"@angular/core": "~21.2.4",
|
|
187
|
+
"@angular/forms": "~21.2.4",
|
|
188
|
+
"@angular/platform-browser": "~21.2.4",
|
|
189
|
+
"@angular/platform-browser-dynamic": "~21.2.4",
|
|
190
190
|
"@babel/core": "~7.29.0",
|
|
191
191
|
"@babel/preset-typescript": "~7.28.0",
|
|
192
192
|
"@compodoc/compodoc": "^1.1.32",
|
|
@@ -194,24 +194,24 @@
|
|
|
194
194
|
"@material/slider": "^14.0.0",
|
|
195
195
|
"@ngrx/store": "~21.0.0",
|
|
196
196
|
"@ngx-translate/core": "~16.0.4",
|
|
197
|
-
"@nx/eslint-plugin": "~22.
|
|
198
|
-
"@nx/jest": "~22.
|
|
199
|
-
"@o3r/build-helpers": "~14.1.0-
|
|
200
|
-
"@o3r/core": "~14.1.0-
|
|
201
|
-
"@o3r/eslint-plugin": "~14.1.0-
|
|
202
|
-
"@o3r/localization": "~14.1.0-
|
|
203
|
-
"@o3r/test-helpers": "~14.1.0-
|
|
197
|
+
"@nx/eslint-plugin": "~22.5.3",
|
|
198
|
+
"@nx/jest": "~22.5.3",
|
|
199
|
+
"@o3r/build-helpers": "~14.1.0-rc.1",
|
|
200
|
+
"@o3r/core": "~14.1.0-rc.1",
|
|
201
|
+
"@o3r/eslint-plugin": "~14.1.0-rc.1",
|
|
202
|
+
"@o3r/localization": "~14.1.0-rc.1",
|
|
203
|
+
"@o3r/test-helpers": "~14.1.0-rc.1",
|
|
204
204
|
"@playwright/test": "~1.58.0",
|
|
205
|
-
"@schematics/angular": "~21.
|
|
206
|
-
"@standard-schema/spec": "~1.
|
|
207
|
-
"@stylistic/eslint-plugin": "~5.
|
|
205
|
+
"@schematics/angular": "~21.2.0",
|
|
206
|
+
"@standard-schema/spec": "~1.1.0",
|
|
207
|
+
"@stylistic/eslint-plugin": "~5.10.0",
|
|
208
208
|
"@swc/helpers": "~0.5.17",
|
|
209
209
|
"@types/jest": "~30.0.0",
|
|
210
|
-
"@types/node": "~24.
|
|
210
|
+
"@types/node": "~24.12.0",
|
|
211
211
|
"@types/pixelmatch": "^5.2.3",
|
|
212
212
|
"@types/pngjs": "^6.0.0",
|
|
213
|
-
"@typescript-eslint/parser": "~8.
|
|
214
|
-
"angular-eslint": "~21.
|
|
213
|
+
"@typescript-eslint/parser": "~8.57.0",
|
|
214
|
+
"angular-eslint": "~21.3.0",
|
|
215
215
|
"concurrently": "^9.1.0",
|
|
216
216
|
"cpy-cli": "^6.0.0",
|
|
217
217
|
"eslint": "~9.39.0",
|
|
@@ -219,21 +219,21 @@
|
|
|
219
219
|
"eslint-import-resolver-typescript": "~4.4.0",
|
|
220
220
|
"eslint-plugin-import": "~2.32.0",
|
|
221
221
|
"eslint-plugin-import-newlines": "~1.4.0",
|
|
222
|
-
"eslint-plugin-jest": "~29.
|
|
222
|
+
"eslint-plugin-jest": "~29.15.0",
|
|
223
223
|
"eslint-plugin-jsdoc": "~61.7.0",
|
|
224
224
|
"eslint-plugin-prefer-arrow": "~1.2.3",
|
|
225
225
|
"eslint-plugin-unicorn": "~62.0.0",
|
|
226
|
-
"eslint-plugin-unused-imports": "~4.
|
|
226
|
+
"eslint-plugin-unused-imports": "~4.4.0",
|
|
227
227
|
"globals": "^16.0.0",
|
|
228
228
|
"isomorphic-fetch": "~3.0.0",
|
|
229
|
-
"jest": "~30.
|
|
230
|
-
"jest-environment-jsdom": "~30.
|
|
229
|
+
"jest": "~30.3.0",
|
|
230
|
+
"jest-environment-jsdom": "~30.3.0",
|
|
231
231
|
"jest-junit": "~16.0.0",
|
|
232
|
-
"jest-preset-angular": "~16.
|
|
233
|
-
"jest-util": "~30.
|
|
234
|
-
"jsdom": "~27.
|
|
232
|
+
"jest-preset-angular": "~16.1.0",
|
|
233
|
+
"jest-util": "~30.3.0",
|
|
234
|
+
"jsdom": "~27.4.0",
|
|
235
235
|
"jsonc-eslint-parser": "~2.4.0",
|
|
236
|
-
"nx": "~22.
|
|
236
|
+
"nx": "~22.5.3",
|
|
237
237
|
"pixelmatch": "^7.0.0",
|
|
238
238
|
"pngjs": "^7.0.0",
|
|
239
239
|
"rxjs": "^7.8.1",
|
|
@@ -242,15 +242,15 @@
|
|
|
242
242
|
"ts-jest": "~29.4.0",
|
|
243
243
|
"type-fest": "^5.3.1",
|
|
244
244
|
"typescript": "~5.9.2",
|
|
245
|
-
"typescript-eslint": "~8.
|
|
245
|
+
"typescript-eslint": "~8.57.0"
|
|
246
246
|
},
|
|
247
247
|
"generatorDependencies": {
|
|
248
248
|
"@angular-builders/jest": "~21.0.0-beta.1",
|
|
249
249
|
"@types/jest": "~30.0.0",
|
|
250
|
-
"jest": "~30.
|
|
251
|
-
"jest-environment-jsdom": "~30.
|
|
252
|
-
"jest-preset-angular": "~16.
|
|
253
|
-
"jest-util": "~30.
|
|
250
|
+
"jest": "~30.3.0",
|
|
251
|
+
"jest-environment-jsdom": "~30.3.0",
|
|
252
|
+
"jest-preset-angular": "~16.1.0",
|
|
253
|
+
"jest-util": "~30.3.0",
|
|
254
254
|
"rimraf": "^6.0.1",
|
|
255
255
|
"ts-jest": "~29.4.0",
|
|
256
256
|
"uuid": "~13.0.0"
|
|
@@ -260,7 +260,7 @@
|
|
|
260
260
|
"migrations": "./migration.json"
|
|
261
261
|
},
|
|
262
262
|
"engines": {
|
|
263
|
-
"node": "^
|
|
263
|
+
"node": "^22.17.0 || ^24.0.0"
|
|
264
264
|
},
|
|
265
265
|
"contributors": [
|
|
266
266
|
{
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import { Rule } from '@angular-devkit/schematics';
|
|
1
|
+
import { Rule, Tree } from '@angular-devkit/schematics';
|
|
2
2
|
import type { NgAddSchematicsSchema } from '../../../schematics/ng-add/schema';
|
|
3
3
|
/**
|
|
4
4
|
* List of dependencies needed to run jest
|
|
5
5
|
* @param eslintDependencies
|
|
6
6
|
*/
|
|
7
7
|
export declare const jestDependencies: (eslintDependencies: boolean) => string[];
|
|
8
|
+
/**
|
|
9
|
+
* Set jest files and script in the generated library.
|
|
10
|
+
* @param projectName
|
|
11
|
+
*/
|
|
12
|
+
export declare function setUpJestForAngularJson(projectName: string): (tree: Tree) => import("@angular-devkit/schematics/src/tree/interface").Tree;
|
|
8
13
|
/**
|
|
9
14
|
* Setup jest as recommended
|
|
10
15
|
* @param options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/jest/index.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/jest/index.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,IAAI,EAGJ,IAAI,EAEL,MAAM,4BAA4B,CAAC;AAQpC,OAAO,KAAK,EACV,qBAAqB,EACtB,MAAM,mCAAmC,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,oBAAoB,OAAO,aAS3D,CAAC;AAiBF;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,IACjD,MAAM,IAAI,kEAkBnB;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAyC9D"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.jestDependencies = void 0;
|
|
4
|
+
exports.setUpJestForAngularJson = setUpJestForAngularJson;
|
|
4
5
|
exports.setupJest = setupJest;
|
|
5
6
|
const path = require("node:path");
|
|
6
7
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
@@ -23,15 +24,40 @@ exports.jestDependencies = jestDependencies;
|
|
|
23
24
|
/**
|
|
24
25
|
* Run jest on 'npm/yarn run test'
|
|
25
26
|
* @param workingDirectory
|
|
27
|
+
* @param isAngular
|
|
28
|
+
* @param projectName
|
|
26
29
|
*/
|
|
27
|
-
function setupJestScript(workingDirectory) {
|
|
30
|
+
function setupJestScript(workingDirectory, isAngular, projectName) {
|
|
28
31
|
return (tree) => {
|
|
29
32
|
const packageJsonFile = tree.readJson(`${workingDirectory}/package.json`);
|
|
30
33
|
packageJsonFile.scripts ||= {};
|
|
31
|
-
packageJsonFile.scripts.test = 'jest';
|
|
34
|
+
packageJsonFile.scripts.test = isAngular ? `ng test ${projectName}` : 'jest';
|
|
32
35
|
tree.overwrite(`${workingDirectory}/package.json`, JSON.stringify(packageJsonFile, null, 2));
|
|
33
36
|
};
|
|
34
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Set jest files and script in the generated library.
|
|
40
|
+
* @param projectName
|
|
41
|
+
*/
|
|
42
|
+
function setUpJestForAngularJson(projectName) {
|
|
43
|
+
return (tree) => {
|
|
44
|
+
const angularFile = tree.readJson('/angular.json');
|
|
45
|
+
const project = angularFile.projects[projectName];
|
|
46
|
+
if (project) {
|
|
47
|
+
project.architect ||= {};
|
|
48
|
+
project.architect.test = {
|
|
49
|
+
builder: '@angular-builders/jest:run',
|
|
50
|
+
options: {
|
|
51
|
+
tsConfig: `tsconfig.spec.json`,
|
|
52
|
+
config: `jest.config.js`,
|
|
53
|
+
setupFilesAfterEnv: './testing/setup-jest.ts'
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
tree.overwrite('/angular.json', JSON.stringify(angularFile, null, 2));
|
|
57
|
+
}
|
|
58
|
+
return tree;
|
|
59
|
+
};
|
|
60
|
+
}
|
|
35
61
|
/**
|
|
36
62
|
* Setup jest as recommended
|
|
37
63
|
* @param options
|
|
@@ -44,19 +70,23 @@ function setupJest(options) {
|
|
|
44
70
|
throw new schematics_2.O3rCliError(`Could not find working directory for project ${options.projectName || ''}`);
|
|
45
71
|
}
|
|
46
72
|
const rootRelativePath = path.posix.relative(workingDirectory, tree.root.path.replace(/^\//, './'));
|
|
73
|
+
const isAngularSetup = tree.exists('/angular.json');
|
|
47
74
|
const setupJestInProject = (0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('./jest/templates/project'), [
|
|
48
75
|
(0, schematics_1.template)({
|
|
49
76
|
...options,
|
|
50
77
|
rootRelativePath,
|
|
51
|
-
isAngularSetup
|
|
78
|
+
isAngularSetup
|
|
52
79
|
}),
|
|
53
80
|
(0, schematics_1.move)(workingDirectory),
|
|
54
81
|
(0, schematics_1.renameTemplateFiles)()
|
|
55
82
|
]), schematics_1.MergeStrategy.Overwrite);
|
|
56
|
-
const rules =
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
83
|
+
const rules = options.projectName
|
|
84
|
+
? [
|
|
85
|
+
setupJestScript(workingDirectory, isAngularSetup, options.projectName),
|
|
86
|
+
setupJestInProject,
|
|
87
|
+
setUpJestForAngularJson(options.projectName)
|
|
88
|
+
]
|
|
89
|
+
: [];
|
|
60
90
|
if (tree.exists('/jest.config.js')) {
|
|
61
91
|
context.logger.info('Jest configuration files already exist at the root of the project.');
|
|
62
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/ng-add/jest/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/ng-add/jest/index.ts"],"names":[],"mappings":";;;AA2DA,0DAmBC;AAMD,8BAyCC;AA7HD,kCAAkC;AAClC,2DAYoC;AACpC,gDAGyB;AAQzB;;;GAGG;AACI,MAAM,gBAAgB,GAAG,CAAC,kBAA2B,EAAE,EAAE,CAAC;IAC/D,wBAAwB;IACxB,aAAa;IACb,MAAM;IACN,wBAAwB;IACxB,qBAAqB;IACrB,WAAW;IACX,SAAS;IACT,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;CACpD,CAAC;AATW,QAAA,gBAAgB,oBAS3B;AAEF;;;;;GAKG;AACH,SAAS,eAAe,CAAC,gBAAwB,EAAE,SAAkB,EAAE,WAAmB;IACxF,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,gBAAgB,eAAe,CAAgB,CAAC;QACzF,eAAe,CAAC,OAAO,KAAK,EAAE,CAAC;QAC/B,eAAe,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7E,IAAI,CAAC,SAAS,CAAC,GAAG,gBAAgB,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/F,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,WAAmB;IACzD,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAsB,CAAC;QACxE,MAAM,OAAO,GAAQ,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,SAAS,CAAC,IAAI,GAAG;gBACvB,OAAO,EAAE,4BAA4B;gBACrC,OAAO,EAAE;oBACP,QAAQ,EAAE,oBAAoB;oBAC9B,MAAM,EAAE,gBAAgB;oBACxB,kBAAkB,EAAE,yBAAyB;iBAC9C;aACF,CAAC;YAEF,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,OAA8B;IACtD,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAA,+BAAkB,EAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnH,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,IAAI,IAAI,GAAG,CAAC;QACvD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,wBAAW,CAAC,gDAAgD,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACpG,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACpD,MAAM,kBAAkB,GAAG,IAAA,sBAAS,EAAC,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,0BAA0B,CAAC,EAAE;YAC1E,IAAA,qBAAQ,EAAC;gBACP,GAAG,OAAO;gBACV,gBAAgB;gBAChB,cAAc;aACf,CAAC;YACF,IAAA,iBAAI,EAAC,gBAAgB,CAAC;YACtB,IAAA,gCAAmB,GAAE;SACtB,CAAC,EAAE,0BAAa,CAAC,SAAS,CAAC,CAAC;QAE7B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW;YAC/B,CAAC,CAAC;gBACA,eAAe,CAAC,gBAAgB,EAAE,cAAc,EAAE,OAAO,CAAC,WAAW,CAAC;gBACtE,kBAAkB;gBAClB,uBAAuB,CAAC,OAAO,CAAC,WAAW,CAAC;aAC7C;YACD,CAAC,CAAC,EAAE,CAAC;QAEP,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,4BAA4B,CAAC,EAAE;gBAC5D,IAAA,qBAAQ,EAAC;oBACP,GAAG,OAAO;oBACV,YAAY,EAAE,KAAK,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,YAAY,EAAE,CAAC,CAAC,EAAE;iBACtH,CAAC;gBACF,IAAA,iBAAI,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBACpB,IAAA,gCAAmB,GAAE;aACtB,CAAC,EAAE,0BAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC"}
|