@langri-sha/projen-project 0.35.0 → 0.37.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.json CHANGED
@@ -2,7 +2,203 @@
2
2
  "name": "@langri-sha/projen-project",
3
3
  "entries": [
4
4
  {
5
- "date": "Sat, 10 Oct 2026 15:22:01 GMT",
5
+ "date": "Sun, 11 Oct 2026 09:09:39 GMT",
6
+ "version": "0.37.0",
7
+ "tag": "@langri-sha/projen-project_v0.37.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "filip.dupanovic@gmail.com",
12
+ "package": "@langri-sha/projen-project",
13
+ "commit": "2b755fff55d3516e1add97950e4964138381807b",
14
+ "comment": "Add Project.presetPackages for projects that exempt the preset from pnpm's minimum release age"
15
+ }
16
+ ],
17
+ "patch": [
18
+ {
19
+ "author": "filip.dupanovic@gmail.com",
20
+ "package": "@langri-sha/projen-project",
21
+ "commit": "2b755fff55d3516e1add97950e4964138381807b",
22
+ "comment": "Keep the package manager projen defaults to out of generated manifests, so a newer projen doesn't write its own pnpm version or devEngines into them"
23
+ }
24
+ ]
25
+ }
26
+ },
27
+ {
28
+ "date": "Sun, 11 Oct 2026 02:44:24 GMT",
29
+ "version": "0.36.0",
30
+ "tag": "@langri-sha/projen-project_v0.36.0",
31
+ "comments": {
32
+ "patch": [
33
+ {
34
+ "author": "email not defined",
35
+ "package": "@langri-sha/projen-project",
36
+ "commit": "c500ec0b9f487af7c2bf61b3f39f6ddfa3d3a669",
37
+ "comment": "Update dependency @babel/core to v8.0.7"
38
+ },
39
+ {
40
+ "author": "filip.dupanovic@gmail.com",
41
+ "package": "@langri-sha/projen-project",
42
+ "commit": "c500ec0b9f487af7c2bf61b3f39f6ddfa3d3a669",
43
+ "comment": "Let the projen peer range reach 1.0.0"
44
+ },
45
+ {
46
+ "author": "filip.dupanovic@gmail.com",
47
+ "package": "@langri-sha/projen-project",
48
+ "commit": "c500ec0b9f487af7c2bf61b3f39f6ddfa3d3a669",
49
+ "comment": "Widen the projen peer range to >=0.86.0 <0.101.7"
50
+ }
51
+ ],
52
+ "minor": [
53
+ {
54
+ "author": "filip.dupanovic@gmail.com",
55
+ "package": "@langri-sha/projen-project",
56
+ "commit": "c500ec0b9f487af7c2bf61b3f39f6ddfa3d3a669",
57
+ "comment": "Supply Projen as a development dependency to packages that peer it, and fail synthesis when the peer range excludes the version supplied"
58
+ },
59
+ {
60
+ "author": "beachball",
61
+ "package": "@langri-sha/projen-project",
62
+ "comment": "Bump projen-babel-config to v0.5.19",
63
+ "commit": "not available"
64
+ },
65
+ {
66
+ "author": "beachball",
67
+ "package": "@langri-sha/projen-project",
68
+ "comment": "Bump projen-beachball to v0.5.16",
69
+ "commit": "not available"
70
+ },
71
+ {
72
+ "author": "beachball",
73
+ "package": "@langri-sha/projen-project",
74
+ "comment": "Bump projen-cargo to v0.2.1",
75
+ "commit": "not available"
76
+ },
77
+ {
78
+ "author": "beachball",
79
+ "package": "@langri-sha/projen-project",
80
+ "comment": "Bump projen-codeowners to v0.5.16",
81
+ "commit": "not available"
82
+ },
83
+ {
84
+ "author": "beachball",
85
+ "package": "@langri-sha/projen-project",
86
+ "comment": "Bump projen-dagger to v0.3.4",
87
+ "commit": "not available"
88
+ },
89
+ {
90
+ "author": "beachball",
91
+ "package": "@langri-sha/projen-project",
92
+ "comment": "Bump projen-editorconfig to v0.6.16",
93
+ "commit": "not available"
94
+ },
95
+ {
96
+ "author": "beachball",
97
+ "package": "@langri-sha/projen-project",
98
+ "comment": "Bump projen-eslint to v0.3.20",
99
+ "commit": "not available"
100
+ },
101
+ {
102
+ "author": "beachball",
103
+ "package": "@langri-sha/projen-project",
104
+ "comment": "Bump projen-husky to v0.3.26",
105
+ "commit": "not available"
106
+ },
107
+ {
108
+ "author": "beachball",
109
+ "package": "@langri-sha/projen-project",
110
+ "comment": "Bump projen-jest-config to v0.4.22",
111
+ "commit": "not available"
112
+ },
113
+ {
114
+ "author": "beachball",
115
+ "package": "@langri-sha/projen-project",
116
+ "comment": "Bump projen-license to v0.3.19",
117
+ "commit": "not available"
118
+ },
119
+ {
120
+ "author": "beachball",
121
+ "package": "@langri-sha/projen-project",
122
+ "comment": "Bump projen-lint-staged to v0.3.21",
123
+ "commit": "not available"
124
+ },
125
+ {
126
+ "author": "beachball",
127
+ "package": "@langri-sha/projen-project",
128
+ "comment": "Bump projen-lint-synthesized to v0.5.21",
129
+ "commit": "not available"
130
+ },
131
+ {
132
+ "author": "beachball",
133
+ "package": "@langri-sha/projen-project",
134
+ "comment": "Bump projen-pnpm-workspace to v0.4.16",
135
+ "commit": "not available"
136
+ },
137
+ {
138
+ "author": "beachball",
139
+ "package": "@langri-sha/projen-project",
140
+ "comment": "Bump projen-prettier to v0.4.21",
141
+ "commit": "not available"
142
+ },
143
+ {
144
+ "author": "beachball",
145
+ "package": "@langri-sha/projen-project",
146
+ "comment": "Bump projen-readme to v0.1.16",
147
+ "commit": "not available"
148
+ },
149
+ {
150
+ "author": "beachball",
151
+ "package": "@langri-sha/projen-project",
152
+ "comment": "Bump projen-renovate to v0.4.28",
153
+ "commit": "not available"
154
+ },
155
+ {
156
+ "author": "beachball",
157
+ "package": "@langri-sha/projen-project",
158
+ "comment": "Bump projen-ruff to v0.1.2",
159
+ "commit": "not available"
160
+ },
161
+ {
162
+ "author": "beachball",
163
+ "package": "@langri-sha/projen-project",
164
+ "comment": "Bump projen-skills to v0.1.2",
165
+ "commit": "not available"
166
+ },
167
+ {
168
+ "author": "beachball",
169
+ "package": "@langri-sha/projen-project",
170
+ "comment": "Bump projen-swcrc to v0.1.29",
171
+ "commit": "not available"
172
+ },
173
+ {
174
+ "author": "beachball",
175
+ "package": "@langri-sha/projen-project",
176
+ "comment": "Bump projen-ty to v0.1.2",
177
+ "commit": "not available"
178
+ },
179
+ {
180
+ "author": "beachball",
181
+ "package": "@langri-sha/projen-project",
182
+ "comment": "Bump projen-typescript-config to v0.5.24",
183
+ "commit": "not available"
184
+ },
185
+ {
186
+ "author": "beachball",
187
+ "package": "@langri-sha/projen-project",
188
+ "comment": "Bump projen-uv to v0.2.1",
189
+ "commit": "not available"
190
+ },
191
+ {
192
+ "author": "beachball",
193
+ "package": "@langri-sha/projen-project",
194
+ "comment": "Bump projen-worktrunk to v0.1.7",
195
+ "commit": "not available"
196
+ }
197
+ ]
198
+ }
199
+ },
200
+ {
201
+ "date": "Sat, 10 Oct 2026 15:22:36 GMT",
6
202
  "version": "0.35.0",
7
203
  "tag": "@langri-sha/projen-project_v0.35.0",
8
204
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,61 @@
1
1
  # Change Log - @langri-sha/projen-project
2
2
 
3
- <!-- This log was last generated on Sat, 10 Oct 2026 15:22:01 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Sun, 11 Oct 2026 09:09:39 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.37.0
8
+
9
+ Sun, 11 Oct 2026 09:09:39 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Add Project.presetPackages for projects that exempt the preset from pnpm's minimum release age (filip.dupanovic@gmail.com)
14
+
15
+ ### Patches
16
+
17
+ - Keep the package manager projen defaults to out of generated manifests, so a newer projen doesn't write its own pnpm version or devEngines into them (filip.dupanovic@gmail.com)
18
+
19
+ ## 0.36.0
20
+
21
+ Sun, 11 Oct 2026 02:44:24 GMT
22
+
23
+ ### Minor changes
24
+
25
+ - Supply Projen as a development dependency to packages that peer it, and fail synthesis when the peer range excludes the version supplied (filip.dupanovic@gmail.com)
26
+ - Bump projen-babel-config to v0.5.19
27
+ - Bump projen-beachball to v0.5.16
28
+ - Bump projen-cargo to v0.2.1
29
+ - Bump projen-codeowners to v0.5.16
30
+ - Bump projen-dagger to v0.3.4
31
+ - Bump projen-editorconfig to v0.6.16
32
+ - Bump projen-eslint to v0.3.20
33
+ - Bump projen-husky to v0.3.26
34
+ - Bump projen-jest-config to v0.4.22
35
+ - Bump projen-license to v0.3.19
36
+ - Bump projen-lint-staged to v0.3.21
37
+ - Bump projen-lint-synthesized to v0.5.21
38
+ - Bump projen-pnpm-workspace to v0.4.16
39
+ - Bump projen-prettier to v0.4.21
40
+ - Bump projen-readme to v0.1.16
41
+ - Bump projen-renovate to v0.4.28
42
+ - Bump projen-ruff to v0.1.2
43
+ - Bump projen-skills to v0.1.2
44
+ - Bump projen-swcrc to v0.1.29
45
+ - Bump projen-ty to v0.1.2
46
+ - Bump projen-typescript-config to v0.5.24
47
+ - Bump projen-uv to v0.2.1
48
+ - Bump projen-worktrunk to v0.1.7
49
+
50
+ ### Patches
51
+
52
+ - Update dependency @babel/core to v8.0.7
53
+ - Let the projen peer range reach 1.0.0 (filip.dupanovic@gmail.com)
54
+ - Widen the projen peer range to >=0.86.0 \<0.101.7 (filip.dupanovic@gmail.com)
55
+
7
56
  ## 0.35.0
8
57
 
9
- Sat, 10 Oct 2026 15:22:01 GMT
58
+ Sat, 10 Oct 2026 15:22:36 GMT
10
59
 
11
60
  ### Minor changes
12
61
 
package/dist/index.d.ts CHANGED
@@ -119,6 +119,21 @@ export interface ProjectOptions extends Omit<BaseProjectOptions, 'renovatebot' |
119
119
  }
120
120
  export declare class Project extends BaseProject {
121
121
  #private;
122
+ /**
123
+ * The preset and the `projen-` components it depends on, for a project that
124
+ * chooses to exempt them from pnpm's `minimumReleaseAge`:
125
+ *
126
+ * ```ts
127
+ * pnpmWorkspace: {
128
+ * minimumReleaseAgeExclude: [...Project.presetPackages],
129
+ * }
130
+ * ```
131
+ *
132
+ * Never applied by default, since what a project trusts past its release age
133
+ * is its own call. Static so that it can be read while the options are being
134
+ * written, before the project exists.
135
+ */
136
+ static get presetPackages(): string[];
122
137
  babel?: Babel;
123
138
  beachball?: Beachball;
124
139
  cargo?: CargoPackage | CargoWorkspace;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
3
3
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
5
  };
6
- var _Project_instances, _a, _Project_ownedDevDeps, _Project_addDefaultDevDeps, _Project_assertSupported, _Project_configureBabel, _Project_configureBeachball, _Project_configureCargo, _Project_configureCodeowners, _Project_configureDagger, _Project_configureEditorConfig, _Project_configureGitAttributes, _Project_configureESLint, _Project_configureHusky, _Project_configureJestConfig, _Project_configureLicense, _Project_configureLintStaged, _Project_configureLintSynthesized, _Project_configureNpmIgnore, _Project_configurePackage, _Project_configurePnpmWorkspace, _Project_configurePrettier, _Project_configureProjenrc, _Project_configureReadme, _Project_configureRenovate, _Project_configureRuff, _Project_configureSkills, _Project_configureSWC, _Project_configureTy, _Project_configureTypeScript, _Project_configureUv, _Project_configureWorktrunk, _Project_defaultPreStart, _Project_populateTypeScriptProjectReferencesFromDependencies;
6
+ var _Project_instances, _a, _Project_ownedDevDeps, _Project_addDefaultDevDeps, _Project_peersUnpinned, _Project_assertPeerCovered, _Project_assertSupported, _Project_configureBabel, _Project_configureBeachball, _Project_configureCargo, _Project_configureCodeowners, _Project_configureDagger, _Project_configureEditorConfig, _Project_configureGitAttributes, _Project_configureESLint, _Project_configureHusky, _Project_configureJestConfig, _Project_configureLicense, _Project_configureLintStaged, _Project_configureLintSynthesized, _Project_configureNpmIgnore, _Project_configurePackage, _Project_configurePnpmWorkspace, _Project_configurePrettier, _Project_configureProjenrc, _Project_configureReadme, _Project_configureRenovate, _Project_configureRuff, _Project_configureSkills, _Project_configureSWC, _Project_configureTy, _Project_configureTypeScript, _Project_configureUv, _Project_configureWorktrunk, _Project_defaultPreStart, _Project_populateTypeScriptProjectReferencesFromDependencies;
7
7
  import { createRequire } from 'node:module';
8
8
  import * as path from 'node:path';
9
9
  import { Project as BaseProject, DependencyType, IgnoreFile, javascript, } from 'projen';
@@ -31,7 +31,7 @@ import { TypeScriptConfig, } from 'projen-typescript-config';
31
31
  import { UvPackage, UvWorkspace } from 'projen-uv';
32
32
  import { Worktrunk, pipeline } from 'projen-worktrunk';
33
33
  import * as R from 'ramda';
34
- import { satisfies, valid } from 'semver';
34
+ import { satisfies, valid, validRange } from 'semver';
35
35
  import { GitAttributesFile } from './lib/gitattributes.js';
36
36
  import { NodePackage, ProjenrcFile } from './lib/index.js';
37
37
  export * from 'projen-typescript-config';
@@ -105,7 +105,41 @@ const RENOVATE_MINIMUM_RELEASE_AGE = '3 days';
105
105
  * to `peerDeps` in `.projenrc.ts`.
106
106
  */
107
107
  const SUPPORTED_VERSIONS = createRequire(import.meta.url)('../package.json').peerDependencies ?? {};
108
+ /**
109
+ * The preset and the `projen-` components it depends on, behind
110
+ * `Project.presetPackages`.
111
+ *
112
+ * Read from `dependencies` rather than restated, so a component added or
113
+ * renamed there reaches every project that opts in, while the prefix keeps
114
+ * third-party dependencies such as `ramda` out.
115
+ */
116
+ const PRESET_PACKAGES = (() => {
117
+ const { name, dependencies = {} } = createRequire(import.meta.url)('../package.json');
118
+ return [
119
+ name,
120
+ ...Object.keys(dependencies)
121
+ .filter((dependency) => dependency.startsWith('projen-'))
122
+ .sort(),
123
+ ];
124
+ })();
108
125
  export class Project extends BaseProject {
126
+ /**
127
+ * The preset and the `projen-` components it depends on, for a project that
128
+ * chooses to exempt them from pnpm's `minimumReleaseAge`:
129
+ *
130
+ * ```ts
131
+ * pnpmWorkspace: {
132
+ * minimumReleaseAgeExclude: [...Project.presetPackages],
133
+ * }
134
+ * ```
135
+ *
136
+ * Never applied by default, since what a project trusts past its release age
137
+ * is its own call. Static so that it can be read while the options are being
138
+ * written, before the project exists.
139
+ */
140
+ static get presetPackages() {
141
+ return [...PRESET_PACKAGES];
142
+ }
109
143
  constructor(options) {
110
144
  super({
111
145
  // Resolved from the options rather than `this.package`, which does not
@@ -236,6 +270,22 @@ _a = Project, _Project_ownedDevDeps = new WeakMap(), _Project_instances = new We
236
270
  __classPrivateFieldGet(this, _Project_ownedDevDeps, "f").add(name);
237
271
  }
238
272
  }
273
+ }, _Project_peersUnpinned = function _Project_peersUnpinned(name, { peerDependencyOptions }) {
274
+ return (peerDependencyOptions?.pinnedDevDependency === false &&
275
+ this.deps.tryGetDependency(name, DependencyType.PEER) !== undefined);
276
+ }, _Project_assertPeerCovered = function _Project_assertPeerCovered(name) {
277
+ const peer = this.deps.tryGetDependency(name, DependencyType.PEER);
278
+ const supplied = __classPrivateFieldGet(this, _Project_ownedDevDeps, "f").has(name)
279
+ ? this.deps.tryGetDependency(name, DependencyType.BUILD)
280
+ : undefined;
281
+ if (!peer?.version ||
282
+ !supplied?.version ||
283
+ !validRange(peer.version) ||
284
+ satisfies(supplied.version, peer.version)) {
285
+ return;
286
+ }
287
+ throw new Error(`${this.name} peers ${name}@${peer.version}, but the ${name}@${supplied.version} this preset supplies for development is outside that range.\n\n` +
288
+ `Declare ${name} in \`package.devDeps\` at a version the range allows, or widen the range to include ${supplied.version}.`);
239
289
  }, _Project_assertSupported = function _Project_assertSupported({ name, type, version: declared }) {
240
290
  const supported = SUPPORTED_VERSIONS[name];
241
291
  if (!declared || !supported || !valid(declared)) {
@@ -258,7 +308,7 @@ _a = Project, _Project_ownedDevDeps = new WeakMap(), _Project_instances = new We
258
308
  },
259
309
  };
260
310
  if (!this.parent) {
261
- __classPrivateFieldGet(this, _Project_instances, "m", _Project_addDefaultDevDeps).call(this, '@babel/core@8.0.6');
311
+ __classPrivateFieldGet(this, _Project_instances, "m", _Project_addDefaultDevDeps).call(this, '@babel/core@8.0.7');
262
312
  }
263
313
  this.babel = new Babel(this, deepMerge(defaults, babel));
264
314
  this.typeScriptConfig?.addFile(this.babel.path);
@@ -476,13 +526,29 @@ _a = Project, _Project_ownedDevDeps = new WeakMap(), _Project_instances = new We
476
526
  return;
477
527
  }
478
528
  const defaults = {
529
+ addPackageManagerToDevEngines: false,
479
530
  entrypoint: 'src/index.ts',
480
531
  packageManager: DEFAULT_PACKAGE_MANAGER,
481
532
  };
482
533
  this.package = new NodePackage(this, deepMerge(defaults, pkg));
534
+ // Projen 0.99.41 and later write their own default pnpm into every
535
+ // manifest, which is not the version a project runs.
536
+ if (this.package.packageManager === javascript.NodePackageManager.PNPM &&
537
+ pkg.pnpmVersion === undefined) {
538
+ this.package.addField('packageManager', undefined);
539
+ }
483
540
  if (!this.parent) {
484
- __classPrivateFieldGet(this, _Project_instances, "m", _Project_addDefaultDevDeps).call(this, '@langri-sha/projen-project@*', 'projen@0.86.5');
541
+ __classPrivateFieldGet(this, _Project_instances, "m", _Project_addDefaultDevDeps).call(this, '@langri-sha/projen-project@*');
542
+ }
543
+ // A root project is loaded by Projen. A subproject only needs a copy of
544
+ // its own when it peers Projen and Projen has been told not to pin one
545
+ // from the peer range, which would otherwise leave it resolving whatever
546
+ // the root, or the package manager's peer installation, happens to
547
+ // provide.
548
+ if (!this.parent || __classPrivateFieldGet(this, _Project_instances, "m", _Project_peersUnpinned).call(this, 'projen', pkg)) {
549
+ __classPrivateFieldGet(this, _Project_instances, "m", _Project_addDefaultDevDeps).call(this, 'projen@0.86.5');
485
550
  }
551
+ __classPrivateFieldGet(this, _Project_instances, "m", _Project_assertPeerCovered).call(this, 'projen');
486
552
  this.package.removeScript('start');
487
553
  this.package.removeScript('test');
488
554
  if (this.parent) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EACL,OAAO,IAAI,WAAW,EAGtB,cAAc,EACd,UAAU,EAEV,UAAU,GACX,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,KAAK,EAAgB,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAoB,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAqB,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC9E,OAAO,EAAE,UAAU,EAA0B,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAsB,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,YAAY,EAA4B,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAAE,MAAM,EAAiB,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,KAAK,EAAqB,MAAM,cAAc,CAAA;AACvD,OAAO,EAAE,UAAU,EAAqB,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAqB,MAAM,oBAAoB,CAAA;AAClE,OAAO,EACL,eAAe,GAEhB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,aAAa,EAAwB,MAAM,uBAAuB,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAmB,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAA0B,MAAM,eAAe,CAAA;AAClE,OAAO,EAAE,QAAQ,EAAwB,MAAM,iBAAiB,CAAA;AAChE,OAAO,EAAE,IAAI,EAAoB,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,MAAM,EAAsB,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAyB,MAAM,cAAc,CAAA;AAC/D,OAAO,EAA+B,EAAE,EAAkB,MAAM,WAAW,CAAA;AAC3E,OAAO,EACL,gBAAgB,GAEjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAkB,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,SAAS,EAAyB,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC7E,OAAO,KAAK,CAAC,MAAM,OAAO,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE9E,cAAc,0BAA0B,CAAA;AAExC;;GAEG;AACH,MAAM,uBAAuB,GAAG,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAA;AAElE;;;;GAIG;AACH,MAAM,eAAe,GAAkD;IACrE,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,aAAa;IAClD,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,YAAY;IACjD,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,kBAAkB;IACxD,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,aAAa;IACnD,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,aAAa;IACpD,CAAC,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,aAAa;IACzD,CAAC,UAAU,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,aAAa;CAC5D,CAAA;AAED;;;;GAIG;AACH,MAAM,wBAAwB,GAC5B;IACE,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,KAAK;IAC1C,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,KAAK;IAC1C,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM;IAC5C,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM;IAC5C,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM;IAC7C,CAAC,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM;IAClD,CAAC,UAAU,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,MAAM;CACrD,CAAA;AAEH;;;;;;GAMG;AACH,MAAM,sBAAsB,GAC1B,4KAA4K,CAAA;AAE9K;;GAEG;AACH,MAAM,qBAAqB,GACzB,oJAAoJ,CAAA;AAEtJ;;;;;;;;;;;;;;;GAeG;AACH,MAAM,4BAA4B,GAAG,QAAQ,CAAA;AAE7C;;;;;;;GAOG;AACH,MAAM,kBAAkB,GACtB,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,IAAI,EAAE,CAAA;AAyJ1E,MAAM,OAAO,OAAQ,SAAQ,WAAW;IAmCtC,YAAY,OAAuB;QACjC,KAAK,CAAC;YACJ,uEAAuE;YACvE,qDAAqD;YACrD,aAAa,EAAE,gBAAgB,CAAC,OAAO,CAAC;YACxC,GAAG,OAAO;YACV,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC;SAC/C,CAAC,CAAA;;QAdJ;;;;WAIG;QACM,gCAAgB,IAAI,GAAG,EAAU,EAAA;QAWxC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;QACpC,IAAI,CAAC,aAAa,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAEhD,4CAA4C;QAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACpC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAE9B,uBAAA,IAAI,qDAAkB,MAAtB,IAAI,EAAmB,OAAO,CAAC,CAAA;QAC/B,uBAAA,IAAI,wDAAqB,MAAzB,IAAI,EAAsB,OAAO,CAAC,CAAA;QAClC,uBAAA,IAAI,iDAAc,MAAlB,IAAI,EAAe,OAAO,CAAC,CAAA;QAC3B,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,OAAO,CAAC,CAAA;QAEhC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;YACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAA;YACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAA;YACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CAAA;QAC3C,CAAC;QAED,sEAAsE;QACtE,yEAAyE;QACzE,4DAA4D;QAC5D,uBAAA,IAAI,oDAAiB,MAArB,IAAI,EAAkB,OAAO,CAAC,CAAA;QAE9B,uBAAA,IAAI,oDAAiB,MAArB,IAAI,EAAkB,OAAO,CAAC,CAAA;QAC9B,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,OAAO,CAAC,CAAA;QAEhC,uBAAA,IAAI,mDAAgB,MAApB,IAAI,EAAiB,OAAO,CAAC,CAAA;QAC7B,uBAAA,IAAI,uDAAoB,MAAxB,IAAI,EAAqB,OAAO,CAAC,CAAA;QACjC,uBAAA,IAAI,mDAAgB,MAApB,IAAI,EAAiB,OAAO,CAAC,CAAA;QAC7B,uBAAA,IAAI,wDAAqB,MAAzB,IAAI,EAAsB,OAAO,CAAC,CAAA;QAClC,uBAAA,IAAI,0DAAuB,MAA3B,IAAI,EAAwB,OAAO,CAAC,CAAA;QACpC,uBAAA,IAAI,2DAAwB,MAA5B,IAAI,CAA0B,CAAA;QAC9B,uBAAA,IAAI,mDAAgB,MAApB,IAAI,EAAiB,OAAO,CAAC,CAAA;QAC7B,uBAAA,IAAI,wDAAqB,MAAzB,IAAI,EAAsB,OAAO,CAAC,CAAA;QAClC,uBAAA,IAAI,qDAAkB,MAAtB,IAAI,EAAmB,OAAO,CAAC,CAAA;QAC/B,uBAAA,IAAI,wDAAqB,MAAzB,IAAI,EAAsB,OAAO,CAAC,CAAA;QAClC,uBAAA,IAAI,6DAA0B,MAA9B,IAAI,EAA2B,OAAO,CAAC,CAAA;QACvC,uBAAA,IAAI,uDAAoB,MAAxB,IAAI,EAAqB,OAAO,CAAC,CAAA;QACjC,uBAAA,IAAI,2DAAwB,MAA5B,IAAI,EAAyB,OAAO,CAAC,CAAA;QACrC,uBAAA,IAAI,oDAAiB,MAArB,IAAI,EAAkB,OAAO,CAAC,CAAA;QAC9B,uBAAA,IAAI,kDAAe,MAAnB,IAAI,EAAgB,OAAO,CAAC,CAAA;QAC5B,uBAAA,IAAI,oDAAiB,MAArB,IAAI,EAAkB,OAAO,CAAC,CAAA;QAC9B,uBAAA,IAAI,gDAAa,MAAjB,IAAI,EAAc,OAAO,CAAC,CAAA;QAC1B,uBAAA,IAAI,gDAAa,MAAjB,IAAI,EAAc,OAAO,CAAC,CAAA;QAC1B,uBAAA,IAAI,uDAAoB,MAAxB,IAAI,EAAqB,OAAO,CAAC,CAAA;QACjC,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,OAAO,CAAC,CAAA;IAClC,CAAC;IAED;;OAEG;IACM,iBAAiB,CAAC,IAAY;QACrC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,EACnE,oBAAoB,CACrB,CAAA;YACH,CAAC;YAED,OAAM;QACR,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAA;IAC9D,CAAC;IAEQ,aAAa;QACpB,KAAK,CAAC,aAAa,EAAE,CAAA;QAErB,uBAAA,IAAI,wFAAqD,MAAzD,IAAI,CAAuD,CAAA;IAC7D,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI;aAClB,OAAO,CAAC,CAAC,CAAC;aACV,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;aACpC,MAAM,CAAC,CAAC,IAAI,EAAuB,EAAE,CAAC,IAAI,YAAY,WAAW,CAAC,CAAA;IACvE,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAC/B,CAAC,OAAO,EAAsB,EAAE,CAAC,OAAO,YAAY,EAAO,CAC5D,CAAA;IACH,CAAC;IAED;;OAEG;IACH,aAAa,CACX,cAA8B,EAC9B,GAAG,OAA0C;QAE7C,MAAM,OAAO,GAAG,IAAI,EAAO,CAAC;YAC1B,MAAM,EAAE,IAAI;YACZ,GAAG,cAAc;SAClB,CAAC,CAAA;QAEF,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;YAC/B,QAAQ,CAAC,OAAO,CAAC,CAAA;QACnB,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;IACzE,CAAC;CAoiCF;0JAnhCoB,GAAG,KAAe;IACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,uEAAuE;QACvE,0BAA0B;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACvC,MAAM,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC5D,MAAM,OAAO,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAE/D,MAAM,QAAQ,GACZ,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;QAE1D,IAAI,QAAQ,EAAE,CAAC;YACb,uBAAA,IAAI,oDAAiB,MAArB,IAAI,EAAkB,QAAQ,CAAC,CAAA;YAC/B,SAAQ;QACV,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;QAE9B,uEAAuE;QACvE,0EAA0E;QAC1E,uEAAuE;QACvE,yDAAyD;QACzD,IAAI,OAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACzD,uBAAA,IAAI,6BAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC;AACH,CAAC,+DAsBgB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAc;IAC5D,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAE1C,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChD,OAAM;IACR,CAAC;IAED,IAAI,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;QACnC,OAAM;IACR,CAAC;IAED,MAAM,MAAM,GACV,IAAI,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAA;IAEtE,MAAM,IAAI,KAAK,CACb,yBAAyB,IAAI,IAAI,QAAQ,2EAA2E,SAAS,OAAO;QAClI,oCAAoC,SAAS,yBAAyB,MAAM,8CAA8C,CAC7H,CAAA;AACH,CAAC,6DAEe,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAkB;IACrD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAiB;QAC7B,QAAQ,EAAE,GAAG,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB;QACzE,OAAO,EAAE;YACP,OAAO,EAAE,CAAC,0BAA0B,CAAC;SACtC;KACF,CAAA;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,mBAAmB,CAAC,CAAA;IAC9C,CAAC;IAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;IAExD,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACjD,CAAC,qEAEmB,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAkB;IAC7D,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9B,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAqB;QACjC,QAAQ,EACN,GAAG,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,qBAAqB;QACzE,MAAM,EAAE;YACN,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,KAAK;YACd,cAAc,EAAE;gBACd,UAAU;gBACV,OAAO;gBACP,gBAAgB;gBAChB,OAAO;gBACP,eAAe;aAChB;SACF;KACF,CAAA;IAED,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAA;IAEpE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;IACjD,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,kBAAkB,CAAC,CAAA;IAC3C,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,CAAA;AACtD,CAAC,6DAWe,EAAE,KAAK,EAAkB;IACvC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAM;IACR,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAA;IAEnE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,QAAQ,GAAiB;YAC7B,SAAS,EAAE;gBACT,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE;oBACP,OAAO,EAAE,MAAM;iBAChB;aACF;SACF,CAAA;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,CAC7B,IAAI,EACJ,SAAS,CAAC,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAC/D,CAAA;QAED,OAAM;IACR,CAAC;IAED,MAAM,SAAS,GACb,IAAI,CAAC,IAAI,YAAY,EAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,YAAY,cAAc;QACvE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;QACjB,CAAC,CAAC,SAAS,CAAA;IAEf,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,CAAC,SAAS,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CACxE,CAAA;IAED,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE;QAClC,GAAG,QAAQ;QACX,UAAU;QACV,OAAO,EAAE;YACP,GAAG,SAAS;YACZ,GAAG,KAAK,CAAC,OAAO;SACjB;KACF,CAAC,CAAA;IAEF,SAAS,EAAE,SAAS,CAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACvE,CAAA;AACH,CAAC,uEAEoB,EAAE,UAAU,EAAE,iBAAiB,EAAkB;IACpE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAM;IACR,CAAC;IAED,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;AAC3D,CAAC,+DAEgB,EAAE,MAAM,EAAkB;IACzC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAM;IACR,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AACxC,CAAC,2EAEsB,EACrB,YAAY,EAAE,mBAAmB,EACjC,EAAE,GACa;IACf,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACxC,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAwB;QACpC,GAAG,EAAE;YACH,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE,OAAO;YACrB,WAAW,EAAE,CAAC;YACd,oBAAoB,EAAE,IAAI;YAC1B,wBAAwB,EAAE,IAAI;SAC/B;QACD,UAAU,EAAE;YACV,YAAY,EAAE,KAAK;SACpB;QACD,mEAAmE;QACnE,4DAA4D;QAC5D,GAAG,CAAC,EAAE,IAAI;YACR,YAAY,EAAE;gBACZ,YAAY,EAAE,OAAO;gBACrB,WAAW,EAAE,CAAC;aACf;SACF,CAAC;KACH,CAAA;IAED,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAClC,IAAI,EACJ,SAAS,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CACzC,CAAA;IAED,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;AACrD,CAAC;IAGC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACrC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACrC,IAAI,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAA;AACvD,CAAC,+DAEgB,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAkB;IACvD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAkB;QAC9B,QAAQ,EACN,GAAG,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB;QACnE,cAAc,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;QACrC,OAAO,EAAE,2BAA2B;KACrC,CAAA;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,gBAAgB,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IAE3D,IAAI,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAClD,CAAC,6DAEe,EAAE,KAAK,EAAE,YAAY,EAAkB;IACrD,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,OAAM;IACR,CAAC;IAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;IAE1C,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,aAAa,CAAC,CAAA;IACtC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAC3C,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAA;AACrE,CAAC,uEAEoB,EAAE,UAAU,EAAE,iBAAiB,EAAkB;IACpE,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACtC,OAAM;IACR,CAAC;IAED,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,aAAa,CAAC,CAAA;IACtC,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEzD,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;AACtD,CAAC,iEAEiB,EAAE,OAAO,EAAE,GAAG,EAAkB;IAChD,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;QAClB,OAAM;IACR,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAA;IACH,CAAC;IAED,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE;QAC/B,IAAI,EAAE,GAAG,CAAC,OAAO;QACjB,eAAe,EAAE;YACf,GAAG,CAAC,UAAU;YACd,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,SAAS;YACpD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,SAAS;SACjD;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,GAAG,CAAC;QACZ,IAAI,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;KAC/D,CAAC,CAAA;AACJ,CAAC,uEAEoB,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAkB;IACzE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAsB;QAClC,QAAQ,EACN,GAAG,EAAE,IAAI,KAAK,QAAQ;YACpB,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,wBAAwB;QAC9B,OAAO,EAAE,yBAAyB;KACnC,CAAA;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,oBAAoB,CAAC,CAAA;IAC/C,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,YAAY,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAChD,MAAM,MAAM,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAEzD,yEAAyE;IACzE,wEAAwE;IACxE,0EAA0E;IAC1E,mEAAmE;IACnE,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAA;IAC5D,MAAM,MAAM,GAAG,QAAQ;QACrB,CAAC,CAAC;YACE,YAAY,EAAE;gBACZ,GAAG,WAAW,8BAA8B;gBAC5C,GAAG,WAAW,yBAAyB;aACxC;SACF;QACH,CAAC,CAAC,EAAE,CAAA;IAEN,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAG,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;IAE9D,yEAAyE;IACzE,6DAA6D;IAC7D,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE;QACrC,GAAG,OAAO;QACV,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE;KACjC,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,UAAW,CAAC,IAAI,CAAC,CAAA;AACvD,CAAC,iFAEyB,EACxB,MAAM,EACN,eAAe,EACf,QAAQ,GACO;IACf,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAA2B;QACvC,cAAc,EAAE,wBAAwB;QACxC,GAAG,CAAC,MAAM,IAAI;YACZ,mCAAmC,EAAE,mBAAmB;SACzD,CAAC;QACF,GAAG,CAAC,QAAQ,IAAI,EAAE,GAAG,EAAE,wCAAwC,EAAE,CAAC;KACnE,CAAA;IAED,IAAI,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAA;AACjE,CAAC,qEAEmB,EAClB,gBAAgB,EAChB,UAAU,EACV,SAAS,GACM;IACf,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAsB;QAClC,cAAc,EAAE;YACd,IAAI;YACJ,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD;KACF,CAAA;IAED,IAAI,CAAC,SAAS,GAAG,IAAI,UAAU,CAC7B,IAAI,EACJ,YAAY,EACZ,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAC/B,CAAA;AACH,CAAC,iEAEiB,EAAE,OAAO,EAAE,GAAG,EAAkB;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAuB;QACnC,UAAU,EAAE,cAAc;QAC1B,cAAc,EAAE,uBAAuB;KACxC,CAAA;IAED,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAA;IAE9D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,8BAA8B,EAAE,eAAe,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IAClC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;IAEjC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IACtC,CAAC;AACH,CAAC,6EAEuB,EAAE,aAAa,EAAE,KAAK,EAAkB;IAC9D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAyB;QACrC,WAAW,EAAE;YACX,iBAAiB,EAAE,KAAK;YACxB,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC;YAC3B,OAAO,EAAE,KAAK;YACd,eAAe,EAAE,KAAK;SACvB;KACF,CAAA;IAED,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CACpC,IAAI,EACJ,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CACnC,CAAA;AACH,CAAC,mEAEkB,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAkB;IAC3D,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7B,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAoB;QAChC,QAAQ,EACN,GAAG,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,qBAAqB;QACvE,OAAO,EAAE,sBAAsB;QAC/B,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;KAChC,CAAA;IAED,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,gBAAgB,CAAC,CAAA;IACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;IAEjE,IAAI,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACtD,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,cAAc,KAAK,UAAU,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACxE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;IACpD,CAAC;IAED,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,CAAA;AACrD,CAAC,mEAEkB,EAAE,OAAO,EAAE,GAAG,EAAkB;IACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE;QACrC,QAAQ,EAAE,GAAG,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe;KACpE,CAAC,CAAA;IAEF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAEtD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,aAAa,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;AACH,CAAC,+DAEgB,EAAE,MAAM,EAAkB;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAM;IACR,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AAC5C,CAAC,mEAEkB,EACjB,KAAK,EACL,MAAM,EACN,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,GAAG,EACZ,MAAM,EACN,EAAE,GACa;IACf,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACpC,OAAM;IACR,CAAC;IAED,wEAAwE;IACxE,0EAA0E;IAC1E,yEAAyE;IACzE,6DAA6D;IAC7D,MAAM,cAAc,GAAG,GAAG,EAAE,cAAc,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAElE,MAAM,QAAQ,GAAoB;QAChC,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE,CAAC,oBAAoB,CAAC;QAC/B,MAAM,EAAE,CAAC,cAAc,CAAC;QACxB,iBAAiB,EAAE,4BAA4B;QAC/C,uBAAuB,EAAE,IAAI;QAC7B,mBAAmB,EAAE;YACnB,OAAO,EAAE,IAAI;SACd;QACD,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,KAAK,UAAU,CAAC,kBAAkB,CAAC,IAAI;YACrE,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,YAAY,CAAC,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;QACP,YAAY,EAAE;YACZ;gBACE,WAAW,EAAE,6CAA6C;gBAC1D,cAAc,EAAE,CAAC,2CAA2C,CAAC;gBAC7D,OAAO,EAAE,IAAI;aACd;YACD,GAAG,CAAC,cAAc;gBAChB,CAAC,CAAC;oBACE;wBACE,WAAW,EACT,4DAA4D;wBAC9D,iBAAiB,EAAE,CAAC,aAAa,CAAC;wBAClC,eAAe,EAAE,IAAI,cAAc,EAAE;qBACtC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,mEAAmE;YACnE,uEAAuE;YACvE,sEAAsE;YACtE,kEAAkE;YAClE,oDAAoD;YACpD,EAAE;YACF,uEAAuE;YACvE,mEAAmE;YACnE,uEAAuE;YACvE,iEAAiE;YACjE,EAAE;YACF,uEAAuE;YACvE,oEAAoE;YACpE,mEAAmE;YACnE,GAAG,CAAC,uBAAA,IAAI,6BAAc,CAAC,IAAI;gBACzB,CAAC,CAAC;oBACE;wBACE,WAAW,EACT,kHAAkH;wBACpH,aAAa,EAAE,CAAC,KAAK,CAAC;wBACtB,iBAAiB,EAAE,CAAC,GAAG,uBAAA,IAAI,6BAAc,CAAC,CAAC,IAAI,EAAE;wBACjD,OAAO,EAAE,KAAK;qBACf;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC;oBACE;wBACE,WAAW,EACT,2DAA2D;wBAC7D,SAAS,EAAE,eAAe;wBAC1B,SAAS,EAAE,eAAe;wBAC1B,aAAa,EAAE,CAAC,eAAe,CAAC;qBACjC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,oEAAoE;YACpE,oEAAoE;YACpE,kEAAkE;YAClE,mEAAmE;YACnE,YAAY;YACZ,GAAG,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE;wBACE,WAAW,EACT,sIAAsI;wBACxI,aAAa,EAAE,CAAC,QAAQ,CAAC;wBACzB,aAAa,EAAE,eAAwB;qBACxC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,0DAA0D;YAC1D,oEAAoE;YACpE,kEAAkE;YAClE,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC;oBACE;wBACE,WAAW,EACT,uFAAuF;wBACzF,aAAa,EAAE,CAAC,cAAc,CAAC;wBAC/B,aAAa,EAAE,CAAC,QAAQ,CAAC;wBACzB,0BAA0B,EAAE,oBAA6B;qBAC1D;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR;QACD,cAAc,EAAE;YACd;gBACE,UAAU,EAAE,OAAO;gBACnB,kBAAkB,EAAE,MAAM;gBAC1B,eAAe,EAAE,MAAM;gBACvB,kBAAkB,EAAE,MAAM;gBAC1B,oBAAoB,EAAE,qBAAqB;gBAC3C,mBAAmB,EAAE,CAAC,yCAAyC,CAAC;gBAChE,YAAY,EAAE,CAAC,6CAA6C,CAAC;aAC9D;YACD;gBACE,UAAU,EAAE,OAAO;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,mBAAmB,EAAE,CAAC,yCAAyC,CAAC;gBAChE,oBAAoB,EAAE,WAAW;gBACjC,YAAY,EAAE;oBACZ,iEAAiE;oBACjE,iEAAiE;oBACjE,iEAAiE;oBACjE,kEAAkE;oBAClE,0CAA0C;oBAC1C,8EAA8E;oBAC9E,mDAAmD;iBACpD;gBACD,oEAAoE;gBACpE,oEAAoE;gBACpE,0DAA0D;gBAC1D,eAAe,EACb,wIAAwI;aAC3I;YACD;gBACE,UAAU,EAAE,OAAO;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,mBAAmB,EAAE,CAAC,yCAAyC,CAAC;gBAChE,oBAAoB,EAAE,WAAW;gBACjC,YAAY,EAAE;oBACZ,qDAAqD;oBACrD,mDAAmD;iBACpD;gBACD,eAAe,EACb,iIAAiI;aACpI;YACD,GAAG,CAAC,KAAK;gBACP,CAAC,CAAC;oBACE;wBACE,UAAU,EAAE,OAAgB;wBAC5B,kBAAkB,EAAE,OAAO;wBAC3B,mBAAmB,EAAE;4BACnB,yCAAyC;yBAC1C;wBACD,oBAAoB,EAAE,WAAoB;wBAC1C,YAAY,EAAE;4BACZ,kGAAkG;4BAClG,+BAA+B;4BAC/B,sDAAsD;4BACtD,mEAAmE;4BACnE,4DAA4D;yBAC7D;qBACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,kEAAkE;YAClE,sEAAsE;YACtE,mEAAmE;YACnE,sEAAsE;YACtE,8BAA8B;YAC9B,EAAE;YACF,oEAAoE;YACpE,uEAAuE;YACvE,iEAAiE;YACjE,EAAE;YACF,mEAAmE;YACnE,mEAAmE;YACnE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC;oBACE;wBACE,UAAU,EAAE,OAAgB;wBAC5B,kBAAkB,EAAE,aAAa;wBACjC,kBAAkB,EAAE,QAAQ;wBAC5B,eAAe,EAAE,eAAe;wBAChC,mBAAmB,EAAE;4BACnB,gDAAgD;yBACjD;wBACD,YAAY,EAAE,CAAC,6CAA6C,CAAC;wBAC7D,sBAAsB,EAAE,mBAAmB;qBAC5C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,uEAAuE;YACvE,qEAAqE;YACrE,sEAAsE;YACtE,oEAAoE;YACpE,sEAAsE;YACtE,mEAAmE;YACnE,+CAA+C;YAC/C,EAAE;YACF,mEAAmE;YACnE,mEAAmE;YACnE,sEAAsE;YACtE,kEAAkE;YAClE,oCAAoC;YACpC,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC;oBACE;wBACE,UAAU,EAAE,OAAgB;wBAC5B,kBAAkB,EAAE,aAAa;wBACjC,kBAAkB,EAAE,QAAQ;wBAC5B,mBAAmB,EAAE;4BACnB,gDAAgD;4BAChD,uBAAuB;4BACvB,8BAA8B;yBAC/B;wBACD,YAAY,EAAE;4BACZ,yHAAyH;yBAC1H;wBACD,eAAe,EACb,yDAAyD;wBAC3D,mBAAmB,EAAE,YAAY;wBACjC,sBAAsB,EACpB,8FAA8F;qBACjG;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,wEAAwE;YACxE,uEAAuE;YACvE,uEAAuE;YACvE,mEAAmE;YACnE,8DAA8D;YAC9D,mEAAmE;YACnE,GAAG,CAAC,EAAE,EAAE,aAAa;gBACnB,CAAC,CAAC;oBACE;wBACE,UAAU,EAAE,OAAgB;wBAC5B,kBAAkB,EAAE,QAAQ;wBAC5B,eAAe,EAAE,QAAQ;wBACzB,kBAAkB,EAAE,QAAQ;wBAC5B,mBAAmB,EAAE;4BACnB,gDAAgD;yBACjD;wBACD,YAAY,EAAE,CAAC,4CAA4C,CAAC;qBAC7D;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,oEAAoE;YACpE,mEAAmE;YACnE,6DAA6D;YAC7D,kEAAkE;YAClE,4DAA4D;YAC5D,4BAA4B;YAC5B,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC;oBACE;wBACE,UAAU,EAAE,OAAgB;wBAC5B,kBAAkB,EAAE,UAAU;wBAC9B,eAAe,EAAE,QAAQ;wBACzB,mBAAmB,EAAE;4BACnB,gDAAgD;yBACjD;wBACD,YAAY,EAAE;4BACZ,qGAAqG;yBACtG;wBACD,mBAAmB,EAAE,kCAAkC;qBACxD;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,gEAAgE;YAChE,qEAAqE;YACrE,qEAAqE;YACrE,8DAA8D;YAC9D,oEAAoE;YACpE,sEAAsE;YACtE,oEAAoE;YACpE,sBAAsB;YACtB;gBACE,UAAU,EAAE,OAAO;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,mBAAmB,EAAE;oBACnB,gDAAgD;iBACjD;gBACD,YAAY,EAAE;oBACZ,qEAAqE;iBACtE;gBACD,eAAe,EAAE,MAAM;gBACvB,eAAe,EAAE,cAAc;aAChC;YACD,oEAAoE;YACpE,qEAAqE;YACrE,kEAAkE;YAClE,uEAAuE;YACvE,oCAAoC;YACpC,EAAE;YACF,oEAAoE;YACpE,sEAAsE;YACtE,sEAAsE;YACtE,sEAAsE;YACtE,qEAAqE;YACrE,sBAAsB;YACtB;gBACE,UAAU,EAAE,OAAO;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,mBAAmB,EAAE;oBACnB,uCAAuC;oBACvC,gDAAgD;iBACjD;gBACD,YAAY,EAAE;oBACZ,8EAA8E;iBAC/E;gBACD,eAAe,EAAE,cAAc;aAChC;SACF;KACF,CAAA;IAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;QACvB,WAAW,EAAE,oCAAoC;QACjD,IAAI,EAAE,wEAAwE;KAC/E,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAA;AAC1E,CAAC,2DAEc,EAAE,IAAI,EAAkB;IACrC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAM;IACR,CAAC;IAED,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;AAClC,CAAC,+DAEgB,EAAE,MAAM,EAAkB;IACzC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAM;IACR,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtC,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,cAAc,CAAC,CAAA;AACzC,CAAC,yDAEa,EAAE,KAAK,EAAE,gBAAgB,EAAkB;IACvD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAM;IACR,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,kBAAkB,EAAE,2BAA2B,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,QAAQ,GAAqB;QACjC,OAAO,EAAE,oCAAoC;QAC7C,GAAG,CAAC,gBAAgB;YAClB,CAAC,CAAC;gBACE,GAAG,EAAE;oBACH,MAAM,EAAE;wBACN,MAAM,EAAE,YAAY;qBACrB;iBACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;aAChB;SACF;KACF,CAAA;IAED,IAAI,CAAC,KAAK,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;AAC9D,CAAC,uDAEY,EAAE,EAAE,EAAE,EAAE,EAAkB;IACrC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,OAAM;IACR,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,aAAa;IACb,MAAM,aAAa,GAAG,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAC3B,CAAA;IAEpC,MAAM,QAAQ,GAAc;QAC1B,GAAG,CAAC,aAAa,IAAI;YACnB,WAAW,EAAE;gBACX,gBAAgB,EAAE,aAAa;aAChC;SACF,CAAC;KACH,CAAA;IAED,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;AACjD,CAAC,uEAEoB,EAAE,MAAM,EAAE,gBAAgB,EAAkB;IAC/D,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAA4B,MAAM;QAC9C,CAAC,CAAC;YACE,MAAM,EAAE;gBACN,OAAO,EAAE,8BAA8B;aACxC;SACF;QACH,CAAC,CAAC;YACE,MAAM,EAAE;gBACN,OAAO,EAAE,2BAA2B;aACrC;SACF,CAAA;IAEL,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;IAEpD,wEAAwE;IACxE,kEAAkE;IAClE,uEAAuE;IACvE,uEAAuE;IACvE,iEAAiE;IACjE,eAAe;IACf,IAAI,gBAAgB,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACnD,MAAM,CAAC,MAAM,GAAG;YACd,GAAG,MAAM,CAAC,MAAM;YAChB,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,OAAO;SACzC,CAAA;IACH,CAAC;IAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAE1D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,kBAAkB,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;QACzC,uBAAA,IAAI,sDAAmB,MAAvB,IAAI,EAAoB,wBAAwB,CAAC,CAAA;IACnD,CAAC;AACH,CAAC,uDASY,EAAE,EAAE,EAAkB;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAM;IACR,CAAC;IAED,yEAAyE;IACzE,gCAAgC;IAChC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,GAAG,EAAE,CAAA;IAEtD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,SAAS,EAAE,aAAa,EAAE,CAAC,CAAA;QAEhE,OAAM;IACR,CAAC;IAED,MAAM,SAAS,GACb,IAAI,CAAC,IAAI,YAAY,EAAO,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,YAAY,WAAW;QACjE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACd,CAAC,CAAC,SAAS,CAAA;IAEf,IAAI,CAAC,EAAE,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;IAE3D,SAAS,EAAE,SAAS,CAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACvE,CAAA;AACH,CAAC,qEAEmB,EAAE,SAAS,EAAkB;IAC/C,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9B,OAAM;IACR,CAAC;IAED,yEAAyE;IACzE,sDAAsD;IACtD,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE;QACnC,GAAG,SAAS;QACZ,MAAM,EAAE;YACN,GAAG,SAAS,CAAC,MAAM;YACnB,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,IAAI,uBAAA,IAAI,oDAAiB,MAArB,IAAI,CAAmB;SACxE;KACF,CAAC,CAAA;AACJ,CAAC;IAOC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI;QAC9B,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EACrD,IAAI,CAAC,OAAO,CAAC,cAAc;KAC9B,CAAA;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAA;IAChE,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAA;IAEpD,OAAO,QAAQ,CACb,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAChC,EAAE,GAAG,EAAE,qBAAqB,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,CAC5D,CAAA;AACH,CAAC;IAGC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC3D,OAAM;IACR,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAChD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,gBAAgB,CACzD,CAAA;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAE1D,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAE7D,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;YAC5C,IAAI,CAAC,gBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QAChE,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;YAEnE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAQ;YACV,CAAC;YAED,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAE7D,OAAO,CAAC,gBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;AACH,CAAC;AAGH,MAAM,gBAAgB,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAkB,EAAE,EAAE,CAC5D,eAAe,CAAC,GAAG,EAAE,cAAc,IAAI,uBAAuB,CAAC,CAAA;AAEjE,MAAM,mBAAmB,GAAG,CAAC,EAC3B,gBAAgB,EAChB,KAAK,EAAE,YAAY,EACnB,MAAM,EACN,gBAAgB,EAAE,uBAAuB,EACzC,aAAa,EACb,SAAS,GACM,EAAsC,EAAE,CACvD,MAAM;IACJ,CAAC,CAAC,gBAAgB;IAClB,CAAC,CAAC;QACE,cAAc,EAAE;YACd,GAAG;;;;;MAKP,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;;;;;;;MAOhC,aAAa,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;MAC3C,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;MAChC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;MAClC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;MAC/B,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;;;MAGpC,uBAAuB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;;;MAG9C,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;;;;KAI/B;iBACQ,KAAK,CAAC,IAAI,CAAC;iBACX,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;iBAChC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1C,GAAG,CAAC,gBAAgB,EAAE,cAAc,IAAI,EAAE,CAAC;SAC5C;KACF,CAAA;AAEP,MAAM,SAAS,GAAG,CAAC,CAAC,aAAa,CAC/B,CAAC,CAAC,IAAI,CAAC;IACL,yDAAyD;IACzD,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACtD,0DAA0D;IAC1D,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxD,mBAAmB;IACnB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACtD,0BAA0B;IAC1B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;CAChB,CAAC,CACH,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,13 @@ import { Project, javascript } from 'projen';
3
3
  * Options for configuring Node.js packages.
4
4
  */
5
5
  export interface NodePackageOptions extends javascript.NodePackageOptions {
6
+ /**
7
+ * Add the package manager to `devEngines`, as Projen does from 0.99.30.
8
+ * Earlier versions have no such option and ignore it.
9
+ *
10
+ * @default false
11
+ */
12
+ readonly addPackageManagerToDevEngines?: boolean;
6
13
  readonly peerDependenciesMeta?: Record<string, {
7
14
  optional?: boolean;
8
15
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"node-package.d.ts","sourceRoot":"","sources":["../../src/lib/node-package.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU,CAAC,kBAAkB;IACvE,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAA;CACtC;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,UAAU,CAAC,WAAW;;gBACzC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,kBAAkB;IA2BjD,cAAc,IAAI,IAAI;CAOhC"}
1
+ {"version":3,"file":"node-package.d.ts","sourceRoot":"","sources":["../../src/lib/node-package.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU,CAAC,kBAAkB;IACvE;;;;;OAKG;IACH,QAAQ,CAAC,6BAA6B,CAAC,EAAE,OAAO,CAAA;IAChD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAA;CACtC;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,UAAU,CAAC,WAAW;;gBACzC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,kBAAkB;IA2BjD,cAAc,IAAI,IAAI;CAOhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"node-package.js","sourceRoot":"","sources":["../../src/lib/node-package.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAE7B,OAAO,EAAW,UAAU,EAAE,MAAM,QAAQ,CAAA;AAU5C;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,UAAU,CAAC,WAAW;IACrD,YAAY,OAAgB,EAAE,OAA4B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;;QAEvB,IAAI,CAAC,UAAU,CAAC,uBAAA,IAAI,2DAAgB,MAApB,IAAI,CAAkB,EAAE,OAAO,IAAI,OAAO,CAAC,CAAA;QAE3D,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC;QAED,IAAI,OAAO,EAAE,oBAAoB,EAAE,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAA;QACrE,CAAC;QAED,oEAAoE;QACpE,IAAI,CAAC,OAAO,CAAC,KAAK;aACf,OAAO,CAAC,YAAY,CAAC;YACtB,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAClE,CAAC;IAUQ,cAAc;QACrB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,OAAM;QACR,CAAC;QAED,KAAK,CAAC,cAAc,EAAE,CAAA;IACxB,CAAC;CACF;;IAdG,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"node-package.js","sourceRoot":"","sources":["../../src/lib/node-package.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAE7B,OAAO,EAAW,UAAU,EAAE,MAAM,QAAQ,CAAA;AAiB5C;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,UAAU,CAAC,WAAW;IACrD,YAAY,OAAgB,EAAE,OAA4B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;;QAEvB,IAAI,CAAC,UAAU,CAAC,uBAAA,IAAI,2DAAgB,MAApB,IAAI,CAAkB,EAAE,OAAO,IAAI,OAAO,CAAC,CAAA;QAE3D,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC;QAED,IAAI,OAAO,EAAE,oBAAoB,EAAE,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAA;QACrE,CAAC;QAED,oEAAoE;QACpE,IAAI,CAAC,OAAO,CAAC,KAAK;aACf,OAAO,CAAC,YAAY,CAAC;YACtB,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAClE,CAAC;IAUQ,cAAc;QACrB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,OAAM;QACR,CAAC;QAED,KAAK,CAAC,cAAc,EAAE,CAAA;IACxB,CAAC;CACF;;IAdG,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@langri-sha/projen-project",
3
- "version": "0.35.0",
3
+ "version": "0.37.0",
4
4
  "description": "Collection of projen templates for bootstrapping monorepos and workspace projects.",
5
5
  "bugs": {
6
6
  "url": "https://github.com/langri-sha/projen/issues"
@@ -23,29 +23,29 @@
23
23
  "prepublishOnly": "rm -rf dist; tsc --project tsconfig.build.json"
24
24
  },
25
25
  "dependencies": {
26
- "projen-babel-config": "0.5.18",
27
- "projen-beachball": "0.5.15",
28
- "projen-cargo": "0.2.0",
29
- "projen-codeowners": "0.5.15",
30
- "projen-dagger": "0.3.3",
31
- "projen-editorconfig": "0.6.15",
32
- "projen-eslint": "0.3.19",
33
- "projen-husky": "0.3.25",
34
- "projen-jest-config": "0.4.21",
35
- "projen-license": "0.3.18",
36
- "projen-lint-staged": "0.3.20",
37
- "projen-lint-synthesized": "0.5.20",
38
- "projen-pnpm-workspace": "0.4.15",
39
- "projen-prettier": "0.4.20",
40
- "projen-readme": "0.1.15",
41
- "projen-renovate": "0.4.27",
42
- "projen-ruff": "0.1.1",
43
- "projen-skills": "0.1.1",
44
- "projen-swcrc": "0.1.28",
45
- "projen-ty": "0.1.1",
46
- "projen-typescript-config": "0.5.23",
47
- "projen-uv": "0.2.0",
48
- "projen-worktrunk": "0.1.6",
26
+ "projen-babel-config": "0.5.19",
27
+ "projen-beachball": "0.5.16",
28
+ "projen-cargo": "0.2.1",
29
+ "projen-codeowners": "0.5.16",
30
+ "projen-dagger": "0.3.4",
31
+ "projen-editorconfig": "0.6.16",
32
+ "projen-eslint": "0.3.20",
33
+ "projen-husky": "0.3.26",
34
+ "projen-jest-config": "0.4.22",
35
+ "projen-license": "0.3.19",
36
+ "projen-lint-staged": "0.3.21",
37
+ "projen-lint-synthesized": "0.5.21",
38
+ "projen-pnpm-workspace": "0.4.16",
39
+ "projen-prettier": "0.4.21",
40
+ "projen-readme": "0.1.16",
41
+ "projen-renovate": "0.4.28",
42
+ "projen-ruff": "0.1.2",
43
+ "projen-skills": "0.1.2",
44
+ "projen-swcrc": "0.1.29",
45
+ "projen-ty": "0.1.2",
46
+ "projen-typescript-config": "0.5.24",
47
+ "projen-uv": "0.2.1",
48
+ "projen-worktrunk": "0.1.7",
49
49
  "ramda": "0.32.0",
50
50
  "semver": "7.8.5"
51
51
  },
@@ -53,7 +53,8 @@
53
53
  "@langri-sha/tsconfig": "1.1.1",
54
54
  "@langri-sha/vitest": "0.2.3",
55
55
  "@types/ramda": "0.32.0",
56
- "@types/semver": "7.8.0"
56
+ "@types/semver": "7.8.0",
57
+ "projen": "0.86.5"
57
58
  },
58
59
  "peerDependencies": {
59
60
  "@babel/core": "^8.0.0",
@@ -65,7 +66,7 @@
65
66
  "jest": "^30.0.0",
66
67
  "lint-staged": "^17.0.0",
67
68
  "prettier": "^3.0.0",
68
- "projen": "^0.86.0",
69
+ "projen": ">=0.86.0 <1.0.0",
69
70
  "skills": "^1.7.2",
70
71
  "tsx": "^4.0.0",
71
72
  "typescript": "^5.5.0"
package/readme.md CHANGED
@@ -65,6 +65,24 @@ Worktrunk asks each teammate to approve a project's commands before it first
65
65
  runs them, so no default runs unseen. It remembers approval by the exact text of
66
66
  a command.
67
67
 
68
+ ## Release age
69
+
70
+ The preset exempts nothing from pnpm's `minimumReleaseAge`. A project that
71
+ trusts the preset's releases can exempt the preset and the `projen-` components
72
+ it depends on by spreading `Project.presetPackages`, which follows the
73
+ components as they are added or renamed:
74
+
75
+ ```ts
76
+ import { Project } from '@langri-sha/projen-project'
77
+
78
+ new Project({
79
+ name: 'my-project',
80
+ pnpmWorkspace: {
81
+ minimumReleaseAgeExclude: [...Project.presetPackages],
82
+ },
83
+ })
84
+ ```
85
+
68
86
  [`projen-cargo`]: https://www.npmjs.com/package/projen-cargo
69
87
  [`projen-codeowners`]: https://www.npmjs.com/package/projen-codeowners
70
88
  [`projen-dagger`]: https://www.npmjs.com/package/projen-dagger
package/src/index.ts CHANGED
@@ -40,7 +40,7 @@ import {
40
40
  import { type UvOptions, UvPackage, UvWorkspace } from 'projen-uv'
41
41
  import { Worktrunk, type WorktrunkOptions, pipeline } from 'projen-worktrunk'
42
42
  import * as R from 'ramda'
43
- import { satisfies, valid } from 'semver'
43
+ import { satisfies, valid, validRange } from 'semver'
44
44
 
45
45
  import { GitAttributesFile } from './lib/gitattributes.js'
46
46
  import { NodePackage, NodePackageOptions, ProjenrcFile } from './lib/index.js'
@@ -128,6 +128,27 @@ const RENOVATE_MINIMUM_RELEASE_AGE = '3 days'
128
128
  const SUPPORTED_VERSIONS: Record<string, string | undefined> =
129
129
  createRequire(import.meta.url)('../package.json').peerDependencies ?? {}
130
130
 
131
+ /**
132
+ * The preset and the `projen-` components it depends on, behind
133
+ * `Project.presetPackages`.
134
+ *
135
+ * Read from `dependencies` rather than restated, so a component added or
136
+ * renamed there reaches every project that opts in, while the prefix keeps
137
+ * third-party dependencies such as `ramda` out.
138
+ */
139
+ const PRESET_PACKAGES: readonly string[] = (() => {
140
+ const { name, dependencies = {} } = createRequire(import.meta.url)(
141
+ '../package.json',
142
+ ) as { name: string; dependencies?: Record<string, string> }
143
+
144
+ return [
145
+ name,
146
+ ...Object.keys(dependencies)
147
+ .filter((dependency) => dependency.startsWith('projen-'))
148
+ .sort(),
149
+ ]
150
+ })()
151
+
131
152
  export interface ProjectOptions extends Omit<
132
153
  BaseProjectOptions,
133
154
  'renovatebot' | 'renovatebotOptions'
@@ -280,6 +301,24 @@ export interface ProjectOptions extends Omit<
280
301
  }
281
302
 
282
303
  export class Project extends BaseProject {
304
+ /**
305
+ * The preset and the `projen-` components it depends on, for a project that
306
+ * chooses to exempt them from pnpm's `minimumReleaseAge`:
307
+ *
308
+ * ```ts
309
+ * pnpmWorkspace: {
310
+ * minimumReleaseAgeExclude: [...Project.presetPackages],
311
+ * }
312
+ * ```
313
+ *
314
+ * Never applied by default, since what a project trusts past its release age
315
+ * is its own call. Static so that it can be read while the options are being
316
+ * written, before the project exists.
317
+ */
318
+ static get presetPackages(): string[] {
319
+ return [...PRESET_PACKAGES]
320
+ }
321
+
283
322
  babel?: Babel
284
323
  beachball?: Beachball
285
324
  cargo?: CargoPackage | CargoWorkspace
@@ -505,6 +544,50 @@ export class Project extends BaseProject {
505
544
  * to resolve rather than naming a version, and `workspace:` is not semver
506
545
  * at all.
507
546
  */
547
+ /**
548
+ * Whether the package peers `name` and Projen leaves it to the project to
549
+ * name a development copy. By default Projen pins one at the lowest version
550
+ * the peer range allows, in which case there is nothing for this preset to
551
+ * supply.
552
+ */
553
+ #peersUnpinned(name: string, { peerDependencyOptions }: NodePackageOptions) {
554
+ return (
555
+ peerDependencyOptions?.pinnedDevDependency === false &&
556
+ this.deps.tryGetDependency(name, DependencyType.PEER) !== undefined
557
+ )
558
+ }
559
+
560
+ /**
561
+ * Fail synthesis when the version this preset supplied for development
562
+ * falls outside the range the package peers it at.
563
+ *
564
+ * The supplied version moves with this preset and the range with the
565
+ * project, so nothing else would notice them drifting apart: the package
566
+ * would test against a copy it tells its consumers it does not support.
567
+ * A version the project declared itself is not checked here; that is its
568
+ * own to keep in line.
569
+ */
570
+ #assertPeerCovered(name: string) {
571
+ const peer = this.deps.tryGetDependency(name, DependencyType.PEER)
572
+ const supplied = this.#ownedDevDeps.has(name)
573
+ ? this.deps.tryGetDependency(name, DependencyType.BUILD)
574
+ : undefined
575
+
576
+ if (
577
+ !peer?.version ||
578
+ !supplied?.version ||
579
+ !validRange(peer.version) ||
580
+ satisfies(supplied.version, peer.version)
581
+ ) {
582
+ return
583
+ }
584
+
585
+ throw new Error(
586
+ `${this.name} peers ${name}@${peer.version}, but the ${name}@${supplied.version} this preset supplies for development is outside that range.\n\n` +
587
+ `Declare ${name} in \`package.devDeps\` at a version the range allows, or widen the range to include ${supplied.version}.`,
588
+ )
589
+ }
590
+
508
591
  #assertSupported({ name, type, version: declared }: Dependency) {
509
592
  const supported = SUPPORTED_VERSIONS[name]
510
593
 
@@ -538,7 +621,7 @@ export class Project extends BaseProject {
538
621
  }
539
622
 
540
623
  if (!this.parent) {
541
- this.#addDefaultDevDeps('@babel/core@8.0.6')
624
+ this.#addDefaultDevDeps('@babel/core@8.0.7')
542
625
  }
543
626
 
544
627
  this.babel = new Babel(this, deepMerge(defaults, babel))
@@ -865,16 +948,37 @@ export class Project extends BaseProject {
865
948
  }
866
949
 
867
950
  const defaults: NodePackageOptions = {
951
+ addPackageManagerToDevEngines: false,
868
952
  entrypoint: 'src/index.ts',
869
953
  packageManager: DEFAULT_PACKAGE_MANAGER,
870
954
  }
871
955
 
872
956
  this.package = new NodePackage(this, deepMerge(defaults, pkg))
873
957
 
958
+ // Projen 0.99.41 and later write their own default pnpm into every
959
+ // manifest, which is not the version a project runs.
960
+ if (
961
+ this.package.packageManager === javascript.NodePackageManager.PNPM &&
962
+ pkg.pnpmVersion === undefined
963
+ ) {
964
+ this.package.addField('packageManager', undefined)
965
+ }
966
+
874
967
  if (!this.parent) {
875
- this.#addDefaultDevDeps('@langri-sha/projen-project@*', 'projen@0.86.5')
968
+ this.#addDefaultDevDeps('@langri-sha/projen-project@*')
876
969
  }
877
970
 
971
+ // A root project is loaded by Projen. A subproject only needs a copy of
972
+ // its own when it peers Projen and Projen has been told not to pin one
973
+ // from the peer range, which would otherwise leave it resolving whatever
974
+ // the root, or the package manager's peer installation, happens to
975
+ // provide.
976
+ if (!this.parent || this.#peersUnpinned('projen', pkg)) {
977
+ this.#addDefaultDevDeps('projen@0.86.5')
978
+ }
979
+
980
+ this.#assertPeerCovered('projen')
981
+
878
982
  this.package.removeScript('start')
879
983
  this.package.removeScript('test')
880
984
 
@@ -6,6 +6,13 @@ import { Project, javascript } from 'projen'
6
6
  * Options for configuring Node.js packages.
7
7
  */
8
8
  export interface NodePackageOptions extends javascript.NodePackageOptions {
9
+ /**
10
+ * Add the package manager to `devEngines`, as Projen does from 0.99.30.
11
+ * Earlier versions have no such option and ignore it.
12
+ *
13
+ * @default false
14
+ */
15
+ readonly addPackageManagerToDevEngines?: boolean
9
16
  readonly peerDependenciesMeta?: Record<string, { optional?: boolean }>
10
17
  readonly type?: 'commonjs' | 'module'
11
18
  }