@decohere/create 0.0.1-dev.18 → 0.0.1-dev.20

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 (124) hide show
  1. package/commonjs/src/cli.js +10 -6
  2. package/commonjs/src/domain/prompt.js +55 -0
  3. package/commonjs/src/models/package-json.model.js +2 -2
  4. package/commonjs/src/runner.js +56 -0
  5. package/commonjs/src/version.js +32 -0
  6. package/commonjs/src/webapi/features/auth.feature.js +2 -2
  7. package/commonjs/src/webapi/features/database.feature.js +3 -3
  8. package/commonjs/src/webapi/features/finalize.feature.js +11 -6
  9. package/commonjs/src/webapi/features/postman.feature.js +4 -4
  10. package/commonjs/src/webapi/models/api-package-json.model.js +2 -2
  11. package/es6/src/cli.js +10 -6
  12. package/es6/src/domain/prompt.js +37 -0
  13. package/es6/src/models/package-json.model.js +2 -2
  14. package/es6/src/runner.js +55 -0
  15. package/es6/src/version.js +22 -0
  16. package/es6/src/webapi/features/auth.feature.js +2 -2
  17. package/es6/src/webapi/features/database.feature.js +3 -3
  18. package/es6/src/webapi/features/finalize.feature.js +11 -6
  19. package/es6/src/webapi/features/postman.feature.js +4 -4
  20. package/es6/src/webapi/models/api-package-json.model.js +2 -2
  21. package/package.json +2 -2
  22. package/types/src/runner.d.ts +13 -0
  23. package/commonjs/v1/cli.js +0 -15
  24. package/commonjs/v1/domain/class-model.js +0 -106
  25. package/commonjs/v1/domain/compose.model.js +0 -74
  26. package/commonjs/v1/domain/context.js +0 -53
  27. package/commonjs/v1/domain/devcontainer.model.js +0 -116
  28. package/commonjs/v1/domain/dockerfile.model.js +0 -62
  29. package/commonjs/v1/domain/feature.js +0 -19
  30. package/commonjs/v1/domain/import-map.js +0 -74
  31. package/commonjs/v1/domain/index.js +0 -68
  32. package/commonjs/v1/domain/prompt.js +0 -45
  33. package/commonjs/v1/domain/workflow.js +0 -37
  34. package/commonjs/v1/features/api-core/feature.js +0 -103
  35. package/commonjs/v1/features/api-core/hello-controller.model.js +0 -100
  36. package/commonjs/v1/features/api-core/main-ts.model.js +0 -85
  37. package/commonjs/v1/features/api-core/scaffold-files.template.js +0 -158
  38. package/commonjs/v1/features/auth0/auth0-cli.js +0 -151
  39. package/commonjs/v1/features/auth0/feature.js +0 -187
  40. package/commonjs/v1/features/auth0/models.js +0 -14
  41. package/commonjs/v1/features/auth0/prod-config.template.js +0 -19
  42. package/commonjs/v1/features/cli-core/feature.js +0 -37
  43. package/commonjs/v1/features/cli-core/scaffold-files.template.js +0 -103
  44. package/commonjs/v1/features/devcontainer/feature.js +0 -38
  45. package/commonjs/v1/features/finalize/feature.js +0 -48
  46. package/commonjs/v1/features/postgresql/feature.js +0 -81
  47. package/commonjs/v1/features/postgresql/models.js +0 -14
  48. package/commonjs/v1/features/postman/collection.template.js +0 -80
  49. package/commonjs/v1/features/postman/environment.template.js +0 -24
  50. package/commonjs/v1/features/postman/feature.js +0 -192
  51. package/commonjs/v1/features/typeorm/feature.js +0 -66
  52. package/commonjs/v1/features/typeorm/scaffold-files.template.js +0 -80
  53. package/commonjs/v1/scaffold.js +0 -50
  54. package/commonjs/v1/version.js +0 -32
  55. package/commonjs/v1/workflows/api.js +0 -29
  56. package/commonjs/v1/workflows/cli.js +0 -19
  57. package/es6/v1/cli.js +0 -11
  58. package/es6/v1/domain/class-model.js +0 -104
  59. package/es6/v1/domain/compose.model.js +0 -61
  60. package/es6/v1/domain/context.js +0 -37
  61. package/es6/v1/domain/devcontainer.model.js +0 -104
  62. package/es6/v1/domain/dockerfile.model.js +0 -52
  63. package/es6/v1/domain/feature.js +0 -9
  64. package/es6/v1/domain/import-map.js +0 -64
  65. package/es6/v1/domain/index.js +0 -11
  66. package/es6/v1/domain/prompt.js +0 -27
  67. package/es6/v1/domain/workflow.js +0 -24
  68. package/es6/v1/features/api-core/feature.js +0 -93
  69. package/es6/v1/features/api-core/hello-controller.model.js +0 -96
  70. package/es6/v1/features/api-core/main-ts.model.js +0 -74
  71. package/es6/v1/features/api-core/scaffold-files.template.js +0 -116
  72. package/es6/v1/features/auth0/auth0-cli.js +0 -116
  73. package/es6/v1/features/auth0/feature.js +0 -136
  74. package/es6/v1/features/auth0/models.js +0 -4
  75. package/es6/v1/features/auth0/prod-config.template.js +0 -9
  76. package/es6/v1/features/cli-core/feature.js +0 -27
  77. package/es6/v1/features/cli-core/scaffold-files.template.js +0 -73
  78. package/es6/v1/features/devcontainer/feature.js +0 -28
  79. package/es6/v1/features/finalize/feature.js +0 -38
  80. package/es6/v1/features/postgresql/feature.js +0 -71
  81. package/es6/v1/features/postgresql/models.js +0 -4
  82. package/es6/v1/features/postman/collection.template.js +0 -70
  83. package/es6/v1/features/postman/environment.template.js +0 -14
  84. package/es6/v1/features/postman/feature.js +0 -141
  85. package/es6/v1/features/typeorm/feature.js +0 -56
  86. package/es6/v1/features/typeorm/scaffold-files.template.js +0 -56
  87. package/es6/v1/scaffold.js +0 -40
  88. package/es6/v1/version.js +0 -22
  89. package/es6/v1/workflows/api.js +0 -25
  90. package/es6/v1/workflows/cli.js +0 -9
  91. package/types/v1/cli.d.ts +0 -2
  92. package/types/v1/domain/class-model.d.ts +0 -70
  93. package/types/v1/domain/compose.model.d.ts +0 -25
  94. package/types/v1/domain/context.d.ts +0 -36
  95. package/types/v1/domain/devcontainer.model.d.ts +0 -35
  96. package/types/v1/domain/dockerfile.model.d.ts +0 -11
  97. package/types/v1/domain/feature.d.ts +0 -29
  98. package/types/v1/domain/import-map.d.ts +0 -24
  99. package/types/v1/domain/index.d.ts +0 -12
  100. package/types/v1/domain/workflow.d.ts +0 -14
  101. package/types/v1/features/api-core/feature.d.ts +0 -2
  102. package/types/v1/features/api-core/hello-controller.model.d.ts +0 -9
  103. package/types/v1/features/api-core/main-ts.model.d.ts +0 -31
  104. package/types/v1/features/api-core/scaffold-files.template.d.ts +0 -10
  105. package/types/v1/features/auth0/auth0-cli.d.ts +0 -22
  106. package/types/v1/features/auth0/feature.d.ts +0 -2
  107. package/types/v1/features/auth0/models.d.ts +0 -5
  108. package/types/v1/features/auth0/prod-config.template.d.ts +0 -1
  109. package/types/v1/features/cli-core/feature.d.ts +0 -2
  110. package/types/v1/features/cli-core/scaffold-files.template.d.ts +0 -6
  111. package/types/v1/features/devcontainer/feature.d.ts +0 -2
  112. package/types/v1/features/finalize/feature.d.ts +0 -2
  113. package/types/v1/features/postgresql/feature.d.ts +0 -2
  114. package/types/v1/features/postgresql/models.d.ts +0 -6
  115. package/types/v1/features/postman/collection.template.d.ts +0 -1
  116. package/types/v1/features/postman/environment.template.d.ts +0 -6
  117. package/types/v1/features/postman/feature.d.ts +0 -2
  118. package/types/v1/features/typeorm/feature.d.ts +0 -2
  119. package/types/v1/features/typeorm/scaffold-files.template.d.ts +0 -9
  120. package/types/v1/scaffold.d.ts +0 -3
  121. package/types/v1/workflows/api.d.ts +0 -8
  122. package/types/v1/workflows/cli.d.ts +0 -1
  123. /package/types/{v1 → src}/domain/prompt.d.ts +0 -0
  124. /package/types/{v1 → src}/version.d.ts +0 -0
package/es6/src/cli.js CHANGED
@@ -1,12 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import { Command } from "commander";
3
+ import { runInBuilder } from "./runner.js";
3
4
  import { scaffoldApi } from "./webapi/create-api.js";
4
- // import { scaffold } from "./scaffold.js";
5
5
  const program = new Command();
6
- program.name("decohere").description("Scaffold a new Decohere project");
7
- // .argument("[directory]", "Target directory (default: current directory)", ".");
8
- program.command("webapi").option("-d <directory>", "Target directory (default: current directory)", ".").action(async (_name, cmd)=>{
9
- await scaffoldApi(cmd.optsWithGlobals());
6
+ program.name("decohere").description("Scaffold a new Decohere project").option("-d <directory>", "Target directory (default: current directory)", ".");
7
+ program.command("webapi").action(async (_name, cmd)=>{
8
+ const opts = cmd.optsWithGlobals();
9
+ if (process.env.DECOHERE_BUILDER !== "1") {
10
+ runInBuilder(opts);
11
+ return;
12
+ }
13
+ await scaffoldApi(opts);
10
14
  });
11
15
  // .option("-y, --yes", "Skip confirmation prompts")
12
16
  // .option("-t, --template <template>", "Project template: api (default) or cli")
@@ -29,4 +33,4 @@ program.command("webapi").option("-d <directory>", "Target directory (default: c
29
33
  // );
30
34
  program.parse();
31
35
 
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvY2xpLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5pbXBvcnQgeyBzY2FmZm9sZEFwaSB9IGZyb20gXCIuL3dlYmFwaS9jcmVhdGUtYXBpLmpzXCI7XG5cbi8vIGltcG9ydCB7IHNjYWZmb2xkIH0gZnJvbSBcIi4vc2NhZmZvbGQuanNcIjtcblxuY29uc3QgcHJvZ3JhbSA9IG5ldyBDb21tYW5kKCk7XG5cbnByb2dyYW0ubmFtZShcImRlY29oZXJlXCIpLmRlc2NyaXB0aW9uKFwiU2NhZmZvbGQgYSBuZXcgRGVjb2hlcmUgcHJvamVjdFwiKTtcbi8vIC5hcmd1bWVudChcIltkaXJlY3RvcnldXCIsIFwiVGFyZ2V0IGRpcmVjdG9yeSAoZGVmYXVsdDogY3VycmVudCBkaXJlY3RvcnkpXCIsIFwiLlwiKTtcblxucHJvZ3JhbVxuXHQuY29tbWFuZChcIndlYmFwaVwiKVxuXHQub3B0aW9uKFwiLWQgPGRpcmVjdG9yeT5cIiwgXCJUYXJnZXQgZGlyZWN0b3J5IChkZWZhdWx0OiBjdXJyZW50IGRpcmVjdG9yeSlcIiwgXCIuXCIpXG5cdC5hY3Rpb24oYXN5bmMgKF9uYW1lLCBjbWQ6IENvbW1hbmQpID0+IHtcblx0XHRhd2FpdCBzY2FmZm9sZEFwaShjbWQub3B0c1dpdGhHbG9iYWxzKCkpO1xuXHR9KTtcbi8vIC5vcHRpb24oXCIteSwgLS15ZXNcIiwgXCJTa2lwIGNvbmZpcm1hdGlvbiBwcm9tcHRzXCIpXG4vLyAub3B0aW9uKFwiLXQsIC0tdGVtcGxhdGUgPHRlbXBsYXRlPlwiLCBcIlByb2plY3QgdGVtcGxhdGU6IGFwaSAoZGVmYXVsdCkgb3IgY2xpXCIpXG4vLyAub3B0aW9uKFwiLWQsIC0tZGF0YWJhc2UgPHByb3ZpZGVyPlwiLCBcIkRhdGFiYXNlIHByb3ZpZGVyIHRvIGluY2x1ZGUgKGFwaSBvbmx5KTogdHlwZW9ybVwiKVxuLy8gLm9wdGlvbihcIi1pLCAtLWlkcCA8cHJvdmlkZXI+XCIsIFwiSWRlbnRpdHkgcHJvdmlkZXIgdG8gY29uZmlndXJlIChhcGkgb25seSk6IGF1dGgwXCIpXG4vLyAub3B0aW9uKFwiLXAsIC0tcG9zdG1hblwiLCBcIkNvbmZpZ3VyZSBhIFBvc3RtYW4gd29ya3NwYWNlLCBjb2xsZWN0aW9uLCBhbmQgZW52aXJvbm1lbnRcIilcbi8vIC5hY3Rpb24oXG4vLyBcdGFzeW5jIChcbi8vIFx0XHRkaXJlY3Rvcnk6IHN0cmluZyxcbi8vIFx0XHRvcHRzOiB7XG4vLyBcdFx0XHR5ZXM/OiBib29sZWFuO1xuLy8gXHRcdFx0dGVtcGxhdGU/OiBcImFwaVwiIHwgXCJjbGlcIjtcbi8vIFx0XHRcdGRhdGFiYXNlPzogXCJ0eXBlb3JtXCI7XG4vLyBcdFx0XHRpZHA/OiBcImF1dGgwXCI7XG4vLyBcdFx0XHRwb3N0bWFuPzogYm9vbGVhbjtcbi8vIFx0XHR9LFxuLy8gXHQpID0+IHtcbi8vIFx0XHRhd2FpdCBzY2FmZm9sZChyZXNvbHZlKGRpcmVjdG9yeSksIG9wdHMpO1xuLy8gXHR9LFxuLy8gKTtcblxucHJvZ3JhbS5wYXJzZSgpO1xuIl0sIm5hbWVzIjpbIkNvbW1hbmQiLCJzY2FmZm9sZEFwaSIsInByb2dyYW0iLCJuYW1lIiwiZGVzY3JpcHRpb24iLCJjb21tYW5kIiwib3B0aW9uIiwiYWN0aW9uIiwiX25hbWUiLCJjbWQiLCJvcHRzV2l0aEdsb2JhbHMiLCJwYXJzZSJdLCJtYXBwaW5ncyI6IjtBQUNBLFNBQVNBLE9BQU8sUUFBUSxZQUFZO0FBQ3BDLFNBQVNDLFdBQVcsUUFBUSx5QkFBeUI7QUFFckQsNENBQTRDO0FBRTVDLE1BQU1DLFVBQVUsSUFBSUY7QUFFcEJFLFFBQVFDLElBQUksQ0FBQyxZQUFZQyxXQUFXLENBQUM7QUFDckMsa0ZBQWtGO0FBRWxGRixRQUNFRyxPQUFPLENBQUMsVUFDUkMsTUFBTSxDQUFDLGtCQUFrQixpREFBaUQsS0FDMUVDLE1BQU0sQ0FBQyxPQUFPQyxPQUFPQztJQUNyQixNQUFNUixZQUFZUSxJQUFJQyxlQUFlO0FBQ3RDO0FBQ0Qsb0RBQW9EO0FBQ3BELGlGQUFpRjtBQUNqRiwyRkFBMkY7QUFDM0Ysc0ZBQXNGO0FBQ3RGLHlGQUF5RjtBQUN6RixXQUFXO0FBQ1gsV0FBVztBQUNYLHVCQUF1QjtBQUN2QixZQUFZO0FBQ1osb0JBQW9CO0FBQ3BCLCtCQUErQjtBQUMvQiwyQkFBMkI7QUFDM0Isb0JBQW9CO0FBQ3BCLHdCQUF3QjtBQUN4QixPQUFPO0FBQ1AsVUFBVTtBQUNWLDhDQUE4QztBQUM5QyxNQUFNO0FBQ04sS0FBSztBQUVMUixRQUFRUyxLQUFLIn0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvY2xpLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5pbXBvcnQgeyBydW5JbkJ1aWxkZXIgfSBmcm9tIFwiLi9ydW5uZXIuanNcIjtcbmltcG9ydCB7IHNjYWZmb2xkQXBpIH0gZnJvbSBcIi4vd2ViYXBpL2NyZWF0ZS1hcGkuanNcIjtcblxuY29uc3QgcHJvZ3JhbSA9IG5ldyBDb21tYW5kKCk7XG5cbnByb2dyYW1cblx0Lm5hbWUoXCJkZWNvaGVyZVwiKVxuXHQuZGVzY3JpcHRpb24oXCJTY2FmZm9sZCBhIG5ldyBEZWNvaGVyZSBwcm9qZWN0XCIpXG5cdC5vcHRpb24oXCItZCA8ZGlyZWN0b3J5PlwiLCBcIlRhcmdldCBkaXJlY3RvcnkgKGRlZmF1bHQ6IGN1cnJlbnQgZGlyZWN0b3J5KVwiLCBcIi5cIik7XG5cbnByb2dyYW0uY29tbWFuZChcIndlYmFwaVwiKS5hY3Rpb24oYXN5bmMgKF9uYW1lLCBjbWQ6IENvbW1hbmQpID0+IHtcblx0Y29uc3Qgb3B0cyA9IGNtZC5vcHRzV2l0aEdsb2JhbHMoKTtcblx0aWYgKHByb2Nlc3MuZW52LkRFQ09IRVJFX0JVSUxERVIgIT09IFwiMVwiKSB7XG5cdFx0cnVuSW5CdWlsZGVyKG9wdHMpO1xuXHRcdHJldHVybjtcblx0fVxuXHRhd2FpdCBzY2FmZm9sZEFwaShvcHRzKTtcbn0pO1xuXG4vLyAub3B0aW9uKFwiLXksIC0teWVzXCIsIFwiU2tpcCBjb25maXJtYXRpb24gcHJvbXB0c1wiKVxuLy8gLm9wdGlvbihcIi10LCAtLXRlbXBsYXRlIDx0ZW1wbGF0ZT5cIiwgXCJQcm9qZWN0IHRlbXBsYXRlOiBhcGkgKGRlZmF1bHQpIG9yIGNsaVwiKVxuLy8gLm9wdGlvbihcIi1kLCAtLWRhdGFiYXNlIDxwcm92aWRlcj5cIiwgXCJEYXRhYmFzZSBwcm92aWRlciB0byBpbmNsdWRlIChhcGkgb25seSk6IHR5cGVvcm1cIilcbi8vIC5vcHRpb24oXCItaSwgLS1pZHAgPHByb3ZpZGVyPlwiLCBcIklkZW50aXR5IHByb3ZpZGVyIHRvIGNvbmZpZ3VyZSAoYXBpIG9ubHkpOiBhdXRoMFwiKVxuLy8gLm9wdGlvbihcIi1wLCAtLXBvc3RtYW5cIiwgXCJDb25maWd1cmUgYSBQb3N0bWFuIHdvcmtzcGFjZSwgY29sbGVjdGlvbiwgYW5kIGVudmlyb25tZW50XCIpXG4vLyAuYWN0aW9uKFxuLy8gXHRhc3luYyAoXG4vLyBcdFx0ZGlyZWN0b3J5OiBzdHJpbmcsXG4vLyBcdFx0b3B0czoge1xuLy8gXHRcdFx0eWVzPzogYm9vbGVhbjtcbi8vIFx0XHRcdHRlbXBsYXRlPzogXCJhcGlcIiB8IFwiY2xpXCI7XG4vLyBcdFx0XHRkYXRhYmFzZT86IFwidHlwZW9ybVwiO1xuLy8gXHRcdFx0aWRwPzogXCJhdXRoMFwiO1xuLy8gXHRcdFx0cG9zdG1hbj86IGJvb2xlYW47XG4vLyBcdFx0fSxcbi8vIFx0KSA9PiB7XG4vLyBcdFx0YXdhaXQgc2NhZmZvbGQocmVzb2x2ZShkaXJlY3RvcnkpLCBvcHRzKTtcbi8vIFx0fSxcbi8vICk7XG5cbnByb2dyYW0ucGFyc2UoKTtcbiJdLCJuYW1lcyI6WyJDb21tYW5kIiwicnVuSW5CdWlsZGVyIiwic2NhZmZvbGRBcGkiLCJwcm9ncmFtIiwibmFtZSIsImRlc2NyaXB0aW9uIiwib3B0aW9uIiwiY29tbWFuZCIsImFjdGlvbiIsIl9uYW1lIiwiY21kIiwib3B0cyIsIm9wdHNXaXRoR2xvYmFscyIsInByb2Nlc3MiLCJlbnYiLCJERUNPSEVSRV9CVUlMREVSIiwicGFyc2UiXSwibWFwcGluZ3MiOiI7QUFDQSxTQUFTQSxPQUFPLFFBQVEsWUFBWTtBQUNwQyxTQUFTQyxZQUFZLFFBQVEsY0FBYztBQUMzQyxTQUFTQyxXQUFXLFFBQVEseUJBQXlCO0FBRXJELE1BQU1DLFVBQVUsSUFBSUg7QUFFcEJHLFFBQ0VDLElBQUksQ0FBQyxZQUNMQyxXQUFXLENBQUMsbUNBQ1pDLE1BQU0sQ0FBQyxrQkFBa0IsaURBQWlEO0FBRTVFSCxRQUFRSSxPQUFPLENBQUMsVUFBVUMsTUFBTSxDQUFDLE9BQU9DLE9BQU9DO0lBQzlDLE1BQU1DLE9BQU9ELElBQUlFLGVBQWU7SUFDaEMsSUFBSUMsUUFBUUMsR0FBRyxDQUFDQyxnQkFBZ0IsS0FBSyxLQUFLO1FBQ3pDZCxhQUFhVTtRQUNiO0lBQ0Q7SUFDQSxNQUFNVCxZQUFZUztBQUNuQjtBQUVBLG9EQUFvRDtBQUNwRCxpRkFBaUY7QUFDakYsMkZBQTJGO0FBQzNGLHNGQUFzRjtBQUN0Rix5RkFBeUY7QUFDekYsV0FBVztBQUNYLFdBQVc7QUFDWCx1QkFBdUI7QUFDdkIsWUFBWTtBQUNaLG9CQUFvQjtBQUNwQiwrQkFBK0I7QUFDL0IsMkJBQTJCO0FBQzNCLG9CQUFvQjtBQUNwQix3QkFBd0I7QUFDeEIsT0FBTztBQUNQLFVBQVU7QUFDViw4Q0FBOEM7QUFDOUMsTUFBTTtBQUNOLEtBQUs7QUFFTFIsUUFBUWEsS0FBSyJ9
@@ -0,0 +1,37 @@
1
+ import { createInterface } from "node:readline";
2
+ // readline/promises rl.question() has a race condition with piped (non-TTY) stdin
3
+ // in Node ≥ 22: after the first line is read, stdin emits 'end', readline closes,
4
+ // and all subsequent question() calls resolve to "".
5
+ // Fix: use the async-iterator API, which buffers all lines before the close event fires.
6
+ let _lines = null;
7
+ function getLines() {
8
+ if (_lines == null) {
9
+ const rl = createInterface({
10
+ input: process.stdin,
11
+ terminal: false
12
+ });
13
+ _lines = rl[Symbol.asyncIterator]();
14
+ }
15
+ return _lines;
16
+ }
17
+ async function readLine(prompt) {
18
+ process.stdout.write(prompt);
19
+ const { value, done } = await getLines().next();
20
+ return done ? "" : value.trim();
21
+ }
22
+ export async function ask(question, fallback = "") {
23
+ const answer = await readLine(question);
24
+ return answer || fallback;
25
+ }
26
+ export async function pick(label, items, display) {
27
+ console.log(label.trimEnd());
28
+ for (const [i, item] of items.entries()){
29
+ console.log(` ${i + 1}. ${display(item)}`);
30
+ }
31
+ const answer = await readLine(" > ");
32
+ const idx = Number.parseInt(answer, 10);
33
+ if (Number.isNaN(idx) || idx < 1 || idx > items.length) return null;
34
+ return items[idx - 1];
35
+ }
36
+
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvZG9tYWluL3Byb21wdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVJbnRlcmZhY2UgfSBmcm9tIFwibm9kZTpyZWFkbGluZVwiO1xuXG4vLyByZWFkbGluZS9wcm9taXNlcyBybC5xdWVzdGlvbigpIGhhcyBhIHJhY2UgY29uZGl0aW9uIHdpdGggcGlwZWQgKG5vbi1UVFkpIHN0ZGluXG4vLyBpbiBOb2RlIOKJpSAyMjogYWZ0ZXIgdGhlIGZpcnN0IGxpbmUgaXMgcmVhZCwgc3RkaW4gZW1pdHMgJ2VuZCcsIHJlYWRsaW5lIGNsb3Nlcyxcbi8vIGFuZCBhbGwgc3Vic2VxdWVudCBxdWVzdGlvbigpIGNhbGxzIHJlc29sdmUgdG8gXCJcIi5cbi8vIEZpeDogdXNlIHRoZSBhc3luYy1pdGVyYXRvciBBUEksIHdoaWNoIGJ1ZmZlcnMgYWxsIGxpbmVzIGJlZm9yZSB0aGUgY2xvc2UgZXZlbnQgZmlyZXMuXG5cbmxldCBfbGluZXM6IEFzeW5jSXRlcmF0b3I8c3RyaW5nPiB8IG51bGwgPSBudWxsO1xuXG5mdW5jdGlvbiBnZXRMaW5lcygpOiBBc3luY0l0ZXJhdG9yPHN0cmluZz4ge1xuXHRpZiAoX2xpbmVzID09IG51bGwpIHtcblx0XHRjb25zdCBybCA9IGNyZWF0ZUludGVyZmFjZSh7IGlucHV0OiBwcm9jZXNzLnN0ZGluLCB0ZXJtaW5hbDogZmFsc2UgfSk7XG5cdFx0X2xpbmVzID0gcmxbU3ltYm9sLmFzeW5jSXRlcmF0b3JdKCk7XG5cdH1cblx0cmV0dXJuIF9saW5lcztcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVhZExpbmUocHJvbXB0OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuXHRwcm9jZXNzLnN0ZG91dC53cml0ZShwcm9tcHQpO1xuXHRjb25zdCB7IHZhbHVlLCBkb25lIH0gPSBhd2FpdCBnZXRMaW5lcygpLm5leHQoKTtcblx0cmV0dXJuIGRvbmUgPyBcIlwiIDogdmFsdWUudHJpbSgpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYXNrKHF1ZXN0aW9uOiBzdHJpbmcsIGZhbGxiYWNrID0gXCJcIik6IFByb21pc2U8c3RyaW5nPiB7XG5cdGNvbnN0IGFuc3dlciA9IGF3YWl0IHJlYWRMaW5lKHF1ZXN0aW9uKTtcblx0cmV0dXJuIGFuc3dlciB8fCBmYWxsYmFjaztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBpY2s8VD4oXG5cdGxhYmVsOiBzdHJpbmcsXG5cdGl0ZW1zOiBUW10sXG5cdGRpc3BsYXk6IChpdGVtOiBUKSA9PiBzdHJpbmcsXG4pOiBQcm9taXNlPFQgfCBudWxsPiB7XG5cdGNvbnNvbGUubG9nKGxhYmVsLnRyaW1FbmQoKSk7XG5cdGZvciAoY29uc3QgW2ksIGl0ZW1dIG9mIGl0ZW1zLmVudHJpZXMoKSkge1xuXHRcdGNvbnNvbGUubG9nKGAgICAgJHtpICsgMX0uICR7ZGlzcGxheShpdGVtKX1gKTtcblx0fVxuXHRjb25zdCBhbnN3ZXIgPSBhd2FpdCByZWFkTGluZShcIiAgPiBcIik7XG5cdGNvbnN0IGlkeCA9IE51bWJlci5wYXJzZUludChhbnN3ZXIsIDEwKTtcblx0aWYgKE51bWJlci5pc05hTihpZHgpIHx8IGlkeCA8IDEgfHwgaWR4ID4gaXRlbXMubGVuZ3RoKSByZXR1cm4gbnVsbDtcblx0cmV0dXJuIGl0ZW1zW2lkeCAtIDFdO1xufVxuIl0sIm5hbWVzIjpbImNyZWF0ZUludGVyZmFjZSIsIl9saW5lcyIsImdldExpbmVzIiwicmwiLCJpbnB1dCIsInByb2Nlc3MiLCJzdGRpbiIsInRlcm1pbmFsIiwiU3ltYm9sIiwiYXN5bmNJdGVyYXRvciIsInJlYWRMaW5lIiwicHJvbXB0Iiwic3Rkb3V0Iiwid3JpdGUiLCJ2YWx1ZSIsImRvbmUiLCJuZXh0IiwidHJpbSIsImFzayIsInF1ZXN0aW9uIiwiZmFsbGJhY2siLCJhbnN3ZXIiLCJwaWNrIiwibGFiZWwiLCJpdGVtcyIsImRpc3BsYXkiLCJjb25zb2xlIiwibG9nIiwidHJpbUVuZCIsImkiLCJpdGVtIiwiZW50cmllcyIsImlkeCIsIk51bWJlciIsInBhcnNlSW50IiwiaXNOYU4iLCJsZW5ndGgiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGVBQWUsUUFBUSxnQkFBZ0I7QUFFaEQsa0ZBQWtGO0FBQ2xGLGtGQUFrRjtBQUNsRixxREFBcUQ7QUFDckQseUZBQXlGO0FBRXpGLElBQUlDLFNBQXVDO0FBRTNDLFNBQVNDO0lBQ1IsSUFBSUQsVUFBVSxNQUFNO1FBQ25CLE1BQU1FLEtBQUtILGdCQUFnQjtZQUFFSSxPQUFPQyxRQUFRQyxLQUFLO1lBQUVDLFVBQVU7UUFBTTtRQUNuRU4sU0FBU0UsRUFBRSxDQUFDSyxPQUFPQyxhQUFhLENBQUM7SUFDbEM7SUFDQSxPQUFPUjtBQUNSO0FBRUEsZUFBZVMsU0FBU0MsTUFBYztJQUNyQ04sUUFBUU8sTUFBTSxDQUFDQyxLQUFLLENBQUNGO0lBQ3JCLE1BQU0sRUFBRUcsS0FBSyxFQUFFQyxJQUFJLEVBQUUsR0FBRyxNQUFNYixXQUFXYyxJQUFJO0lBQzdDLE9BQU9ELE9BQU8sS0FBS0QsTUFBTUcsSUFBSTtBQUM5QjtBQUVBLE9BQU8sZUFBZUMsSUFBSUMsUUFBZ0IsRUFBRUMsV0FBVyxFQUFFO0lBQ3hELE1BQU1DLFNBQVMsTUFBTVgsU0FBU1M7SUFDOUIsT0FBT0UsVUFBVUQ7QUFDbEI7QUFFQSxPQUFPLGVBQWVFLEtBQ3JCQyxLQUFhLEVBQ2JDLEtBQVUsRUFDVkMsT0FBNEI7SUFFNUJDLFFBQVFDLEdBQUcsQ0FBQ0osTUFBTUssT0FBTztJQUN6QixLQUFLLE1BQU0sQ0FBQ0MsR0FBR0MsS0FBSyxJQUFJTixNQUFNTyxPQUFPLEdBQUk7UUFDeENMLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRUUsSUFBSSxFQUFFLEVBQUUsRUFBRUosUUFBUUssT0FBTztJQUM3QztJQUNBLE1BQU1ULFNBQVMsTUFBTVgsU0FBUztJQUM5QixNQUFNc0IsTUFBTUMsT0FBT0MsUUFBUSxDQUFDYixRQUFRO0lBQ3BDLElBQUlZLE9BQU9FLEtBQUssQ0FBQ0gsUUFBUUEsTUFBTSxLQUFLQSxNQUFNUixNQUFNWSxNQUFNLEVBQUUsT0FBTztJQUMvRCxPQUFPWixLQUFLLENBQUNRLE1BQU0sRUFBRTtBQUN0QiJ9
@@ -1,4 +1,4 @@
1
- import { CREATE_VERSION } from "../../v1/version.js";
1
+ import { CREATE_VERSION } from "../version.js";
2
2
  import { WELL_KNOWN_FILES } from "./const.js";
3
3
  /**
4
4
  * Builder for the root `package.json`.
@@ -57,4 +57,4 @@ import { WELL_KNOWN_FILES } from "./const.js";
57
57
  }
58
58
  }
59
59
 
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvbW9kZWxzL3BhY2thZ2UtanNvbi5tb2RlbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDUkVBVEVfVkVSU0lPTiB9IGZyb20gXCIuLi8uLi92MS92ZXJzaW9uLmpzXCI7XG5pbXBvcnQgeyBXRUxMX0tOT1dOX0ZJTEVTIH0gZnJvbSBcIi4vY29uc3QuanNcIjtcbmltcG9ydCB0eXBlIHsgS2V5ZWRNb2RlbCwgU291cmNlRmlsZSB9IGZyb20gXCIuL3NvdXJjZS1maWxlLmpzXCI7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgdGhlIHJvb3QgYHBhY2thZ2UuanNvbmAuXG4gKlxuICogU3RhcnRzIHdpdGggdGhlIGNvcmUgQVBJIGRlcGVuZGVuY2llcy4gRmVhdHVyZXMgY2FsbCBgYWRkRGVwZW5kZW5jeWAgL1xuICogYGFkZERldkRlcGVuZGVuY3lgIGR1cmluZyB0aGVpciBzY2FmZm9sZCBwaGFzZSB0byBpbmplY3QgdGhlaXIgb3duIGRlcHNcbiAqIGJlZm9yZSBgZmlsZXMoKWAgaXMgY2FsbGVkIGF0IHJlbmRlciB0aW1lLlxuICovXG5leHBvcnQgY2xhc3MgUGFja2FnZUpzb24gaW1wbGVtZW50cyBLZXllZE1vZGVsIHtcblx0cHVibGljIHJlYWRvbmx5IGtleSA9IFdFTExfS05PV05fRklMRVMuUEFDS0FHRV9KU09OO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgX2RlcGVuZGVuY2llczogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblx0cHJpdmF0ZSByZWFkb25seSBfZGV2RGVwZW5kZW5jaWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5hbWU6IHN0cmluZykge1xuXHRcdHRoaXMuX2RlcGVuZGVuY2llcyA9IHtcblx0XHRcdFwiQGRlY29oZXJlL2NvcnRleFwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHRcdFwiQGRlY29oZXJlL2NydWNpYmxlXCI6IENSRUFURV9WRVJTSU9OLFxuXHRcdFx0XCJAZGVjb2hlcmUvbmV4dXNcIjogQ1JFQVRFX1ZFUlNJT04sXG5cdFx0XHRcIkBkZWNvaGVyZS9wcm90b2NvbFwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHRcdFwiQGRlY29oZXJlL3NjcmliZVwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHRcdFwiQGRlY29oZXJlL3NjcmliZS1waW5vXCI6IENSRUFURV9WRVJTSU9OLFxuXHRcdFx0XCJwaW5vLXByZXR0eVwiOiBcIl4xMy4wLjBcIixcblx0XHR9O1xuXHRcdHRoaXMuX2RldkRlcGVuZGVuY2llcyA9IHtcblx0XHRcdFwiQGRlY29oZXJlL3Rlcm1pbmFsXCI6IENSRUFURV9WRVJTSU9OLFxuXHRcdFx0dHlwZXNjcmlwdDogXCJeNi4wLjNcIixcblx0XHRcdFwiQGJpb21lanMvYmlvbWVcIjogXCJeMi4wLjBcIixcblx0XHR9O1xuXHR9XG5cblx0cHVibGljIGFkZERlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGFkZERldkRlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXZEZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGZpbGVzKCk6IFNvdXJjZUZpbGVbXSB7XG5cdFx0cmV0dXJuIFtcblx0XHRcdHtcblx0XHRcdFx0ZmlsZVBhdGg6IFwicGFja2FnZS5qc29uXCIsXG5cdFx0XHRcdGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KFxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdG5hbWU6IHRoaXMubmFtZSxcblx0XHRcdFx0XHRcdHZlcnNpb246IFwiMC4wLjFcIixcblx0XHRcdFx0XHRcdHR5cGU6IFwibW9kdWxlXCIsXG5cdFx0XHRcdFx0XHRzY3JpcHRzOiB7XG5cdFx0XHRcdFx0XHRcdGJ1aWxkOiBcImZvcmdlIGJ1aWxkXCIsXG5cdFx0XHRcdFx0XHRcdFwiYnVpbGQ6d2F0Y2hcIjogXCJmb3JnZSBidWlsZCAtLXdhdGNoXCIsXG5cdFx0XHRcdFx0XHRcdGRldjogXCJmbHV4IHNlcnZlXCIsXG5cdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0ZGVwZW5kZW5jaWVzOiB0aGlzLl9kZXBlbmRlbmNpZXMsXG5cdFx0XHRcdFx0XHRkZXZEZXBlbmRlbmNpZXM6IHRoaXMuX2RldkRlcGVuZGVuY2llcyxcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdG51bGwsXG5cdFx0XHRcdFx0Mixcblx0XHRcdFx0KSxcblx0XHRcdH0sXG5cdFx0XTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkNSRUFURV9WRVJTSU9OIiwiV0VMTF9LTk9XTl9GSUxFUyIsIlBhY2thZ2VKc29uIiwia2V5IiwiUEFDS0FHRV9KU09OIiwiX2RlcGVuZGVuY2llcyIsIl9kZXZEZXBlbmRlbmNpZXMiLCJuYW1lIiwidHlwZXNjcmlwdCIsImFkZERlcGVuZGVuY3kiLCJ2ZXJzaW9uIiwiYWRkRGV2RGVwZW5kZW5jeSIsImZpbGVzIiwiZmlsZVBhdGgiLCJjb250ZW50IiwiSlNPTiIsInN0cmluZ2lmeSIsInR5cGUiLCJzY3JpcHRzIiwiYnVpbGQiLCJkZXYiLCJkZXBlbmRlbmNpZXMiLCJkZXZEZXBlbmRlbmNpZXMiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGNBQWMsUUFBUSxzQkFBc0I7QUFDckQsU0FBU0MsZ0JBQWdCLFFBQVEsYUFBYTtBQUc5Qzs7Ozs7O0NBTUMsR0FDRCxPQUFPLE1BQU1DOztJQUNJQyxNQUFNRixpQkFBaUJHLFlBQVksQ0FBQztJQUVuQ0MsY0FBc0M7SUFDdENDLGlCQUF5QztJQUUxRCxZQUFtQixBQUFpQkMsSUFBWSxDQUFFO2FBQWRBLE9BQUFBO1FBQ25DLElBQUksQ0FBQ0YsYUFBYSxHQUFHO1lBQ3BCLG9CQUFvQkw7WUFDcEIsc0JBQXNCQTtZQUN0QixtQkFBbUJBO1lBQ25CLHNCQUFzQkE7WUFDdEIsb0JBQW9CQTtZQUNwQix5QkFBeUJBO1lBQ3pCLGVBQWU7UUFDaEI7UUFDQSxJQUFJLENBQUNNLGdCQUFnQixHQUFHO1lBQ3ZCLHNCQUFzQk47WUFDdEJRLFlBQVk7WUFDWixrQkFBa0I7UUFDbkI7SUFDRDtJQUVPQyxjQUFjRixJQUFZLEVBQUVHLE9BQWUsRUFBUTtRQUN6RCxJQUFJLENBQUNMLGFBQWEsQ0FBQ0UsS0FBSyxHQUFHRztRQUMzQixPQUFPLElBQUk7SUFDWjtJQUVPQyxpQkFBaUJKLElBQVksRUFBRUcsT0FBZSxFQUFRO1FBQzVELElBQUksQ0FBQ0osZ0JBQWdCLENBQUNDLEtBQUssR0FBR0c7UUFDOUIsT0FBTyxJQUFJO0lBQ1o7SUFFT0UsUUFBc0I7UUFDNUIsT0FBTztZQUNOO2dCQUNDQyxVQUFVO2dCQUNWQyxTQUFTQyxLQUFLQyxTQUFTLENBQ3RCO29CQUNDVCxNQUFNLElBQUksQ0FBQ0EsSUFBSTtvQkFDZkcsU0FBUztvQkFDVE8sTUFBTTtvQkFDTkMsU0FBUzt3QkFDUkMsT0FBTzt3QkFDUCxlQUFlO3dCQUNmQyxLQUFLO29CQUNOO29CQUNBQyxjQUFjLElBQUksQ0FBQ2hCLGFBQWE7b0JBQ2hDaUIsaUJBQWlCLElBQUksQ0FBQ2hCLGdCQUFnQjtnQkFDdkMsR0FDQSxNQUNBO1lBRUY7U0FDQTtJQUNGO0FBQ0QifQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvbW9kZWxzL3BhY2thZ2UtanNvbi5tb2RlbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDUkVBVEVfVkVSU0lPTiB9IGZyb20gXCIuLi92ZXJzaW9uLmpzXCI7XG5pbXBvcnQgeyBXRUxMX0tOT1dOX0ZJTEVTIH0gZnJvbSBcIi4vY29uc3QuanNcIjtcbmltcG9ydCB0eXBlIHsgS2V5ZWRNb2RlbCwgU291cmNlRmlsZSB9IGZyb20gXCIuL3NvdXJjZS1maWxlLmpzXCI7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgdGhlIHJvb3QgYHBhY2thZ2UuanNvbmAuXG4gKlxuICogU3RhcnRzIHdpdGggdGhlIGNvcmUgQVBJIGRlcGVuZGVuY2llcy4gRmVhdHVyZXMgY2FsbCBgYWRkRGVwZW5kZW5jeWAgL1xuICogYGFkZERldkRlcGVuZGVuY3lgIGR1cmluZyB0aGVpciBzY2FmZm9sZCBwaGFzZSB0byBpbmplY3QgdGhlaXIgb3duIGRlcHNcbiAqIGJlZm9yZSBgZmlsZXMoKWAgaXMgY2FsbGVkIGF0IHJlbmRlciB0aW1lLlxuICovXG5leHBvcnQgY2xhc3MgUGFja2FnZUpzb24gaW1wbGVtZW50cyBLZXllZE1vZGVsIHtcblx0cHVibGljIHJlYWRvbmx5IGtleSA9IFdFTExfS05PV05fRklMRVMuUEFDS0FHRV9KU09OO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgX2RlcGVuZGVuY2llczogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblx0cHJpdmF0ZSByZWFkb25seSBfZGV2RGVwZW5kZW5jaWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5hbWU6IHN0cmluZykge1xuXHRcdHRoaXMuX2RlcGVuZGVuY2llcyA9IHtcblx0XHRcdFwiQGRlY29oZXJlL2NvcnRleFwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHRcdFwiQGRlY29oZXJlL2NydWNpYmxlXCI6IENSRUFURV9WRVJTSU9OLFxuXHRcdFx0XCJAZGVjb2hlcmUvbmV4dXNcIjogQ1JFQVRFX1ZFUlNJT04sXG5cdFx0XHRcIkBkZWNvaGVyZS9wcm90b2NvbFwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHRcdFwiQGRlY29oZXJlL3NjcmliZVwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHRcdFwiQGRlY29oZXJlL3NjcmliZS1waW5vXCI6IENSRUFURV9WRVJTSU9OLFxuXHRcdFx0XCJwaW5vLXByZXR0eVwiOiBcIl4xMy4wLjBcIixcblx0XHR9O1xuXHRcdHRoaXMuX2RldkRlcGVuZGVuY2llcyA9IHtcblx0XHRcdFwiQGRlY29oZXJlL3Rlcm1pbmFsXCI6IENSRUFURV9WRVJTSU9OLFxuXHRcdFx0dHlwZXNjcmlwdDogXCJeNi4wLjNcIixcblx0XHRcdFwiQGJpb21lanMvYmlvbWVcIjogXCJeMi4wLjBcIixcblx0XHR9O1xuXHR9XG5cblx0cHVibGljIGFkZERlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGFkZERldkRlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXZEZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGZpbGVzKCk6IFNvdXJjZUZpbGVbXSB7XG5cdFx0cmV0dXJuIFtcblx0XHRcdHtcblx0XHRcdFx0ZmlsZVBhdGg6IFwicGFja2FnZS5qc29uXCIsXG5cdFx0XHRcdGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KFxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdG5hbWU6IHRoaXMubmFtZSxcblx0XHRcdFx0XHRcdHZlcnNpb246IFwiMC4wLjFcIixcblx0XHRcdFx0XHRcdHR5cGU6IFwibW9kdWxlXCIsXG5cdFx0XHRcdFx0XHRzY3JpcHRzOiB7XG5cdFx0XHRcdFx0XHRcdGJ1aWxkOiBcImZvcmdlIGJ1aWxkXCIsXG5cdFx0XHRcdFx0XHRcdFwiYnVpbGQ6d2F0Y2hcIjogXCJmb3JnZSBidWlsZCAtLXdhdGNoXCIsXG5cdFx0XHRcdFx0XHRcdGRldjogXCJmbHV4IHNlcnZlXCIsXG5cdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0ZGVwZW5kZW5jaWVzOiB0aGlzLl9kZXBlbmRlbmNpZXMsXG5cdFx0XHRcdFx0XHRkZXZEZXBlbmRlbmNpZXM6IHRoaXMuX2RldkRlcGVuZGVuY2llcyxcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdG51bGwsXG5cdFx0XHRcdFx0Mixcblx0XHRcdFx0KSxcblx0XHRcdH0sXG5cdFx0XTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkNSRUFURV9WRVJTSU9OIiwiV0VMTF9LTk9XTl9GSUxFUyIsIlBhY2thZ2VKc29uIiwia2V5IiwiUEFDS0FHRV9KU09OIiwiX2RlcGVuZGVuY2llcyIsIl9kZXZEZXBlbmRlbmNpZXMiLCJuYW1lIiwidHlwZXNjcmlwdCIsImFkZERlcGVuZGVuY3kiLCJ2ZXJzaW9uIiwiYWRkRGV2RGVwZW5kZW5jeSIsImZpbGVzIiwiZmlsZVBhdGgiLCJjb250ZW50IiwiSlNPTiIsInN0cmluZ2lmeSIsInR5cGUiLCJzY3JpcHRzIiwiYnVpbGQiLCJkZXYiLCJkZXBlbmRlbmNpZXMiLCJkZXZEZXBlbmRlbmNpZXMiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGNBQWMsUUFBUSxnQkFBZ0I7QUFDL0MsU0FBU0MsZ0JBQWdCLFFBQVEsYUFBYTtBQUc5Qzs7Ozs7O0NBTUMsR0FDRCxPQUFPLE1BQU1DOztJQUNJQyxNQUFNRixpQkFBaUJHLFlBQVksQ0FBQztJQUVuQ0MsY0FBc0M7SUFDdENDLGlCQUF5QztJQUUxRCxZQUFtQixBQUFpQkMsSUFBWSxDQUFFO2FBQWRBLE9BQUFBO1FBQ25DLElBQUksQ0FBQ0YsYUFBYSxHQUFHO1lBQ3BCLG9CQUFvQkw7WUFDcEIsc0JBQXNCQTtZQUN0QixtQkFBbUJBO1lBQ25CLHNCQUFzQkE7WUFDdEIsb0JBQW9CQTtZQUNwQix5QkFBeUJBO1lBQ3pCLGVBQWU7UUFDaEI7UUFDQSxJQUFJLENBQUNNLGdCQUFnQixHQUFHO1lBQ3ZCLHNCQUFzQk47WUFDdEJRLFlBQVk7WUFDWixrQkFBa0I7UUFDbkI7SUFDRDtJQUVPQyxjQUFjRixJQUFZLEVBQUVHLE9BQWUsRUFBUTtRQUN6RCxJQUFJLENBQUNMLGFBQWEsQ0FBQ0UsS0FBSyxHQUFHRztRQUMzQixPQUFPLElBQUk7SUFDWjtJQUVPQyxpQkFBaUJKLElBQVksRUFBRUcsT0FBZSxFQUFRO1FBQzVELElBQUksQ0FBQ0osZ0JBQWdCLENBQUNDLEtBQUssR0FBR0c7UUFDOUIsT0FBTyxJQUFJO0lBQ1o7SUFFT0UsUUFBc0I7UUFDNUIsT0FBTztZQUNOO2dCQUNDQyxVQUFVO2dCQUNWQyxTQUFTQyxLQUFLQyxTQUFTLENBQ3RCO29CQUNDVCxNQUFNLElBQUksQ0FBQ0EsSUFBSTtvQkFDZkcsU0FBUztvQkFDVE8sTUFBTTtvQkFDTkMsU0FBUzt3QkFDUkMsT0FBTzt3QkFDUCxlQUFlO3dCQUNmQyxLQUFLO29CQUNOO29CQUNBQyxjQUFjLElBQUksQ0FBQ2hCLGFBQWE7b0JBQ2hDaUIsaUJBQWlCLElBQUksQ0FBQ2hCLGdCQUFnQjtnQkFDdkMsR0FDQSxNQUNBO1lBRUY7U0FDQTtJQUNGO0FBQ0QifQ==
@@ -0,0 +1,55 @@
1
+ import { execFileSync, spawnSync } from "node:child_process";
2
+ import { mkdirSync } from "node:fs";
3
+ import { resolve } from "node:path";
4
+ import { CREATE_VERSION } from "./version.js";
5
+ const BUILDER_IMAGE = `ghcr.io/decohere/scaffold:${CREATE_VERSION}`;
6
+ /**
7
+ * Run the scaffold inside a pre-built Docker builder image.
8
+ *
9
+ * Called when `DECOHERE_BUILDER` is not set — i.e. the CLI is running on the
10
+ * host, outside the container. Mounts the target directory as `/workspace` so
11
+ * the scaffolded files are written back to the host filesystem.
12
+ *
13
+ * If `~/.config/auth0` exists on the host the directory is also mounted so
14
+ * the auth0 CLI inside the container can reuse existing credentials silently.
15
+ */ export function runInBuilder(opts) {
16
+ const targetDir = resolve(opts.d ?? ".");
17
+ mkdirSync(targetDir, {
18
+ recursive: true
19
+ });
20
+ // Ensure Docker is available.
21
+ try {
22
+ execFileSync("docker", [
23
+ "info"
24
+ ], {
25
+ stdio: "pipe"
26
+ });
27
+ } catch {
28
+ console.error("\n Docker is required to scaffold a Decohere project.\n" + " Install Docker Desktop: https://www.docker.com/products/docker-desktop\n");
29
+ process.exit(1);
30
+ }
31
+ const volumes = [
32
+ "-v",
33
+ `${targetDir}:/workspace`
34
+ ];
35
+ console.log(" Running scaffolding in a sandboxed container...\n");
36
+ const result = spawnSync("docker", [
37
+ "run",
38
+ "--rm",
39
+ "-it",
40
+ ...volumes,
41
+ "-e",
42
+ "DECOHERE_BUILDER=1",
43
+ "-w",
44
+ "/workspace",
45
+ BUILDER_IMAGE,
46
+ "webapi",
47
+ "-d",
48
+ "."
49
+ ], {
50
+ stdio: "inherit"
51
+ });
52
+ process.exit(result.status ?? 0);
53
+ }
54
+
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcnVubmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNGaWxlU3luYywgc3Bhd25TeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgbWtkaXJTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBDUkVBVEVfVkVSU0lPTiB9IGZyb20gXCIuL3ZlcnNpb24uanNcIjtcblxuY29uc3QgQlVJTERFUl9JTUFHRSA9IGBnaGNyLmlvL2RlY29oZXJlL3NjYWZmb2xkOiR7Q1JFQVRFX1ZFUlNJT059YDtcblxuLyoqXG4gKiBSdW4gdGhlIHNjYWZmb2xkIGluc2lkZSBhIHByZS1idWlsdCBEb2NrZXIgYnVpbGRlciBpbWFnZS5cbiAqXG4gKiBDYWxsZWQgd2hlbiBgREVDT0hFUkVfQlVJTERFUmAgaXMgbm90IHNldCDigJQgaS5lLiB0aGUgQ0xJIGlzIHJ1bm5pbmcgb24gdGhlXG4gKiBob3N0LCBvdXRzaWRlIHRoZSBjb250YWluZXIuIE1vdW50cyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBhcyBgL3dvcmtzcGFjZWAgc29cbiAqIHRoZSBzY2FmZm9sZGVkIGZpbGVzIGFyZSB3cml0dGVuIGJhY2sgdG8gdGhlIGhvc3QgZmlsZXN5c3RlbS5cbiAqXG4gKiBJZiBgfi8uY29uZmlnL2F1dGgwYCBleGlzdHMgb24gdGhlIGhvc3QgdGhlIGRpcmVjdG9yeSBpcyBhbHNvIG1vdW50ZWQgc29cbiAqIHRoZSBhdXRoMCBDTEkgaW5zaWRlIHRoZSBjb250YWluZXIgY2FuIHJldXNlIGV4aXN0aW5nIGNyZWRlbnRpYWxzIHNpbGVudGx5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcnVuSW5CdWlsZGVyKG9wdHM6IHsgZD86IHN0cmluZyB9KTogbmV2ZXIge1xuXHRjb25zdCB0YXJnZXREaXIgPSByZXNvbHZlKG9wdHMuZCA/PyBcIi5cIik7XG5cdG1rZGlyU3luYyh0YXJnZXREaXIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuXG5cdC8vIEVuc3VyZSBEb2NrZXIgaXMgYXZhaWxhYmxlLlxuXHR0cnkge1xuXHRcdGV4ZWNGaWxlU3luYyhcImRvY2tlclwiLCBbXCJpbmZvXCJdLCB7IHN0ZGlvOiBcInBpcGVcIiB9KTtcblx0fSBjYXRjaCB7XG5cdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFwiXFxuICBEb2NrZXIgaXMgcmVxdWlyZWQgdG8gc2NhZmZvbGQgYSBEZWNvaGVyZSBwcm9qZWN0LlxcblwiICtcblx0XHRcdFx0XCIgIEluc3RhbGwgRG9ja2VyIERlc2t0b3A6IGh0dHBzOi8vd3d3LmRvY2tlci5jb20vcHJvZHVjdHMvZG9ja2VyLWRlc2t0b3BcXG5cIixcblx0XHQpO1xuXHRcdHByb2Nlc3MuZXhpdCgxKTtcblx0fVxuXG5cdGNvbnN0IHZvbHVtZXM6IHN0cmluZ1tdID0gW1wiLXZcIiwgYCR7dGFyZ2V0RGlyfTovd29ya3NwYWNlYF07XG5cblx0Y29uc29sZS5sb2coXCIgIFJ1bm5pbmcgc2NhZmZvbGRpbmcgaW4gYSBzYW5kYm94ZWQgY29udGFpbmVyLi4uXFxuXCIpO1xuXG5cdGNvbnN0IHJlc3VsdCA9IHNwYXduU3luYyhcblx0XHRcImRvY2tlclwiLFxuXHRcdFtcblx0XHRcdFwicnVuXCIsXG5cdFx0XHRcIi0tcm1cIixcblx0XHRcdFwiLWl0XCIsXG5cdFx0XHQuLi52b2x1bWVzLFxuXHRcdFx0XCItZVwiLFxuXHRcdFx0XCJERUNPSEVSRV9CVUlMREVSPTFcIixcblx0XHRcdFwiLXdcIixcblx0XHRcdFwiL3dvcmtzcGFjZVwiLFxuXHRcdFx0QlVJTERFUl9JTUFHRSxcblx0XHRcdFwid2ViYXBpXCIsXG5cdFx0XHRcIi1kXCIsXG5cdFx0XHRcIi5cIixcblx0XHRdLFxuXHRcdHsgc3RkaW86IFwiaW5oZXJpdFwiIH0sXG5cdCk7XG5cblx0cHJvY2Vzcy5leGl0KHJlc3VsdC5zdGF0dXMgPz8gMCk7XG59XG4iXSwibmFtZXMiOlsiZXhlY0ZpbGVTeW5jIiwic3Bhd25TeW5jIiwibWtkaXJTeW5jIiwicmVzb2x2ZSIsIkNSRUFURV9WRVJTSU9OIiwiQlVJTERFUl9JTUFHRSIsInJ1bkluQnVpbGRlciIsIm9wdHMiLCJ0YXJnZXREaXIiLCJkIiwicmVjdXJzaXZlIiwic3RkaW8iLCJjb25zb2xlIiwiZXJyb3IiLCJwcm9jZXNzIiwiZXhpdCIsInZvbHVtZXMiLCJsb2ciLCJyZXN1bHQiLCJzdGF0dXMiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFlBQVksRUFBRUMsU0FBUyxRQUFRLHFCQUFxQjtBQUM3RCxTQUFTQyxTQUFTLFFBQVEsVUFBVTtBQUNwQyxTQUFTQyxPQUFPLFFBQVEsWUFBWTtBQUNwQyxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUU5QyxNQUFNQyxnQkFBZ0IsQ0FBQywwQkFBMEIsRUFBRUQsZ0JBQWdCO0FBRW5FOzs7Ozs7Ozs7Q0FTQyxHQUNELE9BQU8sU0FBU0UsYUFBYUMsSUFBb0I7SUFDaEQsTUFBTUMsWUFBWUwsUUFBUUksS0FBS0UsQ0FBQyxJQUFJO0lBQ3BDUCxVQUFVTSxXQUFXO1FBQUVFLFdBQVc7SUFBSztJQUV2Qyw4QkFBOEI7SUFDOUIsSUFBSTtRQUNIVixhQUFhLFVBQVU7WUFBQztTQUFPLEVBQUU7WUFBRVcsT0FBTztRQUFPO0lBQ2xELEVBQUUsT0FBTTtRQUNQQyxRQUFRQyxLQUFLLENBQ1osNkRBQ0M7UUFFRkMsUUFBUUMsSUFBSSxDQUFDO0lBQ2Q7SUFFQSxNQUFNQyxVQUFvQjtRQUFDO1FBQU0sR0FBR1IsVUFBVSxXQUFXLENBQUM7S0FBQztJQUUzREksUUFBUUssR0FBRyxDQUFDO0lBRVosTUFBTUMsU0FBU2pCLFVBQ2QsVUFDQTtRQUNDO1FBQ0E7UUFDQTtXQUNHZTtRQUNIO1FBQ0E7UUFDQTtRQUNBO1FBQ0FYO1FBQ0E7UUFDQTtRQUNBO0tBQ0EsRUFDRDtRQUFFTSxPQUFPO0lBQVU7SUFHcEJHLFFBQVFDLElBQUksQ0FBQ0csT0FBT0MsTUFBTSxJQUFJO0FBQy9CIn0=
@@ -0,0 +1,22 @@
1
+ import { createRequire } from "node:module";
2
+ import { dirname, join } from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ const _require = createRequire(import.meta.url);
5
+ function resolveCreateVersion() {
6
+ let dir = dirname(fileURLToPath(import.meta.url));
7
+ for(let i = 0; i < 5; i++){
8
+ try {
9
+ const pkg = _require(join(dir, "package.json"));
10
+ if (pkg.name === "@decohere/create") {
11
+ return pkg.version ?? "0.0.1-dev";
12
+ }
13
+ } catch {}
14
+ const parent = dirname(dir);
15
+ if (parent === dir) break;
16
+ dir = parent;
17
+ }
18
+ return "0.0.1-dev";
19
+ }
20
+ /** Version of @decohere/create, used to pin scaffolded @decohere/* dependencies. */ export const CREATE_VERSION = resolveCreateVersion();
21
+
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvdmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSBcIm5vZGU6bW9kdWxlXCI7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJub2RlOnVybFwiO1xuXG5jb25zdCBfcmVxdWlyZSA9IGNyZWF0ZVJlcXVpcmUoaW1wb3J0Lm1ldGEudXJsKTtcblxuZnVuY3Rpb24gcmVzb2x2ZUNyZWF0ZVZlcnNpb24oKTogc3RyaW5nIHtcblx0bGV0IGRpciA9IGRpcm5hbWUoZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS51cmwpKTtcblx0Zm9yIChsZXQgaSA9IDA7IGkgPCA1OyBpKyspIHtcblx0XHR0cnkge1xuXHRcdFx0Y29uc3QgcGtnID0gX3JlcXVpcmUoam9pbihkaXIsIFwicGFja2FnZS5qc29uXCIpKSBhcyB7XG5cdFx0XHRcdG5hbWU/OiBzdHJpbmc7XG5cdFx0XHRcdHZlcnNpb24/OiBzdHJpbmc7XG5cdFx0XHR9O1xuXHRcdFx0aWYgKHBrZy5uYW1lID09PSBcIkBkZWNvaGVyZS9jcmVhdGVcIikge1xuXHRcdFx0XHRyZXR1cm4gcGtnLnZlcnNpb24gPz8gXCIwLjAuMS1kZXZcIjtcblx0XHRcdH1cblx0XHR9IGNhdGNoIHt9XG5cdFx0Y29uc3QgcGFyZW50ID0gZGlybmFtZShkaXIpO1xuXHRcdGlmIChwYXJlbnQgPT09IGRpcikgYnJlYWs7XG5cdFx0ZGlyID0gcGFyZW50O1xuXHR9XG5cdHJldHVybiBcIjAuMC4xLWRldlwiO1xufVxuXG4vKiogVmVyc2lvbiBvZiBAZGVjb2hlcmUvY3JlYXRlLCB1c2VkIHRvIHBpbiBzY2FmZm9sZGVkIEBkZWNvaGVyZS8qIGRlcGVuZGVuY2llcy4gKi9cbmV4cG9ydCBjb25zdCBDUkVBVEVfVkVSU0lPTiA9IHJlc29sdmVDcmVhdGVWZXJzaW9uKCk7XG4iXSwibmFtZXMiOlsiY3JlYXRlUmVxdWlyZSIsImRpcm5hbWUiLCJqb2luIiwiZmlsZVVSTFRvUGF0aCIsIl9yZXF1aXJlIiwidXJsIiwicmVzb2x2ZUNyZWF0ZVZlcnNpb24iLCJkaXIiLCJpIiwicGtnIiwibmFtZSIsInZlcnNpb24iLCJwYXJlbnQiLCJDUkVBVEVfVkVSU0lPTiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsYUFBYSxRQUFRLGNBQWM7QUFDNUMsU0FBU0MsT0FBTyxFQUFFQyxJQUFJLFFBQVEsWUFBWTtBQUMxQyxTQUFTQyxhQUFhLFFBQVEsV0FBVztBQUV6QyxNQUFNQyxXQUFXSixjQUFjLFlBQVlLLEdBQUc7QUFFOUMsU0FBU0M7SUFDUixJQUFJQyxNQUFNTixRQUFRRSxjQUFjLFlBQVlFLEdBQUc7SUFDL0MsSUFBSyxJQUFJRyxJQUFJLEdBQUdBLElBQUksR0FBR0EsSUFBSztRQUMzQixJQUFJO1lBQ0gsTUFBTUMsTUFBTUwsU0FBU0YsS0FBS0ssS0FBSztZQUkvQixJQUFJRSxJQUFJQyxJQUFJLEtBQUssb0JBQW9CO2dCQUNwQyxPQUFPRCxJQUFJRSxPQUFPLElBQUk7WUFDdkI7UUFDRCxFQUFFLE9BQU0sQ0FBQztRQUNULE1BQU1DLFNBQVNYLFFBQVFNO1FBQ3ZCLElBQUlLLFdBQVdMLEtBQUs7UUFDcEJBLE1BQU1LO0lBQ1A7SUFDQSxPQUFPO0FBQ1I7QUFFQSxrRkFBa0YsR0FDbEYsT0FBTyxNQUFNQyxpQkFBaUJQLHVCQUF1QiJ9
@@ -1,4 +1,4 @@
1
- import { ask, pick } from "../../../v1/domain/prompt.js";
1
+ import { ask, pick } from "../../domain/prompt.js";
2
2
  import { WELL_KNOWN_FILES } from "../../models/const.js";
3
3
  import { AuthConfigModel } from "../models/auth-config.model.js";
4
4
  import { ControllerSourceFile } from "../models/controller-source-file.model.js";
@@ -112,4 +112,4 @@ export const AuthFeature = {
112
112
  scaffold
113
113
  };
114
114
 
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL2F1dGguZmVhdHVyZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc2ssIHBpY2sgfSBmcm9tIFwiLi4vLi4vLi4vdjEvZG9tYWluL3Byb21wdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBDb25maWdZYW1sIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb25maWcteWFtbC5tb2RlbC5qc1wiO1xuaW1wb3J0IHsgV0VMTF9LTk9XTl9GSUxFUyB9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29uc3QuanNcIjtcbmltcG9ydCB0eXBlIHsgRW52RmlsZSB9IGZyb20gXCIuLi8uLi9tb2RlbHMvZW52LWZpbGUubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgV29ya3NwYWNlU2NhZmZvbGQgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3Byb2plY3QubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgRmVhdHVyZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9zY2FmZm9sZC5zZXJ2aWNlLmpzXCI7XG5pbXBvcnQgeyBBdXRoQ29uZmlnTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2F1dGgtY29uZmlnLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBDb250cm9sbGVyU291cmNlRmlsZSB9IGZyb20gXCIuLi9tb2RlbHMvY29udHJvbGxlci1zb3VyY2UtZmlsZS5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBNYWluU291cmNlRmlsZSB9IGZyb20gXCIuLi9tb2RlbHMvbWFpbi1zb3VyY2UtZmlsZS5tb2RlbC5qc1wiO1xuaW1wb3J0ICogYXMgYXV0aDBDbGkgZnJvbSBcIi4vYXV0aDAtY2xpLmpzXCI7XG5cbmV4cG9ydCB0eXBlIEF1dGhPcHRpb25zID0ge1xuXHRhdXRoUHJvdmlkZXI/OiBcImF1dGgwXCIgfCBcIm5vbmVcIjtcblx0aXNzdWVyQmFzZVVybD86IHN0cmluZztcblx0YXVkaWVuY2U/OiBzdHJpbmc7XG59O1xuXG5hc3luYyBmdW5jdGlvbiBnZXRPcHRpb25zKFxuXHR3b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLFxuXHRjbGlPcHRpb25zOiBQYXJ0aWFsPEF1dGhPcHRpb25zPixcbik6IFByb21pc2U8UGFydGlhbDxBdXRoT3B0aW9ucz4+IHtcblx0aWYgKGNsaU9wdGlvbnMuYXV0aFByb3ZpZGVyICE9IG51bGwpIHJldHVybiB7fTtcblxuXHRjb25zdCBjaG9pY2VzID0gW3sgbGFiZWw6IFwibm9uZVwiIGFzIGNvbnN0IH0sIHsgbGFiZWw6IFwiYXV0aDBcIiBhcyBjb25zdCB9XTtcblx0Y29uc3Qgc2VsZWN0ZWQgPSBhd2FpdCBwaWNrKFwiXFxuICBBdXRoIHByb3ZpZGVyOiBcIiwgY2hvaWNlcywgKGMpID0+IGMubGFiZWwpO1xuXHRjb25zdCBwcm92aWRlciA9IHNlbGVjdGVkPy5sYWJlbCA/PyBcIm5vbmVcIjtcblxuXHRpZiAocHJvdmlkZXIgIT09IFwiYXV0aDBcIikgcmV0dXJuIHsgYXV0aFByb3ZpZGVyOiBcIm5vbmVcIiB9O1xuXG5cdHJldHVybiBnZXRBdXRoME9wdGlvbnMod29ya3NwYWNlKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0QXV0aDBPcHRpb25zKHdvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQpOiBQcm9taXNlPFBhcnRpYWw8QXV0aE9wdGlvbnM+PiB7XG5cdGlmICghYXV0aDBDbGkuaXNJbnN0YWxsZWQoKSkge1xuXHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcIlxcbiAgVGhlIEF1dGgwIENMSSBpcyByZXF1aXJlZCBmb3IgYXV0b21hdGVkIHNldHVwLlxcblwiICtcblx0XHRcdFx0XCIgIEluc3RhbGw6IGJyZXcgaW5zdGFsbCBhdXRoMC9hdXRoMC1jbGkvYXV0aDBcXG5cIiArXG5cdFx0XHRcdFwiICBPciB2aXNpdDogaHR0cHM6Ly9naXRodWIuY29tL2F1dGgwL2F1dGgwLWNsaVxcblwiLFxuXHRcdCk7XG5cdFx0cHJvY2Vzcy5leGl0KDEpO1xuXHR9XG5cblx0cHJvY2Vzcy5zdGRvdXQud3JpdGUoXCJcXG4gIENoZWNraW5nIEF1dGgwIGNyZWRlbnRpYWxzLi4uXCIpO1xuXHRsZXQgdGVuYW50cyA9IGF1dGgwQ2xpLmxpc3RUZW5hbnRzKCk7XG5cdGlmICh0ZW5hbnRzLmxlbmd0aCA9PT0gMCkge1xuXHRcdHByb2Nlc3Muc3Rkb3V0LndyaXRlKFwiIG5vdCBsb2dnZWQgaW4uXFxuXCIpO1xuXHRcdGNvbnNvbGUubG9nKFwiICBMb2dnaW5nIGluIHRvIEF1dGgwICh5b3VyIGJyb3dzZXIgd2lsbCBvcGVuKS4uLlwiKTtcblx0XHRpZiAoIWF1dGgwQ2xpLmxvZ2luKCkpIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCJcXG4gIEF1dGgwIGxvZ2luIGZhaWxlZC5cIik7XG5cdFx0XHRwcm9jZXNzLmV4aXQoMSk7XG5cdFx0fVxuXHRcdHRlbmFudHMgPSBhdXRoMENsaS5saXN0VGVuYW50cygpO1xuXHR9XG5cblx0dHJ5IHtcblx0XHRhdXRoMENsaS5saXN0QXBpcygpO1xuXHRcdHByb2Nlc3Muc3Rkb3V0LndyaXRlKFwiIG9rLlxcblwiKTtcblx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0aWYgKGVyciBpbnN0YW5jZW9mIGF1dGgwQ2xpLkF1dGgwQXV0aEVycm9yKSB7XG5cdFx0XHRwcm9jZXNzLnN0ZG91dC53cml0ZShcIiB0b2tlbiBleHBpcmVkLlxcblwiKTtcblx0XHRcdGNvbnNvbGUubG9nKFwiICBSZS1hdXRoZW50aWNhdGluZyAoeW91ciBicm93c2VyIHdpbGwgb3BlbikuLi5cIik7XG5cdFx0XHRpZiAoIWF1dGgwQ2xpLmxvZ2luKCkpIHtcblx0XHRcdFx0Y29uc29sZS5lcnJvcihcIlxcbiAgQXV0aDAgbG9naW4gZmFpbGVkLlwiKTtcblx0XHRcdFx0cHJvY2Vzcy5leGl0KDEpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdGNvbnN0IGFjdGl2ZSA9IHRlbmFudHMuZmluZCgodCkgPT4gdC5hY3RpdmUpID8/IHRlbmFudHNbMF07XG5cdGNvbnN0IGlzc3VlckJhc2VVcmwgPSBgaHR0cHM6Ly8ke2FjdGl2ZS5uYW1lfWA7XG5cdGNvbnNvbGUubG9nKGBcXG4gIOKckyBBdXRoMCB0ZW5hbnQ6ICR7aXNzdWVyQmFzZVVybH1gKTtcblxuXHRwcm9jZXNzLnN0ZG91dC53cml0ZShcIlxcbiAgRmV0Y2hpbmcgQXV0aDAgQVBJcy4uLlwiKTtcblx0Y29uc3QgdXNlckFwaXMgPSBhdXRoMENsaS5saXN0QXBpcygpLmZpbHRlcigoYSkgPT4gIWEubmFtZS5pbmNsdWRlcyhcIk1hbmFnZW1lbnQgQVBJXCIpKTtcblx0cHJvY2Vzcy5zdGRvdXQud3JpdGUoYCBmb3VuZCAke3VzZXJBcGlzLmxlbmd0aH0uXFxuYCk7XG5cblx0dHlwZSBBcGlDaG9pY2UgPSB7IGxhYmVsOiBzdHJpbmc7IGV4aXN0aW5nOiBzdHJpbmcgfCBudWxsIH07XG5cdGNvbnN0IHByb2plY3ROYW1lID0gd29ya3NwYWNlLm5hbWU7XG5cdGNvbnN0IGFwaUNob2ljZXM6IEFwaUNob2ljZVtdID0gW1xuXHRcdHsgbGFiZWw6IGA8bmV3PiBodHRwczovL2FwaS4ke3Byb2plY3ROYW1lfWAsIGV4aXN0aW5nOiBudWxsIH0sXG5cdFx0Li4udXNlckFwaXMubWFwKChhKSA9PiAoeyBsYWJlbDogYCR7YS5uYW1lfSDigJQgJHthLmlkZW50aWZpZXJ9YCwgZXhpc3Rpbmc6IGEuaWRlbnRpZmllciB9KSksXG5cdF07XG5cblx0Y29uc3QgYXBpU2VsZWN0ZWQgPSBhd2FpdCBwaWNrKFwiXFxuICBTZWxlY3QgQXV0aDAgQVBJOiBcIiwgYXBpQ2hvaWNlcywgKGMpID0+IGMubGFiZWwpO1xuXG5cdGxldCBhdWRpZW5jZTogc3RyaW5nO1xuXHRpZiAoIWFwaVNlbGVjdGVkIHx8IGFwaVNlbGVjdGVkLmV4aXN0aW5nID09PSBudWxsKSB7XG5cdFx0Y29uc3QgZGVmYXVsdElkID0gYGh0dHBzOi8vYXBpLiR7cHJvamVjdE5hbWV9YDtcblx0XHRhdWRpZW5jZSA9IGF3YWl0IGFzayhgICBBUEkgSWRlbnRpZmllciBbJHtkZWZhdWx0SWR9XTogYCwgZGVmYXVsdElkKTtcblx0XHRjb25zb2xlLmxvZyhcIlxcbiAgQ3JlYXRpbmcgQXV0aDAgQVBJLi4uXCIpO1xuXHRcdGF1ZGllbmNlID0gYXV0aDBDbGkuY3JlYXRlQXBpKGAke3Byb2plY3ROYW1lfSBBUElgLCBhdWRpZW5jZSkuaWRlbnRpZmllcjtcblx0XHRjb25zb2xlLmxvZyhgICBcXHUyNzEzIEFQSSBjcmVhdGVkOiAke2F1ZGllbmNlfWApO1xuXHR9IGVsc2Uge1xuXHRcdGF1ZGllbmNlID0gYXBpU2VsZWN0ZWQuZXhpc3Rpbmc7XG5cdFx0Y29uc29sZS5sb2coYCAgXFx1MjcxMyBTZWxlY3RlZDogJHthdWRpZW5jZX1gKTtcblx0fVxuXG5cdHJldHVybiB7IGF1dGhQcm92aWRlcjogXCJhdXRoMFwiLCBpc3N1ZXJCYXNlVXJsLCBhdWRpZW5jZSB9O1xufVxuXG5mdW5jdGlvbiBzY2FmZm9sZCh3b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLCBvcHRpb25zOiBBdXRoT3B0aW9ucyk6IHZvaWQge1xuXHRpZiAob3B0aW9ucy5hdXRoUHJvdmlkZXIgIT09IFwiYXV0aDBcIikgcmV0dXJuO1xuXG5cdGNvbnN0IHJlc291cmNlID0gXCJIZWxsb1wiO1xuXG5cdGZvciAoY29uc3QgY29udHJvbGxlciBvZiB3b3Jrc3BhY2UuZ2V0TW9kZWxzKENvbnRyb2xsZXJTb3VyY2VGaWxlKSkge1xuXHRcdGNvbnRyb2xsZXJcblx0XHRcdC5hZGREZWNvcmF0b3IoYEBBdXRob3JpemUoXCJyZWFkXCIsIFwiJHtyZXNvdXJjZX1cIilgKVxuXHRcdFx0LmFkZENvcnRleEltcG9ydChcIkFsbG93QW5vbnltb3VzXCIpXG5cdFx0XHQuYWRkQ29ydGV4SW1wb3J0KFwiQXV0aG9yaXplXCIpXG5cdFx0XHQuYWRkQ29ydGV4SW1wb3J0KFwiSVByaW5jaXBhbFByb3ZpZGVyVG9rZW5cIilcblx0XHRcdC5hZGRDb3J0ZXhJbXBvcnQoXCJJUHJpbmNpcGFsUHJvdmlkZXJcIiwgdHJ1ZSlcblx0XHRcdC5hZGRJbXBvcnQoXCJpbmplY3RcIiwgXCJAZGVjb2hlcmUvY3J1Y2libGUvZGVjb3JhdG9yc1wiKVxuXHRcdFx0LmFkZENvbnN0cnVjdG9yUGFyYW0oXG5cdFx0XHRcdGBAaW5qZWN0KElQcmluY2lwYWxQcm92aWRlclRva2VuKSBwcml2YXRlIHJlYWRvbmx5IHByaW5jaXBhbFByb3ZpZGVyOiBJUHJpbmNpcGFsUHJvdmlkZXJgLFxuXHRcdFx0KTtcblx0XHRjb250cm9sbGVyLmdldE1ldGhvZChcImdldEFsbFwiKS5hZGREZWNvcmF0b3IoXCJAQWxsb3dBbm9ueW1vdXMoKVwiKTtcblx0XHRjb250cm9sbGVyLmdldE1ldGhvZChcImNyZWF0ZVwiKS5hZGREZWNvcmF0b3IoYEBBdXRob3JpemUoXCJjcmVhdGVcIiwgXCIke3Jlc291cmNlfVwiKWApO1xuXHRcdGNvbnRyb2xsZXIuZ2V0TWV0aG9kKFwidXBkYXRlXCIpLmFkZERlY29yYXRvcihgQEF1dGhvcml6ZShcInVwZGF0ZVwiLCBcIiR7cmVzb3VyY2V9XCIpYCk7XG5cdFx0Y29udHJvbGxlci5nZXRNZXRob2QoXCJyZW1vdmVcIikuYWRkRGVjb3JhdG9yKGBAQXV0aG9yaXplKFwiZGVsZXRlXCIsIFwiJHtyZXNvdXJjZX1cIilgKTtcblx0fVxuXG5cdHdvcmtzcGFjZVxuXHRcdC5nZXRNb2RlbDxNYWluU291cmNlRmlsZT4oV0VMTF9LTk9XTl9GSUxFUy5NQUlOX1RTKVxuXHRcdD8uYWRkU2lkZUVmZmVjdEltcG9ydChcIkBkZWNvaGVyZS9jb3J0ZXgvYXV0aFwiKVxuXHRcdC5hZGRCdWlsZGVyQ2FsbChcIi53aXRoQXV0aCgpXCIpO1xuXG5cdC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9UZW1wbGF0ZUN1cmx5SW5TdHJpbmc6IGludGVudGlvbmFsIFlBTUwgZW52LXZhciBwbGFjZWhvbGRlcnNcblx0Y29uc3QgaXNzdWVyUGxhY2Vob2xkZXIgPSBcIiR7QVVUSDBfSVNTVUVSX0JBU0VfVVJMfVwiO1xuXHQvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vVGVtcGxhdGVDdXJseUluU3RyaW5nOiBpbnRlbnRpb25hbCBZQU1MIGVudi12YXIgcGxhY2Vob2xkZXJzXG5cdGNvbnN0IGF1ZFBsYWNlaG9sZGVyID0gXCIke0FVVEgwX0FVRElFTkNFfVwiO1xuXG5cdGNvbnN0IGNvbmZpZ1NlY3Rpb24gPSBgYXV0aDpcXG4gIGRpc2NvdmVyeVVybDogJHtpc3N1ZXJQbGFjZWhvbGRlcn1cXG4gIGF1ZGllbmNlOiAke2F1ZFBsYWNlaG9sZGVyfVxcbmA7XG5cblx0d29ya3NwYWNlLmdldE1vZGVsPENvbmZpZ1lhbWw+KFdFTExfS05PV05fRklMRVMuQ09ORklHX1lBTUwpPy5hZGRTZWN0aW9uKGNvbmZpZ1NlY3Rpb24pO1xuXG5cdHdvcmtzcGFjZVxuXHRcdC5nZXRNb2RlbDxFbnZGaWxlPihXRUxMX0tOT1dOX0ZJTEVTLkVOVl9GSUxFKVxuXHRcdD8uYWRkRW50cnkoXCJBVVRIMF9JU1NVRVJfQkFTRV9VUkxcIiwgb3B0aW9ucy5pc3N1ZXJCYXNlVXJsID8/IFwiXCIpXG5cdFx0LmFkZEVudHJ5KFwiQVVUSDBfQVVESUVOQ0VcIiwgb3B0aW9ucy5hdWRpZW5jZSA/PyBcIlwiKTtcblxuXHR3b3Jrc3BhY2UuYWRkTW9kZWwoXG5cdFx0bmV3IEF1dGhDb25maWdNb2RlbCh7XG5cdFx0XHRpc3N1ZXJCYXNlVXJsOiBvcHRpb25zLmlzc3VlckJhc2VVcmwgPz8gXCJcIixcblx0XHRcdGF1ZGllbmNlOiBvcHRpb25zLmF1ZGllbmNlID8/IFwiXCIsXG5cdFx0fSksXG5cdCk7XG59XG5cbmV4cG9ydCBjb25zdCBBdXRoRmVhdHVyZTogRmVhdHVyZTxBdXRoT3B0aW9ucz4gPSB7IGdldE9wdGlvbnMsIHNjYWZmb2xkIH07XG4iXSwibmFtZXMiOlsiYXNrIiwicGljayIsIldFTExfS05PV05fRklMRVMiLCJBdXRoQ29uZmlnTW9kZWwiLCJDb250cm9sbGVyU291cmNlRmlsZSIsImF1dGgwQ2xpIiwiZ2V0T3B0aW9ucyIsIndvcmtzcGFjZSIsImNsaU9wdGlvbnMiLCJhdXRoUHJvdmlkZXIiLCJjaG9pY2VzIiwibGFiZWwiLCJzZWxlY3RlZCIsImMiLCJwcm92aWRlciIsImdldEF1dGgwT3B0aW9ucyIsImlzSW5zdGFsbGVkIiwiY29uc29sZSIsImVycm9yIiwicHJvY2VzcyIsImV4aXQiLCJzdGRvdXQiLCJ3cml0ZSIsInRlbmFudHMiLCJsaXN0VGVuYW50cyIsImxlbmd0aCIsImxvZyIsImxvZ2luIiwibGlzdEFwaXMiLCJlcnIiLCJBdXRoMEF1dGhFcnJvciIsImFjdGl2ZSIsImZpbmQiLCJ0IiwiaXNzdWVyQmFzZVVybCIsIm5hbWUiLCJ1c2VyQXBpcyIsImZpbHRlciIsImEiLCJpbmNsdWRlcyIsInByb2plY3ROYW1lIiwiYXBpQ2hvaWNlcyIsImV4aXN0aW5nIiwibWFwIiwiaWRlbnRpZmllciIsImFwaVNlbGVjdGVkIiwiYXVkaWVuY2UiLCJkZWZhdWx0SWQiLCJjcmVhdGVBcGkiLCJzY2FmZm9sZCIsIm9wdGlvbnMiLCJyZXNvdXJjZSIsImNvbnRyb2xsZXIiLCJnZXRNb2RlbHMiLCJhZGREZWNvcmF0b3IiLCJhZGRDb3J0ZXhJbXBvcnQiLCJhZGRJbXBvcnQiLCJhZGRDb25zdHJ1Y3RvclBhcmFtIiwiZ2V0TWV0aG9kIiwiZ2V0TW9kZWwiLCJNQUlOX1RTIiwiYWRkU2lkZUVmZmVjdEltcG9ydCIsImFkZEJ1aWxkZXJDYWxsIiwiaXNzdWVyUGxhY2Vob2xkZXIiLCJhdWRQbGFjZWhvbGRlciIsImNvbmZpZ1NlY3Rpb24iLCJDT05GSUdfWUFNTCIsImFkZFNlY3Rpb24iLCJFTlZfRklMRSIsImFkZEVudHJ5IiwiYWRkTW9kZWwiLCJBdXRoRmVhdHVyZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsR0FBRyxFQUFFQyxJQUFJLFFBQVEsK0JBQStCO0FBRXpELFNBQVNDLGdCQUFnQixRQUFRLHdCQUF3QjtBQUl6RCxTQUFTQyxlQUFlLFFBQVEs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
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL2F1dGguZmVhdHVyZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc2ssIHBpY2sgfSBmcm9tIFwiLi4vLi4vZG9tYWluL3Byb21wdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBDb25maWdZYW1sIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb25maWcteWFtbC5tb2RlbC5qc1wiO1xuaW1wb3J0IHsgV0VMTF9LTk9XTl9GSUxFUyB9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29uc3QuanNcIjtcbmltcG9ydCB0eXBlIHsgRW52RmlsZSB9IGZyb20gXCIuLi8uLi9tb2RlbHMvZW52LWZpbGUubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgV29ya3NwYWNlU2NhZmZvbGQgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3Byb2plY3QubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgRmVhdHVyZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9zY2FmZm9sZC5zZXJ2aWNlLmpzXCI7XG5pbXBvcnQgeyBBdXRoQ29uZmlnTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2F1dGgtY29uZmlnLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBDb250cm9sbGVyU291cmNlRmlsZSB9IGZyb20gXCIuLi9tb2RlbHMvY29udHJvbGxlci1zb3VyY2UtZmlsZS5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBNYWluU291cmNlRmlsZSB9IGZyb20gXCIuLi9tb2RlbHMvbWFpbi1zb3VyY2UtZmlsZS5tb2RlbC5qc1wiO1xuaW1wb3J0ICogYXMgYXV0aDBDbGkgZnJvbSBcIi4vYXV0aDAtY2xpLmpzXCI7XG5cbmV4cG9ydCB0eXBlIEF1dGhPcHRpb25zID0ge1xuXHRhdXRoUHJvdmlkZXI/OiBcImF1dGgwXCIgfCBcIm5vbmVcIjtcblx0aXNzdWVyQmFzZVVybD86IHN0cmluZztcblx0YXVkaWVuY2U/OiBzdHJpbmc7XG59O1xuXG5hc3luYyBmdW5jdGlvbiBnZXRPcHRpb25zKFxuXHR3b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLFxuXHRjbGlPcHRpb25zOiBQYXJ0aWFsPEF1dGhPcHRpb25zPixcbik6IFByb21pc2U8UGFydGlhbDxBdXRoT3B0aW9ucz4+IHtcblx0aWYgKGNsaU9wdGlvbnMuYXV0aFByb3ZpZGVyICE9IG51bGwpIHJldHVybiB7fTtcblxuXHRjb25zdCBjaG9pY2VzID0gW3sgbGFiZWw6IFwibm9uZVwiIGFzIGNvbnN0IH0sIHsgbGFiZWw6IFwiYXV0aDBcIiBhcyBjb25zdCB9XTtcblx0Y29uc3Qgc2VsZWN0ZWQgPSBhd2FpdCBwaWNrKFwiXFxuICBBdXRoIHByb3ZpZGVyOiBcIiwgY2hvaWNlcywgKGMpID0+IGMubGFiZWwpO1xuXHRjb25zdCBwcm92aWRlciA9IHNlbGVjdGVkPy5sYWJlbCA/PyBcIm5vbmVcIjtcblxuXHRpZiAocHJvdmlkZXIgIT09IFwiYXV0aDBcIikgcmV0dXJuIHsgYXV0aFByb3ZpZGVyOiBcIm5vbmVcIiB9O1xuXG5cdHJldHVybiBnZXRBdXRoME9wdGlvbnMod29ya3NwYWNlKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0QXV0aDBPcHRpb25zKHdvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQpOiBQcm9taXNlPFBhcnRpYWw8QXV0aE9wdGlvbnM+PiB7XG5cdGlmICghYXV0aDBDbGkuaXNJbnN0YWxsZWQoKSkge1xuXHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcIlxcbiAgVGhlIEF1dGgwIENMSSBpcyByZXF1aXJlZCBmb3IgYXV0b21hdGVkIHNldHVwLlxcblwiICtcblx0XHRcdFx0XCIgIEluc3RhbGw6IGJyZXcgaW5zdGFsbCBhdXRoMC9hdXRoMC1jbGkvYXV0aDBcXG5cIiArXG5cdFx0XHRcdFwiICBPciB2aXNpdDogaHR0cHM6Ly9naXRodWIuY29tL2F1dGgwL2F1dGgwLWNsaVxcblwiLFxuXHRcdCk7XG5cdFx0cHJvY2Vzcy5leGl0KDEpO1xuXHR9XG5cblx0cHJvY2Vzcy5zdGRvdXQud3JpdGUoXCJcXG4gIENoZWNraW5nIEF1dGgwIGNyZWRlbnRpYWxzLi4uXCIpO1xuXHRsZXQgdGVuYW50cyA9IGF1dGgwQ2xpLmxpc3RUZW5hbnRzKCk7XG5cdGlmICh0ZW5hbnRzLmxlbmd0aCA9PT0gMCkge1xuXHRcdHByb2Nlc3Muc3Rkb3V0LndyaXRlKFwiIG5vdCBsb2dnZWQgaW4uXFxuXCIpO1xuXHRcdGNvbnNvbGUubG9nKFwiICBMb2dnaW5nIGluIHRvIEF1dGgwICh5b3VyIGJyb3dzZXIgd2lsbCBvcGVuKS4uLlwiKTtcblx0XHRpZiAoIWF1dGgwQ2xpLmxvZ2luKCkpIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCJcXG4gIEF1dGgwIGxvZ2luIGZhaWxlZC5cIik7XG5cdFx0XHRwcm9jZXNzLmV4aXQoMSk7XG5cdFx0fVxuXHRcdHRlbmFudHMgPSBhdXRoMENsaS5saXN0VGVuYW50cygpO1xuXHR9XG5cblx0dHJ5IHtcblx0XHRhdXRoMENsaS5saXN0QXBpcygpO1xuXHRcdHByb2Nlc3Muc3Rkb3V0LndyaXRlKFwiIG9rLlxcblwiKTtcblx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0aWYgKGVyciBpbnN0YW5jZW9mIGF1dGgwQ2xpLkF1dGgwQXV0aEVycm9yKSB7XG5cdFx0XHRwcm9jZXNzLnN0ZG91dC53cml0ZShcIiB0b2tlbiBleHBpcmVkLlxcblwiKTtcblx0XHRcdGNvbnNvbGUubG9nKFwiICBSZS1hdXRoZW50aWNhdGluZyAoeW91ciBicm93c2VyIHdpbGwgb3BlbikuLi5cIik7XG5cdFx0XHRpZiAoIWF1dGgwQ2xpLmxvZ2luKCkpIHtcblx0XHRcdFx0Y29uc29sZS5lcnJvcihcIlxcbiAgQXV0aDAgbG9naW4gZmFpbGVkLlwiKTtcblx0XHRcdFx0cHJvY2Vzcy5leGl0KDEpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdGNvbnN0IGFjdGl2ZSA9IHRlbmFudHMuZmluZCgodCkgPT4gdC5hY3RpdmUpID8/IHRlbmFudHNbMF07XG5cdGNvbnN0IGlzc3VlckJhc2VVcmwgPSBgaHR0cHM6Ly8ke2FjdGl2ZS5uYW1lfWA7XG5cdGNvbnNvbGUubG9nKGBcXG4gIOKckyBBdXRoMCB0ZW5hbnQ6ICR7aXNzdWVyQmFzZVVybH1gKTtcblxuXHRwcm9jZXNzLnN0ZG91dC53cml0ZShcIlxcbiAgRmV0Y2hpbmcgQXV0aDAgQVBJcy4uLlwiKTtcblx0Y29uc3QgdXNlckFwaXMgPSBhdXRoMENsaS5saXN0QXBpcygpLmZpbHRlcigoYSkgPT4gIWEubmFtZS5pbmNsdWRlcyhcIk1hbmFnZW1lbnQgQVBJXCIpKTtcblx0cHJvY2Vzcy5zdGRvdXQud3JpdGUoYCBmb3VuZCAke3VzZXJBcGlzLmxlbmd0aH0uXFxuYCk7XG5cblx0dHlwZSBBcGlDaG9pY2UgPSB7IGxhYmVsOiBzdHJpbmc7IGV4aXN0aW5nOiBzdHJpbmcgfCBudWxsIH07XG5cdGNvbnN0IHByb2plY3ROYW1lID0gd29ya3NwYWNlLm5hbWU7XG5cdGNvbnN0IGFwaUNob2ljZXM6IEFwaUNob2ljZVtdID0gW1xuXHRcdHsgbGFiZWw6IGA8bmV3PiBodHRwczovL2FwaS4ke3Byb2plY3ROYW1lfWAsIGV4aXN0aW5nOiBudWxsIH0sXG5cdFx0Li4udXNlckFwaXMubWFwKChhKSA9PiAoeyBsYWJlbDogYCR7YS5uYW1lfSDigJQgJHthLmlkZW50aWZpZXJ9YCwgZXhpc3Rpbmc6IGEuaWRlbnRpZmllciB9KSksXG5cdF07XG5cblx0Y29uc3QgYXBpU2VsZWN0ZWQgPSBhd2FpdCBwaWNrKFwiXFxuICBTZWxlY3QgQXV0aDAgQVBJOiBcIiwgYXBpQ2hvaWNlcywgKGMpID0+IGMubGFiZWwpO1xuXG5cdGxldCBhdWRpZW5jZTogc3RyaW5nO1xuXHRpZiAoIWFwaVNlbGVjdGVkIHx8IGFwaVNlbGVjdGVkLmV4aXN0aW5nID09PSBudWxsKSB7XG5cdFx0Y29uc3QgZGVmYXVsdElkID0gYGh0dHBzOi8vYXBpLiR7cHJvamVjdE5hbWV9YDtcblx0XHRhdWRpZW5jZSA9IGF3YWl0IGFzayhgICBBUEkgSWRlbnRpZmllciBbJHtkZWZhdWx0SWR9XTogYCwgZGVmYXVsdElkKTtcblx0XHRjb25zb2xlLmxvZyhcIlxcbiAgQ3JlYXRpbmcgQXV0aDAgQVBJLi4uXCIpO1xuXHRcdGF1ZGllbmNlID0gYXV0aDBDbGkuY3JlYXRlQXBpKGAke3Byb2plY3ROYW1lfSBBUElgLCBhdWRpZW5jZSkuaWRlbnRpZmllcjtcblx0XHRjb25zb2xlLmxvZyhgICBcXHUyNzEzIEFQSSBjcmVhdGVkOiAke2F1ZGllbmNlfWApO1xuXHR9IGVsc2Uge1xuXHRcdGF1ZGllbmNlID0gYXBpU2VsZWN0ZWQuZXhpc3Rpbmc7XG5cdFx0Y29uc29sZS5sb2coYCAgXFx1MjcxMyBTZWxlY3RlZDogJHthdWRpZW5jZX1gKTtcblx0fVxuXG5cdHJldHVybiB7IGF1dGhQcm92aWRlcjogXCJhdXRoMFwiLCBpc3N1ZXJCYXNlVXJsLCBhdWRpZW5jZSB9O1xufVxuXG5mdW5jdGlvbiBzY2FmZm9sZCh3b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLCBvcHRpb25zOiBBdXRoT3B0aW9ucyk6IHZvaWQge1xuXHRpZiAob3B0aW9ucy5hdXRoUHJvdmlkZXIgIT09IFwiYXV0aDBcIikgcmV0dXJuO1xuXG5cdGNvbnN0IHJlc291cmNlID0gXCJIZWxsb1wiO1xuXG5cdGZvciAoY29uc3QgY29udHJvbGxlciBvZiB3b3Jrc3BhY2UuZ2V0TW9kZWxzKENvbnRyb2xsZXJTb3VyY2VGaWxlKSkge1xuXHRcdGNvbnRyb2xsZXJcblx0XHRcdC5hZGREZWNvcmF0b3IoYEBBdXRob3JpemUoXCJyZWFkXCIsIFwiJHtyZXNvdXJjZX1cIilgKVxuXHRcdFx0LmFkZENvcnRleEltcG9ydChcIkFsbG93QW5vbnltb3VzXCIpXG5cdFx0XHQuYWRkQ29ydGV4SW1wb3J0KFwiQXV0aG9yaXplXCIpXG5cdFx0XHQuYWRkQ29ydGV4SW1wb3J0KFwiSVByaW5jaXBhbFByb3ZpZGVyVG9rZW5cIilcblx0XHRcdC5hZGRDb3J0ZXhJbXBvcnQoXCJJUHJpbmNpcGFsUHJvdmlkZXJcIiwgdHJ1ZSlcblx0XHRcdC5hZGRJbXBvcnQoXCJpbmplY3RcIiwgXCJAZGVjb2hlcmUvY3J1Y2libGUvZGVjb3JhdG9yc1wiKVxuXHRcdFx0LmFkZENvbnN0cnVjdG9yUGFyYW0oXG5cdFx0XHRcdGBAaW5qZWN0KElQcmluY2lwYWxQcm92aWRlclRva2VuKSBwcml2YXRlIHJlYWRvbmx5IHByaW5jaXBhbFByb3ZpZGVyOiBJUHJpbmNpcGFsUHJvdmlkZXJgLFxuXHRcdFx0KTtcblx0XHRjb250cm9sbGVyLmdldE1ldGhvZChcImdldEFsbFwiKS5hZGREZWNvcmF0b3IoXCJAQWxsb3dBbm9ueW1vdXMoKVwiKTtcblx0XHRjb250cm9sbGVyLmdldE1ldGhvZChcImNyZWF0ZVwiKS5hZGREZWNvcmF0b3IoYEBBdXRob3JpemUoXCJjcmVhdGVcIiwgXCIke3Jlc291cmNlfVwiKWApO1xuXHRcdGNvbnRyb2xsZXIuZ2V0TWV0aG9kKFwidXBkYXRlXCIpLmFkZERlY29yYXRvcihgQEF1dGhvcml6ZShcInVwZGF0ZVwiLCBcIiR7cmVzb3VyY2V9XCIpYCk7XG5cdFx0Y29udHJvbGxlci5nZXRNZXRob2QoXCJyZW1vdmVcIikuYWRkRGVjb3JhdG9yKGBAQXV0aG9yaXplKFwiZGVsZXRlXCIsIFwiJHtyZXNvdXJjZX1cIilgKTtcblx0fVxuXG5cdHdvcmtzcGFjZVxuXHRcdC5nZXRNb2RlbDxNYWluU291cmNlRmlsZT4oV0VMTF9LTk9XTl9GSUxFUy5NQUlOX1RTKVxuXHRcdD8uYWRkU2lkZUVmZmVjdEltcG9ydChcIkBkZWNvaGVyZS9jb3J0ZXgvYXV0aFwiKVxuXHRcdC5hZGRCdWlsZGVyQ2FsbChcIi53aXRoQXV0aCgpXCIpO1xuXG5cdC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9UZW1wbGF0ZUN1cmx5SW5TdHJpbmc6IGludGVudGlvbmFsIFlBTUwgZW52LXZhciBwbGFjZWhvbGRlcnNcblx0Y29uc3QgaXNzdWVyUGxhY2Vob2xkZXIgPSBcIiR7QVVUSDBfSVNTVUVSX0JBU0VfVVJMfVwiO1xuXHQvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vVGVtcGxhdGVDdXJseUluU3RyaW5nOiBpbnRlbnRpb25hbCBZQU1MIGVudi12YXIgcGxhY2Vob2xkZXJzXG5cdGNvbnN0IGF1ZFBsYWNlaG9sZGVyID0gXCIke0FVVEgwX0FVRElFTkNFfVwiO1xuXG5cdGNvbnN0IGNvbmZpZ1NlY3Rpb24gPSBgYXV0aDpcXG4gIGRpc2NvdmVyeVVybDogJHtpc3N1ZXJQbGFjZWhvbGRlcn1cXG4gIGF1ZGllbmNlOiAke2F1ZFBsYWNlaG9sZGVyfVxcbmA7XG5cblx0d29ya3NwYWNlLmdldE1vZGVsPENvbmZpZ1lhbWw+KFdFTExfS05PV05fRklMRVMuQ09ORklHX1lBTUwpPy5hZGRTZWN0aW9uKGNvbmZpZ1NlY3Rpb24pO1xuXG5cdHdvcmtzcGFjZVxuXHRcdC5nZXRNb2RlbDxFbnZGaWxlPihXRUxMX0tOT1dOX0ZJTEVTLkVOVl9GSUxFKVxuXHRcdD8uYWRkRW50cnkoXCJBVVRIMF9JU1NVRVJfQkFTRV9VUkxcIiwgb3B0aW9ucy5pc3N1ZXJCYXNlVXJsID8/IFwiXCIpXG5cdFx0LmFkZEVudHJ5KFwiQVVUSDBfQVVESUVOQ0VcIiwgb3B0aW9ucy5hdWRpZW5jZSA/PyBcIlwiKTtcblxuXHR3b3Jrc3BhY2UuYWRkTW9kZWwoXG5cdFx0bmV3IEF1dGhDb25maWdNb2RlbCh7XG5cdFx0XHRpc3N1ZXJCYXNlVXJsOiBvcHRpb25zLmlzc3VlckJhc2VVcmwgPz8gXCJcIixcblx0XHRcdGF1ZGllbmNlOiBvcHRpb25zLmF1ZGllbmNlID8/IFwiXCIsXG5cdFx0fSksXG5cdCk7XG59XG5cbmV4cG9ydCBjb25zdCBBdXRoRmVhdHVyZTogRmVhdHVyZTxBdXRoT3B0aW9ucz4gPSB7IGdldE9wdGlvbnMsIHNjYWZmb2xkIH07XG4iXSwibmFtZXMiOlsiYXNrIiwicGljayIsIldFTExfS05PV05fRklMRVMiLCJBdXRoQ29uZmlnTW9kZWwiLCJDb250cm9sbGVyU291cmNlRmlsZSIsImF1dGgwQ2xpIiwiZ2V0T3B0aW9ucyIsIndvcmtzcGFjZSIsImNsaU9wdGlvbnMiLCJhdXRoUHJvdmlkZXIiLCJjaG9pY2VzIiwibGFiZWwiLCJzZWxlY3RlZCIsImMiLCJwcm92aWRlciIsImdldEF1dGgwT3B0aW9ucyIsImlzSW5zdGFsbGVkIiwiY29uc29sZSIsImVycm9yIiwicHJvY2VzcyIsImV4aXQiLCJzdGRvdXQiLCJ3cml0ZSIsInRlbmFudHMiLCJsaXN0VGVuYW50cyIsImxlbmd0aCIsImxvZyIsImxvZ2luIiwibGlzdEFwaXMiLCJlcnIiLCJBdXRoMEF1dGhFcnJvciIsImFjdGl2ZSIsImZpbmQiLCJ0IiwiaXNzdWVyQmFzZVVybCIsIm5hbWUiLCJ1c2VyQXBpcyIsImZpbHRlciIsImEiLCJpbmNsdWRlcyIsInByb2plY3ROYW1lIiwiYXBpQ2hvaWNlcyIsImV4aXN0aW5nIiwibWFwIiwiaWRlbnRpZmllciIsImFwaVNlbGVjdGVkIiwiYXVkaWVuY2UiLCJkZWZhdWx0SWQiLCJjcmVhdGVBcGkiLCJzY2FmZm9sZCIsIm9wdGlvbnMiLCJyZXNvdXJjZSIsImNvbnRyb2xsZXIiLCJnZXRNb2RlbHMiLCJhZGREZWNvcmF0b3IiLCJhZGRDb3J0ZXhJbXBvcnQiLCJhZGRJbXBvcnQiLCJhZGRDb25zdHJ1Y3RvclBhcmFtIiwiZ2V0TWV0aG9kIiwiZ2V0TW9kZWwiLCJNQUlOX1RTIiwiYWRkU2lkZUVmZmVjdEltcG9ydCIsImFkZEJ1aWxkZXJDYWxsIiwiaXNzdWVyUGxhY2Vob2xkZXIiLCJhdWRQbGFjZWhvbGRlciIsImNvbmZpZ1NlY3Rpb24iLCJDT05GSUdfWUFNTCIsImFkZFNlY3Rpb24iLCJFTlZfRklMRSIsImFkZEVudHJ5IiwiYWRkTW9kZWwiLCJBdXRoRmVhdHVyZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsR0FBRyxFQUFFQyxJQUFJLFFBQVEseUJBQXlCO0FBRW5ELFNBQVNDLGdCQUFnQixRQUFRLHdCQUF3QjtBQUl6RCxTQUFTQyxlQUFlLFFBQVEsaUNBQWlD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
@@ -1,7 +1,7 @@
1
1
  import { randomBytes } from "node:crypto";
2
- import { pick } from "../../../v1/domain/prompt.js";
3
- import { CREATE_VERSION } from "../../../v1/version.js";
2
+ import { pick } from "../../domain/prompt.js";
4
3
  import { WELL_KNOWN_FILES } from "../../models/const.js";
4
+ import { CREATE_VERSION } from "../../version.js";
5
5
  import { WEBAPI_PROJECT_DIR } from "../create-api.js";
6
6
  // Base config uses env-var references for production; the dev config section
7
7
  // written below overrides only the concrete values needed locally.
@@ -138,4 +138,4 @@ export const DatabaseFeature = {
138
138
  scaffold
139
139
  };
140
140
 
141
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL2RhdGFiYXNlLmZlYXR1cmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmFuZG9tQnl0ZXMgfSBmcm9tIFwibm9kZTpjcnlwdG9cIjtcbmltcG9ydCB7IHBpY2sgfSBmcm9tIFwiLi4vLi4vLi4vdjEvZG9tYWluL3Byb21wdC5qc1wiO1xuaW1wb3J0IHsgQ1JFQVRFX1ZFUlNJT04gfSBmcm9tIFwiLi4vLi4vLi4vdjEvdmVyc2lvbi5qc1wiO1xuaW1wb3J0IHR5cGUgeyBEb2NrZXJDb21wb3NlIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb21wb3NlLm1vZGVsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IENvbmZpZ1lhbWwgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbmZpZy15YW1sLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBXRUxMX0tOT1dOX0ZJTEVTIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb25zdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBEZXZDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2Rldi1jb250YWluZXIubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgRW52RmlsZSB9IGZyb20gXCIuLi8uLi9tb2RlbHMvZW52LWZpbGUubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgUGFja2FnZUpzb24gfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3BhY2thZ2UtanNvbi5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3Jrc3BhY2VTY2FmZm9sZCB9IGZyb20gXCIuLi8uLi9tb2RlbHMvcHJvamVjdC5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBGZWF0dXJlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3NjYWZmb2xkLnNlcnZpY2UuanNcIjtcbmltcG9ydCB7IFdFQkFQSV9QUk9KRUNUX0RJUiB9IGZyb20gXCIuLi9jcmVhdGUtYXBpLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEFwaVBhY2thZ2VKc29uIH0gZnJvbSBcIi4uL21vZGVscy9hcGktcGFja2FnZS1qc29uLm1vZGVsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IE1haW5Tb3VyY2VGaWxlIH0gZnJvbSBcIi4uL21vZGVscy9tYWluLXNvdXJjZS1maWxlLm1vZGVsLmpzXCI7XG5cbmV4cG9ydCB0eXBlIERhdGFiYXNlT3B0aW9ucyA9IHtcblx0ZGF0YWJhc2VQcm92aWRlcj86IFwibm9uZVwiIHwgXCJwb3N0Z3Jlcy90eXBlb3JtXCI7XG59O1xuXG4vLyBCYXNlIGNvbmZpZyB1c2VzIGVudi12YXIgcmVmZXJlbmNlcyBmb3IgcHJvZHVjdGlvbjsgdGhlIGRldiBjb25maWcgc2VjdGlvblxuLy8gd3JpdHRlbiBiZWxvdyBvdmVycmlkZXMgb25seSB0aGUgY29uY3JldGUgdmFsdWVzIG5lZWRlZCBsb2NhbGx5LlxuY29uc3QgREFUQUJBU0VfQkFTRV9DT05GSUdfWUFNTCA9IGBkYXRhYmFzZTpcbiAgZGF0YVNvdXJjZXM6XG4gICAgLSBuYW1lOiBkZWZhdWx0XG4gICAgICBwcm92aWRlcjogcG9zdGdyZXNcbiAgICAgIGhvc3Q6IFxcJHtEQl9IT1NUfVxuICAgICAgcG9ydDogXFwke0RCX1BPUlR9XG4gICAgICBkYXRhYmFzZTogXFwke0RCX05BTUV9XG4gICAgICB1c2VybmFtZTogXFwke0RCX1VTRVJ9XG4gICAgICBwYXNzd29yZDogXFwke0RCX1BBU1NXT1JEfVxuICAgICAgc3luY2hyb25pemU6IGZhbHNlXG4gICAgICBzZWVkOiBmYWxzZVxuICAgICAgYWRtaW5Vc2VyOiBcXCR7REJfQURNSU5fVVNFUn1cbiAgICAgIGFkbWluUGFzc3dvcmQ6IFxcJHtEQl9BRE1JTl9QQVNTV09SRH1cbmA7XG5cbi8vIERldiBjb25maWcgb25seSBvdmVycmlkZXMgd2hhdCBkaWZmZXJzIGZyb20gYmFzZSDigJQgY3JlZGVudGlhbHMgY29tZSBmcm9tIC5lbnYgdmlhIGVudi12YXIgcmVmZXJlbmNlcy5cbmNvbnN0IERBVEFCQVNFX0RFVl9DT05GSUdfWUFNTCA9IGBkYXRhYmFzZTpcbiAgZGF0YVNvdXJjZXM6XG4gICAgLSBob3N0OiBwb3N0Z3Jlc1xuICAgICAgc3luY2hyb25pemU6IHRydWVcbiAgICAgIHNlZWQ6IHRydWVcbmA7XG5cbmNvbnN0IFNBTVBMRV9FTlRJVFlfVFMgPSBgaW1wb3J0IHsgQ29sdW1uLCBFbnRpdHksIFByaW1hcnlHZW5lcmF0ZWRDb2x1bW4gfSBmcm9tIFwidHlwZW9ybVwiO1xuaW1wb3J0IHR5cGUgeyBFbnRpdHkgYXMgSUVudGl0eSB9IGZyb20gXCJAZGVjb2hlcmUvY29kZXhcIjtcblxuQEVudGl0eSgpXG5leHBvcnQgY2xhc3MgU2FtcGxlRW50aXR5IGltcGxlbWVudHMgSUVudGl0eSB7XG5cXHRAUHJpbWFyeUdlbmVyYXRlZENvbHVtbigpXG5cXHRwdWJsaWMgaWQhOiBudW1iZXI7XG5cblxcdEBDb2x1bW4oKVxuXFx0cHVibGljIG5hbWUhOiBzdHJpbmc7XG59XG5gO1xuXG5jb25zdCBTQU1QTEVfUkVQT1NJVE9SWV9UUyA9IGBpbXBvcnQgeyBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBpbmplY3RVbml0T2ZXb3JrIH0gZnJvbSBcIkBkZWNvaGVyZS9jb2RleFwiO1xuaW1wb3J0IHsgVHlwZU9ybVJlcG9zaXRvcnksIFR5cGVPcm1Vbml0T2ZXb3JrIH0gZnJvbSBcIkBkZWNvaGVyZS9jb2RleC10eXBlb3JtXCI7XG5pbXBvcnQgeyBTYW1wbGVFbnRpdHkgfSBmcm9tIFwiLi4vZW50aXRpZXMvc2FtcGxlLmVudGl0eS5qc1wiO1xuXG5AaW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2FtcGxlRW50aXR5UmVwb3NpdG9yeSBleHRlbmRzIFR5cGVPcm1SZXBvc2l0b3J5PFNhbXBsZUVudGl0eT4ge1xuXFx0cHVibGljIGNvbnN0cnVjdG9yKEBpbmplY3RVbml0T2ZXb3JrKCkgdW5pdE9mV29yazogVHlwZU9ybVVuaXRPZldvcmspIHtcblxcdFxcdHN1cGVyKHVuaXRPZldvcmssIFNhbXBsZUVudGl0eSk7XG5cXHR9XG59XG5gO1xuXG5hc3luYyBmdW5jdGlvbiBnZXRPcHRpb25zKFxuXHRfd29ya3NwYWNlOiBXb3Jrc3BhY2VTY2FmZm9sZCxcblx0Y2xpT3B0aW9uczogUGFydGlhbDxEYXRhYmFzZU9wdGlvbnM+LFxuKTogUHJvbWlzZTxQYXJ0aWFsPERhdGFiYXNlT3B0aW9ucz4+IHtcblx0aWYgKGNsaU9wdGlvbnMuZGF0YWJhc2VQcm92aWRlciAhPSBudWxsKSByZXR1cm4ge307XG5cblx0Y29uc3QgY2hvaWNlcyA9IFt7IGxhYmVsOiBcIm5vbmVcIiBhcyBjb25zdCB9LCB7IGxhYmVsOiBcInBvc3RncmVzL3R5cGVvcm1cIiBhcyBjb25zdCB9XTtcblx0Y29uc3Qgc2VsZWN0ZWQgPSBhd2FpdCBwaWNrKFwiXFxuICBEYXRhYmFzZTogXCIsIGNob2ljZXMsIChjKSA9PiBjLmxhYmVsKTtcblx0cmV0dXJuIHsgZGF0YWJhc2VQcm92aWRlcjogc2VsZWN0ZWQ/LmxhYmVsID8/IFwibm9uZVwiIH07XG59XG5cbmZ1bmN0aW9uIHNjYWZmb2xkKHdvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQsIG9wdGlvbnM6IERhdGFiYXNlT3B0aW9ucyk6IHZvaWQge1xuXHRpZiAob3B0aW9ucy5kYXRhYmFzZVByb3ZpZGVyICE9PSBcInBvc3RncmVzL3R5cGVvcm1cIikgcmV0dXJuO1xuXG5cdGNvbnN0IG5hbWUgPSB3b3Jrc3BhY2UubmFtZTtcblx0Y29uc3QgcGFzc3dvcmQgPSByYW5kb21CeXRlcygxNikudG9TdHJpbmcoXCJoZXhcIik7XG5cdGNvbnN0IGRiID0gYCR7bmFtZX1fZGV2YDtcblx0Y29uc3QgdXNlciA9IFwicG9zdGdyZXNcIjtcblxuXHRjb25zdCBkZXZDb250YWluZXIgPSB3b3Jrc3BhY2UuZ2V0TW9kZWw8RGV2Q29udGFpbmVyPihXRUxMX0tOT1dOX0ZJTEVTLkRFVkNPTlRBSU5FUl9KU09OKTtcblx0Y29uc3QgY29tcG9zZSA9IHdvcmtzcGFjZS5nZXRNb2RlbDxEb2NrZXJDb21wb3NlPihXRUxMX0tOT1dOX0ZJTEVTLkRPQ0tFUl9DT01QT1NFKTtcblxuXHQvLyBBZGQgcG9zdGdyZXMgc2VydmljZSB0byBjb21wb3NlXG5cdGNvbXBvc2Vcblx0XHQ/LmFkZFNlcnZpY2UoXCJwb3N0Z3Jlc1wiLCB7XG5cdFx0XHRpbWFnZTogXCJwb3N0Z3JlczoxNlwiLFxuXHRcdFx0cmVzdGFydDogXCJ1bmxlc3Mtc3RvcHBlZFwiLFxuXHRcdFx0ZW52aXJvbm1lbnQ6IHtcblx0XHRcdFx0Ly8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy9ub1RlbXBsYXRlQ3VybHlJblN0cmluZzogRG9ja2VyIENvbXBvc2UgcmVhZHMgdGhlc2UgZnJvbSAuZW52XG5cdFx0XHRcdFBPU1RHUkVTX0RCOiBcIiR7UE9TVEdSRVNfREJ9XCIsXG5cdFx0XHRcdC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9UZW1wbGF0ZUN1cmx5SW5TdHJpbmc6IERvY2tlciBDb21wb3NlIHJlYWRzIHRoZXNlIGZyb20gLmVudlxuXHRcdFx0XHRQT1NUR1JFU19VU0VSOiBcIiR7UE9TVEdSRVNfVVNFUn1cIixcblx0XHRcdFx0Ly8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy9ub1RlbXBsYXRlQ3VybHlJblN0cmluZzogRG9ja2VyIENvbXBvc2UgcmVhZHMgdGhlc2UgZnJvbSAuZW52XG5cdFx0XHRcdFBPU1RHUkVTX1BBU1NXT1JEOiBcIiR7UE9TVEdSRVNfUEFTU1dPUkR9XCIsXG5cdFx0XHR9LFxuXHRcdFx0cG9ydHM6IFtcIjU0MzI6NTQzMlwiXSxcblx0XHRcdHZvbHVtZXM6IFtcInBvc3RncmVzLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhXCJdLFxuXHRcdH0pXG5cdFx0LmFkZFZvbHVtZShcInBvc3RncmVzLWRhdGFcIik7XG5cblx0Y29tcG9zZT8uYWRkU2VydmljZShcImFkbWluZXJcIiwge1xuXHRcdGltYWdlOiBcImFkbWluZXJcIixcblx0XHRwb3J0czogW1wiODA4MDo4MDgwXCJdLFxuXHR9KTtcblxuXHQvLyBBZGQgU1FMVG9vbHMgZXh0ZW5zaW9uIGZvciBEQiBicm93c2luZyBpbiBWUyBDb2RlXG5cdGRldkNvbnRhaW5lcj8uYWRkRXh0ZW5zaW9uKFwibXR4ci5zcWx0b29sc1wiKTtcblxuXHQvLyBXaXJlIHVwIG1haW4udHNcblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPE1haW5Tb3VyY2VGaWxlPihXRUxMX0tOT1dOX0ZJTEVTLk1BSU5fVFMpXG5cdFx0Py5hZGRTaWRlRWZmZWN0SW1wb3J0KFwiQGRlY29oZXJlL2NvZGV4LXR5cGVvcm1cIilcblx0XHQuYWRkRW50aXR5KHsgY2xhc3NOYW1lOiBcIlNhbXBsZUVudGl0eVwiLCBpbXBvcnRQYXRoOiBcIi4vZW50aXRpZXMvc2FtcGxlLmVudGl0eS5qc1wiIH0pXG5cdFx0LmFkZFJlcG9zaXRvcnkoe1xuXHRcdFx0Y2xhc3NOYW1lOiBcIlNhbXBsZUVudGl0eVJlcG9zaXRvcnlcIixcblx0XHRcdGltcG9ydFBhdGg6IFwiLi9yZXBvc2l0b3JpZXMvc2FtcGxlLnJlcG9zaXRvcnkuanNcIixcblx0XHR9KTtcblxuXHQvLyBBZGQgY29kZXggKyB0eXBlb3JtIGRlcHMgdG8gcm9vdCBwYWNrYWdlLmpzb25cblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPFBhY2thZ2VKc29uPihXRUxMX0tOT1dOX0ZJTEVTLlBBQ0tBR0VfSlNPTilcblx0XHQ/LmFkZERlcGVuZGVuY3koXCJAZGVjb2hlcmUvY29kZXhcIiwgQ1JFQVRFX1ZFUlNJT04pXG5cdFx0LmFkZERlcGVuZGVuY3koXCJ0eXBlb3JtXCIsIFwiXjAuMy4yOFwiKVxuXHRcdC5hZGREZXBlbmRlbmN5KFwiQGRlY29oZXJlL2NvZGV4LXR5cGVvcm1cIiwgQ1JFQVRFX1ZFUlNJT04pO1xuXG5cdC8vIEFkZCBjb2RleCBkZXBzIHRvIGFwaSBwYWNrYWdlLmpzb25cblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPEFwaVBhY2thZ2VKc29uPihXRUxMX0tOT1dOX0ZJTEVTLkFQSV9QQUNLQUdFX0pTT04pXG5cdFx0Py5hZGREZXBlbmRlbmN5KFwiQGRlY29oZXJlL2NvZGV4XCIsIENSRUFURV9WRVJTSU9OKVxuXHRcdC5hZGREZXBlbmRlbmN5KFwiQGRlY29oZXJlL2NvZGV4LXR5cGVvcm1cIiwgQ1JFQVRFX1ZFUlNJT04pO1xuXG5cdC8vIEFwcGVuZCBkYXRhYmFzZSBjb25maWcgc2VjdGlvbnNcblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPENvbmZpZ1lhbWw+KFdFTExfS05PV05fRklMRVMuQ09ORklHX1lBTUwpXG5cdFx0Py5hZGRTZWN0aW9uKERBVEFCQVNFX0JBU0VfQ09ORklHX1lBTUwpO1xuXHR3b3Jrc3BhY2Vcblx0XHQuZ2V0TW9kZWw8Q29uZmlnWWFtbD4oV0VMTF9LTk9XTl9GSUxFUy5DT05GSUdfREVWX1lBTUwpXG5cdFx0Py5hZGRTZWN0aW9uKERBVEFCQVNFX0RFVl9DT05GSUdfWUFNTCk7XG5cblx0Ly8gUmVnaXN0ZXIgZW50aXR5IGFuZCByZXBvc2l0b3J5IHNvdXJjZSBmaWxlcyBpbiB0aGUgYXBpIHByb2plY3Rcblx0d29ya3NwYWNlLmdldFByb2plY3QoV0VCQVBJX1BST0pFQ1RfRElSKT8uYWRkRmlsZSh7XG5cdFx0ZmlsZXM6ICgpID0+IFtcblx0XHRcdHtcblx0XHRcdFx0ZmlsZVBhdGg6IFwic3JjL2VudGl0aWVzL3NhbXBsZS5lbnRpdHkudHNcIixcblx0XHRcdFx0Y29udGVudDogU0FNUExFX0VOVElUWV9UUyxcblx0XHRcdH0sXG5cdFx0XHR7XG5cdFx0XHRcdGZpbGVQYXRoOiBcInNyYy9yZXBvc2l0b3JpZXMvc2FtcGxlLnJlcG9zaXRvcnkudHNcIixcblx0XHRcdFx0Y29udGVudDogU0FNUExFX1JFUE9TSVRPUllfVFMsXG5cdFx0XHR9LFxuXHRcdF0sXG5cdH0pO1xuXG5cdC8vIC5lbnYgYXQgd29ya3NwYWNlIHJvb3Qg4oCUIG1vdW50ZWQgYnkgY29tcG9zZSB2aWEgLi4vLmVudiBzbyBib3RoIHBvc3RncmVzXG5cdC8vIGFuZCB0aGUgZGV2Y29udGFpbmVyIHNlcnZpY2UgY2FuIHJlYWQgY3JlZGVudGlhbHNcblx0Y29tcG9zZT8uYWRkRW52RmlsZShcInBvc3RncmVzXCIsIFwiLi4vLmVudlwiKS5hZGRFbnZGaWxlKFwiZGV2Y29udGFpbmVyXCIsIFwiLi4vLmVudlwiKTtcblxuXHR3b3Jrc3BhY2Vcblx0XHQuZ2V0TW9kZWw8RW52RmlsZT4oV0VMTF9LTk9XTl9GSUxFUy5FTlZfRklMRSlcblx0XHQ/LmFkZEVudHJ5KFwiUE9TVEdSRVNfREJcIiwgZGIpXG5cdFx0LmFkZEVudHJ5KFwiUE9TVEdSRVNfVVNFUlwiLCB1c2VyKVxuXHRcdC5hZGRFbnRyeShcIlBPU1RHUkVTX1BBU1NXT1JEXCIsIHBhc3N3b3JkKVxuXHRcdC5hZGRFbnRyeShcIkRCX0hPU1RcIiwgXCJsb2NhbGhvc3RcIilcblx0XHQuYWRkRW50cnkoXCJEQl9QT1JUXCIsIFwiNTQzMlwiKVxuXHRcdC5hZGRFbnRyeShcIkRCX05BTUVcIiwgZGIpXG5cdFx0LmFkZEVudHJ5KFwiREJfVVNFUlwiLCB1c2VyKVxuXHRcdC5hZGRFbnRyeShcIkRCX1BBU1NXT1JEXCIsIHBhc3N3b3JkKVxuXHRcdC5hZGRFbnRyeShcIkRCX0FETUlOX1VTRVJcIiwgdXNlcilcblx0XHQuYWRkRW50cnkoXCJEQl9BRE1JTl9QQVNTV09SRFwiLCBwYXNzd29yZCk7XG59XG5cbmV4cG9ydCBjb25zdCBEYXRhYmFzZUZlYXR1cmU6IEZlYXR1cmU8RGF0YWJhc2VPcHRpb25zPiA9IHsgZ2V0T3B0aW9ucywgc2NhZmZvbGQgfTtcbiJdLCJuYW1lcyI6WyJyYW5kb21CeXRlcyIsInBpY2siLCJDUkVBVEVfVkVSU0lPTiIsIldFTExfS05PV05fRklMRVMiLCJXRUJBUElfUFJPSkVDVF9ESVIiLCJEQVRBQkFTRV9CQVNFX0NPTkZJR19ZQU1MIiwiREFUQUJBU0VfREVWX0NPTkZJR19ZQU1MIiwiU0FNUExFX0VOVElUWV9UUyIsIlNBTVBMRV9SRVBPU0lUT1JZX1RTIiwiZ2V0T3B0aW9ucyIsIl93b3Jrc3BhY2UiLCJjbGlPcHRpb25zIiwiZGF0YWJhc2VQcm92aWRlciIsImNob2ljZXMiLCJsYWJlbCIsInNlbGVjdGVkIiwiYyIsInNjYWZmb2xkIiwid29ya3NwYWNlIiwib3B0aW9ucyIsIm5hbWUiLCJwYXNzd29yZCIsInRvU3RyaW5nIiwiZGIiLCJ1c2VyIiwiZGV2Q29udGFpbmVyIiwiZ2V0TW9kZWwiLCJERVZDT05UQUlORVJfSlNPTiIsImNvbXBvc2UiLCJET0NLRVJfQ09NUE9TRSIsImFkZFNlcnZpY2UiLCJpbWFnZSIsInJlc3RhcnQiLCJlbnZpcm9ubWVudCIsIlBPU1RHUkVTX0RCIiwiUE9TVEdSRVNfVVNFUiIsIlBPU1RHUkVTX1BBU1NXT1JEIiwicG9ydHMiLCJ2b2x1bWVzIiwiYWRkVm9sdW1lIiwiYWRkRXh0ZW5zaW9uIiwiTUFJTl9UUyIsImFkZFNpZGVFZmZlY3RJbXBvcnQiLCJhZGRFbnRpdHkiLCJjbGFzc05hbWUiLCJpbXBvcnRQYXRoIiwiYWRkUmVwb3NpdG9yeSIsIlBBQ0tBR0VfSlNPTiIsImFkZERlcGVuZGVuY3kiLCJBUElfUEFDS0FHRV9KU09OIiwiQ09ORklHX1lBTUwiLCJhZGRTZWN0aW9uIiwiQ09ORklHX0RFVl9ZQU1MIiwiZ2V0UHJvamVjdCIsImFkZEZpbGUiLCJmaWxlcyIsImZpbGVQYXRoIiwiY29udGVudCIsImFkZEVudkZpbGUiLCJFTlZfRklMRSIsImFkZEVudHJ5IiwiRGF0YWJhc2VGZWF0dXJlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxXQUFXLFFBQVEsY0FBYztBQUMxQyxTQUFTQyxJQUFJLFFBQVEsK0JBQStCO0FBQ3BELFNBQVNDLGNBQWMsUUFBUSx5QkFBeUI7QUFHeEQsU0FBU0MsZ0JBQWdCLFFBQVEsd0JBQXdCO0FBTXpELFNBQVNDLGtCQUFrQixRQUFRLG1CQUFtQjtBQVF0RCw2RUFBNkU7QUFDN0Us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
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL2RhdGFiYXNlLmZlYXR1cmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmFuZG9tQnl0ZXMgfSBmcm9tIFwibm9kZTpjcnlwdG9cIjtcbmltcG9ydCB7IHBpY2sgfSBmcm9tIFwiLi4vLi4vZG9tYWluL3Byb21wdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBEb2NrZXJDb21wb3NlIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb21wb3NlLm1vZGVsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IENvbmZpZ1lhbWwgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbmZpZy15YW1sLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBXRUxMX0tOT1dOX0ZJTEVTIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb25zdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBEZXZDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2Rldi1jb250YWluZXIubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgRW52RmlsZSB9IGZyb20gXCIuLi8uLi9tb2RlbHMvZW52LWZpbGUubW9kZWwuanNcIjtcbmltcG9ydCB0eXBlIHsgUGFja2FnZUpzb24gfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3BhY2thZ2UtanNvbi5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3Jrc3BhY2VTY2FmZm9sZCB9IGZyb20gXCIuLi8uLi9tb2RlbHMvcHJvamVjdC5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBGZWF0dXJlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3NjYWZmb2xkLnNlcnZpY2UuanNcIjtcbmltcG9ydCB7IENSRUFURV9WRVJTSU9OIH0gZnJvbSBcIi4uLy4uL3ZlcnNpb24uanNcIjtcbmltcG9ydCB7IFdFQkFQSV9QUk9KRUNUX0RJUiB9IGZyb20gXCIuLi9jcmVhdGUtYXBpLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEFwaVBhY2thZ2VKc29uIH0gZnJvbSBcIi4uL21vZGVscy9hcGktcGFja2FnZS1qc29uLm1vZGVsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IE1haW5Tb3VyY2VGaWxlIH0gZnJvbSBcIi4uL21vZGVscy9tYWluLXNvdXJjZS1maWxlLm1vZGVsLmpzXCI7XG5cbmV4cG9ydCB0eXBlIERhdGFiYXNlT3B0aW9ucyA9IHtcblx0ZGF0YWJhc2VQcm92aWRlcj86IFwibm9uZVwiIHwgXCJwb3N0Z3Jlcy90eXBlb3JtXCI7XG59O1xuXG4vLyBCYXNlIGNvbmZpZyB1c2VzIGVudi12YXIgcmVmZXJlbmNlcyBmb3IgcHJvZHVjdGlvbjsgdGhlIGRldiBjb25maWcgc2VjdGlvblxuLy8gd3JpdHRlbiBiZWxvdyBvdmVycmlkZXMgb25seSB0aGUgY29uY3JldGUgdmFsdWVzIG5lZWRlZCBsb2NhbGx5LlxuY29uc3QgREFUQUJBU0VfQkFTRV9DT05GSUdfWUFNTCA9IGBkYXRhYmFzZTpcbiAgZGF0YVNvdXJjZXM6XG4gICAgLSBuYW1lOiBkZWZhdWx0XG4gICAgICBwcm92aWRlcjogcG9zdGdyZXNcbiAgICAgIGhvc3Q6IFxcJHtEQl9IT1NUfVxuICAgICAgcG9ydDogXFwke0RCX1BPUlR9XG4gICAgICBkYXRhYmFzZTogXFwke0RCX05BTUV9XG4gICAgICB1c2VybmFtZTogXFwke0RCX1VTRVJ9XG4gICAgICBwYXNzd29yZDogXFwke0RCX1BBU1NXT1JEfVxuICAgICAgc3luY2hyb25pemU6IGZhbHNlXG4gICAgICBzZWVkOiBmYWxzZVxuICAgICAgYWRtaW5Vc2VyOiBcXCR7REJfQURNSU5fVVNFUn1cbiAgICAgIGFkbWluUGFzc3dvcmQ6IFxcJHtEQl9BRE1JTl9QQVNTV09SRH1cbmA7XG5cbi8vIERldiBjb25maWcgb25seSBvdmVycmlkZXMgd2hhdCBkaWZmZXJzIGZyb20gYmFzZSDigJQgY3JlZGVudGlhbHMgY29tZSBmcm9tIC5lbnYgdmlhIGVudi12YXIgcmVmZXJlbmNlcy5cbmNvbnN0IERBVEFCQVNFX0RFVl9DT05GSUdfWUFNTCA9IGBkYXRhYmFzZTpcbiAgZGF0YVNvdXJjZXM6XG4gICAgLSBob3N0OiBwb3N0Z3Jlc1xuICAgICAgc3luY2hyb25pemU6IHRydWVcbiAgICAgIHNlZWQ6IHRydWVcbmA7XG5cbmNvbnN0IFNBTVBMRV9FTlRJVFlfVFMgPSBgaW1wb3J0IHsgQ29sdW1uLCBFbnRpdHksIFByaW1hcnlHZW5lcmF0ZWRDb2x1bW4gfSBmcm9tIFwidHlwZW9ybVwiO1xuaW1wb3J0IHR5cGUgeyBFbnRpdHkgYXMgSUVudGl0eSB9IGZyb20gXCJAZGVjb2hlcmUvY29kZXhcIjtcblxuQEVudGl0eSgpXG5leHBvcnQgY2xhc3MgU2FtcGxlRW50aXR5IGltcGxlbWVudHMgSUVudGl0eSB7XG5cXHRAUHJpbWFyeUdlbmVyYXRlZENvbHVtbigpXG5cXHRwdWJsaWMgaWQhOiBudW1iZXI7XG5cblxcdEBDb2x1bW4oKVxuXFx0cHVibGljIG5hbWUhOiBzdHJpbmc7XG59XG5gO1xuXG5jb25zdCBTQU1QTEVfUkVQT1NJVE9SWV9UUyA9IGBpbXBvcnQgeyBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBpbmplY3RVbml0T2ZXb3JrIH0gZnJvbSBcIkBkZWNvaGVyZS9jb2RleFwiO1xuaW1wb3J0IHsgVHlwZU9ybVJlcG9zaXRvcnksIFR5cGVPcm1Vbml0T2ZXb3JrIH0gZnJvbSBcIkBkZWNvaGVyZS9jb2RleC10eXBlb3JtXCI7XG5pbXBvcnQgeyBTYW1wbGVFbnRpdHkgfSBmcm9tIFwiLi4vZW50aXRpZXMvc2FtcGxlLmVudGl0eS5qc1wiO1xuXG5AaW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2FtcGxlRW50aXR5UmVwb3NpdG9yeSBleHRlbmRzIFR5cGVPcm1SZXBvc2l0b3J5PFNhbXBsZUVudGl0eT4ge1xuXFx0cHVibGljIGNvbnN0cnVjdG9yKEBpbmplY3RVbml0T2ZXb3JrKCkgdW5pdE9mV29yazogVHlwZU9ybVVuaXRPZldvcmspIHtcblxcdFxcdHN1cGVyKHVuaXRPZldvcmssIFNhbXBsZUVudGl0eSk7XG5cXHR9XG59XG5gO1xuXG5hc3luYyBmdW5jdGlvbiBnZXRPcHRpb25zKFxuXHRfd29ya3NwYWNlOiBXb3Jrc3BhY2VTY2FmZm9sZCxcblx0Y2xpT3B0aW9uczogUGFydGlhbDxEYXRhYmFzZU9wdGlvbnM+LFxuKTogUHJvbWlzZTxQYXJ0aWFsPERhdGFiYXNlT3B0aW9ucz4+IHtcblx0aWYgKGNsaU9wdGlvbnMuZGF0YWJhc2VQcm92aWRlciAhPSBudWxsKSByZXR1cm4ge307XG5cblx0Y29uc3QgY2hvaWNlcyA9IFt7IGxhYmVsOiBcIm5vbmVcIiBhcyBjb25zdCB9LCB7IGxhYmVsOiBcInBvc3RncmVzL3R5cGVvcm1cIiBhcyBjb25zdCB9XTtcblx0Y29uc3Qgc2VsZWN0ZWQgPSBhd2FpdCBwaWNrKFwiXFxuICBEYXRhYmFzZTogXCIsIGNob2ljZXMsIChjKSA9PiBjLmxhYmVsKTtcblx0cmV0dXJuIHsgZGF0YWJhc2VQcm92aWRlcjogc2VsZWN0ZWQ/LmxhYmVsID8/IFwibm9uZVwiIH07XG59XG5cbmZ1bmN0aW9uIHNjYWZmb2xkKHdvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQsIG9wdGlvbnM6IERhdGFiYXNlT3B0aW9ucyk6IHZvaWQge1xuXHRpZiAob3B0aW9ucy5kYXRhYmFzZVByb3ZpZGVyICE9PSBcInBvc3RncmVzL3R5cGVvcm1cIikgcmV0dXJuO1xuXG5cdGNvbnN0IG5hbWUgPSB3b3Jrc3BhY2UubmFtZTtcblx0Y29uc3QgcGFzc3dvcmQgPSByYW5kb21CeXRlcygxNikudG9TdHJpbmcoXCJoZXhcIik7XG5cdGNvbnN0IGRiID0gYCR7bmFtZX1fZGV2YDtcblx0Y29uc3QgdXNlciA9IFwicG9zdGdyZXNcIjtcblxuXHRjb25zdCBkZXZDb250YWluZXIgPSB3b3Jrc3BhY2UuZ2V0TW9kZWw8RGV2Q29udGFpbmVyPihXRUxMX0tOT1dOX0ZJTEVTLkRFVkNPTlRBSU5FUl9KU09OKTtcblx0Y29uc3QgY29tcG9zZSA9IHdvcmtzcGFjZS5nZXRNb2RlbDxEb2NrZXJDb21wb3NlPihXRUxMX0tOT1dOX0ZJTEVTLkRPQ0tFUl9DT01QT1NFKTtcblxuXHQvLyBBZGQgcG9zdGdyZXMgc2VydmljZSB0byBjb21wb3NlXG5cdGNvbXBvc2Vcblx0XHQ/LmFkZFNlcnZpY2UoXCJwb3N0Z3Jlc1wiLCB7XG5cdFx0XHRpbWFnZTogXCJwb3N0Z3JlczoxNlwiLFxuXHRcdFx0cmVzdGFydDogXCJ1bmxlc3Mtc3RvcHBlZFwiLFxuXHRcdFx0ZW52aXJvbm1lbnQ6IHtcblx0XHRcdFx0Ly8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy9ub1RlbXBsYXRlQ3VybHlJblN0cmluZzogRG9ja2VyIENvbXBvc2UgcmVhZHMgdGhlc2UgZnJvbSAuZW52XG5cdFx0XHRcdFBPU1RHUkVTX0RCOiBcIiR7UE9TVEdSRVNfREJ9XCIsXG5cdFx0XHRcdC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9UZW1wbGF0ZUN1cmx5SW5TdHJpbmc6IERvY2tlciBDb21wb3NlIHJlYWRzIHRoZXNlIGZyb20gLmVudlxuXHRcdFx0XHRQT1NUR1JFU19VU0VSOiBcIiR7UE9TVEdSRVNfVVNFUn1cIixcblx0XHRcdFx0Ly8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy9ub1RlbXBsYXRlQ3VybHlJblN0cmluZzogRG9ja2VyIENvbXBvc2UgcmVhZHMgdGhlc2UgZnJvbSAuZW52XG5cdFx0XHRcdFBPU1RHUkVTX1BBU1NXT1JEOiBcIiR7UE9TVEdSRVNfUEFTU1dPUkR9XCIsXG5cdFx0XHR9LFxuXHRcdFx0cG9ydHM6IFtcIjU0MzI6NTQzMlwiXSxcblx0XHRcdHZvbHVtZXM6IFtcInBvc3RncmVzLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhXCJdLFxuXHRcdH0pXG5cdFx0LmFkZFZvbHVtZShcInBvc3RncmVzLWRhdGFcIik7XG5cblx0Y29tcG9zZT8uYWRkU2VydmljZShcImFkbWluZXJcIiwge1xuXHRcdGltYWdlOiBcImFkbWluZXJcIixcblx0XHRwb3J0czogW1wiODA4MDo4MDgwXCJdLFxuXHR9KTtcblxuXHQvLyBBZGQgU1FMVG9vbHMgZXh0ZW5zaW9uIGZvciBEQiBicm93c2luZyBpbiBWUyBDb2RlXG5cdGRldkNvbnRhaW5lcj8uYWRkRXh0ZW5zaW9uKFwibXR4ci5zcWx0b29sc1wiKTtcblxuXHQvLyBXaXJlIHVwIG1haW4udHNcblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPE1haW5Tb3VyY2VGaWxlPihXRUxMX0tOT1dOX0ZJTEVTLk1BSU5fVFMpXG5cdFx0Py5hZGRTaWRlRWZmZWN0SW1wb3J0KFwiQGRlY29oZXJlL2NvZGV4LXR5cGVvcm1cIilcblx0XHQuYWRkRW50aXR5KHsgY2xhc3NOYW1lOiBcIlNhbXBsZUVudGl0eVwiLCBpbXBvcnRQYXRoOiBcIi4vZW50aXRpZXMvc2FtcGxlLmVudGl0eS5qc1wiIH0pXG5cdFx0LmFkZFJlcG9zaXRvcnkoe1xuXHRcdFx0Y2xhc3NOYW1lOiBcIlNhbXBsZUVudGl0eVJlcG9zaXRvcnlcIixcblx0XHRcdGltcG9ydFBhdGg6IFwiLi9yZXBvc2l0b3JpZXMvc2FtcGxlLnJlcG9zaXRvcnkuanNcIixcblx0XHR9KTtcblxuXHQvLyBBZGQgY29kZXggKyB0eXBlb3JtIGRlcHMgdG8gcm9vdCBwYWNrYWdlLmpzb25cblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPFBhY2thZ2VKc29uPihXRUxMX0tOT1dOX0ZJTEVTLlBBQ0tBR0VfSlNPTilcblx0XHQ/LmFkZERlcGVuZGVuY3koXCJAZGVjb2hlcmUvY29kZXhcIiwgQ1JFQVRFX1ZFUlNJT04pXG5cdFx0LmFkZERlcGVuZGVuY3koXCJ0eXBlb3JtXCIsIFwiXjAuMy4yOFwiKVxuXHRcdC5hZGREZXBlbmRlbmN5KFwiQGRlY29oZXJlL2NvZGV4LXR5cGVvcm1cIiwgQ1JFQVRFX1ZFUlNJT04pO1xuXG5cdC8vIEFkZCBjb2RleCBkZXBzIHRvIGFwaSBwYWNrYWdlLmpzb25cblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPEFwaVBhY2thZ2VKc29uPihXRUxMX0tOT1dOX0ZJTEVTLkFQSV9QQUNLQUdFX0pTT04pXG5cdFx0Py5hZGREZXBlbmRlbmN5KFwiQGRlY29oZXJlL2NvZGV4XCIsIENSRUFURV9WRVJTSU9OKVxuXHRcdC5hZGREZXBlbmRlbmN5KFwiQGRlY29oZXJlL2NvZGV4LXR5cGVvcm1cIiwgQ1JFQVRFX1ZFUlNJT04pO1xuXG5cdC8vIEFwcGVuZCBkYXRhYmFzZSBjb25maWcgc2VjdGlvbnNcblx0d29ya3NwYWNlXG5cdFx0LmdldE1vZGVsPENvbmZpZ1lhbWw+KFdFTExfS05PV05fRklMRVMuQ09ORklHX1lBTUwpXG5cdFx0Py5hZGRTZWN0aW9uKERBVEFCQVNFX0JBU0VfQ09ORklHX1lBTUwpO1xuXHR3b3Jrc3BhY2Vcblx0XHQuZ2V0TW9kZWw8Q29uZmlnWWFtbD4oV0VMTF9LTk9XTl9GSUxFUy5DT05GSUdfREVWX1lBTUwpXG5cdFx0Py5hZGRTZWN0aW9uKERBVEFCQVNFX0RFVl9DT05GSUdfWUFNTCk7XG5cblx0Ly8gUmVnaXN0ZXIgZW50aXR5IGFuZCByZXBvc2l0b3J5IHNvdXJjZSBmaWxlcyBpbiB0aGUgYXBpIHByb2plY3Rcblx0d29ya3NwYWNlLmdldFByb2plY3QoV0VCQVBJX1BST0pFQ1RfRElSKT8uYWRkRmlsZSh7XG5cdFx0ZmlsZXM6ICgpID0+IFtcblx0XHRcdHtcblx0XHRcdFx0ZmlsZVBhdGg6IFwic3JjL2VudGl0aWVzL3NhbXBsZS5lbnRpdHkudHNcIixcblx0XHRcdFx0Y29udGVudDogU0FNUExFX0VOVElUWV9UUyxcblx0XHRcdH0sXG5cdFx0XHR7XG5cdFx0XHRcdGZpbGVQYXRoOiBcInNyYy9yZXBvc2l0b3JpZXMvc2FtcGxlLnJlcG9zaXRvcnkudHNcIixcblx0XHRcdFx0Y29udGVudDogU0FNUExFX1JFUE9TSVRPUllfVFMsXG5cdFx0XHR9LFxuXHRcdF0sXG5cdH0pO1xuXG5cdC8vIC5lbnYgYXQgd29ya3NwYWNlIHJvb3Qg4oCUIG1vdW50ZWQgYnkgY29tcG9zZSB2aWEgLi4vLmVudiBzbyBib3RoIHBvc3RncmVzXG5cdC8vIGFuZCB0aGUgZGV2Y29udGFpbmVyIHNlcnZpY2UgY2FuIHJlYWQgY3JlZGVudGlhbHNcblx0Y29tcG9zZT8uYWRkRW52RmlsZShcInBvc3RncmVzXCIsIFwiLi4vLmVudlwiKS5hZGRFbnZGaWxlKFwiZGV2Y29udGFpbmVyXCIsIFwiLi4vLmVudlwiKTtcblxuXHR3b3Jrc3BhY2Vcblx0XHQuZ2V0TW9kZWw8RW52RmlsZT4oV0VMTF9LTk9XTl9GSUxFUy5FTlZfRklMRSlcblx0XHQ/LmFkZEVudHJ5KFwiUE9TVEdSRVNfREJcIiwgZGIpXG5cdFx0LmFkZEVudHJ5KFwiUE9TVEdSRVNfVVNFUlwiLCB1c2VyKVxuXHRcdC5hZGRFbnRyeShcIlBPU1RHUkVTX1BBU1NXT1JEXCIsIHBhc3N3b3JkKVxuXHRcdC5hZGRFbnRyeShcIkRCX0hPU1RcIiwgXCJsb2NhbGhvc3RcIilcblx0XHQuYWRkRW50cnkoXCJEQl9QT1JUXCIsIFwiNTQzMlwiKVxuXHRcdC5hZGRFbnRyeShcIkRCX05BTUVcIiwgZGIpXG5cdFx0LmFkZEVudHJ5KFwiREJfVVNFUlwiLCB1c2VyKVxuXHRcdC5hZGRFbnRyeShcIkRCX1BBU1NXT1JEXCIsIHBhc3N3b3JkKVxuXHRcdC5hZGRFbnRyeShcIkRCX0FETUlOX1VTRVJcIiwgdXNlcilcblx0XHQuYWRkRW50cnkoXCJEQl9BRE1JTl9QQVNTV09SRFwiLCBwYXNzd29yZCk7XG59XG5cbmV4cG9ydCBjb25zdCBEYXRhYmFzZUZlYXR1cmU6IEZlYXR1cmU8RGF0YWJhc2VPcHRpb25zPiA9IHsgZ2V0T3B0aW9ucywgc2NhZmZvbGQgfTtcbiJdLCJuYW1lcyI6WyJyYW5kb21CeXRlcyIsInBpY2siLCJXRUxMX0tOT1dOX0ZJTEVTIiwiQ1JFQVRFX1ZFUlNJT04iLCJXRUJBUElfUFJPSkVDVF9ESVIiLCJEQVRBQkFTRV9CQVNFX0NPTkZJR19ZQU1MIiwiREFUQUJBU0VfREVWX0NPTkZJR19ZQU1MIiwiU0FNUExFX0VOVElUWV9UUyIsIlNBTVBMRV9SRVBPU0lUT1JZX1RTIiwiZ2V0T3B0aW9ucyIsIl93b3Jrc3BhY2UiLCJjbGlPcHRpb25zIiwiZGF0YWJhc2VQcm92aWRlciIsImNob2ljZXMiLCJsYWJlbCIsInNlbGVjdGVkIiwiYyIsInNjYWZmb2xkIiwid29ya3NwYWNlIiwib3B0aW9ucyIsIm5hbWUiLCJwYXNzd29yZCIsInRvU3RyaW5nIiwiZGIiLCJ1c2VyIiwiZGV2Q29udGFpbmVyIiwiZ2V0TW9kZWwiLCJERVZDT05UQUlORVJfSlNPTiIsImNvbXBvc2UiLCJET0NLRVJfQ09NUE9TRSIsImFkZFNlcnZpY2UiLCJpbWFnZSIsInJlc3RhcnQiLCJlbnZpcm9ubWVudCIsIlBPU1RHUkVTX0RCIiwiUE9TVEdSRVNfVVNFUiIsIlBPU1RHUkVTX1BBU1NXT1JEIiwicG9ydHMiLCJ2b2x1bWVzIiwiYWRkVm9sdW1lIiwiYWRkRXh0ZW5zaW9uIiwiTUFJTl9UUyIsImFkZFNpZGVFZmZlY3RJbXBvcnQiLCJhZGRFbnRpdHkiLCJjbGFzc05hbWUiLCJpbXBvcnRQYXRoIiwiYWRkUmVwb3NpdG9yeSIsIlBBQ0tBR0VfSlNPTiIsImFkZERlcGVuZGVuY3kiLCJBUElfUEFDS0FHRV9KU09OIiwiQ09ORklHX1lBTUwiLCJhZGRTZWN0aW9uIiwiQ09ORklHX0RFVl9ZQU1MIiwiZ2V0UHJvamVjdCIsImFkZEZpbGUiLCJmaWxlcyIsImZpbGVQYXRoIiwiY29udGVudCIsImFkZEVudkZpbGUiLCJFTlZfRklMRSIsImFkZEVudHJ5IiwiRGF0YWJhc2VGZWF0dXJlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxXQUFXLFFBQVEsY0FBYztBQUMxQyxTQUFTQyxJQUFJLFFBQVEseUJBQXlCO0FBRzlDLFNBQVNDLGdCQUFnQixRQUFRLHdCQUF3QjtBQU16RCxTQUFTQyxjQUFjLFFBQVEsbUJBQW1CO0FBQ2xELFNBQVNDLGtCQUFrQixRQUFRLG1CQUFtQjtBQVF0RCw2RUFBNkU7QUFDN0UsbUVBQW1FO0FBQ25F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
@@ -1,5 +1,5 @@
1
1
  import { detectPackageManager, promptForPackageManager } from "@decohere/nexus/interop";
2
- import { ask } from "../../../v1/domain/prompt.js";
2
+ import { ask } from "../../domain/prompt.js";
3
3
  // State resolved during scaffold(), consumed by finalize().
4
4
  let _pm = null;
5
5
  let _shouldInstall = true;
@@ -7,13 +7,17 @@ async function getOptions(_workspace, _cliOptions) {
7
7
  return {};
8
8
  }
9
9
  async function scaffold(workspace, _options) {
10
+ if (process.env.DECOHERE_BUILDER === "1") {
11
+ _shouldInstall = false;
12
+ return;
13
+ }
10
14
  _pm = detectPackageManager(workspace.targetDir) ?? await promptForPackageManager();
11
15
  const answer = await ask("\nInstall dependencies now? [yes/no] (yes): ", "yes");
12
16
  _shouldInstall = answer.toLowerCase() !== "no";
13
17
  }
14
18
  async function finalize(workspace, _options) {
15
- const pm = _pm;
16
19
  if (_shouldInstall) {
20
+ const pm = _pm;
17
21
  console.log(`\nScaffolded ${workspace.name}. Installing dependencies...\n`);
18
22
  await pm.install({
19
23
  cwd: workspace.targetDir
@@ -22,10 +26,11 @@ async function finalize(workspace, _options) {
22
26
  console.log(`\nDone! ${_shouldInstall ? "Next" : "To get started:"} steps:\n`);
23
27
  console.log(` cd ${workspace.name}`);
24
28
  if (!_shouldInstall) {
25
- console.log(` ${pm.name} install`);
29
+ const pmName = _pm?.name ?? "pnpm";
30
+ console.log(` ${pmName} install`);
26
31
  }
27
- console.log(" pnpm build # forge build");
28
- console.log(" pnpm dev # flux serve\n");
32
+ console.log(" code . # open in VS Code");
33
+ console.log(" # then: Reopen in Container\n");
29
34
  }
30
35
  export const FinalizeFeature = {
31
36
  getOptions,
@@ -33,4 +38,4 @@ export const FinalizeFeature = {
33
38
  finalize
34
39
  };
35
40
 
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL2ZpbmFsaXplLmZlYXR1cmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYWNrYWdlTWFuYWdlciB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvaW50ZXJvcFwiO1xuaW1wb3J0IHsgZGV0ZWN0UGFja2FnZU1hbmFnZXIsIHByb21wdEZvclBhY2thZ2VNYW5hZ2VyIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9pbnRlcm9wXCI7XG5pbXBvcnQgeyBhc2sgfSBmcm9tIFwiLi4vLi4vLi4vdjEvZG9tYWluL3Byb21wdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3Jrc3BhY2VTY2FmZm9sZCB9IGZyb20gXCIuLi8uLi9tb2RlbHMvcHJvamVjdC5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBGZWF0dXJlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3NjYWZmb2xkLnNlcnZpY2UuanNcIjtcblxuLy8gU3RhdGUgcmVzb2x2ZWQgZHVyaW5nIHNjYWZmb2xkKCksIGNvbnN1bWVkIGJ5IGZpbmFsaXplKCkuXG5sZXQgX3BtOiBQYWNrYWdlTWFuYWdlciB8IG51bGwgPSBudWxsO1xubGV0IF9zaG91bGRJbnN0YWxsID0gdHJ1ZTtcblxuYXN5bmMgZnVuY3Rpb24gZ2V0T3B0aW9ucyhcblx0X3dvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQsXG5cdF9jbGlPcHRpb25zOiBvYmplY3QsXG4pOiBQcm9taXNlPG9iamVjdD4ge1xuXHRyZXR1cm4ge307XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHNjYWZmb2xkKHdvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQsIF9vcHRpb25zOiBvYmplY3QpOiBQcm9taXNlPHZvaWQ+IHtcblx0X3BtID0gZGV0ZWN0UGFja2FnZU1hbmFnZXIod29ya3NwYWNlLnRhcmdldERpcikgPz8gKGF3YWl0IHByb21wdEZvclBhY2thZ2VNYW5hZ2VyKCkpO1xuXHRjb25zdCBhbnN3ZXIgPSBhd2FpdCBhc2soXCJcXG5JbnN0YWxsIGRlcGVuZGVuY2llcyBub3c/IFt5ZXMvbm9dICh5ZXMpOiBcIiwgXCJ5ZXNcIik7XG5cdF9zaG91bGRJbnN0YWxsID0gYW5zd2VyLnRvTG93ZXJDYXNlKCkgIT09IFwibm9cIjtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZmluYWxpemUod29ya3NwYWNlOiBXb3Jrc3BhY2VTY2FmZm9sZCwgX29wdGlvbnM6IG9iamVjdCk6IFByb21pc2U8dm9pZD4ge1xuXHRjb25zdCBwbSA9IF9wbSE7XG5cdGlmIChfc2hvdWxkSW5zdGFsbCkge1xuXHRcdGNvbnNvbGUubG9nKGBcXG5TY2FmZm9sZGVkICR7d29ya3NwYWNlLm5hbWV9LiBJbnN0YWxsaW5nIGRlcGVuZGVuY2llcy4uLlxcbmApO1xuXHRcdGF3YWl0IHBtLmluc3RhbGwoeyBjd2Q6IHdvcmtzcGFjZS50YXJnZXREaXIgfSk7XG5cdH1cblxuXHRjb25zb2xlLmxvZyhgXFxuRG9uZSEgJHtfc2hvdWxkSW5zdGFsbCA/IFwiTmV4dFwiIDogXCJUbyBnZXQgc3RhcnRlZDpcIn0gc3RlcHM6XFxuYCk7XG5cdGNvbnNvbGUubG9nKGAgIGNkICR7d29ya3NwYWNlLm5hbWV9YCk7XG5cdGlmICghX3Nob3VsZEluc3RhbGwpIHtcblx0XHRjb25zb2xlLmxvZyhgICAke3BtLm5hbWV9IGluc3RhbGxgKTtcblx0fVxuXHRjb25zb2xlLmxvZyhcIiAgcG5wbSBidWlsZCAgICAgIyBmb3JnZSBidWlsZFwiKTtcblx0Y29uc29sZS5sb2coXCIgIHBucG0gZGV2ICAgICAgICMgZmx1eCBzZXJ2ZVxcblwiKTtcbn1cblxuZXhwb3J0IGNvbnN0IEZpbmFsaXplRmVhdHVyZTogRmVhdHVyZSA9IHsgZ2V0T3B0aW9ucywgc2NhZmZvbGQsIGZpbmFsaXplIH07XG4iXSwibmFtZXMiOlsiZGV0ZWN0UGFja2FnZU1hbmFnZXIiLCJwcm9tcHRGb3JQYWNrYWdlTWFuYWdlciIsImFzayIsIl9wbSIsIl9zaG91bGRJbnN0YWxsIiwiZ2V0T3B0aW9ucyIsIl93b3Jrc3BhY2UiLCJfY2xpT3B0aW9ucyIsInNjYWZmb2xkIiwid29ya3NwYWNlIiwiX29wdGlvbnMiLCJ0YXJnZXREaXIiLCJhbnN3ZXIiLCJ0b0xvd2VyQ2FzZSIsImZpbmFsaXplIiwicG0iLCJjb25zb2xlIiwibG9nIiwibmFtZSIsImluc3RhbGwiLCJjd2QiLCJGaW5hbGl6ZUZlYXR1cmUiXSwibWFwcGluZ3MiOiJBQUNBLFNBQVNBLG9CQUFvQixFQUFFQyx1QkFBdUIsUUFBUSwwQkFBMEI7QUFDeEYsU0FBU0MsR0FBRyxRQUFRLCtCQUErQjtBQUluRCw0REFBNEQ7QUFDNUQsSUFBSUMsTUFBNkI7QUFDakMsSUFBSUMsaUJBQWlCO0FBRXJCLGVBQWVDLFdBQ2RDLFVBQTZCLEVBQzdCQyxXQUFtQjtJQUVuQixPQUFPLENBQUM7QUFDVDtBQUVBLGVBQWVDLFNBQVNDLFNBQTRCLEVBQUVDLFFBQWdCO0lBQ3JFUCxNQUFNSCxxQkFBcUJTLFVBQVVFLFNBQVMsS0FBTSxNQUFNVjtJQUMxRCxNQUFNVyxTQUFTLE1BQU1WLElBQUksZ0RBQWdEO0lBQ3pFRSxpQkFBaUJRLE9BQU9DLFdBQVcsT0FBTztBQUMzQztBQUVBLGVBQWVDLFNBQVNMLFNBQTRCLEVBQUVDLFFBQWdCO0lBQ3JFLE1BQU1LLEtBQUtaO0lBQ1gsSUFBSUMsZ0JBQWdCO1FBQ25CWSxRQUFRQyxHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQUVSLFVBQVVTLElBQUksQ0FBQyw4QkFBOEIsQ0FBQztRQUMxRSxNQUFNSCxHQUFHSSxPQUFPLENBQUM7WUFBRUMsS0FBS1gsVUFBVUUsU0FBUztRQUFDO0lBQzdDO0lBRUFLLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRWIsaUJBQWlCLFNBQVMsa0JBQWtCLFNBQVMsQ0FBQztJQUM3RVksUUFBUUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFUixVQUFVUyxJQUFJLEVBQUU7SUFDcEMsSUFBSSxDQUFDZCxnQkFBZ0I7UUFDcEJZLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRUYsR0FBR0csSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNuQztJQUNBRixRQUFRQyxHQUFHLENBQUM7SUFDWkQsUUFBUUMsR0FBRyxDQUFDO0FBQ2I7QUFFQSxPQUFPLE1BQU1JLGtCQUEyQjtJQUFFaEI7SUFBWUc7SUFBVU07QUFBUyxFQUFFIn0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL2ZpbmFsaXplLmZlYXR1cmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYWNrYWdlTWFuYWdlciB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvaW50ZXJvcFwiO1xuaW1wb3J0IHsgZGV0ZWN0UGFja2FnZU1hbmFnZXIsIHByb21wdEZvclBhY2thZ2VNYW5hZ2VyIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9pbnRlcm9wXCI7XG5pbXBvcnQgeyBhc2sgfSBmcm9tIFwiLi4vLi4vZG9tYWluL3Byb21wdC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXb3Jrc3BhY2VTY2FmZm9sZCB9IGZyb20gXCIuLi8uLi9tb2RlbHMvcHJvamVjdC5tb2RlbC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBGZWF0dXJlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3NjYWZmb2xkLnNlcnZpY2UuanNcIjtcblxuLy8gU3RhdGUgcmVzb2x2ZWQgZHVyaW5nIHNjYWZmb2xkKCksIGNvbnN1bWVkIGJ5IGZpbmFsaXplKCkuXG5sZXQgX3BtOiBQYWNrYWdlTWFuYWdlciB8IG51bGwgPSBudWxsO1xubGV0IF9zaG91bGRJbnN0YWxsID0gdHJ1ZTtcblxuYXN5bmMgZnVuY3Rpb24gZ2V0T3B0aW9ucyhcblx0X3dvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQsXG5cdF9jbGlPcHRpb25zOiBvYmplY3QsXG4pOiBQcm9taXNlPG9iamVjdD4ge1xuXHRyZXR1cm4ge307XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHNjYWZmb2xkKHdvcmtzcGFjZTogV29ya3NwYWNlU2NhZmZvbGQsIF9vcHRpb25zOiBvYmplY3QpOiBQcm9taXNlPHZvaWQ+IHtcblx0aWYgKHByb2Nlc3MuZW52LkRFQ09IRVJFX0JVSUxERVIgPT09IFwiMVwiKSB7XG5cdFx0X3Nob3VsZEluc3RhbGwgPSBmYWxzZTtcblx0XHRyZXR1cm47XG5cdH1cblx0X3BtID0gZGV0ZWN0UGFja2FnZU1hbmFnZXIod29ya3NwYWNlLnRhcmdldERpcikgPz8gKGF3YWl0IHByb21wdEZvclBhY2thZ2VNYW5hZ2VyKCkpO1xuXHRjb25zdCBhbnN3ZXIgPSBhd2FpdCBhc2soXCJcXG5JbnN0YWxsIGRlcGVuZGVuY2llcyBub3c/IFt5ZXMvbm9dICh5ZXMpOiBcIiwgXCJ5ZXNcIik7XG5cdF9zaG91bGRJbnN0YWxsID0gYW5zd2VyLnRvTG93ZXJDYXNlKCkgIT09IFwibm9cIjtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZmluYWxpemUod29ya3NwYWNlOiBXb3Jrc3BhY2VTY2FmZm9sZCwgX29wdGlvbnM6IG9iamVjdCk6IFByb21pc2U8dm9pZD4ge1xuXHRpZiAoX3Nob3VsZEluc3RhbGwpIHtcblx0XHRjb25zdCBwbSA9IF9wbSE7XG5cdFx0Y29uc29sZS5sb2coYFxcblNjYWZmb2xkZWQgJHt3b3Jrc3BhY2UubmFtZX0uIEluc3RhbGxpbmcgZGVwZW5kZW5jaWVzLi4uXFxuYCk7XG5cdFx0YXdhaXQgcG0uaW5zdGFsbCh7IGN3ZDogd29ya3NwYWNlLnRhcmdldERpciB9KTtcblx0fVxuXG5cdGNvbnNvbGUubG9nKGBcXG5Eb25lISAke19zaG91bGRJbnN0YWxsID8gXCJOZXh0XCIgOiBcIlRvIGdldCBzdGFydGVkOlwifSBzdGVwczpcXG5gKTtcblx0Y29uc29sZS5sb2coYCAgY2QgJHt3b3Jrc3BhY2UubmFtZX1gKTtcblx0aWYgKCFfc2hvdWxkSW5zdGFsbCkge1xuXHRcdGNvbnN0IHBtTmFtZSA9IF9wbT8ubmFtZSA/PyBcInBucG1cIjtcblx0XHRjb25zb2xlLmxvZyhgICAke3BtTmFtZX0gaW5zdGFsbGApO1xuXHR9XG5cdGNvbnNvbGUubG9nKFwiICBjb2RlIC4gICAgICAgICAjIG9wZW4gaW4gVlMgQ29kZVwiKTtcblx0Y29uc29sZS5sb2coXCIgICAgICAgICAgICAgICAgICMgdGhlbjogUmVvcGVuIGluIENvbnRhaW5lclxcblwiKTtcbn1cblxuZXhwb3J0IGNvbnN0IEZpbmFsaXplRmVhdHVyZTogRmVhdHVyZSA9IHsgZ2V0T3B0aW9ucywgc2NhZmZvbGQsIGZpbmFsaXplIH07XG4iXSwibmFtZXMiOlsiZGV0ZWN0UGFja2FnZU1hbmFnZXIiLCJwcm9tcHRGb3JQYWNrYWdlTWFuYWdlciIsImFzayIsIl9wbSIsIl9zaG91bGRJbnN0YWxsIiwiZ2V0T3B0aW9ucyIsIl93b3Jrc3BhY2UiLCJfY2xpT3B0aW9ucyIsInNjYWZmb2xkIiwid29ya3NwYWNlIiwiX29wdGlvbnMiLCJwcm9jZXNzIiwiZW52IiwiREVDT0hFUkVfQlVJTERFUiIsInRhcmdldERpciIsImFuc3dlciIsInRvTG93ZXJDYXNlIiwiZmluYWxpemUiLCJwbSIsImNvbnNvbGUiLCJsb2ciLCJuYW1lIiwiaW5zdGFsbCIsImN3ZCIsInBtTmFtZSIsIkZpbmFsaXplRmVhdHVyZSJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0Esb0JBQW9CLEVBQUVDLHVCQUF1QixRQUFRLDBCQUEwQjtBQUN4RixTQUFTQyxHQUFHLFFBQVEseUJBQXlCO0FBSTdDLDREQUE0RDtBQUM1RCxJQUFJQyxNQUE2QjtBQUNqQyxJQUFJQyxpQkFBaUI7QUFFckIsZUFBZUMsV0FDZEMsVUFBNkIsRUFDN0JDLFdBQW1CO0lBRW5CLE9BQU8sQ0FBQztBQUNUO0FBRUEsZUFBZUMsU0FBU0MsU0FBNEIsRUFBRUMsUUFBZ0I7SUFDckUsSUFBSUMsUUFBUUMsR0FBRyxDQUFDQyxnQkFBZ0IsS0FBSyxLQUFLO1FBQ3pDVCxpQkFBaUI7UUFDakI7SUFDRDtJQUNBRCxNQUFNSCxxQkFBcUJTLFVBQVVLLFNBQVMsS0FBTSxNQUFNYjtJQUMxRCxNQUFNYyxTQUFTLE1BQU1iLElBQUksZ0RBQWdEO0lBQ3pFRSxpQkFBaUJXLE9BQU9DLFdBQVcsT0FBTztBQUMzQztBQUVBLGVBQWVDLFNBQVNSLFNBQTRCLEVBQUVDLFFBQWdCO0lBQ3JFLElBQUlOLGdCQUFnQjtRQUNuQixNQUFNYyxLQUFLZjtRQUNYZ0IsUUFBUUMsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFWCxVQUFVWSxJQUFJLENBQUMsOEJBQThCLENBQUM7UUFDMUUsTUFBTUgsR0FBR0ksT0FBTyxDQUFDO1lBQUVDLEtBQUtkLFVBQVVLLFNBQVM7UUFBQztJQUM3QztJQUVBSyxRQUFRQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUVoQixpQkFBaUIsU0FBUyxrQkFBa0IsU0FBUyxDQUFDO0lBQzdFZSxRQUFRQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUVYLFVBQVVZLElBQUksRUFBRTtJQUNwQyxJQUFJLENBQUNqQixnQkFBZ0I7UUFDcEIsTUFBTW9CLFNBQVNyQixLQUFLa0IsUUFBUTtRQUM1QkYsUUFBUUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFSSxPQUFPLFFBQVEsQ0FBQztJQUNsQztJQUNBTCxRQUFRQyxHQUFHLENBQUM7SUFDWkQsUUFBUUMsR0FBRyxDQUFDO0FBQ2I7QUFFQSxPQUFPLE1BQU1LLGtCQUEyQjtJQUFFcEI7SUFBWUc7SUFBVVM7QUFBUyxFQUFFIn0=
@@ -1,4 +1,4 @@
1
- import { pick } from "../../../v1/domain/prompt.js";
1
+ import { pick } from "../../domain/prompt.js";
2
2
  import { WELL_KNOWN_FILES } from "../../models/const.js";
3
3
  import * as auth0Cli from "./auth0-cli.js";
4
4
  async function getOptions(_workspace, cliOptions) {
@@ -26,7 +26,7 @@ async function getOptions(_workspace, cliOptions) {
26
26
  postmanProvider: "local"
27
27
  };
28
28
  // api: collect API key + workspace selection
29
- const apiKey = process.env.POSTMAN_API_KEY ?? await import("../../../v1/domain/prompt.js").then((m)=>m.ask("\n Postman API key (app.getpostman.com/settings/me/api-keys): "));
29
+ const apiKey = process.env.POSTMAN_API_KEY ?? await import("../../domain/prompt.js").then((m)=>m.ask("\n Postman API key (app.getpostman.com/settings/me/api-keys): "));
30
30
  const headers = {
31
31
  "X-Api-Key": apiKey,
32
32
  "Content-Type": "application/json"
@@ -54,7 +54,7 @@ async function getOptions(_workspace, cliOptions) {
54
54
  const wsPicked = await pick("\n Postman workspace: ", wsChoices, (c)=>c.label);
55
55
  let workspaceId;
56
56
  if (!wsPicked || wsPicked.id === null) {
57
- const { ask } = await import("../../../v1/domain/prompt.js");
57
+ const { ask } = await import("../../domain/prompt.js");
58
58
  const wsName = await ask(` Workspace name: `);
59
59
  const createRes = await fetch("https://api.getpostman.com/workspaces", {
60
60
  method: "POST",
@@ -255,4 +255,4 @@ export const PostmanFeature = {
255
255
  scaffold
256
256
  };
257
257
 
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL3Bvc3RtYW4uZmVhdHVyZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3YxL2RvbWFpbi9wcm9tcHQuanNcIjtcbmltcG9ydCB7IFdFTExfS05PV05fRklMRVMgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbnN0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtzcGFjZVNjYWZmb2xkIH0gZnJvbSBcIi4uLy4uL21vZGVscy9wcm9qZWN0Lm1vZGVsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEZlYXR1cmUgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvc2NhZmZvbGQuc2VydmljZS5qc1wiO1xuaW1wb3J0IHR5cGUgeyBBdXRoQ29uZmlnTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2F1dGgtY29uZmlnLm1vZGVsLmpzXCI7XG5pbXBvcnQgKiBhcyBhdXRoMENsaSBmcm9tIFwiLi9hdXRoMC1jbGkuanNcIjtcblxuZXhwb3J0IHR5cGUgUG9zdG1hbk9wdGlvbnMgPSB7XG5cdHBvc3RtYW5Qcm92aWRlcj86IFwiYXBpXCIgfCBcImxvY2FsXCIgfCBcIm5vbmVcIjtcblx0YXBpS2V5Pzogc3RyaW5nO1xuXHR3b3Jrc3BhY2VJZD86IHN0cmluZztcbn07XG5cbmFzeW5jIGZ1bmN0aW9uIGdldE9wdGlvbnMoXG5cdF93b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLFxuXHRjbGlPcHRpb25zOiBQYXJ0aWFsPFBvc3RtYW5PcHRpb25zPixcbik6IFByb21pc2U8UGFydGlhbDxQb3N0bWFuT3B0aW9ucz4+IHtcblx0aWYgKGNsaU9wdGlvbnMucG9zdG1hblByb3ZpZGVyICE9IG51bGwpIHJldHVybiB7fTtcblxuXHRjb25zdCBjaG9pY2VzID0gW1xuXHRcdHsgbGFiZWw6IFwibm9uZVwiIGFzIGNvbnN0LCBkZXNjcmlwdGlvbjogXCJza2lwXCIgfSxcblx0XHR7IGxhYmVsOiBcImxvY2FsXCIgYXMgY29uc3QsIGRlc2NyaXB0aW9uOiBcIndyaXRlIGNvbGxlY3Rpb24gKyBlbnZpcm9ubWVudCBmaWxlc1wiIH0sXG5cdFx0eyBsYWJlbDogXCJhcGlcIiBhcyBjb25zdCwgZGVzY3JpcHRpb246IFwid3JpdGUgZmlsZXMgYW5kIHVwbG9hZCB0byBQb3N0bWFuLmNvbVwiIH0sXG5cdF07XG5cdGNvbnN0IHNlbGVjdGVkID0gYXdhaXQgcGljayhcblx0XHRcIlxcbiAgUG9zdG1hbjogXCIsXG5cdFx0Y2hvaWNlcyxcblx0XHQoYykgPT4gYCR7Yy5sYWJlbH0g4oCUICR7Yy5kZXNjcmlwdGlvbn1gLFxuXHQpO1xuXHRjb25zdCBwcm92aWRlciA9IHNlbGVjdGVkPy5sYWJlbCA/PyBcIm5vbmVcIjtcblxuXHRpZiAocHJvdmlkZXIgPT09IFwibm9uZVwiKSByZXR1cm4geyBwb3N0bWFuUHJvdmlkZXI6IFwibm9uZVwiIH07XG5cdGlmIChwcm92aWRlciA9PT0gXCJsb2NhbFwiKSByZXR1cm4geyBwb3N0bWFuUHJvdmlkZXI6IFwibG9jYWxcIiB9O1xuXG5cdC8vIGFwaTogY29sbGVjdCBBUEkga2V5ICsgd29ya3NwYWNlIHNlbGVjdGlvblxuXHRjb25zdCBhcGlLZXkgPVxuXHRcdHByb2Nlc3MuZW52LlBPU1RNQU5fQVBJX0tFWSA/P1xuXHRcdChhd2FpdCBpbXBvcnQoXCIuLi8uLi8uLi92MS9kb21haW4vcHJvbXB0LmpzXCIpLnRoZW4oKG0pID0+XG5cdFx0XHRtLmFzayhcIlxcbiAgUG9zdG1hbiBBUEkga2V5IChhcHAuZ2V0cG9zdG1hbi5jb20vc2V0dGluZ3MvbWUvYXBpLWtleXMpOiBcIiksXG5cdFx0KSk7XG5cblx0Y29uc3QgaGVhZGVycyA9IHsgXCJYLUFwaS1LZXlcIjogYXBpS2V5LCBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9O1xuXHRjb25zdCB3c1JlcyA9IGF3YWl0IGZldGNoKFwiaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vd29ya3NwYWNlc1wiLCB7IGhlYWRlcnMgfSk7XG5cblx0aWYgKCF3c1Jlcy5vaykge1xuXHRcdGNvbnNvbGUuZXJyb3IoXCJcXG4gIFBvc3RtYW4gQVBJIGtleSBpbnZhbGlkIOKAlCBmYWxsaW5nIGJhY2sgdG8gbG9jYWwgZmlsZXMuXCIpO1xuXHRcdHJldHVybiB7IHBvc3RtYW5Qcm92aWRlcjogXCJsb2NhbFwiIH07XG5cdH1cblxuXHRjb25zdCB7IHdvcmtzcGFjZXMgfSA9IChhd2FpdCB3c1Jlcy5qc29uKCkpIGFzIHtcblx0XHR3b3Jrc3BhY2VzOiBBcnJheTx7IGlkOiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgdHlwZTogc3RyaW5nIH0+O1xuXHR9O1xuXG5cdHR5cGUgV3NDaG9pY2UgPSB7IGxhYmVsOiBzdHJpbmc7IGlkOiBzdHJpbmcgfCBudWxsIH07XG5cdGNvbnN0IHdzQ2hvaWNlczogV3NDaG9pY2VbXSA9IFtcblx0XHR7IGxhYmVsOiBcIjxuZXcgd29ya3NwYWNlPlwiLCBpZDogbnVsbCB9LFxuXHRcdC4uLndvcmtzcGFjZXMubWFwKCh3KSA9PiAoeyBsYWJlbDogYCR7dy5uYW1lfSAoJHt3LnR5cGV9KWAsIGlkOiB3LmlkIH0pKSxcblx0XTtcblxuXHRjb25zdCB3c1BpY2tlZCA9IGF3YWl0IHBpY2soXCJcXG4gIFBvc3RtYW4gd29ya3NwYWNlOiBcIiwgd3NDaG9pY2VzLCAoYykgPT4gYy5sYWJlbCk7XG5cblx0bGV0IHdvcmtzcGFjZUlkOiBzdHJpbmc7XG5cdGlmICghd3NQaWNrZWQgfHwgd3NQaWNrZWQuaWQgPT09IG51bGwpIHtcblx0XHRjb25zdCB7IGFzayB9ID0gYXdhaXQgaW1wb3J0KFwiLi4vLi4vLi4vdjEvZG9tYWluL3Byb21wdC5qc1wiKTtcblx0XHRjb25zdCB3c05hbWUgPSBhd2FpdCBhc2soYCAgV29ya3NwYWNlIG5hbWU6IGApO1xuXHRcdGNvbnN0IGNyZWF0ZVJlcyA9IGF3YWl0IGZldGNoKFwiaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vd29ya3NwYWNlc1wiLCB7XG5cdFx0XHRtZXRob2Q6IFwiUE9TVFwiLFxuXHRcdFx0aGVhZGVycyxcblx0XHRcdGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgd29ya3NwYWNlOiB7IG5hbWU6IHdzTmFtZSwgdHlwZTogXCJwZXJzb25hbFwiIH0gfSksXG5cdFx0fSk7XG5cdFx0Y29uc3QgeyB3b3Jrc3BhY2U6IHdzIH0gPSAoYXdhaXQgY3JlYXRlUmVzLmpzb24oKSkgYXMgeyB3b3Jrc3BhY2U6IHsgaWQ6IHN0cmluZyB9IH07XG5cdFx0d29ya3NwYWNlSWQgPSB3cy5pZDtcblx0XHRjb25zb2xlLmxvZyhgICDinJMgV29ya3NwYWNlIGNyZWF0ZWQ6ICR7d3NOYW1lfWApO1xuXHR9IGVsc2Uge1xuXHRcdHdvcmtzcGFjZUlkID0gd3NQaWNrZWQuaWQ7XG5cdH1cblxuXHRyZXR1cm4geyBwb3N0bWFuUHJvdmlkZXI6IFwiYXBpXCIsIGFwaUtleSwgd29ya3NwYWNlSWQgfTtcbn1cblxudHlwZSBBdXRoMEVudiA9IHtcblx0YXV0aDBEb21haW4/OiBzdHJpbmc7XG5cdGF1dGgwQXVkaWVuY2U/OiBzdHJpbmc7XG5cdGF1dGgwQ2xpZW50SWQ/OiBzdHJpbmc7XG59O1xuXG5mdW5jdGlvbiBidWlsZENvbGxlY3Rpb24ocHJvamVjdE5hbWU6IHN0cmluZywgYXV0aD86IEF1dGgwRW52KTogdW5rbm93biB7XG5cdGNvbnN0IGF1dGhPYmogPSBhdXRoPy5hdXRoMERvbWFpblxuXHRcdD8ge1xuXHRcdFx0XHR0eXBlOiBcIm9hdXRoMlwiLFxuXHRcdFx0XHRvYXV0aDI6IFtcblx0XHRcdFx0XHR7IGtleTogXCJncmFudF90eXBlXCIsIHZhbHVlOiBcImF1dGhvcml6YXRpb25fY29kZV93aXRoX3BrY2VcIiwgdHlwZTogXCJzdHJpbmdcIiB9LFxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdGtleTogXCJhdXRoVXJsXCIsXG5cdFx0XHRcdFx0XHR2YWx1ZTogXCJodHRwczovL3t7YXV0aDBEb21haW59fS9hdXRob3JpemU/YXVkaWVuY2U9e3thdXRoMEF1ZGllbmNlfX1cIixcblx0XHRcdFx0XHRcdHR5cGU6IFwic3RyaW5nXCIsXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRrZXk6IFwiYWNjZXNzVG9rZW5VcmxcIixcblx0XHRcdFx0XHRcdHZhbHVlOiBcImh0dHBzOi8ve3thdXRoMERvbWFpbn19L29hdXRoL3Rva2VuXCIsXG5cdFx0XHRcdFx0XHR0eXBlOiBcInN0cmluZ1wiLFxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0eyBrZXk6IFwiY2xpZW50SWRcIiwgdmFsdWU6IFwie3thdXRoMENsaWVudElkfX1cIiwgdHlwZTogXCJzdHJpbmdcIiB9LFxuXHRcdFx0XHRcdHsga2V5OiBcInNjb3BlXCIsIHZhbHVlOiBcIm9wZW5pZCBwcm9maWxlIGVtYWlsXCIsIHR5cGU6IFwic3RyaW5nXCIgfSxcblx0XHRcdFx0XHR7IGtleTogXCJhZGRUb2tlblRvXCIsIHZhbHVlOiBcImhlYWRlclwiLCB0eXBlOiBcInN0cmluZ1wiIH0sXG5cdFx0XHRcdFx0eyBrZXk6IFwiY2hhbGxlbmdlQWxnb3JpdGhtXCIsIHZhbHVlOiBcIlMyNTZcIiwgdHlwZTogXCJzdHJpbmdcIiB9LFxuXHRcdFx0XHRdLFxuXHRcdFx0fVxuXHRcdDogdW5kZWZpbmVkO1xuXG5cdHJldHVybiB7XG5cdFx0aW5mbzoge1xuXHRcdFx0bmFtZTogYCR7cHJvamVjdE5hbWV9IFdlYkFQSWAsXG5cdFx0XHRzY2hlbWE6IFwiaHR0cHM6Ly9zY2hlbWEuZ2V0cG9zdG1hbi5jb20vanNvbi9jb2xsZWN0aW9uL3YyLjEuMC9jb2xsZWN0aW9uLmpzb25cIixcblx0XHR9LFxuXHRcdC4uLihhdXRoT2JqID8geyBhdXRoOiBhdXRoT2JqIH0gOiB7fSksXG5cdFx0aXRlbTogW1xuXHRcdFx0e1xuXHRcdFx0XHRuYW1lOiBcIkhlbGxvXCIsXG5cdFx0XHRcdHJlcXVlc3Q6IHtcblx0XHRcdFx0XHRtZXRob2Q6IFwiR0VUXCIsXG5cdFx0XHRcdFx0dXJsOiB7IHJhdzogXCJ7e2Jhc2VVcmx9fS9oZWxsb1wiLCBob3N0OiBbXCJ7e2Jhc2VVcmx9fVwiXSwgcGF0aDogW1wiaGVsbG9cIl0gfSxcblx0XHRcdFx0fSxcblx0XHRcdH0sXG5cdFx0XSxcblx0fTtcbn1cblxuZnVuY3Rpb24gYnVpbGRFbnZpcm9ubWVudFlhbWwobmFtZTogc3RyaW5nLCBhdXRoPzogQXV0aDBFbnYpOiBzdHJpbmcge1xuXHRjb25zdCBhdXRoMFNlY3Rpb24gPSBhdXRoPy5hdXRoMERvbWFpblxuXHRcdD8gW1xuXHRcdFx0XHRcIiAgLSBrZXk6IGF1dGgwRG9tYWluXCIsXG5cdFx0XHRcdGAgICAgdmFsdWU6ICR7YXV0aC5hdXRoMERvbWFpbn1gLFxuXHRcdFx0XHRcIiAgLSBrZXk6IGF1dGgwQXVkaWVuY2VcIixcblx0XHRcdFx0YCAgICB2YWx1ZTogJyR7YXV0aC5hdXRoMEF1ZGllbmNlID8/IFwiXCJ9J2AsXG5cdFx0XHRcdFwiICAtIGtleTogYXV0aDBDbGllbnRJZFwiLFxuXHRcdFx0XHRgICAgIHZhbHVlOiAnJHthdXRoLmF1dGgwQ2xpZW50SWQgPz8gXCJcIn0nYCxcblx0XHRcdFx0XCIgICAgZGVzY3JpcHRpb246IENsaWVudCBJRCBvZiB0aGUgQXV0aDAgU1BBIGFwcGxpY2F0aW9uIHVzZWQgYnkgUG9zdG1hbiBmb3IgUEtDRSBhdXRoZW50aWNhdGlvblwiLFxuXHRcdFx0XS5qb2luKFwiXFxuXCIpICsgXCJcXG5cIlxuXHRcdDogXCJcIjtcblxuXHRyZXR1cm4gYG5hbWU6ICR7bmFtZX1cXG52YWx1ZXM6XFxuICAtIGtleTogYmFzZVVybFxcbiAgICB2YWx1ZTogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMCdcXG4ke2F1dGgwU2VjdGlvbn1gO1xufVxuXG5hc3luYyBmdW5jdGlvbiBzY2FmZm9sZCh3b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLCBvcHRpb25zOiBQb3N0bWFuT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuXHRpZiAob3B0aW9ucy5wb3N0bWFuUHJvdmlkZXIgPT09IFwibm9uZVwiKSByZXR1cm47XG5cblx0Y29uc3QgYXV0aENvbmZpZ01vZGVsID0gd29ya3NwYWNlLmdldE1vZGVsPEF1dGhDb25maWdNb2RlbD4oV0VMTF9LTk9XTl9GSUxFUy5BVVRIX0NPTkZJRyk7XG5cdGNvbnN0IGF1dGhDZmcgPSBhdXRoQ29uZmlnTW9kZWw/LmNvbmZpZztcblxuXHRsZXQgc3BhQ2xpZW50SWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHRpZiAob3B0aW9ucy5wb3N0bWFuUHJvdmlkZXIgPT09IFwiYXBpXCIgJiYgb3B0aW9ucy5hcGlLZXkgJiYgYXV0aENmZz8uaXNzdWVyQmFzZVVybCkge1xuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCBhcHAgPSBhdXRoMENsaS5jcmVhdGVTcGFBcHAoXG5cdFx0XHRcdGAke3dvcmtzcGFjZS5uYW1lfSBQb3N0bWFuYCxcblx0XHRcdFx0XCJodHRwczovL29hdXRoLnBzdG1uLmlvL3YxL2NhbGxiYWNrXCIsXG5cdFx0XHQpO1xuXHRcdFx0c3BhQ2xpZW50SWQgPSBhcHAuY2xpZW50X2lkO1xuXHRcdFx0Y29uc29sZS5sb2coXCIgIOKckyBBdXRoMCBTUEEgYXBwIGNyZWF0ZWQgZm9yIFBvc3RtYW4gUEtDRVwiKTtcblx0XHR9IGNhdGNoIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCIgIOKclyBGYWlsZWQgdG8gY3JlYXRlIEF1dGgwIFNQQSBhcHAg4oCUIGNvbnRpbnVpbmcgd2l0aG91dCBpdC5cIik7XG5cdFx0fVxuXHR9XG5cblx0Y29uc3QgYXV0aDBFbnY6IEF1dGgwRW52IHwgdW5kZWZpbmVkID0gYXV0aENmZz8uaXNzdWVyQmFzZVVybFxuXHRcdD8ge1xuXHRcdFx0XHRhdXRoMERvbWFpbjogYXV0aENmZy5pc3N1ZXJCYXNlVXJsLnJlcGxhY2UoL15odHRwcz86XFwvXFwvLywgXCJcIiksXG5cdFx0XHRcdGF1dGgwQXVkaWVuY2U6IGF1dGhDZmcuYXVkaWVuY2UsXG5cdFx0XHRcdGF1dGgwQ2xpZW50SWQ6IHNwYUNsaWVudElkLFxuXHRcdFx0fVxuXHRcdDogdW5kZWZpbmVkO1xuXG5cdGNvbnN0IHByb2plY3ROYW1lID0gd29ya3NwYWNlLm5hbWU7XG5cdGNvbnN0IGNvbGxlY3Rpb24gPSBidWlsZENvbGxlY3Rpb24ocHJvamVjdE5hbWUsIGF1dGgwRW52KTtcblx0Y29uc3QgZW52WWFtbCA9IGJ1aWxkRW52aXJvbm1lbnRZYW1sKGAke3Byb2plY3ROYW1lfSDigJQgTG9jYWxgLCBhdXRoMEVudik7XG5cblx0d29ya3NwYWNlLmFkZEZpbGUoe1xuXHRcdGZpbGVzOiAoKSA9PiBbXG5cdFx0XHR7XG5cdFx0XHRcdGZpbGVQYXRoOiBgcG9zdG1hbi9lbnZpcm9ubWVudHMvJHtwcm9qZWN0TmFtZX0gXFx1MjAxNCBMb2NhbC5lbnZpcm9ubWVudC55YW1sYCxcblx0XHRcdFx0Y29udGVudDogZW52WWFtbCxcblx0XHRcdH0sXG5cdFx0XHR7XG5cdFx0XHRcdGZpbGVQYXRoOiBgcG9zdG1hbi9jb2xsZWN0aW9ucy8ke3Byb2plY3ROYW1lfS5wb3N0bWFuX2NvbGxlY3Rpb24uanNvbmAsXG5cdFx0XHRcdGNvbnRlbnQ6IGAke0pTT04uc3RyaW5naWZ5KGNvbGxlY3Rpb24sIG51bGwsIDIpfVxcbmAsXG5cdFx0XHR9LFxuXHRcdF0sXG5cdH0pO1xuXG5cdGlmIChvcHRpb25zLnBvc3RtYW5Qcm92aWRlciA9PT0gXCJhcGlcIiAmJiBvcHRpb25zLmFwaUtleSkge1xuXHRcdGNvbnN0IGhlYWRlcnMgPSB7IFwiWC1BcGktS2V5XCI6IG9wdGlvbnMuYXBpS2V5LCBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9O1xuXG5cdFx0Y29uc3QgY29sUmVzID0gYXdhaXQgZmV0Y2goXG5cdFx0XHRgaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vY29sbGVjdGlvbnM/d29ya3NwYWNlPSR7b3B0aW9ucy53b3Jrc3BhY2VJZH1gLFxuXHRcdFx0e1xuXHRcdFx0XHRtZXRob2Q6IFwiUE9TVFwiLFxuXHRcdFx0XHRoZWFkZXJzLFxuXHRcdFx0XHRib2R5OiBKU09OLnN0cmluZ2lmeSh7IGNvbGxlY3Rpb24gfSksXG5cdFx0XHR9LFxuXHRcdCk7XG5cdFx0aWYgKGNvbFJlcy5vaykge1xuXHRcdFx0Y29uc29sZS5sb2coXCIgIOKckyBQb3N0bWFuIGNvbGxlY3Rpb24gdXBsb2FkZWRcIik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCIgIOKclyBGYWlsZWQgdG8gdXBsb2FkIFBvc3RtYW4gY29sbGVjdGlvblwiKTtcblx0XHR9XG5cblx0XHRjb25zdCBlbnZWYXJzID0gW1xuXHRcdFx0eyBrZXk6IFwiYmFzZVVybFwiLCB2YWx1ZTogXCJodHRwOi8vbG9jYWxob3N0OjMwMDBcIiwgZW5hYmxlZDogdHJ1ZSB9LFxuXHRcdFx0Li4uKGF1dGgwRW52Py5hdXRoMERvbWFpblxuXHRcdFx0XHQ/IFtcblx0XHRcdFx0XHRcdHsga2V5OiBcImF1dGgwRG9tYWluXCIsIHZhbHVlOiBhdXRoMEVudi5hdXRoMERvbWFpbiwgZW5hYmxlZDogdHJ1ZSB9LFxuXHRcdFx0XHRcdFx0eyBrZXk6IFwiYXV0aDBBdWRpZW5jZVwiLCB2YWx1ZTogYXV0aDBFbnYuYXV0aDBBdWRpZW5jZSA/PyBcIlwiLCBlbmFibGVkOiB0cnVlIH0sXG5cdFx0XHRcdFx0XHR7IGtleTogXCJhdXRoMENsaWVudElkXCIsIHZhbHVlOiBhdXRoMEVudi5hdXRoMENsaWVudElkID8/IFwiXCIsIGVuYWJsZWQ6IHRydWUgfSxcblx0XHRcdFx0XHRdXG5cdFx0XHRcdDogW10pLFxuXHRcdF07XG5cdFx0Y29uc3QgZW52UmVzID0gYXdhaXQgZmV0Y2goXG5cdFx0XHRgaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vZW52aXJvbm1lbnRzP3dvcmtzcGFjZT0ke29wdGlvbnMud29ya3NwYWNlSWR9YCxcblx0XHRcdHtcblx0XHRcdFx0bWV0aG9kOiBcIlBPU1RcIixcblx0XHRcdFx0aGVhZGVycyxcblx0XHRcdFx0Ym9keTogSlNPTi5zdHJpbmdpZnkoe1xuXHRcdFx0XHRcdGVudmlyb25tZW50OiB7IG5hbWU6IGAke3Byb2plY3ROYW1lfSDigJQgTG9jYWxgLCB2YWx1ZXM6IGVudlZhcnMgfSxcblx0XHRcdFx0fSksXG5cdFx0XHR9LFxuXHRcdCk7XG5cdFx0aWYgKGVudlJlcy5vaykge1xuXHRcdFx0Y29uc29sZS5sb2coXCIgIOKckyBQb3N0bWFuIGVudmlyb25tZW50IHVwbG9hZGVkXCIpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRjb25zb2xlLmVycm9yKFwiICDinJcgRmFpbGVkIHRvIHVwbG9hZCBQb3N0bWFuIGVudmlyb25tZW50XCIpO1xuXHRcdH1cblx0fVxufVxuXG5leHBvcnQgY29uc3QgUG9zdG1hbkZlYXR1cmU6IEZlYXR1cmU8UG9zdG1hbk9wdGlvbnM+ID0geyBnZXRPcHRpb25zLCBzY2FmZm9sZCB9O1xuIl0sIm5hbWVzIjpbInBpY2siLCJXRUxMX0tOT1dOX0ZJTEVTIiwiYXV0aDBDbGkiLCJnZXRPcHRpb25zIiwiX3dvcmtzcGFjZSIsImNsaU9wdGlvbnMiLCJwb3N0bWFuUHJvdmlkZXIiLCJjaG9pY2VzIiwibGFiZWwiLCJkZXNjcmlwdGlvbiIsInNlbGVjdGVkIiwiYyIsInByb3ZpZGVyIiwiYXBpS2V5IiwicHJvY2VzcyIsImVudiIsIlBPU1RNQU5fQVBJX0tFWSIsInRoZW4iLCJtIiwiYXNrIiwiaGVhZGVycyIsIndzUmVzIiwiZmV0Y2giLCJvayIsImNvbnNvbGUiLCJlcnJvciIsIndvcmtzcGFjZXMiLCJqc29uIiwid3NDaG9pY2VzIiwiaWQiLCJtYXAiLCJ3IiwibmFtZSIsInR5cGUiLCJ3c1BpY2tlZCIsIndvcmtzcGFjZUlkIiwid3NOYW1lIiwiY3JlYXRlUmVzIiwibWV0aG9kIiwiYm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJ3b3Jrc3BhY2UiLCJ3cyIsImxvZyIsImJ1aWxkQ29sbGVjdGlvbiIsInByb2plY3ROYW1lIiwiYXV0aCIsImF1dGhPYmoiLCJhdXRoMERvbWFpbiIsIm9hdXRoMiIsImtleSIsInZhbHVlIiwidW5kZWZpbmVkIiwiaW5mbyIsInNjaGVtYSIsIml0ZW0iLCJyZXF1ZXN0IiwidXJsIiwicmF3IiwiaG9zdCIsInBhdGgiLCJidWlsZEVudmlyb25tZW50WWFtbCIsImF1dGgwU2VjdGlvbiIsImF1dGgwQXVkaWVuY2UiLCJhdXRoMENsaWVudElkIiwiam9pbiIsInNjYWZmb2xkIiwib3B0aW9ucyIsImF1dGhDb25maWdNb2RlbCIsImdldE1vZGVsIiwiQVVUSF9DT05GSUciLCJhdXRoQ2ZnIiwiY29uZmlnIiwic3BhQ2xpZW50SWQiLCJpc3N1ZXJCYXNlVXJsIiwiYXBwIiwiY3JlYXRlU3BhQXBwIiwiY2xpZW50X2lkIiwiYXV0aDBFbnYiLCJyZXBsYWNlIiwiYXVkaWVuY2UiLCJjb2xsZWN0aW9uIiwiZW52WWFtbCIsImFkZEZpbGUiLCJmaWxlcyIsImZpbGVQYXRoIiwiY29udGVudCIsImNvbFJlcyIsImVudlZhcnMiLCJlbmFibGVkIiwiZW52UmVzIiwiZW52aXJvbm1lbnQiLCJ2YWx1ZXMiLCJQb3N0bWFuRmVhdHVyZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsSUFBSSxRQUFRLCtCQUErQjtBQUNwRCxTQUFTQyxnQkFBZ0IsUUFBUSx3QkFBd0I7QUFJekQsWUFBWUMsY0FBYyxpQkFBaUI7QUFRM0MsZUFBZUMsV0FDZEMsVUFBNkIsRUFDN0JDLFVBQW1DO0lBRW5DLElBQUlBLFdBQVdDLGVBQWUsSUFBSSxNQUFNLE9BQU8sQ0FBQztJQUVoRCxNQUFNQyxVQUFVO1FBQ2Y7WUFBRUMsT0FBTztZQUFpQkMsYUFBYTtRQUFPO1FBQzlDO1lBQUVELE9BQU87WUFBa0JDLGFBQWE7UUFBdUM7UUFDL0U7WUFBRUQsT0FBTztZQUFnQkMsYUFBYTtRQUF3QztLQUM5RTtJQUNELE1BQU1DLFdBQVcsTUFBTVYsS0FDdEIsaUJBQ0FPLFNBQ0EsQ0FBQ0ksSUFBTSxHQUFHQSxFQUFFSCxLQUFLLENBQUMsR0FBRyxFQUFFRyxFQUFF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
258
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL2ZlYXR1cmVzL3Bvc3RtYW4uZmVhdHVyZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwaWNrIH0gZnJvbSBcIi4uLy4uL2RvbWFpbi9wcm9tcHQuanNcIjtcbmltcG9ydCB7IFdFTExfS05PV05fRklMRVMgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbnN0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IFdvcmtzcGFjZVNjYWZmb2xkIH0gZnJvbSBcIi4uLy4uL21vZGVscy9wcm9qZWN0Lm1vZGVsLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEZlYXR1cmUgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvc2NhZmZvbGQuc2VydmljZS5qc1wiO1xuaW1wb3J0IHR5cGUgeyBBdXRoQ29uZmlnTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2F1dGgtY29uZmlnLm1vZGVsLmpzXCI7XG5pbXBvcnQgKiBhcyBhdXRoMENsaSBmcm9tIFwiLi9hdXRoMC1jbGkuanNcIjtcblxuZXhwb3J0IHR5cGUgUG9zdG1hbk9wdGlvbnMgPSB7XG5cdHBvc3RtYW5Qcm92aWRlcj86IFwiYXBpXCIgfCBcImxvY2FsXCIgfCBcIm5vbmVcIjtcblx0YXBpS2V5Pzogc3RyaW5nO1xuXHR3b3Jrc3BhY2VJZD86IHN0cmluZztcbn07XG5cbmFzeW5jIGZ1bmN0aW9uIGdldE9wdGlvbnMoXG5cdF93b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLFxuXHRjbGlPcHRpb25zOiBQYXJ0aWFsPFBvc3RtYW5PcHRpb25zPixcbik6IFByb21pc2U8UGFydGlhbDxQb3N0bWFuT3B0aW9ucz4+IHtcblx0aWYgKGNsaU9wdGlvbnMucG9zdG1hblByb3ZpZGVyICE9IG51bGwpIHJldHVybiB7fTtcblxuXHRjb25zdCBjaG9pY2VzID0gW1xuXHRcdHsgbGFiZWw6IFwibm9uZVwiIGFzIGNvbnN0LCBkZXNjcmlwdGlvbjogXCJza2lwXCIgfSxcblx0XHR7IGxhYmVsOiBcImxvY2FsXCIgYXMgY29uc3QsIGRlc2NyaXB0aW9uOiBcIndyaXRlIGNvbGxlY3Rpb24gKyBlbnZpcm9ubWVudCBmaWxlc1wiIH0sXG5cdFx0eyBsYWJlbDogXCJhcGlcIiBhcyBjb25zdCwgZGVzY3JpcHRpb246IFwid3JpdGUgZmlsZXMgYW5kIHVwbG9hZCB0byBQb3N0bWFuLmNvbVwiIH0sXG5cdF07XG5cdGNvbnN0IHNlbGVjdGVkID0gYXdhaXQgcGljayhcblx0XHRcIlxcbiAgUG9zdG1hbjogXCIsXG5cdFx0Y2hvaWNlcyxcblx0XHQoYykgPT4gYCR7Yy5sYWJlbH0g4oCUICR7Yy5kZXNjcmlwdGlvbn1gLFxuXHQpO1xuXHRjb25zdCBwcm92aWRlciA9IHNlbGVjdGVkPy5sYWJlbCA/PyBcIm5vbmVcIjtcblxuXHRpZiAocHJvdmlkZXIgPT09IFwibm9uZVwiKSByZXR1cm4geyBwb3N0bWFuUHJvdmlkZXI6IFwibm9uZVwiIH07XG5cdGlmIChwcm92aWRlciA9PT0gXCJsb2NhbFwiKSByZXR1cm4geyBwb3N0bWFuUHJvdmlkZXI6IFwibG9jYWxcIiB9O1xuXG5cdC8vIGFwaTogY29sbGVjdCBBUEkga2V5ICsgd29ya3NwYWNlIHNlbGVjdGlvblxuXHRjb25zdCBhcGlLZXkgPVxuXHRcdHByb2Nlc3MuZW52LlBPU1RNQU5fQVBJX0tFWSA/P1xuXHRcdChhd2FpdCBpbXBvcnQoXCIuLi8uLi9kb21haW4vcHJvbXB0LmpzXCIpLnRoZW4oKG0pID0+XG5cdFx0XHRtLmFzayhcIlxcbiAgUG9zdG1hbiBBUEkga2V5IChhcHAuZ2V0cG9zdG1hbi5jb20vc2V0dGluZ3MvbWUvYXBpLWtleXMpOiBcIiksXG5cdFx0KSk7XG5cblx0Y29uc3QgaGVhZGVycyA9IHsgXCJYLUFwaS1LZXlcIjogYXBpS2V5LCBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9O1xuXHRjb25zdCB3c1JlcyA9IGF3YWl0IGZldGNoKFwiaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vd29ya3NwYWNlc1wiLCB7IGhlYWRlcnMgfSk7XG5cblx0aWYgKCF3c1Jlcy5vaykge1xuXHRcdGNvbnNvbGUuZXJyb3IoXCJcXG4gIFBvc3RtYW4gQVBJIGtleSBpbnZhbGlkIOKAlCBmYWxsaW5nIGJhY2sgdG8gbG9jYWwgZmlsZXMuXCIpO1xuXHRcdHJldHVybiB7IHBvc3RtYW5Qcm92aWRlcjogXCJsb2NhbFwiIH07XG5cdH1cblxuXHRjb25zdCB7IHdvcmtzcGFjZXMgfSA9IChhd2FpdCB3c1Jlcy5qc29uKCkpIGFzIHtcblx0XHR3b3Jrc3BhY2VzOiBBcnJheTx7IGlkOiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgdHlwZTogc3RyaW5nIH0+O1xuXHR9O1xuXG5cdHR5cGUgV3NDaG9pY2UgPSB7IGxhYmVsOiBzdHJpbmc7IGlkOiBzdHJpbmcgfCBudWxsIH07XG5cdGNvbnN0IHdzQ2hvaWNlczogV3NDaG9pY2VbXSA9IFtcblx0XHR7IGxhYmVsOiBcIjxuZXcgd29ya3NwYWNlPlwiLCBpZDogbnVsbCB9LFxuXHRcdC4uLndvcmtzcGFjZXMubWFwKCh3KSA9PiAoeyBsYWJlbDogYCR7dy5uYW1lfSAoJHt3LnR5cGV9KWAsIGlkOiB3LmlkIH0pKSxcblx0XTtcblxuXHRjb25zdCB3c1BpY2tlZCA9IGF3YWl0IHBpY2soXCJcXG4gIFBvc3RtYW4gd29ya3NwYWNlOiBcIiwgd3NDaG9pY2VzLCAoYykgPT4gYy5sYWJlbCk7XG5cblx0bGV0IHdvcmtzcGFjZUlkOiBzdHJpbmc7XG5cdGlmICghd3NQaWNrZWQgfHwgd3NQaWNrZWQuaWQgPT09IG51bGwpIHtcblx0XHRjb25zdCB7IGFzayB9ID0gYXdhaXQgaW1wb3J0KFwiLi4vLi4vZG9tYWluL3Byb21wdC5qc1wiKTtcblx0XHRjb25zdCB3c05hbWUgPSBhd2FpdCBhc2soYCAgV29ya3NwYWNlIG5hbWU6IGApO1xuXHRcdGNvbnN0IGNyZWF0ZVJlcyA9IGF3YWl0IGZldGNoKFwiaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vd29ya3NwYWNlc1wiLCB7XG5cdFx0XHRtZXRob2Q6IFwiUE9TVFwiLFxuXHRcdFx0aGVhZGVycyxcblx0XHRcdGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgd29ya3NwYWNlOiB7IG5hbWU6IHdzTmFtZSwgdHlwZTogXCJwZXJzb25hbFwiIH0gfSksXG5cdFx0fSk7XG5cdFx0Y29uc3QgeyB3b3Jrc3BhY2U6IHdzIH0gPSAoYXdhaXQgY3JlYXRlUmVzLmpzb24oKSkgYXMgeyB3b3Jrc3BhY2U6IHsgaWQ6IHN0cmluZyB9IH07XG5cdFx0d29ya3NwYWNlSWQgPSB3cy5pZDtcblx0XHRjb25zb2xlLmxvZyhgICDinJMgV29ya3NwYWNlIGNyZWF0ZWQ6ICR7d3NOYW1lfWApO1xuXHR9IGVsc2Uge1xuXHRcdHdvcmtzcGFjZUlkID0gd3NQaWNrZWQuaWQ7XG5cdH1cblxuXHRyZXR1cm4geyBwb3N0bWFuUHJvdmlkZXI6IFwiYXBpXCIsIGFwaUtleSwgd29ya3NwYWNlSWQgfTtcbn1cblxudHlwZSBBdXRoMEVudiA9IHtcblx0YXV0aDBEb21haW4/OiBzdHJpbmc7XG5cdGF1dGgwQXVkaWVuY2U/OiBzdHJpbmc7XG5cdGF1dGgwQ2xpZW50SWQ/OiBzdHJpbmc7XG59O1xuXG5mdW5jdGlvbiBidWlsZENvbGxlY3Rpb24ocHJvamVjdE5hbWU6IHN0cmluZywgYXV0aD86IEF1dGgwRW52KTogdW5rbm93biB7XG5cdGNvbnN0IGF1dGhPYmogPSBhdXRoPy5hdXRoMERvbWFpblxuXHRcdD8ge1xuXHRcdFx0XHR0eXBlOiBcIm9hdXRoMlwiLFxuXHRcdFx0XHRvYXV0aDI6IFtcblx0XHRcdFx0XHR7IGtleTogXCJncmFudF90eXBlXCIsIHZhbHVlOiBcImF1dGhvcml6YXRpb25fY29kZV93aXRoX3BrY2VcIiwgdHlwZTogXCJzdHJpbmdcIiB9LFxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdGtleTogXCJhdXRoVXJsXCIsXG5cdFx0XHRcdFx0XHR2YWx1ZTogXCJodHRwczovL3t7YXV0aDBEb21haW59fS9hdXRob3JpemU/YXVkaWVuY2U9e3thdXRoMEF1ZGllbmNlfX1cIixcblx0XHRcdFx0XHRcdHR5cGU6IFwic3RyaW5nXCIsXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRrZXk6IFwiYWNjZXNzVG9rZW5VcmxcIixcblx0XHRcdFx0XHRcdHZhbHVlOiBcImh0dHBzOi8ve3thdXRoMERvbWFpbn19L29hdXRoL3Rva2VuXCIsXG5cdFx0XHRcdFx0XHR0eXBlOiBcInN0cmluZ1wiLFxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0eyBrZXk6IFwiY2xpZW50SWRcIiwgdmFsdWU6IFwie3thdXRoMENsaWVudElkfX1cIiwgdHlwZTogXCJzdHJpbmdcIiB9LFxuXHRcdFx0XHRcdHsga2V5OiBcInNjb3BlXCIsIHZhbHVlOiBcIm9wZW5pZCBwcm9maWxlIGVtYWlsXCIsIHR5cGU6IFwic3RyaW5nXCIgfSxcblx0XHRcdFx0XHR7IGtleTogXCJhZGRUb2tlblRvXCIsIHZhbHVlOiBcImhlYWRlclwiLCB0eXBlOiBcInN0cmluZ1wiIH0sXG5cdFx0XHRcdFx0eyBrZXk6IFwiY2hhbGxlbmdlQWxnb3JpdGhtXCIsIHZhbHVlOiBcIlMyNTZcIiwgdHlwZTogXCJzdHJpbmdcIiB9LFxuXHRcdFx0XHRdLFxuXHRcdFx0fVxuXHRcdDogdW5kZWZpbmVkO1xuXG5cdHJldHVybiB7XG5cdFx0aW5mbzoge1xuXHRcdFx0bmFtZTogYCR7cHJvamVjdE5hbWV9IFdlYkFQSWAsXG5cdFx0XHRzY2hlbWE6IFwiaHR0cHM6Ly9zY2hlbWEuZ2V0cG9zdG1hbi5jb20vanNvbi9jb2xsZWN0aW9uL3YyLjEuMC9jb2xsZWN0aW9uLmpzb25cIixcblx0XHR9LFxuXHRcdC4uLihhdXRoT2JqID8geyBhdXRoOiBhdXRoT2JqIH0gOiB7fSksXG5cdFx0aXRlbTogW1xuXHRcdFx0e1xuXHRcdFx0XHRuYW1lOiBcIkhlbGxvXCIsXG5cdFx0XHRcdHJlcXVlc3Q6IHtcblx0XHRcdFx0XHRtZXRob2Q6IFwiR0VUXCIsXG5cdFx0XHRcdFx0dXJsOiB7IHJhdzogXCJ7e2Jhc2VVcmx9fS9oZWxsb1wiLCBob3N0OiBbXCJ7e2Jhc2VVcmx9fVwiXSwgcGF0aDogW1wiaGVsbG9cIl0gfSxcblx0XHRcdFx0fSxcblx0XHRcdH0sXG5cdFx0XSxcblx0fTtcbn1cblxuZnVuY3Rpb24gYnVpbGRFbnZpcm9ubWVudFlhbWwobmFtZTogc3RyaW5nLCBhdXRoPzogQXV0aDBFbnYpOiBzdHJpbmcge1xuXHRjb25zdCBhdXRoMFNlY3Rpb24gPSBhdXRoPy5hdXRoMERvbWFpblxuXHRcdD8gW1xuXHRcdFx0XHRcIiAgLSBrZXk6IGF1dGgwRG9tYWluXCIsXG5cdFx0XHRcdGAgICAgdmFsdWU6ICR7YXV0aC5hdXRoMERvbWFpbn1gLFxuXHRcdFx0XHRcIiAgLSBrZXk6IGF1dGgwQXVkaWVuY2VcIixcblx0XHRcdFx0YCAgICB2YWx1ZTogJyR7YXV0aC5hdXRoMEF1ZGllbmNlID8/IFwiXCJ9J2AsXG5cdFx0XHRcdFwiICAtIGtleTogYXV0aDBDbGllbnRJZFwiLFxuXHRcdFx0XHRgICAgIHZhbHVlOiAnJHthdXRoLmF1dGgwQ2xpZW50SWQgPz8gXCJcIn0nYCxcblx0XHRcdFx0XCIgICAgZGVzY3JpcHRpb246IENsaWVudCBJRCBvZiB0aGUgQXV0aDAgU1BBIGFwcGxpY2F0aW9uIHVzZWQgYnkgUG9zdG1hbiBmb3IgUEtDRSBhdXRoZW50aWNhdGlvblwiLFxuXHRcdFx0XS5qb2luKFwiXFxuXCIpICsgXCJcXG5cIlxuXHRcdDogXCJcIjtcblxuXHRyZXR1cm4gYG5hbWU6ICR7bmFtZX1cXG52YWx1ZXM6XFxuICAtIGtleTogYmFzZVVybFxcbiAgICB2YWx1ZTogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMCdcXG4ke2F1dGgwU2VjdGlvbn1gO1xufVxuXG5hc3luYyBmdW5jdGlvbiBzY2FmZm9sZCh3b3Jrc3BhY2U6IFdvcmtzcGFjZVNjYWZmb2xkLCBvcHRpb25zOiBQb3N0bWFuT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuXHRpZiAob3B0aW9ucy5wb3N0bWFuUHJvdmlkZXIgPT09IFwibm9uZVwiKSByZXR1cm47XG5cblx0Y29uc3QgYXV0aENvbmZpZ01vZGVsID0gd29ya3NwYWNlLmdldE1vZGVsPEF1dGhDb25maWdNb2RlbD4oV0VMTF9LTk9XTl9GSUxFUy5BVVRIX0NPTkZJRyk7XG5cdGNvbnN0IGF1dGhDZmcgPSBhdXRoQ29uZmlnTW9kZWw/LmNvbmZpZztcblxuXHRsZXQgc3BhQ2xpZW50SWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHRpZiAob3B0aW9ucy5wb3N0bWFuUHJvdmlkZXIgPT09IFwiYXBpXCIgJiYgb3B0aW9ucy5hcGlLZXkgJiYgYXV0aENmZz8uaXNzdWVyQmFzZVVybCkge1xuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCBhcHAgPSBhdXRoMENsaS5jcmVhdGVTcGFBcHAoXG5cdFx0XHRcdGAke3dvcmtzcGFjZS5uYW1lfSBQb3N0bWFuYCxcblx0XHRcdFx0XCJodHRwczovL29hdXRoLnBzdG1uLmlvL3YxL2NhbGxiYWNrXCIsXG5cdFx0XHQpO1xuXHRcdFx0c3BhQ2xpZW50SWQgPSBhcHAuY2xpZW50X2lkO1xuXHRcdFx0Y29uc29sZS5sb2coXCIgIOKckyBBdXRoMCBTUEEgYXBwIGNyZWF0ZWQgZm9yIFBvc3RtYW4gUEtDRVwiKTtcblx0XHR9IGNhdGNoIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCIgIOKclyBGYWlsZWQgdG8gY3JlYXRlIEF1dGgwIFNQQSBhcHAg4oCUIGNvbnRpbnVpbmcgd2l0aG91dCBpdC5cIik7XG5cdFx0fVxuXHR9XG5cblx0Y29uc3QgYXV0aDBFbnY6IEF1dGgwRW52IHwgdW5kZWZpbmVkID0gYXV0aENmZz8uaXNzdWVyQmFzZVVybFxuXHRcdD8ge1xuXHRcdFx0XHRhdXRoMERvbWFpbjogYXV0aENmZy5pc3N1ZXJCYXNlVXJsLnJlcGxhY2UoL15odHRwcz86XFwvXFwvLywgXCJcIiksXG5cdFx0XHRcdGF1dGgwQXVkaWVuY2U6IGF1dGhDZmcuYXVkaWVuY2UsXG5cdFx0XHRcdGF1dGgwQ2xpZW50SWQ6IHNwYUNsaWVudElkLFxuXHRcdFx0fVxuXHRcdDogdW5kZWZpbmVkO1xuXG5cdGNvbnN0IHByb2plY3ROYW1lID0gd29ya3NwYWNlLm5hbWU7XG5cdGNvbnN0IGNvbGxlY3Rpb24gPSBidWlsZENvbGxlY3Rpb24ocHJvamVjdE5hbWUsIGF1dGgwRW52KTtcblx0Y29uc3QgZW52WWFtbCA9IGJ1aWxkRW52aXJvbm1lbnRZYW1sKGAke3Byb2plY3ROYW1lfSDigJQgTG9jYWxgLCBhdXRoMEVudik7XG5cblx0d29ya3NwYWNlLmFkZEZpbGUoe1xuXHRcdGZpbGVzOiAoKSA9PiBbXG5cdFx0XHR7XG5cdFx0XHRcdGZpbGVQYXRoOiBgcG9zdG1hbi9lbnZpcm9ubWVudHMvJHtwcm9qZWN0TmFtZX0gXFx1MjAxNCBMb2NhbC5lbnZpcm9ubWVudC55YW1sYCxcblx0XHRcdFx0Y29udGVudDogZW52WWFtbCxcblx0XHRcdH0sXG5cdFx0XHR7XG5cdFx0XHRcdGZpbGVQYXRoOiBgcG9zdG1hbi9jb2xsZWN0aW9ucy8ke3Byb2plY3ROYW1lfS5wb3N0bWFuX2NvbGxlY3Rpb24uanNvbmAsXG5cdFx0XHRcdGNvbnRlbnQ6IGAke0pTT04uc3RyaW5naWZ5KGNvbGxlY3Rpb24sIG51bGwsIDIpfVxcbmAsXG5cdFx0XHR9LFxuXHRcdF0sXG5cdH0pO1xuXG5cdGlmIChvcHRpb25zLnBvc3RtYW5Qcm92aWRlciA9PT0gXCJhcGlcIiAmJiBvcHRpb25zLmFwaUtleSkge1xuXHRcdGNvbnN0IGhlYWRlcnMgPSB7IFwiWC1BcGktS2V5XCI6IG9wdGlvbnMuYXBpS2V5LCBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9O1xuXG5cdFx0Y29uc3QgY29sUmVzID0gYXdhaXQgZmV0Y2goXG5cdFx0XHRgaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vY29sbGVjdGlvbnM/d29ya3NwYWNlPSR7b3B0aW9ucy53b3Jrc3BhY2VJZH1gLFxuXHRcdFx0e1xuXHRcdFx0XHRtZXRob2Q6IFwiUE9TVFwiLFxuXHRcdFx0XHRoZWFkZXJzLFxuXHRcdFx0XHRib2R5OiBKU09OLnN0cmluZ2lmeSh7IGNvbGxlY3Rpb24gfSksXG5cdFx0XHR9LFxuXHRcdCk7XG5cdFx0aWYgKGNvbFJlcy5vaykge1xuXHRcdFx0Y29uc29sZS5sb2coXCIgIOKckyBQb3N0bWFuIGNvbGxlY3Rpb24gdXBsb2FkZWRcIik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCIgIOKclyBGYWlsZWQgdG8gdXBsb2FkIFBvc3RtYW4gY29sbGVjdGlvblwiKTtcblx0XHR9XG5cblx0XHRjb25zdCBlbnZWYXJzID0gW1xuXHRcdFx0eyBrZXk6IFwiYmFzZVVybFwiLCB2YWx1ZTogXCJodHRwOi8vbG9jYWxob3N0OjMwMDBcIiwgZW5hYmxlZDogdHJ1ZSB9LFxuXHRcdFx0Li4uKGF1dGgwRW52Py5hdXRoMERvbWFpblxuXHRcdFx0XHQ/IFtcblx0XHRcdFx0XHRcdHsga2V5OiBcImF1dGgwRG9tYWluXCIsIHZhbHVlOiBhdXRoMEVudi5hdXRoMERvbWFpbiwgZW5hYmxlZDogdHJ1ZSB9LFxuXHRcdFx0XHRcdFx0eyBrZXk6IFwiYXV0aDBBdWRpZW5jZVwiLCB2YWx1ZTogYXV0aDBFbnYuYXV0aDBBdWRpZW5jZSA/PyBcIlwiLCBlbmFibGVkOiB0cnVlIH0sXG5cdFx0XHRcdFx0XHR7IGtleTogXCJhdXRoMENsaWVudElkXCIsIHZhbHVlOiBhdXRoMEVudi5hdXRoMENsaWVudElkID8/IFwiXCIsIGVuYWJsZWQ6IHRydWUgfSxcblx0XHRcdFx0XHRdXG5cdFx0XHRcdDogW10pLFxuXHRcdF07XG5cdFx0Y29uc3QgZW52UmVzID0gYXdhaXQgZmV0Y2goXG5cdFx0XHRgaHR0cHM6Ly9hcGkuZ2V0cG9zdG1hbi5jb20vZW52aXJvbm1lbnRzP3dvcmtzcGFjZT0ke29wdGlvbnMud29ya3NwYWNlSWR9YCxcblx0XHRcdHtcblx0XHRcdFx0bWV0aG9kOiBcIlBPU1RcIixcblx0XHRcdFx0aGVhZGVycyxcblx0XHRcdFx0Ym9keTogSlNPTi5zdHJpbmdpZnkoe1xuXHRcdFx0XHRcdGVudmlyb25tZW50OiB7IG5hbWU6IGAke3Byb2plY3ROYW1lfSDigJQgTG9jYWxgLCB2YWx1ZXM6IGVudlZhcnMgfSxcblx0XHRcdFx0fSksXG5cdFx0XHR9LFxuXHRcdCk7XG5cdFx0aWYgKGVudlJlcy5vaykge1xuXHRcdFx0Y29uc29sZS5sb2coXCIgIOKckyBQb3N0bWFuIGVudmlyb25tZW50IHVwbG9hZGVkXCIpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRjb25zb2xlLmVycm9yKFwiICDinJcgRmFpbGVkIHRvIHVwbG9hZCBQb3N0bWFuIGVudmlyb25tZW50XCIpO1xuXHRcdH1cblx0fVxufVxuXG5leHBvcnQgY29uc3QgUG9zdG1hbkZlYXR1cmU6IEZlYXR1cmU8UG9zdG1hbk9wdGlvbnM+ID0geyBnZXRPcHRpb25zLCBzY2FmZm9sZCB9O1xuIl0sIm5hbWVzIjpbInBpY2siLCJXRUxMX0tOT1dOX0ZJTEVTIiwiYXV0aDBDbGkiLCJnZXRPcHRpb25zIiwiX3dvcmtzcGFjZSIsImNsaU9wdGlvbnMiLCJwb3N0bWFuUHJvdmlkZXIiLCJjaG9pY2VzIiwibGFiZWwiLCJkZXNjcmlwdGlvbiIsInNlbGVjdGVkIiwiYyIsInByb3ZpZGVyIiwiYXBpS2V5IiwicHJvY2VzcyIsImVudiIsIlBPU1RNQU5fQVBJX0tFWSIsInRoZW4iLCJtIiwiYXNrIiwiaGVhZGVycyIsIndzUmVzIiwiZmV0Y2giLCJvayIsImNvbnNvbGUiLCJlcnJvciIsIndvcmtzcGFjZXMiLCJqc29uIiwid3NDaG9pY2VzIiwiaWQiLCJtYXAiLCJ3IiwibmFtZSIsInR5cGUiLCJ3c1BpY2tlZCIsIndvcmtzcGFjZUlkIiwid3NOYW1lIiwiY3JlYXRlUmVzIiwibWV0aG9kIiwiYm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJ3b3Jrc3BhY2UiLCJ3cyIsImxvZyIsImJ1aWxkQ29sbGVjdGlvbiIsInByb2plY3ROYW1lIiwiYXV0aCIsImF1dGhPYmoiLCJhdXRoMERvbWFpbiIsIm9hdXRoMiIsImtleSIsInZhbHVlIiwidW5kZWZpbmVkIiwiaW5mbyIsInNjaGVtYSIsIml0ZW0iLCJyZXF1ZXN0IiwidXJsIiwicmF3IiwiaG9zdCIsInBhdGgiLCJidWlsZEVudmlyb25tZW50WWFtbCIsImF1dGgwU2VjdGlvbiIsImF1dGgwQXVkaWVuY2UiLCJhdXRoMENsaWVudElkIiwiam9pbiIsInNjYWZmb2xkIiwib3B0aW9ucyIsImF1dGhDb25maWdNb2RlbCIsImdldE1vZGVsIiwiQVVUSF9DT05GSUciLCJhdXRoQ2ZnIiwiY29uZmlnIiwic3BhQ2xpZW50SWQiLCJpc3N1ZXJCYXNlVXJsIiwiYXBwIiwiY3JlYXRlU3BhQXBwIiwiY2xpZW50X2lkIiwiYXV0aDBFbnYiLCJyZXBsYWNlIiwiYXVkaWVuY2UiLCJjb2xsZWN0aW9uIiwiZW52WWFtbCIsImFkZEZpbGUiLCJmaWxlcyIsImZpbGVQYXRoIiwiY29udGVudCIsImNvbFJlcyIsImVudlZhcnMiLCJlbmFibGVkIiwiZW52UmVzIiwiZW52aXJvbm1lbnQiLCJ2YWx1ZXMiLCJQb3N0bWFuRmVhdHVyZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsSUFBSSxRQUFRLHlCQUF5QjtBQUM5QyxTQUFTQyxnQkFBZ0IsUUFBUSx3QkFBd0I7QUFJekQsWUFBWUMsY0FBYyxpQkFBaUI7QUFRM0MsZUFBZUMsV0FDZEMsVUFBNkIsRUFDN0JDLFVBQW1DO0lBRW5DLElBQUlBLFdBQVdDLGVBQWUsSUFBSSxNQUFNLE9BQU8sQ0FBQztJQUVoRCxNQUFNQyxVQUFVO1FBQ2Y7WUFBRUMsT0FBTztZQUFpQkMsYUFBYTtRQUFPO1FBQzlDO1lBQUVELE9BQU87WUFBa0JDLGFBQWE7UUFBdUM7UUFDL0U7WUFBRUQsT0FBTztZQUFnQkMsYUFBYTtRQUF3QztLQUM5RTtJQUNELE1BQU1DLFdBQVcsTUFBTVYsS0FDdEIsaUJBQ0FPLFNBQ0EsQ0FBQ0ksSUFBTSxHQUFHQSxFQUFFSCxLQUFLLENBQUMsR0FBRyxFQUFFRyxFQUFFRixXQUFXLEVBQUU7SUFFdkMs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
@@ -1,5 +1,5 @@
1
- import { CREATE_VERSION } from "../../../v1/version.js";
2
1
  import { WELL_KNOWN_FILES } from "../../models/const.js";
2
+ import { CREATE_VERSION } from "../../version.js";
3
3
  /**
4
4
  * Builder for `projects/api/package.json`.
5
5
  *
@@ -49,4 +49,4 @@ import { WELL_KNOWN_FILES } from "../../models/const.js";
49
49
  }
50
50
  }
51
51
 
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL21vZGVscy9hcGktcGFja2FnZS1qc29uLm1vZGVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENSRUFURV9WRVJTSU9OIH0gZnJvbSBcIi4uLy4uLy4uL3YxL3ZlcnNpb24uanNcIjtcbmltcG9ydCB7IFdFTExfS05PV05fRklMRVMgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbnN0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEtleWVkTW9kZWwsIFNvdXJjZUZpbGUgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3NvdXJjZS1maWxlLmpzXCI7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgYHByb2plY3RzL2FwaS9wYWNrYWdlLmpzb25gLlxuICpcbiAqIFN0YXJ0cyB3aXRoIHRoZSBjb3JlIGNvcnRleCArIGNydWNpYmxlIGRlcHMuIEZlYXR1cmVzIGNhbiBjYWxsXG4gKiBgYWRkRGVwZW5kZW5jeWAgLyBgYWRkRGV2RGVwZW5kZW5jeWAgdG8gZXh0ZW5kLlxuICovXG5leHBvcnQgY2xhc3MgQXBpUGFja2FnZUpzb24gaW1wbGVtZW50cyBLZXllZE1vZGVsIHtcblx0cHVibGljIHJlYWRvbmx5IGtleSA9IFdFTExfS05PV05fRklMRVMuQVBJX1BBQ0tBR0VfSlNPTjtcblxuXHRwcml2YXRlIHJlYWRvbmx5IF9kZXBlbmRlbmNpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cdHByaXZhdGUgcmVhZG9ubHkgX2RldkRlcGVuZGVuY2llczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHByb2plY3ROYW1lOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9kZXBlbmRlbmNpZXMgPSB7XG5cdFx0XHRcIkBkZWNvaGVyZS9jb3J0ZXhcIjogQ1JFQVRFX1ZFUlNJT04sXG5cdFx0XHRcIkBkZWNvaGVyZS9jcnVjaWJsZVwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHR9O1xuXHR9XG5cblx0cHVibGljIGFkZERlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGFkZERldkRlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXZEZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGZpbGVzKCk6IFNvdXJjZUZpbGVbXSB7XG5cdFx0Y29uc3QgcGtnOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcblx0XHRcdG5hbWU6IGBAJHt0aGlzLnByb2plY3ROYW1lfS9hcGlgLFxuXHRcdFx0dmVyc2lvbjogXCIwLjAuMVwiLFxuXHRcdFx0dHlwZTogXCJtb2R1bGVcIixcblx0XHRcdG1haW46IFwic3JjL21haW4udHNcIixcblx0XHRcdGRlcGVuZGVuY2llczogeyAuLi50aGlzLl9kZXBlbmRlbmNpZXMgfSxcblx0XHR9O1xuXHRcdGlmIChPYmplY3Qua2V5cyh0aGlzLl9kZXZEZXBlbmRlbmNpZXMpLmxlbmd0aCA+IDApIHtcblx0XHRcdHBrZy5kZXZEZXBlbmRlbmNpZXMgPSB7IC4uLnRoaXMuX2RldkRlcGVuZGVuY2llcyB9O1xuXHRcdH1cblx0XHRyZXR1cm4gW1xuXHRcdFx0e1xuXHRcdFx0XHRmaWxlUGF0aDogXCJwYWNrYWdlLmpzb25cIixcblx0XHRcdFx0Y29udGVudDogSlNPTi5zdHJpbmdpZnkocGtnLCBudWxsLCAyKSxcblx0XHRcdH0sXG5cdFx0XTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkNSRUFURV9WRVJTSU9OIiwiV0VMTF9LTk9XTl9GSUxFUyIsIkFwaVBhY2thZ2VKc29uIiwia2V5IiwiQVBJX1BBQ0tBR0VfSlNPTiIsIl9kZXBlbmRlbmNpZXMiLCJfZGV2RGVwZW5kZW5jaWVzIiwicHJvamVjdE5hbWUiLCJhZGREZXBlbmRlbmN5IiwibmFtZSIsInZlcnNpb24iLCJhZGREZXZEZXBlbmRlbmN5IiwiZmlsZXMiLCJwa2ciLCJ0eXBlIiwibWFpbiIsImRlcGVuZGVuY2llcyIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJkZXZEZXBlbmRlbmNpZXMiLCJmaWxlUGF0aCIsImNvbnRlbnQiLCJKU09OIiwic3RyaW5naWZ5Il0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxjQUFjLFFBQVEseUJBQXlCO0FBQ3hELFNBQVNDLGdCQUFnQixRQUFRLHdCQUF3QjtBQUd6RDs7Ozs7Q0FLQyxHQUNELE9BQU8sTUFBTUM7O0lBQ0lDLE1BQU1GLGlCQUFpQkcsZ0JBQWdCLENBQUM7SUFFdkNDLGNBQXNDO0lBQ3RDQyxtQkFBMkMsQ0FBQyxFQUFFO0lBRS9ELFlBQW1CLEFBQWlCQyxXQUFtQixDQUFFO2FBQXJCQSxjQUFBQTtRQUNuQyxJQUFJLENBQUNGLGFBQWEsR0FBRztZQUNwQixvQkFBb0JMO1lBQ3BCLHNCQUFzQkE7UUFDdkI7SUFDRDtJQUVPUSxjQUFjQyxJQUFZLEVBQUVDLE9BQWUsRUFBUTtRQUN6RCxJQUFJLENBQUNMLGFBQWEsQ0FBQ0ksS0FBSyxHQUFHQztRQUMzQixPQUFPLElBQUk7SUFDWjtJQUVPQyxpQkFBaUJGLElBQVksRUFBRUMsT0FBZSxFQUFRO1FBQzVELElBQUksQ0FBQ0osZ0JBQWdCLENBQUNHLEtBQUssR0FBR0M7UUFDOUIsT0FBTyxJQUFJO0lBQ1o7SUFFT0UsUUFBc0I7UUFDNUIsTUFBTUMsTUFBK0I7WUFDcENKLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDRixXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ2hDRyxTQUFTO1lBQ1RJLE1BQU07WUFDTkMsTUFBTTtZQUNOQyxjQUFjO2dCQUFFLEdBQUcsSUFBSSxDQUFDWCxhQUFhO1lBQUM7UUFDdkM7UUFDQSxJQUFJWSxPQUFPQyxJQUFJLENBQUMsSUFBSSxDQUFDWixnQkFBZ0IsRUFBRWEsTUFBTSxHQUFHLEdBQUc7WUFDbEROLElBQUlPLGVBQWUsR0FBRztnQkFBRSxHQUFHLElBQUksQ0FBQ2QsZ0JBQWdCO1lBQUM7UUFDbEQ7UUFDQSxPQUFPO1lBQ047Z0JBQ0NlLFVBQVU7Z0JBQ1ZDLFNBQVNDLEtBQUtDLFNBQVMsQ0FBQ1gsS0FBSyxNQUFNO1lBQ3BDO1NBQ0E7SUFDRjtBQUNEIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvd2ViYXBpL21vZGVscy9hcGktcGFja2FnZS1qc29uLm1vZGVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdFTExfS05PV05fRklMRVMgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbnN0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEtleWVkTW9kZWwsIFNvdXJjZUZpbGUgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3NvdXJjZS1maWxlLmpzXCI7XG5pbXBvcnQgeyBDUkVBVEVfVkVSU0lPTiB9IGZyb20gXCIuLi8uLi92ZXJzaW9uLmpzXCI7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgYHByb2plY3RzL2FwaS9wYWNrYWdlLmpzb25gLlxuICpcbiAqIFN0YXJ0cyB3aXRoIHRoZSBjb3JlIGNvcnRleCArIGNydWNpYmxlIGRlcHMuIEZlYXR1cmVzIGNhbiBjYWxsXG4gKiBgYWRkRGVwZW5kZW5jeWAgLyBgYWRkRGV2RGVwZW5kZW5jeWAgdG8gZXh0ZW5kLlxuICovXG5leHBvcnQgY2xhc3MgQXBpUGFja2FnZUpzb24gaW1wbGVtZW50cyBLZXllZE1vZGVsIHtcblx0cHVibGljIHJlYWRvbmx5IGtleSA9IFdFTExfS05PV05fRklMRVMuQVBJX1BBQ0tBR0VfSlNPTjtcblxuXHRwcml2YXRlIHJlYWRvbmx5IF9kZXBlbmRlbmNpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cdHByaXZhdGUgcmVhZG9ubHkgX2RldkRlcGVuZGVuY2llczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHByb2plY3ROYW1lOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9kZXBlbmRlbmNpZXMgPSB7XG5cdFx0XHRcIkBkZWNvaGVyZS9jb3J0ZXhcIjogQ1JFQVRFX1ZFUlNJT04sXG5cdFx0XHRcIkBkZWNvaGVyZS9jcnVjaWJsZVwiOiBDUkVBVEVfVkVSU0lPTixcblx0XHR9O1xuXHR9XG5cblx0cHVibGljIGFkZERlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGFkZERldkRlcGVuZGVuY3kobmFtZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcpOiB0aGlzIHtcblx0XHR0aGlzLl9kZXZEZXBlbmRlbmNpZXNbbmFtZV0gPSB2ZXJzaW9uO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGZpbGVzKCk6IFNvdXJjZUZpbGVbXSB7XG5cdFx0Y29uc3QgcGtnOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcblx0XHRcdG5hbWU6IGBAJHt0aGlzLnByb2plY3ROYW1lfS9hcGlgLFxuXHRcdFx0dmVyc2lvbjogXCIwLjAuMVwiLFxuXHRcdFx0dHlwZTogXCJtb2R1bGVcIixcblx0XHRcdG1haW46IFwic3JjL21haW4udHNcIixcblx0XHRcdGRlcGVuZGVuY2llczogeyAuLi50aGlzLl9kZXBlbmRlbmNpZXMgfSxcblx0XHR9O1xuXHRcdGlmIChPYmplY3Qua2V5cyh0aGlzLl9kZXZEZXBlbmRlbmNpZXMpLmxlbmd0aCA+IDApIHtcblx0XHRcdHBrZy5kZXZEZXBlbmRlbmNpZXMgPSB7IC4uLnRoaXMuX2RldkRlcGVuZGVuY2llcyB9O1xuXHRcdH1cblx0XHRyZXR1cm4gW1xuXHRcdFx0e1xuXHRcdFx0XHRmaWxlUGF0aDogXCJwYWNrYWdlLmpzb25cIixcblx0XHRcdFx0Y29udGVudDogSlNPTi5zdHJpbmdpZnkocGtnLCBudWxsLCAyKSxcblx0XHRcdH0sXG5cdFx0XTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIldFTExfS05PV05fRklMRVMiLCJDUkVBVEVfVkVSU0lPTiIsIkFwaVBhY2thZ2VKc29uIiwia2V5IiwiQVBJX1BBQ0tBR0VfSlNPTiIsIl9kZXBlbmRlbmNpZXMiLCJfZGV2RGVwZW5kZW5jaWVzIiwicHJvamVjdE5hbWUiLCJhZGREZXBlbmRlbmN5IiwibmFtZSIsInZlcnNpb24iLCJhZGREZXZEZXBlbmRlbmN5IiwiZmlsZXMiLCJwa2ciLCJ0eXBlIiwibWFpbiIsImRlcGVuZGVuY2llcyIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJkZXZEZXBlbmRlbmNpZXMiLCJmaWxlUGF0aCIsImNvbnRlbnQiLCJKU09OIiwic3RyaW5naWZ5Il0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxnQkFBZ0IsUUFBUSx3QkFBd0I7QUFFekQsU0FBU0MsY0FBYyxRQUFRLG1CQUFtQjtBQUVsRDs7Ozs7Q0FLQyxHQUNELE9BQU8sTUFBTUM7O0lBQ0lDLE1BQU1ILGlCQUFpQkksZ0JBQWdCLENBQUM7SUFFdkNDLGNBQXNDO0lBQ3RDQyxtQkFBMkMsQ0FBQyxFQUFFO0lBRS9ELFlBQW1CLEFBQWlCQyxXQUFtQixDQUFFO2FBQXJCQSxjQUFBQTtRQUNuQyxJQUFJLENBQUNGLGFBQWEsR0FBRztZQUNwQixvQkFBb0JKO1lBQ3BCLHNCQUFzQkE7UUFDdkI7SUFDRDtJQUVPTyxjQUFjQyxJQUFZLEVBQUVDLE9BQWUsRUFBUTtRQUN6RCxJQUFJLENBQUNMLGFBQWEsQ0FBQ0ksS0FBSyxHQUFHQztRQUMzQixPQUFPLElBQUk7SUFDWjtJQUVPQyxpQkFBaUJGLElBQVksRUFBRUMsT0FBZSxFQUFRO1FBQzVELElBQUksQ0FBQ0osZ0JBQWdCLENBQUNHLEtBQUssR0FBR0M7UUFDOUIsT0FBTyxJQUFJO0lBQ1o7SUFFT0UsUUFBc0I7UUFDNUIsTUFBTUMsTUFBK0I7WUFDcENKLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDRixXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ2hDRyxTQUFTO1lBQ1RJLE1BQU07WUFDTkMsTUFBTTtZQUNOQyxjQUFjO2dCQUFFLEdBQUcsSUFBSSxDQUFDWCxhQUFhO1lBQUM7UUFDdkM7UUFDQSxJQUFJWSxPQUFPQyxJQUFJLENBQUMsSUFBSSxDQUFDWixnQkFBZ0IsRUFBRWEsTUFBTSxHQUFHLEdBQUc7WUFDbEROLElBQUlPLGVBQWUsR0FBRztnQkFBRSxHQUFHLElBQUksQ0FBQ2QsZ0JBQWdCO1lBQUM7UUFDbEQ7UUFDQSxPQUFPO1lBQ047Z0JBQ0NlLFVBQVU7Z0JBQ1ZDLFNBQVNDLEtBQUtDLFNBQVMsQ0FBQ1gsS0FBSyxNQUFNO1lBQ3BDO1NBQ0E7SUFDRjtBQUNEIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decohere/create",
3
- "version": "0.0.1-dev.18",
3
+ "version": "0.0.1-dev.20",
4
4
  "description": "Scaffold a new Decohere project — build with Forge, serve with Flux",
5
5
  "keywords": [
6
6
  "decohere",
@@ -21,7 +21,7 @@
21
21
  "test": "echo \"Error: no test specified\" && exit 1"
22
22
  },
23
23
  "dependencies": {
24
- "@decohere/nexus": "0.0.1-dev.18",
24
+ "@decohere/nexus": "0.0.1-dev.20",
25
25
  "commander": "^13.1.0"
26
26
  },
27
27
  "devDependencies": {}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Run the scaffold inside a pre-built Docker builder image.
3
+ *
4
+ * Called when `DECOHERE_BUILDER` is not set — i.e. the CLI is running on the
5
+ * host, outside the container. Mounts the target directory as `/workspace` so
6
+ * the scaffolded files are written back to the host filesystem.
7
+ *
8
+ * If `~/.config/auth0` exists on the host the directory is also mounted so
9
+ * the auth0 CLI inside the container can reuse existing credentials silently.
10
+ */
11
+ export declare function runInBuilder(opts: {
12
+ d?: string;
13
+ }): never;