projen 0.100.5 → 0.100.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/.jsii +166 -75
  2. package/lib/ai-instructions.js +2 -2
  3. package/lib/awscdk/auto-discover.js +6 -6
  4. package/lib/awscdk/awscdk-app-java.js +1 -1
  5. package/lib/awscdk/awscdk-app-py.js +1 -1
  6. package/lib/awscdk/awscdk-app-ts.js +38 -23
  7. package/lib/awscdk/awscdk-construct.js +1 -1
  8. package/lib/awscdk/awscdk-deps-java.js +1 -1
  9. package/lib/awscdk/awscdk-deps-js.js +1 -1
  10. package/lib/awscdk/awscdk-deps-py.js +1 -1
  11. package/lib/awscdk/awscdk-deps.js +1 -1
  12. package/lib/awscdk/cdk-config.js +3 -3
  13. package/lib/awscdk/cdk-tasks.js +9 -9
  14. package/lib/awscdk/integ-runner.js +9 -3
  15. package/lib/awscdk/integration-test.js +12 -6
  16. package/lib/awscdk/lambda-extension.js +1 -1
  17. package/lib/awscdk/lambda-function.js +2 -2
  18. package/lib/build/build-workflow.js +1 -1
  19. package/lib/cdk/auto-discover-base.js +2 -2
  20. package/lib/cdk/construct-lib.js +1 -1
  21. package/lib/cdk/integration-test-base.js +1 -1
  22. package/lib/cdk/jsii-build.js +5 -5
  23. package/lib/cdk/jsii-docgen.js +3 -3
  24. package/lib/cdk/jsii-project.js +1 -1
  25. package/lib/cdk8s/auto-discover.js +2 -2
  26. package/lib/cdk8s/cdk8s-app-py.js +3 -3
  27. package/lib/cdk8s/cdk8s-app-ts.js +4 -4
  28. package/lib/cdk8s/cdk8s-construct.js +1 -1
  29. package/lib/cdk8s/cdk8s-deps-py.js +1 -1
  30. package/lib/cdk8s/cdk8s-deps.js +1 -1
  31. package/lib/cdk8s/integration-test.js +17 -10
  32. package/lib/cdktf/cdktf-construct.js +1 -1
  33. package/lib/circleci/circleci.js +1 -1
  34. package/lib/cli/cmds/run-task.js +4 -1
  35. package/lib/cli/task-runtime.js +82 -19
  36. package/lib/common.d.ts +1 -1
  37. package/lib/common.js +2 -2
  38. package/lib/component.js +1 -1
  39. package/lib/dependencies.js +1 -1
  40. package/lib/dev-env.js +1 -1
  41. package/lib/docker-compose/docker-compose-service.js +1 -1
  42. package/lib/docker-compose/docker-compose.js +1 -1
  43. package/lib/file.js +1 -1
  44. package/lib/gitattributes.js +1 -1
  45. package/lib/github/actions-provider.js +1 -1
  46. package/lib/github/auto-approve.js +1 -1
  47. package/lib/github/auto-merge.js +1 -1
  48. package/lib/github/auto-queue.js +1 -1
  49. package/lib/github/dependabot.js +1 -1
  50. package/lib/github/dependency-review.js +1 -1
  51. package/lib/github/github-credentials.js +1 -1
  52. package/lib/github/github-project.js +1 -1
  53. package/lib/github/github.js +1 -1
  54. package/lib/github/merge-queue.js +1 -1
  55. package/lib/github/mergify.js +1 -1
  56. package/lib/github/pr-template.js +1 -1
  57. package/lib/github/pull-request-backport.js +1 -1
  58. package/lib/github/pull-request-lint.js +1 -1
  59. package/lib/github/stale.js +1 -1
  60. package/lib/github/task-workflow-job.js +1 -1
  61. package/lib/github/task-workflow.js +1 -1
  62. package/lib/github/workflow-actions.js +1 -1
  63. package/lib/github/workflow-jobs.js +1 -1
  64. package/lib/github/workflow-steps.js +1 -1
  65. package/lib/github/workflows.js +1 -1
  66. package/lib/gitlab/configuration.js +1 -1
  67. package/lib/gitlab/gitlab-configuration.js +1 -1
  68. package/lib/gitlab/nested-configuration.js +1 -1
  69. package/lib/gitpod.js +1 -1
  70. package/lib/ignore-file.js +1 -1
  71. package/lib/ini.js +1 -1
  72. package/lib/java/java-project.js +1 -1
  73. package/lib/java/junit.js +3 -3
  74. package/lib/java/maven-compile.js +3 -3
  75. package/lib/java/maven-packaging.js +3 -3
  76. package/lib/java/maven-sample.js +1 -1
  77. package/lib/java/pom.js +2 -2
  78. package/lib/java/projenrc.js +3 -3
  79. package/lib/javascript/biome/biome.js +1 -1
  80. package/lib/javascript/bundler.js +3 -3
  81. package/lib/javascript/eslint.js +1 -1
  82. package/lib/javascript/jest.js +4 -4
  83. package/lib/javascript/license-checker.js +5 -5
  84. package/lib/javascript/node-package.js +1 -1
  85. package/lib/javascript/node-project.js +13 -4
  86. package/lib/javascript/npm-config.js +1 -1
  87. package/lib/javascript/prettier.js +1 -1
  88. package/lib/javascript/projenrc.js +3 -3
  89. package/lib/javascript/typescript-config.js +2 -2
  90. package/lib/javascript/upgrade-dependencies.js +4 -4
  91. package/lib/javascript/yarnrc.js +1 -1
  92. package/lib/json-patch.js +1 -1
  93. package/lib/json.js +1 -1
  94. package/lib/license.js +1 -1
  95. package/lib/logger.js +1 -1
  96. package/lib/makefile.js +1 -1
  97. package/lib/object-file.js +1 -1
  98. package/lib/project-build.js +1 -1
  99. package/lib/project-tree.js +1 -1
  100. package/lib/project.js +1 -1
  101. package/lib/projects.js +1 -1
  102. package/lib/projenrc-json.js +1 -1
  103. package/lib/projenrc.js +1 -1
  104. package/lib/python/pip.js +17 -5
  105. package/lib/python/poetry.js +7 -7
  106. package/lib/python/projenrc.js +3 -3
  107. package/lib/python/pyproject-toml-file.js +1 -1
  108. package/lib/python/pytest-sample.js +1 -1
  109. package/lib/python/pytest.js +1 -1
  110. package/lib/python/python-project.js +1 -1
  111. package/lib/python/python-sample.js +1 -1
  112. package/lib/python/requirements-file.js +1 -1
  113. package/lib/python/setuppy.js +1 -1
  114. package/lib/python/setuptools.js +8 -3
  115. package/lib/python/uv.js +6 -6
  116. package/lib/python/venv.js +1 -1
  117. package/lib/readme.js +1 -1
  118. package/lib/release/publisher.js +1 -1
  119. package/lib/release/release-trigger.js +1 -1
  120. package/lib/release/release.js +1 -1
  121. package/lib/renovatebot.js +1 -1
  122. package/lib/run-task.cjs +56 -20
  123. package/lib/sample-file.js +2 -2
  124. package/lib/source-code.js +1 -1
  125. package/lib/task-model.d.ts +25 -1
  126. package/lib/task-model.js +1 -1
  127. package/lib/task.d.ts +33 -0
  128. package/lib/task.js +28 -2
  129. package/lib/tasks.js +1 -1
  130. package/lib/testing.js +1 -1
  131. package/lib/textfile.js +1 -1
  132. package/lib/toml.js +1 -1
  133. package/lib/typescript/projenrc-ts.js +1 -1
  134. package/lib/typescript/projenrc.js +1 -1
  135. package/lib/typescript/typescript-typedoc.js +9 -3
  136. package/lib/typescript/typescript.js +8 -10
  137. package/lib/util/exec.d.ts +1 -1
  138. package/lib/util/exec.js +1 -1
  139. package/lib/util/fs.d.ts +12 -0
  140. package/lib/util/fs.js +33 -0
  141. package/lib/version.js +2 -2
  142. package/lib/vscode/devcontainer.js +1 -1
  143. package/lib/vscode/extensions.js +1 -1
  144. package/lib/vscode/launch-config.js +1 -1
  145. package/lib/vscode/settings.js +1 -1
  146. package/lib/vscode/vscode.js +1 -1
  147. package/lib/web/next.js +9 -9
  148. package/lib/web/postcss.js +1 -1
  149. package/lib/web/react.js +7 -7
  150. package/lib/web/tailwind.js +1 -1
  151. package/lib/xmlfile.js +1 -1
  152. package/lib/yaml.js +1 -1
  153. package/package.json +4 -4
@@ -6,7 +6,7 @@ const component_1 = require("../component");
6
6
  const util_1 = require("../util");
7
7
  const yaml_1 = require("../yaml");
8
8
  class Mergify extends component_1.Component {
9
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.Mergify", version: "0.100.5" };
9
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.Mergify", version: "0.100.7" };
10
10
  rules = new Array();
11
11
  queues = new Array();
12
12
  // The actual YAML file will only be created if at least 1 rule is added.
@@ -7,7 +7,7 @@ const textfile_1 = require("../textfile");
7
7
  * Template for GitHub pull requests.
8
8
  */
9
9
  class PullRequestTemplate extends textfile_1.TextFile {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.PullRequestTemplate", version: "0.100.5" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.PullRequestTemplate", version: "0.100.7" };
11
11
  /**
12
12
  * Returns the `PullRequestTemplate` instance associated with a project or `undefined` if
13
13
  * there is no PullRequestTemplate.
@@ -9,7 +9,7 @@ const component_1 = require("../component");
9
9
  const json_1 = require("../json");
10
10
  const release_1 = require("../release");
11
11
  class PullRequestBackport extends component_1.Component {
12
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.PullRequestBackport", version: "0.100.5" };
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.PullRequestBackport", version: "0.100.7" };
13
13
  file;
14
14
  workflow;
15
15
  constructor(scope, options = {}) {
@@ -13,7 +13,7 @@ const runner_options_1 = require("../runner-options");
13
13
  class PullRequestLint extends component_1.Component {
14
14
  github;
15
15
  options;
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.PullRequestLint", version: "0.100.5" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.PullRequestLint", version: "0.100.7" };
17
17
  constructor(github, options = {}) {
18
18
  super(github.project);
19
19
  this.github = github;
@@ -18,7 +18,7 @@ const runner_options_1 = require("../runner-options");
18
18
  * @see https://github.com/actions/stale
19
19
  */
20
20
  class Stale extends component_1.Component {
21
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.Stale", version: "0.100.5" };
21
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.Stale", version: "0.100.7" };
22
22
  constructor(github, options = {}) {
23
23
  super(github.project);
24
24
  const stale = github.addWorkflow("stale");
@@ -13,7 +13,7 @@ const util_1 = require("./private/util");
13
13
  * @implements {Job}
14
14
  */
15
15
  class TaskWorkflowJob extends component_1.Component {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.TaskWorkflowJob", version: "0.100.5" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.TaskWorkflowJob", version: "0.100.7" };
17
17
  runsOn;
18
18
  runsOnGroup;
19
19
  steps;
@@ -9,7 +9,7 @@ const DEFAULT_JOB_ID = "build";
9
9
  * A GitHub workflow for common build tasks within a project.
10
10
  */
11
11
  class TaskWorkflow extends workflows_1.GithubWorkflow {
12
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.TaskWorkflow", version: "0.100.5" };
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.TaskWorkflow", version: "0.100.7" };
13
13
  jobId;
14
14
  artifactsDirectory;
15
15
  constructor(github, options) {
@@ -15,7 +15,7 @@ const RUNNER_TEMP = "${{ runner.temp }}";
15
15
  * A set of utility functions for creating GitHub actions in workflows.
16
16
  */
17
17
  class WorkflowActions {
18
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.WorkflowActions", version: "0.100.5" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.WorkflowActions", version: "0.100.7" };
19
19
  /**
20
20
  * Creates a .patch file from the current git diff and uploads it as an
21
21
  * artifact. Use `checkoutWithPatch` to download and apply in another job.
@@ -10,7 +10,7 @@ const runner_options_1 = require("../runner-options");
10
10
  * A set of utility functions for creating jobs in GitHub Workflows.
11
11
  */
12
12
  class WorkflowJobs {
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.WorkflowJobs", version: "0.100.5" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.WorkflowJobs", version: "0.100.7" };
14
14
  /**
15
15
  * Creates a pull request with the changes of a patch file.
16
16
  *
@@ -25,7 +25,7 @@ var CheckoutSubmodules;
25
25
  * A collection of very commonly used, individual, GitHub Workflow Job steps.
26
26
  */
27
27
  class WorkflowSteps {
28
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.WorkflowSteps", version: "0.100.5" };
28
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.WorkflowSteps", version: "0.100.7" };
29
29
  /**
30
30
  * Checks out a repository.
31
31
  *
@@ -16,7 +16,7 @@ const yaml_1 = require("../yaml");
16
16
  * @see https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions
17
17
  */
18
18
  class GithubWorkflow extends component_1.Component {
19
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.GithubWorkflow", version: "0.100.5" };
19
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.github.GithubWorkflow", version: "0.100.7" };
20
20
  /**
21
21
  * The name of the workflow. GitHub displays the names of your workflows under your repository's
22
22
  * "Actions" tab.
@@ -45,7 +45,7 @@ const yaml_1 = require("../yaml");
45
45
  * @see https://docs.gitlab.com/ee/ci/yaml/
46
46
  */
47
47
  class CiConfiguration extends component_1.Component {
48
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.gitlab.CiConfiguration", version: "0.100.5" };
48
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.gitlab.CiConfiguration", version: "0.100.7" };
49
49
  /**
50
50
  * The name of the configuration.
51
51
  */
@@ -8,7 +8,7 @@ const nested_configuration_1 = require("./nested-configuration");
8
8
  * A GitLab CI for the main `.gitlab-ci.yml` file.
9
9
  */
10
10
  class GitlabConfiguration extends configuration_1.CiConfiguration {
11
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.gitlab.GitlabConfiguration", version: "0.100.5" };
11
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.gitlab.GitlabConfiguration", version: "0.100.7" };
12
12
  nestedTemplates = {};
13
13
  constructor(project, options) {
14
14
  super(project, "gitlab-ci", options);
@@ -7,7 +7,7 @@ const configuration_1 = require("./configuration");
7
7
  * A GitLab CI for templates that are created and included in the `.gitlab-ci.yml` file.
8
8
  */
9
9
  class NestedConfiguration extends configuration_1.CiConfiguration {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.gitlab.NestedConfiguration", version: "0.100.5" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.gitlab.NestedConfiguration", version: "0.100.7" };
11
11
  parent;
12
12
  constructor(project, parent, name, options) {
13
13
  super(project, name, options);
package/lib/gitpod.js CHANGED
@@ -106,7 +106,7 @@ var GitpodPortVisibility;
106
106
  * The Gitpod component which emits .gitpod.yml
107
107
  */
108
108
  class Gitpod extends component_1.Component {
109
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.Gitpod", version: "0.100.5" };
109
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.Gitpod", version: "0.100.7" };
110
110
  dockerImage;
111
111
  prebuilds;
112
112
  tasks = new Array();
@@ -5,7 +5,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const file_1 = require("./file");
6
6
  const util_1 = require("./util");
7
7
  class IgnoreFile extends file_1.FileBase {
8
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.IgnoreFile", version: "0.100.5" };
8
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.IgnoreFile", version: "0.100.7" };
9
9
  _patterns;
10
10
  filterCommentLines;
11
11
  filterEmptyLines;
package/lib/ini.js CHANGED
@@ -41,7 +41,7 @@ const object_file_1 = require("./object-file");
41
41
  * Represents an INI file.
42
42
  */
43
43
  class IniFile extends object_file_1.ObjectFile {
44
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.IniFile", version: "0.100.5" };
44
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.IniFile", version: "0.100.7" };
45
45
  constructor(project, filePath, options) {
46
46
  super(project, filePath, options);
47
47
  }
@@ -16,7 +16,7 @@ const util_1 = require("../util");
16
16
  * @pjid java
17
17
  */
18
18
  class JavaProject extends github_1.GitHubProject {
19
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.JavaProject", version: "0.100.5" };
19
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.JavaProject", version: "0.100.7" };
20
20
  /**
21
21
  * API for managing `pom.xml`.
22
22
  */
package/lib/java/junit.js CHANGED
@@ -10,14 +10,14 @@ const TESTDIR = (0, path_1.join)("src", "test", "java");
10
10
  * Implements JUnit-based testing.
11
11
  */
12
12
  class Junit extends component_1.Component {
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.Junit", version: "0.100.5" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.Junit", version: "0.100.7" };
14
14
  constructor(project, options) {
15
15
  super(project);
16
16
  const pom = options.pom;
17
17
  const version = options.version ?? "5.7.0";
18
18
  pom.addTestDependency(`org.junit.jupiter/junit-jupiter-api@${version}`);
19
19
  pom.addTestDependency(`org.junit.jupiter/junit-jupiter-engine@${version}`);
20
- project.testTask.exec("mvn test");
20
+ project.testTask.execArgs(["mvn", "test"]);
21
21
  const javaPackage = options.sampleJavaPackage ?? "org.acme";
22
22
  const javaPackagePath = javaPackage.split(".");
23
23
  new sample_file_1.SampleDir(project, (0, path_1.join)(TESTDIR, ...javaPackagePath), {
@@ -39,4 +39,4 @@ class Junit extends component_1.Component {
39
39
  }
40
40
  }
41
41
  exports.Junit = Junit;
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvamF2YS9qdW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0JBQTRCO0FBRTVCLDRDQUF5QztBQUV6QyxnREFBMkM7QUFFM0MsTUFBTSxPQUFPLEdBQUcsSUFBQSxXQUFJLEVBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztBQXlCNUM7O0dBRUc7QUFDSCxNQUFhLEtBQU0sU0FBUSxxQkFBUzs7SUFDbEMsWUFBWSxPQUFnQixFQUFFLE9BQXFCO1FBQ2pELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDeEIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUM7UUFFM0MsR0FBRyxDQUFDLGlCQUFpQixDQUFDLHVDQUF1QyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQywwQ0FBMEMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUUzRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVsQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsaUJBQWlCLElBQUksVUFBVSxDQUFDO1FBQzVELE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0MsSUFBSSx1QkFBUyxDQUFDLE9BQU8sRUFBRSxJQUFBLFdBQUksRUFBQyxPQUFPLEVBQUUsR0FBRyxlQUFlLENBQUMsRUFBRTtZQUN4RCxLQUFLLEVBQUU7Z0JBQ0wsYUFBYSxFQUFFO29CQUNiLFdBQVcsV0FBVyxHQUFHO29CQUN6QixFQUFFO29CQUNGLG9DQUFvQztvQkFDcEMsRUFBRTtvQkFDRix1QkFBdUI7b0JBQ3ZCLFNBQVM7b0JBQ1QsNkJBQTZCO29CQUM3QiwwQ0FBMEM7b0JBQzFDLEtBQUs7b0JBQ0wsR0FBRztpQkFDSixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDYjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBOUJILHNCQStCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHR5cGUgeyBQb20gfSBmcm9tIFwiLi9wb21cIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBTYW1wbGVEaXIgfSBmcm9tIFwiLi4vc2FtcGxlLWZpbGVcIjtcblxuY29uc3QgVEVTVERJUiA9IGpvaW4oXCJzcmNcIiwgXCJ0ZXN0XCIsIFwiamF2YVwiKTtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSnVuaXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEp1bml0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBKYXZhIHBvbS5cbiAgICovXG4gIHJlYWRvbmx5IHBvbTogUG9tO1xuXG4gIC8qKlxuICAgKiBKdW5pdCB2ZXJzaW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiNS43LjBcIlxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSmF2YSBwYWNrYWdlIGZvciB0ZXN0IHNhbXBsZS5cbiAgICogQGRlZmF1bHQgXCJvcmcuYWNtZVwiXG4gICAqL1xuICByZWFkb25seSBzYW1wbGVKYXZhUGFja2FnZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbXBsZW1lbnRzIEpVbml0LWJhc2VkIHRlc3RpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBKdW5pdCBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEp1bml0T3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgcG9tID0gb3B0aW9ucy5wb207XG4gICAgY29uc3QgdmVyc2lvbiA9IG9wdGlvbnMudmVyc2lvbiA/PyBcIjUuNy4wXCI7XG5cbiAgICBwb20uYWRkVGVzdERlcGVuZGVuY3koYG9yZy5qdW5pdC5qdXBpdGVyL2p1bml0LWp1cGl0ZXItYXBpQCR7dmVyc2lvbn1gKTtcbiAgICBwb20uYWRkVGVzdERlcGVuZGVuY3koYG9yZy5qdW5pdC5qdXBpdGVyL2p1bml0LWp1cGl0ZXItZW5naW5lQCR7dmVyc2lvbn1gKTtcblxuICAgIHByb2plY3QudGVzdFRhc2suZXhlYyhcIm12biB0ZXN0XCIpO1xuXG4gICAgY29uc3QgamF2YVBhY2thZ2UgPSBvcHRpb25zLnNhbXBsZUphdmFQYWNrYWdlID8/IFwib3JnLmFjbWVcIjtcbiAgICBjb25zdCBqYXZhUGFja2FnZVBhdGggPSBqYXZhUGFja2FnZS5zcGxpdChcIi5cIik7XG4gICAgbmV3IFNhbXBsZURpcihwcm9qZWN0LCBqb2luKFRFU1RESVIsIC4uLmphdmFQYWNrYWdlUGF0aCksIHtcbiAgICAgIGZpbGVzOiB7XG4gICAgICAgIFwiTXlUZXN0LmphdmFcIjogW1xuICAgICAgICAgIGBwYWNrYWdlICR7amF2YVBhY2thZ2V9O2AsXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBcImltcG9ydCBvcmcuanVuaXQuanVwaXRlci5hcGkuVGVzdDtcIixcbiAgICAgICAgICBcIlwiLFxuICAgICAgICAgIFwicHVibGljIGNsYXNzIE15VGVzdCB7XCIsXG4gICAgICAgICAgXCIgIEBUZXN0XCIsXG4gICAgICAgICAgXCIgIHB1YmxpYyB2b2lkIHRlc3RIZWxsbygpIHtcIixcbiAgICAgICAgICAnICAgIFN5c3RlbS5vdXQucHJpbnRsbihcIkhlbGxvLCB3b3JsZCFcIik7JyxcbiAgICAgICAgICBcIiAgfVwiLFxuICAgICAgICAgIFwifVwiLFxuICAgICAgICBdLmpvaW4oXCJcXG5cIiksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvamF2YS9qdW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0JBQTRCO0FBRTVCLDRDQUF5QztBQUV6QyxnREFBMkM7QUFFM0MsTUFBTSxPQUFPLEdBQUcsSUFBQSxXQUFJLEVBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztBQXlCNUM7O0dBRUc7QUFDSCxNQUFhLEtBQU0sU0FBUSxxQkFBUzs7SUFDbEMsWUFBWSxPQUFnQixFQUFFLE9BQXFCO1FBQ2pELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDeEIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUM7UUFFM0MsR0FBRyxDQUFDLGlCQUFpQixDQUFDLHVDQUF1QyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQywwQ0FBMEMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUUzRSxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRTNDLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsSUFBSSxVQUFVLENBQUM7UUFDNUQsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQyxJQUFJLHVCQUFTLENBQUMsT0FBTyxFQUFFLElBQUEsV0FBSSxFQUFDLE9BQU8sRUFBRSxHQUFHLGVBQWUsQ0FBQyxFQUFFO1lBQ3hELEtBQUssRUFBRTtnQkFDTCxhQUFhLEVBQUU7b0JBQ2IsV0FBVyxXQUFXLEdBQUc7b0JBQ3pCLEVBQUU7b0JBQ0Ysb0NBQW9DO29CQUNwQyxFQUFFO29CQUNGLHVCQUF1QjtvQkFDdkIsU0FBUztvQkFDVCw2QkFBNkI7b0JBQzdCLDBDQUEwQztvQkFDMUMsS0FBSztvQkFDTCxHQUFHO2lCQUNKLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzthQUNiO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUE5Qkgsc0JBK0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgam9pbiB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgdHlwZSB7IFBvbSB9IGZyb20gXCIuL3BvbVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IFNhbXBsZURpciB9IGZyb20gXCIuLi9zYW1wbGUtZmlsZVwiO1xuXG5jb25zdCBURVNURElSID0gam9pbihcInNyY1wiLCBcInRlc3RcIiwgXCJqYXZhXCIpO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBKdW5pdGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSnVuaXRPcHRpb25zIHtcbiAgLyoqXG4gICAqIEphdmEgcG9tLlxuICAgKi9cbiAgcmVhZG9ubHkgcG9tOiBQb207XG5cbiAgLyoqXG4gICAqIEp1bml0IHZlcnNpb25cbiAgICpcbiAgICogQGRlZmF1bHQgXCI1LjcuMFwiXG4gICAqL1xuICByZWFkb25seSB2ZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKYXZhIHBhY2thZ2UgZm9yIHRlc3Qgc2FtcGxlLlxuICAgKiBAZGVmYXVsdCBcIm9yZy5hY21lXCJcbiAgICovXG4gIHJlYWRvbmx5IHNhbXBsZUphdmFQYWNrYWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEltcGxlbWVudHMgSlVuaXQtYmFzZWQgdGVzdGluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEp1bml0IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogSnVuaXRPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBjb25zdCBwb20gPSBvcHRpb25zLnBvbTtcbiAgICBjb25zdCB2ZXJzaW9uID0gb3B0aW9ucy52ZXJzaW9uID8/IFwiNS43LjBcIjtcblxuICAgIHBvbS5hZGRUZXN0RGVwZW5kZW5jeShgb3JnLmp1bml0Lmp1cGl0ZXIvanVuaXQtanVwaXRlci1hcGlAJHt2ZXJzaW9ufWApO1xuICAgIHBvbS5hZGRUZXN0RGVwZW5kZW5jeShgb3JnLmp1bml0Lmp1cGl0ZXIvanVuaXQtanVwaXRlci1lbmdpbmVAJHt2ZXJzaW9ufWApO1xuXG4gICAgcHJvamVjdC50ZXN0VGFzay5leGVjQXJncyhbXCJtdm5cIiwgXCJ0ZXN0XCJdKTtcblxuICAgIGNvbnN0IGphdmFQYWNrYWdlID0gb3B0aW9ucy5zYW1wbGVKYXZhUGFja2FnZSA/PyBcIm9yZy5hY21lXCI7XG4gICAgY29uc3QgamF2YVBhY2thZ2VQYXRoID0gamF2YVBhY2thZ2Uuc3BsaXQoXCIuXCIpO1xuICAgIG5ldyBTYW1wbGVEaXIocHJvamVjdCwgam9pbihURVNURElSLCAuLi5qYXZhUGFja2FnZVBhdGgpLCB7XG4gICAgICBmaWxlczoge1xuICAgICAgICBcIk15VGVzdC5qYXZhXCI6IFtcbiAgICAgICAgICBgcGFja2FnZSAke2phdmFQYWNrYWdlfTtgLFxuICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgXCJpbXBvcnQgb3JnLmp1bml0Lmp1cGl0ZXIuYXBpLlRlc3Q7XCIsXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBcInB1YmxpYyBjbGFzcyBNeVRlc3Qge1wiLFxuICAgICAgICAgIFwiICBAVGVzdFwiLFxuICAgICAgICAgIFwiICBwdWJsaWMgdm9pZCB0ZXN0SGVsbG8oKSB7XCIsXG4gICAgICAgICAgJyAgICBTeXN0ZW0ub3V0LnByaW50bG4oXCJIZWxsbywgd29ybGQhXCIpOycsXG4gICAgICAgICAgXCIgIH1cIixcbiAgICAgICAgICBcIn1cIixcbiAgICAgICAgXS5qb2luKFwiXFxuXCIpLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -7,7 +7,7 @@ const component_1 = require("../component");
7
7
  * Adds the maven-compiler plugin to a POM file and the `compile` task.
8
8
  */
9
9
  class MavenCompile extends component_1.Component {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.MavenCompile", version: "0.100.5" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.MavenCompile", version: "0.100.7" };
11
11
  constructor(project, pom, options = {}) {
12
12
  super(project);
13
13
  project.gitignore.exclude("target");
@@ -17,8 +17,8 @@ class MavenCompile extends component_1.Component {
17
17
  target: options.target ?? "1.8",
18
18
  },
19
19
  });
20
- project.compileTask.exec("mvn compiler:compile");
20
+ project.compileTask.execArgs(["mvn", "compiler:compile"]);
21
21
  }
22
22
  }
23
23
  exports.MavenCompile = MavenCompile;
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tY29tcGlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9qYXZhL21hdmVuLWNvbXBpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLDRDQUF5QztBQXNCekM7O0dBRUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxxQkFBUzs7SUFDekMsWUFBWSxPQUFnQixFQUFFLEdBQVEsRUFBRSxVQUErQixFQUFFO1FBQ3ZFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBDLEdBQUcsQ0FBQyxTQUFTLENBQUMsc0RBQXNELEVBQUU7WUFDcEUsYUFBYSxFQUFFO2dCQUNiLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLEtBQUs7Z0JBQy9CLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLEtBQUs7YUFDaEM7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7O0FBZEgsb0NBZUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBvbSB9IGZyb20gXCIuL3BvbVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTWF2ZW5Db21waWxlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXZlbkNvbXBpbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFNvdXJjZSBsYW5ndWFnZSB2ZXJzaW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcIjEuOFwiXG4gICAqL1xuICByZWFkb25seSBzb3VyY2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhcmdldCBKVk0gdmVyc2lvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgXCIxLjhcIlxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFkZHMgdGhlIG1hdmVuLWNvbXBpbGVyIHBsdWdpbiB0byBhIFBPTSBmaWxlIGFuZCB0aGUgYGNvbXBpbGVgIHRhc2suXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXZlbkNvbXBpbGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwb206IFBvbSwgb3B0aW9uczogTWF2ZW5Db21waWxlT3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBwcm9qZWN0LmdpdGlnbm9yZS5leGNsdWRlKFwidGFyZ2V0XCIpO1xuXG4gICAgcG9tLmFkZFBsdWdpbihcIm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2lucy9tYXZlbi1jb21waWxlci1wbHVnaW5AMy44LjFcIiwge1xuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICBzb3VyY2U6IG9wdGlvbnMuc291cmNlID8/IFwiMS44XCIsXG4gICAgICAgIHRhcmdldDogb3B0aW9ucy50YXJnZXQgPz8gXCIxLjhcIixcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBwcm9qZWN0LmNvbXBpbGVUYXNrLmV4ZWMoXCJtdm4gY29tcGlsZXI6Y29tcGlsZVwiKTtcbiAgfVxufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tY29tcGlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9qYXZhL21hdmVuLWNvbXBpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLDRDQUF5QztBQXNCekM7O0dBRUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxxQkFBUzs7SUFDekMsWUFBWSxPQUFnQixFQUFFLEdBQVEsRUFBRSxVQUErQixFQUFFO1FBQ3ZFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBDLEdBQUcsQ0FBQyxTQUFTLENBQUMsc0RBQXNELEVBQUU7WUFDcEUsYUFBYSxFQUFFO2dCQUNiLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLEtBQUs7Z0JBQy9CLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLEtBQUs7YUFDaEM7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7QUFkSCxvQ0FlQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUG9tIH0gZnJvbSBcIi4vcG9tXCI7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgdHlwZSB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBNYXZlbkNvbXBpbGVgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1hdmVuQ29tcGlsZU9wdGlvbnMge1xuICAvKipcbiAgICogU291cmNlIGxhbmd1YWdlIHZlcnNpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiMS44XCJcbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGFyZ2V0IEpWTSB2ZXJzaW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcIjEuOFwiXG4gICAqL1xuICByZWFkb25seSB0YXJnZXQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQWRkcyB0aGUgbWF2ZW4tY29tcGlsZXIgcGx1Z2luIHRvIGEgUE9NIGZpbGUgYW5kIHRoZSBgY29tcGlsZWAgdGFzay5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hdmVuQ29tcGlsZSBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHBvbTogUG9tLCBvcHRpb25zOiBNYXZlbkNvbXBpbGVPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIHByb2plY3QuZ2l0aWdub3JlLmV4Y2x1ZGUoXCJ0YXJnZXRcIik7XG5cbiAgICBwb20uYWRkUGx1Z2luKFwib3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zL21hdmVuLWNvbXBpbGVyLXBsdWdpbkAzLjguMVwiLCB7XG4gICAgICBjb25maWd1cmF0aW9uOiB7XG4gICAgICAgIHNvdXJjZTogb3B0aW9ucy5zb3VyY2UgPz8gXCIxLjhcIixcbiAgICAgICAgdGFyZ2V0OiBvcHRpb25zLnRhcmdldCA/PyBcIjEuOFwiLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHByb2plY3QuY29tcGlsZVRhc2suZXhlY0FyZ3MoW1wibXZuXCIsIFwiY29tcGlsZXI6Y29tcGlsZVwiXSk7XG4gIH1cbn1cbiJdfQ==
@@ -7,7 +7,7 @@ const component_1 = require("../component");
7
7
  * Configures a maven project to produce a .jar archive with sources and javadocs.
8
8
  */
9
9
  class MavenPackaging extends component_1.Component {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.MavenPackaging", version: "0.100.5" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.MavenPackaging", version: "0.100.7" };
11
11
  /**
12
12
  * The directory containing the package output, relative to the project outdir
13
13
  */
@@ -54,10 +54,10 @@ class MavenPackaging extends component_1.Component {
54
54
  for (const [k, v] of Object.entries(env)) {
55
55
  this.project.packageTask.env(k, v);
56
56
  }
57
- this.project.packageTask.exec(`mkdir -p ${this.distdir}`);
57
+ this.project.packageTask.execArgs(["mkdir", "-p", this.distdir]);
58
58
  this.project.packageTask.exec(`mvn deploy -D=altDeploymentRepository=local::default::file:///$PWD/${this.distdir}`);
59
59
  project.gitignore.exclude(this.distdir);
60
60
  }
61
61
  }
62
62
  exports.MavenPackaging = MavenPackaging;
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tcGFja2FnaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvbWF2ZW4tcGFja2FnaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSw0Q0FBeUM7QUFnQ3pDOztHQUVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEscUJBQVM7O0lBQzNDOztPQUVHO0lBQ2EsT0FBTyxDQUFTO0lBRWhDLFlBQVksT0FBZ0IsRUFBRSxHQUFRLEVBQUUsVUFBaUMsRUFBRTtRQUN6RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixHQUFHLENBQUMsU0FBUyxDQUFDLGlEQUFpRCxFQUFFO1lBQy9ELGFBQWEsRUFBRTtnQkFDYixPQUFPLEVBQUU7b0JBQ1AsS0FBSyxFQUFFLElBQUk7b0JBQ1gsUUFBUSxFQUFFO3dCQUNSLCtCQUErQixFQUFFLElBQUk7d0JBQ3JDLDhCQUE4QixFQUFFLElBQUk7cUJBQ3JDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFLENBQUM7WUFDNUIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxvREFBb0QsRUFBRTtnQkFDbEUsVUFBVSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQzthQUN2RCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzdCLEdBQUcsQ0FBQyxTQUFTLENBQUMscURBQXFELEVBQUU7Z0JBQ25FLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELGFBQWEsRUFBRTtvQkFDYixXQUFXLEVBQUUsS0FBSztvQkFDbEIsSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLGtCQUFrQixFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxlQUFlLEVBQUU7b0JBQ3hELGlCQUFpQixFQUFFLEtBQUssRUFBRSx1Q0FBdUM7b0JBQ2pFLGtCQUFrQixFQUFFO3dCQUNsQixpQkFBaUIsRUFBRTs0QkFDakIsMEJBQTBCOzRCQUMxQiwyQkFBMkI7eUJBQzVCO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHO1lBQ1YsVUFBVSxFQUFFLGdEQUFnRDtTQUM3RCxDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLFdBQVcsQ0FBQztRQUU5QyxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDM0Isc0VBQXNFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FDckYsQ0FBQztRQUVGLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDOztBQTVESCx3Q0E2REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBvbSB9IGZyb20gXCIuL3BvbVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTWF2ZW5QYWNrYWdlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXZlblBhY2thZ2luZ09wdGlvbnMge1xuICAvKipcbiAgICogSW5jbHVkZSBzb3VyY2VzIGphciBpbiBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hlcmUgdG8gcGxhY2UgdGhlIHBhY2thZ2Ugb3V0cHV0P1xuICAgKiBAZGVmYXVsdCBcImRpc3QvamF2YVwiXG4gICAqL1xuICByZWFkb25seSBkaXN0ZGlyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmNsdWRlIGphdmFkb2NzIGphciBpbiBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBqYXZhZG9jcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEV4Y2x1ZGUgc291cmNlIGZpbGVzIGZyb20gZG9jcy5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IGphdmFkb2NzRXhjbHVkZT86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyZXMgYSBtYXZlbiBwcm9qZWN0IHRvIHByb2R1Y2UgYSAuamFyIGFyY2hpdmUgd2l0aCBzb3VyY2VzIGFuZCBqYXZhZG9jcy5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hdmVuUGFja2FnaW5nIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIFRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgcGFja2FnZSBvdXRwdXQsIHJlbGF0aXZlIHRvIHRoZSBwcm9qZWN0IG91dGRpclxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRpc3RkaXI6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwb206IFBvbSwgb3B0aW9uczogTWF2ZW5QYWNrYWdpbmdPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIHBvbS5hZGRQbHVnaW4oXCJvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnMvbWF2ZW4tamFyLXBsdWdpbkAzLjIuMFwiLCB7XG4gICAgICBjb25maWd1cmF0aW9uOiB7XG4gICAgICAgIGFyY2hpdmU6IHtcbiAgICAgICAgICBpbmRleDogdHJ1ZSxcbiAgICAgICAgICBtYW5pZmVzdDoge1xuICAgICAgICAgICAgYWRkRGVmYXVsdEltcGxlbWVudGF0aW9uRW50cmllczogdHJ1ZSxcbiAgICAgICAgICAgIGFkZERlZmF1bHRTcGVjaWZpY2F0aW9uRW50cmllczogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChvcHRpb25zLnNvdXJjZXMgPz8gdHJ1ZSkge1xuICAgICAgcG9tLmFkZFBsdWdpbihcIm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2lucy9tYXZlbi1zb3VyY2UtcGx1Z2luQDMuMi4xXCIsIHtcbiAgICAgICAgZXhlY3V0aW9uczogW3sgaWQ6IFwiYXR0YWNoLXNvdXJjZXNcIiwgZ29hbHM6IFtcImphclwiXSB9XSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmphdmFkb2NzID8/IHRydWUpIHtcbiAgICAgIHBvbS5hZGRQbHVnaW4oXCJvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnMvbWF2ZW4tamF2YWRvYy1wbHVnaW5AMy4yLjBcIiwge1xuICAgICAgICBleGVjdXRpb25zOiBbeyBpZDogXCJhdHRhY2gtamF2YWRvY3NcIiwgZ29hbHM6IFtcImphclwiXSB9XSxcbiAgICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICAgIGZhaWxPbkVycm9yOiBmYWxzZSxcbiAgICAgICAgICBzaG93OiBcInByb3RlY3RlZFwiLFxuICAgICAgICAgIHNvdXJjZUZpbGVFeGNsdWRlczogeyBleGNsdWRlOiBvcHRpb25zLmphdmFkb2NzRXhjbHVkZSB9LFxuICAgICAgICAgIGRldGVjdEphdmFBcGlMaW5rOiBmYWxzZSwgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzYxODg0MjY3XG4gICAgICAgICAgYWRkaXRpb25hbEpPcHRpb25zOiB7XG4gICAgICAgICAgICBhZGRpdGlvbmFsSk9wdGlvbjogW1xuICAgICAgICAgICAgICBcIi1KLVhYOitUaWVyZWRDb21waWxhdGlvblwiLFxuICAgICAgICAgICAgICBcIi1KLVhYOlRpZXJlZFN0b3BBdExldmVsPTFcIixcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IGVudiA9IHtcbiAgICAgIE1BVkVOX09QVFM6IFwiLVhYOitUaWVyZWRDb21waWxhdGlvbiAtWFg6VGllcmVkU3RvcEF0TGV2ZWw9MVwiLFxuICAgIH07XG5cbiAgICB0aGlzLmRpc3RkaXIgPSBvcHRpb25zLmRpc3RkaXIgPz8gXCJkaXN0L2phdmFcIjtcblxuICAgIGZvciAoY29uc3QgW2ssIHZdIG9mIE9iamVjdC5lbnRyaWVzKGVudikpIHtcbiAgICAgIHRoaXMucHJvamVjdC5wYWNrYWdlVGFzay5lbnYoaywgdik7XG4gICAgfVxuICAgIHRoaXMucHJvamVjdC5wYWNrYWdlVGFzay5leGVjKGBta2RpciAtcCAke3RoaXMuZGlzdGRpcn1gKTtcbiAgICB0aGlzLnByb2plY3QucGFja2FnZVRhc2suZXhlYyhcbiAgICAgIGBtdm4gZGVwbG95IC1EPWFsdERlcGxveW1lbnRSZXBvc2l0b3J5PWxvY2FsOjpkZWZhdWx0OjpmaWxlOi8vLyRQV0QvJHt0aGlzLmRpc3RkaXJ9YCxcbiAgICApO1xuXG4gICAgcHJvamVjdC5naXRpZ25vcmUuZXhjbHVkZSh0aGlzLmRpc3RkaXIpO1xuICB9XG59XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tcGFja2FnaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvbWF2ZW4tcGFja2FnaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSw0Q0FBeUM7QUFnQ3pDOztHQUVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEscUJBQVM7O0lBQzNDOztPQUVHO0lBQ2EsT0FBTyxDQUFTO0lBRWhDLFlBQVksT0FBZ0IsRUFBRSxHQUFRLEVBQUUsVUFBaUMsRUFBRTtRQUN6RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixHQUFHLENBQUMsU0FBUyxDQUFDLGlEQUFpRCxFQUFFO1lBQy9ELGFBQWEsRUFBRTtnQkFDYixPQUFPLEVBQUU7b0JBQ1AsS0FBSyxFQUFFLElBQUk7b0JBQ1gsUUFBUSxFQUFFO3dCQUNSLCtCQUErQixFQUFFLElBQUk7d0JBQ3JDLDhCQUE4QixFQUFFLElBQUk7cUJBQ3JDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFLENBQUM7WUFDNUIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxvREFBb0QsRUFBRTtnQkFDbEUsVUFBVSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQzthQUN2RCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzdCLEdBQUcsQ0FBQyxTQUFTLENBQUMscURBQXFELEVBQUU7Z0JBQ25FLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELGFBQWEsRUFBRTtvQkFDYixXQUFXLEVBQUUsS0FBSztvQkFDbEIsSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLGtCQUFrQixFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxlQUFlLEVBQUU7b0JBQ3hELGlCQUFpQixFQUFFLEtBQUssRUFBRSx1Q0FBdUM7b0JBQ2pFLGtCQUFrQixFQUFFO3dCQUNsQixpQkFBaUIsRUFBRTs0QkFDakIsMEJBQTBCOzRCQUMxQiwyQkFBMkI7eUJBQzVCO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHO1lBQ1YsVUFBVSxFQUFFLGdEQUFnRDtTQUM3RCxDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLFdBQVcsQ0FBQztRQUU5QyxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUMzQixzRUFBc0UsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUNyRixDQUFDO1FBRUYsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzFDLENBQUM7O0FBNURILHdDQTZEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUG9tIH0gZnJvbSBcIi4vcG9tXCI7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgdHlwZSB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBNYXZlblBhY2thZ2VgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1hdmVuUGFja2FnaW5nT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBJbmNsdWRlIHNvdXJjZXMgamFyIGluIHBhY2thZ2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGVyZSB0byBwbGFjZSB0aGUgcGFja2FnZSBvdXRwdXQ/XG4gICAqIEBkZWZhdWx0IFwiZGlzdC9qYXZhXCJcbiAgICovXG4gIHJlYWRvbmx5IGRpc3RkaXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEluY2x1ZGUgamF2YWRvY3MgamFyIGluIHBhY2thZ2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGphdmFkb2NzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRXhjbHVkZSBzb3VyY2UgZmlsZXMgZnJvbSBkb2NzLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgamF2YWRvY3NFeGNsdWRlPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogQ29uZmlndXJlcyBhIG1hdmVuIHByb2plY3QgdG8gcHJvZHVjZSBhIC5qYXIgYXJjaGl2ZSB3aXRoIHNvdXJjZXMgYW5kIGphdmFkb2NzLlxuICovXG5leHBvcnQgY2xhc3MgTWF2ZW5QYWNrYWdpbmcgZXh0ZW5kcyBDb21wb25lbnQge1xuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBwYWNrYWdlIG91dHB1dCwgcmVsYXRpdmUgdG8gdGhlIHByb2plY3Qgb3V0ZGlyXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGlzdGRpcjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHBvbTogUG9tLCBvcHRpb25zOiBNYXZlblBhY2thZ2luZ09wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgcG9tLmFkZFBsdWdpbihcIm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2lucy9tYXZlbi1qYXItcGx1Z2luQDMuMi4wXCIsIHtcbiAgICAgIGNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgYXJjaGl2ZToge1xuICAgICAgICAgIGluZGV4OiB0cnVlLFxuICAgICAgICAgIG1hbmlmZXN0OiB7XG4gICAgICAgICAgICBhZGREZWZhdWx0SW1wbGVtZW50YXRpb25FbnRyaWVzOiB0cnVlLFxuICAgICAgICAgICAgYWRkRGVmYXVsdFNwZWNpZmljYXRpb25FbnRyaWVzOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKG9wdGlvbnMuc291cmNlcyA/PyB0cnVlKSB7XG4gICAgICBwb20uYWRkUGx1Z2luKFwib3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zL21hdmVuLXNvdXJjZS1wbHVnaW5AMy4yLjFcIiwge1xuICAgICAgICBleGVjdXRpb25zOiBbeyBpZDogXCJhdHRhY2gtc291cmNlc1wiLCBnb2FsczogW1wiamFyXCJdIH1dLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuamF2YWRvY3MgPz8gdHJ1ZSkge1xuICAgICAgcG9tLmFkZFBsdWdpbihcIm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2lucy9tYXZlbi1qYXZhZG9jLXBsdWdpbkAzLjIuMFwiLCB7XG4gICAgICAgIGV4ZWN1dGlvbnM6IFt7IGlkOiBcImF0dGFjaC1qYXZhZG9jc1wiLCBnb2FsczogW1wiamFyXCJdIH1dLFxuICAgICAgICBjb25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgZmFpbE9uRXJyb3I6IGZhbHNlLFxuICAgICAgICAgIHNob3c6IFwicHJvdGVjdGVkXCIsXG4gICAgICAgICAgc291cmNlRmlsZUV4Y2x1ZGVzOiB7IGV4Y2x1ZGU6IG9wdGlvbnMuamF2YWRvY3NFeGNsdWRlIH0sXG4gICAgICAgICAgZGV0ZWN0SmF2YUFwaUxpbms6IGZhbHNlLCAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNjE4ODQyNjdcbiAgICAgICAgICBhZGRpdGlvbmFsSk9wdGlvbnM6IHtcbiAgICAgICAgICAgIGFkZGl0aW9uYWxKT3B0aW9uOiBbXG4gICAgICAgICAgICAgIFwiLUotWFg6K1RpZXJlZENvbXBpbGF0aW9uXCIsXG4gICAgICAgICAgICAgIFwiLUotWFg6VGllcmVkU3RvcEF0TGV2ZWw9MVwiLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgZW52ID0ge1xuICAgICAgTUFWRU5fT1BUUzogXCItWFg6K1RpZXJlZENvbXBpbGF0aW9uIC1YWDpUaWVyZWRTdG9wQXRMZXZlbD0xXCIsXG4gICAgfTtcblxuICAgIHRoaXMuZGlzdGRpciA9IG9wdGlvbnMuZGlzdGRpciA/PyBcImRpc3QvamF2YVwiO1xuXG4gICAgZm9yIChjb25zdCBbaywgdl0gb2YgT2JqZWN0LmVudHJpZXMoZW52KSkge1xuICAgICAgdGhpcy5wcm9qZWN0LnBhY2thZ2VUYXNrLmVudihrLCB2KTtcbiAgICB9XG4gICAgdGhpcy5wcm9qZWN0LnBhY2thZ2VUYXNrLmV4ZWNBcmdzKFtcIm1rZGlyXCIsIFwiLXBcIiwgdGhpcy5kaXN0ZGlyXSk7XG4gICAgdGhpcy5wcm9qZWN0LnBhY2thZ2VUYXNrLmV4ZWMoXG4gICAgICBgbXZuIGRlcGxveSAtRD1hbHREZXBsb3ltZW50UmVwb3NpdG9yeT1sb2NhbDo6ZGVmYXVsdDo6ZmlsZTovLy8kUFdELyR7dGhpcy5kaXN0ZGlyfWAsXG4gICAgKTtcblxuICAgIHByb2plY3QuZ2l0aWdub3JlLmV4Y2x1ZGUodGhpcy5kaXN0ZGlyKTtcbiAgfVxufVxuIl19
@@ -9,7 +9,7 @@ const sample_file_1 = require("../sample-file");
9
9
  * Java code sample.
10
10
  */
11
11
  class MavenSample extends component_1.Component {
12
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.MavenSample", version: "0.100.5" };
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.MavenSample", version: "0.100.7" };
13
13
  constructor(project, options) {
14
14
  super(project);
15
15
  const pkg = options.package.split(".");
package/lib/java/pom.js CHANGED
@@ -13,7 +13,7 @@ const POM_XML_ATTRS = {
13
13
  "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance",
14
14
  };
15
15
  class UpdatePolicy {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.UpdatePolicy", version: "0.100.5" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.UpdatePolicy", version: "0.100.7" };
17
17
  static ALWAYS = "always";
18
18
  static DAILY = "daily";
19
19
  static NEVER = "never";
@@ -37,7 +37,7 @@ var ChecksumPolicy;
37
37
  * details used by Maven to build the project.
38
38
  */
39
39
  class Pom extends component_1.Component {
40
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.Pom", version: "0.100.5" };
40
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.Pom", version: "0.100.7" };
41
41
  /**
42
42
  * The name of the pom file.
43
43
  */
@@ -19,7 +19,7 @@ const util_1 = require("../util");
19
19
  * `src/main/java/projenrc.java`.
20
20
  */
21
21
  class Projenrc extends projenrc_1.ProjenrcFile {
22
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.Projenrc", version: "0.100.5" };
22
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.java.Projenrc", version: "0.100.7" };
23
23
  /**
24
24
  * The name of the java class that includes the projen entrypoint.
25
25
  */
@@ -43,7 +43,7 @@ class Projenrc extends projenrc_1.ProjenrcFile {
43
43
  project.deps.addDependency(`io.github.cdklabs/projen@${projenVersion}`, depType);
44
44
  pom.addPlugin("org.codehaus.mojo/exec-maven-plugin@3.0.0");
45
45
  // set up the "default" task which is the task executed when `projen` is executed for this project.
46
- project.defaultTask?.exec(`mvn ${compileGoal} --quiet`);
46
+ project.defaultTask?.execArgs(["mvn", compileGoal, "--quiet"]);
47
47
  project.defaultTask?.exec(`mvn exec:java --quiet -Dexec.mainClass=${this.className}${execOpts}`);
48
48
  // if this is a new project, generate a skeleton for projenrc.java
49
49
  this.generateProjenrc();
@@ -180,4 +180,4 @@ function getJavaImport(jsiiType, jsiiManifest) {
180
180
  .join(".");
181
181
  return `${packageName}.${jsiiType.name}`;
182
182
  }
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVucmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvamF2YS9wcm9qZW5yYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFpTkEsMERBY0M7QUFrREQsc0NBU0M7O0FBMVJELDJCQUEwRDtBQUMxRCwrQkFBK0M7QUFFL0Msc0NBQTJDO0FBQzNDLGtEQUFpRDtBQUVqRCw0Q0FBZ0Q7QUFFaEQsMENBQTJDO0FBQzNDLGtDQUFpRDtBQWlDakQ7Ozs7OztHQU1HO0FBQ0gsTUFBYSxRQUFTLFNBQVEsdUJBQVk7O0lBQ3hDOztPQUVHO0lBQ2EsU0FBUyxDQUFTO0lBRWxDOztPQUVHO0lBQ2MsU0FBUyxDQUFVO0lBRXBDLFlBQVksT0FBZ0IsRUFBRSxHQUFRLEVBQUUsVUFBMkIsRUFBRTtRQUNuRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLHVCQUFjLENBQUM7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLFVBQVUsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDO1FBRTNDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTO1lBQzVCLENBQUMsQ0FBQyw2QkFBYyxDQUFDLElBQUk7WUFDckIsQ0FBQyxDQUFDLDZCQUFjLENBQUMsT0FBTyxDQUFDO1FBQzNCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLCtCQUErQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkUsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVM7WUFDaEMsQ0FBQyxDQUFDLHNCQUFzQjtZQUN4QixDQUFDLENBQUMsa0JBQWtCLENBQUM7UUFFdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQ3hCLDRCQUE0QixhQUFhLEVBQUUsRUFD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Q0FBQyxRQUFhO0lBQ3ZDLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN4RSxDQUFDO0FBRUQsU0FBZ0IsYUFBYSxDQUFDLFFBQWEsRUFBRSxZQUFpQjtJQUM1RCxNQUFNLFdBQVcsR0FDZixZQUFZLEVBQUUsVUFBVSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxJQUFJLFFBQVEsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUN2RSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTztRQUMxQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDO2FBQ3BELE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVmLE9BQU8sR0FBRyxXQUFXLElBQUksUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleGlzdHNTeW5jLCBta2RpclN5bmMsIHdyaXRlRmlsZVN5bmMgfSBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IGRpcm5hbWUsIGpvaW4sIHJlbGF0aXZlIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB0eXBlIHsgUG9tIH0gZnJvbSBcIi4vcG9tXCI7XG5pbXBvcnQgeyBQUk9KRU5fVkVSU0lPTiB9IGZyb20gXCIuLi9jb21tb25cIjtcbmltcG9ydCB7IERlcGVuZGVuY3lUeXBlIH0gZnJvbSBcIi4uL2RlcGVuZGVuY2llc1wiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0T3B0aW9uIH0gZnJvbSBcIi4uL2ludmVudG9yeVwiO1xuaW1wb3J0IHsgcmVhZEpzaWlNYW5pZmVzdCB9IGZyb20gXCIuLi9pbnZlbnRvcnlcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBQcm9qZW5yY0ZpbGUgfSBmcm9tIFwiLi4vcHJvamVucmNcIjtcbmltcG9ydCB7IG5vcm1hbGl6ZVBlcnNpc3RlZFBhdGggfSBmcm9tIFwiLi4vdXRpbFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBQcm9qZW5yY2AuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVucmNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBKYXZhIGNsYXNzIHdoaWNoIGNvbnRhaW5zIHRoZSBgbWFpbigpYCBtZXRob2QgZm9yIHByb2plbi5cbiAgICogQGRlZmF1bHQgXCJwcm9qZW5yY1wiXG4gICAqL1xuICByZWFkb25seSBjbGFzc05hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9qZW4gdmVyc2lvbiB0byB1c2VcbiAgICogQGRlZmF1bHQgLSBjdXJyZW50IHZlcnNpb25cbiAgICovXG4gIHJlYWRvbmx5IHByb2plblZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgcHJvamVucmMgdW5kZXIgdGhlIHRlc3Qgc2NvcGUgaW5zdGVhZCBvZiB0aGUgbWFpbiBzY29wZSwgd2hpY2ggaXNcbiAgICogcmVzZXJ2ZWQgdG8gdGhlIGFwcC4gVGhpcyBtZWFucyB0aGF0IHByb2plbnJjIHdpbGwgYmUgdW5kZXJcbiAgICogYHNyYy90ZXN0L2phdmEvcHJvamVucmMuamF2YWAgYW5kIHByb2plbiB3aWxsIGJlIGRlZmluZWQgYXMgYSB0ZXN0XG4gICAqIGRlcGVuZGVuY3kuIFRoaXMgZW5mb3JjZXMgdGhhdCBhcHBsaWNhdGlvbiBjb2RlIGRvZXMgbm90IHRha2UgYSBkZXBlbmRlbmN5XG4gICAqIG9uIHByb2plbiBjb2RlLlxuICAgKlxuICAgKiBJZiB0aGlzIGlzIGRpc2FibGVkLCBwcm9qZW5yYyBzaG91bGQgYmUgdW5kZXJcbiAgICogYHNyYy9tYWluL2phdmEvcHJvamVucmMuamF2YWAuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHRlc3RTY29wZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQWxsb3dzIHdyaXRpbmcgcHJvamVucmMgZmlsZXMgaW4gamF2YS5cbiAqXG4gKiBUaGlzIHdpbGwgaW5zdGFsbCBgb3JnLnByb2plbi9wcm9qZW5gIGFzIGEgTWF2ZW4gZGVwZW5kZW5jeSBhbmQgd2lsbCBhZGQgYVxuICogYHN5bnRoYCB0YXNrIHdoaWNoIHdpbGwgY29tcGlsZSAmIGV4ZWN1dGUgYG1haW4oKWAgZnJvbVxuICogYHNyYy9tYWluL2phdmEvcHJvamVucmMuamF2YWAuXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9qZW5yYyBleHRlbmRzIFByb2plbnJjRmlsZSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgamF2YSBjbGFzcyB0aGF0IGluY2x1ZGVzIHRoZSBwcm9qZW4gZW50cnlwb2ludC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjbGFzc05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgY2xhc3MgaXMgaW4gdGhlIFwidGVzdFwiIG9yIFwibWFpblwiIHNjb3BlP1xuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSB0ZXN0U2NvcGU6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgcG9tOiBQb20sIG9wdGlvbnM6IFByb2plbnJjT3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBjb25zdCBwcm9qZW5WZXJzaW9uID0gb3B0aW9ucy5wcm9qZW5WZXJzaW9uID8/IFBST0pFTl9WRVJTSU9OO1xuICAgIHRoaXMuY2xhc3NOYW1lID0gb3B0aW9ucy5jbGFzc05hbWUgPz8gXCJwcm9qZW5yY1wiO1xuICAgIHRoaXMudGVzdFNjb3BlID0gb3B0aW9ucy50ZXN0U2NvcGUgPz8gdHJ1ZTtcblxuICAgIGNvbnN0IGRlcFR5cGUgPSB0aGlzLnRlc3RTY29wZVxuICAgICAgPyBEZXBlbmRlbmN5VHlwZS5URVNUXG4gICAgICA6IERlcGVuZGVuY3lUeXBlLlJVTlRJTUU7XG4gICAgY29uc3QgZXhlY09wdHMgPSB0aGlzLnRlc3RTY29wZSA/ICcgLURleGVjLmNsYXNzcGF0aFNjb3BlPVwidGVzdFwiJyA6IFwiXCI7XG4gICAgY29uc3QgY29tcGlsZUdvYWwgPSB0aGlzLnRlc3RTY29wZVxuICAgICAgPyBcImNvbXBpbGVyOnRlc3RDb21waWxlXCJcbiAgICAgIDogXCJjb21waWxlcjpjb21waWxlXCI7XG5cbiAgICBwcm9qZWN0LmRlcHMuYWRkRGVwZW5kZW5jeShcbiAgICAgIGBpby5naXRodWIuY2RrbGFicy9wcm9qZW5AJHtwcm9qZW5WZXJzaW9ufWAsXG4gICAgICBkZXBUeXBlLFxuICAgICk7XG4gICAgcG9tLmFkZFBsdWdpbihcIm9yZy5jb2RlaGF1cy5tb2pvL2V4ZWMtbWF2ZW4tcGx1Z2luQDMuMC4wXCIpO1xuXG4gICAgLy8gc2V0IHVwIHRoZSBcImRlZmF1bHRcIiB0YXNrIHdoaWNoIGlzIHRoZSB0YXNrIGV4ZWN1dGVkIHdoZW4gYHByb2plbmAgaXMgZXhlY3V0ZWQgZm9yIHRoaXMgcHJvamVjdC5cbiAgICBwcm9qZWN0LmRlZmF1bHRUYXNrPy5leGVjKGBtdm4gJHtjb21waWxlR29hbH0gLS1xdWlldGApO1xuICAgIHByb2plY3QuZGVmYXVsdFRhc2s/LmV4ZWMoXG4gICAgICBgbXZuIGV4ZWM6amF2YSAtLXF1aWV0IC1EZXhlYy5tYWluQ2xhc3M9JHt0aGlzLmNsYXNzTmFtZX0ke2V4ZWNPcHRzfWAsXG4gICAgKTtcblxuICAgIC8vIGlmIHRoaXMgaXMgYSBuZXcgcHJvamVjdCwgZ2VuZXJhdGUgYSBza2VsZXRvbiBmb3IgcHJvamVucmMuamF2YVxuICAgIHRoaXMuZ2VuZXJhdGVQcm9qZW5yYygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgamF2YUNsYXNzKCk6IHN0cmluZyB7XG4gICAgY29uc3Qgc3BsaXQgPSB0aGlzLmNsYXNzTmFtZS5zcGxpdChcIi5cIik7XG4gICAgaWYgKHNwbGl0Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgcmV0dXJuIHNwbGl0WzBdO1xuICAgIH1cbiAgICByZXR1cm4gc3BsaXRbc3BsaXQubGVuZ3RoIC0gMV07XG4gIH1cblxuICBwcml2YXRlIGdldCBqYXZhUGFja2FnZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgc3BsaXQgPSB0aGlzLmNsYXNzTmFtZS5zcGxpdChcIi5cIik7XG4gICAgaWYgKHNwbGl0Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICByZXR1cm4gc3BsaXQuc2xpY2UoMCwgc3BsaXQubGVuZ3RoIC0gMik7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHBhdGggb2YgdGhlIHByb2plbnJjIGZpbGUuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGZpbGVQYXRoKCk6IHN0cmluZyB7XG4gICAgY29uc3QgZGlyID0gdGhpcy50ZXN0U2NvcGUgPyBcInNyYy90ZXN0L2phdmFcIiA6IFwic3JjL21haW4vamF2YVwiO1xuXG4gICAgY29uc3QgamF2YUZpbGUgPSBqb2luKFxuICAgICAgdGhpcy5wcm9qZWN0Lm91dGRpcixcbiAgICAgIGRpcixcbiAgICAgIC4uLnRoaXMuamF2YVBhY2thZ2UsXG4gICAgICB0aGlzLmphdmFDbGFzcyArIFwiLmphdmFcIixcbiAgICApO1xuXG4gICAgY29uc3QgcmVsYXRpdmVQYXRoID0gcmVsYXRpdmUodGhpcy5wcm9qZWN0Lm91dGRpciwgamF2YUZpbGUpO1xuXG4gICAgcmV0dXJuIG5vcm1hbGl6ZVBlcnNpc3RlZFBhdGgocmVsYXRpdmVQYXRoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVQcm9qZW5yYygpIHtcbiAgICBjb25zdCBib290c3RyYXAgPSB0aGlzLnByb2plY3QuaW5pdFByb2plY3Q7XG4gICAgaWYgKCFib290c3RyYXApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QganNpaUZxbiA9IGJvb3RzdHJhcC5mcW47XG4gICAgY29uc3QganNpaU1hbmlmZXN0ID0gcmVhZEpzaWlNYW5pZmVzdChqc2lpRnFuKTtcbiAgICBjb25zdCBqc2lpVHlwZSA9IGpzaWlNYW5pZmVzdC50eXBlc1tqc2lpRnFuXTtcbiAgICBjb25zdCBqYXZhVGFyZ2V0ID0ganNpaU1hbmlmZXN0LnRhcmdldHMuamF2YTtcbiAgICBjb25zdCBvcHRpb25zVHlwZUZxbiA9IGpzaWlUeXBlLmluaXRpYWxpemVyPy5wYXJhbWV0ZXJzPy5bMF0udHlwZT8uZnFuO1xuICAgIGlmICghb3B0aW9uc1R5cGVGcW4pIHtcbiAgICAgIHRoaXMucHJvamVjdC5sb2dnZXIud2FybihcbiAgICAgICAgXCJjYW5ub3QgZGV0ZXJtaW5lIGpzaWkgdHlwZSBmb3IgcHJvamVjdCBvcHRpb25zXCIsXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBqc2lpT3B0aW9uc1R5cGUgPSBqc2lpTWFuaWZlc3QudHlwZXNbb3B0aW9uc1R5cGVGcW5dO1xuICAgIGlmICghanNpaU9wdGlvbnNUeXBlKSB7XG4gICAgICB0aGlzLnByb2plY3QubG9nZ2VyLndhcm4oXG4gICAgICAgIGBjYW5ub3QgZmluZCBqc2lpIHR5cGUgZm9yIHByb2plY3Qgb3B0aW9uczogJHtvcHRpb25zVHlwZUZxbn1gLFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gc2tpcCBpZiBmaWxlIGV4aXN0c1xuICAgIGlmIChleGlzdHNTeW5jKHRoaXMuZmlsZVBhdGgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbGluZXMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgbGV0IGluZGVudCA9IDA7XG4gICAgY29uc3QgZW1pdCA9IChsaW5lOiBzdHJpbmcgPSBcIlwiKSA9PlxuICAgICAgbGluZXMucHVzaChcIiBcIi5yZXBlYXQoaW5kZW50ICogNCkgKyBsaW5lKTtcbiAgICBjb25zdCBvcGVuQmxvY2sgPSAobGluZTogc3RyaW5nID0gXCJcIikgPT4ge1xuICAgICAgZW1pdChsaW5lICsgXCIge1wiKTtcbiAgICAgIGluZGVudCsrO1xuICAgIH07XG4gICAgY29uc3QgY2xvc2VCbG9jayA9ICgpID0+IHtcbiAgICAgIGluZGVudC0tO1xuICAgICAgZW1pdChcIn1cIik7XG4gICAgfTtcblxuICAgIGNvbnN0IG9wdGlvbkZxbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSBnZW5lcmF0ZUphdmFPcHRpb25OYW1lcyhcbiAgICAgIGJvb3RzdHJhcC50eXBlLm9wdGlvbnMsXG4gICAgICBqc2lpTWFuaWZlc3QsXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmphdmFQYWNrYWdlLmxlbmd0aCA+IDApIHtcbiAgICAgIGVtaXQoYHBhY2thZ2UgJHt0aGlzLmphdmFQYWNrYWdlLmpvaW4oXCIuXCIpfTtgKTtcbiAgICAgIGVtaXQoKTtcbiAgICB9XG5cbiAgICBjb25zdCB7IHJlbmRlcmVkT3B0aW9ucywgaW1wb3J0cyB9ID0gcmVuZGVySmF2YU9wdGlvbnMoXG4gICAgICAyLFxuICAgICAganNpaU9wdGlvbnNUeXBlLm5hbWUsXG4gICAgICBvcHRpb25GcW5zLFxuICAgICAgYm9vdHN0cmFwLmFyZ3MsXG4gICAgKTtcblxuICAgIGVtaXQoYGltcG9ydCAke2dldEphdmFJbXBvcnQoanNpaVR5cGUsIGpzaWlNYW5pZmVzdCl9O2ApO1xuICAgIGVtaXQoYGltcG9ydCAke2dldEphdmFJbXBvcnQoanNpaU9wdGlvbnNUeXBlLCBqc2lpTWFuaWZlc3QpfTtgKTtcbiAgICBmb3IgKGNvbnN0IG9wdGlvblR5cGVOYW1lIG9mIGltcG9ydHMpIHtcbiAgICAgIGVtaXQoYGltcG9ydCAke2phdmFUYXJnZXQucGFja2FnZX0uJHtvcHRpb25UeXBlTmFtZX07YCk7XG4gICAgfVxuICAgIGVtaXQoKTtcbiAgICBvcGVuQmxvY2soYHB1YmxpYyBjbGFzcyAke3RoaXMuamF2YUNsYXNzfWApO1xuICAgIG9wZW5CbG9jayhcInB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpXCIpO1xuICAgIGVtaXQoXG4gICAgICBgJHtqc2lpVHlwZS5uYW1lfSBwcm9qZWN0ID0gbmV3ICR7anNpaVR5cGUubmFtZX0oJHtyZW5kZXJlZE9wdGlvbnN9KTtgLFxuICAgICk7XG4gICAgZW1pdChcInByb2plY3Quc3ludGgoKTtcIik7XG4gICAgY2xvc2VCbG9jaygpO1xuICAgIGNsb3NlQmxvY2soKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gam9pbih0aGlzLnByb2plY3Qub3V0ZGlyLCB0aGlzLmZpbGVQYXRoKTtcbiAgICBta2RpclN5bmMoZGlybmFtZShmaWxlUGF0aCksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgIHdyaXRlRmlsZVN5bmMoZmlsZVBhdGgsIGxpbmVzLmpvaW4oXCJcXG5cIikpO1xuXG4gICAgdGhpcy5wcm9qZWN0LmxvZ2dlci5pbmZvKFxuICAgICAgYFByb2plY3QgZGVmaW5pdGlvbiBmaWxlIHdhcyBjcmVhdGVkIGF0ICR7dGhpcy5maWxlUGF0aH1gLFxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlSmF2YU9wdGlvbk5hbWVzKFxuICBvcHRpb25zOiBQcm9qZWN0T3B0aW9uW10sXG4gIGpzaWlNYW5pZmVzdDogYW55LFxuKSB7XG4gIGNvbnN0IG9wdGlvbkZxbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgZm9yIChjb25zdCBvcHRpb24gb2Ygb3B0aW9ucykge1xuICAgIGlmIChvcHRpb24uZnFuICYmIGpzaWlNYW5pZmVzdC50eXBlc1tvcHRpb24uZnFuXSkge1xuICAgICAgb3B0aW9uRnFuc1tvcHRpb24ubmFtZV0gPSB0b0phdmFGdWxsVHlwZU5hbWUoXG4gICAgICAgIGpzaWlNYW5pZmVzdC50eXBlc1tvcHRpb24uZnFuXSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG9wdGlvbkZxbnM7XG59XG5cbmZ1bmN0aW9uIHJlbmRlckphdmFPcHRpb25zKFxuICBpbmRlbnQ6IG51bWJlcixcbiAgb3B0aW9uc1R5cGVOYW1lOiBzdHJpbmcsXG4gIG9wdGlvbkZxbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gIGluaXRPcHRpb25zPzogUmVjb3JkPHN0cmluZywgYW55Pixcbikge1xuICBjb25zdCBpbXBvcnRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gIGlmICghaW5pdE9wdGlvbnMgfHwgT2JqZWN0LmtleXMoaW5pdE9wdGlvbnMpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB7IHJlbmRlcmVkT3B0aW9uczogXCJcIiwgaW1wb3J0cyB9OyAvLyBubyBvcHRpb25zXG4gIH1cblxuICBjb25zdCBsaW5lcyA9IFtgJHtvcHRpb25zVHlwZU5hbWV9LmJ1aWxkZXIoKWBdO1xuXG4gIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhpbml0T3B0aW9ucykpIHtcbiAgICBjb25zdCB7IGphdmFWYWx1ZSwgaW1wb3J0TmFtZSB9ID0gdG9KYXZhVmFsdWUodmFsdWUsIG5hbWUsIG9wdGlvbkZxbnMpO1xuICAgIGlmIChpbXBvcnROYW1lKSBpbXBvcnRzLmFkZChpbXBvcnROYW1lKTtcbiAgICBsaW5lcy5wdXNoKGAuJHt0b0phdmFQcm9wZXJ0eShuYW1lKX0oJHtqYXZhVmFsdWV9KWApO1xuICB9XG5cbiAgbGluZXMucHVzaChcIi5idWlsZCgpXCIpO1xuXG4gIGNvbnN0IHJlbmRlcmVkT3B0aW9ucyA9IGxpbmVzLmpvaW4oYFxcbiR7XCIgXCIucmVwZWF0KChpbmRlbnQgKyAxKSAqIDQpfWApO1xuICByZXR1cm4geyByZW5kZXJlZE9wdGlvbnMsIGltcG9ydHMgfTtcbn1cblxuZnVuY3Rpb24gdG9KYXZhUHJvcGVydHkocHJvcDogc3RyaW5nKSB7XG4gIHJldHVybiBwcm9wO1xufVxuXG5mdW5jdGlvbiB0b0phdmFWYWx1ZShcbiAgdmFsdWU6IGFueSxcbiAgbmFtZTogc3RyaW5nLFxuICBvcHRpb25GcW5zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuKSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgJiYgb3B0aW9uRnFuc1tuYW1lXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgcGFydHMgPSBvcHRpb25GcW5zW25hbWVdLnNwbGl0KFwiLlwiKTtcbiAgICBjb25zdCBiYXNlID0gcGFydHNbcGFydHMubGVuZ3RoIC0gMV07XG4gICAgY29uc3QgY2hvaWNlID0gU3RyaW5nKHZhbHVlKS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoLy0vZywgXCJfXCIpO1xuICAgIHJldHVybiB7IGphdmFWYWx1ZTogYCR7YmFzZX0uJHtjaG9pY2V9YCwgaW1wb3J0TmFtZTogb3B0aW9uRnFuc1tuYW1lXSB9O1xuICB9IGVsc2Uge1xuICAgIHJldHVybiB7IGphdmFWYWx1ZTogSlNPTi5zdHJpbmdpZnkodmFsdWUpIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9KYXZhRnVsbFR5cGVOYW1lKGpzaWlUeXBlOiBhbnkpIHtcbiAgcmV0dXJuIFtqc2lpVHlwZS5uYW1lc3BhY2UsIGpzaWlUeXBlLm5hbWVdLmZpbHRlcigoeCkgPT4geCkuam9pbihcIi5cIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRKYXZhSW1wb3J0KGpzaWlUeXBlOiBhbnksIGpzaWlNYW5pZmVzdDogYW55KSB7XG4gIGNvbnN0IHBhY2thZ2VOYW1lID1cbiAgICBqc2lpTWFuaWZlc3Q/LnN1Ym1vZHVsZXM/LltgJHtqc2lpVHlwZS5hc3NlbWJseX0uJHtqc2lpVHlwZT8ubmFtZXNwYWNlfWBdXG4gICAgICA/LnRhcmdldHM/LmphdmE/LnBhY2thZ2UgfHxcbiAgICBbanNpaU1hbmlmZXN0LnRhcmdldHMuamF2YS5wYWNrYWdlLCBqc2lpVHlwZS5uYW1lc3BhY2VdXG4gICAgICAuZmlsdGVyKCh4KSA9PiB4KVxuICAgICAgLmpvaW4oXCIuXCIpO1xuXG4gIHJldHVybiBgJHtwYWNrYWdlTmFtZX0uJHtqc2lpVHlwZS5uYW1lfWA7XG59XG4iXX0=
183
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVucmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvamF2YS9wcm9qZW5yYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFpTkEsMERBY0M7QUFrREQsc0NBU0M7O0FBMVJELDJCQUEwRDtBQUMxRCwrQkFBK0M7QUFFL0Msc0NBQTJDO0FBQzNDLGtEQUFpRDtBQUVqRCw0Q0FBZ0Q7QUFFaEQsMENBQTJDO0FBQzNDLGtDQUFpRDtBQWlDakQ7Ozs7OztHQU1HO0FBQ0gsTUFBYSxRQUFTLFNBQVEsdUJBQVk7O0lBQ3hDOztPQUVHO0lBQ2EsU0FBUyxDQUFTO0lBRWxDOztPQUVHO0lBQ2MsU0FBUyxDQUFVO0lBRXBDLFlBQVksT0FBZ0IsRUFBRSxHQUFRLEVBQUUsVUFBMkIsRUFBRTtRQUNuRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLHVCQUFjLENBQUM7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLFVBQVUsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDO1FBRTNDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTO1lBQzVCLENBQUMsQ0FBQyw2QkFBYyxDQUFDLElBQUk7WUFDckIsQ0FBQyxDQUFDLDZCQUFjLENBQUMsT0FBTyxDQUFDO1FBQzNCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLCtCQUErQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkUsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVM7WUFDaEMsQ0FBQyxDQUFDLHNCQUFzQjtZQUN4QixDQUFDLENBQUMsa0JBQWtCLENBQUM7UUFFdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQ3hCLDRCQUE0QixhQUFhLEVBQUUsRUFD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QUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLFFBQWE7SUFDdkMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3hFLENBQUM7QUFFRCxTQUFnQixhQUFhLENBQUMsUUFBYSxFQUFFLFlBQWlCO0lBQzVELE1BQU0sV0FBVyxHQUNmLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLElBQUksUUFBUSxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQ3ZFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPO1FBQzFCLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUM7YUFDcEQsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDaEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWYsT0FBTyxHQUFHLFdBQVcsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4aXN0c1N5bmMsIG1rZGlyU3luYywgd3JpdGVGaWxlU3luYyB9IGZyb20gXCJmc1wiO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiwgcmVsYXRpdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHR5cGUgeyBQb20gfSBmcm9tIFwiLi9wb21cIjtcbmltcG9ydCB7IFBST0pFTl9WRVJTSU9OIH0gZnJvbSBcIi4uL2NvbW1vblwiO1xuaW1wb3J0IHsgRGVwZW5kZW5jeVR5cGUgfSBmcm9tIFwiLi4vZGVwZW5kZW5jaWVzXCI7XG5pbXBvcnQgdHlwZSB7IFByb2plY3RPcHRpb24gfSBmcm9tIFwiLi4vaW52ZW50b3J5XCI7XG5pbXBvcnQgeyByZWFkSnNpaU1hbmlmZXN0IH0gZnJvbSBcIi4uL2ludmVudG9yeVwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IFByb2plbnJjRmlsZSB9IGZyb20gXCIuLi9wcm9qZW5yY1wiO1xuaW1wb3J0IHsgbm9ybWFsaXplUGVyc2lzdGVkUGF0aCB9IGZyb20gXCIuLi91dGlsXCI7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFByb2plbnJjYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9qZW5yY09wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEphdmEgY2xhc3Mgd2hpY2ggY29udGFpbnMgdGhlIGBtYWluKClgIG1ldGhvZCBmb3IgcHJvamVuLlxuICAgKiBAZGVmYXVsdCBcInByb2plbnJjXCJcbiAgICovXG4gIHJlYWRvbmx5IGNsYXNzTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHByb2plbiB2ZXJzaW9uIHRvIHVzZVxuICAgKiBAZGVmYXVsdCAtIGN1cnJlbnQgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuVmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lcyBwcm9qZW5yYyB1bmRlciB0aGUgdGVzdCBzY29wZSBpbnN0ZWFkIG9mIHRoZSBtYWluIHNjb3BlLCB3aGljaCBpc1xuICAgKiByZXNlcnZlZCB0byB0aGUgYXBwLiBUaGlzIG1lYW5zIHRoYXQgcHJvamVucmMgd2lsbCBiZSB1bmRlclxuICAgKiBgc3JjL3Rlc3QvamF2YS9wcm9qZW5yYy5qYXZhYCBhbmQgcHJvamVuIHdpbGwgYmUgZGVmaW5lZCBhcyBhIHRlc3RcbiAgICogZGVwZW5kZW5jeS4gVGhpcyBlbmZvcmNlcyB0aGF0IGFwcGxpY2F0aW9uIGNvZGUgZG9lcyBub3QgdGFrZSBhIGRlcGVuZGVuY3lcbiAgICogb24gcHJvamVuIGNvZGUuXG4gICAqXG4gICAqIElmIHRoaXMgaXMgZGlzYWJsZWQsIHByb2plbnJjIHNob3VsZCBiZSB1bmRlclxuICAgKiBgc3JjL21haW4vamF2YS9wcm9qZW5yYy5qYXZhYC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdFNjb3BlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBBbGxvd3Mgd3JpdGluZyBwcm9qZW5yYyBmaWxlcyBpbiBqYXZhLlxuICpcbiAqIFRoaXMgd2lsbCBpbnN0YWxsIGBvcmcucHJvamVuL3Byb2plbmAgYXMgYSBNYXZlbiBkZXBlbmRlbmN5IGFuZCB3aWxsIGFkZCBhXG4gKiBgc3ludGhgIHRhc2sgd2hpY2ggd2lsbCBjb21waWxlICYgZXhlY3V0ZSBgbWFpbigpYCBmcm9tXG4gKiBgc3JjL21haW4vamF2YS9wcm9qZW5yYy5qYXZhYC5cbiAqL1xuZXhwb3J0IGNsYXNzIFByb2plbnJjIGV4dGVuZHMgUHJvamVucmNGaWxlIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBqYXZhIGNsYXNzIHRoYXQgaW5jbHVkZXMgdGhlIHByb2plbiBlbnRyeXBvaW50LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNsYXNzTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjbGFzcyBpcyBpbiB0aGUgXCJ0ZXN0XCIgb3IgXCJtYWluXCIgc2NvcGU/XG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IHRlc3RTY29wZTogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwb206IFBvbSwgb3B0aW9uczogUHJvamVucmNPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGNvbnN0IHByb2plblZlcnNpb24gPSBvcHRpb25zLnByb2plblZlcnNpb24gPz8gUFJPSkVOX1ZFUlNJT047XG4gICAgdGhpcy5jbGFzc05hbWUgPSBvcHRpb25zLmNsYXNzTmFtZSA/PyBcInByb2plbnJjXCI7XG4gICAgdGhpcy50ZXN0U2NvcGUgPSBvcHRpb25zLnRlc3RTY29wZSA/PyB0cnVlO1xuXG4gICAgY29uc3QgZGVwVHlwZSA9IHRoaXMudGVzdFNjb3BlXG4gICAgICA/IERlcGVuZGVuY3lUeXBlLlRFU1RcbiAgICAgIDogRGVwZW5kZW5jeVR5cGUuUlVOVElNRTtcbiAgICBjb25zdCBleGVjT3B0cyA9IHRoaXMudGVzdFNjb3BlID8gJyAtRGV4ZWMuY2xhc3NwYXRoU2NvcGU9XCJ0ZXN0XCInIDogXCJcIjtcbiAgICBjb25zdCBjb21waWxlR29hbCA9IHRoaXMudGVzdFNjb3BlXG4gICAgICA/IFwiY29tcGlsZXI6dGVzdENvbXBpbGVcIlxuICAgICAgOiBcImNvbXBpbGVyOmNvbXBpbGVcIjtcblxuICAgIHByb2plY3QuZGVwcy5hZGREZXBlbmRlbmN5KFxuICAgICAgYGlvLmdpdGh1Yi5jZGtsYWJzL3Byb2plbkAke3Byb2plblZlcnNpb259YCxcbiAgICAgIGRlcFR5cGUsXG4gICAgKTtcbiAgICBwb20uYWRkUGx1Z2luKFwib3JnLmNvZGVoYXVzLm1vam8vZXhlYy1tYXZlbi1wbHVnaW5AMy4wLjBcIik7XG5cbiAgICAvLyBzZXQgdXAgdGhlIFwiZGVmYXVsdFwiIHRhc2sgd2hpY2ggaXMgdGhlIHRhc2sgZXhlY3V0ZWQgd2hlbiBgcHJvamVuYCBpcyBleGVjdXRlZCBmb3IgdGhpcyBwcm9qZWN0LlxuICAgIHByb2plY3QuZGVmYXVsdFRhc2s/LmV4ZWNBcmdzKFtcIm12blwiLCBjb21waWxlR29hbCwgXCItLXF1aWV0XCJdKTtcbiAgICBwcm9qZWN0LmRlZmF1bHRUYXNrPy5leGVjKFxuICAgICAgYG12biBleGVjOmphdmEgLS1xdWlldCAtRGV4ZWMubWFpbkNsYXNzPSR7dGhpcy5jbGFzc05hbWV9JHtleGVjT3B0c31gLFxuICAgICk7XG5cbiAgICAvLyBpZiB0aGlzIGlzIGEgbmV3IHByb2plY3QsIGdlbmVyYXRlIGEgc2tlbGV0b24gZm9yIHByb2plbnJjLmphdmFcbiAgICB0aGlzLmdlbmVyYXRlUHJvamVucmMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGphdmFDbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IHNwbGl0ID0gdGhpcy5jbGFzc05hbWUuc3BsaXQoXCIuXCIpO1xuICAgIGlmIChzcGxpdC5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBzcGxpdFswXTtcbiAgICB9XG4gICAgcmV0dXJuIHNwbGl0W3NwbGl0Lmxlbmd0aCAtIDFdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgamF2YVBhY2thZ2UoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHNwbGl0ID0gdGhpcy5jbGFzc05hbWUuc3BsaXQoXCIuXCIpO1xuICAgIGlmIChzcGxpdC5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgcmV0dXJuIHNwbGl0LnNsaWNlKDAsIHNwbGl0Lmxlbmd0aCAtIDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIG9mIHRoZSBwcm9qZW5yYyBmaWxlLlxuICAgKi9cbiAgcHVibGljIGdldCBmaWxlUGF0aCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRpciA9IHRoaXMudGVzdFNjb3BlID8gXCJzcmMvdGVzdC9qYXZhXCIgOiBcInNyYy9tYWluL2phdmFcIjtcblxuICAgIGNvbnN0IGphdmFGaWxlID0gam9pbihcbiAgICAgIHRoaXMucHJvamVjdC5vdXRkaXIsXG4gICAgICBkaXIsXG4gICAgICAuLi50aGlzLmphdmFQYWNrYWdlLFxuICAgICAgdGhpcy5qYXZhQ2xhc3MgKyBcIi5qYXZhXCIsXG4gICAgKTtcblxuICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9IHJlbGF0aXZlKHRoaXMucHJvamVjdC5vdXRkaXIsIGphdmFGaWxlKTtcblxuICAgIHJldHVybiBub3JtYWxpemVQZXJzaXN0ZWRQYXRoKHJlbGF0aXZlUGF0aCk7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlUHJvamVucmMoKSB7XG4gICAgY29uc3QgYm9vdHN0cmFwID0gdGhpcy5wcm9qZWN0LmluaXRQcm9qZWN0O1xuICAgIGlmICghYm9vdHN0cmFwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGpzaWlGcW4gPSBib290c3RyYXAuZnFuO1xuICAgIGNvbnN0IGpzaWlNYW5pZmVzdCA9IHJlYWRKc2lpTWFuaWZlc3QoanNpaUZxbik7XG4gICAgY29uc3QganNpaVR5cGUgPSBqc2lpTWFuaWZlc3QudHlwZXNbanNpaUZxbl07XG4gICAgY29uc3QgamF2YVRhcmdldCA9IGpzaWlNYW5pZmVzdC50YXJnZXRzLmphdmE7XG4gICAgY29uc3Qgb3B0aW9uc1R5cGVGcW4gPSBqc2lpVHlwZS5pbml0aWFsaXplcj8ucGFyYW1ldGVycz8uWzBdLnR5cGU/LmZxbjtcbiAgICBpZiAoIW9wdGlvbnNUeXBlRnFuKSB7XG4gICAgICB0aGlzLnByb2plY3QubG9nZ2VyLndhcm4oXG4gICAgICAgIFwiY2Fubm90IGRldGVybWluZSBqc2lpIHR5cGUgZm9yIHByb2plY3Qgb3B0aW9uc1wiLFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QganNpaU9wdGlvbnNUeXBlID0ganNpaU1hbmlmZXN0LnR5cGVzW29wdGlvbnNUeXBlRnFuXTtcbiAgICBpZiAoIWpzaWlPcHRpb25zVHlwZSkge1xuICAgICAgdGhpcy5wcm9qZWN0LmxvZ2dlci53YXJuKFxuICAgICAgICBgY2Fubm90IGZpbmQganNpaSB0eXBlIGZvciBwcm9qZWN0IG9wdGlvbnM6ICR7b3B0aW9uc1R5cGVGcW59YCxcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIHNraXAgaWYgZmlsZSBleGlzdHNcbiAgICBpZiAoZXhpc3RzU3luYyh0aGlzLmZpbGVQYXRoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGxpbmVzID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICAgIGxldCBpbmRlbnQgPSAwO1xuICAgIGNvbnN0IGVtaXQgPSAobGluZTogc3RyaW5nID0gXCJcIikgPT5cbiAgICAgIGxpbmVzLnB1c2goXCIgXCIucmVwZWF0KGluZGVudCAqIDQpICsgbGluZSk7XG4gICAgY29uc3Qgb3BlbkJsb2NrID0gKGxpbmU6IHN0cmluZyA9IFwiXCIpID0+IHtcbiAgICAgIGVtaXQobGluZSArIFwiIHtcIik7XG4gICAgICBpbmRlbnQrKztcbiAgICB9O1xuICAgIGNvbnN0IGNsb3NlQmxvY2sgPSAoKSA9PiB7XG4gICAgICBpbmRlbnQtLTtcbiAgICAgIGVtaXQoXCJ9XCIpO1xuICAgIH07XG5cbiAgICBjb25zdCBvcHRpb25GcW5zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0gZ2VuZXJhdGVKYXZhT3B0aW9uTmFtZXMoXG4gICAgICBib290c3RyYXAudHlwZS5vcHRpb25zLFxuICAgICAganNpaU1hbmlmZXN0LFxuICAgICk7XG5cbiAgICBpZiAodGhpcy5qYXZhUGFja2FnZS5sZW5ndGggPiAwKSB7XG4gICAgICBlbWl0KGBwYWNrYWdlICR7dGhpcy5qYXZhUGFja2FnZS5qb2luKFwiLlwiKX07YCk7XG4gICAgICBlbWl0KCk7XG4gICAgfVxuXG4gICAgY29uc3QgeyByZW5kZXJlZE9wdGlvbnMsIGltcG9ydHMgfSA9IHJlbmRlckphdmFPcHRpb25zKFxuICAgICAgMixcbiAgICAgIGpzaWlPcHRpb25zVHlwZS5uYW1lLFxuICAgICAgb3B0aW9uRnFucyxcbiAgICAgIGJvb3RzdHJhcC5hcmdzLFxuICAgICk7XG5cbiAgICBlbWl0KGBpbXBvcnQgJHtnZXRKYXZhSW1wb3J0KGpzaWlUeXBlLCBqc2lpTWFuaWZlc3QpfTtgKTtcbiAgICBlbWl0KGBpbXBvcnQgJHtnZXRKYXZhSW1wb3J0KGpzaWlPcHRpb25zVHlwZSwganNpaU1hbmlmZXN0KX07YCk7XG4gICAgZm9yIChjb25zdCBvcHRpb25UeXBlTmFtZSBvZiBpbXBvcnRzKSB7XG4gICAgICBlbWl0KGBpbXBvcnQgJHtqYXZhVGFyZ2V0LnBhY2thZ2V9LiR7b3B0aW9uVHlwZU5hbWV9O2ApO1xuICAgIH1cbiAgICBlbWl0KCk7XG4gICAgb3BlbkJsb2NrKGBwdWJsaWMgY2xhc3MgJHt0aGlzLmphdmFDbGFzc31gKTtcbiAgICBvcGVuQmxvY2soXCJwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKVwiKTtcbiAgICBlbWl0KFxuICAgICAgYCR7anNpaVR5cGUubmFtZX0gcHJvamVjdCA9IG5ldyAke2pzaWlUeXBlLm5hbWV9KCR7cmVuZGVyZWRPcHRpb25zfSk7YCxcbiAgICApO1xuICAgIGVtaXQoXCJwcm9qZWN0LnN5bnRoKCk7XCIpO1xuICAgIGNsb3NlQmxvY2soKTtcbiAgICBjbG9zZUJsb2NrKCk7XG5cbiAgICBjb25zdCBmaWxlUGF0aCA9IGpvaW4odGhpcy5wcm9qZWN0Lm91dGRpciwgdGhpcy5maWxlUGF0aCk7XG4gICAgbWtkaXJTeW5jKGRpcm5hbWUoZmlsZVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB3cml0ZUZpbGVTeW5jKGZpbGVQYXRoLCBsaW5lcy5qb2luKFwiXFxuXCIpKTtcblxuICAgIHRoaXMucHJvamVjdC5sb2dnZXIuaW5mbyhcbiAgICAgIGBQcm9qZWN0IGRlZmluaXRpb24gZmlsZSB3YXMgY3JlYXRlZCBhdCAke3RoaXMuZmlsZVBhdGh9YCxcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUphdmFPcHRpb25OYW1lcyhcbiAgb3B0aW9uczogUHJvamVjdE9wdGlvbltdLFxuICBqc2lpTWFuaWZlc3Q6IGFueSxcbikge1xuICBjb25zdCBvcHRpb25GcW5zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG4gIGZvciAoY29uc3Qgb3B0aW9uIG9mIG9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9uLmZxbiAmJiBqc2lpTWFuaWZlc3QudHlwZXNbb3B0aW9uLmZxbl0pIHtcbiAgICAgIG9wdGlvbkZxbnNbb3B0aW9uLm5hbWVdID0gdG9KYXZhRnVsbFR5cGVOYW1lKFxuICAgICAgICBqc2lpTWFuaWZlc3QudHlwZXNbb3B0aW9uLmZxbl0sXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBvcHRpb25GcW5zO1xufVxuXG5mdW5jdGlvbiByZW5kZXJKYXZhT3B0aW9ucyhcbiAgaW5kZW50OiBudW1iZXIsXG4gIG9wdGlvbnNUeXBlTmFtZTogc3RyaW5nLFxuICBvcHRpb25GcW5zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICBpbml0T3B0aW9ucz86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4pIHtcbiAgY29uc3QgaW1wb3J0cyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICBpZiAoIWluaXRPcHRpb25zIHx8IE9iamVjdC5rZXlzKGluaXRPcHRpb25zKS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4geyByZW5kZXJlZE9wdGlvbnM6IFwiXCIsIGltcG9ydHMgfTsgLy8gbm8gb3B0aW9uc1xuICB9XG5cbiAgY29uc3QgbGluZXMgPSBbYCR7b3B0aW9uc1R5cGVOYW1lfS5idWlsZGVyKClgXTtcblxuICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoaW5pdE9wdGlvbnMpKSB7XG4gICAgY29uc3QgeyBqYXZhVmFsdWUsIGltcG9ydE5hbWUgfSA9IHRvSmF2YVZhbHVlKHZhbHVlLCBuYW1lLCBvcHRpb25GcW5zKTtcbiAgICBpZiAoaW1wb3J0TmFtZSkgaW1wb3J0cy5hZGQoaW1wb3J0TmFtZSk7XG4gICAgbGluZXMucHVzaChgLiR7dG9KYXZhUHJvcGVydHkobmFtZSl9KCR7amF2YVZhbHVlfSlgKTtcbiAgfVxuXG4gIGxpbmVzLnB1c2goXCIuYnVpbGQoKVwiKTtcblxuICBjb25zdCByZW5kZXJlZE9wdGlvbnMgPSBsaW5lcy5qb2luKGBcXG4ke1wiIFwiLnJlcGVhdCgoaW5kZW50ICsgMSkgKiA0KX1gKTtcbiAgcmV0dXJuIHsgcmVuZGVyZWRPcHRpb25zLCBpbXBvcnRzIH07XG59XG5cbmZ1bmN0aW9uIHRvSmF2YVByb3BlcnR5KHByb3A6IHN0cmluZykge1xuICByZXR1cm4gcHJvcDtcbn1cblxuZnVuY3Rpb24gdG9KYXZhVmFsdWUoXG4gIHZhbHVlOiBhbnksXG4gIG5hbWU6IHN0cmluZyxcbiAgb3B0aW9uRnFuczogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbikge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmIG9wdGlvbkZxbnNbbmFtZV0gIT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IHBhcnRzID0gb3B0aW9uRnFuc1tuYW1lXS5zcGxpdChcIi5cIik7XG4gICAgY29uc3QgYmFzZSA9IHBhcnRzW3BhcnRzLmxlbmd0aCAtIDFdO1xuICAgIGNvbnN0IGNob2ljZSA9IFN0cmluZyh2YWx1ZSkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC8tL2csIFwiX1wiKTtcbiAgICByZXR1cm4geyBqYXZhVmFsdWU6IGAke2Jhc2V9LiR7Y2hvaWNlfWAsIGltcG9ydE5hbWU6IG9wdGlvbkZxbnNbbmFtZV0gfTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4geyBqYXZhVmFsdWU6IEpTT04uc3RyaW5naWZ5KHZhbHVlKSB9O1xuICB9XG59XG5cbmZ1bmN0aW9uIHRvSmF2YUZ1bGxUeXBlTmFtZShqc2lpVHlwZTogYW55KSB7XG4gIHJldHVybiBbanNpaVR5cGUubmFtZXNwYWNlLCBqc2lpVHlwZS5uYW1lXS5maWx0ZXIoKHgpID0+IHgpLmpvaW4oXCIuXCIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SmF2YUltcG9ydChqc2lpVHlwZTogYW55LCBqc2lpTWFuaWZlc3Q6IGFueSkge1xuICBjb25zdCBwYWNrYWdlTmFtZSA9XG4gICAganNpaU1hbmlmZXN0Py5zdWJtb2R1bGVzPy5bYCR7anNpaVR5cGUuYXNzZW1ibHl9LiR7anNpaVR5cGU/Lm5hbWVzcGFjZX1gXVxuICAgICAgPy50YXJnZXRzPy5qYXZhPy5wYWNrYWdlIHx8XG4gICAgW2pzaWlNYW5pZmVzdC50YXJnZXRzLmphdmEucGFja2FnZSwganNpaVR5cGUubmFtZXNwYWNlXVxuICAgICAgLmZpbHRlcigoeCkgPT4geClcbiAgICAgIC5qb2luKFwiLlwiKTtcblxuICByZXR1cm4gYCR7cGFja2FnZU5hbWV9LiR7anNpaVR5cGUubmFtZX1gO1xufVxuIl19
@@ -100,7 +100,7 @@ const DEFAULT_ASSIST = {
100
100
  */
101
101
  class Biome extends component_1.Component {
102
102
  options;
103
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.javascript.Biome", version: "0.100.5" };
103
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.javascript.Biome", version: "0.100.7" };
104
104
  static of(project) {
105
105
  const isBiome = (c) => c instanceof Biome;
106
106
  return project.components.find(isBiome);