@langri-sha/projen-project 0.33.0 → 0.34.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,168 @@
2
2
  "name": "@langri-sha/projen-project",
3
3
  "entries": [
4
4
  {
5
- "date": "Fri, 09 Oct 2026 12:54:16 GMT",
5
+ "date": "Sat, 10 Oct 2026 05:02:34 GMT",
6
+ "version": "0.34.0",
7
+ "tag": "@langri-sha/projen-project_v0.34.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "filip.dupanovic@gmail.com",
12
+ "package": "@langri-sha/projen-project",
13
+ "commit": "dece8e503e9422040b03d48ecae1d7b3817300db",
14
+ "comment": "Supply a default Worktrunk `pre-start` hook that syncs the default branch, seeds `.env` files and installs dependencies"
15
+ },
16
+ {
17
+ "author": "filip.dupanovic@gmail.com",
18
+ "package": "@langri-sha/projen-project",
19
+ "commit": "dece8e503e9422040b03d48ecae1d7b3817300db",
20
+ "comment": "Fetch Cargo and sync uv dependencies in the default Worktrunk `pre-start` hook"
21
+ },
22
+ {
23
+ "author": "beachball",
24
+ "package": "@langri-sha/projen-project",
25
+ "comment": "Bump projen-babel-config to v0.5.18",
26
+ "commit": "not available"
27
+ },
28
+ {
29
+ "author": "beachball",
30
+ "package": "@langri-sha/projen-project",
31
+ "comment": "Bump projen-beachball to v0.5.15",
32
+ "commit": "not available"
33
+ },
34
+ {
35
+ "author": "beachball",
36
+ "package": "@langri-sha/projen-project",
37
+ "comment": "Bump projen-cargo to v0.2.0",
38
+ "commit": "not available"
39
+ },
40
+ {
41
+ "author": "beachball",
42
+ "package": "@langri-sha/projen-project",
43
+ "comment": "Bump projen-codeowners to v0.5.15",
44
+ "commit": "not available"
45
+ },
46
+ {
47
+ "author": "beachball",
48
+ "package": "@langri-sha/projen-project",
49
+ "comment": "Bump projen-dagger to v0.3.3",
50
+ "commit": "not available"
51
+ },
52
+ {
53
+ "author": "beachball",
54
+ "package": "@langri-sha/projen-project",
55
+ "comment": "Bump projen-editorconfig to v0.6.15",
56
+ "commit": "not available"
57
+ },
58
+ {
59
+ "author": "beachball",
60
+ "package": "@langri-sha/projen-project",
61
+ "comment": "Bump projen-eslint to v0.3.19",
62
+ "commit": "not available"
63
+ },
64
+ {
65
+ "author": "beachball",
66
+ "package": "@langri-sha/projen-project",
67
+ "comment": "Bump projen-husky to v0.3.25",
68
+ "commit": "not available"
69
+ },
70
+ {
71
+ "author": "beachball",
72
+ "package": "@langri-sha/projen-project",
73
+ "comment": "Bump projen-jest-config to v0.4.20",
74
+ "commit": "not available"
75
+ },
76
+ {
77
+ "author": "beachball",
78
+ "package": "@langri-sha/projen-project",
79
+ "comment": "Bump projen-license to v0.3.18",
80
+ "commit": "not available"
81
+ },
82
+ {
83
+ "author": "beachball",
84
+ "package": "@langri-sha/projen-project",
85
+ "comment": "Bump projen-lint-staged to v0.3.20",
86
+ "commit": "not available"
87
+ },
88
+ {
89
+ "author": "beachball",
90
+ "package": "@langri-sha/projen-project",
91
+ "comment": "Bump projen-lint-synthesized to v0.5.19",
92
+ "commit": "not available"
93
+ },
94
+ {
95
+ "author": "beachball",
96
+ "package": "@langri-sha/projen-project",
97
+ "comment": "Bump projen-pnpm-workspace to v0.4.15",
98
+ "commit": "not available"
99
+ },
100
+ {
101
+ "author": "beachball",
102
+ "package": "@langri-sha/projen-project",
103
+ "comment": "Bump projen-prettier to v0.4.20",
104
+ "commit": "not available"
105
+ },
106
+ {
107
+ "author": "beachball",
108
+ "package": "@langri-sha/projen-project",
109
+ "comment": "Bump projen-readme to v0.1.15",
110
+ "commit": "not available"
111
+ },
112
+ {
113
+ "author": "beachball",
114
+ "package": "@langri-sha/projen-project",
115
+ "comment": "Bump projen-renovate to v0.4.27",
116
+ "commit": "not available"
117
+ },
118
+ {
119
+ "author": "beachball",
120
+ "package": "@langri-sha/projen-project",
121
+ "comment": "Bump projen-ruff to v0.1.1",
122
+ "commit": "not available"
123
+ },
124
+ {
125
+ "author": "beachball",
126
+ "package": "@langri-sha/projen-project",
127
+ "comment": "Bump projen-swcrc to v0.1.27",
128
+ "commit": "not available"
129
+ },
130
+ {
131
+ "author": "beachball",
132
+ "package": "@langri-sha/projen-project",
133
+ "comment": "Bump projen-ty to v0.1.1",
134
+ "commit": "not available"
135
+ },
136
+ {
137
+ "author": "beachball",
138
+ "package": "@langri-sha/projen-project",
139
+ "comment": "Bump projen-typescript-config to v0.5.23",
140
+ "commit": "not available"
141
+ },
142
+ {
143
+ "author": "beachball",
144
+ "package": "@langri-sha/projen-project",
145
+ "comment": "Bump projen-uv to v0.2.0",
146
+ "commit": "not available"
147
+ },
148
+ {
149
+ "author": "beachball",
150
+ "package": "@langri-sha/projen-project",
151
+ "comment": "Bump projen-worktrunk to v0.1.6",
152
+ "commit": "not available"
153
+ }
154
+ ],
155
+ "patch": [
156
+ {
157
+ "author": "filip.dupanovic@gmail.com",
158
+ "package": "@langri-sha/projen-project",
159
+ "commit": "dece8e503e9422040b03d48ecae1d7b3817300db",
160
+ "comment": "Depend on the component packages by their unscoped names"
161
+ }
162
+ ]
163
+ }
164
+ },
165
+ {
166
+ "date": "Fri, 09 Oct 2026 12:57:46 GMT",
6
167
  "version": "0.33.0",
7
168
  "tag": "@langri-sha/projen-project_v0.33.0",
8
169
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,47 @@
1
1
  # Change Log - @langri-sha/projen-project
2
2
 
3
- <!-- This log was last generated on Fri, 09 Oct 2026 12:54:16 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Sat, 10 Oct 2026 05:02:34 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.34.0
8
+
9
+ Sat, 10 Oct 2026 05:02:34 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Supply a default Worktrunk `pre-start` hook that syncs the default branch, seeds `.env` files and installs dependencies (filip.dupanovic@gmail.com)
14
+ - Fetch Cargo and sync uv dependencies in the default Worktrunk `pre-start` hook (filip.dupanovic@gmail.com)
15
+ - Bump projen-babel-config to v0.5.18
16
+ - Bump projen-beachball to v0.5.15
17
+ - Bump projen-cargo to v0.2.0
18
+ - Bump projen-codeowners to v0.5.15
19
+ - Bump projen-dagger to v0.3.3
20
+ - Bump projen-editorconfig to v0.6.15
21
+ - Bump projen-eslint to v0.3.19
22
+ - Bump projen-husky to v0.3.25
23
+ - Bump projen-jest-config to v0.4.20
24
+ - Bump projen-license to v0.3.18
25
+ - Bump projen-lint-staged to v0.3.20
26
+ - Bump projen-lint-synthesized to v0.5.19
27
+ - Bump projen-pnpm-workspace to v0.4.15
28
+ - Bump projen-prettier to v0.4.20
29
+ - Bump projen-readme to v0.1.15
30
+ - Bump projen-renovate to v0.4.27
31
+ - Bump projen-ruff to v0.1.1
32
+ - Bump projen-swcrc to v0.1.27
33
+ - Bump projen-ty to v0.1.1
34
+ - Bump projen-typescript-config to v0.5.23
35
+ - Bump projen-uv to v0.2.0
36
+ - Bump projen-worktrunk to v0.1.6
37
+
38
+ ### Patches
39
+
40
+ - Depend on the component packages by their unscoped names (filip.dupanovic@gmail.com)
41
+
7
42
  ## 0.33.0
8
43
 
9
- Fri, 09 Oct 2026 12:54:16 GMT
44
+ Fri, 09 Oct 2026 12:57:46 GMT
10
45
 
11
46
  ### Minor changes
12
47
 
package/dist/index.d.ts CHANGED
@@ -1,29 +1,29 @@
1
- import { Babel, BabelOptions } from '@langri-sha/projen-babel';
2
- import { Beachball, BeachballOptions } from '@langri-sha/projen-beachball';
3
- import { type CargoOptions, CargoPackage, CargoWorkspace } from '@langri-sha/projen-cargo';
4
- import { Codeowners, type CodeownersOptions } from '@langri-sha/projen-codeowners';
5
- import { Dagger, type DaggerOptions } from '@langri-sha/projen-dagger';
6
- import { EditorConfig, type EditorConfigOptions } from '@langri-sha/projen-editorconfig';
7
- import { ESLint, ESLintOptions } from '@langri-sha/projen-eslint';
8
- import { Husky, type HuskyOptions } from '@langri-sha/projen-husky';
9
- import { JestConfig, JestConfigOptions } from '@langri-sha/projen-jest-config';
10
- import { License } from '@langri-sha/projen-license';
11
- import { LintStaged, LintStagedOptions } from '@langri-sha/projen-lint-staged';
12
- import { type LintSynthesizedOptions } from '@langri-sha/projen-lint-synthesized';
13
- import { PnpmWorkspace, PnpmWorkspaceOptions } from '@langri-sha/projen-pnpm-workspace';
14
- import { Prettier, PrettierOptions } from '@langri-sha/projen-prettier';
15
- import { ReadmeFile, type ReadmeFileOptions } from '@langri-sha/projen-readme';
16
- import { Renovate, type RenovateOptions } from '@langri-sha/projen-renovate';
17
- import { Ruff, type RuffOptions } from '@langri-sha/projen-ruff';
18
- import { SWCConfig, type SWCConfigOptions } from '@langri-sha/projen-swcrc';
19
- import { Ty, type TyOptions } from '@langri-sha/projen-ty';
20
- import { TypeScriptConfig, type TypeScriptConfigOptions } from '@langri-sha/projen-typescript-config';
21
- import { type UvOptions, UvPackage, UvWorkspace } from '@langri-sha/projen-uv';
22
- import { Worktrunk, type WorktrunkOptions } from '@langri-sha/projen-worktrunk';
23
1
  import { Project as BaseProject, type ProjectOptions as BaseProjectOptions, IgnoreFile, IgnoreFileOptions } from 'projen';
2
+ import { Babel, BabelOptions } from 'projen-babel-config';
3
+ import { Beachball, BeachballOptions } from 'projen-beachball';
4
+ import { type CargoOptions, CargoPackage, CargoWorkspace } from 'projen-cargo';
5
+ import { Codeowners, type CodeownersOptions } from 'projen-codeowners';
6
+ import { Dagger, type DaggerOptions } from 'projen-dagger';
7
+ import { EditorConfig, type EditorConfigOptions } from 'projen-editorconfig';
8
+ import { ESLint, ESLintOptions } from 'projen-eslint';
9
+ import { Husky, type HuskyOptions } from 'projen-husky';
10
+ import { JestConfig, JestConfigOptions } from 'projen-jest-config';
11
+ import { License } from 'projen-license';
12
+ import { LintStaged, LintStagedOptions } from 'projen-lint-staged';
13
+ import { type LintSynthesizedOptions } from 'projen-lint-synthesized';
14
+ import { PnpmWorkspace, PnpmWorkspaceOptions } from 'projen-pnpm-workspace';
15
+ import { Prettier, PrettierOptions } from 'projen-prettier';
16
+ import { ReadmeFile, type ReadmeFileOptions } from 'projen-readme';
17
+ import { Renovate, type RenovateOptions } from 'projen-renovate';
18
+ import { Ruff, type RuffOptions } from 'projen-ruff';
19
+ import { SWCConfig, type SWCConfigOptions } from 'projen-swcrc';
20
+ import { Ty, type TyOptions } from 'projen-ty';
21
+ import { TypeScriptConfig, type TypeScriptConfigOptions } from 'projen-typescript-config';
22
+ import { type UvOptions, UvPackage, UvWorkspace } from 'projen-uv';
23
+ import { Worktrunk, type WorktrunkOptions } from 'projen-worktrunk';
24
24
  import { GitAttributesFile } from './lib/gitattributes.js';
25
25
  import { NodePackage, NodePackageOptions, ProjenrcFile } from './lib/index.js';
26
- export * from '@langri-sha/projen-typescript-config';
26
+ export * from 'projen-typescript-config';
27
27
  export interface ProjectOptions extends Omit<BaseProjectOptions, 'renovatebot' | 'renovatebotOptions'> {
28
28
  babel?: BabelOptions;
29
29
  beachball?: BeachballOptions;
@@ -106,8 +106,8 @@ export interface ProjectOptions extends Omit<BaseProjectOptions, 'renovatebot' |
106
106
  uv?: UvOptions;
107
107
  withTerraform?: boolean;
108
108
  /**
109
- * Configures Worktrunk, when provided. No hooks are supplied by default:
110
- * each one runs on teammates' machines, so a project declares its own.
109
+ * Configures Worktrunk, when provided. Supplies a default `pre-start`
110
+ * pipeline, which a `pre-start` in `config`, in any form, replaces whole.
111
111
  */
112
112
  worktrunk?: WorktrunkOptions;
113
113
  }
@@ -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,37 +3,37 @@ 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_configureSWC, _Project_configureTy, _Project_configureTypeScript, _Project_configureUv, _Project_configureWorktrunk, _Project_populateTypeScriptProjectReferencesFromDependencies;
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_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
- import { Babel } from '@langri-sha/projen-babel';
10
- import { Beachball } from '@langri-sha/projen-beachball';
11
- import { CargoPackage, CargoWorkspace, } from '@langri-sha/projen-cargo';
12
- import { Codeowners, } from '@langri-sha/projen-codeowners';
13
- import { Dagger } from '@langri-sha/projen-dagger';
14
- import { EditorConfig, } from '@langri-sha/projen-editorconfig';
15
- import { ESLint } from '@langri-sha/projen-eslint';
16
- import { Husky } from '@langri-sha/projen-husky';
17
- import { JestConfig } from '@langri-sha/projen-jest-config';
18
- import { License } from '@langri-sha/projen-license';
19
- import { LintStaged } from '@langri-sha/projen-lint-staged';
20
- import { LintSynthesized, } from '@langri-sha/projen-lint-synthesized';
21
- import { PnpmWorkspace, } from '@langri-sha/projen-pnpm-workspace';
22
- import { Prettier } from '@langri-sha/projen-prettier';
23
- import { ReadmeFile } from '@langri-sha/projen-readme';
24
- import { Renovate } from '@langri-sha/projen-renovate';
25
- import { Ruff } from '@langri-sha/projen-ruff';
26
- import { SWCConfig } from '@langri-sha/projen-swcrc';
27
- import { Ty, } from '@langri-sha/projen-ty';
28
- import { TypeScriptConfig, } from '@langri-sha/projen-typescript-config';
29
- import { UvPackage, UvWorkspace } from '@langri-sha/projen-uv';
30
- import { Worktrunk } from '@langri-sha/projen-worktrunk';
31
9
  import { Project as BaseProject, DependencyType, IgnoreFile, javascript, } from 'projen';
10
+ import { Babel } from 'projen-babel-config';
11
+ import { Beachball } from 'projen-beachball';
12
+ import { CargoPackage, CargoWorkspace } from 'projen-cargo';
13
+ import { Codeowners } from 'projen-codeowners';
14
+ import { Dagger } from 'projen-dagger';
15
+ import { EditorConfig } from 'projen-editorconfig';
16
+ import { ESLint } from 'projen-eslint';
17
+ import { Husky } from 'projen-husky';
18
+ import { JestConfig } from 'projen-jest-config';
19
+ import { License } from 'projen-license';
20
+ import { LintStaged } from 'projen-lint-staged';
21
+ import { LintSynthesized, } from 'projen-lint-synthesized';
22
+ import { PnpmWorkspace } from 'projen-pnpm-workspace';
23
+ import { Prettier } from 'projen-prettier';
24
+ import { ReadmeFile } from 'projen-readme';
25
+ import { Renovate } from 'projen-renovate';
26
+ import { Ruff } from 'projen-ruff';
27
+ import { SWCConfig } from 'projen-swcrc';
28
+ import { Ty } from 'projen-ty';
29
+ import { TypeScriptConfig, } from 'projen-typescript-config';
30
+ import { UvPackage, UvWorkspace } from 'projen-uv';
31
+ import { Worktrunk, pipeline } from 'projen-worktrunk';
32
32
  import * as R from 'ramda';
33
33
  import { satisfies, valid } from 'semver';
34
34
  import { GitAttributesFile } from './lib/gitattributes.js';
35
35
  import { NodePackage, ProjenrcFile } from './lib/index.js';
36
- export * from '@langri-sha/projen-typescript-config';
36
+ export * from 'projen-typescript-config';
37
37
  /**
38
38
  * The package manager assumed when a project does not name one.
39
39
  */
@@ -52,6 +52,32 @@ const PROJEN_COMMANDS = {
52
52
  [javascript.NodePackageManager.YARN_BERRY]: 'yarn projen',
53
53
  [javascript.NodePackageManager.YARN_CLASSIC]: 'yarn projen',
54
54
  };
55
+ /**
56
+ * The name of the command that installs dependencies in a worktree hook, per
57
+ * package manager. The binary rather than the enum value, so that every yarn
58
+ * version is `yarn`.
59
+ */
60
+ const PACKAGE_MANAGER_BINARIES = {
61
+ [javascript.NodePackageManager.BUN]: 'bun',
62
+ [javascript.NodePackageManager.NPM]: 'npm',
63
+ [javascript.NodePackageManager.PNPM]: 'pnpm',
64
+ [javascript.NodePackageManager.YARN]: 'yarn',
65
+ [javascript.NodePackageManager.YARN2]: 'yarn',
66
+ [javascript.NodePackageManager.YARN_BERRY]: 'yarn',
67
+ [javascript.NodePackageManager.YARN_CLASSIC]: 'yarn',
68
+ };
69
+ /**
70
+ * The `sync` command of the default `pre-start` pipeline. Worktrunk fails on
71
+ * undefined variables, and leaves `remote` undefined in a repository with no
72
+ * remote and `base` undefined for a worktree on an existing branch, so the
73
+ * command is skipped there. Worktrunk approves a command by its exact text, so
74
+ * editing it asks every teammate to approve it again.
75
+ */
76
+ const WORKTRUNK_SYNC_COMMAND = '{% if remote and base and base == default_branch %}git fetch {{ remote }} {{ default_branch }} && git merge --ff-only --quiet {{ remote }}/{{ default_branch }}{% endif %}';
77
+ /**
78
+ * Copies each tracked `.env.example` to a `.env` that is missing.
79
+ */
80
+ const WORKTRUNK_ENV_COMMAND = 'git ls-files -- ":(glob)**/.env.example" | while read -r example; do target=${example%.example}; [ -e "$target" ] || cp "$example" "$target"; done';
55
81
  /**
56
82
  * How long a release must have been published before Renovate proposes it.
57
83
  *
@@ -886,7 +912,22 @@ _a = Project, _Project_ownedDevDeps = new WeakMap(), _Project_instances = new We
886
912
  if (!worktrunk || this.parent) {
887
913
  return;
888
914
  }
889
- this.worktrunk = new Worktrunk(this, worktrunk);
915
+ // Replaced whole per event, not deep-merged like the other defaults: the
916
+ // three hook forms cannot be merged into one another.
917
+ this.worktrunk = new Worktrunk(this, {
918
+ ...worktrunk,
919
+ config: {
920
+ ...worktrunk.config,
921
+ 'pre-start': worktrunk.config?.['pre-start'] ?? __classPrivateFieldGet(this, _Project_instances, "m", _Project_defaultPreStart).call(this),
922
+ },
923
+ });
924
+ }, _Project_defaultPreStart = function _Project_defaultPreStart() {
925
+ const install = this.package && {
926
+ [PACKAGE_MANAGER_BINARIES[this.package.packageManager]]: this.package.installCommand,
927
+ };
928
+ const cargo = this.cargo && { cargo: this.cargo.installCommand };
929
+ const uv = this.uv && { uv: this.uv.installCommand };
930
+ return pipeline({ sync: WORKTRUNK_SYNC_COMMAND }, { env: WORKTRUNK_ENV_COMMAND, ...install, ...cargo, ...uv });
890
931
  }, _Project_populateTypeScriptProjectReferencesFromDependencies = function _Project_populateTypeScriptProjectReferencesFromDependencies() {
891
932
  if (this.parent || !this.package || !this.typeScriptConfig) {
892
933
  return;
@@ -909,7 +950,7 @@ _a = Project, _Project_ownedDevDeps = new WeakMap(), _Project_instances = new We
909
950
  }
910
951
  };
911
952
  const getProjenCommand = ({ package: pkg }) => PROJEN_COMMANDS[pkg?.packageManager ?? DEFAULT_PACKAGE_MANAGER];
912
- const getGitIgnoreOptions = ({ gitIgnoreOptions, husky: huskyOptions, parent, typeScriptConfig: typeScriptConfigOptions, withTerraform, }) => parent
953
+ const getGitIgnoreOptions = ({ gitIgnoreOptions, husky: huskyOptions, parent, typeScriptConfig: typeScriptConfigOptions, withTerraform, worktrunk, }) => parent
913
954
  ? gitIgnoreOptions
914
955
  : {
915
956
  ignorePatterns: [
@@ -918,6 +959,7 @@ const getGitIgnoreOptions = ({ gitIgnoreOptions, husky: huskyOptions, parent, ty
918
959
  !.babelrc
919
960
  !.dockerignore
920
961
  !.editorconfig
962
+ ${worktrunk ? '!.env.example' : ''}
921
963
  !.gitattributes
922
964
  !.gitignore
923
965
  !.gitkeep
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,EAAE,KAAK,EAAgB,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAoB,MAAM,8BAA8B,CAAA;AAC1E,OAAO,EAEL,YAAY,EACZ,cAAc,GACf,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,UAAU,GAEX,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,MAAM,EAAsB,MAAM,2BAA2B,CAAA;AACtE,OAAO,EACL,YAAY,GAEb,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,MAAM,EAAiB,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAqB,MAAM,0BAA0B,CAAA;AACnE,OAAO,EAAE,UAAU,EAAqB,MAAM,gCAAgC,CAAA;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAqB,MAAM,gCAAgC,CAAA;AAC9E,OAAO,EACL,eAAe,GAEhB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EACL,aAAa,GAEd,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAmB,MAAM,6BAA6B,CAAA;AACvE,OAAO,EAAE,UAAU,EAA0B,MAAM,2BAA2B,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAwB,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,IAAI,EAAoB,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,SAAS,EAAyB,MAAM,0BAA0B,CAAA;AAC3E,OAAO,EAEL,EAAE,GAEH,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,gBAAgB,GAEjB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAAkB,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAyB,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EACL,OAAO,IAAI,WAAW,EAGtB,cAAc,EACd,UAAU,EAEV,UAAU,GACX,MAAM,QAAQ,CAAA;AACf,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,sCAAsC,CAAA;AAEpD;;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;;;;;;;;;;;;;;;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;AAmJ1E,MAAM,OAAO,OAAQ,SAAQ,WAAW;IAkCtC,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,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;CA49BF;0JA38BoB,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,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;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,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,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,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;AACjD,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,GACE,EAAsC,EAAE,CACvD,MAAM;IACJ,CAAC,CAAC,gBAAgB;IAClB,CAAC,CAAC;QACE,cAAc,EAAE;YACd,GAAG;;;;;;;;;;;MAWP,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":";;;;;;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,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;AAmJ1E,MAAM,OAAO,OAAQ,SAAQ,WAAW;IAkCtC,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,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;CAs/BF;0JAr+BoB,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,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;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,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,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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@langri-sha/projen-project",
3
- "version": "0.33.0",
3
+ "version": "0.34.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,28 +23,28 @@
23
23
  "prepublishOnly": "rm -rf dist; tsc --project tsconfig.build.json"
24
24
  },
25
25
  "dependencies": {
26
- "@langri-sha/projen-babel": "0.5.17",
27
- "@langri-sha/projen-beachball": "0.5.14",
28
- "@langri-sha/projen-cargo": "0.1.9",
29
- "@langri-sha/projen-codeowners": "0.5.14",
30
- "@langri-sha/projen-dagger": "0.3.2",
31
- "@langri-sha/projen-editorconfig": "0.6.14",
32
- "@langri-sha/projen-eslint": "0.3.18",
33
- "@langri-sha/projen-husky": "0.3.24",
34
- "@langri-sha/projen-jest-config": "0.4.19",
35
- "@langri-sha/projen-license": "0.3.17",
36
- "@langri-sha/projen-lint-staged": "0.3.19",
37
- "@langri-sha/projen-lint-synthesized": "0.5.18",
38
- "@langri-sha/projen-pnpm-workspace": "0.4.14",
39
- "@langri-sha/projen-prettier": "0.4.19",
40
- "@langri-sha/projen-readme": "0.1.14",
41
- "@langri-sha/projen-renovate": "0.4.26",
42
- "@langri-sha/projen-ruff": "0.1.0",
43
- "@langri-sha/projen-swcrc": "0.1.26",
44
- "@langri-sha/projen-ty": "0.1.0",
45
- "@langri-sha/projen-typescript-config": "0.5.22",
46
- "@langri-sha/projen-uv": "0.1.6",
47
- "@langri-sha/projen-worktrunk": "0.1.5",
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.20",
35
+ "projen-license": "0.3.18",
36
+ "projen-lint-staged": "0.3.20",
37
+ "projen-lint-synthesized": "0.5.19",
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-swcrc": "0.1.27",
44
+ "projen-ty": "0.1.1",
45
+ "projen-typescript-config": "0.5.23",
46
+ "projen-uv": "0.2.0",
47
+ "projen-worktrunk": "0.1.6",
48
48
  "ramda": "0.32.0",
49
49
  "semver": "7.8.5"
50
50
  },
package/project.d.ts CHANGED
@@ -1 +1 @@
1
- import '@langri-sha/projen-license/license'
1
+ import 'projen-license/license'
package/readme.md CHANGED
@@ -7,31 +7,71 @@ projects.
7
7
 
8
8
  - managing [Beachball] configuration for publishing packages
9
9
  - configures [PNPM] [workspaces]
10
- - configures [Cargo] workspaces with [`@langri-sha/projen-cargo`]
11
- - configures [Dagger] modules with [`@langri-sha/projen-dagger`]
12
- - configures [uv] workspaces with [`@langri-sha/projen-uv`]
13
- - configures [Ruff] with [`@langri-sha/projen-ruff`]
14
- - configures [ty] with [`@langri-sha/projen-ty`]
10
+ - configures [Cargo] workspaces with [`projen-cargo`]
11
+ - configures [Dagger] modules with [`projen-dagger`]
12
+ - configures [uv] workspaces with [`projen-uv`]
13
+ - configures [Ruff] with [`projen-ruff`]
14
+ - configures [ty] with [`projen-ty`]
15
15
  - configures [`@langri-sha/tsconfig`] for TypeScript monorepos
16
- - managing Git hooks with [`@langri-sha/projen-husky`]
16
+ - managing Git hooks with [`projen-husky`]
17
17
  - configures extensive list of Git ignore patterns
18
- - manages [code owners] with [`@langri-sha/projen-codeowners`]
19
- - configures [Worktrunk] worktree hooks with [`@langri-sha/projen-worktrunk`]
20
-
21
- [`@langri-sha/projen-cargo`]:
22
- https://www.npmjs.com/package/@langri-sha/projen-cargo
23
- [`@langri-sha/projen-codeowners`]:
24
- https://www.npmjs.com/package/@langri-sha/projen-codeowners
25
- [`@langri-sha/projen-dagger`]:
26
- https://www.npmjs.com/package/@langri-sha/projen-dagger
27
- [`@langri-sha/projen-husky`]:
28
- https://www.npmjs.com/package/@langri-sha/projen-husky
29
- [`@langri-sha/projen-ruff`]:
30
- https://www.npmjs.com/package/@langri-sha/projen-ruff
31
- [`@langri-sha/projen-ty`]: https://www.npmjs.com/package/@langri-sha/projen-ty
32
- [`@langri-sha/projen-uv`]: https://www.npmjs.com/package/@langri-sha/projen-uv
33
- [`@langri-sha/projen-worktrunk`]:
34
- https://www.npmjs.com/package/@langri-sha/projen-worktrunk
18
+ - manages [code owners] with [`projen-codeowners`]
19
+ - configures [Worktrunk] worktree hooks with [`projen-worktrunk`]
20
+
21
+ ## Worktrunk
22
+
23
+ Given a `worktrunk` option, the preset supplies a `pre-start` pipeline that
24
+ prepares each new worktree:
25
+
26
+ 1. `sync` fetches the default branch and fast-forwards the new branch to it. It
27
+ is skipped without a remote, for a branch created from another base, and for
28
+ a worktree on an existing branch.
29
+ 2. Once `sync` succeeds, `env` copies each tracked `.env.example` to a `.env`
30
+ that is missing, alongside a command per toolchain that installs its
31
+ dependencies from the lockfile: one named after the package manager (`pnpm`,
32
+ `npm`, `yarn` or `bun`) for `package`, `cargo` for `cargo` and `uv` for `uv`,
33
+ workspace members included.
34
+
35
+ The preset's `.gitignore` re-includes `.env.example`, which its deny-by-default
36
+ `.*` would otherwise hide. A step that fails stops the pipeline, so when `sync`
37
+ fails, for example offline, `env` and the installs do not run until
38
+ `wt hook pre-start` runs them.
39
+
40
+ A toolchain gets a command only when the root project configures it, so a crate
41
+ or a Python package in a subproject outside of a workspace gets none. The
42
+ `cargo` and `uv` commands fail rather than create or update a lockfile, so a
43
+ project commits `Cargo.lock` and `uv.lock` first.
44
+
45
+ A `pre-start` in `worktrunk.config`, in any form, replaces the pipeline whole,
46
+ while hooks for other events are written as given:
47
+
48
+ ```ts
49
+ import { Project } from '@langri-sha/projen-project'
50
+
51
+ new Project({
52
+ name: 'my-project',
53
+ worktrunk: {
54
+ config: { 'pre-start': { install: 'pnpm install --frozen-lockfile' } },
55
+ },
56
+ })
57
+ ```
58
+
59
+ To add to the pipeline instead, append a step, which runs once the steps before
60
+ it succeed: `project.worktrunk?.addStep('pre-start', { build: 'pnpm build' })`.
61
+ The event is already taken, so `addHook('pre-start', ...)` throws.
62
+
63
+ Worktrunk asks each teammate to approve a project's commands before it first
64
+ runs them, so no default runs unseen. It remembers approval by the exact text of
65
+ a command.
66
+
67
+ [`projen-cargo`]: https://www.npmjs.com/package/projen-cargo
68
+ [`projen-codeowners`]: https://www.npmjs.com/package/projen-codeowners
69
+ [`projen-dagger`]: https://www.npmjs.com/package/projen-dagger
70
+ [`projen-husky`]: https://www.npmjs.com/package/projen-husky
71
+ [`projen-ruff`]: https://www.npmjs.com/package/projen-ruff
72
+ [`projen-ty`]: https://www.npmjs.com/package/projen-ty
73
+ [`projen-uv`]: https://www.npmjs.com/package/projen-uv
74
+ [`projen-worktrunk`]: https://www.npmjs.com/package/projen-worktrunk
35
75
  [`@langri-sha/tsconfig`]: https://www.npmjs.com/package/@langri-sha/tsconfig
36
76
  [beachball]: https://microsoft.github.io/beachball/
37
77
  [cargo]: https://doc.rust-lang.org/cargo/
package/src/index.ts CHANGED
@@ -1,51 +1,6 @@
1
1
  import { createRequire } from 'node:module'
2
2
  import * as path from 'node:path'
3
3
 
4
- import { Babel, BabelOptions } from '@langri-sha/projen-babel'
5
- import { Beachball, BeachballOptions } from '@langri-sha/projen-beachball'
6
- import {
7
- type CargoOptions,
8
- CargoPackage,
9
- CargoWorkspace,
10
- } from '@langri-sha/projen-cargo'
11
- import {
12
- Codeowners,
13
- type CodeownersOptions,
14
- } from '@langri-sha/projen-codeowners'
15
- import { Dagger, type DaggerOptions } from '@langri-sha/projen-dagger'
16
- import {
17
- EditorConfig,
18
- type EditorConfigOptions,
19
- } from '@langri-sha/projen-editorconfig'
20
- import { ESLint, ESLintOptions } from '@langri-sha/projen-eslint'
21
- import { Husky, type HuskyOptions } from '@langri-sha/projen-husky'
22
- import { JestConfig, JestConfigOptions } from '@langri-sha/projen-jest-config'
23
- import { License } from '@langri-sha/projen-license'
24
- import { LintStaged, LintStagedOptions } from '@langri-sha/projen-lint-staged'
25
- import {
26
- LintSynthesized,
27
- type LintSynthesizedOptions,
28
- } from '@langri-sha/projen-lint-synthesized'
29
- import {
30
- PnpmWorkspace,
31
- PnpmWorkspaceOptions,
32
- } from '@langri-sha/projen-pnpm-workspace'
33
- import { Prettier, PrettierOptions } from '@langri-sha/projen-prettier'
34
- import { ReadmeFile, type ReadmeFileOptions } from '@langri-sha/projen-readme'
35
- import { Renovate, type RenovateOptions } from '@langri-sha/projen-renovate'
36
- import { Ruff, type RuffOptions } from '@langri-sha/projen-ruff'
37
- import { SWCConfig, type SWCConfigOptions } from '@langri-sha/projen-swcrc'
38
- import {
39
- type SupportedPythonVersion,
40
- Ty,
41
- type TyOptions,
42
- } from '@langri-sha/projen-ty'
43
- import {
44
- TypeScriptConfig,
45
- type TypeScriptConfigOptions,
46
- } from '@langri-sha/projen-typescript-config'
47
- import { type UvOptions, UvPackage, UvWorkspace } from '@langri-sha/projen-uv'
48
- import { Worktrunk, type WorktrunkOptions } from '@langri-sha/projen-worktrunk'
49
4
  import {
50
5
  Project as BaseProject,
51
6
  type ProjectOptions as BaseProjectOptions,
@@ -55,13 +10,41 @@ import {
55
10
  IgnoreFileOptions,
56
11
  javascript,
57
12
  } from 'projen'
13
+ import { Babel, BabelOptions } from 'projen-babel-config'
14
+ import { Beachball, BeachballOptions } from 'projen-beachball'
15
+ import { type CargoOptions, CargoPackage, CargoWorkspace } from 'projen-cargo'
16
+ import { Codeowners, type CodeownersOptions } from 'projen-codeowners'
17
+ import { Dagger, type DaggerOptions } from 'projen-dagger'
18
+ import { EditorConfig, type EditorConfigOptions } from 'projen-editorconfig'
19
+ import { ESLint, ESLintOptions } from 'projen-eslint'
20
+ import { Husky, type HuskyOptions } from 'projen-husky'
21
+ import { JestConfig, JestConfigOptions } from 'projen-jest-config'
22
+ import { License } from 'projen-license'
23
+ import { LintStaged, LintStagedOptions } from 'projen-lint-staged'
24
+ import {
25
+ LintSynthesized,
26
+ type LintSynthesizedOptions,
27
+ } from 'projen-lint-synthesized'
28
+ import { PnpmWorkspace, PnpmWorkspaceOptions } from 'projen-pnpm-workspace'
29
+ import { Prettier, PrettierOptions } from 'projen-prettier'
30
+ import { ReadmeFile, type ReadmeFileOptions } from 'projen-readme'
31
+ import { Renovate, type RenovateOptions } from 'projen-renovate'
32
+ import { Ruff, type RuffOptions } from 'projen-ruff'
33
+ import { SWCConfig, type SWCConfigOptions } from 'projen-swcrc'
34
+ import { type SupportedPythonVersion, Ty, type TyOptions } from 'projen-ty'
35
+ import {
36
+ TypeScriptConfig,
37
+ type TypeScriptConfigOptions,
38
+ } from 'projen-typescript-config'
39
+ import { type UvOptions, UvPackage, UvWorkspace } from 'projen-uv'
40
+ import { Worktrunk, type WorktrunkOptions, pipeline } from 'projen-worktrunk'
58
41
  import * as R from 'ramda'
59
42
  import { satisfies, valid } from 'semver'
60
43
 
61
44
  import { GitAttributesFile } from './lib/gitattributes.js'
62
45
  import { NodePackage, NodePackageOptions, ProjenrcFile } from './lib/index.js'
63
46
 
64
- export * from '@langri-sha/projen-typescript-config'
47
+ export * from 'projen-typescript-config'
65
48
 
66
49
  /**
67
50
  * The package manager assumed when a project does not name one.
@@ -83,6 +66,38 @@ const PROJEN_COMMANDS: Record<javascript.NodePackageManager, string> = {
83
66
  [javascript.NodePackageManager.YARN_CLASSIC]: 'yarn projen',
84
67
  }
85
68
 
69
+ /**
70
+ * The name of the command that installs dependencies in a worktree hook, per
71
+ * package manager. The binary rather than the enum value, so that every yarn
72
+ * version is `yarn`.
73
+ */
74
+ const PACKAGE_MANAGER_BINARIES: Record<javascript.NodePackageManager, string> =
75
+ {
76
+ [javascript.NodePackageManager.BUN]: 'bun',
77
+ [javascript.NodePackageManager.NPM]: 'npm',
78
+ [javascript.NodePackageManager.PNPM]: 'pnpm',
79
+ [javascript.NodePackageManager.YARN]: 'yarn',
80
+ [javascript.NodePackageManager.YARN2]: 'yarn',
81
+ [javascript.NodePackageManager.YARN_BERRY]: 'yarn',
82
+ [javascript.NodePackageManager.YARN_CLASSIC]: 'yarn',
83
+ }
84
+
85
+ /**
86
+ * The `sync` command of the default `pre-start` pipeline. Worktrunk fails on
87
+ * undefined variables, and leaves `remote` undefined in a repository with no
88
+ * remote and `base` undefined for a worktree on an existing branch, so the
89
+ * command is skipped there. Worktrunk approves a command by its exact text, so
90
+ * editing it asks every teammate to approve it again.
91
+ */
92
+ const WORKTRUNK_SYNC_COMMAND =
93
+ '{% if remote and base and base == default_branch %}git fetch {{ remote }} {{ default_branch }} && git merge --ff-only --quiet {{ remote }}/{{ default_branch }}{% endif %}'
94
+
95
+ /**
96
+ * Copies each tracked `.env.example` to a `.env` that is missing.
97
+ */
98
+ const WORKTRUNK_ENV_COMMAND =
99
+ 'git ls-files -- ":(glob)**/.env.example" | while read -r example; do target=${example%.example}; [ -e "$target" ] || cp "$example" "$target"; done'
100
+
86
101
  /**
87
102
  * How long a release must have been published before Renovate proposes it.
88
103
  *
@@ -251,8 +266,8 @@ export interface ProjectOptions extends Omit<
251
266
  withTerraform?: boolean
252
267
 
253
268
  /**
254
- * Configures Worktrunk, when provided. No hooks are supplied by default:
255
- * each one runs on teammates' machines, so a project declares its own.
269
+ * Configures Worktrunk, when provided. Supplies a default `pre-start`
270
+ * pipeline, which a `pre-start` in `config`, in any form, replaces whole.
256
271
  */
257
272
  worktrunk?: WorktrunkOptions
258
273
  }
@@ -1368,7 +1383,33 @@ export class Project extends BaseProject {
1368
1383
  return
1369
1384
  }
1370
1385
 
1371
- this.worktrunk = new Worktrunk(this, worktrunk)
1386
+ // Replaced whole per event, not deep-merged like the other defaults: the
1387
+ // three hook forms cannot be merged into one another.
1388
+ this.worktrunk = new Worktrunk(this, {
1389
+ ...worktrunk,
1390
+ config: {
1391
+ ...worktrunk.config,
1392
+ 'pre-start': worktrunk.config?.['pre-start'] ?? this.#defaultPreStart(),
1393
+ },
1394
+ })
1395
+ }
1396
+
1397
+ /**
1398
+ * The install commands are the components' own text, so an upgrade that
1399
+ * changes one asks every teammate to approve the hook again.
1400
+ */
1401
+ #defaultPreStart() {
1402
+ const install = this.package && {
1403
+ [PACKAGE_MANAGER_BINARIES[this.package.packageManager]]:
1404
+ this.package.installCommand,
1405
+ }
1406
+ const cargo = this.cargo && { cargo: this.cargo.installCommand }
1407
+ const uv = this.uv && { uv: this.uv.installCommand }
1408
+
1409
+ return pipeline(
1410
+ { sync: WORKTRUNK_SYNC_COMMAND },
1411
+ { env: WORKTRUNK_ENV_COMMAND, ...install, ...cargo, ...uv },
1412
+ )
1372
1413
  }
1373
1414
 
1374
1415
  #populateTypeScriptProjectReferencesFromDependencies() {
@@ -1413,6 +1454,7 @@ const getGitIgnoreOptions = ({
1413
1454
  parent,
1414
1455
  typeScriptConfig: typeScriptConfigOptions,
1415
1456
  withTerraform,
1457
+ worktrunk,
1416
1458
  }: ProjectOptions): ProjectOptions['gitIgnoreOptions'] =>
1417
1459
  parent
1418
1460
  ? gitIgnoreOptions
@@ -1423,6 +1465,7 @@ const getGitIgnoreOptions = ({
1423
1465
  !.babelrc
1424
1466
  !.dockerignore
1425
1467
  !.editorconfig
1468
+ ${worktrunk ? '!.env.example' : ''}
1426
1469
  !.gitattributes
1427
1470
  !.gitignore
1428
1471
  !.gitkeep