projen 0.99.80 → 0.100.1

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 (225) hide show
  1. package/.jsii +1719 -3687
  2. package/BREAKING_CHANGES.md +855 -0
  3. package/lib/ai-instructions.d.ts +0 -1
  4. package/lib/ai-instructions.js +6 -12
  5. package/lib/awscdk/auto-discover.js +7 -14
  6. package/lib/awscdk/awscdk-app-java.d.ts +0 -7
  7. package/lib/awscdk/awscdk-app-java.js +28 -21
  8. package/lib/awscdk/awscdk-app-py.d.ts +0 -12
  9. package/lib/awscdk/awscdk-app-py.js +27 -24
  10. package/lib/awscdk/awscdk-app-ts.d.ts +0 -5
  11. package/lib/awscdk/awscdk-app-ts.js +57 -31
  12. package/lib/awscdk/awscdk-construct.d.ts +0 -26
  13. package/lib/awscdk/awscdk-construct.js +4 -44
  14. package/lib/awscdk/awscdk-deps-java.js +2 -6
  15. package/lib/awscdk/awscdk-deps-js.js +2 -7
  16. package/lib/awscdk/awscdk-deps-py.js +2 -7
  17. package/lib/awscdk/awscdk-deps.d.ts +1 -90
  18. package/lib/awscdk/awscdk-deps.js +68 -114
  19. package/lib/awscdk/cdk-config.d.ts +0 -21
  20. package/lib/awscdk/cdk-config.js +44 -51
  21. package/lib/awscdk/cdk-tasks.js +26 -4
  22. package/lib/awscdk/integration-test.js +10 -15
  23. package/lib/awscdk/internal.js +5 -2
  24. package/lib/awscdk/lambda-extension.js +4 -16
  25. package/lib/awscdk/lambda-function.d.ts +0 -10
  26. package/lib/awscdk/lambda-function.js +88 -78
  27. package/lib/awscdk/private/feature-flags-v2.const.d.ts +1 -1
  28. package/lib/awscdk/private/feature-flags-v2.const.js +2 -2
  29. package/lib/build/build-workflow.js +51 -6
  30. package/lib/builtin-example.task.d.ts +1 -0
  31. package/lib/builtin-example.task.js +2 -1
  32. package/lib/cdk/auto-discover-base.js +43 -8
  33. package/lib/cdk/construct-lib.js +2 -4
  34. package/lib/cdk/integration-test-base.js +26 -4
  35. package/lib/cdk/jsii-build.d.ts +0 -1
  36. package/lib/cdk/jsii-build.js +4 -4
  37. package/lib/cdk/jsii-docgen.js +2 -4
  38. package/lib/cdk/jsii-project.d.ts +12 -9
  39. package/lib/cdk/jsii-project.js +22 -7
  40. package/lib/cdk8s/auto-discover.js +3 -6
  41. package/lib/cdk8s/cdk8s-app-py.js +7 -4
  42. package/lib/cdk8s/cdk8s-app-ts.js +43 -6
  43. package/lib/cdk8s/cdk8s-construct.js +44 -5
  44. package/lib/cdk8s/cdk8s-deps-py.js +2 -4
  45. package/lib/cdk8s/cdk8s-deps.js +50 -5
  46. package/lib/cdk8s/integration-test.js +2 -4
  47. package/lib/cdktf/cdktf-construct.js +36 -5
  48. package/lib/circleci/circleci.js +66 -44
  49. package/lib/cleanup.js +38 -5
  50. package/lib/cli/cmds/new.js +51 -20
  51. package/lib/cli/cmds/run-task.js +107 -0
  52. package/lib/cli/{synth.d.ts → cmds/synth.d.ts} +0 -5
  53. package/lib/cli/cmds/synth.js +90 -0
  54. package/lib/cli/index.js +47 -22
  55. package/lib/cli/macros.js +35 -2
  56. package/lib/cli/task-runtime.d.ts +75 -0
  57. package/lib/cli/task-runtime.js +482 -0
  58. package/lib/cli/util.js +37 -4
  59. package/lib/common.d.ts +9 -0
  60. package/lib/common.js +11 -2
  61. package/lib/component.js +3 -4
  62. package/lib/dependencies.js +43 -12
  63. package/lib/dev-env.js +10 -4
  64. package/lib/docker-compose/docker-compose-service.js +54 -4
  65. package/lib/docker-compose/docker-compose.js +8 -4
  66. package/lib/file.js +60 -5
  67. package/lib/gitattributes.js +7 -5
  68. package/lib/github/actions-provider.js +3 -7
  69. package/lib/github/auto-approve.js +3 -4
  70. package/lib/github/auto-merge.js +3 -5
  71. package/lib/github/auto-queue.js +36 -5
  72. package/lib/github/dependabot.js +13 -4
  73. package/lib/github/dependency-review.js +2 -4
  74. package/lib/github/github-credentials.js +37 -5
  75. package/lib/github/github-project.d.ts +1 -32
  76. package/lib/github/github-project.js +30 -8
  77. package/lib/github/github.d.ts +0 -9
  78. package/lib/github/github.js +27 -14
  79. package/lib/github/index.js +24 -2
  80. package/lib/github/merge-queue.js +3 -4
  81. package/lib/github/mergify.d.ts +0 -7
  82. package/lib/github/mergify.js +6 -13
  83. package/lib/github/pr-template.js +2 -4
  84. package/lib/github/pull-request-backport.js +4 -4
  85. package/lib/github/pull-request-lint.js +4 -4
  86. package/lib/github/stale.js +2 -4
  87. package/lib/github/task-workflow-job.js +20 -4
  88. package/lib/github/task-workflow.js +4 -4
  89. package/lib/github/workflow-actions.d.ts +0 -8
  90. package/lib/github/workflow-actions.js +2 -14
  91. package/lib/github/workflow-jobs.js +2 -4
  92. package/lib/github/workflow-steps.js +2 -4
  93. package/lib/github/workflows-model.d.ts +0 -8
  94. package/lib/github/workflows-model.js +1 -1
  95. package/lib/github/workflows.js +39 -6
  96. package/lib/gitlab/configuration-model.d.ts +0 -4
  97. package/lib/gitlab/configuration-model.js +1 -1
  98. package/lib/gitlab/configuration.js +125 -41
  99. package/lib/gitlab/gitlab-configuration.js +3 -5
  100. package/lib/gitlab/nested-configuration.js +3 -4
  101. package/lib/gitpod.js +11 -7
  102. package/lib/ignore-file.js +5 -4
  103. package/lib/index.d.ts +1 -2
  104. package/lib/index.js +38 -18
  105. package/lib/ini.js +36 -5
  106. package/lib/inventory.d.ts +32 -23
  107. package/lib/inventory.js +37 -4
  108. package/lib/java/java-project.js +26 -4
  109. package/lib/java/junit.js +2 -4
  110. package/lib/java/maven-compile.js +2 -4
  111. package/lib/java/maven-packaging.js +6 -4
  112. package/lib/java/maven-sample.js +2 -4
  113. package/lib/java/pom.js +45 -12
  114. package/lib/java/projenrc.js +10 -4
  115. package/lib/javascript/biome/biome.js +48 -6
  116. package/lib/javascript/bundler.d.ts +0 -8
  117. package/lib/javascript/bundler.js +48 -11
  118. package/lib/javascript/eslint.d.ts +0 -13
  119. package/lib/javascript/eslint.js +38 -37
  120. package/lib/javascript/index.js +24 -2
  121. package/lib/javascript/jest.d.ts +0 -20
  122. package/lib/javascript/jest.js +71 -15
  123. package/lib/javascript/license-checker.js +3 -4
  124. package/lib/javascript/node-package.d.ts +0 -28
  125. package/lib/javascript/node-package.js +136 -38
  126. package/lib/javascript/node-project.d.ts +5 -76
  127. package/lib/javascript/node-project.js +88 -81
  128. package/lib/javascript/npm-config.js +7 -9
  129. package/lib/javascript/prettier.js +16 -4
  130. package/lib/javascript/projenrc.js +3 -4
  131. package/lib/javascript/render-options.d.ts +2 -2
  132. package/lib/javascript/render-options.js +36 -5
  133. package/lib/javascript/typescript-config.js +45 -8
  134. package/lib/javascript/upgrade-dependencies.js +56 -36
  135. package/lib/javascript/util.js +35 -2
  136. package/lib/javascript/yarnrc.d.ts +1 -28
  137. package/lib/javascript/yarnrc.js +3 -45
  138. package/lib/json-patch.js +3 -4
  139. package/lib/json.js +4 -5
  140. package/lib/license.js +37 -5
  141. package/lib/logger.js +14 -11
  142. package/lib/logging.js +10 -7
  143. package/lib/makefile.js +7 -4
  144. package/lib/object-file.js +19 -4
  145. package/lib/project-build.js +26 -4
  146. package/lib/project-tree.js +3 -4
  147. package/lib/project.d.ts +0 -35
  148. package/lib/project.js +105 -58
  149. package/lib/projects.js +37 -6
  150. package/lib/projenrc-json.d.ts +0 -10
  151. package/lib/projenrc-json.js +4 -13
  152. package/lib/projenrc.js +2 -4
  153. package/lib/python/index.js +24 -2
  154. package/lib/python/pip.js +5 -4
  155. package/lib/python/poetry.js +63 -7
  156. package/lib/python/projenrc.js +10 -4
  157. package/lib/python/pyproject-toml-file.js +2 -4
  158. package/lib/python/pytest-sample.js +2 -4
  159. package/lib/python/pytest.d.ts +0 -12
  160. package/lib/python/pytest.js +3 -5
  161. package/lib/python/python-project.js +33 -10
  162. package/lib/python/python-sample.js +2 -4
  163. package/lib/python/requirements-file.js +4 -5
  164. package/lib/python/setuppy.d.ts +0 -8
  165. package/lib/python/setuppy.js +3 -4
  166. package/lib/python/setuptools.js +8 -4
  167. package/lib/python/uv.js +11 -4
  168. package/lib/python/venv.js +45 -6
  169. package/lib/readme.js +2 -4
  170. package/lib/release/bump-version.js +36 -3
  171. package/lib/release/bump-version.task.js +35 -2
  172. package/lib/release/commit-tag-version.js +39 -3
  173. package/lib/release/publisher.d.ts +0 -49
  174. package/lib/release/publisher.js +24 -22
  175. package/lib/release/release-trigger.js +33 -4
  176. package/lib/release/release.d.ts +0 -24
  177. package/lib/release/release.js +66 -31
  178. package/lib/release/tag-version.js +35 -2
  179. package/lib/release/update-changelog.js +36 -3
  180. package/lib/renovatebot.js +14 -4
  181. package/lib/run-projenrc-json.task.js +35 -2
  182. package/lib/run-task.cjs +12631 -275
  183. package/lib/sample-file.js +43 -9
  184. package/lib/smithy/smithy-build.js +46 -1
  185. package/lib/source-code.js +6 -5
  186. package/lib/task-model.d.ts +10 -0
  187. package/lib/task-model.js +1 -1
  188. package/lib/task-runner.d.ts +25 -0
  189. package/lib/task-runner.js +100 -0
  190. package/lib/task.d.ts +0 -7
  191. package/lib/task.js +13 -13
  192. package/lib/tasks.d.ts +5 -9
  193. package/lib/tasks.js +64 -23
  194. package/lib/testing.js +2 -4
  195. package/lib/textfile.js +3 -4
  196. package/lib/toml.js +36 -5
  197. package/lib/typescript/projenrc-ts.js +8 -4
  198. package/lib/typescript/projenrc.js +6 -4
  199. package/lib/typescript/typescript-typedoc.js +2 -4
  200. package/lib/typescript/typescript.d.ts +0 -10
  201. package/lib/typescript/typescript.js +75 -29
  202. package/lib/util/synth.js +39 -6
  203. package/lib/util.js +38 -5
  204. package/lib/version.d.ts +0 -4
  205. package/lib/version.js +24 -10
  206. package/lib/vscode/devcontainer.js +11 -4
  207. package/lib/vscode/extensions.js +17 -18
  208. package/lib/vscode/launch-config.js +5 -6
  209. package/lib/vscode/settings.js +4 -4
  210. package/lib/vscode/vscode.js +5 -4
  211. package/lib/web/next.js +38 -8
  212. package/lib/web/postcss.js +5 -4
  213. package/lib/web/react.d.ts +0 -14
  214. package/lib/web/react.js +51 -25
  215. package/lib/web/tailwind.js +4 -4
  216. package/lib/xmlfile.js +2 -4
  217. package/lib/yaml.js +40 -5
  218. package/package.json +11 -12
  219. package/lib/cli/synth.js +0 -105
  220. package/lib/cli/tasks.js +0 -71
  221. package/lib/semver.d.ts +0 -34
  222. package/lib/semver.js +0 -56
  223. package/lib/task-runtime.d.ts +0 -34
  224. package/lib/task-runtime.js +0 -317
  225. /package/lib/cli/{tasks.d.ts → cmds/run-task.d.ts} +0 -0
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.discoverTaskCommands = discoverTaskCommands;
40
+ const chalk_1 = __importDefault(require("chalk"));
41
+ const helpers_1 = require("yargs/helpers");
42
+ const logging = __importStar(require("../../logging"));
43
+ /**
44
+ * Reads .projen/tasks.json and adds CLI commands for all tasks.
45
+ * @param ya yargs
46
+ */
47
+ function discoverTaskCommands(runtime, ya) {
48
+ const tasks = runtime.manifest.tasks ?? {};
49
+ for (const task of Object.values(tasks)) {
50
+ ya.command(task.name, task.description ?? "", taskCommandHandler(task));
51
+ }
52
+ function taskCommandHandler(task) {
53
+ return async (args) => {
54
+ const taskReceivesArgs = task.steps?.reduce((receiveArgs, step) => receiveArgs || (step.receiveArgs ?? false), false);
55
+ let taskArgs = [];
56
+ if (taskReceivesArgs) {
57
+ args.help(false);
58
+ args.strict(false);
59
+ args.strictCommands(false);
60
+ taskArgs = (0, helpers_1.hideBin)(process.argv).slice(1);
61
+ }
62
+ args.option("inspect", {
63
+ alias: "i",
64
+ desc: "show all steps in this task",
65
+ });
66
+ const argv = args.argv;
67
+ if (argv.inspect) {
68
+ return inspectTask(task.name);
69
+ }
70
+ else {
71
+ try {
72
+ await runtime.runTask(task.name, [], taskArgs);
73
+ }
74
+ catch (e) {
75
+ logging.error(e.message);
76
+ process.exit(1);
77
+ }
78
+ }
79
+ };
80
+ }
81
+ function inspectTask(name, indent = 0) {
82
+ const writeln = (s) => console.log(" ".repeat(indent) + s);
83
+ const task = runtime.tryFindTask(name);
84
+ if (!task) {
85
+ throw new Error(`${name}: unable to resolve subtask with name "${name}"`);
86
+ }
87
+ if (task.description) {
88
+ writeln(`${chalk_1.default.underline("description")}: ${task.description}`);
89
+ }
90
+ for (const [k, v] of Object.entries(task.env ?? {})) {
91
+ writeln(`${chalk_1.default.underline("env")}: ${k}=${v}`);
92
+ }
93
+ for (const step of task.steps ?? []) {
94
+ if (step.spawn) {
95
+ writeln(`- ${chalk_1.default.bold(step.spawn)}`);
96
+ inspectTask(step.spawn, indent + 2);
97
+ }
98
+ else if (step.exec) {
99
+ writeln(`- exec: ${step.exec}`);
100
+ }
101
+ else if (step.builtin) {
102
+ writeln(`- builtin: ${step.builtin}`);
103
+ }
104
+ }
105
+ }
106
+ }
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLXRhc2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpL2NtZHMvcnVuLXRhc2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXQSxvREFtRUM7QUE5RUQsa0RBQTBCO0FBRTFCLDJDQUF3QztBQUN4Qyx1REFBeUM7QUFJekM7OztHQUdHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsT0FBb0IsRUFBRSxFQUFjO0lBQ3ZFLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUMzQyxLQUFLLE1BQU0sSUFBSSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN4QyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsU0FBUyxrQkFBa0IsQ0FBQyxJQUFjO1FBQ3hDLE9BQU8sS0FBSyxFQUFFLElBQWdCLEVBQUUsRUFBRTtZQUNoQyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUN6QyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLEVBQ2pFLEtBQUssQ0FDTixDQUFDO1lBQ0YsSUFBSSxRQUFRLEdBQTJCLEVBQUUsQ0FBQztZQUMxQyxJQUFJLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzNCLFFBQVEsR0FBRyxJQUFBLGlCQUFPLEVBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1QyxDQUFDO1lBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUU7Z0JBQ3JCLEtBQUssRUFBRSxHQUFHO2dCQUNWLElBQUksRUFBRSw2QkFBNkI7YUFDcEMsQ0FBQyxDQUFDO1lBRUgsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUV2QixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDakIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUM7b0JBQ0gsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRCxDQUFDO2dCQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7b0JBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTLFdBQVcsQ0FBQyxJQUFZLEVBQUUsTUFBTSxHQUFHLENBQUM7UUFDM0MsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUVuRSxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxJQUFJLDBDQUEwQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQzVFLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixPQUFPLENBQUMsR0FBRyxlQUFLLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLENBQUM7UUFFRCxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDcEQsT0FBTyxDQUFDLEdBQUcsZUFBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBRUQsS0FBSyxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3BDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLGVBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLENBQUM7aUJBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3JCLE9BQU8sQ0FBQyxXQUFXLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2xDLENBQUM7aUJBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3hCLE9BQU8sQ0FBQyxjQUFjLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3hDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2hhbGsgZnJvbSBcImNoYWxrXCI7XG5pbXBvcnQgdHlwZSAqIGFzIHlhcmdzIGZyb20gXCJ5YXJnc1wiO1xuaW1wb3J0IHsgaGlkZUJpbiB9IGZyb20gXCJ5YXJncy9oZWxwZXJzXCI7XG5pbXBvcnQgKiBhcyBsb2dnaW5nIGZyb20gXCIuLi8uLi9sb2dnaW5nXCI7XG5pbXBvcnQgdHlwZSB7IFRhc2tTcGVjIH0gZnJvbSBcIi4uLy4uL3Rhc2stbW9kZWxcIjtcbmltcG9ydCB0eXBlIHsgVGFza1J1bnRpbWUgfSBmcm9tIFwiLi4vdGFzay1ydW50aW1lXCI7XG5cbi8qKlxuICogUmVhZHMgLnByb2plbi90YXNrcy5qc29uIGFuZCBhZGRzIENMSSBjb21tYW5kcyBmb3IgYWxsIHRhc2tzLlxuICogQHBhcmFtIHlhIHlhcmdzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkaXNjb3ZlclRhc2tDb21tYW5kcyhydW50aW1lOiBUYXNrUnVudGltZSwgeWE6IHlhcmdzLkFyZ3YpIHtcbiAgY29uc3QgdGFza3MgPSBydW50aW1lLm1hbmlmZXN0LnRhc2tzID8/IHt9O1xuICBmb3IgKGNvbnN0IHRhc2sgb2YgT2JqZWN0LnZhbHVlcyh0YXNrcykpIHtcbiAgICB5YS5jb21tYW5kKHRhc2submFtZSwgdGFzay5kZXNjcmlwdGlvbiA/PyBcIlwiLCB0YXNrQ29tbWFuZEhhbmRsZXIodGFzaykpO1xuICB9XG5cbiAgZnVuY3Rpb24gdGFza0NvbW1hbmRIYW5kbGVyKHRhc2s6IFRhc2tTcGVjKSB7XG4gICAgcmV0dXJuIGFzeW5jIChhcmdzOiB5YXJncy5Bcmd2KSA9PiB7XG4gICAgICBjb25zdCB0YXNrUmVjZWl2ZXNBcmdzID0gdGFzay5zdGVwcz8ucmVkdWNlKFxuICAgICAgICAocmVjZWl2ZUFyZ3MsIHN0ZXApID0+IHJlY2VpdmVBcmdzIHx8IChzdGVwLnJlY2VpdmVBcmdzID8/IGZhbHNlKSxcbiAgICAgICAgZmFsc2UsXG4gICAgICApO1xuICAgICAgbGV0IHRhc2tBcmdzOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+ID0gW107XG4gICAgICBpZiAodGFza1JlY2VpdmVzQXJncykge1xuICAgICAgICBhcmdzLmhlbHAoZmFsc2UpO1xuICAgICAgICBhcmdzLnN0cmljdChmYWxzZSk7XG4gICAgICAgIGFyZ3Muc3RyaWN0Q29tbWFuZHMoZmFsc2UpO1xuICAgICAgICB0YXNrQXJncyA9IGhpZGVCaW4ocHJvY2Vzcy5hcmd2KS5zbGljZSgxKTtcbiAgICAgIH1cblxuICAgICAgYXJncy5vcHRpb24oXCJpbnNwZWN0XCIsIHtcbiAgICAgICAgYWxpYXM6IFwiaVwiLFxuICAgICAgICBkZXNjOiBcInNob3cgYWxsIHN0ZXBzIGluIHRoaXMgdGFza1wiLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGFyZ3YgPSBhcmdzLmFyZ3Y7XG5cbiAgICAgIGlmIChhcmd2Lmluc3BlY3QpIHtcbiAgICAgICAgcmV0dXJuIGluc3BlY3RUYXNrKHRhc2submFtZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGF3YWl0IHJ1bnRpbWUucnVuVGFzayh0YXNrLm5hbWUsIFtdLCB0YXNrQXJncyk7XG4gICAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICAgIGxvZ2dpbmcuZXJyb3IoZS5tZXNzYWdlKTtcbiAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgZnVuY3Rpb24gaW5zcGVjdFRhc2sobmFtZTogc3RyaW5nLCBpbmRlbnQgPSAwKSB7XG4gICAgY29uc3Qgd3JpdGVsbiA9IChzOiBzdHJpbmcpID0+IGNvbnNvbGUubG9nKFwiIFwiLnJlcGVhdChpbmRlbnQpICsgcyk7XG5cbiAgICBjb25zdCB0YXNrID0gcnVudGltZS50cnlGaW5kVGFzayhuYW1lKTtcbiAgICBpZiAoIXRhc2spIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHtuYW1lfTogdW5hYmxlIHRvIHJlc29sdmUgc3VidGFzayB3aXRoIG5hbWUgXCIke25hbWV9XCJgKTtcbiAgICB9XG5cbiAgICBpZiAodGFzay5kZXNjcmlwdGlvbikge1xuICAgICAgd3JpdGVsbihgJHtjaGFsay51bmRlcmxpbmUoXCJkZXNjcmlwdGlvblwiKX06ICR7dGFzay5kZXNjcmlwdGlvbn1gKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFtrLCB2XSBvZiBPYmplY3QuZW50cmllcyh0YXNrLmVudiA/PyB7fSkpIHtcbiAgICAgIHdyaXRlbG4oYCR7Y2hhbGsudW5kZXJsaW5lKFwiZW52XCIpfTogJHtrfT0ke3Z9YCk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBzdGVwIG9mIHRhc2suc3RlcHMgPz8gW10pIHtcbiAgICAgIGlmIChzdGVwLnNwYXduKSB7XG4gICAgICAgIHdyaXRlbG4oYC0gJHtjaGFsay5ib2xkKHN0ZXAuc3Bhd24pfWApO1xuICAgICAgICBpbnNwZWN0VGFzayhzdGVwLnNwYXduLCBpbmRlbnQgKyAyKTtcbiAgICAgIH0gZWxzZSBpZiAoc3RlcC5leGVjKSB7XG4gICAgICAgIHdyaXRlbG4oYC0gZXhlYzogJHtzdGVwLmV4ZWN9YCk7XG4gICAgICB9IGVsc2UgaWYgKHN0ZXAuYnVpbHRpbikge1xuICAgICAgICB3cml0ZWxuKGAtIGJ1aWx0aW46ICR7c3RlcC5idWlsdGlufWApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -10,10 +10,5 @@ export interface SynthOptions {
10
10
  * @default false
11
11
  */
12
12
  readonly watch?: boolean;
13
- /**
14
- * The name of the .projenrc.js file to use instead of the default.
15
- * @default ".projenrc.js"
16
- */
17
- readonly rcfile?: string;
18
13
  }
19
14
  export declare function synth(runtime: TaskRuntime, options: SynthOptions): Promise<void>;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.synth = synth;
37
+ const fs = __importStar(require("fs"));
38
+ const logging = __importStar(require("../../logging"));
39
+ const project_1 = require("../../project");
40
+ async function synth(runtime, options) {
41
+ const workdir = runtime.workdir;
42
+ // if there are no tasks, we assume this is not a projen project (modern
43
+ // projects must at least have the "default" task).
44
+ if (runtime.tasks.length === 0) {
45
+ logging.error('Unable to find projen project. Use "projen new" to create a new project.');
46
+ process.exit(1);
47
+ }
48
+ // run synth once
49
+ const success = await trySynth();
50
+ if (options.watch) {
51
+ // if we are in watch mode, start the watch loop
52
+ watchLoop();
53
+ }
54
+ else if (!success) {
55
+ // make sure exit code is non-zero if we are not in watch mode
56
+ process.exit(1);
57
+ }
58
+ async function trySynth() {
59
+ // determine if post synthesis tasks should be executed (e.g. "yarn install").
60
+ process.env.PROJEN_DISABLE_POST = (!options.post).toString();
61
+ try {
62
+ const defaultTask = runtime.tasks.find((t) => t.name === project_1.Project.DEFAULT_TASK);
63
+ if (!defaultTask) {
64
+ throw new Error('Unable to find a task named "default"');
65
+ }
66
+ await runtime.runTask(defaultTask.name);
67
+ return true;
68
+ }
69
+ catch (e) {
70
+ logging.error(`Synthesis failed: ${e.message}`);
71
+ return false;
72
+ }
73
+ }
74
+ function watchLoop() {
75
+ logging.info(`Watching for changes in ${workdir}...`);
76
+ const watch = fs.watch(workdir, { recursive: true });
77
+ watch.on("change", (event) => {
78
+ // we only care about "change" events
79
+ if (event !== "change") {
80
+ return;
81
+ }
82
+ process.stdout.write("\x1Bc"); // clear screen
83
+ watch.close();
84
+ trySynth()
85
+ .then(() => watchLoop())
86
+ .catch(() => watchLoop());
87
+ });
88
+ }
89
+ }
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpL2NtZHMvc3ludGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQkEsc0JBMkRDO0FBOUVELHVDQUF5QjtBQUN6Qix1REFBeUM7QUFDekMsMkNBQXdDO0FBaUJqQyxLQUFLLFVBQVUsS0FBSyxDQUFDLE9BQW9CLEVBQUUsT0FBcUI7SUFDckUsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUVoQyx3RUFBd0U7SUFDeEUsbURBQW1EO0lBQ25ELElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0IsT0FBTyxDQUFDLEtBQUssQ0FDWCwwRUFBMEUsQ0FDM0UsQ0FBQztRQUNGLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELGlCQUFpQjtJQUNqQixNQUFNLE9BQU8sR0FBRyxNQUFNLFFBQVEsRUFBRSxDQUFDO0lBRWpDLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2xCLGdEQUFnRDtRQUNoRCxTQUFTLEVBQUUsQ0FBQztJQUNkLENBQUM7U0FBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsOERBQThEO1FBQzlELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELEtBQUssVUFBVSxRQUFRO1FBQ3JCLDhFQUE4RTtRQUM5RSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDN0QsSUFBSSxDQUFDO1lBQ0gsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3BDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLGlCQUFPLENBQUMsWUFBWSxDQUN2QyxDQUFDO1lBRUYsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDM0QsQ0FBQztZQUVELE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXNCLENBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3pELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCxTQUFTLFNBQVM7UUFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQywyQkFBMkIsT0FBTyxLQUFLLENBQUMsQ0FBQztRQUN0RCxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELEtBQUssQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDM0IscUNBQXFDO1lBQ3JDLElBQUksS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUN2QixPQUFPO1lBQ1QsQ0FBQztZQUVELE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZTtZQUM5QyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZCxRQUFRLEVBQUU7aUJBQ1AsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO2lCQUN2QixLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBsb2dnaW5nIGZyb20gXCIuLi8uLi9sb2dnaW5nXCI7XG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4uLy4uL3Byb2plY3RcIjtcbmltcG9ydCB0eXBlIHsgVGFza1J1bnRpbWUgfSBmcm9tIFwiLi4vdGFzay1ydW50aW1lXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3ludGhPcHRpb25zIHtcbiAgLyoqXG4gICAqIEV4ZWN1dGUgcG9zdCBzeW50aGVzaXMgY29tbWFuZHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHBvc3Q/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTdGFydCB3YXRjaGluZyAucHJvamVucmMuanMgYW5kIHJlLXN5bnRoIHdoZW4gY2hhbmdlZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHdhdGNoPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHN5bnRoKHJ1bnRpbWU6IFRhc2tSdW50aW1lLCBvcHRpb25zOiBTeW50aE9wdGlvbnMpIHtcbiAgY29uc3Qgd29ya2RpciA9IHJ1bnRpbWUud29ya2RpcjtcblxuICAvLyBpZiB0aGVyZSBhcmUgbm8gdGFza3MsIHdlIGFzc3VtZSB0aGlzIGlzIG5vdCBhIHByb2plbiBwcm9qZWN0IChtb2Rlcm5cbiAgLy8gcHJvamVjdHMgbXVzdCBhdCBsZWFzdCBoYXZlIHRoZSBcImRlZmF1bHRcIiB0YXNrKS5cbiAgaWYgKHJ1bnRpbWUudGFza3MubGVuZ3RoID09PSAwKSB7XG4gICAgbG9nZ2luZy5lcnJvcihcbiAgICAgICdVbmFibGUgdG8gZmluZCBwcm9qZW4gcHJvamVjdC4gVXNlIFwicHJvamVuIG5ld1wiIHRvIGNyZWF0ZSBhIG5ldyBwcm9qZWN0LicsXG4gICAgKTtcbiAgICBwcm9jZXNzLmV4aXQoMSk7XG4gIH1cblxuICAvLyBydW4gc3ludGggb25jZVxuICBjb25zdCBzdWNjZXNzID0gYXdhaXQgdHJ5U3ludGgoKTtcblxuICBpZiAob3B0aW9ucy53YXRjaCkge1xuICAgIC8vIGlmIHdlIGFyZSBpbiB3YXRjaCBtb2RlLCBzdGFydCB0aGUgd2F0Y2ggbG9vcFxuICAgIHdhdGNoTG9vcCgpO1xuICB9IGVsc2UgaWYgKCFzdWNjZXNzKSB7XG4gICAgLy8gbWFrZSBzdXJlIGV4aXQgY29kZSBpcyBub24temVybyBpZiB3ZSBhcmUgbm90IGluIHdhdGNoIG1vZGVcbiAgICBwcm9jZXNzLmV4aXQoMSk7XG4gIH1cblxuICBhc3luYyBmdW5jdGlvbiB0cnlTeW50aCgpIHtcbiAgICAvLyBkZXRlcm1pbmUgaWYgcG9zdCBzeW50aGVzaXMgdGFza3Mgc2hvdWxkIGJlIGV4ZWN1dGVkIChlLmcuIFwieWFybiBpbnN0YWxsXCIpLlxuICAgIHByb2Nlc3MuZW52LlBST0pFTl9ESVNBQkxFX1BPU1QgPSAoIW9wdGlvbnMucG9zdCkudG9TdHJpbmcoKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGVmYXVsdFRhc2sgPSBydW50aW1lLnRhc2tzLmZpbmQoXG4gICAgICAgICh0KSA9PiB0Lm5hbWUgPT09IFByb2plY3QuREVGQVVMVF9UQVNLLFxuICAgICAgKTtcblxuICAgICAgaWYgKCFkZWZhdWx0VGFzaykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBmaW5kIGEgdGFzayBuYW1lZCBcImRlZmF1bHRcIicpO1xuICAgICAgfVxuXG4gICAgICBhd2FpdCBydW50aW1lLnJ1blRhc2soZGVmYXVsdFRhc2submFtZSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBsb2dnaW5nLmVycm9yKGBTeW50aGVzaXMgZmFpbGVkOiAkeyhlIGFzIGFueSkubWVzc2FnZX1gKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiB3YXRjaExvb3AoKSB7XG4gICAgbG9nZ2luZy5pbmZvKGBXYXRjaGluZyBmb3IgY2hhbmdlcyBpbiAke3dvcmtkaXJ9Li4uYCk7XG4gICAgY29uc3Qgd2F0Y2ggPSBmcy53YXRjaCh3b3JrZGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB3YXRjaC5vbihcImNoYW5nZVwiLCAoZXZlbnQpID0+IHtcbiAgICAgIC8vIHdlIG9ubHkgY2FyZSBhYm91dCBcImNoYW5nZVwiIGV2ZW50c1xuICAgICAgaWYgKGV2ZW50ICE9PSBcImNoYW5nZVwiKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgcHJvY2Vzcy5zdGRvdXQud3JpdGUoXCJcXHgxQmNcIik7IC8vIGNsZWFyIHNjcmVlblxuICAgICAgd2F0Y2guY2xvc2UoKTtcbiAgICAgIHRyeVN5bnRoKClcbiAgICAgICAgLnRoZW4oKCkgPT4gd2F0Y2hMb29wKCkpXG4gICAgICAgIC5jYXRjaCgoKSA9PiB3YXRjaExvb3AoKSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
package/lib/cli/index.js CHANGED
@@ -1,24 +1,60 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const path_1 = require("path");
4
- const yargs = require("yargs");
5
- const new_1 = require("./cmds/new");
6
- const synth_1 = require("./synth");
7
- const tasks_1 = require("./tasks");
39
+ const yargs_1 = __importDefault(require("yargs"));
40
+ const helpers_1 = require("yargs/helpers");
8
41
  const common_1 = require("../common");
9
- const logging = require("../logging");
10
- const task_runtime_1 = require("../task-runtime");
42
+ const logging = __importStar(require("../logging"));
11
43
  const util_1 = require("../util");
44
+ const new_1 = __importDefault(require("./cmds/new"));
45
+ const run_task_1 = require("./cmds/run-task");
46
+ const synth_1 = require("./cmds/synth");
47
+ const task_runtime_1 = require("./task-runtime");
12
48
  async function main() {
13
- const ya = yargs;
49
+ const ya = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv));
14
50
  ya.command(new_1.default);
15
51
  const pathToProjenDir = (0, util_1.findUp)(common_1.PROJEN_DIR, process.cwd());
16
52
  const runtime = new task_runtime_1.TaskRuntime(pathToProjenDir ?? ".");
17
- (0, tasks_1.discoverTaskCommands)(runtime, ya);
53
+ (0, run_task_1.discoverTaskCommands)(runtime, ya);
18
54
  ya.recommendCommands();
19
55
  ya.strictCommands();
20
56
  ya.showHelpOnFail(false);
21
- ya.wrap(yargs.terminalWidth());
57
+ ya.wrap(ya.terminalWidth());
22
58
  ya.option("post", {
23
59
  type: "boolean",
24
60
  default: true,
@@ -31,16 +67,6 @@ async function main() {
31
67
  alias: "w",
32
68
  });
33
69
  ya.options("debug", { type: "boolean", default: false, desc: "Debug logs" });
34
- ya.options("rc", {
35
- deprecated: true,
36
- desc: "path to .projenrc.js file",
37
- // must be `defaultDescription` and not an actual `default` value,
38
- // since a default would make the CLI think --rc was passed
39
- // and later skip a perfectly fine modern default task.
40
- // The actual default value is set again later on.
41
- defaultDescription: (0, path_1.resolve)(common_1.DEFAULT_PROJEN_RC_JS_FILENAME),
42
- type: "string",
43
- });
44
70
  ya.completion();
45
71
  ya.help();
46
72
  // do not use the default yargs '--version' implementation since it is
@@ -68,7 +94,6 @@ async function main() {
68
94
  await (0, synth_1.synth)(runtime, {
69
95
  post: args.post,
70
96
  watch: args.watch,
71
- rcfile: args.rc,
72
97
  });
73
98
  }
74
99
  }
@@ -76,4 +101,4 @@ main().catch((e) => {
76
101
  console.error(e.stack);
77
102
  process.exit(1);
78
103
  });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0JBQStCO0FBQy9CLCtCQUErQjtBQUMvQixvQ0FBb0M7QUFDcEMsbUNBQWdDO0FBQ2hDLG1DQUErQztBQUMvQyxzQ0FJbUI7QUFDbkIsc0NBQXNDO0FBQ3RDLGtEQUE4QztBQUM5QyxrQ0FBc0Q7QUFFdEQsS0FBSyxVQUFVLElBQUk7SUFDakIsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLEVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBVSxDQUFDLENBQUM7SUFFdkIsTUFBTSxlQUFlLEdBQUcsSUFBQSxhQUFNLEVBQUMsbUJBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUMxRCxNQUFNLE9BQU8sR0FBRyxJQUFJLDBCQUFXLENBQUMsZUFBZSxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELElBQUEsNEJBQW9CLEVBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRWxDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3ZCLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNwQixFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDL0IsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDaEIsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsSUFBSTtRQUNiLElBQUksRUFBRSxpRkFBaUY7S0FDeEYsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7UUFDakIsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsS0FBSztRQUNkLElBQUksRUFBRSxxREFBcUQ7UUFDM0QsS0FBSyxFQUFFLEdBQUc7S0FDWCxDQUFDLENBQUM7SUFDSCxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUM3RSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRTtRQUNmLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLElBQUksRUFBRSwyQkFBMkI7UUFDakMsa0VBQWtFO1FBQ2xFLDJEQUEyRDtRQUMzRCx1REFBdUQ7UUFDdkQsa0RBQWtEO1FBQ2xELGtCQUFrQixFQUFFLElBQUEsY0FBTyxFQUFDLHNDQUE2QixDQUFDO1FBQzFELElBQUksRUFBRSxRQUFRO0tBQ2YsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ2hCLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVWLHNFQUFzRTtJQUN0RSxvREFBb0Q7SUFDcEQsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQixFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtRQUNuQixJQUFJLEVBQUUsU0FBUztRQUNmLFdBQVcsRUFBRSxxQkFBcUI7UUFDbEMsTUFBTSxFQUFFLEtBQUs7S0FDZCxDQUFDLENBQUM7SUFFSCxNQUFNLElBQUksR0FBRyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFFM0IsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7SUFDN0IsQ0FBQztJQUVELE1BQU0sV0FBVyxHQUFHLElBQUEsMEJBQW1CLEdBQUUsQ0FBQztJQUMxQyxJQUFJLFdBQVcsSUFBSSxXQUFXLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLElBQUksQ0FDVixnQ0FBZ0MsV0FBVyxtTEFBbUwsQ0FDL04sQ0FBQztJQUNKLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUFjLENBQUMsQ0FBQztZQUM1QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLENBQUM7UUFDRCxNQUFNLElBQUEsYUFBSyxFQUFDLE9BQU8sRUFBRTtZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQWU7WUFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFnQjtZQUM1QixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQVk7U0FDMUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUM7QUFFRCxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xCLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgKiBhcyB5YXJncyBmcm9tIFwieWFyZ3NcIjtcbmltcG9ydCBuZXdDb21tYW5kIGZyb20gXCIuL2NtZHMvbmV3XCI7XG5pbXBvcnQgeyBzeW50aCB9IGZyb20gXCIuL3N5bnRoXCI7XG5pbXBvcnQgeyBkaXNjb3ZlclRhc2tDb21tYW5kcyB9IGZyb20gXCIuL3Rhc2tzXCI7XG5pbXBvcnQge1xuICBQUk9KRU5fRElSLFxuICBERUZBVUxUX1BST0pFTl9SQ19KU19GSUxFTkFNRSxcbiAgUFJPSkVOX1ZFUlNJT04sXG59IGZyb20gXCIuLi9jb21tb25cIjtcbmltcG9ydCAqIGFzIGxvZ2dpbmcgZnJvbSBcIi4uL2xvZ2dpbmdcIjtcbmltcG9ydCB7IFRhc2tSdW50aW1lIH0gZnJvbSBcIi4uL3Rhc2stcnVudGltZVwiO1xuaW1wb3J0IHsgZmluZFVwLCBnZXROb2RlTWFqb3JWZXJzaW9uIH0gZnJvbSBcIi4uL3V0aWxcIjtcblxuYXN5bmMgZnVuY3Rpb24gbWFpbigpIHtcbiAgY29uc3QgeWEgPSB5YXJncztcbiAgeWEuY29tbWFuZChuZXdDb21tYW5kKTtcblxuICBjb25zdCBwYXRoVG9Qcm9qZW5EaXIgPSBmaW5kVXAoUFJPSkVOX0RJUiwgcHJvY2Vzcy5jd2QoKSk7XG4gIGNvbnN0IHJ1bnRpbWUgPSBuZXcgVGFza1J1bnRpbWUocGF0aFRvUHJvamVuRGlyID8/IFwiLlwiKTtcbiAgZGlzY292ZXJUYXNrQ29tbWFuZHMocnVudGltZSwgeWEpO1xuXG4gIHlhLnJlY29tbWVuZENvbW1hbmRzKCk7XG4gIHlhLnN0cmljdENvbW1hbmRzKCk7XG4gIHlhLnNob3dIZWxwT25GYWlsKGZhbHNlKTtcbiAgeWEud3JhcCh5YXJncy50ZXJtaW5hbFdpZHRoKCkpO1xuICB5YS5vcHRpb24oXCJwb3N0XCIsIHtcbiAgICB0eXBlOiBcImJvb2xlYW5cIixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIGRlc2M6IFwiUnVuIHBvc3Qtc3ludGhlc2lzIHN0ZXBzIHN1Y2ggYXMgaW5zdGFsbGluZyBkZXBlbmRlbmNpZXMuIFVzZSAtLW5vLXBvc3QgdG8gc2tpcFwiLFxuICB9KTtcbiAgeWEub3B0aW9uKFwid2F0Y2hcIiwge1xuICAgIHR5cGU6IFwiYm9vbGVhblwiLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgIGRlc2M6IFwiS2VlcCBydW5uaW5nIGFuZCByZXN5bnRoZXNpemUgd2hlbiBwcm9qZW5yYyBjaGFuZ2VzXCIsXG4gICAgYWxpYXM6IFwid1wiLFxuICB9KTtcbiAgeWEub3B0aW9ucyhcImRlYnVnXCIsIHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHQ6IGZhbHNlLCBkZXNjOiBcIkRlYnVnIGxvZ3NcIiB9KTtcbiAgeWEub3B0aW9ucyhcInJjXCIsIHtcbiAgICBkZXByZWNhdGVkOiB0cnVlLFxuICAgIGRlc2M6IFwicGF0aCB0byAucHJvamVucmMuanMgZmlsZVwiLFxuICAgIC8vIG11c3QgYmUgYGRlZmF1bHREZXNjcmlwdGlvbmAgYW5kIG5vdCBhbiBhY3R1YWwgYGRlZmF1bHRgIHZhbHVlLFxuICAgIC8vIHNpbmNlIGEgZGVmYXVsdCB3b3VsZCBtYWtlIHRoZSBDTEkgdGhpbmsgLS1yYyB3YXMgcGFzc2VkXG4gICAgLy8gYW5kIGxhdGVyIHNraXAgYSBwZXJmZWN0bHkgZmluZSBtb2Rlcm4gZGVmYXVsdCB0YXNrLlxuICAgIC8vIFRoZSBhY3R1YWwgZGVmYXVsdCB2YWx1ZSBpcyBzZXQgYWdhaW4gbGF0ZXIgb24uXG4gICAgZGVmYXVsdERlc2NyaXB0aW9uOiByZXNvbHZlKERFRkFVTFRfUFJPSkVOX1JDX0pTX0ZJTEVOQU1FKSxcbiAgICB0eXBlOiBcInN0cmluZ1wiLFxuICB9KTtcbiAgeWEuY29tcGxldGlvbigpO1xuICB5YS5oZWxwKCk7XG5cbiAgLy8gZG8gbm90IHVzZSB0aGUgZGVmYXVsdCB5YXJncyAnLS12ZXJzaW9uJyBpbXBsZW1lbnRhdGlvbiBzaW5jZSBpdCBpc1xuICAvLyBnbG9iYWwgYnkgZGVmYXVsdCAoaXQgYXBwZWFycyBvbiBhbGwgc3ViY29tbWFuZHMpXG4gIHlhLnZlcnNpb24oZmFsc2UpO1xuICB5YS5vcHRpb24oXCJ2ZXJzaW9uXCIsIHtcbiAgICB0eXBlOiBcImJvb2xlYW5cIixcbiAgICBkZXNjcmlwdGlvbjogXCJTaG93IHZlcnNpb24gbnVtYmVyXCIsXG4gICAgZ2xvYmFsOiBmYWxzZSxcbiAgfSk7XG5cbiAgY29uc3QgYXJncyA9IGF3YWl0IHlhLmFyZ3Y7XG5cbiAgaWYgKGFyZ3MuZGVidWcpIHtcbiAgICBwcm9jZXNzLmVudi5ERUJVRyA9IFwidHJ1ZVwiO1xuICB9XG5cbiAgY29uc3Qgbm9kZVZlcnNpb24gPSBnZXROb2RlTWFqb3JWZXJzaW9uKCk7XG4gIGlmIChub2RlVmVyc2lvbiAmJiBub2RlVmVyc2lvbiA8IDE2KSB7XG4gICAgbG9nZ2luZy53YXJuKFxuICAgICAgYFdBUk5JTkc6IFlvdSBhcmUgdXNpbmcgTm9kZSB2JHtub2RlVmVyc2lvbn0sIHdoaWNoIHJlYWNoZXMgZW5kIG9mIGxpZmUgb24gQXByaWwgMzAsIDIwMjMuIFN1cHBvcnQgZm9yIEVPTCBOb2RlIHJlbGVhc2VzIG1heSBiZSBkcm9wcGVkIGJ5IHByb2plbiBpbiB0aGUgZnV0dXJlLiBQbGVhc2UgY29uc2lkZXIgdXBncmFkaW5nIHRvIE5vZGUgPj0gMTYgYXMgc29vbiBhcyBwb3NzaWJsZS5gLFxuICAgICk7XG4gIH1cblxuICAvLyBubyBjb21tYW5kIG1lYW5zIHN5bnRoZXNpemVcbiAgaWYgKGFyZ3MuXy5sZW5ndGggPT09IDApIHtcbiAgICBpZiAoYXJncy52ZXJzaW9uKSB7XG4gICAgICBjb25zb2xlLmxvZyhQUk9KRU5fVkVSU0lPTik7XG4gICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgfVxuICAgIGF3YWl0IHN5bnRoKHJ1bnRpbWUsIHtcbiAgICAgIHBvc3Q6IGFyZ3MucG9zdCBhcyBib29sZWFuLFxuICAgICAgd2F0Y2g6IGFyZ3Mud2F0Y2ggYXMgYm9vbGVhbixcbiAgICAgIHJjZmlsZTogYXJncy5yYyBhcyBzdHJpbmcsXG4gICAgfSk7XG4gIH1cbn1cblxubWFpbigpLmNhdGNoKChlKSA9PiB7XG4gIGNvbnNvbGUuZXJyb3IoZS5zdGFjayk7XG4gIHByb2Nlc3MuZXhpdCgxKTtcbn0pO1xuIl19
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLDJDQUF3QztBQUN4QyxzQ0FBdUQ7QUFDdkQsb0RBQXNDO0FBQ3RDLGtDQUFzRDtBQUN0RCxxREFBb0M7QUFDcEMsOENBQXVEO0FBQ3ZELHdDQUFxQztBQUNyQyxpREFBNkM7QUFFN0MsS0FBSyxVQUFVLElBQUk7SUFDakIsTUFBTSxFQUFFLEdBQUcsSUFBQSxlQUFLLEVBQUMsSUFBQSxpQkFBTyxFQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBVSxDQUFDLENBQUM7SUFFdkIsTUFBTSxlQUFlLEdBQUcsSUFBQSxhQUFNLEVBQUMsbUJBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUMxRCxNQUFNLE9BQU8sR0FBRyxJQUFJLDBCQUFXLENBQUMsZUFBZSxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELElBQUEsK0JBQW9CLEVBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRWxDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3ZCLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNwQixFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDNUIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDaEIsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsSUFBSTtRQUNiLElBQUksRUFBRSxpRkFBaUY7S0FDeEYsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7UUFDakIsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsS0FBSztRQUNkLElBQUksRUFBRSxxREFBcUQ7UUFDM0QsS0FBSyxFQUFFLEdBQUc7S0FDWCxDQUFDLENBQUM7SUFDSCxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUM3RSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDaEIsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRVYsc0VBQXNFO0lBQ3RFLG9EQUFvRDtJQUNwRCxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xCLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQ25CLElBQUksRUFBRSxTQUFTO1FBQ2YsV0FBVyxFQUFFLHFCQUFxQjtRQUNsQyxNQUFNLEVBQUUsS0FBSztLQUNkLENBQUMsQ0FBQztJQUVILE1BQU0sSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztJQUUzQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTSxXQUFXLEdBQUcsSUFBQSwwQkFBbUIsR0FBRSxDQUFDO0lBQzFDLElBQUksV0FBVyxJQUFJLFdBQVcsR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUNwQyxPQUFPLENBQUMsSUFBSSxDQUNWLGdDQUFnQyxXQUFXLG1MQUFtTCxDQUMvTixDQUFDO0lBQ0osQ0FBQztJQUVELDhCQUE4QjtJQUM5QixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQWMsQ0FBQyxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEIsQ0FBQztRQUNELE1BQU0sSUFBQSxhQUFLLEVBQUMsT0FBTyxFQUFFO1lBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBZTtZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQWdCO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsQixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB5YXJncyBmcm9tIFwieWFyZ3NcIjtcbmltcG9ydCB7IGhpZGVCaW4gfSBmcm9tIFwieWFyZ3MvaGVscGVyc1wiO1xuaW1wb3J0IHsgUFJPSkVOX0RJUiwgUFJPSkVOX1ZFUlNJT04gfSBmcm9tIFwiLi4vY29tbW9uXCI7XG5pbXBvcnQgKiBhcyBsb2dnaW5nIGZyb20gXCIuLi9sb2dnaW5nXCI7XG5pbXBvcnQgeyBmaW5kVXAsIGdldE5vZGVNYWpvclZlcnNpb24gfSBmcm9tIFwiLi4vdXRpbFwiO1xuaW1wb3J0IG5ld0NvbW1hbmQgZnJvbSBcIi4vY21kcy9uZXdcIjtcbmltcG9ydCB7IGRpc2NvdmVyVGFza0NvbW1hbmRzIH0gZnJvbSBcIi4vY21kcy9ydW4tdGFza1wiO1xuaW1wb3J0IHsgc3ludGggfSBmcm9tIFwiLi9jbWRzL3N5bnRoXCI7XG5pbXBvcnQgeyBUYXNrUnVudGltZSB9IGZyb20gXCIuL3Rhc2stcnVudGltZVwiO1xuXG5hc3luYyBmdW5jdGlvbiBtYWluKCkge1xuICBjb25zdCB5YSA9IHlhcmdzKGhpZGVCaW4ocHJvY2Vzcy5hcmd2KSk7XG4gIHlhLmNvbW1hbmQobmV3Q29tbWFuZCk7XG5cbiAgY29uc3QgcGF0aFRvUHJvamVuRGlyID0gZmluZFVwKFBST0pFTl9ESVIsIHByb2Nlc3MuY3dkKCkpO1xuICBjb25zdCBydW50aW1lID0gbmV3IFRhc2tSdW50aW1lKHBhdGhUb1Byb2plbkRpciA/PyBcIi5cIik7XG4gIGRpc2NvdmVyVGFza0NvbW1hbmRzKHJ1bnRpbWUsIHlhKTtcblxuICB5YS5yZWNvbW1lbmRDb21tYW5kcygpO1xuICB5YS5zdHJpY3RDb21tYW5kcygpO1xuICB5YS5zaG93SGVscE9uRmFpbChmYWxzZSk7XG4gIHlhLndyYXAoeWEudGVybWluYWxXaWR0aCgpKTtcbiAgeWEub3B0aW9uKFwicG9zdFwiLCB7XG4gICAgdHlwZTogXCJib29sZWFuXCIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICBkZXNjOiBcIlJ1biBwb3N0LXN5bnRoZXNpcyBzdGVwcyBzdWNoIGFzIGluc3RhbGxpbmcgZGVwZW5kZW5jaWVzLiBVc2UgLS1uby1wb3N0IHRvIHNraXBcIixcbiAgfSk7XG4gIHlhLm9wdGlvbihcIndhdGNoXCIsIHtcbiAgICB0eXBlOiBcImJvb2xlYW5cIixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICBkZXNjOiBcIktlZXAgcnVubmluZyBhbmQgcmVzeW50aGVzaXplIHdoZW4gcHJvamVucmMgY2hhbmdlc1wiLFxuICAgIGFsaWFzOiBcIndcIixcbiAgfSk7XG4gIHlhLm9wdGlvbnMoXCJkZWJ1Z1wiLCB7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0OiBmYWxzZSwgZGVzYzogXCJEZWJ1ZyBsb2dzXCIgfSk7XG4gIHlhLmNvbXBsZXRpb24oKTtcbiAgeWEuaGVscCgpO1xuXG4gIC8vIGRvIG5vdCB1c2UgdGhlIGRlZmF1bHQgeWFyZ3MgJy0tdmVyc2lvbicgaW1wbGVtZW50YXRpb24gc2luY2UgaXQgaXNcbiAgLy8gZ2xvYmFsIGJ5IGRlZmF1bHQgKGl0IGFwcGVhcnMgb24gYWxsIHN1YmNvbW1hbmRzKVxuICB5YS52ZXJzaW9uKGZhbHNlKTtcbiAgeWEub3B0aW9uKFwidmVyc2lvblwiLCB7XG4gICAgdHlwZTogXCJib29sZWFuXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU2hvdyB2ZXJzaW9uIG51bWJlclwiLFxuICAgIGdsb2JhbDogZmFsc2UsXG4gIH0pO1xuXG4gIGNvbnN0IGFyZ3MgPSBhd2FpdCB5YS5hcmd2O1xuXG4gIGlmIChhcmdzLmRlYnVnKSB7XG4gICAgcHJvY2Vzcy5lbnYuREVCVUcgPSBcInRydWVcIjtcbiAgfVxuXG4gIGNvbnN0IG5vZGVWZXJzaW9uID0gZ2V0Tm9kZU1ham9yVmVyc2lvbigpO1xuICBpZiAobm9kZVZlcnNpb24gJiYgbm9kZVZlcnNpb24gPCAxNikge1xuICAgIGxvZ2dpbmcud2FybihcbiAgICAgIGBXQVJOSU5HOiBZb3UgYXJlIHVzaW5nIE5vZGUgdiR7bm9kZVZlcnNpb259LCB3aGljaCByZWFjaGVzIGVuZCBvZiBsaWZlIG9uIEFwcmlsIDMwLCAyMDIzLiBTdXBwb3J0IGZvciBFT0wgTm9kZSByZWxlYXNlcyBtYXkgYmUgZHJvcHBlZCBieSBwcm9qZW4gaW4gdGhlIGZ1dHVyZS4gUGxlYXNlIGNvbnNpZGVyIHVwZ3JhZGluZyB0byBOb2RlID49IDE2IGFzIHNvb24gYXMgcG9zc2libGUuYCxcbiAgICApO1xuICB9XG5cbiAgLy8gbm8gY29tbWFuZCBtZWFucyBzeW50aGVzaXplXG4gIGlmIChhcmdzLl8ubGVuZ3RoID09PSAwKSB7XG4gICAgaWYgKGFyZ3MudmVyc2lvbikge1xuICAgICAgY29uc29sZS5sb2coUFJPSkVOX1ZFUlNJT04pO1xuICAgICAgcHJvY2Vzcy5leGl0KDApO1xuICAgIH1cbiAgICBhd2FpdCBzeW50aChydW50aW1lLCB7XG4gICAgICBwb3N0OiBhcmdzLnBvc3QgYXMgYm9vbGVhbixcbiAgICAgIHdhdGNoOiBhcmdzLndhdGNoIGFzIGJvb2xlYW4sXG4gICAgfSk7XG4gIH1cbn1cblxubWFpbigpLmNhdGNoKChlKSA9PiB7XG4gIGNvbnNvbGUuZXJyb3IoZS5zdGFjayk7XG4gIHByb2Nlc3MuZXhpdCgxKTtcbn0pO1xuIl19
package/lib/cli/macros.js CHANGED
@@ -1,7 +1,40 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.tryProcessMacro = tryProcessMacro;
4
- const path = require("path");
37
+ const path = __importStar(require("path"));
5
38
  const util_1 = require("../util");
6
39
  function tryProcessMacro(cwd, macro) {
7
40
  if (!macro.startsWith("$")) {
@@ -80,4 +113,4 @@ function detectPackageManager() {
80
113
  }
81
114
  return "npm";
82
115
  }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFjcm9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9tYWNyb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSwwQ0E4QkM7QUFqQ0QsNkJBQTZCO0FBQzdCLGtDQUFnRTtBQUVoRSxTQUFnQixlQUFlLENBQUMsR0FBVyxFQUFFLEtBQWE7SUFDeEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMzQixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVuQyxRQUFRLEtBQUssRUFBRSxDQUFDO1FBQ2QsS0FBSyxVQUFVO1lBQ2IsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxhQUFhO1lBQ2hCLE1BQU0sTUFBTSxHQUFHLElBQUEsc0JBQWUsRUFBQywyQkFBMkIsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDckUsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQ1IsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxJQUFJLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUUsT0FBTyxzQkFBc0IsSUFBSSxJQUFJLE9BQU8sTUFBTSxDQUFDO1FBRXJELEtBQUssZ0JBQWdCO1lBQ25CLE9BQU8sZ0JBQWdCLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxJQUFJLE1BQU0sQ0FBQztRQUN0RCxLQUFLLGlCQUFpQjtZQUNwQixPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQixLQUFLLHFCQUFxQjtZQUN4QixPQUFPLElBQUEsMkJBQW9CLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkMsS0FBSyxrQkFBa0I7WUFDckIsT0FBTyxvQkFBb0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsR0FBVztJQUNoRCxPQUFPLENBQ0wsSUFBQSxzQkFBZSxFQUFDLCtCQUErQixHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQzlELElBQUEsc0JBQWUsRUFBQyx3Q0FBd0MsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUN4RSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEdBQVc7SUFDL0IsT0FBTyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLElBQUksaUJBQWlCLENBQUM7QUFDbEUsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBUyxvQkFBb0I7SUFDM0IsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsSUFBSSxFQUFFLENBQUM7SUFDMUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ1YsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM5QixJQUFJLElBQUksS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNwQixPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO1FBQzVELENBQUM7UUFDRCxJQUFJLElBQUksS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNwQixPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO1FBQ0QsSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDbkIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDbkIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUVELCtCQUErQjtJQUMvQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUM7SUFDaEQsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDOUIsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBleGVjT3JVbmRlZmluZWQsIGZvcm1hdEFzUHl0aG9uTW9kdWxlIH0gZnJvbSBcIi4uL3V0aWxcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRyeVByb2Nlc3NNYWNybyhjd2Q6IHN0cmluZywgbWFjcm86IHN0cmluZykge1xuICBpZiAoIW1hY3JvLnN0YXJ0c1dpdGgoXCIkXCIpKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IGJhc2VkaXIgPSBwYXRoLmJhc2VuYW1lKGN3ZCk7XG5cbiAgc3dpdGNoIChtYWNybykge1xuICAgIGNhc2UgXCIkQkFTRURJUlwiOlxuICAgICAgcmV0dXJuIGJhc2VkaXI7XG4gICAgY2FzZSBcIiRHSVRfUkVNT1RFXCI6XG4gICAgICBjb25zdCBvcmlnaW4gPSBleGVjT3JVbmRlZmluZWQoXCJnaXQgcmVtb3RlIGdldC11cmwgb3JpZ2luXCIsIHsgY3dkIH0pO1xuICAgICAgaWYgKG9yaWdpbikge1xuICAgICAgICByZXR1cm4gb3JpZ2luO1xuICAgICAgfVxuICAgICAgY29uc3Qgc2x1ZyA9XG4gICAgICAgIGdldEZyb21HaXRDb25maWcoY3dkLCBcImdpdGh1Yi51c2VyXCIpID8/IHJlc29sdmVFbWFpbChjd2QpLnNwbGl0KFwiQFwiKVswXTtcbiAgICAgIHJldHVybiBgaHR0cHM6Ly9naXRodWIuY29tLyR7c2x1Z30vJHtiYXNlZGlyfS5naXRgO1xuXG4gICAgY2FzZSBcIiRHSVRfVVNFUl9OQU1FXCI6XG4gICAgICByZXR1cm4gZ2V0RnJvbUdpdENvbmZpZyhjd2QsIFwidXNlci5uYW1lXCIpID8/IFwidXNlclwiO1xuICAgIGNhc2UgXCIkR0lUX1VTRVJfRU1BSUxcIjpcbiAgICAgIHJldHVybiByZXNvbHZlRW1haWwoY3dkKTtcbiAgICBjYXNlIFwiJFBZVEhPTl9NT0RVTEVfTkFNRVwiOlxuICAgICAgcmV0dXJuIGZvcm1hdEFzUHl0aG9uTW9kdWxlKGJhc2VkaXIpO1xuICAgIGNhc2UgXCIkUEFDS0FHRV9NQU5BR0VSXCI6XG4gICAgICByZXR1cm4gZGV0ZWN0UGFja2FnZU1hbmFnZXIoKTtcbiAgfVxuXG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHZhbHVlIGZyb20gZ2l0IGNvbmZpZy4gU2VhcmNoZXMgbG9jYWwgYW5kIHRoZW4gZ2xvYmFsIGdpdCBjb25maWcuXG4gKiBAcGFyYW0ga2V5IHRoZSBjb25maWcga2V5XG4gKi9cbmZ1bmN0aW9uIGdldEZyb21HaXRDb25maWcoY3dkOiBzdHJpbmcsIGtleTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIChcbiAgICBleGVjT3JVbmRlZmluZWQoYGdpdCBjb25maWcgLS1nZXQgLS1pbmNsdWRlcyAke2tleX1gLCB7IGN3ZCB9KSA/P1xuICAgIGV4ZWNPclVuZGVmaW5lZChgZ2l0IGNvbmZpZyAtLWdldCAtLWdsb2JhbCAtLWluY2x1ZGVzICR7a2V5fWAsIHsgY3dkIH0pXG4gICk7XG59XG5cbmZ1bmN0aW9uIHJlc29sdmVFbWFpbChjd2Q6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXRGcm9tR2l0Q29uZmlnKGN3ZCwgXCJ1c2VyLmVtYWlsXCIpID8/IFwidXNlckBkb21haW4uY29tXCI7XG59XG5cbi8qKlxuICogRGV0ZWN0cyB0aGUgcGFja2FnZSBtYW5hZ2VyIHVzZWQgdG8gcnVuIGBwcm9qZW4gbmV3YC5cbiAqXG4gKiBVc2VzIGBucG1fY29uZmlnX3VzZXJfYWdlbnRgIChlLmcuIFwieWFybi80LjEuMCBucG0vPyBub2RlL3YyMC4wLjBcIikgdG9cbiAqIGlkZW50aWZ5IHRoZSBwYWNrYWdlIG1hbmFnZXIgYW5kIHZlcnNpb24uIEZhbGxzIGJhY2sgdG8gYG5wbV9leGVjcGF0aGAgaWZcbiAqIHRoZSB1c2VyIGFnZW50IGlzIG5vdCBzZXQuIERlZmF1bHRzIHRvIGBucG1gIHdoZW4gZGV0ZWN0aW9uIGZhaWxzLlxuICpcbiAqIEZvciB5YXJuLCB0aGUgdmVyc2lvbiBkZXRlcm1pbmVzIGNsYXNzaWMgKDEueCkgdnMgYmVycnkgKD49MikuXG4gKi9cbmZ1bmN0aW9uIGRldGVjdFBhY2thZ2VNYW5hZ2VyKCk6IHN0cmluZyB7XG4gIGNvbnN0IHVzZXJBZ2VudCA9IHByb2Nlc3MuZW52Lm5wbV9jb25maWdfdXNlcl9hZ2VudCA/PyBcIlwiO1xuICBjb25zdCBtYXRjaCA9IHVzZXJBZ2VudC5tYXRjaCgvXihcXHcrKVxcLyhcXGQrKS8pO1xuICBpZiAobWF0Y2gpIHtcbiAgICBjb25zdCBbLCBuYW1lLCBtYWpvcl0gPSBtYXRjaDtcbiAgICBpZiAobmFtZSA9PT0gXCJ5YXJuXCIpIHtcbiAgICAgIHJldHVybiBOdW1iZXIobWFqb3IpID49IDIgPyBcInlhcm5fYmVycnlcIiA6IFwieWFybl9jbGFzc2ljXCI7XG4gICAgfVxuICAgIGlmIChuYW1lID09PSBcInBucG1cIikge1xuICAgICAgcmV0dXJuIFwicG5wbVwiO1xuICAgIH1cbiAgICBpZiAobmFtZSA9PT0gXCJidW5cIikge1xuICAgICAgcmV0dXJuIFwiYnVuXCI7XG4gICAgfVxuICAgIGlmIChuYW1lID09PSBcIm5wbVwiKSB7XG4gICAgICByZXR1cm4gXCJucG1cIjtcbiAgICB9XG4gIH1cblxuICAvLyBGYWxsYmFjazogY2hlY2sgbnBtX2V4ZWNwYXRoXG4gIGNvbnN0IGV4ZWNQYXRoID0gcHJvY2Vzcy5lbnYubnBtX2V4ZWNwYXRoID8/IFwiXCI7XG4gIGlmIChleGVjUGF0aC5pbmNsdWRlcyhcInlhcm5cIikpIHtcbiAgICByZXR1cm4gXCJ5YXJuX2NsYXNzaWNcIjtcbiAgfVxuICBpZiAoZXhlY1BhdGguaW5jbHVkZXMoXCJwbnBtXCIpKSB7XG4gICAgcmV0dXJuIFwicG5wbVwiO1xuICB9XG4gIGlmIChleGVjUGF0aC5pbmNsdWRlcyhcImJ1blwiKSkge1xuICAgIHJldHVybiBcImJ1blwiO1xuICB9XG4gIHJldHVybiBcIm5wbVwiO1xufVxuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFjcm9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9tYWNyb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSwwQ0E4QkM7QUFqQ0QsMkNBQTZCO0FBQzdCLGtDQUFnRTtBQUVoRSxTQUFnQixlQUFlLENBQUMsR0FBVyxFQUFFLEtBQWE7SUFDeEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMzQixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVuQyxRQUFRLEtBQUssRUFBRSxDQUFDO1FBQ2QsS0FBSyxVQUFVO1lBQ2IsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxhQUFhO1lBQ2hCLE1BQU0sTUFBTSxHQUFHLElBQUEsc0JBQWUsRUFBQywyQkFBMkIsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDckUsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQ1IsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxJQUFJLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUUsT0FBTyxzQkFBc0IsSUFBSSxJQUFJLE9BQU8sTUFBTSxDQUFDO1FBRXJELEtBQUssZ0JBQWdCO1lBQ25CLE9BQU8sZ0JBQWdCLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxJQUFJLE1BQU0sQ0FBQztRQUN0RCxLQUFLLGlCQUFpQjtZQUNwQixPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQixLQUFLLHFCQUFxQjtZQUN4QixPQUFPLElBQUEsMkJBQW9CLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkMsS0FBSyxrQkFBa0I7WUFDckIsT0FBTyxvQkFBb0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsR0FBVztJQUNoRCxPQUFPLENBQ0wsSUFBQSxzQkFBZSxFQUFDLCtCQUErQixHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQzlELElBQUEsc0JBQWUsRUFBQyx3Q0FBd0MsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUN4RSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEdBQVc7SUFDL0IsT0FBTyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLElBQUksaUJBQWlCLENBQUM7QUFDbEUsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBUyxvQkFBb0I7SUFDM0IsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsSUFBSSxFQUFFLENBQUM7SUFDMUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ1YsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM5QixJQUFJLElBQUksS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNwQixPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO1FBQzVELENBQUM7UUFDRCxJQUFJLElBQUksS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNwQixPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO1FBQ0QsSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDbkIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDbkIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUVELCtCQUErQjtJQUMvQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUM7SUFDaEQsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDOUIsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBleGVjT3JVbmRlZmluZWQsIGZvcm1hdEFzUHl0aG9uTW9kdWxlIH0gZnJvbSBcIi4uL3V0aWxcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRyeVByb2Nlc3NNYWNybyhjd2Q6IHN0cmluZywgbWFjcm86IHN0cmluZykge1xuICBpZiAoIW1hY3JvLnN0YXJ0c1dpdGgoXCIkXCIpKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IGJhc2VkaXIgPSBwYXRoLmJhc2VuYW1lKGN3ZCk7XG5cbiAgc3dpdGNoIChtYWNybykge1xuICAgIGNhc2UgXCIkQkFTRURJUlwiOlxuICAgICAgcmV0dXJuIGJhc2VkaXI7XG4gICAgY2FzZSBcIiRHSVRfUkVNT1RFXCI6XG4gICAgICBjb25zdCBvcmlnaW4gPSBleGVjT3JVbmRlZmluZWQoXCJnaXQgcmVtb3RlIGdldC11cmwgb3JpZ2luXCIsIHsgY3dkIH0pO1xuICAgICAgaWYgKG9yaWdpbikge1xuICAgICAgICByZXR1cm4gb3JpZ2luO1xuICAgICAgfVxuICAgICAgY29uc3Qgc2x1ZyA9XG4gICAgICAgIGdldEZyb21HaXRDb25maWcoY3dkLCBcImdpdGh1Yi51c2VyXCIpID8/IHJlc29sdmVFbWFpbChjd2QpLnNwbGl0KFwiQFwiKVswXTtcbiAgICAgIHJldHVybiBgaHR0cHM6Ly9naXRodWIuY29tLyR7c2x1Z30vJHtiYXNlZGlyfS5naXRgO1xuXG4gICAgY2FzZSBcIiRHSVRfVVNFUl9OQU1FXCI6XG4gICAgICByZXR1cm4gZ2V0RnJvbUdpdENvbmZpZyhjd2QsIFwidXNlci5uYW1lXCIpID8/IFwidXNlclwiO1xuICAgIGNhc2UgXCIkR0lUX1VTRVJfRU1BSUxcIjpcbiAgICAgIHJldHVybiByZXNvbHZlRW1haWwoY3dkKTtcbiAgICBjYXNlIFwiJFBZVEhPTl9NT0RVTEVfTkFNRVwiOlxuICAgICAgcmV0dXJuIGZvcm1hdEFzUHl0aG9uTW9kdWxlKGJhc2VkaXIpO1xuICAgIGNhc2UgXCIkUEFDS0FHRV9NQU5BR0VSXCI6XG4gICAgICByZXR1cm4gZGV0ZWN0UGFja2FnZU1hbmFnZXIoKTtcbiAgfVxuXG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHZhbHVlIGZyb20gZ2l0IGNvbmZpZy4gU2VhcmNoZXMgbG9jYWwgYW5kIHRoZW4gZ2xvYmFsIGdpdCBjb25maWcuXG4gKiBAcGFyYW0ga2V5IHRoZSBjb25maWcga2V5XG4gKi9cbmZ1bmN0aW9uIGdldEZyb21HaXRDb25maWcoY3dkOiBzdHJpbmcsIGtleTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIChcbiAgICBleGVjT3JVbmRlZmluZWQoYGdpdCBjb25maWcgLS1nZXQgLS1pbmNsdWRlcyAke2tleX1gLCB7IGN3ZCB9KSA/P1xuICAgIGV4ZWNPclVuZGVmaW5lZChgZ2l0IGNvbmZpZyAtLWdldCAtLWdsb2JhbCAtLWluY2x1ZGVzICR7a2V5fWAsIHsgY3dkIH0pXG4gICk7XG59XG5cbmZ1bmN0aW9uIHJlc29sdmVFbWFpbChjd2Q6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXRGcm9tR2l0Q29uZmlnKGN3ZCwgXCJ1c2VyLmVtYWlsXCIpID8/IFwidXNlckBkb21haW4uY29tXCI7XG59XG5cbi8qKlxuICogRGV0ZWN0cyB0aGUgcGFja2FnZSBtYW5hZ2VyIHVzZWQgdG8gcnVuIGBwcm9qZW4gbmV3YC5cbiAqXG4gKiBVc2VzIGBucG1fY29uZmlnX3VzZXJfYWdlbnRgIChlLmcuIFwieWFybi80LjEuMCBucG0vPyBub2RlL3YyMC4wLjBcIikgdG9cbiAqIGlkZW50aWZ5IHRoZSBwYWNrYWdlIG1hbmFnZXIgYW5kIHZlcnNpb24uIEZhbGxzIGJhY2sgdG8gYG5wbV9leGVjcGF0aGAgaWZcbiAqIHRoZSB1c2VyIGFnZW50IGlzIG5vdCBzZXQuIERlZmF1bHRzIHRvIGBucG1gIHdoZW4gZGV0ZWN0aW9uIGZhaWxzLlxuICpcbiAqIEZvciB5YXJuLCB0aGUgdmVyc2lvbiBkZXRlcm1pbmVzIGNsYXNzaWMgKDEueCkgdnMgYmVycnkgKD49MikuXG4gKi9cbmZ1bmN0aW9uIGRldGVjdFBhY2thZ2VNYW5hZ2VyKCk6IHN0cmluZyB7XG4gIGNvbnN0IHVzZXJBZ2VudCA9IHByb2Nlc3MuZW52Lm5wbV9jb25maWdfdXNlcl9hZ2VudCA/PyBcIlwiO1xuICBjb25zdCBtYXRjaCA9IHVzZXJBZ2VudC5tYXRjaCgvXihcXHcrKVxcLyhcXGQrKS8pO1xuICBpZiAobWF0Y2gpIHtcbiAgICBjb25zdCBbLCBuYW1lLCBtYWpvcl0gPSBtYXRjaDtcbiAgICBpZiAobmFtZSA9PT0gXCJ5YXJuXCIpIHtcbiAgICAgIHJldHVybiBOdW1iZXIobWFqb3IpID49IDIgPyBcInlhcm5fYmVycnlcIiA6IFwieWFybl9jbGFzc2ljXCI7XG4gICAgfVxuICAgIGlmIChuYW1lID09PSBcInBucG1cIikge1xuICAgICAgcmV0dXJuIFwicG5wbVwiO1xuICAgIH1cbiAgICBpZiAobmFtZSA9PT0gXCJidW5cIikge1xuICAgICAgcmV0dXJuIFwiYnVuXCI7XG4gICAgfVxuICAgIGlmIChuYW1lID09PSBcIm5wbVwiKSB7XG4gICAgICByZXR1cm4gXCJucG1cIjtcbiAgICB9XG4gIH1cblxuICAvLyBGYWxsYmFjazogY2hlY2sgbnBtX2V4ZWNwYXRoXG4gIGNvbnN0IGV4ZWNQYXRoID0gcHJvY2Vzcy5lbnYubnBtX2V4ZWNwYXRoID8/IFwiXCI7XG4gIGlmIChleGVjUGF0aC5pbmNsdWRlcyhcInlhcm5cIikpIHtcbiAgICByZXR1cm4gXCJ5YXJuX2NsYXNzaWNcIjtcbiAgfVxuICBpZiAoZXhlY1BhdGguaW5jbHVkZXMoXCJwbnBtXCIpKSB7XG4gICAgcmV0dXJuIFwicG5wbVwiO1xuICB9XG4gIGlmIChleGVjUGF0aC5pbmNsdWRlcyhcImJ1blwiKSkge1xuICAgIHJldHVybiBcImJ1blwiO1xuICB9XG4gIHJldHVybiBcIm5wbVwiO1xufVxuIl19
@@ -0,0 +1,75 @@
1
+ import type { TasksManifest, TaskSpec } from "../task-model";
2
+ /**
3
+ * The runtime component of the tasks engine.
4
+ */
5
+ export declare class TaskRuntime {
6
+ /**
7
+ * The project-relative path of the tasks manifest file.
8
+ */
9
+ static readonly MANIFEST_FILE: string;
10
+ /**
11
+ * One-shot entrypoint for the standalone task runner.
12
+ *
13
+ * Creates a runtime rooted at the current working directory, runs the named
14
+ * task, and converts any failure into a non-zero process exit code. This is
15
+ * the single line invoked by the bundled `scripts/run-task.cjs` that
16
+ * "projen eject" emits, which keeps the generated bundle footer trivial.
17
+ *
18
+ * @param name The name of the task to run. Defaults to `process.argv[2]`.
19
+ */
20
+ static main(name?: string): Promise<void>;
21
+ /**
22
+ * The contents of tasks.json
23
+ */
24
+ private _manifest;
25
+ /**
26
+ * The raw contents of the currently loaded manifest, used to detect changes
27
+ * on disk so the runtime can reload a regenerated manifest mid-run.
28
+ */
29
+ private _identity?;
30
+ /**
31
+ * The root directory of the project and the cwd for executing tasks.
32
+ */
33
+ readonly workdir: string;
34
+ constructor(workdir: string);
35
+ /**
36
+ * The contents of tasks.json
37
+ */
38
+ get manifest(): TasksManifest;
39
+ /**
40
+ * The absolute path of the tasks manifest file.
41
+ */
42
+ private get manifestPath();
43
+ /**
44
+ * The tasks in this project.
45
+ */
46
+ get tasks(): TaskSpec[];
47
+ /**
48
+ * Find a task by name, or `undefined` if not found.
49
+ */
50
+ tryFindTask(name: string): TaskSpec | undefined;
51
+ /**
52
+ * Runs the task.
53
+ * @param name The task name.
54
+ */
55
+ runTask(name: string, parents?: string[], args?: Array<string | number>, env?: {
56
+ [name: string]: string;
57
+ }): Promise<void>;
58
+ /**
59
+ * Re-reads the tasks manifest from disk if its contents changed since it was
60
+ * last loaded, verifying its schema version along the way.
61
+ *
62
+ * Change detection compares the raw file contents, so an unchanged manifest
63
+ * is not re-verified or re-adopted.
64
+ */
65
+ private reloadManifestIfChanged;
66
+ /**
67
+ * Validates a freshly read manifest:
68
+ *
69
+ * - Legacy manifests (no `manifestVersion`) are accepted as-is for backwards
70
+ * compatibility.
71
+ * - Manifests from a newer projen (a higher `manifestVersion`) are accepted
72
+ * with a warning, since this runtime may not understand the schema.
73
+ */
74
+ private verifyManifest;
75
+ }