projen 0.52.21 → 0.52.25
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/.jsii +139 -107
- package/changelog.md +3 -3
- package/docs/api/API.md +42 -39
- package/lib/awscdk/auto-discover.d.ts +14 -46
- package/lib/awscdk/auto-discover.js +8 -22
- package/lib/awscdk/awscdk-app-java.d.ts +10 -32
- package/lib/awscdk/awscdk-app-java.js +5 -9
- package/lib/awscdk/awscdk-app-ts.d.ts +15 -35
- package/lib/awscdk/awscdk-app-ts.js +6 -14
- package/lib/awscdk/awscdk-construct.d.ts +14 -28
- package/lib/awscdk/awscdk-construct.js +8 -16
- package/lib/awscdk/awscdk-deps-java.d.ts +1 -8
- package/lib/awscdk/awscdk-deps-java.js +3 -10
- package/lib/awscdk/awscdk-deps-js.d.ts +1 -8
- package/lib/awscdk/awscdk-deps-js.js +3 -10
- package/lib/awscdk/awscdk-deps.d.ts +28 -67
- package/lib/awscdk/awscdk-deps.js +5 -12
- package/lib/awscdk/cdk-config.d.ts +19 -51
- package/lib/awscdk/cdk-config.js +13 -11
- package/lib/awscdk/cdk-tasks.d.ts +7 -24
- package/lib/awscdk/cdk-tasks.js +3 -8
- package/lib/awscdk/integration-test.d.ts +7 -29
- package/lib/awscdk/integration-test.js +3 -8
- package/lib/awscdk/lambda-function.d.ts +22 -50
- package/lib/awscdk/lambda-function.js +11 -24
- package/lib/build/build-workflow.d.ts +33 -78
- package/lib/build/build-workflow.js +15 -25
- package/lib/cdk/auto-discover-base.d.ts +11 -34
- package/lib/cdk/auto-discover-base.js +5 -15
- package/lib/cdk/construct-lib.d.ts +8 -22
- package/lib/cdk/construct-lib.js +3 -8
- package/lib/cdk/integration-test-base.d.ts +12 -38
- package/lib/cdk/integration-test-base.js +2 -8
- package/lib/cdk/jsii-docgen.d.ts +6 -12
- package/lib/cdk/jsii-docgen.js +6 -8
- package/lib/cdk/jsii-project.d.ts +16 -95
- package/lib/cdk/jsii-project.js +3 -10
- package/lib/cdk8s/auto-discover.d.ts +6 -23
- package/lib/cdk8s/auto-discover.js +6 -15
- package/lib/cdk8s/cdk8s-app-ts.d.ts +21 -43
- package/lib/cdk8s/cdk8s-app-ts.js +4 -7
- package/lib/cdk8s/cdk8s-construct.d.ts +12 -27
- package/lib/cdk8s/cdk8s-construct.js +3 -7
- package/lib/cdk8s/integration-test.d.ts +2 -9
- package/lib/cdk8s/integration-test.js +3 -8
- package/lib/cdktf/cdktf-construct.d.ts +3 -12
- package/lib/cdktf/cdktf-construct.js +3 -7
- package/lib/component.d.ts +4 -17
- package/lib/component.js +6 -19
- package/lib/dependencies.d.ts +44 -77
- package/lib/dependencies.js +50 -38
- package/lib/dev-env.d.ts +26 -53
- package/lib/dev-env.js +9 -19
- package/lib/docker-compose.d.ts +83 -209
- package/lib/docker-compose.js +38 -61
- package/lib/file.d.ts +24 -71
- package/lib/file.js +4 -16
- package/lib/gitattributes.d.ts +3 -14
- package/lib/gitattributes.js +5 -16
- package/lib/github/auto-approve.d.ts +7 -23
- package/lib/github/auto-approve.js +3 -8
- package/lib/github/auto-merge.d.ts +7 -29
- package/lib/github/auto-merge.js +7 -16
- package/lib/github/dependabot.d.ts +54 -147
- package/lib/github/dependabot.js +81 -22
- package/lib/github/github-project.d.ts +26 -70
- package/lib/github/github-project.js +5 -10
- package/lib/github/github.d.ts +19 -58
- package/lib/github/github.js +9 -30
- package/lib/github/mergify.d.ts +9 -54
- package/lib/github/mergify.js +2 -14
- package/lib/github/pr-template.d.ts +3 -13
- package/lib/github/pr-template.js +3 -8
- package/lib/github/pull-request-lint.d.ts +8 -28
- package/lib/github/pull-request-lint.js +3 -9
- package/lib/github/stale.d.ts +17 -47
- package/lib/github/stale.js +6 -10
- package/lib/github/task-workflow.d.ts +21 -63
- package/lib/github/task-workflow.js +3 -8
- package/lib/github/workflows-model.d.ts +199 -582
- package/lib/github/workflows-model.js +5 -4
- package/lib/github/workflows.d.ts +14 -41
- package/lib/github/workflows.js +8 -16
- package/lib/gitlab/configuration-model.d.ts +145 -947
- package/lib/gitlab/configuration-model.js +11 -28
- package/lib/gitlab/configuration.d.ts +31 -121
- package/lib/gitlab/configuration.js +14 -49
- package/lib/gitlab/gitlab-configuration.d.ts +2 -13
- package/lib/gitlab/gitlab-configuration.js +4 -15
- package/lib/gitlab/nested-configuration.d.ts +1 -9
- package/lib/gitlab/nested-configuration.js +3 -8
- package/lib/gitpod.d.ts +71 -167
- package/lib/gitpod.js +75 -42
- package/lib/ignore-file.d.ts +4 -23
- package/lib/ignore-file.js +6 -25
- package/lib/ini.d.ts +2 -14
- package/lib/ini.js +3 -13
- package/lib/java/java-project.d.ts +29 -70
- package/lib/java/java-project.js +10 -17
- package/lib/java/junit.d.ts +5 -17
- package/lib/java/junit.js +3 -8
- package/lib/java/maven-compile.d.ts +4 -13
- package/lib/java/maven-compile.js +3 -8
- package/lib/java/maven-packaging.d.ts +6 -21
- package/lib/java/maven-packaging.js +3 -8
- package/lib/java/maven-sample.d.ts +2 -12
- package/lib/java/maven-sample.js +3 -8
- package/lib/java/pom.d.ts +38 -100
- package/lib/java/pom.js +13 -25
- package/lib/java/projenrc.d.ts +7 -22
- package/lib/java/projenrc.js +3 -8
- package/lib/javascript/bundler.d.ts +30 -72
- package/lib/javascript/bundler.js +13 -21
- package/lib/javascript/eslint.d.ts +27 -84
- package/lib/javascript/eslint.js +11 -30
- package/lib/javascript/jest.d.ts +91 -344
- package/lib/javascript/jest.js +6 -23
- package/lib/javascript/node-package.d.ts +111 -259
- package/lib/javascript/node-package.js +64 -81
- package/lib/javascript/node-project.d.ts +112 -220
- package/lib/javascript/node-project.js +54 -73
- package/lib/javascript/npm-config.d.ts +9 -19
- package/lib/javascript/npm-config.js +9 -16
- package/lib/javascript/prettier.d.ts +65 -196
- package/lib/javascript/prettier.js +70 -46
- package/lib/javascript/projenrc.d.ts +2 -12
- package/lib/javascript/projenrc.js +3 -8
- package/lib/javascript/typescript-config.d.ts +62 -158
- package/lib/javascript/typescript-config.js +31 -18
- package/lib/javascript/upgrade-dependencies.d.ts +35 -94
- package/lib/javascript/upgrade-dependencies.js +21 -51
- package/lib/json.d.ts +3 -17
- package/lib/json.js +3 -13
- package/lib/license.d.ts +3 -20
- package/lib/license.js +2 -13
- package/lib/logger.d.ts +18 -62
- package/lib/logger.js +17 -37
- package/lib/makefile.d.ts +14 -45
- package/lib/makefile.js +7 -25
- package/lib/object-file.d.ts +19 -39
- package/lib/object-file.js +17 -28
- package/lib/option-hints.d.ts +4 -13
- package/lib/option-hints.js +11 -5
- package/lib/project-build.d.ts +7 -26
- package/lib/project-build.js +3 -8
- package/lib/project.d.ts +64 -186
- package/lib/project.js +43 -91
- package/lib/projects.d.ts +11 -32
- package/lib/projects.js +4 -8
- package/lib/projenrc-json.d.ts +2 -12
- package/lib/projenrc-json.js +3 -8
- package/lib/python/pip.d.ts +7 -23
- package/lib/python/pip.js +8 -17
- package/lib/python/poetry.d.ts +36 -121
- package/lib/python/poetry.js +12 -26
- package/lib/python/projenrc.d.ts +4 -15
- package/lib/python/projenrc.js +3 -8
- package/lib/python/pytest.d.ts +3 -16
- package/lib/python/pytest.js +2 -8
- package/lib/python/python-deps.d.ts +7 -21
- package/lib/python/python-deps.js +1 -1
- package/lib/python/python-env.d.ts +1 -6
- package/lib/python/python-env.js +1 -1
- package/lib/python/python-packaging.d.ts +12 -34
- package/lib/python/python-packaging.js +1 -1
- package/lib/python/python-project.d.ts +34 -79
- package/lib/python/python-project.js +7 -20
- package/lib/python/python-sample.d.ts +2 -9
- package/lib/python/python-sample.js +3 -8
- package/lib/python/requirements-file.d.ts +4 -19
- package/lib/python/requirements-file.js +5 -15
- package/lib/python/setuppy.d.ts +11 -39
- package/lib/python/setuppy.js +3 -13
- package/lib/python/setuptools.d.ts +2 -14
- package/lib/python/setuptools.js +3 -8
- package/lib/python/venv.d.ts +4 -14
- package/lib/python/venv.js +4 -11
- package/lib/readme.d.ts +7 -16
- package/lib/readme.js +5 -7
- package/lib/release/publisher.d.ts +103 -206
- package/lib/release/publisher.js +47 -59
- package/lib/release/release-trigger.d.ts +16 -48
- package/lib/release/release-trigger.js +8 -18
- package/lib/release/release.d.ts +50 -110
- package/lib/release/release.js +9 -24
- package/lib/run-task.js +1820 -0
- package/lib/sample-file.d.ts +14 -47
- package/lib/sample-file.js +9 -30
- package/lib/semver.d.ts +4 -21
- package/lib/semver.js +6 -20
- package/lib/source-code.d.ts +7 -23
- package/lib/source-code.js +7 -19
- package/lib/task-model.d.ts +21 -61
- package/lib/task-model.js +1 -1
- package/lib/task-runtime.d.ts +7 -24
- package/lib/task-runtime.js +7 -20
- package/lib/task.d.ts +29 -73
- package/lib/task.js +28 -61
- package/lib/tasks.d.ts +12 -34
- package/lib/tasks.js +14 -36
- package/lib/testing.d.ts +6 -10
- package/lib/testing.js +8 -12
- package/lib/textfile.d.ts +9 -24
- package/lib/textfile.js +9 -19
- package/lib/toml.d.ts +2 -14
- package/lib/toml.js +3 -13
- package/lib/typescript/projenrc.d.ts +4 -14
- package/lib/typescript/projenrc.js +3 -8
- package/lib/typescript/typescript-typedoc.d.ts +1 -6
- package/lib/typescript/typescript-typedoc.js +3 -8
- package/lib/typescript/typescript.d.ts +24 -82
- package/lib/typescript/typescript.js +6 -15
- package/lib/version.d.ts +9 -38
- package/lib/version.js +2 -11
- package/lib/vscode/devcontainer.d.ts +10 -30
- package/lib/vscode/devcontainer.js +10 -26
- package/lib/vscode/launch-config.d.ts +18 -97
- package/lib/vscode/launch-config.js +9 -15
- package/lib/vscode/vscode.d.ts +0 -9
- package/lib/vscode/vscode.js +2 -11
- package/lib/web/next.d.ts +19 -60
- package/lib/web/next.js +6 -20
- package/lib/web/postcss.d.ts +3 -24
- package/lib/web/postcss.js +3 -8
- package/lib/web/react.d.ts +13 -60
- package/lib/web/react.js +7 -32
- package/lib/web/tailwind.d.ts +1 -15
- package/lib/web/tailwind.js +3 -7
- package/lib/xmlfile.d.ts +2 -14
- package/lib/xmlfile.js +3 -13
- package/lib/yaml.d.ts +4 -19
- package/lib/yaml.js +3 -13
- package/package.json +5 -5
- package/releasetag.txt +1 -1
- package/version.txt +1 -1
|
@@ -1,36 +1,28 @@
|
|
|
1
1
|
import { Component } from "../component";
|
|
2
2
|
import { GitHub } from "./github";
|
|
3
|
-
/**
|
|
4
|
-
* @experimental
|
|
5
|
-
*/
|
|
6
3
|
export interface DependabotOptions {
|
|
7
4
|
/**
|
|
8
|
-
*
|
|
5
|
+
* How often to check for new versions and raise pull requests.
|
|
9
6
|
*
|
|
10
7
|
* @default ScheduleInterval.DAILY
|
|
11
|
-
* @experimental
|
|
12
8
|
*/
|
|
13
9
|
readonly scheduleInterval?: DependabotScheduleInterval;
|
|
14
10
|
/**
|
|
15
|
-
*
|
|
11
|
+
* The strategy to use when edits manifest and lock files.
|
|
16
12
|
*
|
|
17
13
|
* @default VersioningStrategy.LOCKFILE_ONLY The default is to only update the
|
|
18
14
|
* lock file because package.json is controlled by projen and any outside
|
|
19
15
|
* updates will fail the build.
|
|
20
|
-
* @experimental
|
|
21
16
|
*/
|
|
22
17
|
readonly versioningStrategy?: VersioningStrategy;
|
|
23
18
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
19
|
+
* You can use the `ignore` option to customize which dependencies are updated.
|
|
26
20
|
* The ignore option supports the following options.
|
|
27
|
-
*
|
|
28
21
|
* @default []
|
|
29
|
-
* @experimental
|
|
30
22
|
*/
|
|
31
23
|
readonly ignore?: DependabotIgnore[];
|
|
32
24
|
/**
|
|
33
|
-
*
|
|
25
|
+
* Ignores updates to `projen`.
|
|
34
26
|
*
|
|
35
27
|
* This is required since projen updates may cause changes in committed files
|
|
36
28
|
* and anti-tamper checks will fail.
|
|
@@ -38,303 +30,218 @@ export interface DependabotOptions {
|
|
|
38
30
|
* Projen upgrades are covered through the `ProjenUpgrade` class.
|
|
39
31
|
*
|
|
40
32
|
* @default true
|
|
41
|
-
* @experimental
|
|
42
33
|
*/
|
|
43
34
|
readonly ignoreProjen?: boolean;
|
|
44
35
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* @experimental
|
|
36
|
+
* List of labels to apply to the created PR's.
|
|
48
37
|
*/
|
|
49
38
|
readonly labels?: string[];
|
|
50
39
|
/**
|
|
51
|
-
*
|
|
52
|
-
*
|
|
40
|
+
* Map of package registries to use
|
|
53
41
|
* @default - use public registries
|
|
54
|
-
* @experimental
|
|
55
42
|
*/
|
|
56
43
|
readonly registries?: {
|
|
57
44
|
[name: string]: DependabotRegistry;
|
|
58
45
|
};
|
|
59
46
|
}
|
|
60
47
|
/**
|
|
61
|
-
*
|
|
62
|
-
*
|
|
48
|
+
* Use to add private registry support for dependabot
|
|
63
49
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#configuration-options-for-private-registries
|
|
64
|
-
* @experimental
|
|
65
50
|
*/
|
|
66
51
|
export interface DependabotRegistry {
|
|
67
52
|
/**
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
* @experimental
|
|
53
|
+
* Registry type e.g. 'npm-registry' or 'docker-registry'
|
|
71
54
|
*/
|
|
72
55
|
readonly type: DependabotRegistryType;
|
|
73
56
|
/**
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
* @experimental
|
|
57
|
+
* Url for the registry e.g. 'https://npm.pkg.github.com' or 'registry.hub.docker.com'
|
|
77
58
|
*/
|
|
78
59
|
readonly url: string;
|
|
79
60
|
/**
|
|
80
|
-
*
|
|
81
|
-
*
|
|
61
|
+
* The username that Dependabot uses to access the registry
|
|
82
62
|
* @default - do not authenticate
|
|
83
|
-
* @experimental
|
|
84
63
|
*/
|
|
85
64
|
readonly username?: string;
|
|
86
65
|
/**
|
|
87
|
-
*
|
|
88
|
-
*
|
|
66
|
+
* A reference to a Dependabot secret containing the password for the specified user
|
|
89
67
|
* @default undefined
|
|
90
|
-
* @experimental
|
|
91
68
|
*/
|
|
92
69
|
readonly password?: string;
|
|
93
70
|
/**
|
|
94
|
-
*
|
|
95
|
-
*
|
|
71
|
+
* A reference to a Dependabot secret containing an access key for this registry
|
|
96
72
|
* @default undefined
|
|
97
|
-
* @experimental
|
|
98
73
|
*/
|
|
99
74
|
readonly key?: string;
|
|
100
75
|
/**
|
|
101
|
-
*
|
|
102
|
-
*
|
|
76
|
+
* Secret token for dependabot access e.g. '${{ secrets.DEPENDABOT_PACKAGE_TOKEN }}'
|
|
103
77
|
* @default undefined
|
|
104
|
-
* @experimental
|
|
105
78
|
*/
|
|
106
79
|
readonly token?: string;
|
|
107
80
|
/**
|
|
108
|
-
*
|
|
109
|
-
*
|
|
81
|
+
* For registries with type: python-index, if the boolean value is true, pip
|
|
82
|
+
* esolves dependencies by using the specified URL rather than the base URL of
|
|
83
|
+
* the Python Package Index (by default https://pypi.org/simple)
|
|
110
84
|
* @default undefined
|
|
111
|
-
* @experimental
|
|
112
85
|
*/
|
|
113
86
|
readonly replacesBase?: boolean;
|
|
114
87
|
/**
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
* @default undefined
|
|
88
|
+
* Used with the hex-organization registry type.
|
|
118
89
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#hex-organization
|
|
119
|
-
* @
|
|
90
|
+
* @default undefined
|
|
120
91
|
*/
|
|
121
92
|
readonly organization?: string;
|
|
122
93
|
}
|
|
123
94
|
/**
|
|
124
|
-
*
|
|
125
|
-
*
|
|
95
|
+
* Each configuration type requires you to provide particular settings.
|
|
126
96
|
* Some types allow more than one way to connect
|
|
127
|
-
*
|
|
128
97
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#configuration-options-for-private-registries
|
|
129
|
-
* @experimental
|
|
130
98
|
*/
|
|
131
99
|
export declare enum DependabotRegistryType {
|
|
132
100
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
101
|
+
* The composer-repository type supports username and password.
|
|
135
102
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#composer-repository
|
|
136
|
-
* @experimental
|
|
137
103
|
*/
|
|
138
104
|
COMPOSER_REGISTRY = "composer-registry",
|
|
139
105
|
/**
|
|
140
|
-
*
|
|
141
|
-
*
|
|
106
|
+
* The docker-registry type supports username and password.
|
|
142
107
|
* The docker-registry type can also be used to pull from Amazon ECR using static AWS credentials
|
|
143
|
-
*
|
|
144
108
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#docker-registry
|
|
145
|
-
* @experimental
|
|
146
109
|
*/
|
|
147
110
|
DOCKER_REGISTRY = "docker-registry",
|
|
148
111
|
/**
|
|
149
|
-
*
|
|
150
|
-
*
|
|
112
|
+
* The git type supports username and password
|
|
151
113
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#git
|
|
152
|
-
* @experimental
|
|
153
114
|
*/
|
|
154
115
|
GIT = "git",
|
|
155
116
|
/**
|
|
156
|
-
*
|
|
157
|
-
*
|
|
117
|
+
* The hex-organization type supports organization and key
|
|
158
118
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#hex-organization
|
|
159
|
-
* @experimental
|
|
160
119
|
*/
|
|
161
120
|
HEX_ORGANIZATION = "hex-organization",
|
|
162
121
|
/**
|
|
163
|
-
*
|
|
164
|
-
*
|
|
122
|
+
* The maven-repository type supports username and password, or token
|
|
165
123
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#maven-repository
|
|
166
|
-
* @experimental
|
|
167
124
|
*/
|
|
168
125
|
MAVEN_REPOSITORY = "maven-repository",
|
|
169
126
|
/**
|
|
170
|
-
*
|
|
171
|
-
*
|
|
127
|
+
* The npm-registry type supports username and password, or token
|
|
172
128
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#npm-registry
|
|
173
|
-
* @experimental
|
|
174
129
|
*/
|
|
175
130
|
NPM_REGISTRY = "npm-registry",
|
|
176
131
|
/**
|
|
177
|
-
*
|
|
178
|
-
*
|
|
132
|
+
* The nuget-feed type supports username and password, or token
|
|
179
133
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#nuget-feed
|
|
180
|
-
* @experimental
|
|
181
134
|
*/
|
|
182
135
|
NUGET_FEED = "nuget-feed",
|
|
183
136
|
/**
|
|
184
|
-
*
|
|
185
|
-
*
|
|
137
|
+
* The python-index type supports username and password, or token
|
|
186
138
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#python-index
|
|
187
|
-
* @experimental
|
|
188
139
|
*/
|
|
189
140
|
PYTHON_INDEX = "python-index",
|
|
190
141
|
/**
|
|
191
|
-
*
|
|
192
|
-
*
|
|
142
|
+
* The rubygems-server type supports username and password, or token
|
|
193
143
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#rubygems-server
|
|
194
|
-
* @experimental
|
|
195
144
|
*/
|
|
196
145
|
RUBYGEMS_SERVER = "rubygems-server",
|
|
197
146
|
/**
|
|
198
|
-
*
|
|
199
|
-
*
|
|
147
|
+
* The terraform-registry type supports a token
|
|
200
148
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#terraform-registry
|
|
201
|
-
* @experimental
|
|
202
149
|
*/
|
|
203
150
|
TERRAFORM_REGISTRY = "terraform-registry"
|
|
204
151
|
}
|
|
205
152
|
/**
|
|
206
|
-
*
|
|
207
|
-
*
|
|
153
|
+
* You can use the `ignore` option to customize which dependencies are updated.
|
|
208
154
|
* The ignore option supports the following options.
|
|
209
|
-
*
|
|
210
|
-
* @experimental
|
|
211
155
|
*/
|
|
212
156
|
export interface DependabotIgnore {
|
|
213
157
|
/**
|
|
214
|
-
*
|
|
158
|
+
* Use to ignore updates for dependencies with matching names, optionally
|
|
159
|
+
* using `*` to match zero or more characters.
|
|
215
160
|
*
|
|
216
161
|
* For Java dependencies, the format of the dependency-name attribute is:
|
|
217
162
|
* `groupId:artifactId`, for example: `org.kohsuke:github-api`.
|
|
218
|
-
*
|
|
219
|
-
* @experimental
|
|
220
163
|
*/
|
|
221
164
|
readonly dependencyName: string;
|
|
222
165
|
/**
|
|
223
|
-
*
|
|
224
|
-
*
|
|
225
|
-
* If you want to
|
|
166
|
+
* Use to ignore specific versions or ranges of versions. If you want to
|
|
226
167
|
* define a range, use the standard pattern for the package manager (for
|
|
227
168
|
* example: `^1.0.0` for npm, or `~> 2.0` for Bundler).
|
|
228
|
-
*
|
|
229
|
-
* @experimental
|
|
230
169
|
*/
|
|
231
170
|
readonly versions?: string[];
|
|
232
171
|
}
|
|
233
172
|
/**
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
* @experimental
|
|
173
|
+
* How often to check for new versions and raise pull requests for version
|
|
174
|
+
* updates.
|
|
237
175
|
*/
|
|
238
176
|
export declare enum DependabotScheduleInterval {
|
|
239
177
|
/**
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
* @experimental
|
|
178
|
+
* Runs on every weekday, Monday to Friday.
|
|
243
179
|
*/
|
|
244
180
|
DAILY = "daily",
|
|
245
181
|
/**
|
|
246
|
-
*
|
|
247
|
-
*
|
|
248
|
-
* By default, this is on Monday.
|
|
249
|
-
*
|
|
250
|
-
* @experimental
|
|
182
|
+
* Runs once each week. By default, this is on Monday.
|
|
251
183
|
*/
|
|
252
184
|
WEEKLY = "weekly",
|
|
253
185
|
/**
|
|
254
|
-
*
|
|
255
|
-
*
|
|
256
|
-
* This is on the first day of the month.
|
|
257
|
-
*
|
|
258
|
-
* @experimental
|
|
186
|
+
* Runs once each month. This is on the first day of the month.
|
|
259
187
|
*/
|
|
260
188
|
MONTHLY = "monthly"
|
|
261
189
|
}
|
|
262
190
|
/**
|
|
263
|
-
*
|
|
264
|
-
*
|
|
265
|
-
* @experimental
|
|
191
|
+
* The strategy to use when edits manifest and lock files.
|
|
266
192
|
*/
|
|
267
193
|
export declare enum VersioningStrategy {
|
|
268
194
|
/**
|
|
269
|
-
*
|
|
270
|
-
*
|
|
271
|
-
* Ignore any new
|
|
195
|
+
* Only create pull requests to update lockfiles updates. Ignore any new
|
|
272
196
|
* versions that would require package manifest changes.
|
|
273
|
-
*
|
|
274
|
-
* @experimental
|
|
275
197
|
*/
|
|
276
198
|
LOCKFILE_ONLY = "lockfile-only",
|
|
277
199
|
/**
|
|
278
|
-
*
|
|
279
|
-
*
|
|
200
|
+
* - For apps, the version requirements are increased.
|
|
280
201
|
* - For libraries, the range of versions is widened.
|
|
281
|
-
*
|
|
282
|
-
* @experimental
|
|
283
202
|
*/
|
|
284
203
|
AUTO = "auto",
|
|
285
204
|
/**
|
|
286
|
-
*
|
|
287
|
-
*
|
|
288
|
-
* @experimental
|
|
205
|
+
* Relax the version requirement to include both the new and old version, when
|
|
206
|
+
* possible.
|
|
289
207
|
*/
|
|
290
208
|
WIDEN = "widen",
|
|
291
209
|
/**
|
|
292
|
-
*
|
|
293
|
-
*
|
|
294
|
-
* @experimental
|
|
210
|
+
* Always increase the version requirement to match the new version.
|
|
295
211
|
*/
|
|
296
212
|
INCREASE = "increase",
|
|
297
213
|
/**
|
|
298
|
-
*
|
|
299
|
-
*
|
|
300
|
-
* @experimental
|
|
214
|
+
* Increase the version requirement only when required by the new version.
|
|
301
215
|
*/
|
|
302
216
|
INCREASE_IF_NECESSARY = "increase-if-necessary"
|
|
303
217
|
}
|
|
304
218
|
/**
|
|
305
|
-
*
|
|
219
|
+
* Defines dependabot configuration for node projects.
|
|
306
220
|
*
|
|
307
221
|
* Since module versions are managed in projen, the versioning strategy will be
|
|
308
222
|
* configured to "lockfile-only" which means that only updates that can be done
|
|
309
223
|
* on the lockfile itself will be proposed.
|
|
310
|
-
*
|
|
311
|
-
* @experimental
|
|
312
224
|
*/
|
|
313
225
|
export declare class Dependabot extends Component {
|
|
314
226
|
/**
|
|
315
|
-
*
|
|
316
|
-
*
|
|
227
|
+
* The raw dependabot configuration.
|
|
317
228
|
* @see https://docs.github.com/en/github/administering-a-repository/configuration-options-for-dependency-updates
|
|
318
|
-
* @experimental
|
|
319
229
|
*/
|
|
320
230
|
readonly config: any;
|
|
321
231
|
/**
|
|
322
|
-
*
|
|
323
|
-
*
|
|
324
|
-
* @experimental
|
|
232
|
+
* Whether or not projen is also upgraded in this config,
|
|
325
233
|
*/
|
|
326
234
|
readonly ignoresProjen: boolean;
|
|
327
235
|
private readonly ignore;
|
|
328
|
-
/**
|
|
329
|
-
* @experimental
|
|
330
|
-
*/
|
|
331
236
|
constructor(github: GitHub, options?: DependabotOptions);
|
|
332
237
|
/**
|
|
333
|
-
*
|
|
238
|
+
* Ignores a dependency from automatic updates.
|
|
334
239
|
*
|
|
335
|
-
* @param dependencyName Use to ignore updates for dependencies with matching
|
|
336
|
-
*
|
|
337
|
-
* @
|
|
240
|
+
* @param dependencyName Use to ignore updates for dependencies with matching
|
|
241
|
+
* names, optionally using `*` to match zero or more characters.
|
|
242
|
+
* @param versions Use to ignore specific versions or ranges of versions. If
|
|
243
|
+
* you want to define a range, use the standard pattern for the package
|
|
244
|
+
* manager (for example: `^1.0.0` for npm, or `~> 2.0` for Bundler).
|
|
338
245
|
*/
|
|
339
246
|
addIgnore(dependencyName: string, ...versions: string[]): void;
|
|
340
247
|
}
|
package/lib/github/dependabot.js
CHANGED
|
@@ -7,63 +7,120 @@ const component_1 = require("../component");
|
|
|
7
7
|
const util_1 = require("../util");
|
|
8
8
|
const yaml_1 = require("../yaml");
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
10
|
+
* Each configuration type requires you to provide particular settings.
|
|
12
11
|
* Some types allow more than one way to connect
|
|
13
|
-
*
|
|
14
12
|
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#configuration-options-for-private-registries
|
|
15
|
-
* @experimental
|
|
16
13
|
*/
|
|
17
14
|
var DependabotRegistryType;
|
|
18
15
|
(function (DependabotRegistryType) {
|
|
16
|
+
/**
|
|
17
|
+
* The composer-repository type supports username and password.
|
|
18
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#composer-repository
|
|
19
|
+
*/
|
|
19
20
|
DependabotRegistryType["COMPOSER_REGISTRY"] = "composer-registry";
|
|
21
|
+
/**
|
|
22
|
+
* The docker-registry type supports username and password.
|
|
23
|
+
* The docker-registry type can also be used to pull from Amazon ECR using static AWS credentials
|
|
24
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#docker-registry
|
|
25
|
+
*/
|
|
20
26
|
DependabotRegistryType["DOCKER_REGISTRY"] = "docker-registry";
|
|
27
|
+
/**
|
|
28
|
+
* The git type supports username and password
|
|
29
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#git
|
|
30
|
+
*/
|
|
21
31
|
DependabotRegistryType["GIT"] = "git";
|
|
32
|
+
/**
|
|
33
|
+
* The hex-organization type supports organization and key
|
|
34
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#hex-organization
|
|
35
|
+
*/
|
|
22
36
|
DependabotRegistryType["HEX_ORGANIZATION"] = "hex-organization";
|
|
37
|
+
/**
|
|
38
|
+
* The maven-repository type supports username and password, or token
|
|
39
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#maven-repository
|
|
40
|
+
*/
|
|
23
41
|
DependabotRegistryType["MAVEN_REPOSITORY"] = "maven-repository";
|
|
42
|
+
/**
|
|
43
|
+
* The npm-registry type supports username and password, or token
|
|
44
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#npm-registry
|
|
45
|
+
*/
|
|
24
46
|
DependabotRegistryType["NPM_REGISTRY"] = "npm-registry";
|
|
47
|
+
/**
|
|
48
|
+
* The nuget-feed type supports username and password, or token
|
|
49
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#nuget-feed
|
|
50
|
+
*/
|
|
25
51
|
DependabotRegistryType["NUGET_FEED"] = "nuget-feed";
|
|
52
|
+
/**
|
|
53
|
+
* The python-index type supports username and password, or token
|
|
54
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#python-index
|
|
55
|
+
*/
|
|
26
56
|
DependabotRegistryType["PYTHON_INDEX"] = "python-index";
|
|
57
|
+
/**
|
|
58
|
+
* The rubygems-server type supports username and password, or token
|
|
59
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#rubygems-server
|
|
60
|
+
*/
|
|
27
61
|
DependabotRegistryType["RUBYGEMS_SERVER"] = "rubygems-server";
|
|
62
|
+
/**
|
|
63
|
+
* The terraform-registry type supports a token
|
|
64
|
+
* @see https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#terraform-registry
|
|
65
|
+
*/
|
|
28
66
|
DependabotRegistryType["TERRAFORM_REGISTRY"] = "terraform-registry";
|
|
29
67
|
})(DependabotRegistryType = exports.DependabotRegistryType || (exports.DependabotRegistryType = {}));
|
|
30
68
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* @experimental
|
|
69
|
+
* How often to check for new versions and raise pull requests for version
|
|
70
|
+
* updates.
|
|
34
71
|
*/
|
|
35
72
|
var DependabotScheduleInterval;
|
|
36
73
|
(function (DependabotScheduleInterval) {
|
|
74
|
+
/**
|
|
75
|
+
* Runs on every weekday, Monday to Friday.
|
|
76
|
+
*/
|
|
37
77
|
DependabotScheduleInterval["DAILY"] = "daily";
|
|
78
|
+
/**
|
|
79
|
+
* Runs once each week. By default, this is on Monday.
|
|
80
|
+
*/
|
|
38
81
|
DependabotScheduleInterval["WEEKLY"] = "weekly";
|
|
82
|
+
/**
|
|
83
|
+
* Runs once each month. This is on the first day of the month.
|
|
84
|
+
*/
|
|
39
85
|
DependabotScheduleInterval["MONTHLY"] = "monthly";
|
|
40
86
|
})(DependabotScheduleInterval = exports.DependabotScheduleInterval || (exports.DependabotScheduleInterval = {}));
|
|
41
87
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* @experimental
|
|
88
|
+
* The strategy to use when edits manifest and lock files.
|
|
45
89
|
*/
|
|
46
90
|
var VersioningStrategy;
|
|
47
91
|
(function (VersioningStrategy) {
|
|
92
|
+
/**
|
|
93
|
+
* Only create pull requests to update lockfiles updates. Ignore any new
|
|
94
|
+
* versions that would require package manifest changes.
|
|
95
|
+
*/
|
|
48
96
|
VersioningStrategy["LOCKFILE_ONLY"] = "lockfile-only";
|
|
97
|
+
/**
|
|
98
|
+
* - For apps, the version requirements are increased.
|
|
99
|
+
* - For libraries, the range of versions is widened.
|
|
100
|
+
*/
|
|
49
101
|
VersioningStrategy["AUTO"] = "auto";
|
|
102
|
+
/**
|
|
103
|
+
* Relax the version requirement to include both the new and old version, when
|
|
104
|
+
* possible.
|
|
105
|
+
*/
|
|
50
106
|
VersioningStrategy["WIDEN"] = "widen";
|
|
107
|
+
/**
|
|
108
|
+
* Always increase the version requirement to match the new version.
|
|
109
|
+
*/
|
|
51
110
|
VersioningStrategy["INCREASE"] = "increase";
|
|
111
|
+
/**
|
|
112
|
+
* Increase the version requirement only when required by the new version.
|
|
113
|
+
*/
|
|
52
114
|
VersioningStrategy["INCREASE_IF_NECESSARY"] = "increase-if-necessary";
|
|
53
115
|
})(VersioningStrategy = exports.VersioningStrategy || (exports.VersioningStrategy = {}));
|
|
54
116
|
/**
|
|
55
|
-
*
|
|
117
|
+
* Defines dependabot configuration for node projects.
|
|
56
118
|
*
|
|
57
119
|
* Since module versions are managed in projen, the versioning strategy will be
|
|
58
120
|
* configured to "lockfile-only" which means that only updates that can be done
|
|
59
121
|
* on the lockfile itself will be proposed.
|
|
60
|
-
*
|
|
61
|
-
* @experimental
|
|
62
122
|
*/
|
|
63
123
|
class Dependabot extends component_1.Component {
|
|
64
|
-
/**
|
|
65
|
-
* @experimental
|
|
66
|
-
*/
|
|
67
124
|
constructor(github, options = {}) {
|
|
68
125
|
var _b, _c, _d, _e;
|
|
69
126
|
super(github.project);
|
|
@@ -102,11 +159,13 @@ class Dependabot extends component_1.Component {
|
|
|
102
159
|
}
|
|
103
160
|
}
|
|
104
161
|
/**
|
|
105
|
-
*
|
|
162
|
+
* Ignores a dependency from automatic updates.
|
|
106
163
|
*
|
|
107
|
-
* @param dependencyName Use to ignore updates for dependencies with matching
|
|
108
|
-
*
|
|
109
|
-
* @
|
|
164
|
+
* @param dependencyName Use to ignore updates for dependencies with matching
|
|
165
|
+
* names, optionally using `*` to match zero or more characters.
|
|
166
|
+
* @param versions Use to ignore specific versions or ranges of versions. If
|
|
167
|
+
* you want to define a range, use the standard pattern for the package
|
|
168
|
+
* manager (for example: `^1.0.0` for npm, or `~> 2.0` for Bundler).
|
|
110
169
|
*/
|
|
111
170
|
addIgnore(dependencyName, ...versions) {
|
|
112
171
|
this.ignore.push({
|
|
@@ -117,5 +176,5 @@ class Dependabot extends component_1.Component {
|
|
|
117
176
|
}
|
|
118
177
|
exports.Dependabot = Dependabot;
|
|
119
178
|
_a = JSII_RTTI_SYMBOL_1;
|
|
120
|
-
Dependabot[_a] = { fqn: "projen.github.Dependabot", version: "0.52.
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwZW5kYWJvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9naXRodWIvZGVwZW5kYWJvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDRDQUF5QztBQUN6QyxrQ0FBd0M7QUFDeEMsa0NBQW1DOzs7Ozs7Ozs7QUFtRG5DLElBQVksc0JBOEJYO0FBOUJELFdBQVksc0JBQXNCO0lBRWhDLGlFQUF1QyxDQUFBO0lBR3ZDLDZEQUFtQyxDQUFBO0lBR25DLHFDQUFXLENBQUE7SUFHWCwrREFBcUMsQ0FBQTtJQUdyQywrREFBcUMsQ0FBQTtJQUdyQyx1REFBNkIsQ0FBQTtJQUc3QixtREFBeUIsQ0FBQTtJQUd6Qix1REFBNkIsQ0FBQTtJQUc3Qiw2REFBbUMsQ0FBQTtJQUduQyxtRUFBeUMsQ0FBQTtBQUMzQyxDQUFDLEVBOUJXLHNCQUFzQixHQUF0Qiw4QkFBc0IsS0FBdEIsOEJBQXNCLFFBOEJqQzs7Ozs7O0FBWUQsSUFBWSwwQkFTWDtBQVRELFdBQVksMEJBQTBCO0lBRXBDLDZDQUFlLENBQUE7SUFHZiwrQ0FBaUIsQ0FBQTtJQUdqQixpREFBbUIsQ0FBQTtBQUNyQixDQUFDLEVBVFcsMEJBQTBCLEdBQTFCLGtDQUEwQixLQUExQixrQ0FBMEIsUUFTckM7Ozs7OztBQUdELElBQVksa0JBZVg7QUFmRCxXQUFZLGtCQUFrQjtJQUU1QixxREFBK0IsQ0FBQTtJQUcvQixtQ0FBYSxDQUFBO0lBR2IscUNBQWUsQ0FBQTtJQUdmLDJDQUFxQixDQUFBO0lBR3JCLHFFQUErQyxDQUFBO0FBQ2pELENBQUMsRUFmVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQWU3Qjs7Ozs7Ozs7OztBQUdELE1BQWEsVUFBVyxTQUFRLHFCQUFTOzs7O0lBU3ZDLFlBQVksTUFBYyxFQUFFLFVBQTZCLEVBQUU7O1FBQ3pELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUUvQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsYUFBYSxTQUFHLE9BQU8sQ0FBQyxZQUFZLG1DQUFJLElBQUksQ0FBQztRQUVsRCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVTtZQUNuQyxDQUFDLENBQUMsb0JBQWEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1lBQ25DLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFZCxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osT0FBTyxFQUFFLENBQUM7WUFDVixVQUFVO1lBQ1YsT0FBTyxFQUFFO2dCQUNQO29CQUNFLG1CQUFtQixFQUFFLEtBQUs7b0JBQzFCLHFCQUFxQixFQUFFLGVBQWU7b0JBQ3RDLFNBQVMsRUFBRSxHQUFHO29CQUNkLFFBQVEsRUFBRTt3QkFDUixRQUFRLFFBQ04sT0FBTyxDQUFDLGdCQUFnQixtQ0FBSSwwQkFBMEIsQ0FBQyxLQUFLO3FCQUMvRDtvQkFDRCxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztvQkFDaEUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVM7b0JBQ25ELFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7aUJBQzdEO2FBQ0Y7U0FDRixDQUFDO1FBRUYsSUFBSSxlQUFRLENBQUMsT0FBTyxFQUFFLHdCQUF3QixFQUFFO1lBQzlDLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNoQixTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sQ0FBQyxVQUFJLE9BQU8sQ0FBQyxNQUFNLG1DQUFJLEVBQUUsRUFBRTtZQUNwQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsR0FBRyxPQUFDLENBQUMsQ0FBQyxRQUFRLG1DQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDekQ7UUFFRCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUM7Ozs7Ozs7O0lBR00sU0FBUyxDQUFDLGNBQXNCLEVBQUUsR0FBRyxRQUFrQjtRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNmLGlCQUFpQixFQUFFLGNBQWM7WUFDakMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1NBQzdELENBQUMsQ0FBQztJQUNMLENBQUM7O0FBNURILGdDQTZEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IGtlYmFiQ2FzZUtleXMgfSBmcm9tIFwiLi4vdXRpbFwiO1xuaW1wb3J0IHsgWWFtbEZpbGUgfSBmcm9tIFwiLi4veWFtbFwiO1xuaW1wb3J0IHsgR2l0SHViIH0gZnJvbSBcIi4vZ2l0aHViXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVwZW5kYWJvdE9wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgc2NoZWR1bGVJbnRlcnZhbD86IERlcGVuZGFib3RTY2hlZHVsZUludGVydmFsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHZlcnNpb25pbmdTdHJhdGVneT86IFZlcnNpb25pbmdTdHJhdGVneTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGlnbm9yZT86IERlcGVuZGFib3RJZ25vcmVbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgaWdub3JlUHJvamVuPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsYWJlbHM/OiBzdHJpbmdbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJlZ2lzdHJpZXM/OiB7IFtuYW1lOiBzdHJpbmddOiBEZXBlbmRhYm90UmVnaXN0cnkgfTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIERlcGVuZGFib3RSZWdpc3RyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB0eXBlOiBEZXBlbmRhYm90UmVnaXN0cnlUeXBlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVybDogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVzZXJuYW1lPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBrZXk/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHRva2VuPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJlcGxhY2VzQmFzZT86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbj86IHN0cmluZztcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGVudW0gRGVwZW5kYWJvdFJlZ2lzdHJ5VHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBDT01QT1NFUl9SRUdJU1RSWSA9IFwiY29tcG9zZXItcmVnaXN0cnlcIixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBET0NLRVJfUkVHSVNUUlkgPSBcImRvY2tlci1yZWdpc3RyeVwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBHSVQgPSBcImdpdFwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgSEVYX09SR0FOSVpBVElPTiA9IFwiaGV4LW9yZ2FuaXphdGlvblwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBNQVZFTl9SRVBPU0lUT1JZID0gXCJtYXZlbi1yZXBvc2l0b3J5XCIsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBOUE1fUkVHSVNUUlkgPSBcIm5wbS1yZWdpc3RyeVwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBOVUdFVF9GRUVEID0gXCJudWdldC1mZWVkXCIsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBQWVRIT05fSU5ERVggPSBcInB5dGhvbi1pbmRleFwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgUlVCWUdFTVNfU0VSVkVSID0gXCJydWJ5Z2Vtcy1zZXJ2ZXJcIixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIFRFUlJBRk9STV9SRUdJU1RSWSA9IFwidGVycmFmb3JtLXJlZ2lzdHJ5XCIsXG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIERlcGVuZGFib3RJZ25vcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBkZXBlbmRlbmN5TmFtZTogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdmVyc2lvbnM/OiBzdHJpbmdbXTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGVudW0gRGVwZW5kYWJvdFNjaGVkdWxlSW50ZXJ2YWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIERBSUxZID0gXCJkYWlseVwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBXRUVLTFkgPSBcIndlZWtseVwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBNT05USExZID0gXCJtb250aGx5XCIsXG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGVudW0gVmVyc2lvbmluZ1N0cmF0ZWd5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgTE9DS0ZJTEVfT05MWSA9IFwibG9ja2ZpbGUtb25seVwiLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIEFVVE8gPSBcImF1dG9cIixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgV0lERU4gPSBcIndpZGVuXCIsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgSU5DUkVBU0UgPSBcImluY3JlYXNlXCIsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgSU5DUkVBU0VfSUZfTkVDRVNTQVJZID0gXCJpbmNyZWFzZS1pZi1uZWNlc3NhcnlcIixcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBEZXBlbmRhYm90IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGNvbmZpZzogYW55O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgaWdub3Jlc1Byb2plbjogYm9vbGVhbjtcblxuICBwcml2YXRlIHJlYWRvbmx5IGlnbm9yZTogYW55W107XG5cbiAgY29uc3RydWN0b3IoZ2l0aHViOiBHaXRIdWIsIG9wdGlvbnM6IERlcGVuZGFib3RPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihnaXRodWIucHJvamVjdCk7XG5cbiAgICBjb25zdCBwcm9qZWN0ID0gZ2l0aHViLnByb2plY3Q7XG5cbiAgICB0aGlzLmlnbm9yZSA9IFtdO1xuICAgIHRoaXMuaWdub3Jlc1Byb2plbiA9IG9wdGlvbnMuaWdub3JlUHJvamVuID8/IHRydWU7XG5cbiAgICBjb25zdCByZWdpc3RyaWVzID0gb3B0aW9ucy5yZWdpc3RyaWVzXG4gICAgICA/IGtlYmFiQ2FzZUtleXMob3B0aW9ucy5yZWdpc3RyaWVzKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIHZlcnNpb246IDIsXG4gICAgICByZWdpc3RyaWVzLFxuICAgICAgdXBkYXRlczogW1xuICAgICAgICB7XG4gICAgICAgICAgXCJwYWNrYWdlLWVjb3N5c3RlbVwiOiBcIm5wbVwiLFxuICAgICAgICAgIFwidmVyc2lvbmluZy1zdHJhdGVneVwiOiBcImxvY2tmaWxlLW9ubHlcIixcbiAgICAgICAgICBkaXJlY3Rvcnk6IFwiL1wiLFxuICAgICAgICAgIHNjaGVkdWxlOiB7XG4gICAgICAgICAgICBpbnRlcnZhbDpcbiAgICAgICAgICAgICAgb3B0aW9ucy5zY2hlZHVsZUludGVydmFsID8/IERlcGVuZGFib3RTY2hlZHVsZUludGVydmFsLkRBSUxZLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgaWdub3JlOiAoKSA9PiAodGhpcy5pZ25vcmUubGVuZ3RoID4gMCA/IHRoaXMuaWdub3JlIDogdW5kZWZpbmVkKSxcbiAgICAgICAgICBsYWJlbHM6IG9wdGlvbnMubGFiZWxzID8gb3B0aW9ucy5sYWJlbHMgOiB1bmRlZmluZWQsXG4gICAgICAgICAgcmVnaXN0cmllczogcmVnaXN0cmllcyA/IE9iamVjdC5rZXlzKHJlZ2lzdHJpZXMpIDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgbmV3IFlhbWxGaWxlKHByb2plY3QsIFwiLmdpdGh1Yi9kZXBlbmRhYm90LnltbFwiLCB7XG4gICAgICBvYmo6IHRoaXMuY29uZmlnLFxuICAgICAgY29tbWl0dGVkOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBpIG9mIG9wdGlvbnMuaWdub3JlID8/IFtdKSB7XG4gICAgICB0aGlzLmFkZElnbm9yZShpLmRlcGVuZGVuY3lOYW1lLCAuLi4oaS52ZXJzaW9ucyA/PyBbXSkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlnbm9yZXNQcm9qZW4pIHtcbiAgICAgIHRoaXMuYWRkSWdub3JlKFwicHJvamVuXCIpO1xuICAgIH1cbiAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgYWRkSWdub3JlKGRlcGVuZGVuY3lOYW1lOiBzdHJpbmcsIC4uLnZlcnNpb25zOiBzdHJpbmdbXSkge1xuICAgIHRoaXMuaWdub3JlLnB1c2goe1xuICAgICAgXCJkZXBlbmRlbmN5LW5hbWVcIjogZGVwZW5kZW5jeU5hbWUsXG4gICAgICB2ZXJzaW9uczogKCkgPT4gKHZlcnNpb25zLmxlbmd0aCA+IDAgPyB2ZXJzaW9ucyA6IHVuZGVmaW5lZCksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
179
|
+
Dependabot[_a] = { fqn: "projen.github.Dependabot", version: "0.52.25" };
|
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwZW5kYWJvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9naXRodWIvZGVwZW5kYWJvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDRDQUF5QztBQUN6QyxrQ0FBd0M7QUFDeEMsa0NBQW1DO0FBMEduQzs7OztHQUlHO0FBQ0gsSUFBWSxzQkE2RFg7QUE3REQsV0FBWSxzQkFBc0I7SUFDaEM7OztPQUdHO0lBQ0gsaUVBQXVDLENBQUE7SUFFdkM7Ozs7T0FJRztJQUNILDZEQUFtQyxDQUFBO0lBRW5DOzs7T0FHRztJQUNILHFDQUFXLENBQUE7SUFFWDs7O09BR0c7SUFDSCwrREFBcUMsQ0FBQTtJQUVyQzs7O09BR0c7SUFDSCwrREFBcUMsQ0FBQTtJQUVyQzs7O09BR0c7SUFDSCx1REFBNkIsQ0FBQTtJQUU3Qjs7O09BR0c7SUFDSCxtREFBeUIsQ0FBQTtJQUV6Qjs7O09BR0c7SUFDSCx1REFBNkIsQ0FBQTtJQUU3Qjs7O09BR0c7SUFDSCw2REFBbUMsQ0FBQTtJQUVuQzs7O09BR0c7SUFDSCxtRUFBeUMsQ0FBQTtBQUMzQyxDQUFDLEVBN0RXLHNCQUFzQixHQUF0Qiw4QkFBc0IsS0FBdEIsOEJBQXNCLFFBNkRqQztBQXdCRDs7O0dBR0c7QUFDSCxJQUFZLDBCQWVYO0FBZkQsV0FBWSwwQkFBMEI7SUFDcEM7O09BRUc7SUFDSCw2Q0FBZSxDQUFBO0lBRWY7O09BRUc7SUFDSCwrQ0FBaUIsQ0FBQTtJQUVqQjs7T0FFRztJQUNILGlEQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFmVywwQkFBMEIsR0FBMUIsa0NBQTBCLEtBQTFCLGtDQUEwQixRQWVyQztBQUVEOztHQUVHO0FBQ0gsSUFBWSxrQkE0Qlg7QUE1QkQsV0FBWSxrQkFBa0I7SUFDNUI7OztPQUdHO0lBQ0gscURBQStCLENBQUE7SUFFL0I7OztPQUdHO0lBQ0gsbUNBQWEsQ0FBQTtJQUViOzs7T0FHRztJQUNILHFDQUFlLENBQUE7SUFFZjs7T0FFRztJQUNILDJDQUFxQixDQUFBO0lBRXJCOztPQUVHO0lBQ0gscUVBQStDLENBQUE7QUFDakQsQ0FBQyxFQTVCVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQTRCN0I7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFhLFVBQVcsU0FBUSxxQkFBUztJQWN2QyxZQUFZLE1BQWMsRUFBRSxVQUE2QixFQUFFOztRQUN6RCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXRCLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFFL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGFBQWEsU0FBRyxPQUFPLENBQUMsWUFBWSxtQ0FBSSxJQUFJLENBQUM7UUFFbEQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVU7WUFDbkMsQ0FBQyxDQUFDLG9CQUFhLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztZQUNuQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsSUFBSSxDQUFDLE1BQU0sR0FBRztZQUNaLE9BQU8sRUFBRSxDQUFDO1lBQ1YsVUFBVTtZQUNWLE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxtQkFBbUIsRUFBRSxLQUFLO29CQUMxQixxQkFBcUIsRUFBRSxlQUFlO29CQUN0QyxTQUFTLEVBQUUsR0FBRztvQkFDZCxRQUFRLEVBQUU7d0JBQ1IsUUFBUSxRQUNOLE9BQU8sQ0FBQyxnQkFBZ0IsbUNBQUksMEJBQTBCLENBQUMsS0FBSztxQkFDL0Q7b0JBQ0QsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7b0JBQ2hFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUNuRCxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO2lCQUM3RDthQUNGO1NBQ0YsQ0FBQztRQUVGLElBQUksZUFBUSxDQUFDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRTtZQUM5QyxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDaEIsU0FBUyxFQUFFLElBQUk7U0FDaEIsQ0FBQyxDQUFDO1FBRUgsS0FBSyxNQUFNLENBQUMsVUFBSSxPQUFPLENBQUMsTUFBTSxtQ0FBSSxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLEdBQUcsT0FBQyxDQUFDLENBQUMsUUFBUSxtQ0FBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3pEO1FBRUQsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxTQUFTLENBQUMsY0FBc0IsRUFBRSxHQUFHLFFBQWtCO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQ2YsaUJBQWlCLEVBQUUsY0FBYztZQUNqQyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7U0FDN0QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUF6RUgsZ0NBMEVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHsga2ViYWJDYXNlS2V5cyB9IGZyb20gXCIuLi91dGlsXCI7XG5pbXBvcnQgeyBZYW1sRmlsZSB9IGZyb20gXCIuLi95YW1sXCI7XG5pbXBvcnQgeyBHaXRIdWIgfSBmcm9tIFwiLi9naXRodWJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBEZXBlbmRhYm90T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBIb3cgb2Z0ZW4gdG8gY2hlY2sgZm9yIG5ldyB2ZXJzaW9ucyBhbmQgcmFpc2UgcHVsbCByZXF1ZXN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgU2NoZWR1bGVJbnRlcnZhbC5EQUlMWVxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGVJbnRlcnZhbD86IERlcGVuZGFib3RTY2hlZHVsZUludGVydmFsO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RyYXRlZ3kgdG8gdXNlIHdoZW4gZWRpdHMgbWFuaWZlc3QgYW5kIGxvY2sgZmlsZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IFZlcnNpb25pbmdTdHJhdGVneS5MT0NLRklMRV9PTkxZIFRoZSBkZWZhdWx0IGlzIHRvIG9ubHkgdXBkYXRlIHRoZVxuICAgKiBsb2NrIGZpbGUgYmVjYXVzZSBwYWNrYWdlLmpzb24gaXMgY29udHJvbGxlZCBieSBwcm9qZW4gYW5kIGFueSBvdXRzaWRlXG4gICAqIHVwZGF0ZXMgd2lsbCBmYWlsIHRoZSBidWlsZC5cbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb25pbmdTdHJhdGVneT86IFZlcnNpb25pbmdTdHJhdGVneTtcblxuICAvKipcbiAgICogWW91IGNhbiB1c2UgdGhlIGBpZ25vcmVgIG9wdGlvbiB0byBjdXN0b21pemUgd2hpY2ggZGVwZW5kZW5jaWVzIGFyZSB1cGRhdGVkLlxuICAgKiBUaGUgaWdub3JlIG9wdGlvbiBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBpZ25vcmU/OiBEZXBlbmRhYm90SWdub3JlW107XG5cbiAgLyoqXG4gICAqIElnbm9yZXMgdXBkYXRlcyB0byBgcHJvamVuYC5cbiAgICpcbiAgICogVGhpcyBpcyByZXF1aXJlZCBzaW5jZSBwcm9qZW4gdXBkYXRlcyBtYXkgY2F1c2UgY2hhbmdlcyBpbiBjb21taXR0ZWQgZmlsZXNcbiAgICogYW5kIGFudGktdGFtcGVyIGNoZWNrcyB3aWxsIGZhaWwuXG4gICAqXG4gICAqIFByb2plbiB1cGdyYWRlcyBhcmUgY292ZXJlZCB0aHJvdWdoIHRoZSBgUHJvamVuVXBncmFkZWAgY2xhc3MuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGlnbm9yZVByb2plbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgbGFiZWxzIHRvIGFwcGx5IHRvIHRoZSBjcmVhdGVkIFBSJ3MuXG4gICAqL1xuICByZWFkb25seSBsYWJlbHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTWFwIG9mIHBhY2thZ2UgcmVnaXN0cmllcyB0byB1c2VcbiAgICogQGRlZmF1bHQgLSB1c2UgcHVibGljIHJlZ2lzdHJpZXNcbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lzdHJpZXM/OiB7IFtuYW1lOiBzdHJpbmddOiBEZXBlbmRhYm90UmVnaXN0cnkgfTtcbn1cblxuLyoqXG4gKiBVc2UgdG8gYWRkIHByaXZhdGUgcmVnaXN0cnkgc3VwcG9ydCBmb3IgZGVwZW5kYWJvdFxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9jb2RlLXNlY3VyaXR5L3N1cHBseS1jaGFpbi1zZWN1cml0eS9rZWVwaW5nLXlvdXItZGVwZW5kZW5jaWVzLXVwZGF0ZWQtYXV0b21hdGljYWxseS9jb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLWRlcGVuZGVuY3ktdXBkYXRlcyNjb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLXByaXZhdGUtcmVnaXN0cmllc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERlcGVuZGFib3RSZWdpc3RyeSB7XG4gIC8qKlxuICAgKiBSZWdpc3RyeSB0eXBlIGUuZy4gJ25wbS1yZWdpc3RyeScgb3IgJ2RvY2tlci1yZWdpc3RyeSdcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU6IERlcGVuZGFib3RSZWdpc3RyeVR5cGU7XG5cbiAgLyoqXG4gICAqIFVybCBmb3IgdGhlIHJlZ2lzdHJ5IGUuZy4gJ2h0dHBzOi8vbnBtLnBrZy5naXRodWIuY29tJyBvciAncmVnaXN0cnkuaHViLmRvY2tlci5jb20nXG4gICAqL1xuICByZWFkb25seSB1cmw6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHVzZXJuYW1lIHRoYXQgRGVwZW5kYWJvdCB1c2VzIHRvIGFjY2VzcyB0aGUgcmVnaXN0cnlcbiAgICogQGRlZmF1bHQgLSBkbyBub3QgYXV0aGVudGljYXRlXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSByZWZlcmVuY2UgdG8gYSBEZXBlbmRhYm90IHNlY3JldCBjb250YWluaW5nIHRoZSBwYXNzd29yZCBmb3IgdGhlIHNwZWNpZmllZCB1c2VyXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgcmVhZG9ubHkgcGFzc3dvcmQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgcmVmZXJlbmNlIHRvIGEgRGVwZW5kYWJvdCBzZWNyZXQgY29udGFpbmluZyBhbiBhY2Nlc3Mga2V5IGZvciB0aGlzIHJlZ2lzdHJ5XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgcmVhZG9ubHkga2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTZWNyZXQgdG9rZW4gZm9yIGRlcGVuZGFib3QgYWNjZXNzIGUuZy4gJyR7eyBzZWNyZXRzLkRFUEVOREFCT1RfUEFDS0FHRV9UT0tFTiB9fSdcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSB0b2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogRm9yIHJlZ2lzdHJpZXMgd2l0aCB0eXBlOiBweXRob24taW5kZXgsIGlmIHRoZSBib29sZWFuIHZhbHVlIGlzIHRydWUsIHBpcFxuICAgKiBlc29sdmVzIGRlcGVuZGVuY2llcyBieSB1c2luZyB0aGUgc3BlY2lmaWVkIFVSTCByYXRoZXIgdGhhbiB0aGUgYmFzZSBVUkwgb2ZcbiAgICogdGhlIFB5dGhvbiBQYWNrYWdlIEluZGV4IChieSBkZWZhdWx0IGh0dHBzOi8vcHlwaS5vcmcvc2ltcGxlKVxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIHJlYWRvbmx5IHJlcGxhY2VzQmFzZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFVzZWQgd2l0aCB0aGUgaGV4LW9yZ2FuaXphdGlvbiByZWdpc3RyeSB0eXBlLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2NvZGUtc2VjdXJpdHkvc3VwcGx5LWNoYWluLXNlY3VyaXR5L2tlZXBpbmcteW91ci1kZXBlbmRlbmNpZXMtdXBkYXRlZC1hdXRvbWF0aWNhbGx5L2NvbmZpZ3VyYXRpb24tb3B0aW9ucy1mb3ItZGVwZW5kZW5jeS11cGRhdGVzI2hleC1vcmdhbml6YXRpb25cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSBvcmdhbml6YXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRWFjaCBjb25maWd1cmF0aW9uIHR5cGUgcmVxdWlyZXMgeW91IHRvIHByb3ZpZGUgcGFydGljdWxhciBzZXR0aW5ncy5cbiAqIFNvbWUgdHlwZXMgYWxsb3cgbW9yZSB0aGFuIG9uZSB3YXkgdG8gY29ubmVjdFxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9jb2RlLXNlY3VyaXR5L3N1cHBseS1jaGFpbi1zZWN1cml0eS9rZWVwaW5nLXlvdXItZGVwZW5kZW5jaWVzLXVwZGF0ZWQtYXV0b21hdGljYWxseS9jb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLWRlcGVuZGVuY3ktdXBkYXRlcyNjb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLXByaXZhdGUtcmVnaXN0cmllc1xuICovXG5leHBvcnQgZW51bSBEZXBlbmRhYm90UmVnaXN0cnlUeXBlIHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb3Nlci1yZXBvc2l0b3J5IHR5cGUgc3VwcG9ydHMgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2NvZGUtc2VjdXJpdHkvc3VwcGx5LWNoYWluLXNlY3VyaXR5L2tlZXBpbmcteW91ci1kZXBlbmRlbmNpZXMtdXBkYXRlZC1hdXRvbWF0aWNhbGx5L2NvbmZpZ3VyYXRpb24tb3B0aW9ucy1mb3ItZGVwZW5kZW5jeS11cGRhdGVzI2NvbXBvc2VyLXJlcG9zaXRvcnlcbiAgICovXG4gIENPTVBPU0VSX1JFR0lTVFJZID0gXCJjb21wb3Nlci1yZWdpc3RyeVwiLFxuXG4gIC8qKlxuICAgKiBUaGUgZG9ja2VyLXJlZ2lzdHJ5IHR5cGUgc3VwcG9ydHMgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLlxuICAgKiBUaGUgZG9ja2VyLXJlZ2lzdHJ5IHR5cGUgY2FuIGFsc28gYmUgdXNlZCB0byBwdWxsIGZyb20gQW1hem9uIEVDUiB1c2luZyBzdGF0aWMgQVdTIGNyZWRlbnRpYWxzXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vY29kZS1zZWN1cml0eS9zdXBwbHktY2hhaW4tc2VjdXJpdHkva2VlcGluZy15b3VyLWRlcGVuZGVuY2llcy11cGRhdGVkLWF1dG9tYXRpY2FsbHkvY29uZmlndXJhdGlvbi1vcHRpb25zLWZvci1kZXBlbmRlbmN5LXVwZGF0ZXMjZG9ja2VyLXJlZ2lzdHJ5XG4gICAqL1xuICBET0NLRVJfUkVHSVNUUlkgPSBcImRvY2tlci1yZWdpc3RyeVwiLFxuXG4gIC8qKlxuICAgKiBUaGUgZ2l0IHR5cGUgc3VwcG9ydHMgdXNlcm5hbWUgYW5kIHBhc3N3b3JkXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vY29kZS1zZWN1cml0eS9zdXBwbHktY2hhaW4tc2VjdXJpdHkva2VlcGluZy15b3VyLWRlcGVuZGVuY2llcy11cGRhdGVkLWF1dG9tYXRpY2FsbHkvY29uZmlndXJhdGlvbi1vcHRpb25zLWZvci1kZXBlbmRlbmN5LXVwZGF0ZXMjZ2l0XG4gICAqL1xuICBHSVQgPSBcImdpdFwiLFxuXG4gIC8qKlxuICAgKiBUaGUgaGV4LW9yZ2FuaXphdGlvbiB0eXBlIHN1cHBvcnRzIG9yZ2FuaXphdGlvbiBhbmQga2V5XG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vY29kZS1zZWN1cml0eS9zdXBwbHktY2hhaW4tc2VjdXJpdHkva2VlcGluZy15b3VyLWRlcGVuZGVuY2llcy11cGRhdGVkLWF1dG9tYXRpY2FsbHkvY29uZmlndXJhdGlvbi1vcHRpb25zLWZvci1kZXBlbmRlbmN5LXVwZGF0ZXMjaGV4LW9yZ2FuaXphdGlvblxuICAgKi9cbiAgSEVYX09SR0FOSVpBVElPTiA9IFwiaGV4LW9yZ2FuaXphdGlvblwiLFxuXG4gIC8qKlxuICAgKiBUaGUgbWF2ZW4tcmVwb3NpdG9yeSB0eXBlIHN1cHBvcnRzIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgb3IgdG9rZW5cbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9jb2RlLXNlY3VyaXR5L3N1cHBseS1jaGFpbi1zZWN1cml0eS9rZWVwaW5nLXlvdXItZGVwZW5kZW5jaWVzLXVwZGF0ZWQtYXV0b21hdGljYWxseS9jb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLWRlcGVuZGVuY3ktdXBkYXRlcyNtYXZlbi1yZXBvc2l0b3J5XG4gICAqL1xuICBNQVZFTl9SRVBPU0lUT1JZID0gXCJtYXZlbi1yZXBvc2l0b3J5XCIsXG5cbiAgLyoqXG4gICAqIFRoZSBucG0tcmVnaXN0cnkgdHlwZSBzdXBwb3J0cyB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIG9yIHRva2VuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vY29kZS1zZWN1cml0eS9zdXBwbHktY2hhaW4tc2VjdXJpdHkva2VlcGluZy15b3VyLWRlcGVuZGVuY2llcy11cGRhdGVkLWF1dG9tYXRpY2FsbHkvY29uZmlndXJhdGlvbi1vcHRpb25zLWZvci1kZXBlbmRlbmN5LXVwZGF0ZXMjbnBtLXJlZ2lzdHJ5XG4gICAqL1xuICBOUE1fUkVHSVNUUlkgPSBcIm5wbS1yZWdpc3RyeVwiLFxuXG4gIC8qKlxuICAgKiBUaGUgbnVnZXQtZmVlZCB0eXBlIHN1cHBvcnRzIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgb3IgdG9rZW5cbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9jb2RlLXNlY3VyaXR5L3N1cHBseS1jaGFpbi1zZWN1cml0eS9rZWVwaW5nLXlvdXItZGVwZW5kZW5jaWVzLXVwZGF0ZWQtYXV0b21hdGljYWxseS9jb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLWRlcGVuZGVuY3ktdXBkYXRlcyNudWdldC1mZWVkXG4gICAqL1xuICBOVUdFVF9GRUVEID0gXCJudWdldC1mZWVkXCIsXG5cbiAgLyoqXG4gICAqIFRoZSBweXRob24taW5kZXggdHlwZSBzdXBwb3J0cyB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIG9yIHRva2VuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vY29kZS1zZWN1cml0eS9zdXBwbHktY2hhaW4tc2VjdXJpdHkva2VlcGluZy15b3VyLWRlcGVuZGVuY2llcy11cGRhdGVkLWF1dG9tYXRpY2FsbHkvY29uZmlndXJhdGlvbi1vcHRpb25zLWZvci1kZXBlbmRlbmN5LXVwZGF0ZXMjcHl0aG9uLWluZGV4XG4gICAqL1xuICBQWVRIT05fSU5ERVggPSBcInB5dGhvbi1pbmRleFwiLFxuXG4gIC8qKlxuICAgKiBUaGUgcnVieWdlbXMtc2VydmVyIHR5cGUgc3VwcG9ydHMgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBvciB0b2tlblxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2NvZGUtc2VjdXJpdHkvc3VwcGx5LWNoYWluLXNlY3VyaXR5L2tlZXBpbmcteW91ci1kZXBlbmRlbmNpZXMtdXBkYXRlZC1hdXRvbWF0aWNhbGx5L2NvbmZpZ3VyYXRpb24tb3B0aW9ucy1mb3ItZGVwZW5kZW5jeS11cGRhdGVzI3J1YnlnZW1zLXNlcnZlclxuICAgKi9cbiAgUlVCWUdFTVNfU0VSVkVSID0gXCJydWJ5Z2Vtcy1zZXJ2ZXJcIixcblxuICAvKipcbiAgICogVGhlIHRlcnJhZm9ybS1yZWdpc3RyeSB0eXBlIHN1cHBvcnRzIGEgdG9rZW5cbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9jb2RlLXNlY3VyaXR5L3N1cHBseS1jaGFpbi1zZWN1cml0eS9rZWVwaW5nLXlvdXItZGVwZW5kZW5jaWVzLXVwZGF0ZWQtYXV0b21hdGljYWxseS9jb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLWRlcGVuZGVuY3ktdXBkYXRlcyN0ZXJyYWZvcm0tcmVnaXN0cnlcbiAgICovXG4gIFRFUlJBRk9STV9SRUdJU1RSWSA9IFwidGVycmFmb3JtLXJlZ2lzdHJ5XCIsXG59XG5cbi8qKlxuICogWW91IGNhbiB1c2UgdGhlIGBpZ25vcmVgIG9wdGlvbiB0byBjdXN0b21pemUgd2hpY2ggZGVwZW5kZW5jaWVzIGFyZSB1cGRhdGVkLlxuICogVGhlIGlnbm9yZSBvcHRpb24gc3VwcG9ydHMgdGhlIGZvbGxvd2luZyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlcGVuZGFib3RJZ25vcmUge1xuICAvKipcbiAgICogVXNlIHRvIGlnbm9yZSB1cGRhdGVzIGZvciBkZXBlbmRlbmNpZXMgd2l0aCBtYXRjaGluZyBuYW1lcywgb3B0aW9uYWxseVxuICAgKiB1c2luZyBgKmAgdG8gbWF0Y2ggemVybyBvciBtb3JlIGNoYXJhY3RlcnMuXG4gICAqXG4gICAqIEZvciBKYXZhIGRlcGVuZGVuY2llcywgdGhlIGZvcm1hdCBvZiB0aGUgZGVwZW5kZW5jeS1uYW1lIGF0dHJpYnV0ZSBpczpcbiAgICogYGdyb3VwSWQ6YXJ0aWZhY3RJZGAsIGZvciBleGFtcGxlOiBgb3JnLmtvaHN1a2U6Z2l0aHViLWFwaWAuXG4gICAqL1xuICByZWFkb25seSBkZXBlbmRlbmN5TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVc2UgdG8gaWdub3JlIHNwZWNpZmljIHZlcnNpb25zIG9yIHJhbmdlcyBvZiB2ZXJzaW9ucy4gSWYgeW91IHdhbnQgdG9cbiAgICogZGVmaW5lIGEgcmFuZ2UsIHVzZSB0aGUgc3RhbmRhcmQgcGF0dGVybiBmb3IgdGhlIHBhY2thZ2UgbWFuYWdlciAoZm9yXG4gICAqIGV4YW1wbGU6IGBeMS4wLjBgIGZvciBucG0sIG9yIGB+PiAyLjBgIGZvciBCdW5kbGVyKS5cbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb25zPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogSG93IG9mdGVuIHRvIGNoZWNrIGZvciBuZXcgdmVyc2lvbnMgYW5kIHJhaXNlIHB1bGwgcmVxdWVzdHMgZm9yIHZlcnNpb25cbiAqIHVwZGF0ZXMuXG4gKi9cbmV4cG9ydCBlbnVtIERlcGVuZGFib3RTY2hlZHVsZUludGVydmFsIHtcbiAgLyoqXG4gICAqIFJ1bnMgb24gZXZlcnkgd2Vla2RheSwgTW9uZGF5IHRvIEZyaWRheS5cbiAgICovXG4gIERBSUxZID0gXCJkYWlseVwiLFxuXG4gIC8qKlxuICAgKiBSdW5zIG9uY2UgZWFjaCB3ZWVrLiBCeSBkZWZhdWx0LCB0aGlzIGlzIG9uIE1vbmRheS5cbiAgICovXG4gIFdFRUtMWSA9IFwid2Vla2x5XCIsXG5cbiAgLyoqXG4gICAqIFJ1bnMgb25jZSBlYWNoIG1vbnRoLiBUaGlzIGlzIG9uIHRoZSBmaXJzdCBkYXkgb2YgdGhlIG1vbnRoLlxuICAgKi9cbiAgTU9OVEhMWSA9IFwibW9udGhseVwiLFxufVxuXG4vKipcbiAqIFRoZSBzdHJhdGVneSB0byB1c2Ugd2hlbiBlZGl0cyBtYW5pZmVzdCBhbmQgbG9jayBmaWxlcy5cbiAqL1xuZXhwb3J0IGVudW0gVmVyc2lvbmluZ1N0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIE9ubHkgY3JlYXRlIHB1bGwgcmVxdWVzdHMgdG8gdXBkYXRlIGxvY2tmaWxlcyB1cGRhdGVzLiBJZ25vcmUgYW55IG5ld1xuICAgKiB2ZXJzaW9ucyB0aGF0IHdvdWxkIHJlcXVpcmUgcGFja2FnZSBtYW5pZmVzdCBjaGFuZ2VzLlxuICAgKi9cbiAgTE9DS0ZJTEVfT05MWSA9IFwibG9ja2ZpbGUtb25seVwiLFxuXG4gIC8qKlxuICAgKiAtIEZvciBhcHBzLCB0aGUgdmVyc2lvbiByZXF1aXJlbWVudHMgYXJlIGluY3JlYXNlZC5cbiAgICogLSBGb3IgbGlicmFyaWVzLCB0aGUgcmFuZ2Ugb2YgdmVyc2lvbnMgaXMgd2lkZW5lZC5cbiAgICovXG4gIEFVVE8gPSBcImF1dG9cIixcblxuICAvKipcbiAgICogUmVsYXggdGhlIHZlcnNpb24gcmVxdWlyZW1lbnQgdG8gaW5jbHVkZSBib3RoIHRoZSBuZXcgYW5kIG9sZCB2ZXJzaW9uLCB3aGVuXG4gICAqIHBvc3NpYmxlLlxuICAgKi9cbiAgV0lERU4gPSBcIndpZGVuXCIsXG5cbiAgLyoqXG4gICAqIEFsd2F5cyBpbmNyZWFzZSB0aGUgdmVyc2lvbiByZXF1aXJlbWVudCB0byBtYXRjaCB0aGUgbmV3IHZlcnNpb24uXG4gICAqL1xuICBJTkNSRUFTRSA9IFwiaW5jcmVhc2VcIixcblxuICAvKipcbiAgICogSW5jcmVhc2UgdGhlIHZlcnNpb24gcmVxdWlyZW1lbnQgb25seSB3aGVuIHJlcXVpcmVkIGJ5IHRoZSBuZXcgdmVyc2lvbi5cbiAgICovXG4gIElOQ1JFQVNFX0lGX05FQ0VTU0FSWSA9IFwiaW5jcmVhc2UtaWYtbmVjZXNzYXJ5XCIsXG59XG5cbi8qKlxuICogRGVmaW5lcyBkZXBlbmRhYm90IGNvbmZpZ3VyYXRpb24gZm9yIG5vZGUgcHJvamVjdHMuXG4gKlxuICogU2luY2UgbW9kdWxlIHZlcnNpb25zIGFyZSBtYW5hZ2VkIGluIHByb2plbiwgdGhlIHZlcnNpb25pbmcgc3RyYXRlZ3kgd2lsbCBiZVxuICogY29uZmlndXJlZCB0byBcImxvY2tmaWxlLW9ubHlcIiB3aGljaCBtZWFucyB0aGF0IG9ubHkgdXBkYXRlcyB0aGF0IGNhbiBiZSBkb25lXG4gKiBvbiB0aGUgbG9ja2ZpbGUgaXRzZWxmIHdpbGwgYmUgcHJvcG9zZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEZXBlbmRhYm90IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIFRoZSByYXcgZGVwZW5kYWJvdCBjb25maWd1cmF0aW9uLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2dpdGh1Yi9hZG1pbmlzdGVyaW5nLWEtcmVwb3NpdG9yeS9jb25maWd1cmF0aW9uLW9wdGlvbnMtZm9yLWRlcGVuZGVuY3ktdXBkYXRlc1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvbmZpZzogYW55O1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCBwcm9qZW4gaXMgYWxzbyB1cGdyYWRlZCBpbiB0aGlzIGNvbmZpZyxcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpZ25vcmVzUHJvamVuOiBib29sZWFuO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaWdub3JlOiBhbnlbXTtcblxuICBjb25zdHJ1Y3RvcihnaXRodWI6IEdpdEh1Yiwgb3B0aW9uczogRGVwZW5kYWJvdE9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKGdpdGh1Yi5wcm9qZWN0KTtcblxuICAgIGNvbnN0IHByb2plY3QgPSBnaXRodWIucHJvamVjdDtcblxuICAgIHRoaXMuaWdub3JlID0gW107XG4gICAgdGhpcy5pZ25vcmVzUHJvamVuID0gb3B0aW9ucy5pZ25vcmVQcm9qZW4gPz8gdHJ1ZTtcblxuICAgIGNvbnN0IHJlZ2lzdHJpZXMgPSBvcHRpb25zLnJlZ2lzdHJpZXNcbiAgICAgID8ga2ViYWJDYXNlS2V5cyhvcHRpb25zLnJlZ2lzdHJpZXMpXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuY29uZmlnID0ge1xuICAgICAgdmVyc2lvbjogMixcbiAgICAgIHJlZ2lzdHJpZXMsXG4gICAgICB1cGRhdGVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBcInBhY2thZ2UtZWNvc3lzdGVtXCI6IFwibnBtXCIsXG4gICAgICAgICAgXCJ2ZXJzaW9uaW5nLXN0cmF0ZWd5XCI6IFwibG9ja2ZpbGUtb25seVwiLFxuICAgICAgICAgIGRpcmVjdG9yeTogXCIvXCIsXG4gICAgICAgICAgc2NoZWR1bGU6IHtcbiAgICAgICAgICAgIGludGVydmFsOlxuICAgICAgICAgICAgICBvcHRpb25zLnNjaGVkdWxlSW50ZXJ2YWwgPz8gRGVwZW5kYWJvdFNjaGVkdWxlSW50ZXJ2YWwuREFJTFksXG4gICAgICAgICAgfSxcbiAgICAgICAgICBpZ25vcmU6ICgpID0+ICh0aGlzLmlnbm9yZS5sZW5ndGggPiAwID8gdGhpcy5pZ25vcmUgOiB1bmRlZmluZWQpLFxuICAgICAgICAgIGxhYmVsczogb3B0aW9ucy5sYWJlbHMgPyBvcHRpb25zLmxhYmVscyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICByZWdpc3RyaWVzOiByZWdpc3RyaWVzID8gT2JqZWN0LmtleXMocmVnaXN0cmllcykgOiB1bmRlZmluZWQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG5cbiAgICBuZXcgWWFtbEZpbGUocHJvamVjdCwgXCIuZ2l0aHViL2RlcGVuZGFib3QueW1sXCIsIHtcbiAgICAgIG9iajogdGhpcy5jb25maWcsXG4gICAgICBjb21taXR0ZWQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGkgb2Ygb3B0aW9ucy5pZ25vcmUgPz8gW10pIHtcbiAgICAgIHRoaXMuYWRkSWdub3JlKGkuZGVwZW5kZW5jeU5hbWUsIC4uLihpLnZlcnNpb25zID8/IFtdKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaWdub3Jlc1Byb2plbikge1xuICAgICAgdGhpcy5hZGRJZ25vcmUoXCJwcm9qZW5cIik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIElnbm9yZXMgYSBkZXBlbmRlbmN5IGZyb20gYXV0b21hdGljIHVwZGF0ZXMuXG4gICAqXG4gICAqIEBwYXJhbSBkZXBlbmRlbmN5TmFtZSBVc2UgdG8gaWdub3JlIHVwZGF0ZXMgZm9yIGRlcGVuZGVuY2llcyB3aXRoIG1hdGNoaW5nXG4gICAqIG5hbWVzLCBvcHRpb25hbGx5IHVzaW5nIGAqYCB0byBtYXRjaCB6ZXJvIG9yIG1vcmUgY2hhcmFjdGVycy5cbiAgICogQHBhcmFtIHZlcnNpb25zIFVzZSB0byBpZ25vcmUgc3BlY2lmaWMgdmVyc2lvbnMgb3IgcmFuZ2VzIG9mIHZlcnNpb25zLiBJZlxuICAgKiB5b3Ugd2FudCB0byBkZWZpbmUgYSByYW5nZSwgdXNlIHRoZSBzdGFuZGFyZCBwYXR0ZXJuIGZvciB0aGUgcGFja2FnZVxuICAgKiBtYW5hZ2VyIChmb3IgZXhhbXBsZTogYF4xLjAuMGAgZm9yIG5wbSwgb3IgYH4+IDIuMGAgZm9yIEJ1bmRsZXIpLlxuICAgKi9cbiAgcHVibGljIGFkZElnbm9yZShkZXBlbmRlbmN5TmFtZTogc3RyaW5nLCAuLi52ZXJzaW9uczogc3RyaW5nW10pIHtcbiAgICB0aGlzLmlnbm9yZS5wdXNoKHtcbiAgICAgIFwiZGVwZW5kZW5jeS1uYW1lXCI6IGRlcGVuZGVuY3lOYW1lLFxuICAgICAgdmVyc2lvbnM6ICgpID0+ICh2ZXJzaW9ucy5sZW5ndGggPiAwID8gdmVyc2lvbnMgOiB1bmRlZmluZWQpLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|