nx 22.0.0-canary.20251001-e28a97a → 22.0.0-canary.20251006-0149fac

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 (67) hide show
  1. package/migrations.json +5 -0
  2. package/package.json +12 -12
  3. package/project.json +2 -1
  4. package/schemas/nx-schema.json +339 -246
  5. package/schemas/project-schema.json +72 -12
  6. package/src/ai/utils.d.ts +6 -5
  7. package/src/ai/utils.d.ts.map +1 -1
  8. package/src/ai/utils.js +14 -13
  9. package/src/command-line/configure-ai-agents/configure-ai-agents.d.ts.map +1 -1
  10. package/src/command-line/configure-ai-agents/configure-ai-agents.js +79 -74
  11. package/src/command-line/release/changelog.d.ts.map +1 -1
  12. package/src/command-line/release/changelog.js +1 -3
  13. package/src/command-line/release/command-object.d.ts +0 -6
  14. package/src/command-line/release/command-object.d.ts.map +1 -1
  15. package/src/command-line/release/config/config.d.ts +1 -1
  16. package/src/command-line/release/config/config.d.ts.map +1 -1
  17. package/src/command-line/release/config/config.js +33 -126
  18. package/src/command-line/release/plan-check.d.ts.map +1 -1
  19. package/src/command-line/release/plan-check.js +1 -3
  20. package/src/command-line/release/plan.d.ts.map +1 -1
  21. package/src/command-line/release/plan.js +1 -3
  22. package/src/command-line/release/publish.d.ts.map +1 -1
  23. package/src/command-line/release/publish.js +1 -3
  24. package/src/command-line/release/release.d.ts.map +1 -1
  25. package/src/command-line/release/release.js +1 -3
  26. package/src/command-line/release/utils/resolve-semver-specifier.d.ts +2 -1
  27. package/src/command-line/release/utils/resolve-semver-specifier.d.ts.map +1 -1
  28. package/src/command-line/release/utils/semver.d.ts +15 -9
  29. package/src/command-line/release/utils/semver.d.ts.map +1 -1
  30. package/src/command-line/release/utils/semver.js +30 -24
  31. package/src/command-line/release/utils/shared.d.ts +4 -1
  32. package/src/command-line/release/utils/shared.d.ts.map +1 -1
  33. package/src/command-line/release/utils/shared.js +33 -11
  34. package/src/command-line/release/utils/test/test-utils.d.ts +20 -0
  35. package/src/command-line/release/utils/test/test-utils.d.ts.map +1 -0
  36. package/src/command-line/release/utils/test/test-utils.js +24 -0
  37. package/src/command-line/release/version/derive-specifier-from-conventional-commits.d.ts.map +1 -1
  38. package/src/command-line/release/version/derive-specifier-from-conventional-commits.js +10 -1
  39. package/src/command-line/release/version/test-utils.d.ts.map +1 -1
  40. package/src/command-line/release/version/test-utils.js +0 -4
  41. package/src/command-line/release/version.d.ts.map +1 -1
  42. package/src/command-line/release/version.js +1 -8
  43. package/src/config/nx-json.d.ts +2 -31
  44. package/src/config/nx-json.d.ts.map +1 -1
  45. package/src/config/workspace-json-project-json.d.ts +2 -2
  46. package/src/config/workspace-json-project-json.d.ts.map +1 -1
  47. package/src/core/graph/main.js +1 -1
  48. package/src/core/graph/styles.js +1 -1
  49. package/src/migrations/update-21-0-0/release-changelog-config-changes.d.ts.map +1 -1
  50. package/src/migrations/update-21-0-0/release-version-config-changes.d.ts.map +1 -1
  51. package/src/migrations/update-21-0-0/release-version-config-changes.js +5 -15
  52. package/src/migrations/update-22-0-0/release-version-config-changes.d.ts +3 -0
  53. package/src/migrations/update-22-0-0/release-version-config-changes.d.ts.map +1 -0
  54. package/src/migrations/update-22-0-0/release-version-config-changes.js +101 -0
  55. package/src/native/index.d.ts +2 -2
  56. package/src/native/nx.wasm32-wasi.wasm +0 -0
  57. package/src/utils/nx-console-prompt.d.ts.map +1 -1
  58. package/src/utils/nx-console-prompt.js +4 -1
  59. package/src/command-line/release/config/use-legacy-versioning.d.ts +0 -3
  60. package/src/command-line/release/config/use-legacy-versioning.d.ts.map +0 -1
  61. package/src/command-line/release/config/use-legacy-versioning.js +0 -9
  62. package/src/command-line/release/utils/batch-projects-by-generator-config.d.ts +0 -8
  63. package/src/command-line/release/utils/batch-projects-by-generator-config.d.ts.map +0 -1
  64. package/src/command-line/release/utils/batch-projects-by-generator-config.js +0 -39
  65. package/src/command-line/release/version-legacy.d.ts +0 -47
  66. package/src/command-line/release/version-legacy.d.ts.map +0 -1
  67. package/src/command-line/release/version-legacy.js +0 -453
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_nx_graph_client=self.webpackChunk_nx_graph_client||[]).push([[869],{2058:()=>{}},e=>{var n;n=2058,e(e.s=n)}]);
1
+ "use strict";(self.webpackChunk_nx_graph_client=self.webpackChunk_nx_graph_client||[]).push([[869],{7337:()=>{}},e=>{var n;n=7337,e(e.s=n)}]);
@@ -1 +1 @@
1
- {"version":3,"file":"release-changelog-config-changes.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/migrations/update-21-0-0/release-changelog-config-changes.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAG7C,wBAA8B,MAAM,CAAC,IAAI,EAAE,IAAI,iBA2C9C"}
1
+ {"version":3,"file":"release-changelog-config-changes.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/migrations/update-21-0-0/release-changelog-config-changes.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAG7C,wBAA8B,MAAM,CAAC,IAAI,EAAE,IAAI,iBA2C9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"release-version-config-changes.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/migrations/update-21-0-0/release-version-config-changes.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAKlD,wBAA8B,MAAM,CAAC,IAAI,EAAE,IAAI,iBAyH9C"}
1
+ {"version":3,"file":"release-version-config-changes.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/migrations/update-21-0-0/release-version-config-changes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAKlD,wBAA8B,MAAM,CAAC,IAAI,EAAE,IAAI,iBAoG9C"}
@@ -11,18 +11,8 @@ async function update(tree) {
11
11
  if (!nxJson) {
12
12
  return;
13
13
  }
14
- // If the user has explicitly set the useLegacyVersioning property to true, do nothing
15
- if (nxJson.release?.version?.useLegacyVersioning === true) {
16
- return;
17
- }
14
+ // Note: Any's have been used as LegacyVersioning Options have been removed
18
15
  function updateProperties(versionConfig) {
19
- // If the user is using a generator other than the @nx/js one, set useLegacyVersioning to true and nothing else
20
- if ('generator' in versionConfig &&
21
- versionConfig.generator !== '@nx/js:release-version') {
22
- versionConfig.useLegacyVersioning =
23
- true;
24
- return;
25
- }
26
16
  // These options used to live inside of generatorOptions, but are now like for like top-level nx core options
27
17
  const coreOptionsToPromoteToTopLevel = [
28
18
  'specifierSource',
@@ -48,8 +38,9 @@ async function update(tree) {
48
38
  }
49
39
  // packageRoot has been replaced by manifestRootsToUpdate
50
40
  if (typeof versionConfig.generatorOptions.packageRoot === 'string') {
51
- versionConfig.manifestRootsToUpdate =
52
- [versionConfig.generatorOptions.packageRoot];
41
+ versionConfig.manifestRootsToUpdate = [
42
+ versionConfig.generatorOptions.packageRoot,
43
+ ];
53
44
  delete versionConfig.generatorOptions.packageRoot;
54
45
  }
55
46
  // These options have been moved to versionActionsOptions
@@ -61,8 +52,7 @@ async function update(tree) {
61
52
  for (const option of versionActionsOptions) {
62
53
  if (versionConfig.generatorOptions[option]) {
63
54
  versionConfig.versionActionsOptions =
64
- versionConfig
65
- .versionActionsOptions || {};
55
+ versionConfig.versionActionsOptions || {};
66
56
  versionConfig.versionActionsOptions[option] =
67
57
  versionConfig.generatorOptions[option];
68
58
  delete versionConfig.generatorOptions[option];
@@ -0,0 +1,3 @@
1
+ import type { Tree } from '../../generators/tree';
2
+ export default function update(tree: Tree): Promise<void>;
3
+ //# sourceMappingURL=release-version-config-changes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-version-config-changes.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/migrations/update-22-0-0/release-version-config-changes.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAKlD,wBAA8B,MAAM,CAAC,IAAI,EAAE,IAAI,iBA0G9C"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = update;
4
+ const node_path_1 = require("node:path");
5
+ const format_changed_files_with_prettier_if_available_1 = require("../../generators/internal-utils/format-changed-files-with-prettier-if-available");
6
+ const json_1 = require("../../generators/utils/json");
7
+ const nx_json_1 = require("../../generators/utils/nx-json");
8
+ const project_configuration_1 = require("../../generators/utils/project-configuration");
9
+ async function update(tree) {
10
+ const nxJson = (0, nx_json_1.readNxJson)(tree);
11
+ if (!nxJson) {
12
+ return;
13
+ }
14
+ // Note: Any's have been used as LegacyVersioning Options have been removed
15
+ function updateProperties(versionConfig) {
16
+ // These options used to live inside of generatorOptions, but are now like for like top-level nx core options
17
+ const coreOptionsToPromoteToTopLevel = [
18
+ 'specifierSource',
19
+ 'currentVersionResolver',
20
+ 'currentVersionResolverMetadata',
21
+ 'fallbackCurrentVersionResolver',
22
+ 'versionPrefix',
23
+ 'updateDependents',
24
+ 'logUnchangedProjects',
25
+ ];
26
+ if ('generatorOptions' in versionConfig) {
27
+ for (const option of coreOptionsToPromoteToTopLevel) {
28
+ if (versionConfig.generatorOptions[option]) {
29
+ versionConfig[option] = versionConfig.generatorOptions[option];
30
+ }
31
+ }
32
+ // preserveLocalDependencyProtocols has changed to true by default, so remove it if explicitly true, otherwise set to false explicitly
33
+ if (versionConfig.generatorOptions.preserveLocalDependencyProtocols) {
34
+ delete versionConfig.generatorOptions.preserveLocalDependencyProtocols;
35
+ }
36
+ else {
37
+ versionConfig.preserveLocalDependencyProtocols = false;
38
+ }
39
+ // packageRoot has been replaced by manifestRootsToUpdate
40
+ if (typeof versionConfig.generatorOptions.packageRoot === 'string') {
41
+ versionConfig.manifestRootsToUpdate =
42
+ [versionConfig.generatorOptions.packageRoot];
43
+ delete versionConfig.generatorOptions.packageRoot;
44
+ }
45
+ // These options have been moved to versionActionsOptions
46
+ const versionActionsOptions = [
47
+ 'skipLockFileUpdate',
48
+ 'installArgs',
49
+ 'installIgnoreScripts',
50
+ ];
51
+ for (const option of versionActionsOptions) {
52
+ if (versionConfig.generatorOptions[option]) {
53
+ versionConfig.versionActionsOptions =
54
+ versionConfig
55
+ .versionActionsOptions || {};
56
+ versionConfig.versionActionsOptions[option] =
57
+ versionConfig.generatorOptions[option];
58
+ delete versionConfig.generatorOptions[option];
59
+ }
60
+ }
61
+ delete versionConfig.generatorOptions;
62
+ }
63
+ }
64
+ // nx.json
65
+ if (nxJson.release) {
66
+ // Top level version config
67
+ if (nxJson.release.version) {
68
+ updateProperties(nxJson.release.version);
69
+ }
70
+ // Version config for each group
71
+ if (nxJson.release.groups) {
72
+ for (const group of Object.values(nxJson.release.groups)) {
73
+ if (group.version) {
74
+ updateProperties(group.version);
75
+ }
76
+ }
77
+ }
78
+ }
79
+ // project.json or package.json
80
+ const projects = (0, project_configuration_1.getProjects)(tree);
81
+ for (const project of projects.values()) {
82
+ const projectJsonPath = (0, node_path_1.join)(project.root, 'project.json');
83
+ if (tree.exists(projectJsonPath)) {
84
+ const projectJson = (0, json_1.readJson)(tree, projectJsonPath);
85
+ if (projectJson.release?.version) {
86
+ updateProperties(projectJson.release.version);
87
+ (0, json_1.writeJson)(tree, projectJsonPath, projectJson);
88
+ }
89
+ }
90
+ const packageJsonPath = (0, node_path_1.join)(project.root, 'package.json');
91
+ if (tree.exists(packageJsonPath)) {
92
+ const packageJson = (0, json_1.readJson)(tree, packageJsonPath);
93
+ if (packageJson.nx?.release?.version) {
94
+ updateProperties(packageJson.nx.release.version);
95
+ (0, json_1.writeJson)(tree, packageJsonPath, packageJson);
96
+ }
97
+ }
98
+ }
99
+ (0, nx_json_1.updateNxJson)(tree, nxJson);
100
+ await (0, format_changed_files_with_prettier_if_available_1.formatChangedFilesWithPrettierIfAvailable)(tree);
101
+ }
@@ -251,9 +251,9 @@ export interface InputsInput {
251
251
  projects?: string | Array<string>
252
252
  }
253
253
 
254
- export declare export declare function installNxConsole(): void
254
+ export declare export declare function installNxConsole(): boolean
255
255
 
256
- export declare export declare function installNxConsoleForEditor(editor: SupportedEditor): void
256
+ export declare export declare function installNxConsoleForEditor(editor: SupportedEditor): boolean
257
257
 
258
258
  export const IS_WASM: boolean
259
259
 
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"nx-console-prompt.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/utils/nx-console-prompt.ts"],"names":[],"mappings":"AASA,wBAAsB,wBAAwB,kBA4B7C"}
1
+ {"version":3,"file":"nx-console-prompt.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/utils/nx-console-prompt.ts"],"names":[],"mappings":"AASA,wBAAsB,wBAAwB,kBA+B7C"}
@@ -26,7 +26,10 @@ async function ensureNxConsoleInstalled() {
26
26
  preferences.setAutoInstallPreference(setting);
27
27
  }
28
28
  if (setting) {
29
- (0, native_1.installNxConsole)();
29
+ const installed = (0, native_1.installNxConsole)();
30
+ if (installed) {
31
+ output_1.output.log({ title: 'Successfully installed Nx Console!' });
32
+ }
30
33
  }
31
34
  }
32
35
  /**
@@ -1,3 +0,0 @@
1
- import type { NxJsonConfiguration } from '../../../config/nx-json';
2
- export declare function shouldUseLegacyVersioning(releaseConfig: NxJsonConfiguration['release'] | undefined): boolean;
3
- //# sourceMappingURL=use-legacy-versioning.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-legacy-versioning.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/config/use-legacy-versioning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,mBAAmB,CAAC,SAAS,CAAC,GAAG,SAAS,WAK1D"}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.shouldUseLegacyVersioning = shouldUseLegacyVersioning;
4
- // TODO(v22): remove this function and entire concept of legacy versioning in v22
5
- function shouldUseLegacyVersioning(releaseConfig) {
6
- return process.env.NX_INTERNAL_USE_LEGACY_VERSIONING === 'true'
7
- ? true
8
- : releaseConfig?.version?.useLegacyVersioning ?? false;
9
- }
@@ -1,8 +0,0 @@
1
- import { ProjectGraph } from '../../../config/project-graph';
2
- import { ReleaseGroupWithName } from '../config/filter-release-groups';
3
- /**
4
- * To be most efficient with our invocations of runVersionOnProjects, we want to batch projects by their generator and generator options
5
- * within any given release group.
6
- */
7
- export declare function batchProjectsByGeneratorConfig(projectGraph: ProjectGraph, releaseGroup: ReleaseGroupWithName, projectNamesToBatch: string[]): Map<string, string[]>;
8
- //# sourceMappingURL=batch-projects-by-generator-config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"batch-projects-by-generator-config.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/utils/batch-projects-by-generator-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,oBAAoB,EAClC,mBAAmB,EAAE,MAAM,EAAE,yBAoC9B"}
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.batchProjectsByGeneratorConfig = batchProjectsByGeneratorConfig;
4
- const json_diff_1 = require("../../../utils/json-diff");
5
- /**
6
- * To be most efficient with our invocations of runVersionOnProjects, we want to batch projects by their generator and generator options
7
- * within any given release group.
8
- */
9
- function batchProjectsByGeneratorConfig(projectGraph, releaseGroup, projectNamesToBatch) {
10
- const configBatches = new Map();
11
- for (const projectName of projectNamesToBatch) {
12
- const project = projectGraph.nodes[projectName];
13
- const generator = project.data.release?.version
14
- ?.generator ||
15
- releaseGroup.version.generator;
16
- const generatorOptions = {
17
- ...releaseGroup.version
18
- .generatorOptions,
19
- ...project.data.release?.version
20
- ?.generatorOptions,
21
- };
22
- let found = false;
23
- for (const [key, projects] of configBatches) {
24
- const [existingGenerator, existingOptions] = JSON.parse(key);
25
- if (generator === existingGenerator &&
26
- (0, json_diff_1.deepEquals)(generatorOptions, existingOptions)) {
27
- projects.push(projectName);
28
- found = true;
29
- break;
30
- }
31
- }
32
- if (!found) {
33
- configBatches.set(JSON.stringify([generator, generatorOptions]), [
34
- projectName,
35
- ]);
36
- }
37
- }
38
- return configBatches;
39
- }
@@ -1,47 +0,0 @@
1
- import { NxJsonConfiguration, NxReleaseConfiguration } from '../../config/nx-json';
2
- import { ProjectGraph, ProjectGraphProjectNode } from '../../config/project-graph';
3
- import { VersionOptions } from './command-object';
4
- import { NxReleaseConfig } from './config/config';
5
- import { ReleaseGroupWithName } from './config/filter-release-groups';
6
- import type { ReleaseVersionGeneratorResult, VersionData } from './utils/shared-legacy';
7
- import { NxReleaseVersionResult } from './version';
8
- export { deriveNewSemverVersion } from './utils/semver';
9
- export type { ReleaseVersionGeneratorResult, VersionData };
10
- export declare const validReleaseVersionPrefixes: readonly ["auto", "", "~", "^", "="];
11
- export interface ReleaseVersionGeneratorSchema {
12
- projects: ProjectGraphProjectNode[];
13
- releaseGroup: ReleaseGroupWithName;
14
- projectGraph: ProjectGraph;
15
- specifier?: string;
16
- specifierSource?: 'prompt' | 'conventional-commits' | 'version-plans';
17
- preid?: string;
18
- packageRoot?: string;
19
- currentVersionResolver?: 'registry' | 'disk' | 'git-tag';
20
- currentVersionResolverMetadata?: Record<string, unknown>;
21
- fallbackCurrentVersionResolver?: 'disk';
22
- firstRelease?: boolean;
23
- versionPrefix?: (typeof validReleaseVersionPrefixes)[number];
24
- skipLockFileUpdate?: boolean;
25
- installArgs?: string;
26
- installIgnoreScripts?: boolean;
27
- conventionalCommitsConfig?: NxReleaseConfig['conventionalCommits'];
28
- deleteVersionPlans?: boolean;
29
- /**
30
- * 'auto' is the default and will cause dependents to be updated (a patch version bump) when a dependency is versioned.
31
- * This is only applicable to independently released projects. 'never' will cause dependents to not be updated.
32
- */
33
- updateDependents?: 'auto' | 'never';
34
- /**
35
- * Whether or not to completely omit project logs when that project has no applicable changes. This can be useful for
36
- * large monorepos which have a large number of projects, especially when only a subset are released together.
37
- */
38
- logUnchangedProjects?: boolean;
39
- /**
40
- * Whether or not to keep local dependency protocols (e.g. file:, workspace:) when updating dependencies in
41
- * package.json files. This is `false` by default as not all package managers support publishing with these protocols
42
- * still present in the package.json.
43
- */
44
- preserveLocalDependencyProtocols?: boolean;
45
- }
46
- export declare function releaseVersionLegacy(projectGraph: ProjectGraph, args: VersionOptions, nxJson: NxJsonConfiguration, nxReleaseConfig: NxReleaseConfig, userProvidedReleaseConfig: NxReleaseConfiguration): Promise<NxReleaseVersionResult>;
47
- //# sourceMappingURL=version-legacy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version-legacy.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/version-legacy.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,YAAY,EACZ,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AASpC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACL,oBAAoB,EAErB,MAAM,gCAAgC,CAAC;AAexC,OAAO,KAAK,EACV,6BAA6B,EAC7B,WAAW,EACZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAGnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,6BAA6B,EAAE,WAAW,EAAE,CAAC;AAE3D,eAAO,MAAM,2BAA2B,sCAAuC,CAAC;AAEhF,MAAM,WAAW,6BAA6B;IAE5C,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,YAAY,EAAE,oBAAoB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,QAAQ,GAAG,sBAAsB,GAAG,eAAe,CAAC;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;IACzD,8BAA8B,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzD,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,aAAa,CAAC,EAAE,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;IAC7D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,yBAAyB,CAAC,EAAE,eAAe,CAAC,qBAAqB,CAAC,CAAC;IACnE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;OAIG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;CAC5C;AAID,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,mBAAmB,EAC3B,eAAe,EAAE,eAAe,EAChC,yBAAyB,EAAE,sBAAsB,GAChD,OAAO,CAAC,sBAAsB,CAAC,CAoZjC"}