projen 0.58.10 → 0.58.13

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 (132) hide show
  1. package/.jsii +1684 -13
  2. package/docs/README.md +1 -0
  3. package/docs/api/API.md +383 -0
  4. package/docs/circleci.md +87 -0
  5. package/lib/awscdk/auto-discover.js +5 -5
  6. package/lib/awscdk/awscdk-app-java.js +1 -1
  7. package/lib/awscdk/awscdk-app-py.js +1 -1
  8. package/lib/awscdk/awscdk-app-ts.js +1 -1
  9. package/lib/awscdk/awscdk-construct.js +2 -2
  10. package/lib/awscdk/awscdk-deps-java.js +1 -1
  11. package/lib/awscdk/awscdk-deps-js.js +1 -1
  12. package/lib/awscdk/awscdk-deps.js +1 -1
  13. package/lib/awscdk/cdk-config.js +1 -1
  14. package/lib/awscdk/cdk-tasks.js +1 -1
  15. package/lib/awscdk/integration-test.js +1 -1
  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-docgen.js +1 -1
  23. package/lib/cdk/jsii-project.js +1 -1
  24. package/lib/cdk8s/auto-discover.js +2 -2
  25. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  26. package/lib/cdk8s/cdk8s-construct.js +1 -1
  27. package/lib/cdk8s/integration-test.js +1 -1
  28. package/lib/cdktf/cdktf-construct.js +1 -1
  29. package/lib/circleci/circleci.d.ts +132 -0
  30. package/lib/circleci/circleci.js +118 -0
  31. package/lib/circleci/constant.d.ts +5 -0
  32. package/lib/circleci/constant.js +10 -0
  33. package/lib/circleci/index.d.ts +3 -0
  34. package/lib/circleci/index.js +16 -0
  35. package/lib/circleci/model.d.ts +240 -0
  36. package/lib/circleci/model.js +37 -0
  37. package/lib/component.js +1 -1
  38. package/lib/dependencies.js +1 -1
  39. package/lib/dev-env.js +1 -1
  40. package/lib/docker-compose.js +2 -2
  41. package/lib/file.js +1 -1
  42. package/lib/gitattributes.js +1 -1
  43. package/lib/github/auto-approve.js +1 -1
  44. package/lib/github/auto-merge.js +1 -1
  45. package/lib/github/dependabot.js +1 -1
  46. package/lib/github/github-credentials.js +1 -1
  47. package/lib/github/github-project.js +1 -1
  48. package/lib/github/github.js +1 -1
  49. package/lib/github/mergify.js +1 -1
  50. package/lib/github/pr-template.js +1 -1
  51. package/lib/github/pull-request-lint.js +1 -1
  52. package/lib/github/stale.js +1 -1
  53. package/lib/github/task-workflow.js +1 -1
  54. package/lib/github/workflows.js +1 -1
  55. package/lib/gitlab/configuration.js +1 -1
  56. package/lib/gitlab/gitlab-configuration.js +1 -1
  57. package/lib/gitlab/nested-configuration.js +1 -1
  58. package/lib/gitpod.js +1 -1
  59. package/lib/ignore-file.js +1 -1
  60. package/lib/index.d.ts +1 -0
  61. package/lib/index.js +2 -1
  62. package/lib/ini.js +1 -1
  63. package/lib/java/java-project.js +1 -1
  64. package/lib/java/junit.js +1 -1
  65. package/lib/java/maven-compile.js +1 -1
  66. package/lib/java/maven-packaging.js +1 -1
  67. package/lib/java/maven-sample.js +1 -1
  68. package/lib/java/pom.js +1 -1
  69. package/lib/java/projenrc.js +1 -1
  70. package/lib/javascript/bundler.js +1 -1
  71. package/lib/javascript/eslint.js +1 -1
  72. package/lib/javascript/jest.js +1 -1
  73. package/lib/javascript/node-package.js +1 -1
  74. package/lib/javascript/node-project.js +1 -1
  75. package/lib/javascript/npm-config.js +1 -1
  76. package/lib/javascript/prettier.js +1 -1
  77. package/lib/javascript/projenrc.js +1 -1
  78. package/lib/javascript/typescript-config.js +1 -1
  79. package/lib/javascript/upgrade-dependencies.js +2 -2
  80. package/lib/json.js +1 -1
  81. package/lib/license.js +1 -1
  82. package/lib/logger.js +1 -1
  83. package/lib/makefile.js +1 -1
  84. package/lib/object-file.js +1 -1
  85. package/lib/project-build.js +1 -1
  86. package/lib/project.js +1 -1
  87. package/lib/projects.js +1 -1
  88. package/lib/projenrc-json.js +1 -1
  89. package/lib/python/pip.js +1 -1
  90. package/lib/python/poetry.js +2 -2
  91. package/lib/python/projenrc.js +1 -1
  92. package/lib/python/pytest-sample.js +1 -1
  93. package/lib/python/pytest.js +1 -1
  94. package/lib/python/python-project.js +1 -1
  95. package/lib/python/python-sample.js +1 -1
  96. package/lib/python/requirements-file.js +1 -1
  97. package/lib/python/setuppy.js +1 -1
  98. package/lib/python/setuptools.js +1 -1
  99. package/lib/python/venv.js +1 -1
  100. package/lib/readme.js +1 -1
  101. package/lib/release/publisher.js +1 -1
  102. package/lib/release/release-trigger.js +1 -1
  103. package/lib/release/release.js +1 -1
  104. package/lib/renovatebot.js +1 -1
  105. package/lib/sample-file.js +2 -2
  106. package/lib/semver.js +1 -1
  107. package/lib/source-code.js +1 -1
  108. package/lib/task-runtime.js +1 -1
  109. package/lib/task.js +1 -1
  110. package/lib/tasks.js +1 -1
  111. package/lib/testing.js +1 -1
  112. package/lib/textfile.js +1 -1
  113. package/lib/toml.js +1 -1
  114. package/lib/typescript/projenrc.js +1 -1
  115. package/lib/typescript/typescript-typedoc.js +1 -1
  116. package/lib/typescript/typescript.js +3 -3
  117. package/lib/util.d.ts +1 -0
  118. package/lib/util.js +25 -2
  119. package/lib/version.js +1 -1
  120. package/lib/vscode/devcontainer.js +1 -1
  121. package/lib/vscode/launch-config.js +1 -1
  122. package/lib/vscode/vscode.js +1 -1
  123. package/lib/web/next.js +3 -3
  124. package/lib/web/postcss.js +1 -1
  125. package/lib/web/react.js +4 -4
  126. package/lib/web/tailwind.js +1 -1
  127. package/lib/xmlfile.js +1 -1
  128. package/lib/yaml.js +1 -1
  129. package/node_modules/xmlbuilder2/node_modules/@types/node/README.md +1 -1
  130. package/node_modules/xmlbuilder2/node_modules/@types/node/package.json +2 -2
  131. package/node_modules/xmlbuilder2/node_modules/@types/node/url.d.ts +5 -1
  132. package/package.json +2 -2
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.isObjectContainingFieldExactly = exports.Circleci = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const component_1 = require("../component");
7
+ const util_1 = require("../util");
8
+ const yaml_1 = require("../yaml");
9
+ /**
10
+ * Circleci Class to manage `.circleci/config.yml`.
11
+ * Check projen's docs for more information.
12
+ *
13
+ * @see https://circleci.com/docs/2.0/configuration-reference/
14
+ */
15
+ class Circleci extends component_1.Component {
16
+ constructor(project, options = {}) {
17
+ super(project);
18
+ /**
19
+ * reduce objects with `identifier` field for WorkflowJobs.
20
+ * A workflow job can contain `orbParameter` which are passed to orbs.
21
+ * This map is directly added as `Record<string,any>` to job.
22
+ * So we gonna add those after the default field of WorkflowJob.
23
+ * @see https://circleci.com/developer/orbs/orb/circleci/node#usage-install_nodejs
24
+ * @param jobs
25
+ */
26
+ this.renderJobs = (jobs = []) => {
27
+ let result = [];
28
+ for (const job of jobs ?? []) {
29
+ const { identifier, orbParameters, ...reduced } = job;
30
+ if (exports.isObjectContainingFieldExactly(job, "identifier")) {
31
+ result = [...result, identifier];
32
+ }
33
+ else {
34
+ result = [
35
+ ...result,
36
+ { [identifier]: { ...reduced, ...orbParameters } },
37
+ ];
38
+ }
39
+ }
40
+ return result;
41
+ };
42
+ /**
43
+ * Snake case for listed keys. There are too many exceptions needed to do it recursive without a whitelist.
44
+ * This list needs to be updated once we add field with snake case like `aws_auth`.
45
+ * @param input
46
+ */
47
+ this.snakeCase = (input) => {
48
+ const snakeCaseKeyWords = [
49
+ "awsAuth",
50
+ "workingDirectory",
51
+ "resourceClass",
52
+ "dockerLayerCaching",
53
+ "noOutputTimeout",
54
+ ];
55
+ return util_1.snakeCaseKeys(input, true, snakeCaseKeyWords);
56
+ };
57
+ this.options = options;
58
+ this.orbs = options.orbs ?? {};
59
+ this.workflows = options.workflows ?? [];
60
+ this.jobs = options.jobs ?? [];
61
+ this.file = new yaml_1.YamlFile(project, ".circleci/config.yml", {
62
+ obj: () => this.renderCircleCi(),
63
+ });
64
+ }
65
+ /**
66
+ * function to prepare the rendering of the yaml file.
67
+ * Objects with dynamic keys like workflows and jobs required the field `identifier` to be set.
68
+ * Those object will be reduced by `identifier` field before rendering
69
+ * @private
70
+ */
71
+ renderCircleCi() {
72
+ // render dynamic keys for workflow
73
+ const workflowRecords = {};
74
+ for (const workflow of this.workflows) {
75
+ const { identifier, ...reduced } = workflow;
76
+ reduced.jobs = this.renderJobs(workflow.jobs);
77
+ workflowRecords[identifier] = this.snakeCase(reduced);
78
+ }
79
+ // render dynamic keys for jobs
80
+ const jobRecords = {};
81
+ for (const job of this.jobs) {
82
+ const { identifier, ...reduced } = job;
83
+ jobRecords[identifier] = this.snakeCase(reduced);
84
+ }
85
+ return {
86
+ version: this.options.version || 2.1,
87
+ setup: this.options.setup,
88
+ orbs: this.orbs,
89
+ jobs: Object.keys(jobRecords).length > 0 ? jobRecords : undefined,
90
+ workflows: workflowRecords,
91
+ };
92
+ }
93
+ /**
94
+ * add new workflow to existing pipeline
95
+ * @param workflow
96
+ */
97
+ addWorkflow(workflow) {
98
+ this.workflows = [...this.workflows, workflow];
99
+ }
100
+ /**
101
+ * Add a Circleci Orb to pipeline. Will throw error if the orb already exists
102
+ * @param name
103
+ * @param orb
104
+ */
105
+ addOrb(name, orb) {
106
+ if (this.orbs[name] !== undefined) {
107
+ throw new Error(`Circleci Config already contains an orb named ${name}.`);
108
+ }
109
+ this.orbs[name] = orb;
110
+ }
111
+ }
112
+ exports.Circleci = Circleci;
113
+ _a = JSII_RTTI_SYMBOL_1;
114
+ Circleci[_a] = { fqn: "projen.circleci.Circleci", version: "0.58.13" };
115
+ exports.isObjectContainingFieldExactly = (obj, field) => {
116
+ return Object.keys(obj).length == 1 && Object.keys(obj).includes(field);
117
+ };
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lyY2xlY2kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2lyY2xlY2kvY2lyY2xlY2kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0Q0FBeUM7QUFFekMsa0NBQXdDO0FBQ3hDLGtDQUFtQztBQWlFbkM7Ozs7O0dBS0c7QUFDSCxNQUFhLFFBQVMsU0FBUSxxQkFBUztJQTBCckMsWUFBWSxPQUFnQixFQUFFLFVBQXlCLEVBQUU7UUFDdkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBaURqQjs7Ozs7OztXQU9HO1FBQ0ssZUFBVSxHQUFHLENBQUMsT0FBc0IsRUFBRSxFQUFPLEVBQUU7WUFDckQsSUFBSSxNQUFNLEdBQVEsRUFBRSxDQUFDO1lBQ3JCLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBRTtnQkFDNUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsR0FBRyxPQUFPLEVBQUUsR0FBRyxHQUFHLENBQUM7Z0JBQ3RELElBQUksc0NBQThCLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxFQUFFO29CQUNyRCxNQUFNLEdBQUcsQ0FBQyxHQUFHLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztpQkFDbEM7cUJBQU07b0JBQ0wsTUFBTSxHQUFHO3dCQUNQLEdBQUcsTUFBTTt3QkFDVCxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxHQUFHLE9BQU8sRUFBRSxHQUFHLGFBQWEsRUFBRSxFQUFFO3FCQUNuRCxDQUFDO2lCQUNIO2FBQ0Y7WUFDRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUM7UUFjRjs7OztXQUlHO1FBQ0ssY0FBUyxHQUFHLENBQUMsS0FBVSxFQUFPLEVBQUU7WUFDdEMsTUFBTSxpQkFBaUIsR0FBRztnQkFDeEIsU0FBUztnQkFDVCxrQkFBa0I7Z0JBQ2xCLGVBQWU7Z0JBQ2Ysb0JBQW9CO2dCQUNwQixpQkFBaUI7YUFDbEIsQ0FBQztZQUNGLE9B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b25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IHNuYWtlQ2FzZUtleXMgfSBmcm9tIFwiLi4vdXRpbFwiO1xuaW1wb3J0IHsgWWFtbEZpbGUgfSBmcm9tIFwiLi4veWFtbFwiO1xuaW1wb3J0IHsgV29ya2Zsb3dKb2IsIFdvcmtmbG93LCBKb2IgfSBmcm9tIFwiLi9tb2RlbFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNsYXNzIHtAbGluayBDaXJjbGVjaX1cbiAqXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlL1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENpcmNsZUNpUHJvcHMge1xuICAvKipcbiAgICogQ29udGFpbnMgYSBtYXAgb2YgQ2lyY2xDaSBPcmJzXG4gICAqIGBgYGpzb25cbiAgICogb3Jiczoge1xuICAgKiAgbm9kZTogXCJjaXJjbGVjaS9ub2RlQDUuMC4xXCJcbiAgICogIHNsYWNrOiBcImNpcmNsZWNpL3NsYWNrQDQuOC4zXCJcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIHJlYWRvbmx5IG9yYnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogcGlwZWxpbmUgdmVyc2lvblxuICAgKlxuICAgKiBAZGVmYXVsdCAyLjFcbiAgICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIExpc3Qgb2YgV29ya2Zsb3dzIG9mIHBpcGVsaW5lLCBlLmcuXG4gICAqIGBgYGpzb25cbiAgICogd29ya2Zsb3dzOiB7XG4gICAqICAge1xuICAgKiAgICAgaWRlbnRpZmllcjogXCJidWlsZFwiLFxuICAgKiAgICAgICBqb2JzOiBbe1xuICAgKiAgICAgICAgICBpZGVudGlmaWVyOiBcIm5vZGUvaW5zdGFsbFwiLFxuICAgKiAgICAgICAgICBjb250ZXh0OiBbXCJucG1cIl0sXG4gICAqICAgICAgIH1dXG4gICAqICAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyN3b3JrZmxvd3NcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93cz86IFdvcmtmbG93W107XG4gIC8qKlxuICAgKiBMaXN0IG9mIEpvYnMgdG8gY3JlYXRlIHVuaXF1ZSBzdGVwcyBwZXIgcGlwZWxpbmUsIGUuZy5cbiAgICogYGBganNvblxuICAgKiBqb2JzOiBbe1xuICAgKiAgaWRlbnRpZmllcjogXCJjb21waWxlXCIsXG4gICAqICBkb2NrZXI6IHsgaW1hZ2U6IFwiZ29sYW5nOmFscGluZVwiIH1cbiAgICogIHN0ZXBzOiBbXCJjaGVja291dFwiLCBydW46IHtjb21tYW5kOiBcImdvIGJ1aWxkIC5cIn1dXG4gICAqIH1dXG4gICAqIGBgYFxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNqb2JzXG4gICAqL1xuICByZWFkb25seSBqb2JzPzogSm9iW107XG4gIC8qKlxuICAgKiBUaGUgc2V0dXAgZmllbGQgZW5hYmxlcyB5b3UgdG8gY29uZGl0aW9uYWxseSB0cmlnZ2VyIGNvbmZpZ3VyYXRpb25zIGZyb20gb3V0c2lkZVxuICAgKiB0aGUgcHJpbWFyeSAuY2lyY2xlY2kgcGFyZW50IGRpcmVjdG9yeSwgdXBkYXRlIHBpcGVsaW5lIHBhcmFtZXRlcnMsIG9yIGdlbmVyYXRlIGN1c3RvbWl6ZWQgY29uZmlndXJhdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9jaXJjbGVjaS5jb20vZG9jcy8yLjAvY29uZmlndXJhdGlvbi1yZWZlcmVuY2UvI3NldHVwXG4gICAqL1xuICByZWFkb25seSBzZXR1cD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ2lyY2xlY2kgQ2xhc3MgdG8gbWFuYWdlIGAuY2lyY2xlY2kvY29uZmlnLnltbGAuXG4gKiBDaGVjayBwcm9qZW4ncyBkb2NzIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9jaXJjbGVjaS5jb20vZG9jcy8yLjAvY29uZmlndXJhdGlvbi1yZWZlcmVuY2UvXG4gKi9cbmV4cG9ydCBjbGFzcyBDaXJjbGVjaSBleHRlbmRzIENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgeWFtbCBmaWxlIGZvciB0aGUgQ2lyY2xlY2kgcGlwZWxpbmVcbiAgICogKi9cbiAgcHVibGljIHJlYWRvbmx5IGZpbGU6IFlhbWxGaWxlO1xuICAvKipcbiAgICogaW50ZXJuYWwgY29weSBvZiBvcHRpb25zIHRvIHNoYXJlIG9wdGlvbnMgYmV0d2VlbiBmdW5jdGlvbnNcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgb3B0aW9uczogQ2lyY2xlQ2lQcm9wcztcbiAgLyoqXG4gICAqIGludGVybmFsIG1hcCBvZiBvcmJzXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IG9yYnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBpbnRlcm5hbCBsaXN0IG9mIHdvcmtmbG93c1xuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSB3b3JrZmxvd3M6IFdvcmtmbG93W107XG4gIC8qKlxuICAgKiBpbnRlcm5hbCBsaXN0IG9mIGpvYnNcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgam9iczogSm9iW107XG5cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogQ2lyY2xlQ2lQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB0aGlzLm9yYnMgPSBvcHRpb25zLm9yYnMgPz8ge307XG4gICAgdGhpcy53b3JrZmxvd3MgPSBvcHRpb25zLndvcmtmbG93cyA/PyBbXTtcbiAgICB0aGlzLmpvYnMgPSBvcHRpb25zLmpvYnMgPz8gW107XG4gICAgdGhpcy5maWxlID0gbmV3IFlhbWxGaWxlKHByb2plY3QsIFwiLmNpcmNsZWNpL2NvbmZpZy55bWxcIiwge1xuICAgICAgb2JqOiAoKSA9PiB0aGlzLnJlbmRlckNpcmNsZUNpKCksXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogZnVuY3Rpb24gdG8gcHJlcGFyZSB0aGUgcmVuZGVyaW5nIG9mIHRoZSB5YW1sIGZpbGUuXG4gICAqIE9iamVjdHMgd2l0aCBkeW5hbWljIGtleXMgbGlrZSB3b3JrZmxvd3MgYW5kIGpvYnMgcmVxdWlyZWQgdGhlIGZpZWxkIGBpZGVudGlmaWVyYCB0byBiZSBzZXQuXG4gICAqIFRob3NlIG9iamVjdCB3aWxsIGJlIHJlZHVjZWQgYnkgYGlkZW50aWZpZXJgIGZpZWxkIGJlZm9yZSByZW5kZXJpbmdcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgcmVuZGVyQ2lyY2xlQ2koKSB7XG4gICAgLy8gcmVuZGVyIGR5bmFtaWMga2V5cyBmb3Igd29ya2Zsb3dcbiAgICBjb25zdCB3b3JrZmxvd1JlY29yZHM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IHdvcmtmbG93IG9mIHRoaXMud29ya2Zsb3dzKSB7XG4gICAgICBjb25zdCB7IGlkZW50aWZpZXIsIC4uLnJlZHVjZWQgfSA9IHdvcmtmbG93O1xuICAgICAgcmVkdWNlZC5qb2JzID0gdGhpcy5yZW5kZXJKb2JzKHdvcmtmbG93LmpvYnMpO1xuICAgICAgd29ya2Zsb3dSZWNvcmRzW2lkZW50aWZpZXJdID0gdGhpcy5zbmFrZUNhc2UocmVkdWNlZCk7XG4gICAgfVxuXG4gICAgLy8gcmVuZGVyIGR5bmFtaWMga2V5cyBmb3Igam9ic1xuICAgIGNvbnN0IGpvYlJlY29yZHM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IGpvYiBvZiB0aGlzLmpvYnMpIHtcbiAgICAgIGNvbnN0IHsgaWRlbnRpZmllciwgLi4ucmVkdWNlZCB9ID0gam9iO1xuICAgICAgam9iUmVjb3Jkc1tpZGVudGlmaWVyXSA9IHRoaXMuc25ha2VDYXNlKHJlZHVjZWQpO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICB2ZXJzaW9uOiB0aGlzLm9wdGlvbnMudmVyc2lvbiB8fCAyLjEsXG4gICAgICBzZXR1cDogdGhpcy5vcHRpb25zLnNldHVwLFxuICAgICAgb3JiczogdGhpcy5vcmJzLFxuICAgICAgam9iczogT2JqZWN0LmtleXMoam9iUmVjb3JkcykubGVuZ3RoID4gMCA/IGpvYlJlY29yZHMgOiB1bmRlZmluZWQsXG4gICAgICB3b3JrZmxvd3M6IHdvcmtmbG93UmVjb3JkcyxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIGFkZCBuZXcgd29ya2Zsb3cgdG8gZXhpc3RpbmcgcGlwZWxpbmVcbiAgICogQHBhcmFtIHdvcmtmbG93XG4gICAqL1xuICBwdWJsaWMgYWRkV29ya2Zsb3cod29ya2Zsb3c6IFdvcmtmbG93KSB7XG4gICAgdGhpcy53b3JrZmxvd3MgPSBbLi4udGhpcy53b3JrZmxvd3MsIHdvcmtmbG93XTtcbiAgfVxuXG4gIC8qKlxuICAgKiByZWR1Y2Ugb2JqZWN0cyB3aXRoIGBpZGVudGlmaWVyYCBmaWVsZCBmb3IgV29ya2Zsb3dKb2JzLlxuICAgKiBBIHdvcmtmbG93IGpvYiBjYW4gY29udGFpbiBgb3JiUGFyYW1ldGVyYCB3aGljaCBhcmUgcGFzc2VkIHRvIG9yYnMuXG4gICAqIFRoaXMgbWFwIGlzIGRpcmVjdGx5IGFkZGVkIGFzIGBSZWNvcmQ8c3RyaW5nLGFueT5gIHRvIGpvYi5cbiAgICogU28gd2UgZ29ubmEgYWRkIHRob3NlIGFmdGVyIHRoZSBkZWZhdWx0IGZpZWxkIG9mIFdvcmtmbG93Sm9iLlxuICAgKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RldmVsb3Blci9vcmJzL29yYi9jaXJjbGVjaS9ub2RlI3VzYWdlLWluc3RhbGxfbm9kZWpzXG4gICAqIEBwYXJhbSBqb2JzXG4gICAqL1xuICBwcml2YXRlIHJlbmRlckpvYnMgPSAoam9iczogV29ya2Zsb3dKb2JbXSA9IFtdKTogYW55ID0+IHtcbiAgICBsZXQgcmVzdWx0OiBhbnkgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGpvYiBvZiBqb2JzID8/IFtdKSB7XG4gICAgICBjb25zdCB7IGlkZW50aWZpZXIsIG9yYlBhcmFtZXRlcnMsIC4uLnJlZHVjZWQgfSA9IGpvYjtcbiAgICAgIGlmIChpc09iamVjdENvbnRhaW5pbmdGaWVsZEV4YWN0bHkoam9iLCBcImlkZW50aWZpZXJcIikpIHtcbiAgICAgICAgcmVzdWx0ID0gWy4uLnJlc3VsdCwgaWRlbnRpZmllcl07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSBbXG4gICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgIHsgW2lkZW50aWZpZXJdOiB7IC4uLnJlZHVjZWQsIC4uLm9yYlBhcmFtZXRlcnMgfSB9LFxuICAgICAgICBdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xuXG4gIC8qKlxuICAgKiBBZGQgYSBDaXJjbGVjaSBPcmIgdG8gcGlwZWxpbmUuIFdpbGwgdGhyb3cgZXJyb3IgaWYgdGhlIG9yYiBhbHJlYWR5IGV4aXN0c1xuICAgKiBAcGFyYW0gbmFtZVxuICAgKiBAcGFyYW0gb3JiXG4gICAqL1xuICBwdWJsaWMgYWRkT3JiKG5hbWU6IHN0cmluZywgb3JiOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5vcmJzW25hbWVdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2lyY2xlY2kgQ29uZmlnIGFscmVhZHkgY29udGFpbnMgYW4gb3JiIG5hbWVkICR7bmFtZX0uYCk7XG4gICAgfVxuICAgIHRoaXMub3Jic1tuYW1lXSA9IG9yYjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTbmFrZSBjYXNlIGZvciBsaXN0ZWQga2V5cy4gVGhlcmUgYXJlIHRvbyBtYW55IGV4Y2VwdGlvbnMgbmVlZGVkIHRvIGRvIGl0IHJlY3Vyc2l2ZSB3aXRob3V0IGEgd2hpdGVsaXN0LlxuICAgKiBUaGlzIGxpc3QgbmVlZHMgdG8gYmUgdXBkYXRlZCBvbmNlIHdlIGFkZCBmaWVsZCB3aXRoIHNuYWtlIGNhc2UgbGlrZSBgYXdzX2F1dGhgLlxuICAgKiBAcGFyYW0gaW5wdXRcbiAgICovXG4gIHByaXZhdGUgc25ha2VDYXNlID0gKGlucHV0OiBhbnkpOiBhbnkgPT4ge1xuICAgIGNvbnN0IHNuYWtlQ2FzZUtleVdvcmRzID0gW1xuICAgICAgXCJhd3NBdXRoXCIsXG4gICAgICBcIndvcmtpbmdEaXJlY3RvcnlcIixcbiAgICAgIFwicmVzb3VyY2VDbGFzc1wiLFxuICAgICAgXCJkb2NrZXJMYXllckNhY2hpbmdcIixcbiAgICAgIFwibm9PdXRwdXRUaW1lb3V0XCIsXG4gICAgXTtcbiAgICByZXR1cm4gc25ha2VDYXNlS2V5cyhpbnB1dCwgdHJ1ZSwgc25ha2VDYXNlS2V5V29yZHMpO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgaXNPYmplY3RDb250YWluaW5nRmllbGRFeGFjdGx5ID0gKFxuICBvYmo6IGFueSxcbiAgZmllbGQ6IHN0cmluZ1xuKTogYm9vbGVhbiA9PiB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhvYmopLmxlbmd0aCA9PSAxICYmIE9iamVjdC5rZXlzKG9iaikuaW5jbHVkZXMoZmllbGQpO1xufTtcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import { Filter } from "./model";
2
+ /**
3
+ * constant to create a filter to make a job or workflow only run on master
4
+ */
5
+ export declare const FilterMainBranchOnly: Filter;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FilterMainBranchOnly = void 0;
4
+ /**
5
+ * constant to create a filter to make a job or workflow only run on master
6
+ */
7
+ exports.FilterMainBranchOnly = {
8
+ branches: { only: ["master", "main"] },
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2lyY2xlY2kvY29uc3RhbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUE7O0dBRUc7QUFDVSxRQUFBLG9CQUFvQixHQUFXO0lBQzFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRTtDQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSBcIi4vbW9kZWxcIjtcblxuLyoqXG4gKiBjb25zdGFudCB0byBjcmVhdGUgYSBmaWx0ZXIgdG8gbWFrZSBhIGpvYiBvciB3b3JrZmxvdyBvbmx5IHJ1biBvbiBtYXN0ZXJcbiAqL1xuZXhwb3J0IGNvbnN0IEZpbHRlck1haW5CcmFuY2hPbmx5OiBGaWx0ZXIgPSB7XG4gIGJyYW5jaGVzOiB7IG9ubHk6IFtcIm1hc3RlclwiLCBcIm1haW5cIl0gfSxcbn07XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from "./circleci";
2
+ export * from "./constant";
3
+ export * from "./model";
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./circleci"), exports);
14
+ __exportStar(require("./constant"), exports);
15
+ __exportStar(require("./model"), exports);
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2lyY2xlY2kvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQTJCO0FBQzNCLDZDQUEyQjtBQUMzQiwwQ0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9jaXJjbGVjaVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uc3RhbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21vZGVsXCI7XG4iXX0=
@@ -0,0 +1,240 @@
1
+ /**
2
+ * Used to represent objects with a dynamic key.
3
+ * Dynamic are marked with `<>` in configuration reference like '<workflow_name>' and '<job_name>'
4
+ * This field is required for objects with dynamic keys.
5
+ */
6
+ interface INamed {
7
+ /** name of dynamic key **/
8
+ readonly identifier: string;
9
+ }
10
+ /**
11
+ * Used for orchestrating all jobs. Each workflow consists of the workflow name as a key and a map as a value.
12
+ * A name should be unique within the current config.yml.
13
+ * The top-level keys for the Workflows configuration are version and jobs.
14
+ * @see https://circleci.com/docs/2.0/configuration-reference/#workflows
15
+ */
16
+ export interface Workflow extends INamed {
17
+ readonly jobs?: WorkflowJob[];
18
+ readonly triggers?: Triggers[];
19
+ /** when is too dynamic to be casted to interfaces. Check Docu as reference
20
+ * @see https://circleci.com/docs/2.0/configuration-reference/#logic-statement-examples
21
+ */
22
+ readonly when?: any;
23
+ }
24
+ /**
25
+ * A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed
26
+ * @see https://circleci.com/docs/2.0/configuration-reference/#type
27
+ */
28
+ export declare enum JobType {
29
+ APPROVAL = "approval"
30
+ }
31
+ /**
32
+ * The resource_class feature allows configuring CPU and RAM resources for each job.
33
+ * Different resource classes are available for different executors, as described in the tables below.
34
+ * @see https://circleci.com/docs/2.0/configuration-reference/#resourceclass
35
+ */
36
+ export declare enum ResourceClass {
37
+ SMALL = "small",
38
+ MEDIUM = "medium",
39
+ MEDIUM_PLUS = "medium+",
40
+ LARGE_X = "xlarge",
41
+ LARGE_2X = "2xlarge",
42
+ LARGE_2X_PLUS = "2xlarge+"
43
+ }
44
+ /**
45
+ * Specify when to enable or disable the step.
46
+ * @see https://circleci.com/docs/2.0/configuration-reference/#steps
47
+ */
48
+ export declare enum JobWhen {
49
+ ALWAYS = "always",
50
+ ON_SUCCESS = "on_success",
51
+ ON_FAIL = "on_fail"
52
+ }
53
+ /**
54
+ * A Workflow is comprised of one or more uniquely named jobs. Jobs are specified in the jobs map,
55
+ * see Sample 2.0 config.yml for two examples of a job map.
56
+ * The name of the job is the key in the map, and the value is a map describing the job.
57
+ * @see https://circleci.com/docs/2.0/configuration-reference/#jobs
58
+ */
59
+ export interface Job extends INamed {
60
+ }
61
+ /**
62
+ * A Job is part of Workflow. A Job can be created with {@link Job} or it can be provided by the orb
63
+ * @see https://circleci.com/docs/2.0/configuration-reference/#jobs-in-workflow
64
+ */
65
+ export interface WorkflowJob extends INamed {
66
+ /** A list of jobs that must succeed for the job to start. */
67
+ readonly requires?: string[];
68
+ /** A replacement for the job name. Useful when calling a job multiple times */
69
+ readonly name?: string;
70
+ /** The name of the context(s). The initial default name is org-global. Each context name must be unique. */
71
+ readonly context?: string[];
72
+ /** A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed. */
73
+ readonly type?: JobType;
74
+ /** Job Filters can have the key branches or tags */
75
+ readonly filter?: Filter;
76
+ readonly matrix?: Matrix;
77
+ /** Parameters for making a job explicitly configurable in a workflow. */
78
+ readonly parameters?: Record<string, string | number | boolean>;
79
+ /** Parameters passed to job when referencing a job from orb */
80
+ readonly orbParameters?: Record<string, string | number | boolean>;
81
+ }
82
+ /**
83
+ * The matrix stanza allows you to run a parameterized job multiple times with different arguments.
84
+ * @see https://circleci.com/docs/2.0/configuration-reference/#matrix-requires-version-21
85
+ */
86
+ export interface Matrix {
87
+ /** A map of parameter names to every value the job should be called with */
88
+ readonly parameters?: Record<string, string[] | number[]>;
89
+ /** An alias for the matrix, usable from another job’s requires stanza. Defaults to the name of the job being executed */
90
+ readonly alias?: string;
91
+ }
92
+ /**
93
+ * Specifies which triggers will cause this workflow to be executed.
94
+ * Default behavior is to trigger the workflow when pushing to a branch.
95
+ * @see https://circleci.com/docs/2.0/configuration-reference/#triggers
96
+ */
97
+ export interface Triggers {
98
+ readonly schedule?: Schedule;
99
+ }
100
+ /**
101
+ * A workflow may have a schedule indicating it runs at a certain time.
102
+ * @see https://circleci.com/docs/2.0/configuration-reference/#schedule
103
+ */
104
+ export interface Schedule {
105
+ /** The cron key is defined using POSIX crontab syntax. */
106
+ readonly cron?: string;
107
+ readonly filters: Filter;
108
+ }
109
+ /**
110
+ * The branches key controls whether the current branch should have a schedule trigger created for it,
111
+ * where current branch is the branch containing the config.yml file with the trigger stanza.
112
+ * That is, a push on the main branch will only schedule a workflow for the main branch.
113
+ *
114
+ * Branches can have the keys only and ignore which either map to a single string naming a branch.
115
+ * You may also use regular expressions to match against branches by enclosing them with /’s, or map to a list of such strings.
116
+ * Regular expressions must match the entire string.
117
+ *
118
+ * Any branches that match only will run the job.
119
+ * Any branches that match ignore will not run the job.
120
+ * If neither only nor ignore are specified then all branches will run the job.
121
+ * If both only and ignore are specified the only is considered before ignore.
122
+ * @see https://circleci.com/docs/2.0/configuration-reference/#filters
123
+ */
124
+ export interface Filter {
125
+ readonly branches?: FilterConfig;
126
+ readonly tags?: FilterConfig;
127
+ }
128
+ /**
129
+ * set an inclusive or exclusive filter
130
+ * @see https://circleci.com/docs/2.0/configuration-reference/#filters
131
+ */
132
+ export interface FilterConfig {
133
+ /** Either a single branch specifier, or a list of branch specifiers */
134
+ readonly only?: string[];
135
+ /** Either a single branch specifier, or a list of branch specifiers */
136
+ readonly ignore?: string[];
137
+ }
138
+ /**
139
+ * Each job consists of the job’s name as a key and a map as a value. A name should be case insensitive unique within a current jobs list.
140
+ * @see https://circleci.com/docs/2.0/configuration-reference/#job_name
141
+ */
142
+ export interface Job {
143
+ readonly docker?: Docker[];
144
+ readonly machine?: Machine;
145
+ readonly macos?: Macos;
146
+ /** Shell to use for execution command in all steps. Can be overridden by shell in each step */
147
+ readonly shell?: string;
148
+ /** Parameters for making a job explicitly configurable in a workflow. */
149
+ readonly parameters?: Record<string, string>;
150
+ /** no type support here, for syntax {@see https://circleci.com/docs/2.0/configuration-reference/#steps} */
151
+ readonly steps?: any[];
152
+ /** In which directory to run the steps. Will be interpreted as an absolute path. Default: `~/project` */
153
+ readonly workingDirectory?: string;
154
+ /** Number of parallel instances of this job to run (default: 1) */
155
+ readonly parallelism?: number;
156
+ /** A map of environment variable names and values. */
157
+ readonly environment?: Record<string, string | number | boolean>;
158
+ /** {@link ResourceClass} */
159
+ readonly resourceClass?: ResourceClass | string;
160
+ }
161
+ /**
162
+ * Options for docker executor
163
+ * @see https://circleci.com/docs/2.0/configuration-reference/#docker
164
+ */
165
+ export interface Docker {
166
+ /** The name of a custom docker image to use */
167
+ readonly image: string;
168
+ /** The name the container is reachable by. By default, container services are accessible through localhost */
169
+ readonly name?: string;
170
+ /** The command used as executable when launching the container */
171
+ readonly entrypoint?: string[];
172
+ /** The command used as pid 1 (or args for entrypoint) when launching the container */
173
+ readonly command?: string[];
174
+ /** Which user to run commands as within the Docker container */
175
+ readonly user?: string;
176
+ /** A map of environment variable names and values */
177
+ readonly environment?: Record<string, string | number | boolean>;
178
+ /** Authentication for registries using standard docker login credentials */
179
+ readonly auth?: Record<string, string>;
180
+ /** Authentication for AWS Elastic Container Registry (ECR) */
181
+ readonly awsAuth?: Record<string, string>;
182
+ }
183
+ export interface Machine {
184
+ /**
185
+ * The VM image to use.
186
+ * @see https://circleci.com/docs/2.0/configuration-reference/#available-machine-images
187
+ */
188
+ readonly image: string;
189
+ /** enable docker layer caching
190
+ * @see https://circleci.com/docs/2.0/configuration-reference/#available-machine-images
191
+ */
192
+ readonly dockerLayerCaching?: string;
193
+ }
194
+ /**
195
+ * CircleCI supports running jobs on macOS, to allow you to build, test,
196
+ * and deploy apps for macOS, iOS, tvOS and watchOS. To run a job in a macOS virtual machine,
197
+ * you must add the macos key to the top-level configuration for the job and specify
198
+ * the version of Xcode you would like to use.
199
+ * @see https://circleci.com/docs/2.0/configuration-reference/#macos
200
+ */
201
+ export interface Macos {
202
+ /** The version of Xcode that is installed on the virtual machine */
203
+ readonly xcode: string;
204
+ }
205
+ /**
206
+ * Execution steps for Job
207
+ * @see https://circleci.com/docs/2.0/configuration-reference/#steps
208
+ */
209
+ export interface StepRun {
210
+ readonly run?: Run;
211
+ }
212
+ /**
213
+ * Used for invoking all command-line programs, taking either a map of configuration values,
214
+ * or, when called in its short-form, a string that will be used as both the command and name.
215
+ * Run commands are executed using non-login shells by default,
216
+ * so you must explicitly source any dotfiles as part of the command.
217
+ *
218
+ * Not used because type incompatible types in steps array
219
+ *
220
+ * @see https://circleci.com/docs/2.0/configuration-reference/#run
221
+ */
222
+ export interface Run {
223
+ /** Command to run via the shell */
224
+ readonly command: string;
225
+ /** Title of the step to be shown in the CircleCI UI (default: full command) */
226
+ readonly name?: string;
227
+ /** Shell to use for execution command */
228
+ readonly shell?: string;
229
+ /** Additional environmental variables, locally scoped to command */
230
+ readonly environment?: string;
231
+ /** Whether this step should run in the background (default: false) */
232
+ readonly background?: string;
233
+ /** In which directory to run this step. Will be interpreted relative to the working_directory of the job). (default: .) */
234
+ readonly workingDirectory?: string;
235
+ /** Elapsed time the command can run without output such as “20m”, “1.25h”, “5s”. The default is 10 minutes */
236
+ readonly noOutputTimeout?: string;
237
+ /** Specify when to enable or disable the step. */
238
+ readonly when?: JobWhen | string;
239
+ }
240
+ export {};
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ // @see https://circleci.com/docs/2.0/configuration-reference
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.JobWhen = exports.ResourceClass = exports.JobType = void 0;
5
+ /**
6
+ * A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed
7
+ * @see https://circleci.com/docs/2.0/configuration-reference/#type
8
+ */
9
+ var JobType;
10
+ (function (JobType) {
11
+ JobType["APPROVAL"] = "approval";
12
+ })(JobType = exports.JobType || (exports.JobType = {}));
13
+ /**
14
+ * The resource_class feature allows configuring CPU and RAM resources for each job.
15
+ * Different resource classes are available for different executors, as described in the tables below.
16
+ * @see https://circleci.com/docs/2.0/configuration-reference/#resourceclass
17
+ */
18
+ var ResourceClass;
19
+ (function (ResourceClass) {
20
+ ResourceClass["SMALL"] = "small";
21
+ ResourceClass["MEDIUM"] = "medium";
22
+ ResourceClass["MEDIUM_PLUS"] = "medium+";
23
+ ResourceClass["LARGE_X"] = "xlarge";
24
+ ResourceClass["LARGE_2X"] = "2xlarge";
25
+ ResourceClass["LARGE_2X_PLUS"] = "2xlarge+";
26
+ })(ResourceClass = exports.ResourceClass || (exports.ResourceClass = {}));
27
+ /**
28
+ * Specify when to enable or disable the step.
29
+ * @see https://circleci.com/docs/2.0/configuration-reference/#steps
30
+ */
31
+ var JobWhen;
32
+ (function (JobWhen) {
33
+ JobWhen["ALWAYS"] = "always";
34
+ JobWhen["ON_SUCCESS"] = "on_success";
35
+ JobWhen["ON_FAIL"] = "on_fail";
36
+ })(JobWhen = exports.JobWhen || (exports.JobWhen = {}));
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2lyY2xlY2kvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZEQUE2RDs7O0FBMkI3RDs7O0dBR0c7QUFDSCxJQUFZLE9BRVg7QUFGRCxXQUFZLE9BQU87SUFDakIsZ0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUZXLE9BQU8sR0FBUCxlQUFPLEtBQVAsZUFBTyxRQUVsQjtBQUVEOzs7O0dBSUc7QUFDSCxJQUFZLGFBT1g7QUFQRCxXQUFZLGFBQWE7SUFDdkIsZ0NBQWUsQ0FBQTtJQUNmLGtDQUFpQixDQUFBO0lBQ2pCLHdDQUF1QixDQUFBO0lBQ3ZCLG1DQUFrQixDQUFBO0lBQ2xCLHFDQUFvQixDQUFBO0lBQ3BCLDJDQUEwQixDQUFBO0FBQzVCLENBQUMsRUFQVyxhQUFhLEdBQWIscUJBQWEsS0FBYixxQkFBYSxRQU94QjtBQUVEOzs7R0FHRztBQUNILElBQVksT0FJWDtBQUpELFdBQVksT0FBTztJQUNqQiw0QkFBaUIsQ0FBQTtJQUNqQixvQ0FBeUIsQ0FBQTtJQUN6Qiw4QkFBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsT0FBTyxHQUFQLGVBQU8sS0FBUCxlQUFPLFFBSWxCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZVxuXG4vKipcbiAqIFVzZWQgdG8gcmVwcmVzZW50IG9iamVjdHMgd2l0aCBhIGR5bmFtaWMga2V5LlxuICogRHluYW1pYyBhcmUgbWFya2VkIHdpdGggYDw+YCBpbiBjb25maWd1cmF0aW9uIHJlZmVyZW5jZSBsaWtlICc8d29ya2Zsb3dfbmFtZT4nIGFuZCAnPGpvYl9uYW1lPidcbiAqIFRoaXMgZmllbGQgaXMgcmVxdWlyZWQgZm9yIG9iamVjdHMgd2l0aCBkeW5hbWljIGtleXMuXG4gKi9cbmludGVyZmFjZSBJTmFtZWQge1xuICAvKiogbmFtZSBvZiBkeW5hbWljIGtleSAqKi9cbiAgcmVhZG9ubHkgaWRlbnRpZmllcjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFVzZWQgZm9yIG9yY2hlc3RyYXRpbmcgYWxsIGpvYnMuIEVhY2ggd29ya2Zsb3cgY29uc2lzdHMgb2YgdGhlIHdvcmtmbG93IG5hbWUgYXMgYSBrZXkgYW5kIGEgbWFwIGFzIGEgdmFsdWUuXG4gKiBBIG5hbWUgc2hvdWxkIGJlIHVuaXF1ZSB3aXRoaW4gdGhlIGN1cnJlbnQgY29uZmlnLnltbC5cbiAqIFRoZSB0b3AtbGV2ZWwga2V5cyBmb3IgdGhlIFdvcmtmbG93cyBjb25maWd1cmF0aW9uIGFyZSB2ZXJzaW9uIGFuZCBqb2JzLlxuICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jd29ya2Zsb3dzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3cgZXh0ZW5kcyBJTmFtZWQge1xuICByZWFkb25seSBqb2JzPzogV29ya2Zsb3dKb2JbXTtcbiAgcmVhZG9ubHkgdHJpZ2dlcnM/OiBUcmlnZ2Vyc1tdO1xuICAvKiogd2hlbiBpcyB0b28gZHluYW1pYyB0byBiZSBjYXN0ZWQgdG8gaW50ZXJmYWNlcy4gQ2hlY2sgRG9jdSBhcyByZWZlcmVuY2VcbiAgICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jbG9naWMtc3RhdGVtZW50LWV4YW1wbGVzXG4gICAqL1xuICByZWFkb25seSB3aGVuPzogYW55O1xufVxuXG4vKipcbiAqIEEgam9iIG1heSBoYXZlIGEgdHlwZSBvZiBhcHByb3ZhbCBpbmRpY2F0aW5nIGl0IG11c3QgYmUgbWFudWFsbHkgYXBwcm92ZWQgYmVmb3JlIGRvd25zdHJlYW0gam9icyBtYXkgcHJvY2VlZFxuICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jdHlwZVxuICovXG5leHBvcnQgZW51bSBKb2JUeXBlIHtcbiAgQVBQUk9WQUwgPSBcImFwcHJvdmFsXCIsXG59XG5cbi8qKlxuICogVGhlIHJlc291cmNlX2NsYXNzIGZlYXR1cmUgYWxsb3dzIGNvbmZpZ3VyaW5nIENQVSBhbmQgUkFNIHJlc291cmNlcyBmb3IgZWFjaCBqb2IuXG4gKiBEaWZmZXJlbnQgcmVzb3VyY2UgY2xhc3NlcyBhcmUgYXZhaWxhYmxlIGZvciBkaWZmZXJlbnQgZXhlY3V0b3JzLCBhcyBkZXNjcmliZWQgaW4gdGhlIHRhYmxlcyBiZWxvdy5cbiAqIEBzZWUgaHR0cHM6Ly9jaXJjbGVjaS5jb20vZG9jcy8yLjAvY29uZmlndXJhdGlvbi1yZWZlcmVuY2UvI3Jlc291cmNlY2xhc3NcbiAqL1xuZXhwb3J0IGVudW0gUmVzb3VyY2VDbGFzcyB7XG4gIFNNQUxMID0gXCJzbWFsbFwiLFxuICBNRURJVU0gPSBcIm1lZGl1bVwiLFxuICBNRURJVU1fUExVUyA9IFwibWVkaXVtK1wiLFxuICBMQVJHRV9YID0gXCJ4bGFyZ2VcIixcbiAgTEFSR0VfMlggPSBcIjJ4bGFyZ2VcIixcbiAgTEFSR0VfMlhfUExVUyA9IFwiMnhsYXJnZStcIixcbn1cblxuLyoqXG4gKiBTcGVjaWZ5IHdoZW4gdG8gZW5hYmxlIG9yIGRpc2FibGUgdGhlIHN0ZXAuXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNzdGVwc1xuICovXG5leHBvcnQgZW51bSBKb2JXaGVuIHtcbiAgQUxXQVlTID0gXCJhbHdheXNcIixcbiAgT05fU1VDQ0VTUyA9IFwib25fc3VjY2Vzc1wiLFxuICBPTl9GQUlMID0gXCJvbl9mYWlsXCIsXG59XG5cbi8qKlxuICogQSBXb3JrZmxvdyBpcyBjb21wcmlzZWQgb2Ygb25lIG9yIG1vcmUgdW5pcXVlbHkgbmFtZWQgam9icy4gSm9icyBhcmUgc3BlY2lmaWVkIGluIHRoZSBqb2JzIG1hcCxcbiAqIHNlZSBTYW1wbGUgMi4wIGNvbmZpZy55bWwgZm9yIHR3byBleGFtcGxlcyBvZiBhIGpvYiBtYXAuXG4gKiBUaGUgbmFtZSBvZiB0aGUgam9iIGlzIHRoZSBrZXkgaW4gdGhlIG1hcCwgYW5kIHRoZSB2YWx1ZSBpcyBhIG1hcCBkZXNjcmliaW5nIHRoZSBqb2IuXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNqb2JzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iIGV4dGVuZHMgSU5hbWVkIHt9XG5cbi8qKlxuICogQSBKb2IgaXMgcGFydCBvZiBXb3JrZmxvdy4gQSBKb2IgY2FuIGJlIGNyZWF0ZWQgd2l0aCB7QGxpbmsgSm9ifSBvciBpdCBjYW4gYmUgcHJvdmlkZWQgYnkgdGhlIG9yYlxuICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jam9icy1pbi13b3JrZmxvd1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93Sm9iIGV4dGVuZHMgSU5hbWVkIHtcbiAgLyoqIEEgbGlzdCBvZiBqb2JzIHRoYXQgbXVzdCBzdWNjZWVkIGZvciB0aGUgam9iIHRvIHN0YXJ0LiAqL1xuICByZWFkb25seSByZXF1aXJlcz86IHN0cmluZ1tdO1xuICAvKiogQSByZXBsYWNlbWVudCBmb3IgdGhlIGpvYiBuYW1lLiBVc2VmdWwgd2hlbiBjYWxsaW5nIGEgam9iIG11bHRpcGxlIHRpbWVzICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgY29udGV4dChzKS4gVGhlIGluaXRpYWwgZGVmYXVsdCBuYW1lIGlzIG9yZy1nbG9iYWwuIEVhY2ggY29udGV4dCBuYW1lIG11c3QgYmUgdW5pcXVlLiAqL1xuICByZWFkb25seSBjb250ZXh0Pzogc3RyaW5nW107XG4gIC8qKiBBIGpvYiBtYXkgaGF2ZSBhIHR5cGUgb2YgYXBwcm92YWwgaW5kaWNhdGluZyBpdCBtdXN0IGJlIG1hbnVhbGx5IGFwcHJvdmVkIGJlZm9yZSBkb3duc3RyZWFtIGpvYnMgbWF5IHByb2NlZWQuICovXG4gIHJlYWRvbmx5IHR5cGU/OiBKb2JUeXBlO1xuICAvKiogSm9iIEZpbHRlcnMgY2FuIGhhdmUgdGhlIGtleSBicmFuY2hlcyBvciB0YWdzICovXG4gIHJlYWRvbmx5IGZpbHRlcj86IEZpbHRlcjtcbiAgcmVhZG9ubHkgbWF0cml4PzogTWF0cml4O1xuICAvKiogUGFyYW1ldGVycyBmb3IgbWFraW5nIGEgam9iIGV4cGxpY2l0bHkgY29uZmlndXJhYmxlIGluIGEgd29ya2Zsb3cuICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPjtcbiAgLyoqIFBhcmFtZXRlcnMgcGFzc2VkIHRvIGpvYiB3aGVuIHJlZmVyZW5jaW5nIGEgam9iIGZyb20gb3JiICovXG4gIHJlYWRvbmx5IG9yYlBhcmFtZXRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPjtcbn1cblxuLyoqXG4gKiBUaGUgbWF0cml4IHN0YW56YSBhbGxvd3MgeW91IHRvIHJ1biBhIHBhcmFtZXRlcml6ZWQgam9iIG11bHRpcGxlIHRpbWVzIHdpdGggZGlmZmVyZW50IGFyZ3VtZW50cy5cbiAqIEBzZWUgaHR0cHM6Ly9jaXJjbGVjaS5jb20vZG9jcy8yLjAvY29uZmlndXJhdGlvbi1yZWZlcmVuY2UvI21hdHJpeC1yZXF1aXJlcy12ZXJzaW9uLTIxXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWF0cml4IHtcbiAgLyoqIEEgbWFwIG9mIHBhcmFtZXRlciBuYW1lcyB0byBldmVyeSB2YWx1ZSB0aGUgam9iIHNob3VsZCBiZSBjYWxsZWQgd2l0aCAqL1xuICByZWFkb25seSBwYXJhbWV0ZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nW10gfCBudW1iZXJbXT47XG4gIC8qKiBBbiBhbGlhcyBmb3IgdGhlIG1hdHJpeCwgdXNhYmxlIGZyb20gYW5vdGhlciBqb2LigJlzIHJlcXVpcmVzIHN0YW56YS4gRGVmYXVsdHMgdG8gdGhlIG5hbWUgb2YgdGhlIGpvYiBiZWluZyBleGVjdXRlZCAqL1xuICByZWFkb25seSBhbGlhcz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBTcGVjaWZpZXMgd2hpY2ggdHJpZ2dlcnMgd2lsbCBjYXVzZSB0aGlzIHdvcmtmbG93IHRvIGJlIGV4ZWN1dGVkLlxuICogRGVmYXVsdCBiZWhhdmlvciBpcyB0byB0cmlnZ2VyIHRoZSB3b3JrZmxvdyB3aGVuIHB1c2hpbmcgdG8gYSBicmFuY2guXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyN0cmlnZ2Vyc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyaWdnZXJzIHtcbiAgcmVhZG9ubHkgc2NoZWR1bGU/OiBTY2hlZHVsZTtcbn1cblxuLyoqXG4gKiAgQSB3b3JrZmxvdyBtYXkgaGF2ZSBhIHNjaGVkdWxlIGluZGljYXRpbmcgaXQgcnVucyBhdCBhIGNlcnRhaW4gdGltZS5cbiAqICBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNzY2hlZHVsZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlIHtcbiAgLyoqIFRoZSBjcm9uIGtleSBpcyBkZWZpbmVkIHVzaW5nIFBPU0lYIGNyb250YWIgc3ludGF4LiAqL1xuICByZWFkb25seSBjcm9uPzogc3RyaW5nO1xuICByZWFkb25seSBmaWx0ZXJzOiBGaWx0ZXI7XG59XG5cbi8qKlxuICogVGhlIGJyYW5jaGVzIGtleSBjb250cm9scyB3aGV0aGVyIHRoZSBjdXJyZW50IGJyYW5jaCBzaG91bGQgaGF2ZSBhIHNjaGVkdWxlIHRyaWdnZXIgY3JlYXRlZCBmb3IgaXQsXG4gKiB3aGVyZSBjdXJyZW50IGJyYW5jaCBpcyB0aGUgYnJhbmNoIGNvbnRhaW5pbmcgdGhlIGNvbmZpZy55bWwgZmlsZSB3aXRoIHRoZSB0cmlnZ2VyIHN0YW56YS5cbiAqIFRoYXQgaXMsIGEgcHVzaCBvbiB0aGUgbWFpbiBicmFuY2ggd2lsbCBvbmx5IHNjaGVkdWxlIGEgd29ya2Zsb3cgZm9yIHRoZSBtYWluIGJyYW5jaC5cbiAqXG4gKiBCcmFuY2hlcyBjYW4gaGF2ZSB0aGUga2V5cyBvbmx5IGFuZCBpZ25vcmUgd2hpY2ggZWl0aGVyIG1hcCB0byBhIHNpbmdsZSBzdHJpbmcgbmFtaW5nIGEgYnJhbmNoLlxuICogWW91IG1heSBhbHNvIHVzZSByZWd1bGFyIGV4cHJlc3Npb25zIHRvIG1hdGNoIGFnYWluc3QgYnJhbmNoZXMgYnkgZW5jbG9zaW5nIHRoZW0gd2l0aCAv4oCZcywgb3IgbWFwIHRvIGEgbGlzdCBvZiBzdWNoIHN0cmluZ3MuXG4gKiBSZWd1bGFyIGV4cHJlc3Npb25zIG11c3QgbWF0Y2ggdGhlIGVudGlyZSBzdHJpbmcuXG4gKlxuICogQW55IGJyYW5jaGVzIHRoYXQgbWF0Y2ggb25seSB3aWxsIHJ1biB0aGUgam9iLlxuICogQW55IGJyYW5jaGVzIHRoYXQgbWF0Y2ggaWdub3JlIHdpbGwgbm90IHJ1biB0aGUgam9iLlxuICogSWYgbmVpdGhlciBvbmx5IG5vciBpZ25vcmUgYXJlIHNwZWNpZmllZCB0aGVuIGFsbCBicmFuY2hlcyB3aWxsIHJ1biB0aGUgam9iLlxuICogSWYgYm90aCBvbmx5IGFuZCBpZ25vcmUgYXJlIHNwZWNpZmllZCB0aGUgb25seSBpcyBjb25zaWRlcmVkIGJlZm9yZSBpZ25vcmUuXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNmaWx0ZXJzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyIHtcbiAgcmVhZG9ubHkgYnJhbmNoZXM/OiBGaWx0ZXJDb25maWc7XG4gIHJlYWRvbmx5IHRhZ3M/OiBGaWx0ZXJDb25maWc7XG59XG5cbi8qKlxuICogc2V0IGFuIGluY2x1c2l2ZSBvciBleGNsdXNpdmUgZmlsdGVyXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNmaWx0ZXJzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyQ29uZmlnIHtcbiAgLyoqIEVpdGhlciBhIHNpbmdsZSBicmFuY2ggc3BlY2lmaWVyLCBvciBhIGxpc3Qgb2YgYnJhbmNoIHNwZWNpZmllcnMgKi9cbiAgcmVhZG9ubHkgb25seT86IHN0cmluZ1tdO1xuICAvKiogRWl0aGVyIGEgc2luZ2xlIGJyYW5jaCBzcGVjaWZpZXIsIG9yIGEgbGlzdCBvZiBicmFuY2ggc3BlY2lmaWVycyAqL1xuICByZWFkb25seSBpZ25vcmU/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBFYWNoIGpvYiBjb25zaXN0cyBvZiB0aGUgam9i4oCZcyBuYW1lIGFzIGEga2V5IGFuZCBhIG1hcCBhcyBhIHZhbHVlLiBBIG5hbWUgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRpdmUgdW5pcXVlIHdpdGhpbiBhIGN1cnJlbnQgam9icyBsaXN0LlxuICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jam9iX25hbWVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBKb2Ige1xuICByZWFkb25seSBkb2NrZXI/OiBEb2NrZXJbXTtcbiAgcmVhZG9ubHkgbWFjaGluZT86IE1hY2hpbmU7XG4gIHJlYWRvbmx5IG1hY29zPzogTWFjb3M7XG4gIC8qKiBTaGVsbCB0byB1c2UgZm9yIGV4ZWN1dGlvbiBjb21tYW5kIGluIGFsbCBzdGVwcy4gQ2FuIGJlIG92ZXJyaWRkZW4gYnkgc2hlbGwgaW4gZWFjaCBzdGVwICovXG4gIHJlYWRvbmx5IHNoZWxsPzogc3RyaW5nO1xuICAvKiogUGFyYW1ldGVycyBmb3IgbWFraW5nIGEgam9iIGV4cGxpY2l0bHkgY29uZmlndXJhYmxlIGluIGEgd29ya2Zsb3cuICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKiogbm8gdHlwZSBzdXBwb3J0IGhlcmUsIGZvciBzeW50YXgge0BzZWUgaHR0cHM6Ly9jaXJjbGVjaS5jb20vZG9jcy8yLjAvY29uZmlndXJhdGlvbi1yZWZlcmVuY2UvI3N0ZXBzfSAqL1xuICByZWFkb25seSBzdGVwcz86IGFueVtdO1xuICAvKiogSW4gd2hpY2ggZGlyZWN0b3J5IHRvIHJ1biB0aGUgc3RlcHMuIFdpbGwgYmUgaW50ZXJwcmV0ZWQgYXMgYW4gYWJzb2x1dGUgcGF0aC4gRGVmYXVsdDogYH4vcHJvamVjdGAgKi9cbiAgcmVhZG9ubHkgd29ya2luZ0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqIE51bWJlciBvZiBwYXJhbGxlbCBpbnN0YW5jZXMgb2YgdGhpcyBqb2IgdG8gcnVuIChkZWZhdWx0OiAxKSAqL1xuICByZWFkb25seSBwYXJhbGxlbGlzbT86IG51bWJlcjtcbiAgLyoqIEEgbWFwIG9mIGVudmlyb25tZW50IHZhcmlhYmxlIG5hbWVzIGFuZCB2YWx1ZXMuICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50PzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj47XG4gIC8qKiB7QGxpbmsgUmVzb3VyY2VDbGFzc30gKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VDbGFzcz86IFJlc291cmNlQ2xhc3MgfCBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZG9ja2VyIGV4ZWN1dG9yXG4gKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNkb2NrZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEb2NrZXIge1xuICAvKiogVGhlIG5hbWUgb2YgYSBjdXN0b20gZG9ja2VyIGltYWdlIHRvIHVzZSAqL1xuICByZWFkb25seSBpbWFnZTogc3RyaW5nO1xuICAvKiogVGhlIG5hbWUgdGhlIGNvbnRhaW5lciBpcyByZWFjaGFibGUgYnkuIEJ5IGRlZmF1bHQsIGNvbnRhaW5lciBzZXJ2aWNlcyBhcmUgYWNjZXNzaWJsZSB0aHJvdWdoIGxvY2FsaG9zdCAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICAvKiogVGhlIGNvbW1hbmQgdXNlZCBhcyBleGVjdXRhYmxlIHdoZW4gbGF1bmNoaW5nIHRoZSBjb250YWluZXIgKi9cbiAgcmVhZG9ubHkgZW50cnlwb2ludD86IHN0cmluZ1tdO1xuICAvKiogVGhlIGNvbW1hbmQgdXNlZCBhcyBwaWQgMSAob3IgYXJncyBmb3IgZW50cnlwb2ludCkgd2hlbiBsYXVuY2hpbmcgdGhlIGNvbnRhaW5lciAqL1xuICByZWFkb25seSBjb21tYW5kPzogc3RyaW5nW107XG4gIC8qKiBXaGljaCB1c2VyIHRvIHJ1biBjb21tYW5kcyBhcyB3aXRoaW4gdGhlIERvY2tlciBjb250YWluZXIgKi9cbiAgcmVhZG9ubHkgdXNlcj86IHN0cmluZztcbiAgLyoqIEEgbWFwIG9mIGVudmlyb25tZW50IHZhcmlhYmxlIG5hbWVzIGFuZCB2YWx1ZXMgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnQ/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPjtcbiAgLyoqIEF1dGhlbnRpY2F0aW9uIGZvciByZWdpc3RyaWVzIHVzaW5nIHN0YW5kYXJkIGRvY2tlciBsb2dpbiBjcmVkZW50aWFscyAqL1xuICByZWFkb25seSBhdXRoPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqIEF1dGhlbnRpY2F0aW9uIGZvciBBV1MgRWxhc3RpYyBDb250YWluZXIgUmVnaXN0cnkgKEVDUikgKi9cbiAgcmVhZG9ubHkgYXdzQXV0aD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFjaGluZSB7XG4gIC8qKlxuICAgKiBUaGUgVk0gaW1hZ2UgdG8gdXNlLlxuICAgKiBAc2VlIGh0dHBzOi8vY2lyY2xlY2kuY29tL2RvY3MvMi4wL2NvbmZpZ3VyYXRpb24tcmVmZXJlbmNlLyNhdmFpbGFibGUtbWFjaGluZS1pbWFnZXNcbiAgICovXG4gIHJlYWRvbmx5IGltYWdlOiBzdHJpbmc7XG4gIC8qKiBlbmFibGUgZG9ja2VyIGxheWVyIGNhY2hpbmdcbiAgICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jYXZhaWxhYmxlLW1hY2hpbmUtaW1hZ2VzXG4gICAqL1xuICByZWFkb25seSBkb2NrZXJMYXllckNhY2hpbmc/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ2lyY2xlQ0kgc3VwcG9ydHMgcnVubmluZyBqb2JzIG9uIG1hY09TLCB0byBhbGxvdyB5b3UgdG8gYnVpbGQsIHRlc3QsXG4gKiBhbmQgZGVwbG95IGFwcHMgZm9yIG1hY09TLCBpT1MsIHR2T1MgYW5kIHdhdGNoT1MuIFRvIHJ1biBhIGpvYiBpbiBhIG1hY09TIHZpcnR1YWwgbWFjaGluZSxcbiAqIHlvdSBtdXN0IGFkZCB0aGUgbWFjb3Mga2V5IHRvIHRoZSB0b3AtbGV2ZWwgY29uZmlndXJhdGlvbiBmb3IgdGhlIGpvYiBhbmQgc3BlY2lmeVxuICogdGhlIHZlcnNpb24gb2YgWGNvZGUgeW91IHdvdWxkIGxpa2UgdG8gdXNlLlxuICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jbWFjb3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYWNvcyB7XG4gIC8qKiBUaGUgdmVyc2lvbiBvZiBYY29kZSB0aGF0IGlzIGluc3RhbGxlZCBvbiB0aGUgdmlydHVhbCBtYWNoaW5lICovXG4gIHJlYWRvbmx5IHhjb2RlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRXhlY3V0aW9uIHN0ZXBzIGZvciBKb2JcbiAqIEBzZWUgaHR0cHM6Ly9jaXJjbGVjaS5jb20vZG9jcy8yLjAvY29uZmlndXJhdGlvbi1yZWZlcmVuY2UvI3N0ZXBzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RlcFJ1biB7XG4gIHJlYWRvbmx5IHJ1bj86IFJ1bjtcbn1cblxuLyoqXG4gKiBVc2VkIGZvciBpbnZva2luZyBhbGwgY29tbWFuZC1saW5lIHByb2dyYW1zLCB0YWtpbmcgZWl0aGVyIGEgbWFwIG9mIGNvbmZpZ3VyYXRpb24gdmFsdWVzLFxuICogb3IsIHdoZW4gY2FsbGVkIGluIGl0cyBzaG9ydC1mb3JtLCBhIHN0cmluZyB0aGF0IHdpbGwgYmUgdXNlZCBhcyBib3RoIHRoZSBjb21tYW5kIGFuZCBuYW1lLlxuICogUnVuIGNvbW1hbmRzIGFyZSBleGVjdXRlZCB1c2luZyBub24tbG9naW4gc2hlbGxzIGJ5IGRlZmF1bHQsXG4gKiBzbyB5b3UgbXVzdCBleHBsaWNpdGx5IHNvdXJjZSBhbnkgZG90ZmlsZXMgYXMgcGFydCBvZiB0aGUgY29tbWFuZC5cbiAqXG4gKiBOb3QgdXNlZCBiZWNhdXNlIHR5cGUgaW5jb21wYXRpYmxlIHR5cGVzIGluIHN0ZXBzIGFycmF5XG4gKlxuICogQHNlZSBodHRwczovL2NpcmNsZWNpLmNvbS9kb2NzLzIuMC9jb25maWd1cmF0aW9uLXJlZmVyZW5jZS8jcnVuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVuIHtcbiAgLyoqIENvbW1hbmQgdG8gcnVuIHZpYSB0aGUgc2hlbGwgKi9cbiAgcmVhZG9ubHkgY29tbWFuZDogc3RyaW5nO1xuICAvKiogVGl0bGUgb2YgdGhlIHN0ZXAgdG8gYmUgc2hvd24gaW4gdGhlIENpcmNsZUNJIFVJIChkZWZhdWx0OiBmdWxsIGNvbW1hbmQpICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIC8qKiBTaGVsbCB0byB1c2UgZm9yIGV4ZWN1dGlvbiBjb21tYW5kICovXG4gIHJlYWRvbmx5IHNoZWxsPzogc3RyaW5nO1xuICAvKiogQWRkaXRpb25hbCBlbnZpcm9ubWVudGFsIHZhcmlhYmxlcywgbG9jYWxseSBzY29wZWQgdG8gY29tbWFuZCAqL1xuICByZWFkb25seSBlbnZpcm9ubWVudD86IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhpcyBzdGVwIHNob3VsZCBydW4gaW4gdGhlIGJhY2tncm91bmQgKGRlZmF1bHQ6IGZhbHNlKSAqL1xuICByZWFkb25seSBiYWNrZ3JvdW5kPzogc3RyaW5nO1xuICAvKiogSW4gd2hpY2ggZGlyZWN0b3J5IHRvIHJ1biB0aGlzIHN0ZXAuIFdpbGwgYmUgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIHdvcmtpbmdfZGlyZWN0b3J5IG9mIHRoZSBqb2IpLiAoZGVmYXVsdDogLikgKi9cbiAgcmVhZG9ubHkgd29ya2luZ0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqIEVsYXBzZWQgdGltZSB0aGUgY29tbWFuZCBjYW4gcnVuIHdpdGhvdXQgb3V0cHV0IHN1Y2ggYXMg4oCcMjBt4oCdLCDigJwxLjI1aOKAnSwg4oCcNXPigJ0uIFRoZSBkZWZhdWx0IGlzIDEwIG1pbnV0ZXMgKi9cbiAgcmVhZG9ubHkgbm9PdXRwdXRUaW1lb3V0Pzogc3RyaW5nO1xuICAvKiogU3BlY2lmeSB3aGVuIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBzdGVwLiAqL1xuICByZWFkb25seSB3aGVuPzogSm9iV2hlbiB8IHN0cmluZztcbn1cbiJdfQ==
package/lib/component.js CHANGED
@@ -26,5 +26,5 @@ class Component {
26
26
  }
27
27
  exports.Component = Component;
28
28
  _a = JSII_RTTI_SYMBOL_1;
29
- Component[_a] = { fqn: "projen.Component", version: "0.58.10" };
29
+ Component[_a] = { fqn: "projen.Component", version: "0.58.13" };
30
30
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBOztHQUVHO0FBQ0gsTUFBYSxTQUFTO0lBQ3BCLFlBQTRCLE9BQWdCO1FBQWhCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDMUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxhQUFhLEtBQUksQ0FBQztJQUV6Qjs7T0FFRztJQUNJLFVBQVUsS0FBSSxDQUFDO0lBRXRCOztPQUVHO0lBQ0ksY0FBYyxLQUFJLENBQUM7O0FBbEI1Qiw4QkFtQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4vcHJvamVjdFwiO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwcm9qZWN0IGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBwcm9qZWN0OiBQcm9qZWN0KSB7XG4gICAgcHJvamVjdC5fYWRkQ29tcG9uZW50KHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBiZWZvcmUgc3ludGhlc2lzLlxuICAgKi9cbiAgcHVibGljIHByZVN5bnRoZXNpemUoKSB7fVxuXG4gIC8qKlxuICAgKiBTeW50aGVzaXplcyBmaWxlcyB0byB0aGUgcHJvamVjdCBvdXRwdXQgZGlyZWN0b3J5LlxuICAgKi9cbiAgcHVibGljIHN5bnRoZXNpemUoKSB7fVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgYWZ0ZXIgc3ludGhlc2lzLiBPcmRlciBpcyAqbm90KiBndWFyYW50ZWVkLlxuICAgKi9cbiAgcHVibGljIHBvc3RTeW50aGVzaXplKCkge31cbn1cbiJdfQ==
@@ -169,7 +169,7 @@ class Dependencies extends component_1.Component {
169
169
  }
170
170
  exports.Dependencies = Dependencies;
171
171
  _a = JSII_RTTI_SYMBOL_1;
172
- Dependencies[_a] = { fqn: "projen.Dependencies", version: "0.58.10" };
172
+ Dependencies[_a] = { fqn: "projen.Dependencies", version: "0.58.13" };
173
173
  /**
174
174
  * The project-relative path of the deps manifest file.
175
175
  */
package/lib/dev-env.js CHANGED
@@ -27,5 +27,5 @@ class DevEnvironmentDockerImage {
27
27
  }
28
28
  exports.DevEnvironmentDockerImage = DevEnvironmentDockerImage;
29
29
  _a = JSII_RTTI_SYMBOL_1;
30
- DevEnvironmentDockerImage[_a] = { fqn: "projen.DevEnvironmentDockerImage", version: "0.58.10" };
30
+ DevEnvironmentDockerImage[_a] = { fqn: "projen.DevEnvironmentDockerImage", version: "0.58.13" };
31
31
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2LWVudi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXYtZW52LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBNEJBOztHQUVHO0FBQ0gsTUFBYSx5QkFBeUI7SUE2QnBDLGdCQUF1QixDQUFDO0lBNUJ4Qjs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFhO1FBQ25DLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBa0I7UUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ3hCLENBQUM7O0FBakJILDhEQThCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2sgfSBmcm9tIFwiLi90YXNrXCI7XG5cbi8qKlxuICogQmFzZSBvcHRpb25zIGZvciBjb25maWd1cmluZyBhIGNvbnRhaW5lci1iYXNlZCBkZXZlbG9wbWVudCBlbnZpcm9ubWVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXZFbnZpcm9ubWVudE9wdGlvbnMge1xuICAvKipcbiAgICogQSBEb2NrZXIgaW1hZ2Ugb3IgRG9ja2VyZmlsZSBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICovXG4gIHJlYWRvbmx5IGRvY2tlckltYWdlPzogRGV2RW52aXJvbm1lbnREb2NrZXJJbWFnZTtcblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgdGFza3MgdGhhdCBzaG91bGQgYmUgcnVuIHdoZW4gdGhlIGNvbnRhaW5lciBzdGFydHMuXG4gICAqL1xuICByZWFkb25seSB0YXNrcz86IFRhc2tbXTtcblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgcG9ydHMgdGhhdCBzaG91bGQgYmUgZXhwb3NlZCBmcm9tIHRoZSBjb250YWluZXIuXG4gICAqL1xuICByZWFkb25seSBwb3J0cz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBleHRlbnNpb24gSURzIHRoYXQgc3BlY2lmeSB0aGUgZXh0ZW5zaW9ucyB0aGF0IHNob3VsZCBiZVxuICAgKiBpbnN0YWxsZWQgaW5zaWRlIHRoZSBjb250YWluZXIgd2hlbiBpdCBpcyBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgdnNjb2RlRXh0ZW5zaW9ucz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHNwZWNpZnlpbmcgdGhlIERvY2tlciBpbWFnZSBvZiB0aGUgY29udGFpbmVyLlxuICovXG5leHBvcnQgY2xhc3MgRGV2RW52aXJvbm1lbnREb2NrZXJJbWFnZSB7XG4gIC8qKlxuICAgKiBBIHB1YmxpY2x5IGF2YWlsYWJsZSBEb2NrZXIgaW1hZ2UuXG4gICAqIEBleGFtcGxlICd1YnVudHU6bGF0ZXN0J1xuICAgKiBAcGFyYW0gaW1hZ2UgYSBEb2NrZXIgaW1hZ2VcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUltYWdlKGltYWdlOiBzdHJpbmcpOiBEZXZFbnZpcm9ubWVudERvY2tlckltYWdlIHtcbiAgICByZXR1cm4geyBpbWFnZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZWxhdGl2ZSBwYXRoIG9mIGEgRG9ja2VyZmlsZSB0aGF0IGRlZmluZXMgdGhlIGNvbnRhaW5lciBjb250ZW50cy5cbiAgICogQGV4YW1wbGUgJy5naXRwb2QuRG9ja2VyJ1xuICAgKiBAcGFyYW0gZG9ja2VyRmlsZSBhIHJlbGF0aXZlIHBhdGhcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUZpbGUoZG9ja2VyRmlsZTogc3RyaW5nKTogRGV2RW52aXJvbm1lbnREb2NrZXJJbWFnZSB7XG4gICAgcmV0dXJuIHsgZG9ja2VyRmlsZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEEgcHVibGljbHkgYXZhaWxhYmxlIERvY2tlciBpbWFnZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpbWFnZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJlbGF0aXZlIHBhdGggb2YgYSBEb2NrZXJmaWxlIHRoYXQgZGVmaW5lcyB0aGUgY29udGFpbmVyIGNvbnRlbnRzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRvY2tlckZpbGU/OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHt9XG59XG5cbi8qKlxuICogQWJzdHJhY3QgaW50ZXJmYWNlIGZvciBjb250YWluZXItYmFzZWQgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnRzLCBzdWNoIGFzXG4gKiBHaXRwb2QgYW5kIEdpdEh1YiBDb2Rlc3BhY2VzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElEZXZFbnZpcm9ubWVudCB7XG4gIC8qKlxuICAgKiBBZGQgYSBjdXN0b20gRG9ja2VyIGltYWdlIG9yIERvY2tlcmZpbGUgZm9yIHRoZSBjb250YWluZXIuXG4gICAqXG4gICAqIEBwYXJhbSBpbWFnZSBUaGUgRG9ja2VyIGltYWdlXG4gICAqL1xuICBhZGREb2NrZXJJbWFnZShpbWFnZTogRGV2RW52aXJvbm1lbnREb2NrZXJJbWFnZSk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIEFkZHMgdGFza3MgdG8gcnVuIHdoZW4gdGhlIGNvbnRhaW5lciBzdGFydHMuXG4gICAqXG4gICAqIEBwYXJhbSB0YXNrcyBUaGUgbmV3IHRhc2tzXG4gICAqL1xuICBhZGRUYXNrcyguLi50YXNrczogVGFza1tdKTogdm9pZDtcblxuICAvKipcbiAgICogQWRkcyBwb3J0cyB0aGF0IHNob3VsZCBiZSBleHBvc2VkIChmb3J3YXJkZWQpIGZyb20gdGhlIGNvbnRhaW5lci5cbiAgICpcbiAgICogQHBhcmFtIHBvcnRzIFRoZSBuZXcgcG9ydHNcbiAgICovXG4gIGFkZFBvcnRzKC4uLnBvcnRzOiBzdHJpbmdbXSk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBsaXN0IG9mIFZTQ29kZSBleHRlbnNpb25zIHRoYXQgc2hvdWxkIGJlIGF1dG9tYXRpY2FsbHkgaW5zdGFsbGVkXG4gICAqIGluIHRoZSBjb250YWluZXIuXG4gICAqXG4gICAqIEBwYXJhbSBleHRlbnNpb25zIFRoZSBleHRlbnNpb24gSURzXG4gICAqL1xuICBhZGRWc2NvZGVFeHRlbnNpb25zKC4uLmV4dGVuc2lvbnM6IHN0cmluZ1tdKTogdm9pZDtcbn1cbiJdfQ==
@@ -111,7 +111,7 @@ class DockerCompose extends component_1.Component {
111
111
  }
112
112
  exports.DockerCompose = DockerCompose;
113
113
  _a = JSII_RTTI_SYMBOL_1;
114
- DockerCompose[_a] = { fqn: "projen.DockerCompose", version: "0.58.10" };
114
+ DockerCompose[_a] = { fqn: "projen.DockerCompose", version: "0.58.13" };
115
115
  /**
116
116
  * A docker-compose service.
117
117
  */
@@ -164,7 +164,7 @@ class DockerComposeService {
164
164
  }
165
165
  exports.DockerComposeService = DockerComposeService;
166
166
  _b = JSII_RTTI_SYMBOL_1;
167
- DockerComposeService[_b] = { fqn: "projen.DockerComposeService", version: "0.58.10" };
167
+ DockerComposeService[_b] = { fqn: "projen.DockerComposeService", version: "0.58.13" };
168
168
  /**
169
169
  * Network protocol for port mapping
170
170
  */
package/lib/file.js CHANGED
@@ -103,5 +103,5 @@ class FileBase extends component_1.Component {
103
103
  }
104
104
  exports.FileBase = FileBase;
105
105
  _a = JSII_RTTI_SYMBOL_1;
106
- FileBase[_a] = { fqn: "projen.FileBase", version: "0.58.10" };
106
+ FileBase[_a] = { fqn: "projen.FileBase", version: "0.58.13" };
107
107
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkJBQTZCO0FBQzdCLHVDQUFzQztBQUN0Qyx5Q0FBcUM7QUFDckMscUNBQW9EO0FBQ3BELDJDQUF3QztBQUV4QyxpQ0FBOEU7QUF3QzlFLE1BQXNCLFFBQVMsU0FBUSxxQkFBUztJQThCOUMsWUFDRSxPQUFnQixFQUNoQixRQUFnQixFQUNoQixVQUEyQixFQUFFO1FBRTdCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDO1FBQzlDLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBRXJCLDBFQUEwRTtRQUMxRSxJQUFJLENBQUMsTUFBTTtZQUNULE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxLQUFLO2dCQUN6QyxDQUFDLENBQUMsU0FBUztnQkFDWCxDQUFDLENBQUMsR0FBRyxzQkFBYSxxQkFBcUIsa0JBQVMsd0JBQXdCLENBQUM7UUFFN0UsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUM7UUFDNUMsSUFBSSxTQUFTLElBQUksUUFBUSxLQUFLLGdCQUFnQixFQUFFO1lBQzlDLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQ2hEO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFN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O1FBQ3pELElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ3ZCLGtCQUFrQixJQUFJLENBQUMsSUFBSSxvQ0FBb0MsQ0FDaEUsQ0FBQztTQUNIO2FBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksY0FBYyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDdkIsa0JBQWtCLElBQUksQ0FBQyxJQUFJLDhDQUE4QyxDQUMxRSxDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQzs7QUE1SkgsNEJBNkpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgcmVtb3ZlU3luYyB9IGZyb20gXCJmcy1leHRyYVwiO1xuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gXCIuL19yZXNvbHZlXCI7XG5pbXBvcnQgeyBQUk9KRU5fTUFSS0VSLCBQUk9KRU5fUkMgfSBmcm9tIFwiLi9jb21tb25cIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudFwiO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmltcG9ydCB7IGlzRXhlY3V0YWJsZSwgaXNXcml0YWJsZSwgdHJ5UmVhZEZpbGVTeW5jLCB3cml0ZUZpbGUgfSBmcm9tIFwiLi91dGlsXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZUJhc2VPcHRpb25zIHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoaXMgZmlsZSBzaG91bGQgYmUgY29tbWl0dGVkIHRvIGdpdCBvciBpZ25vcmVkLiBCeVxuICAgKiBkZWZhdWx0LCBhbGwgZ2VuZXJhdGVkIGZpbGVzIGFyZSBjb21taXR0ZWQgYW5kIGFudGktdGFtcGVyIGlzIHVzZWQgdG9cbiAgICogcHJvdGVjdCBhZ2FpbnN0IG1hbnVhbCBtb2RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjb21taXR0ZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBVcGRhdGUgdGhlIHByb2plY3QncyAuZ2l0aWdub3JlIGZpbGVcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZWRpdEdpdGlnbm9yZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGdlbmVyYXRlZCBmaWxlIHNob3VsZCBiZSByZWFkb25seS5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG9ubHk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBnZW5lcmF0ZWQgZmlsZSBzaG91bGQgYmUgbWFya2VkIGFzIGV4ZWN1dGFibGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBleGVjdXRhYmxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkcyB0aGUgcHJvamVuIG1hcmtlciB0byB0aGUgZmlsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBtYXJrZXIgd2lsbCBiZSBpbmNsdWRlZCBhcyBsb25nIGFzIHRoZSBwcm9qZWN0IGlzIG5vdCBlamVjdGVkXG4gICAqL1xuICByZWFkb25seSBtYXJrZXI/OiBib29sZWFuO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmlsZUJhc2UgZXh0ZW5kcyBDb21wb25lbnQge1xuICAvKipcbiAgICogVGhlIGZpbGUgcGF0aCwgcmVsYXRpdmUgdG8gdGhlIHByb2plY3Qgcm9vdC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgZmlsZSBzaG91bGQgYmUgcmVhZC1vbmx5IG9yIHJlYWQtd3JpdGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgZmlsZSBzaG91bGQgYmUgbWFya2VkIGFzIGV4ZWN1dGFibGVcbiAgICovXG4gIHB1YmxpYyBleGVjdXRhYmxlOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvamVuIG1hcmtlciwgdXNlZCB0byBpZGVudGlmeSBmaWxlcyBhcyBwcm9qZW4tZ2VuZXJhdGVkLlxuICAgKlxuICAgKiBWYWx1ZSBpcyB1bmRlZmluZWQgaWYgdGhlIHByb2plY3QgaXMgYmVpbmcgZWplY3RlZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYXJrZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGFic29sdXRlIHBhdGggb2YgdGhpcyBmaWxlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFic29sdXRlUGF0aDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX2NoYW5nZWQ/OiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb2plY3Q6IFByb2plY3QsXG4gICAgZmlsZVBhdGg6IHN0cmluZyxcbiAgICBvcHRpb25zOiBGaWxlQmFzZU9wdGlvbnMgPSB7fVxuICApIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIHRoaXMucmVhZG9ubHkgPSAhcHJvamVjdC5lamVjdGVkICYmIChvcHRpb25zLnJlYWRvbmx5ID8/IHRydWUpO1xuICAgIHRoaXMuZXhlY3V0YWJsZSA9IG9wdGlvbnMuZXhlY3V0YWJsZSA/PyBmYWxzZTtcbiAgICB0aGlzLnBhdGggPSBmaWxlUGF0aDtcblxuICAgIC8vIGBtYXJrZXJgIGlzIGVtcHR5IGlmIHByb2plY3QgaXMgYmVpbmcgZWplY3RlZCBvciBpZiBleHBsaWNpdGx5IGRpc2FibGVkXG4gICAgdGhpcy5tYXJrZXIgPVxuICAgICAgcHJvamVjdC5lamVjdGVkIHx8IG9wdGlvbnMubWFya2VyID09PSBmYWxzZVxuICAgICAgICA/IHVuZGVmaW5lZFxuICAgICAgICA6IGAke1BST0pFTl9NQVJLRVJ9LiBUbyBtb2RpZnksIGVkaXQgJHtQUk9KRU5fUkN9IGFuZCBydW4gXCJucHggcHJvamVuXCIuYDtcblxuICAgIGNvbnN0IGdsb2JQYXR0ZXJuID0gYC8ke3RoaXMucGF0aH1gO1xuICAgIGNvbnN0IGNvbW1pdHRlZCA9IG9wdGlvbnMuY29tbWl0dGVkID8/IHRydWU7XG4gICAgaWYgKGNvbW1pdHRlZCAmJiBmaWxlUGF0aCAhPT0gXCIuZ2l0YXR0cmlidXRlc1wiKSB7XG4gICAgICBwcm9qZWN0LnJvb3QuYW5ub3RhdGVHZW5lcmF0ZWQoYC8ke2ZpbGVQYXRofWApO1xuICAgIH1cblxuICAgIHRoaXMuYWJzb2x1dGVQYXRoID0gcGF0aC5yZXNvbHZlKHByb2plY3Qub3V0ZGlyLCBmaWxlUGF0aCk7XG5cbiAgICAvLyB2ZXJpZnkgZmlsZSBwYXRoIGlzIHVuaXF1ZSB3aXRoaW4gcHJvamVjdCB0cmVlXG4gICAgY29uc3QgZXhpc3RpbmcgPSBwcm9qZWN0LnJvb3QudHJ5RmluZEZpbGUodGhpcy5hYnNvbHV0ZVBhdGgpO1xuICAgIGlmIChleGlzdGluZyAmJiBleGlzdGluZyAhPT0gdGhpcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgdGhlcmUgaXMgYWxyZWFkeSBhIGZpbGUgdW5kZXIgJHtwYXRoLnJlbGF0aXZlKFxuICAgICAgICAgIHByb2plY3Qucm9vdC5vdXRkaXIsXG4gICAgICAgICAgdGhpcy5hYnNvbHV0ZVBhdGhcbiAgICAgICAgKX1gXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGVkaXRHaXRpZ25vcmUgPSBvcHRpb25zLmVkaXRHaXRpZ25vcmUgPz8gdHJ1ZTtcbiAgICBpZiAoZWRpdEdpdGlnbm9yZSkge1xuICAgICAgdGhpcy5wcm9qZWN0LmFkZEdpdElnbm9yZShgJHtjb21taXR0ZWQgPyBcIiFcIiA6IFwiXCJ9JHtnbG9iUGF0dGVybn1gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKG9wdGlvbnMuY29tbWl0dGVkICE9IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdcImdpdGlnbm9yZVwiIGlzIGRpc2FibGVkLCBzbyBpdCBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIHNwZWNpZnkgXCJjb21taXR0ZWRcIidcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYnkgZGVyaXZlZCBjbGFzc2VzIGFuZCByZXR1cm5zIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZSB0b1xuICAgKiBlbWl0LlxuICAgKiBAcGFyYW0gcmVzb2x2ZXIgQ2FsbCBgcmVzb2x2ZXIucmVzb2x2ZShvYmopYCBvbiBhbnkgb2JqZWN0cyBpbiBvcmRlciB0b1xuICAgKiByZXNvbHZlIHRva2VuIGZ1bmN0aW9ucy5cbiAgICogQHJldHVybnMgdGhlIGNvbnRlbnQgdG8gc3ludGhlc2l6ZSBvciB1bmRlZmluZWQgdG8gc2tpcCB0aGUgZmlsZVxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHN5bnRoZXNpemVDb250ZW50KHJlc29sdmVyOiBJUmVzb2x2ZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdyaXRlcyB0aGUgZmlsZSB0byB0aGUgcHJvamVjdCdzIG91dHB1dCBkaXJlY3RvcnlcbiAgICovXG4gIHB1YmxpYyBzeW50aGVzaXplKCkge1xuICAgIGNvbnN0IG91dGRpciA9IHRoaXMucHJvamVjdC5vdXRkaXI7XG4gICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4ob3V0ZGlyLCB0aGlzLnBhdGgpO1xuICAgIGNvbnN0IHJlc29sdmVyOiBJUmVzb2x2ZXIgPSB7XG4gICAgICByZXNvbHZlOiAob2JqLCBvcHRpb25zKSA9PiByZXNvbHZlKG9iaiwgb3B0aW9ucyksXG4gICAgfTtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy5zeW50aGVzaXplQ29udGVudChyZXNvbHZlcik7XG4gICAgaWYgKGNvbnRlbnQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gcmVtb3ZlIGZpbGUgKGlmIGV4aXN0cykgYW5kIHNraXAgcmVzdCBvZiBzeW50aGVzaXNcbiAgICAgIHJlbW92ZVN5bmMoZmlsZVBhdGgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIGNoZWNrIGlmIHRoZSBmaWxlIHdhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IHByZXYgPSB0cnlSZWFkRmlsZVN5bmMoZmlsZVBhdGgpO1xuICAgIGNvbnN0IHByZXZSZWFkb25seSA9ICFpc1dyaXRhYmxlKGZpbGVQYXRoKTtcbiAgICBjb25zdCBwcmV2RXhlY3V0YWJsZSA9IGlzRXhlY3V0YWJsZShmaWxlUGF0aCk7XG4gICAgaWYgKFxuICAgICAgcHJldiAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBjb250ZW50ID09PSBwcmV2ICYmXG4gICAgICBwcmV2UmVhZG9ubHkgPT09IHRoaXMucmVhZG9ubHkgJiZcbiAgICAgIHByZXZFeGVjdXRhYmxlID09PSB0aGlzLmV4ZWN1dGFibGVcbiAgICApIHtcbiAgICAgIHRoaXMucHJvamVjdC5sb2dnZXIuZGVidWcoYG5vIGNoYW5nZSBpbiAke2ZpbGVQYXRofWApO1xuICAgICAgdGhpcy5fY2hhbmdlZCA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHdyaXRlRmlsZShmaWxlUGF0aCwgY29udGVudCwge1xuICAgICAgcmVhZG9ubHk6IHRoaXMucmVhZG9ubHksXG4gICAgICBleGVjdXRhYmxlOiB0aGlzLmV4ZWN1dGFibGUsXG4gICAgfSk7XG5cbiAgICB0aGlzLmNoZWNrRm9yUHJvamVuTWFya2VyKCk7XG5cbiAgICB0aGlzLl9jaGFuZ2VkID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3IgZGVidWdnaW5nLCBjaGVjayB3aGV0aGVyIGEgZmlsZSB3YXMgaW5jb3JyZWN0bHkgZ2VuZXJhdGVkIHdpdGhcbiAgICogb3Igd2l0aG91dCB0aGUgcHJvamVuIG1hcmtlci4gVGhlIHByb2plbiBtYXJrZXIgZG9lcyBub3QgKm5lZWQqIHRvIGJlXG4gICAqIGluY2x1ZGVkIG9uIHByb2plbi1nZW5lcmF0ZWQgZmlsZXMsIGJ1dCBpdCdzIHJlY29tbWVuZGVkIHNpbmNlIGl0IHNpZ25hbHNcbiAgICogdGhhdCBpdCBwcm9iYWJseSBzaG91bGQgbm90IGJlIGVkaXRlZCBkaXJlY3RseS5cbiAgICovXG4gIHByaXZhdGUgY2hlY2tGb3JQcm9qZW5NYXJrZXIoKSB7XG4gICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4odGhpcy5wcm9qZWN0Lm91dGRpciwgdGhpcy5wYXRoKTtcbiAgICBjb25zdCBjb250ZW50cyA9IHRyeVJlYWRGaWxlU3luYyhmaWxlUGF0aCk7XG4gICAgY29uc3QgY29udGFpbnNNYXJrZXIgPSBjb250ZW50cz8uaW5jbHVkZXMoUFJPSkVOX01BUktFUik7XG4gICAgaWYgKHRoaXMubWFya2VyICYmICFjb250YWluc01hcmtlcikge1xuICAgICAgdGhpcy5wcm9qZWN0LmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYG5vdGU6IGV4cGVjdGVkICR7dGhpcy5wYXRofSB0byBjb250YWluIG1hcmtlciBidXQgZm91bmQgbm9uZS5gXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMubWFya2VyICYmIGNvbnRhaW5zTWFya2VyKSB7XG4gICAgICB0aGlzLnByb2plY3QubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgbm90ZTogZXhwZWN0ZWQgJHt0aGlzLnBhdGh9IHRvIG5vdCBjb250YWluIG1hcmtlciBidXQgZm91bmQgb25lIGFueXdheS5gXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGZpbGUgaGFzIGJlZW4gY2hhbmdlZCBkdXJpbmcgc3ludGhlc2lzLiBUaGlzIHByb3BlcnR5IGlzXG4gICAqIG9ubHkgYXZhaWxhYmxlIGluIGBwb3N0U3ludGhlc2l6ZSgpYCBob29rcy4gSWYgdGhpcyBpcyBgdW5kZWZpbmVkYCwgdGhlXG4gICAqIGZpbGUgaGFzIG5vdCBiZWVuIHN5bnRoZXNpemVkIHlldC5cbiAgICovXG4gIHB1YmxpYyBnZXQgY2hhbmdlZCgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fY2hhbmdlZDtcbiAgfVxufVxuXG4vKipcbiAqIEFQSSBmb3IgcmVzb2x2aW5nIHRva2VucyB3aGVuIHN5bnRoZXNpemluZyBmaWxlIGNvbnRlbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVJlc29sdmVyIHtcbiAgLyoqXG4gICAqIEdpdmVuIGEgdmFsdWUgKG9iamVjdC9zdHJpbmcvYXJyYXkvd2hhdGV2ZXIsIGxvb2tzIHVwIGFueSBmdW5jdGlvbnMgaW5zaWRlXG4gICAqIHRoZSBvYmplY3QgYW5kIHJldHVybnMgYW4gb2JqZWN0IHdoZXJlIGFsbCBmdW5jdGlvbnMgYXJlIGNhbGxlZC5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byByZXNvbHZlXG4gICAqIEBwYWNrYWdlIG9wdGlvbnMgUmVzb2x2ZSBvcHRpb25zXG4gICAqL1xuICByZXNvbHZlKHZhbHVlOiBhbnksIG9wdGlvbnM/OiBSZXNvbHZlT3B0aW9ucyk6IGFueTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb2x2ZU9wdGlvbnMge1xuICAvKipcbiAgICogT21pdHMgZW1wdHkgYXJyYXlzIGFuZCBvYmplY3RzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgb21pdEVtcHR5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29udGV4dCBhcmd1bWVudHMuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBhcmdzPzogYW55W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJlc29sdmFibGUge1xuICAvKipcbiAgICogUmVzb2x2ZXMgYW5kIHJldHVybnMgY29udGVudC5cbiAgICovXG4gIHRvSlNPTigpOiBhbnk7XG59XG4iXX0=
@@ -45,5 +45,5 @@ class GitAttributesFile extends file_1.FileBase {
45
45
  }
46
46
  exports.GitAttributesFile = GitAttributesFile;
47
47
  _a = JSII_RTTI_SYMBOL_1;
48
- GitAttributesFile[_a] = { fqn: "projen.GitAttributesFile", version: "0.58.10" };
48
+ GitAttributesFile[_a] = { fqn: "projen.GitAttributesFile", version: "0.58.13" };
49
49
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0YXR0cmlidXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9naXRhdHRyaWJ1dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaUNBQTZDO0FBRzdDOzs7O0dBSUc7QUFDSCxNQUFhLGlCQUFrQixTQUFRLGVBQVE7SUFHN0MsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRTtZQUMvQixhQUFhLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUM7UUFMWSxlQUFVLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7SUFNN0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxhQUFhLENBQUMsSUFBWSxFQUFFLEdBQUcsVUFBb0I7UUFDeEQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7U0FDdEM7UUFDRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUN2QyxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRTtZQUNsQyxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVTLGlCQUFpQixDQUFDLENBQVk7UUFDdEMsNkNBQTZDO1FBQzdDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ3RFLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQ25CLENBQUM7UUFFRixJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBRUQsT0FBTztZQUNMLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM1QyxFQUFFO1lBQ0YsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUNaLENBQUMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQ3RFO1NBQ0YsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZixDQUFDOztBQXpDSCw4Q0EwQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUmVzb2x2ZXIsIEZpbGVCYXNlIH0gZnJvbSBcIi4vZmlsZVwiO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcblxuLyoqXG4gKiBBc3NpZ24gYXR0cmlidXRlcyB0byBmaWxlIG5hbWVzIGluIGEgZ2l0IHJlcG9zaXRvcnkuXG4gKlxuICogQHNlZSBodHRwczovL2dpdC1zY20uY29tL2RvY3MvZ2l0YXR0cmlidXRlc1xuICovXG5leHBvcnQgY2xhc3MgR2l0QXR0cmlidXRlc0ZpbGUgZXh0ZW5kcyBGaWxlQmFzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXR0cmlidXRlcyA9IG5ldyBNYXA8c3RyaW5nLCBTZXQ8c3RyaW5nPj4oKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCkge1xuICAgIHN1cGVyKHByb2plY3QsIFwiLmdpdGF0dHJpYnV0ZXNcIiwge1xuICAgICAgZWRpdEdpdGlnbm9yZTogZmFsc2UsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTWFwcyBhIHNldCBvZiBhdHRyaWJ1dGVzIHRvIGEgc2V0IG9mIGZpbGVzLlxuICAgKiBAcGFyYW0gZ2xvYiBHbG9iIHBhdHRlcm4gdG8gbWF0Y2ggZmlsZXMgaW4gdGhlIHJlcG9cbiAgICogQHBhcmFtIGF0dHJpYnV0ZXMgQXR0cmlidXRlcyB0byBhc3NpZ24gdG8gdGhlc2UgZmlsZXMuXG4gICAqL1xuICBwdWJsaWMgYWRkQXR0cmlidXRlcyhnbG9iOiBzdHJpbmcsIC4uLmF0dHJpYnV0ZXM6IHN0cmluZ1tdKSB7XG4gICAgaWYgKCF0aGlzLmF0dHJpYnV0ZXMuaGFzKGdsb2IpKSB7XG4gICAgICB0aGlzLmF0dHJpYnV0ZXMuc2V0KGdsb2IsIG5ldyBTZXQoKSk7XG4gICAgfVxuICAgIGNvbnN0IHNldCA9IHRoaXMuYXR0cmlidXRlcy5nZXQoZ2xvYikhO1xuICAgIGZvciAoY29uc3QgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcbiAgICAgIHNldC5hZGQoYXR0cmlidXRlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc3ludGhlc2l6ZUNvbnRlbnQoXzogSVJlc29sdmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAvLyBXZSBjYW4gYXNzdW1lIHRoZSBmaWxlIG1hcCBpcyBuZXZlciBlbXB0eS5cbiAgICBjb25zdCBlbnRyaWVzID0gQXJyYXkuZnJvbSh0aGlzLmF0dHJpYnV0ZXMuZW50cmllcygpKS5zb3J0KChbbF0sIFtyXSkgPT5cbiAgICAgIGwubG9jYWxlQ29tcGFyZShyKVxuICAgICk7XG5cbiAgICBpZiAoZW50cmllcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLih0aGlzLm1hcmtlciA/IFtgIyAke3RoaXMubWFya2VyfWBdIDogW10pLFxuICAgICAgXCJcIixcbiAgICAgIC4uLmVudHJpZXMubWFwKFxuICAgICAgICAoW25hbWUsIGF0dHJpYnV0ZXNdKSA9PiBgJHtuYW1lfSAke0FycmF5LmZyb20oYXR0cmlidXRlcykuam9pbihcIiBcIil9YFxuICAgICAgKSxcbiAgICBdLmpvaW4oXCJcXG5cIik7XG4gIH1cbn1cbiJdfQ==
@@ -64,5 +64,5 @@ class AutoApprove extends component_1.Component {
64
64
  }
65
65
  exports.AutoApprove = AutoApprove;
66
66
  _a = JSII_RTTI_SYMBOL_1;
67
- AutoApprove[_a] = { fqn: "projen.github.AutoApprove", version: "0.58.10" };
67
+ AutoApprove[_a] = { fqn: "projen.github.AutoApprove", version: "0.58.13" };
68
68
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1hcHByb3ZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dpdGh1Yi9hdXRvLWFwcHJvdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0Q0FBeUM7QUFFekMsdURBQXVEO0FBeUN2RDs7R0FFRztBQUNILE1BQWEsV0FBWSxTQUFRLHFCQUFTO0lBR3hDLFlBQVksTUFBYyxFQUFFLFVBQThCLEVBQUU7UUFDMUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV0QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksY0FBYyxDQUFDO1FBQzdDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFdEUsSUFBSSxTQUFTLEdBQUcsc0RBQXNELElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQztRQUNyRixJQUFJLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3hCLFNBQVMsSUFBSSxPQUFPLENBQUM7WUFDckIsU0FBUyxJQUFJLFNBQVM7aUJBQ25CLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsNENBQTRDLENBQUMsR0FBRyxDQUFDO2lCQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEIsU0FBUyxJQUFJLEdBQUcsQ0FBQztTQUNsQjtRQUVELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksY0FBYyxDQUFDO1FBRWhELE1BQU0sVUFBVSxHQUFRO1lBQ3RCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDO1lBQzNDLFdBQVcsRUFBRTtnQkFDWCxZQUFZLEVBQUUsK0JBQWEsQ0FBQyxLQUFLO2FBQ2xDO1lBQ0QsRUFBRSxFQUFFLFNBQVM7WUFDYixLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsSUFBSSxFQUFFLGtDQUFrQztvQkFDeEMsSUFBSSxFQUFFO3dCQUNKLGNBQWMsRUFBRSxnQkFBZ0IsTUFBTSxLQUFLO3FCQUM1QztpQkFDRjthQUNGO1NBQ0YsQ0FBQztRQUVGLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDcEQsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNWLDhFQUE4RTtZQUM5RSxpRkFBaUY7WUFDakYsaUZBQWlGO1lBQ2pGLG1GQUFtRjtZQUNuRixtRkFBbUY7WUFDbkYsd0NBQXdDO1lBQ3hDLEVBQUU7WUFDRixrRkFBa0Y7WUFDbEYsd0ZBQXdGO1lBQ3hGLGdGQUFnRjtZQUNoRixpQkFBaUIsRUFBRTtnQkFDakIsS0FBSyxFQUFFO29CQUNMLFNBQVM7b0JBQ1QsUUFBUTtvQkFDUixhQUFhO29CQUNiLFVBQVU7b0JBQ1Ysa0JBQWtCO2lCQUNuQjthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7O0FBM0RILGtDQTREQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IEdpdEh1YiB9IGZyb20gXCIuL2dpdGh1YlwiO1xuaW1wb3J0IHsgSm9iLCBKb2JQZXJtaXNzaW9uIH0gZnJvbSBcIi4vd29ya2Zsb3dzLW1vZGVsXCI7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgJ0F1dG9BcHByb3ZlJ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9BcHByb3ZlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBPbmx5IHB1bGwgcmVxdWVzdHMgYXV0aG9yZWQgYnkgdGhlc2UgR2l0aHViIHVzZXJuYW1lcyB3aWxsIGJlIGF1dG8tYXBwcm92ZWQuXG4gICAqIEBkZWZhdWx0IFsnZ2l0aHViLWJvdCddXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkVXNlcm5hbWVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE9ubHkgcHVsbCByZXF1ZXN0cyB3aXRoIHRoaXMgbGFiZWwgd2lsbCBiZSBhdXRvLWFwcHJvdmVkLlxuICAgKiBAZGVmYXVsdCAnYXV0by1hcHByb3ZlJ1xuICAgKi9cbiAgcmVhZG9ubHkgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgR2l0SHViIHNlY3JldCBuYW1lIHdoaWNoIGNvbnRhaW5zIGEgR2l0SHViIEFjY2VzcyBUb2tlblxuICAgKiB3aXRoIHdyaXRlIHBlcm1pc3Npb25zIGZvciB0aGUgYHB1bGxfcmVxdWVzdGAgc2NvcGUuXG4gICAqXG4gICAqIFRoaXMgdG9rZW4gaXMgdXNlZCB0byBhcHByb3ZlIHB1bGwgcmVxdWVzdHMuXG4gICAqXG4gICAqIEdpdGh1YiBmb3JiaWRzIGFuIGlkZW50aXR5IHRvIGFwcHJvdmUgaXRzIG93biBwdWxsIHJlcXVlc3QuXG4gICAqIElmIHlvdXIgcHJvamVjdCBwcm9kdWNlcyBhdXRvbWF0ZWQgcHVsbCByZXF1ZXN0cyB1c2luZyB0aGUgR2l0aHViIGRlZmF1bHQgdG9rZW4gLVxuICAgKiB7QGxpbmsgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9yZWZlcmVuY2UvYXV0aGVudGljYXRpb24taW4tYS13b3JrZmxvdyBgR0lUSFVCX1RPS0VOYCB9XG4gICAqIC0gdGhhdCB5b3Ugd291bGQgbGlrZSBhdXRvIGFwcHJvdmVkLCBzdWNoIGFzIHdoZW4gdXNpbmcgdGhlIGBkZXBzVXBncmFkZWAgcHJvcGVydHkgaW5cbiAgICogYE5vZGVQcm9qZWN0T3B0aW9uc2AsIHRoZW4geW91IG11c3QgdXNlIGEgZGlmZmVyZW50IHRva2VuIGhlcmUuXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiR0lUSFVCX1RPS0VOXCJcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBzZWxlY3Rpb24gbGFiZWxzXG4gICAqIEBkZWZhdWx0IFtcInVidW50dS1sYXRlc3RcIl1cbiAgICovXG4gIHJlYWRvbmx5IHJ1bnNPbj86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEF1dG8gYXBwcm92ZSBwdWxsIHJlcXVlc3RzIHRoYXQgbWVldCBhIGNyaXRlcmlhXG4gKi9cbmV4cG9ydCBjbGFzcyBBdXRvQXBwcm92ZSBleHRlbmRzIENvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSBsYWJlbDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGdpdGh1YjogR2l0SHViLCBvcHRpb25zOiBBdXRvQXBwcm92ZU9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKGdpdGh1Yi5wcm9qZWN0KTtcblxuICAgIHRoaXMubGFiZWwgPSBvcHRpb25zLmxhYmVsID8/IFwiYXV0by1hcHByb3ZlXCI7XG4gICAgY29uc3QgdXNlcm5hbWVzID0gb3B0aW9ucy5hbGxvd2VkVXNlcm5hbWVzID8/IFtcImdpdGh1Yi1hY3Rpb25zW2JvdF1cIl07XG5cbiAgICBsZXQgY29uZGl0aW9uID0gYGNvbnRhaW5zKGdpdGh1Yi5ldmVudC5wdWxsX3JlcXVlc3QubGFiZWxzLioubmFtZSwgJyR7dGhpcy5sYWJlbH0nKWA7XG4gICAgaWYgKHVzZXJuYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25kaXRpb24gKz0gXCIgJiYgKFwiO1xuICAgICAgY29uZGl0aW9uICs9IHVzZXJuYW1lc1xuICAgICAgICAubWFwKCh1KSA9PiBgZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC51c2VyLmxvZ2luID09ICcke3V9J2ApXG4gICAgICAgIC5qb2luKFwiIHx8IFwiKTtcbiAgICAgIGNvbmRpdGlvbiArPSBcIilcIjtcbiAgICB9XG5cbiAgICBjb25zdCBzZWNyZXQgPSBvcHRpb25zLnNlY3JldCA/PyBcIkdJVEhVQl9UT0tFTlwiO1xuXG4gICAgY29uc3QgYXBwcm92ZUpvYjogSm9iID0ge1xuICAgICAgcnVuc09uOiBvcHRpb25zLnJ1bnNPbiA/PyBbXCJ1YnVudHUtbGF0ZXN0XCJdLFxuICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgcHVsbFJlcXVlc3RzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgfSxcbiAgICAgIGlmOiBjb25kaXRpb24sXG4gICAgICBzdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgdXNlczogXCJobWFyci9hdXRvLWFwcHJvdmUtYWN0aW9uQHYyLjIuMVwiLFxuICAgICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAgIFwiZ2l0aHViLXRva2VuXCI6IGBcXCR7eyBzZWNyZXRzLiR7c2VjcmV0fSB9fWAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcblxuICAgIGNvbnN0IHdvcmtmbG93ID0gZ2l0aHViLmFkZFdvcmtmbG93KFwiYXV0by1hcHByb3ZlXCIpO1xuICAgIHdvcmtmbG93Lm9uKHtcbiAgICAgIC8vIFRoZSAncHVsbCByZXF1ZXN0JyBldmVudCBnaXZlcyB0aGUgd29ya2Zsb3cgJ3JlYWQtb25seScgcGVybWlzc2lvbnMgb24gc29tZVxuICAgICAgLy8gcHVsbCByZXF1ZXN0cyAoc3VjaCBhcyB0aGUgb25lcyBmcm9tIGRlcGVuZGFib3QpIHdoZW4gdXNpbmcgdGhlIGBHSVRIVUJfVE9LRU5gXG4gICAgICAvLyBzZWN1cml0eSB0b2tlbi4gVGhpcyBwcmV2ZW50cyB0aGUgd29ya2Zsb3cgZnJvbSBhcHByb3ZpbmcgdGhlc2UgcHVsbCByZXF1ZXN0cy5cbiAgICAgIC8vIEdpdGh1YiBoYXMgcGxhY2VkIHRoaXMgZ3VhcmQgc28gYXMgdG8gcHJldmVudCBzZWN1cml0eSBhdHRhY2tzIGJ5IHNpbXBseSBvcGVuaW5nXG4gICAgICAvLyBhIHB1bGwgcmVxdWVzdCBhbmQgdHJpZ2dlcmluZyBhIHdvcmtmbG93IG9uIGEgY29tbWl0IHRoYXQgd2FzIG5vdCB2ZXR0ZWQgdG8gbWFrZVxuICAgICAgLy8gdW5pbnRlbmRlZCBjaGFuZ2VzIHRvIHRoZSByZXBvc2l0b3J5LlxuICAgICAgLy9cbiAgICAgIC8vIEluc3RlYWQgdXNlIHRoZSAncHVsbCByZXF1ZXN0IHRhcmdldCcgZXZlbnQgaGVyZSB0aGF0IGdpdmVzIHRoZSBHaXRodWIgd29ya2Zsb3dcbiAgICAgIC8vICdyZWFkLXdyaXRlJyBwZXJtaXNzaW9ucy4gVGhpcyBpcyBzYWZlIGJlY2F1c2UsIHRoaXMgZXZlbnQsIHVubGlrZSB0aGUgJ3B1bGwgcmVxdWVzdCdcbiAgICAgIC8vIGV2ZW50IHJlZmVyZW5jZXMgdGhlIEJBU0UgY29tbWl0IG9mIHRoZSBwdWxsIHJlcXVlc3QgYW5kIG5vdCB0aGUgSEVBRCBjb21taXQuXG4gICAgICBwdWxsUmVxdWVzdFRhcmdldDoge1xuICAgICAgICB0eXBlczogW1xuICAgICAgICAgIFwibGFiZWxlZFwiLFxuICAgICAgICAgIFwib3BlbmVkXCIsXG4gICAgICAgICAgXCJzeW5jaHJvbml6ZVwiLFxuICAgICAgICAgIFwicmVvcGVuZWRcIixcbiAgICAgICAgICBcInJlYWR5X2Zvcl9yZXZpZXdcIixcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgd29ya2Zsb3cuYWRkSm9icyh7IGFwcHJvdmU6IGFwcHJvdmVKb2IgfSk7XG4gIH1cbn1cbiJdfQ==