@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
@@ -1,68 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: Object.getOwnPropertyDescriptor(all, name).get
9
- });
10
- }
11
- _export(exports, {
12
- get COMPOSE_KEY () {
13
- return _composemodel.COMPOSE_KEY;
14
- },
15
- get ClassModel () {
16
- return _classmodel.ClassModel;
17
- },
18
- get ComposeModel () {
19
- return _composemodel.ComposeModel;
20
- },
21
- get DEVCONTAINER_KEY () {
22
- return _devcontainermodel.DEVCONTAINER_KEY;
23
- },
24
- get DevcontainerModel () {
25
- return _devcontainermodel.DevcontainerModel;
26
- },
27
- get DockerfileModel () {
28
- return _dockerfilemodel.DockerfileModel;
29
- },
30
- get FeatureModelStore () {
31
- return _context.FeatureModelStore;
32
- },
33
- get ImportMap () {
34
- return _importmap.ImportMap;
35
- },
36
- get PHASES () {
37
- return _feature.PHASES;
38
- },
39
- get ask () {
40
- return _prompt.ask;
41
- },
42
- get createContext () {
43
- return _context.createContext;
44
- },
45
- get defineWorkflow () {
46
- return _workflow.defineWorkflow;
47
- },
48
- get modelKey () {
49
- return _context.modelKey;
50
- },
51
- get pick () {
52
- return _prompt.pick;
53
- },
54
- get runWorkflow () {
55
- return _workflow.runWorkflow;
56
- }
57
- });
58
- const _classmodel = require("./class-model.js");
59
- const _composemodel = require("./compose.model.js");
60
- const _context = require("./context.js");
61
- const _devcontainermodel = require("./devcontainer.model.js");
62
- const _dockerfilemodel = require("./dockerfile.model.js");
63
- const _feature = require("./feature.js");
64
- const _importmap = require("./import-map.js");
65
- const _prompt = require("./prompt.js");
66
- const _workflow = require("./workflow.js");
67
-
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS92MS9kb21haW4vaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtcblx0dHlwZSBCb2R5Q2xhc3NEZWYsXG5cdHR5cGUgQm9keUNsYXNzRmllbGQsXG5cdENsYXNzTW9kZWwsXG5cdHR5cGUgQ29uc3RydWN0b3JQYXJhbSxcblx0dHlwZSBNZXRob2REZWYsXG5cdHR5cGUgTWV0aG9kUGFyYW0sXG59IGZyb20gXCIuL2NsYXNzLW1vZGVsLmpzXCI7XG5leHBvcnQgeyBDT01QT1NFX0tFWSwgQ29tcG9zZU1vZGVsLCB0eXBlIENvbXBvc2VTZXJ2aWNlIH0gZnJvbSBcIi4vY29tcG9zZS5tb2RlbC5qc1wiO1xuZXhwb3J0IHR5cGUge1xuXHRGZWF0dXJlTW9kZWxLZXksXG5cdFNjYWZmb2xkQ29udGV4dCxcblx0U2NhZmZvbGRPcHRpb25zLFxufSBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5leHBvcnQgeyBjcmVhdGVDb250ZXh0LCBGZWF0dXJlTW9kZWxTdG9yZSwgbW9kZWxLZXkgfSBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5leHBvcnQgeyBERVZDT05UQUlORVJfS0VZLCBEZXZjb250YWluZXJNb2RlbCB9IGZyb20gXCIuL2RldmNvbnRhaW5lci5tb2RlbC5qc1wiO1xuZXhwb3J0IHsgRG9ja2VyZmlsZU1vZGVsIH0gZnJvbSBcIi4vZG9ja2VyZmlsZS5tb2RlbC5qc1wiO1xuZXhwb3J0IHR5cGUgeyBGZWF0dXJlLCBQaGFzZSwgU2NhZmZvbGRTdGVwIH0gZnJvbSBcIi4vZmVhdHVyZS5qc1wiO1xuZXhwb3J0IHsgUEhBU0VTIH0gZnJvbSBcIi4vZmVhdHVyZS5qc1wiO1xuZXhwb3J0IHsgSW1wb3J0TWFwIH0gZnJvbSBcIi4vaW1wb3J0LW1hcC5qc1wiO1xuZXhwb3J0IHsgYXNrLCBwaWNrIH0gZnJvbSBcIi4vcHJvbXB0LmpzXCI7XG5leHBvcnQgdHlwZSB7IFdvcmtmbG93IH0gZnJvbSBcIi4vd29ya2Zsb3cuanNcIjtcbmV4cG9ydCB7IGRlZmluZVdvcmtmbG93LCBydW5Xb3JrZmxvdyB9IGZyb20gXCIuL3dvcmtmbG93LmpzXCI7XG4iXSwibmFtZXMiOlsiQ09NUE9TRV9LRVkiLCJDbGFzc01vZGVsIiwiQ29tcG9zZU1vZGVsIiwiREVWQ09OVEFJTkVSX0tFWSIsIkRldmNvbnRhaW5lck1vZGVsIiwiRG9ja2VyZmlsZU1vZGVsIiwiRmVhdHVyZU1vZGVsU3RvcmUiLCJJbXBvcnRNYXAiLCJQSEFTRVMiLCJhc2siLCJjcmVhdGVDb250ZXh0IiwiZGVmaW5lV29ya2Zsb3ciLCJtb2RlbEtleSIsInBpY2siLCJydW5Xb3JrZmxvdyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7UUFRU0E7ZUFBQUEseUJBQVc7O1FBTG5CQztlQUFBQSxzQkFBVTs7UUFLV0M7ZUFBQUEsMEJBQVk7O1FBT3pCQztlQUFBQSxtQ0FBZ0I7O1FBQUVDO2VBQUFBLG9DQUFpQjs7UUFDbkNDO2VBQUFBLGdDQUFlOztRQUZBQztlQUFBQSwwQkFBaUI7O1FBS2hDQztlQUFBQSxvQkFBUzs7UUFEVEM7ZUFBQUEsZUFBTTs7UUFFTkM7ZUFBQUEsV0FBRzs7UUFOSEM7ZUFBQUEsc0JBQWE7O1FBUWJDO2VBQUFBLHdCQUFjOztRQVJvQkM7ZUFBQUEsaUJBQVE7O1FBTXJDQztlQUFBQSxZQUFJOztRQUVPQztlQUFBQSxxQkFBVzs7OzRCQWY3Qjs4QkFDd0Q7eUJBTUo7bUNBQ1A7aUNBQ3BCO3lCQUVUOzJCQUNHO3dCQUNBOzBCQUVrQiJ9
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: Object.getOwnPropertyDescriptor(all, name).get
9
- });
10
- }
11
- _export(exports, {
12
- get ask () {
13
- return ask;
14
- },
15
- get pick () {
16
- return pick;
17
- }
18
- });
19
- const _promises = require("node:readline/promises");
20
- async function ask(question, fallback = "") {
21
- const rl = (0, _promises.createInterface)({
22
- input: process.stdin,
23
- output: process.stdout
24
- });
25
- const answer = (await rl.question(question)).trim();
26
- rl.close();
27
- return answer || fallback;
28
- }
29
- async function pick(label, items, display) {
30
- console.log(label.trimEnd());
31
- for (const [i, item] of items.entries()){
32
- console.log(` ${i + 1}. ${display(item)}`);
33
- }
34
- const rl = (0, _promises.createInterface)({
35
- input: process.stdin,
36
- output: process.stdout
37
- });
38
- const answer = (await rl.question(" > ")).trim();
39
- rl.close();
40
- const idx = Number.parseInt(answer, 10);
41
- if (Number.isNaN(idx) || idx < 1 || idx > items.length) return null;
42
- return items[idx - 1];
43
- }
44
-
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS92MS9kb21haW4vcHJvbXB0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUludGVyZmFjZSB9IGZyb20gXCJub2RlOnJlYWRsaW5lL3Byb21pc2VzXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc2socXVlc3Rpb246IHN0cmluZywgZmFsbGJhY2sgPSBcIlwiKTogUHJvbWlzZTxzdHJpbmc+IHtcblx0Y29uc3QgcmwgPSBjcmVhdGVJbnRlcmZhY2UoeyBpbnB1dDogcHJvY2Vzcy5zdGRpbiwgb3V0cHV0OiBwcm9jZXNzLnN0ZG91dCB9KTtcblx0Y29uc3QgYW5zd2VyID0gKGF3YWl0IHJsLnF1ZXN0aW9uKHF1ZXN0aW9uKSkudHJpbSgpO1xuXHRybC5jbG9zZSgpO1xuXHRyZXR1cm4gYW5zd2VyIHx8IGZhbGxiYWNrO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGljazxUPihcblx0bGFiZWw6IHN0cmluZyxcblx0aXRlbXM6IFRbXSxcblx0ZGlzcGxheTogKGl0ZW06IFQpID0+IHN0cmluZyxcbik6IFByb21pc2U8VCB8IG51bGw+IHtcblx0Y29uc29sZS5sb2cobGFiZWwudHJpbUVuZCgpKTtcblx0Zm9yIChjb25zdCBbaSwgaXRlbV0gb2YgaXRlbXMuZW50cmllcygpKSB7XG5cdFx0Y29uc29sZS5sb2coYCAgICAke2kgKyAxfS4gJHtkaXNwbGF5KGl0ZW0pfWApO1xuXHR9XG5cdGNvbnN0IHJsID0gY3JlYXRlSW50ZXJmYWNlKHsgaW5wdXQ6IHByb2Nlc3Muc3RkaW4sIG91dHB1dDogcHJvY2Vzcy5zdGRvdXQgfSk7XG5cdGNvbnN0IGFuc3dlciA9IChhd2FpdCBybC5xdWVzdGlvbihcIiAgPiBcIikpLnRyaW0oKTtcblx0cmwuY2xvc2UoKTtcblx0Y29uc3QgaWR4ID0gTnVtYmVyLnBhcnNlSW50KGFuc3dlciwgMTApO1xuXHRpZiAoTnVtYmVyLmlzTmFOKGlkeCkgfHwgaWR4IDwgMSB8fCBpZHggPiBpdGVtcy5sZW5ndGgpIHJldHVybiBudWxsO1xuXHRyZXR1cm4gaXRlbXNbaWR4IC0gMV07XG59XG4iXSwibmFtZXMiOlsiYXNrIiwicGljayIsInF1ZXN0aW9uIiwiZmFsbGJhY2siLCJybCIsImNyZWF0ZUludGVyZmFjZSIsImlucHV0IiwicHJvY2VzcyIsInN0ZGluIiwib3V0cHV0Iiwic3Rkb3V0IiwiYW5zd2VyIiwidHJpbSIsImNsb3NlIiwibGFiZWwiLCJpdGVtcyIsImRpc3BsYXkiLCJjb25zb2xlIiwibG9nIiwidHJpbUVuZCIsImkiLCJpdGVtIiwiZW50cmllcyIsImlkeCIsIk51bWJlciIsInBhcnNlSW50IiwiaXNOYU4iLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBRXNCQTtlQUFBQTs7UUFPQUM7ZUFBQUE7OzswQkFUVTtBQUV6QixlQUFlRCxJQUFJRSxRQUFnQixFQUFFQyxXQUFXLEVBQUU7SUFDeEQsTUFBTUMsS0FBS0MsSUFBQUEseUJBQWUsRUFBQztRQUFFQyxPQUFPQyxRQUFRQyxLQUFLO1FBQUVDLFFBQVFGLFFBQVFHLE1BQU07SUFBQztJQUMxRSxNQUFNQyxTQUFTLEFBQUMsQ0FBQSxNQUFNUCxHQUFHRixRQUFRLENBQUNBLFNBQVEsRUFBR1UsSUFBSTtJQUNqRFIsR0FBR1MsS0FBSztJQUNSLE9BQU9GLFVBQVVSO0FBQ2xCO0FBRU8sZUFBZUYsS0FDckJhLEtBQWEsRUFDYkMsS0FBVSxFQUNWQyxPQUE0QjtJQUU1QkMsUUFBUUMsR0FBRyxDQUFDSixNQUFNSyxPQUFPO0lBQ3pCLEtBQUssTUFBTSxDQUFDQyxHQUFHQyxLQUFLLElBQUlOLE1BQU1PLE9BQU8sR0FBSTtRQUN4Q0wsUUFBUUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFRSxJQUFJLEVBQUUsRUFBRSxFQUFFSixRQUFRSyxPQUFPO0lBQzdDO0lBQ0EsTUFBTWpCLEtBQUtDLElBQUFBLHlCQUFlLEVBQUM7UUFBRUMsT0FBT0MsUUFBUUMsS0FBSztRQUFFQyxRQUFRRixRQUFRRyxNQUFNO0lBQUM7SUFDMUUsTUFBTUMsU0FBUyxBQUFDLENBQUEsTUFBTVAsR0FBR0YsUUFBUSxDQUFDLE9BQU0sRUFBR1UsSUFBSTtJQUMvQ1IsR0FBR1MsS0FBSztJQUNSLE1BQU1VLE1BQU1DLE9BQU9DLFFBQVEsQ0FBQ2QsUUFBUTtJQUNwQyxJQUFJYSxPQUFPRSxLQUFLLENBQUNILFFBQVFBLE1BQU0sS0FBS0EsTUFBTVIsTUFBTVksTUFBTSxFQUFFLE9BQU87SUFDL0QsT0FBT1osS0FBSyxDQUFDUSxNQUFNLEVBQUU7QUFDdEIifQ==
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: Object.getOwnPropertyDescriptor(all, name).get
9
- });
10
- }
11
- _export(exports, {
12
- get defineWorkflow () {
13
- return defineWorkflow;
14
- },
15
- get runWorkflow () {
16
- return runWorkflow;
17
- }
18
- });
19
- const _feature = require("./feature.js");
20
- function defineWorkflow(name, features) {
21
- return {
22
- name,
23
- features
24
- };
25
- }
26
- async function runWorkflow(workflow, ctx) {
27
- for (const phase of _feature.PHASES){
28
- for (const feature of workflow.features){
29
- const step = feature[phase];
30
- if (step == null) continue;
31
- if (feature.enabled != null && !feature.enabled(ctx)) continue;
32
- ctx = await step(ctx);
33
- }
34
- }
35
- }
36
-
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS92MS9kb21haW4vd29ya2Zsb3cudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTY2FmZm9sZENvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0LmpzXCI7XG5pbXBvcnQgeyB0eXBlIEZlYXR1cmUsIFBIQVNFUyB9IGZyb20gXCIuL2ZlYXR1cmUuanNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvdyB7XG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblx0cmVhZG9ubHkgZmVhdHVyZXM6IHJlYWRvbmx5IEZlYXR1cmVbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlZmluZVdvcmtmbG93KG5hbWU6IHN0cmluZywgZmVhdHVyZXM6IEZlYXR1cmVbXSk6IFdvcmtmbG93IHtcblx0cmV0dXJuIHsgbmFtZSwgZmVhdHVyZXMgfTtcbn1cblxuLyoqXG4gKiBSdW5zIGEgd29ya2Zsb3cgYnkgaXRlcmF0aW5nIHBoYXNlcyDDlyBmZWF0dXJlcy4gV2l0aGluIGVhY2ggcGhhc2UsIGV2ZXJ5XG4gKiBlbmFibGVkIGZlYXR1cmUncyBzdGVwIGZvciB0aGF0IHBoYXNlIGlzIGV4ZWN1dGVkIGluIGZlYXR1cmUgb3JkZXIuIFRoZVxuICogYGVuYWJsZWRgIHByZWRpY2F0ZSBpcyByZS1ldmFsdWF0ZWQgYmVmb3JlIGVhY2ggcGhhc2Ugc28gYSBmZWF0dXJlIGNhblxuICogYmVjb21lIGFjdGl2ZSBiYXNlZCBvbiBvcHRpb25zIHNldCBieSBlYXJsaWVyIGByZXNvbHZlYCBwaGFzZXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5Xb3JrZmxvdyh3b3JrZmxvdzogV29ya2Zsb3csIGN0eDogU2NhZmZvbGRDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG5cdGZvciAoY29uc3QgcGhhc2Ugb2YgUEhBU0VTKSB7XG5cdFx0Zm9yIChjb25zdCBmZWF0dXJlIG9mIHdvcmtmbG93LmZlYXR1cmVzKSB7XG5cdFx0XHRjb25zdCBzdGVwID0gZmVhdHVyZVtwaGFzZV07XG5cdFx0XHRpZiAoc3RlcCA9PSBudWxsKSBjb250aW51ZTtcblx0XHRcdGlmIChmZWF0dXJlLmVuYWJsZWQgIT0gbnVsbCAmJiAhZmVhdHVyZS5lbmFibGVkKGN0eCkpIGNvbnRpbnVlO1xuXHRcdFx0Y3R4ID0gYXdhaXQgc3RlcChjdHgpO1xuXHRcdH1cblx0fVxufVxuIl0sIm5hbWVzIjpbImRlZmluZVdvcmtmbG93IiwicnVuV29ya2Zsb3ciLCJuYW1lIiwiZmVhdHVyZXMiLCJ3b3JrZmxvdyIsImN0eCIsInBoYXNlIiwiUEhBU0VTIiwiZmVhdHVyZSIsInN0ZXAiLCJlbmFibGVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztRQVFnQkE7ZUFBQUE7O1FBVU1DO2VBQUFBOzs7eUJBakJlO0FBTzlCLFNBQVNELGVBQWVFLElBQVksRUFBRUMsUUFBbUI7SUFDL0QsT0FBTztRQUFFRDtRQUFNQztJQUFTO0FBQ3pCO0FBUU8sZUFBZUYsWUFBWUcsUUFBa0IsRUFBRUMsR0FBb0I7SUFDekUsS0FBSyxNQUFNQyxTQUFTQyxlQUFNLENBQUU7UUFDM0IsS0FBSyxNQUFNQyxXQUFXSixTQUFTRCxRQUFRLENBQUU7WUFDeEMsTUFBTU0sT0FBT0QsT0FBTyxDQUFDRixNQUFNO1lBQzNCLElBQUlHLFFBQVEsTUFBTTtZQUNsQixJQUFJRCxRQUFRRSxPQUFPLElBQUksUUFBUSxDQUFDRixRQUFRRSxPQUFPLENBQUNMLE1BQU07WUFDdERBLE1BQU0sTUFBTUksS0FBS0o7UUFDbEI7SUFDRDtBQUNEIn0=
@@ -1,103 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "apiCoreFeature", {
6
- enumerable: true,
7
- get: function() {
8
- return apiCoreFeature;
9
- }
10
- });
11
- const _promises = require("node:fs/promises");
12
- const _nodepath = require("node:path");
13
- const _devcontainermodel = require("../../domain/devcontainer.model.js");
14
- const _index = require("../../domain/index.js");
15
- const _hellocontrollermodel = require("./hello-controller.model.js");
16
- const _maintsmodel = require("./main-ts.model.js");
17
- const _scaffoldfilestemplate = require("./scaffold-files.template.js");
18
- async function resolve(ctx) {
19
- if (ctx.opts.yes) return ctx;
20
- let { database, idp, postman } = ctx.opts;
21
- if (database == null) {
22
- console.log("\n Select database:");
23
- const db = await (0, _index.pick)(" Choice (enter for none): ", [
24
- "postgresql/typeorm"
25
- ], (id)=>id);
26
- database = db === "postgresql/typeorm" ? "typeorm" : undefined;
27
- }
28
- if (idp == null) {
29
- console.log("\n Select identity provider:");
30
- const provider = await (0, _index.pick)(" Choice (enter for none): ", [
31
- "Auth0"
32
- ], (id)=>id);
33
- idp = provider === "Auth0" ? "auth0" : undefined;
34
- }
35
- if (!postman) {
36
- const answer = await (0, _index.ask)("\n Configure Postman workspace? [yes/no] (no): ");
37
- postman = answer === "yes" || undefined;
38
- }
39
- return {
40
- ...ctx,
41
- opts: {
42
- ...ctx.opts,
43
- database,
44
- idp,
45
- postman
46
- }
47
- };
48
- }
49
- async function configure(ctx) {
50
- const helloController = (0, _hellocontrollermodel.createHelloController)();
51
- const devcontainer = new _devcontainermodel.DevcontainerModel(`${ctx.projectName}.api`).addExtension("biomejs.biome", "vitest.explorer").forwardPort(3000).addPostStartCommand("npm whoami 2>/dev/null || npm login");
52
- return {
53
- ...ctx,
54
- models: ctx.models.set(_maintsmodel.MAIN_TS_KEY, new _maintsmodel.MainTsModel(`${ctx.projectName}.api`)).set(_devcontainermodel.DEVCONTAINER_KEY, devcontainer),
55
- controllers: [
56
- ...ctx.controllers,
57
- helloController
58
- ]
59
- };
60
- }
61
- async function render(ctx) {
62
- const { targetDir, projectName } = ctx;
63
- await Promise.all([
64
- (0, _promises.mkdir)((0, _nodepath.join)(targetDir, ".vscode"), {
65
- recursive: true
66
- }),
67
- (0, _promises.mkdir)((0, _nodepath.join)(targetDir, "projects", "api", "src", "controllers"), {
68
- recursive: true
69
- }),
70
- (0, _promises.mkdir)((0, _nodepath.join)(targetDir, "config"), {
71
- recursive: true
72
- })
73
- ]);
74
- const { controllers } = ctx;
75
- const mainTsModel = ctx.models.get(_maintsmodel.MAIN_TS_KEY);
76
- const writes = [
77
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "package.json"), (0, _scaffoldfilestemplate.rootPackageJson)(projectName)),
78
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "tsconfig.json"), _scaffoldfilestemplate.TSCONFIG),
79
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "projects", "api", "package.json"), (0, _scaffoldfilestemplate.apiPackageJson)(projectName)),
80
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "projects", "api", "src", "sample.config.ts"), _scaffoldfilestemplate.SAMPLE_CONFIG_TS),
81
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "projects", "api", "src", "sample.service.ts"), _scaffoldfilestemplate.SAMPLE_SERVICE_TS),
82
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "config", "config.yaml"), (0, _scaffoldfilestemplate.configYaml)()),
83
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, "config", "config.dev.yaml"), _scaffoldfilestemplate.CONFIG_DEV_YAML),
84
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, ".vscode", "launch.json"), _scaffoldfilestemplate.VSCODE_LAUNCH_JSON),
85
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, ".vscode", "settings.json"), (0, _scaffoldfilestemplate.vscodeSettingsJson)(projectName)),
86
- (0, _promises.writeFile)((0, _nodepath.join)(targetDir, ".gitignore"), _scaffoldfilestemplate.GITIGNORE),
87
- ...controllers.map((c)=>(0, _promises.writeFile)((0, _nodepath.join)(targetDir, "projects", "api", "src", "controllers", c.fileName), c.render()))
88
- ];
89
- if (mainTsModel) {
90
- for (const c of controllers)mainTsModel.addController(c);
91
- writes.push((0, _promises.writeFile)((0, _nodepath.join)(targetDir, "projects", "api", "src", "main.ts"), mainTsModel.render()));
92
- }
93
- await Promise.all(writes);
94
- return ctx;
95
- }
96
- const apiCoreFeature = {
97
- name: "api-core",
98
- resolve,
99
- configure,
100
- render
101
- };
102
-
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS92MS9mZWF0dXJlcy9hcGktY29yZS9mZWF0dXJlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1rZGlyLCB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IERFVkNPTlRBSU5FUl9LRVksIERldmNvbnRhaW5lck1vZGVsIH0gZnJvbSBcIi4uLy4uL2RvbWFpbi9kZXZjb250YWluZXIubW9kZWwuanNcIjtcbmltcG9ydCB7IGFzaywgdHlwZSBGZWF0dXJlLCBwaWNrLCB0eXBlIFNjYWZmb2xkQ29udGV4dCB9IGZyb20gXCIuLi8uLi9kb21haW4vaW5kZXguanNcIjtcbmltcG9ydCB7IGNyZWF0ZUhlbGxvQ29udHJvbGxlciB9IGZyb20gXCIuL2hlbGxvLWNvbnRyb2xsZXIubW9kZWwuanNcIjtcbmltcG9ydCB7IE1BSU5fVFNfS0VZLCBNYWluVHNNb2RlbCB9IGZyb20gXCIuL21haW4tdHMubW9kZWwuanNcIjtcbmltcG9ydCB7XG5cdGFwaVBhY2thZ2VKc29uLFxuXHRDT05GSUdfREVWX1lBTUwsXG5cdGNvbmZpZ1lhbWwsXG5cdEdJVElHTk9SRSxcblx0cm9vdFBhY2thZ2VKc29uLFxuXHRTQU1QTEVfQ09ORklHX1RTLFxuXHRTQU1QTEVfU0VSVklDRV9UUyxcblx0VFNDT05GSUcsXG5cdFZTQ09ERV9MQVVOQ0hfSlNPTixcblx0dnNjb2RlU2V0dGluZ3NKc29uLFxufSBmcm9tIFwiLi9zY2FmZm9sZC1maWxlcy50ZW1wbGF0ZS5qc1wiO1xuXG5hc3luYyBmdW5jdGlvbiByZXNvbHZlKGN0eDogU2NhZmZvbGRDb250ZXh0KTogUHJvbWlzZTxTY2FmZm9sZENvbnRleHQ+IHtcblx0aWYgKGN0eC5vcHRzLnllcykgcmV0dXJuIGN0eDtcblxuXHRsZXQgeyBkYXRhYmFzZSwgaWRwLCBwb3N0bWFuIH0gPSBjdHgub3B0cztcblxuXHRpZiAoZGF0YWJhc2UgPT0gbnVsbCkge1xuXHRcdGNvbnNvbGUubG9nKFwiXFxuICBTZWxlY3QgZGF0YWJhc2U6XCIpO1xuXHRcdGNvbnN0IGRiID0gYXdhaXQgcGljayhcIiAgQ2hvaWNlIChlbnRlciBmb3Igbm9uZSk6IFwiLCBbXCJwb3N0Z3Jlc3FsL3R5cGVvcm1cIl0sIChpZCkgPT4gaWQpO1xuXHRcdGRhdGFiYXNlID0gZGIgPT09IFwicG9zdGdyZXNxbC90eXBlb3JtXCIgPyBcInR5cGVvcm1cIiA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdGlmIChpZHAgPT0gbnVsbCkge1xuXHRcdGNvbnNvbGUubG9nKFwiXFxuICBTZWxlY3QgaWRlbnRpdHkgcHJvdmlkZXI6XCIpO1xuXHRcdGNvbnN0IHByb3ZpZGVyID0gYXdhaXQgcGljayhcIiAgQ2hvaWNlIChlbnRlciBmb3Igbm9uZSk6IFwiLCBbXCJBdXRoMFwiXSwgKGlkKSA9PiBpZCk7XG5cdFx0aWRwID0gcHJvdmlkZXIgPT09IFwiQXV0aDBcIiA/IFwiYXV0aDBcIiA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdGlmICghcG9zdG1hbikge1xuXHRcdGNvbnN0IGFuc3dlciA9IGF3YWl0IGFzayhcIlxcbiAgQ29uZmlndXJlIFBvc3RtYW4gd29ya3NwYWNlPyBbeWVzL25vXSAobm8pOiBcIik7XG5cdFx0cG9zdG1hbiA9IGFuc3dlciA9PT0gXCJ5ZXNcIiB8fCB1bmRlZmluZWQ7XG5cdH1cblxuXHRyZXR1cm4geyAuLi5jdHgsIG9wdHM6IHsgLi4uY3R4Lm9wdHMsIGRhdGFiYXNlLCBpZHAsIHBvc3RtYW4gfSB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBjb25maWd1cmUoY3R4OiBTY2FmZm9sZENvbnRleHQpOiBQcm9taXNlPFNjYWZmb2xkQ29udGV4dD4ge1xuXHRjb25zdCBoZWxsb0NvbnRyb2xsZXIgPSBjcmVhdGVIZWxsb0NvbnRyb2xsZXIoKTtcblx0Y29uc3QgZGV2Y29udGFpbmVyID0gbmV3IERldmNvbnRhaW5lck1vZGVsKGAke2N0eC5wcm9qZWN0TmFtZX0uYXBpYClcblx0XHQuYWRkRXh0ZW5zaW9uKFwiYmlvbWVqcy5iaW9tZVwiLCBcInZpdGVzdC5leHBsb3JlclwiKVxuXHRcdC5mb3J3YXJkUG9ydCgzMDAwKVxuXHRcdC5hZGRQb3N0U3RhcnRDb21tYW5kKFwibnBtIHdob2FtaSAyPi9kZXYvbnVsbCB8fCBucG0gbG9naW5cIik7XG5cdHJldHVybiB7XG5cdFx0Li4uY3R4LFxuXHRcdG1vZGVsczogY3R4Lm1vZGVsc1xuXHRcdFx0LnNldChNQUlOX1RTX0tFWSwgbmV3IE1haW5Uc01vZGVsKGAke2N0eC5wcm9qZWN0TmFtZX0uYXBpYCkpXG5cdFx0XHQuc2V0KERFVkNPTlRBSU5FUl9LRVksIGRldmNvbnRhaW5lciksXG5cdFx0Y29udHJvbGxlcnM6IFsuLi5jdHguY29udHJvbGxlcnMsIGhlbGxvQ29udHJvbGxlcl0sXG5cdH07XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlbmRlcihjdHg6IFNjYWZmb2xkQ29udGV4dCk6IFByb21pc2U8U2NhZmZvbGRDb250ZXh0PiB7XG5cdGNvbnN0IHsgdGFyZ2V0RGlyLCBwcm9qZWN0TmFtZSB9ID0gY3R4O1xuXG5cdGF3YWl0IFByb21pc2UuYWxsKFtcblx0XHRta2Rpcihqb2luKHRhcmdldERpciwgXCIudnNjb2RlXCIpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KSxcblx0XHRta2Rpcihqb2luKHRhcmdldERpciwgXCJwcm9qZWN0c1wiLCBcImFwaVwiLCBcInNyY1wiLCBcImNvbnRyb2xsZXJzXCIpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KSxcblx0XHRta2Rpcihqb2luKHRhcmdldERpciwgXCJjb25maWdcIiksIHsgcmVjdXJzaXZlOiB0cnVlIH0pLFxuXHRdKTtcblxuXHRjb25zdCB7IGNvbnRyb2xsZXJzIH0gPSBjdHg7XG5cdGNvbnN0IG1haW5Uc01vZGVsID0gY3R4Lm1vZGVscy5nZXQoTUFJTl9UU19LRVkpO1xuXG5cdGNvbnN0IHdyaXRlczogQXJyYXk8UHJvbWlzZTx1bmtub3duPj4gPSBbXG5cdFx0d3JpdGVGaWxlKGpvaW4odGFyZ2V0RGlyLCBcInBhY2thZ2UuanNvblwiKSwgcm9vdFBhY2thZ2VKc29uKHByb2plY3ROYW1lKSksXG5cdFx0d3JpdGVGaWxlKGpvaW4odGFyZ2V0RGlyLCBcInRzY29uZmlnLmpzb25cIiksIFRTQ09ORklHKSxcblx0XHR3cml0ZUZpbGUoam9pbih0YXJnZXREaXIsIFwicHJvamVjdHNcIiwgXCJhcGlcIiwgXCJwYWNrYWdlLmpzb25cIiksIGFwaVBhY2thZ2VKc29uKHByb2plY3ROYW1lKSksXG5cdFx0d3JpdGVGaWxlKGpvaW4odGFyZ2V0RGlyLCBcInByb2plY3RzXCIsIFwiYXBpXCIsIFwic3JjXCIsIFwic2FtcGxlLmNvbmZpZy50c1wiKSwgU0FNUExFX0NPTkZJR19UUyksXG5cdFx0d3JpdGVGaWxlKFxuXHRcdFx0am9pbih0YXJnZXREaXIsIFwicHJvamVjdHNcIiwgXCJhcGlcIiwgXCJzcmNcIiwgXCJzYW1wbGUuc2VydmljZS50c1wiKSxcblx0XHRcdFNBTVBMRV9TRVJWSUNFX1RTLFxuXHRcdCksXG5cdFx0d3JpdGVGaWxlKGpvaW4odGFyZ2V0RGlyLCBcImNvbmZpZ1wiLCBcImNvbmZpZy55YW1sXCIpLCBjb25maWdZYW1sKCkpLFxuXHRcdHdyaXRlRmlsZShqb2luKHRhcmdldERpciwgXCJjb25maWdcIiwgXCJjb25maWcuZGV2LnlhbWxcIiksIENPTkZJR19ERVZfWUFNTCksXG5cdFx0d3JpdGVGaWxlKGpvaW4odGFyZ2V0RGlyLCBcIi52c2NvZGVcIiwgXCJsYXVuY2guanNvblwiKSwgVlNDT0RFX0xBVU5DSF9KU09OKSxcblx0XHR3cml0ZUZpbGUoam9pbih0YXJnZXREaXIsIFwiLnZzY29kZVwiLCBcInNldHRpbmdzLmpzb25cIiksIHZzY29kZVNldHRpbmdzSnNvbihwcm9qZWN0TmFtZSkpLFxuXHRcdHdyaXRlRmlsZShqb2luKHRhcmdldERpciwgXCIuZ2l0aWdub3JlXCIpLCBHSVRJR05PUkUpLFxuXHRcdC4uLmNvbnRyb2xsZXJzLm1hcCgoYykgPT5cblx0XHRcdHdyaXRlRmlsZShcblx0XHRcdFx0am9pbih0YXJnZXREaXIsIFwicHJvamVjdHNcIiwgXCJhcGlcIiwgXCJzcmNcIiwgXCJjb250cm9sbGVyc1wiLCBjLmZpbGVOYW1lKSxcblx0XHRcdFx0Yy5yZW5kZXIoKSxcblx0XHRcdCksXG5cdFx0KSxcblx0XTtcblxuXHRpZiAobWFpblRzTW9kZWwpIHtcblx0XHRmb3IgKGNvbnN0IGMgb2YgY29udHJvbGxlcnMpIG1haW5Uc01vZGVsLmFkZENvbnRyb2xsZXIoYyk7XG5cdFx0d3JpdGVzLnB1c2goXG5cdFx0XHR3cml0ZUZpbGUoam9pbih0YXJnZXREaXIsIFwicHJvamVjdHNcIiwgXCJhcGlcIiwgXCJzcmNcIiwgXCJtYWluLnRzXCIpLCBtYWluVHNNb2RlbC5yZW5kZXIoKSksXG5cdFx0KTtcblx0fVxuXG5cdGF3YWl0IFByb21pc2UuYWxsKHdyaXRlcyk7XG5cdHJldHVybiBjdHg7XG59XG5cbmV4cG9ydCBjb25zdCBhcGlDb3JlRmVhdHVyZTogRmVhdHVyZSA9IHtcblx0bmFtZTogXCJhcGktY29yZVwiLFxuXHRyZXNvbHZlLFxuXHRjb25maWd1cmUsXG5cdHJlbmRlcixcbn07XG4iXSwibmFtZXMiOlsiYXBpQ29yZUZlYXR1cmUiLCJyZXNvbHZlIiwiY3R4Iiwib3B0cyIsInllcyIsImRhdGFiYXNlIiwiaWRwIiwicG9zdG1hbiIsImNvbnNvbGUiLCJsb2ciLCJkYiIsInBpY2siLCJpZCIsInVuZGVmaW5lZCIsInByb3ZpZGVyIiwiYW5zd2VyIiwiYXNrIiwiY29uZmlndXJlIiwiaGVsbG9Db250cm9sbGVyIiwiY3JlYXRlSGVsbG9Db250cm9sbGVyIiwiZGV2Y29udGFpbmVyIiwiRGV2Y29udGFpbmVyTW9kZWwiLCJwcm9qZWN0TmFtZSIsImFkZEV4dGVuc2lvbiIsImZvcndhcmRQb3J0IiwiYWRkUG9zdFN0YXJ0Q29tbWFuZCIsIm1vZGVscyIsInNldCIsIk1BSU5fVFNfS0VZIiwiTWFpblRzTW9kZWwiLCJERVZDT05UQUlORVJfS0VZIiwiY29udHJvbGxlcnMiLCJyZW5kZXIiLCJ0YXJnZXREaXIiLCJQcm9taXNlIiwiYWxsIiwibWtkaXIiLCJqb2luIiwicmVjdXJzaXZlIiwibWFpblRzTW9kZWwiLCJnZXQiLCJ3cml0ZXMiLCJ3cml0ZUZpbGUiLCJyb290UGFja2FnZUpzb24iLCJUU0NPTkZJRyIsImFwaVBhY2thZ2VKc29uIiwiU0FNUExFX0NPTkZJR19UUyIsIlNBTVBMRV9TRVJWSUNFX1RTIiwiY29uZmlnWWFtbCIsIkNPTkZJR19ERVZfWUFNTCIsIlZTQ09ERV9MQVVOQ0hfSlNPTiIsInZzY29kZVNldHRpbmdzSnNvbiIsIkdJVElHTk9SRSIsIm1hcCIsImMiLCJmaWxlTmFtZSIsImFkZENvbnRyb2xsZXIiLCJwdXNoIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkF3R2FBOzs7ZUFBQUE7OzswQkF4R29COzBCQUNaO21DQUMrQjt1QkFDVTtzQ0FDeEI7NkJBQ0c7dUNBWWxDO0FBRVAsZUFBZUMsUUFBUUMsR0FBb0I7SUFDMUMsSUFBSUEsSUFBSUMsSUFBSSxDQUFDQyxHQUFHLEVBQUUsT0FBT0Y7SUFFekIsSUFBSSxFQUFFRyxRQUFRLEVBQUVDLEdBQUcsRUFBRUMsT0FBTyxFQUFFLEdBQUdMLElBQUlDLElBQUk7SUFFekMsSUFBSUUsWUFBWSxNQUFNO1FBQ3JCRyxRQUFRQyxHQUFHLENBQUM7UUFDWixNQUFNQyxLQUFLLE1BQU1DLElBQUFBLFdBQUksRUFBQywrQkFBK0I7WUFBQztTQUFxQixFQUFFLENBQUNDLEtBQU9BO1FBQ3JGUCxXQUFXSyxPQUFPLHVCQUF1QixZQUFZRztJQUN0RDtJQUVBLElBQUlQLE9BQU8sTUFBTTtRQUNoQkUsUUFBUUMsR0FBRyxDQUFDO1FBQ1osTUFBTUssV0FBVyxNQUFNSCxJQUFBQSxXQUFJLEVBQUMsK0JBQStCO1lBQUM7U0FBUSxFQUFFLENBQUNDLEtBQU9BO1FBQzlFTixNQUFN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
@@ -1,100 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "createHelloController", {
6
- enumerable: true,
7
- get: function() {
8
- return createHelloController;
9
- }
10
- });
11
- const _classmodel = require("../../domain/class-model.js");
12
- function createHelloController() {
13
- return new _classmodel.ClassModel("HelloController", "hello.controller.ts").addImport("@decohere/cortex", "Controller", "Delete", "Field", "Get", "Param", "Post", "Put", "Query").addImport("../sample.service.js", "SampleService").decorateClass(`@Controller({ prefix: "/hello" })`).addBodyClass({
14
- name: "HelloBody",
15
- fields: [
16
- {
17
- decorator: `@Field("body", "message")`,
18
- name: "message",
19
- typeName: "string"
20
- }
21
- ]
22
- }).addConstructorParam({
23
- paramDecorators: [],
24
- name: "sample",
25
- typeName: "SampleService",
26
- isPrivate: true,
27
- isReadonly: true
28
- }).defineMethod({
29
- decorators: [
30
- "@Get()"
31
- ],
32
- name: "getAll",
33
- isAsync: true,
34
- params: [
35
- {
36
- decorator: `@Query("filter")`,
37
- name: "filter",
38
- typeName: "string"
39
- }
40
- ],
41
- body: `const greeting = await this.sample.getGreeting();\n\t\treturn { filter, message: greeting };`
42
- }).defineMethod({
43
- decorators: [
44
- `@Get("/:id")`
45
- ],
46
- name: "getOne",
47
- params: [
48
- {
49
- decorator: `@Param("id")`,
50
- name: "id",
51
- typeName: "string"
52
- }
53
- ],
54
- body: `return { id, message: \`Hello \${id}!\` };`
55
- }).defineMethod({
56
- decorators: [
57
- `@Post("/")`
58
- ],
59
- name: "create",
60
- params: [
61
- {
62
- name: "body",
63
- typeName: "HelloBody"
64
- }
65
- ],
66
- body: `return { message: body.message };`
67
- }).defineMethod({
68
- decorators: [
69
- `@Put("/:id")`
70
- ],
71
- name: "update",
72
- params: [
73
- {
74
- decorator: `@Param("id")`,
75
- name: "id",
76
- typeName: "string"
77
- },
78
- {
79
- name: "body",
80
- typeName: "HelloBody"
81
- }
82
- ],
83
- body: `return { id, message: body.message };`
84
- }).defineMethod({
85
- decorators: [
86
- `@Delete("/:id")`
87
- ],
88
- name: "remove",
89
- params: [
90
- {
91
- decorator: `@Param("id")`,
92
- name: "id",
93
- typeName: "string"
94
- }
95
- ],
96
- body: `return { id, deleted: true };`
97
- });
98
- }
99
-
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS92MS9mZWF0dXJlcy9hcGktY29yZS9oZWxsby1jb250cm9sbGVyLm1vZGVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsYXNzTW9kZWwgfSBmcm9tIFwiLi4vLi4vZG9tYWluL2NsYXNzLW1vZGVsLmpzXCI7XG5cbi8qKlxuICogQ3JlYXRlIHRoZSBzZWVkIGNvbnRyb2xsZXIgc2NhZmZvbGRlZCBpbnRvIGV2ZXJ5IG5ldyBhcGkgcHJvamVjdC5cbiAqXG4gKiBEZWZpbmVzIG9ubHkgdGhlIGJhc2UgQ1JVRCBzdHJ1Y3R1cmUuICBBdXRoIGRlY29yYXRvcnMsIElQcmluY2lwYWxQcm92aWRlclxuICogaW5qZWN0aW9uLCBhbmQgb3RoZXIgY3Jvc3MtY3V0dGluZyBjb25jZXJucyBhcmUgYWRkZWQgYnkgdGhlIHJlbGV2YW50XG4gKiBmZWF0dXJlIGR1cmluZyBpdHMgY29uZmlndXJlIHBoYXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSGVsbG9Db250cm9sbGVyKCk6IENsYXNzTW9kZWwge1xuXHRyZXR1cm4gbmV3IENsYXNzTW9kZWwoXCJIZWxsb0NvbnRyb2xsZXJcIiwgXCJoZWxsby5jb250cm9sbGVyLnRzXCIpXG5cdFx0LmFkZEltcG9ydChcblx0XHRcdFwiQGRlY29oZXJlL2NvcnRleFwiLFxuXHRcdFx0XCJDb250cm9sbGVyXCIsXG5cdFx0XHRcIkRlbGV0ZVwiLFxuXHRcdFx0XCJGaWVsZFwiLFxuXHRcdFx0XCJHZXRcIixcblx0XHRcdFwiUGFyYW1cIixcblx0XHRcdFwiUG9zdFwiLFxuXHRcdFx0XCJQdXRcIixcblx0XHRcdFwiUXVlcnlcIixcblx0XHQpXG5cdFx0LmFkZEltcG9ydChcIi4uL3NhbXBsZS5zZXJ2aWNlLmpzXCIsIFwiU2FtcGxlU2VydmljZVwiKVxuXHRcdC5kZWNvcmF0ZUNsYXNzKGBAQ29udHJvbGxlcih7IHByZWZpeDogXCIvaGVsbG9cIiB9KWApXG5cdFx0LmFkZEJvZHlDbGFzcyh7XG5cdFx0XHRuYW1lOiBcIkhlbGxvQm9keVwiLFxuXHRcdFx0ZmllbGRzOiBbXG5cdFx0XHRcdHsgZGVjb3JhdG9yOiBgQEZpZWxkKFwiYm9keVwiLCBcIm1lc3NhZ2VcIilgLCBuYW1lOiBcIm1lc3NhZ2VcIiwgdHlwZU5hbWU6IFwic3RyaW5nXCIgfSxcblx0XHRcdF0sXG5cdFx0fSlcblx0XHQuYWRkQ29uc3RydWN0b3JQYXJhbSh7XG5cdFx0XHRwYXJhbURlY29yYXRvcnM6IFtdLFxuXHRcdFx0bmFtZTogXCJzYW1wbGVcIixcblx0XHRcdHR5cGVOYW1lOiBcIlNhbXBsZVNlcnZpY2VcIixcblx0XHRcdGlzUHJpdmF0ZTogdHJ1ZSxcblx0XHRcdGlzUmVhZG9ubHk6IHRydWUsXG5cdFx0fSlcblx0XHQuZGVmaW5lTWV0aG9kKHtcblx0XHRcdGRlY29yYXRvcnM6IFtcIkBHZXQoKVwiXSxcblx0XHRcdG5hbWU6IFwiZ2V0QWxsXCIsXG5cdFx0XHRpc0FzeW5jOiB0cnVlLFxuXHRcdFx0cGFyYW1zOiBbeyBkZWNvcmF0b3I6IGBAUXVlcnkoXCJmaWx0ZXJcIilgLCBuYW1lOiBcImZpbHRlclwiLCB0eXBlTmFtZTogXCJzdHJpbmdcIiB9XSxcblx0XHRcdGJvZHk6IGBjb25zdCBncmVldGluZyA9IGF3YWl0IHRoaXMuc2FtcGxlLmdldEdyZWV0aW5nKCk7XFxuXFx0XFx0cmV0dXJuIHsgZmlsdGVyLCBtZXNzYWdlOiBncmVldGluZyB9O2AsXG5cdFx0fSlcblx0XHQuZGVmaW5lTWV0aG9kKHtcblx0XHRcdGRlY29yYXRvcnM6IFtgQEdldChcIi86aWRcIilgXSxcblx0XHRcdG5hbWU6IFwiZ2V0T25lXCIsXG5cdFx0XHRwYXJhbXM6IFt7IGRlY29yYXRvcjogYEBQYXJhbShcImlkXCIpYCwgbmFtZTogXCJpZFwiLCB0eXBlTmFtZTogXCJzdHJpbmdcIiB9XSxcblx0XHRcdGJvZHk6IGByZXR1cm4geyBpZCwgbWVzc2FnZTogXFxgSGVsbG8gXFwke2lkfSFcXGAgfTtgLFxuXHRcdH0pXG5cdFx0LmRlZmluZU1ldGhvZCh7XG5cdFx0XHRkZWNvcmF0b3JzOiBbYEBQb3N0KFwiL1wiKWBdLFxuXHRcdFx0bmFtZTogXCJjcmVhdGVcIixcblx0XHRcdHBhcmFtczogW3sgbmFtZTogXCJib2R5XCIsIHR5cGVOYW1lOiBcIkhlbGxvQm9keVwiIH1dLFxuXHRcdFx0Ym9keTogYHJldHVybiB7IG1lc3NhZ2U6IGJvZHkubWVzc2FnZSB9O2AsXG5cdFx0fSlcblx0XHQuZGVmaW5lTWV0aG9kKHtcblx0XHRcdGRlY29yYXRvcnM6IFtgQFB1dChcIi86aWRcIilgXSxcblx0XHRcdG5hbWU6IFwidXBkYXRlXCIsXG5cdFx0XHRwYXJhbXM6IFtcblx0XHRcdFx0eyBkZWNvcmF0b3I6IGBAUGFyYW0oXCJpZFwiKWAsIG5hbWU6IFwiaWRcIiwgdHlwZU5hbWU6IFwic3RyaW5nXCIgfSxcblx0XHRcdFx0eyBuYW1lOiBcImJvZHlcIiwgdHlwZU5hbWU6IFwiSGVsbG9Cb2R5XCIgfSxcblx0XHRcdF0sXG5cdFx0XHRib2R5OiBgcmV0dXJuIHsgaWQsIG1lc3NhZ2U6IGJvZHkubWVzc2FnZSB9O2AsXG5cdFx0fSlcblx0XHQuZGVmaW5lTWV0aG9kKHtcblx0XHRcdGRlY29yYXRvcnM6IFtgQERlbGV0ZShcIi86aWRcIilgXSxcblx0XHRcdG5hbWU6IFwicmVtb3ZlXCIsXG5cdFx0XHRwYXJhbXM6IFt7IGRlY29yYXRvcjogYEBQYXJhbShcImlkXCIpYCwgbmFtZTogXCJpZFwiLCB0eXBlTmFtZTogXCJzdHJpbmdcIiB9XSxcblx0XHRcdGJvZHk6IGByZXR1cm4geyBpZCwgZGVsZXRlZDogdHJ1ZSB9O2AsXG5cdFx0fSk7XG59XG4iXSwibmFtZXMiOlsiY3JlYXRlSGVsbG9Db250cm9sbGVyIiwiQ2xhc3NNb2RlbCIsImFkZEltcG9ydCIsImRlY29yYXRlQ2xhc3MiLCJhZGRCb2R5Q2xhc3MiLCJuYW1lIiwiZmllbGRzIiwiZGVjb3JhdG9yIiwidHlwZU5hbWUiLCJhZGRDb25zdHJ1Y3RvclBhcmFtIiwicGFyYW1EZWNvcmF0b3JzIiwiaXNQcml2YXRlIiwiaXNSZWFkb25seSIsImRlZmluZU1ldGhvZCIsImRlY29yYXRvcnMiLCJpc0FzeW5jIiwicGFyYW1zIiwiYm9keSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFTZ0JBOzs7ZUFBQUE7Ozs0QkFUVztBQVNwQixTQUFTQTtJQUNmLE9BQU8sSUFBSUMsc0JBQVUsQ0FBQyxtQkFBbUIsdUJBQ3ZDQyxTQUFTLENBQ1Qsb0JBQ0EsY0FDQSxVQUNBLFNBQ0EsT0FDQSxTQUNBLFFBQ0EsT0FDQSxTQUVBQSxTQUFTLENBQUMsd0JBQXdCLGlCQUNsQ0MsYUFBYSxDQUFDLENBQUMsaUNBQWlDLENBQUMsRUFDakRDLFlBQVksQ0FBQztRQUNiQyxNQUFNO1FBQ05DLFFBQVE7WUFDUDtnQkFBRUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDO2dCQUFFRixNQUFNO2dCQUFXRyxVQUFVO1lBQVM7U0FDOUU7SUFDRixHQUNDQyxtQkFBbUIsQ0FBQztRQUNwQkMsaUJBQWlCLEVBQUU7UUFDbkJMLE1BQU07UUFDTkcsVUFBVTtRQUNWRyxXQUFXO1FBQ1hDLFlBQVk7SUFDYixHQUNDQyxZQUFZLENBQUM7UUFDYkMsWUFBWTtZQUFDO1NBQVM7UUFDdEJULE1BQU07UUFDTlUsU0FBUztRQUNUQyxRQUFRO1lBQUM7Z0JBQUVULFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFBRUYsTUFBTTtnQkFBVUcsVUFBVTtZQUFTO1NBQUU7UUFDL0VTLE1BQU0sQ0FBQyw0RkFBNEYsQ0FBQztJQUNyRyxHQUNDSixZQUFZLENBQUM7UUFDYkMsWUFBWTtZQUFDLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDNUJULE1BQU07UUFDTlcsUUFBUTtZQUFDO2dCQUFFVCxXQUFXLENBQUMsWUFBWSxDQUFDO2dCQUFFRixNQUFNO2dCQUFNRyxVQUFVO1lBQVM7U0FBRTtRQUN2RVMsTUFBTSxDQUFDLDBDQUEwQyxDQUFDO0lBQ25ELEdBQ0NKLFlBQVksQ0FBQztRQUNiQyxZQUFZO1lBQUMsQ0FBQyxVQUFVLENBQUM7U0FBQztRQUMxQlQsTUFBTTtRQUNOVyxRQUFRO1lBQUM7Z0JBQUVYLE1BQU07Z0JBQVFHLFVBQVU7WUFBWTtTQUFFO1FBQ2pEUyxNQUFNLENBQUMsaUNBQWlDLENBQUM7SUFDMUMsR0FDQ0osWUFBWSxDQUFDO1FBQ2JDLFlBQVk7WUFBQyxDQUFDLFlBQVksQ0FBQztTQUFDO1FBQzVCVCxNQUFNO1FBQ05XLFFBQVE7WUFDUDtnQkFBRVQsV0FBVyxDQUFDLFlBQVksQ0FBQztnQkFBRUYsTUFBTTtnQkFBTUcsVUFBVTtZQUFTO1lBQzVEO2dCQUFFSCxNQUFNO2dCQUFRRyxVQUFVO1lBQVk7U0FDdEM7UUFDRFMsTUFBTSxDQUFDLHFDQUFxQyxDQUFDO0lBQzlDLEdBQ0NKLFlBQVksQ0FBQztRQUNiQyxZQUFZO1lBQUMsQ0FBQyxlQUFlLENBQUM7U0FBQztRQUMvQlQsTUFBTTtRQUNOVyxRQUFRO1lBQUM7Z0JBQUVULFdBQVcsQ0FBQyxZQUFZLENBQUM7Z0JBQUVGLE1BQU07Z0JBQU1HLFVBQVU7WUFBUztTQUFFO1FBQ3ZFUyxNQUFNLENBQUMsNkJBQTZCLENBQUM7SUFDdEM7QUFDRiJ9
@@ -1,85 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: Object.getOwnPropertyDescriptor(all, name).get
9
- });
10
- }
11
- _export(exports, {
12
- get MAIN_TS_KEY () {
13
- return MAIN_TS_KEY;
14
- },
15
- get MainTsModel () {
16
- return MainTsModel;
17
- }
18
- });
19
- const _importmap = require("../../domain/import-map.js");
20
- const _index = require("../../domain/index.js");
21
- const MAIN_TS_KEY = (0, _index.modelKey)("main-ts");
22
- class MainTsModel {
23
- _applicationName;
24
- _imports;
25
- _builderChain;
26
- _controllers = [];
27
- constructor(applicationName){
28
- this._applicationName = applicationName;
29
- // Standard framework imports — insertion order matches desired output order.
30
- this._imports = new _importmap.ImportMap().add("@decohere/scribe-pino").add("@decohere/cortex/http").add("@decohere/cortex/auth").add("@decohere/protocol").add("@decohere/cortex", "Builder").add("@decohere/cortex/providers", "FastifyProvider").add("@decohere/scribe", "scribe").add("@decohere/protocol", "YamlDataSource").add("./sample.service.js", "SampleService");
31
- // Standard builder chain — features append; render appends .withControllers + .build.
32
- this._builderChain = [
33
- `.withHttpProvider(FastifyProvider)`,
34
- `.withConfiguration(YamlDataSource)`,
35
- `.withAuth()`,
36
- `.withServices((cb) => { cb.registerSingleton(SampleService); })`
37
- ];
38
- }
39
- // ── feature API ──────────────────────────────────────────────────────────
40
- /** Add named value imports (or side-effect when called with no names). */ addImport(pkg, ...names) {
41
- this._imports.add(pkg, ...names);
42
- return this;
43
- }
44
- /** Add named type-only imports. */ addTypeImport(pkg, ...names) {
45
- this._imports.addType(pkg, ...names);
46
- return this;
47
- }
48
- /**
49
- * Append a builder chain call inserted between `.withServices(…)` and
50
- * `.withControllers(…)`. Pass the call with its leading dot,
51
- * e.g. `.withTypeOrm({ … })`.
52
- */ appendBuilderChain(call) {
53
- this._builderChain.push(call);
54
- return this;
55
- }
56
- // ── render-phase API ─────────────────────────────────────────────────────
57
- /** Register a controller; adds its import and queues it for withControllers(). */ addController(model) {
58
- const importPath = `./controllers/${model.fileName.replace(/\.ts$/, ".js")}`;
59
- this._imports.add(importPath, model.className);
60
- this._controllers.push({
61
- className: model.className,
62
- importPath
63
- });
64
- return this;
65
- }
66
- // ── rendering ─────────────────────────────────────────────────────────────
67
- render() {
68
- const controllersArg = this._controllers.map((c)=>c.className).join(", ");
69
- const chainCalls = [
70
- ...this._builderChain,
71
- `.withControllers(${controllersArg})`,
72
- `.build();`
73
- ].map((call)=>`\t${call}`).join("\n");
74
- const importSection = this._imports.render().join("\n");
75
- return `${[
76
- importSection,
77
- `scribe.extend.withPinoPretty();`,
78
- `const app = await Builder.create({ applicationName: "${this._applicationName}" })\n${chainCalls}`,
79
- `await app.start({ port: 3000 });`,
80
- `export default app;`
81
- ].join("\n\n")}\n`;
82
- }
83
- }
84
-
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS92MS9mZWF0dXJlcy9hcGktY29yZS9tYWluLXRzLm1vZGVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ2xhc3NNb2RlbCB9IGZyb20gXCIuLi8uLi9kb21haW4vY2xhc3MtbW9kZWwuanNcIjtcbmltcG9ydCB7IEltcG9ydE1hcCB9IGZyb20gXCIuLi8uLi9kb21haW4vaW1wb3J0LW1hcC5qc1wiO1xuaW1wb3J0IHsgbW9kZWxLZXkgfSBmcm9tIFwiLi4vLi4vZG9tYWluL2luZGV4LmpzXCI7XG5cbi8qKiBLZXkgZm9yIHJldHJpZXZpbmcgdGhlIE1haW5Uc01vZGVsIGZyb20gdGhlIEZlYXR1cmVNb2RlbFN0b3JlLiAqL1xuZXhwb3J0IGNvbnN0IE1BSU5fVFNfS0VZID0gbW9kZWxLZXk8TWFpblRzTW9kZWw+KFwibWFpbi10c1wiKTtcblxuLyoqXG4gKiBMaXZlIGJ1aWxkZXIgZm9yIGBwcm9qZWN0cy9hcGkvc3JjL21haW4udHNgLlxuICpcbiAqIFRoZSBhcGktY29yZSBmZWF0dXJlIGNyZWF0ZXMgYW4gaW5zdGFuY2UgaW4gaXRzIGBjb25maWd1cmVgIHBoYXNlLlxuICogT3RoZXIgZmVhdHVyZXMgKHR5cGVvcm0sIGF1dGgwLCDigKYpIGNhbGwgYGFkZEltcG9ydGAgLyBgYXBwZW5kQnVpbGRlckNoYWluYFxuICogaW4gdGhlaXIgb3duIGBjb25maWd1cmVgIHBoYXNlcy4gIFRoZSBhcGktY29yZSBgcmVuZGVyYCBwaGFzZSBjYWxsc1xuICogYGFkZENvbnRyb2xsZXIobW9kZWwpYCBmb3IgZWFjaCBjb250cm9sbGVyLCB0aGVuIGByZW5kZXIoKWAuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYWluVHNNb2RlbCB7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2FwcGxpY2F0aW9uTmFtZTogc3RyaW5nO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9pbXBvcnRzOiBJbXBvcnRNYXA7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2J1aWxkZXJDaGFpbjogc3RyaW5nW107XG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbnRyb2xsZXJzOiBBcnJheTx7IGNsYXNzTmFtZTogc3RyaW5nOyBpbXBvcnRQYXRoOiBzdHJpbmcgfT4gPSBbXTtcblxuXHRwdWJsaWMgY29uc3RydWN0b3IoYXBwbGljYXRpb25OYW1lOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9hcHBsaWNhdGlvbk5hbWUgPSBhcHBsaWNhdGlvbk5hbWU7XG5cblx0XHQvLyBTdGFuZGFyZCBmcmFtZXdvcmsgaW1wb3J0cyDigJQgaW5zZXJ0aW9uIG9yZGVyIG1hdGNoZXMgZGVzaXJlZCBvdXRwdXQgb3JkZXIuXG5cdFx0dGhpcy5faW1wb3J0cyA9IG5ldyBJbXBvcnRNYXAoKVxuXHRcdFx0LmFkZChcIkBkZWNvaGVyZS9zY3JpYmUtcGlub1wiKVxuXHRcdFx0LmFkZChcIkBkZWNvaGVyZS9jb3J0ZXgvaHR0cFwiKVxuXHRcdFx0LmFkZChcIkBkZWNvaGVyZS9jb3J0ZXgvYXV0aFwiKVxuXHRcdFx0LmFkZChcIkBkZWNvaGVyZS9wcm90b2NvbFwiKVxuXHRcdFx0LmFkZChcIkBkZWNvaGVyZS9jb3J0ZXhcIiwgXCJCdWlsZGVyXCIpXG5cdFx0XHQuYWRkKFwiQGRlY29oZXJlL2NvcnRleC9wcm92aWRlcnNcIiwgXCJGYXN0aWZ5UHJvdmlkZXJcIilcblx0XHRcdC5hZGQoXCJAZGVjb2hlcmUvc2NyaWJlXCIsIFwic2NyaWJlXCIpXG5cdFx0XHQuYWRkKFwiQGRlY29oZXJlL3Byb3RvY29sXCIsIFwiWWFtbERhdGFTb3VyY2VcIilcblx0XHRcdC5hZGQoXCIuL3NhbXBsZS5zZXJ2aWNlLmpzXCIsIFwiU2FtcGxlU2VydmljZVwiKTtcblxuXHRcdC8vIFN0YW5kYXJkIGJ1aWxkZXIgY2hhaW4g4oCUIGZlYXR1cmVzIGFwcGVuZDsgcmVuZGVyIGFwcGVuZHMgLndpdGhDb250cm9sbGVycyArIC5idWlsZC5cblx0XHR0aGlzLl9idWlsZGVyQ2hhaW4gPSBbXG5cdFx0XHRgLndpdGhIdHRwUHJvdmlkZXIoRmFzdGlmeVByb3ZpZGVyKWAsXG5cdFx0XHRgLndpdGhDb25maWd1cmF0aW9uKFlhbWxEYXRhU291cmNlKWAsXG5cdFx0XHRgLndpdGhBdXRoKClgLFxuXHRcdFx0YC53aXRoU2VydmljZXMoKGNiKSA9PiB7IGNiLnJlZ2lzdGVyU2luZ2xldG9uKFNhbXBsZVNlcnZpY2UpOyB9KWAsXG5cdFx0XTtcblx0fVxuXG5cdC8vIOKUgOKUgCBmZWF0dXJlIEFQSSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuXHQvKiogQWRkIG5hbWVkIHZhbHVlIGltcG9ydHMgKG9yIHNpZGUtZWZmZWN0IHdoZW4gY2FsbGVkIHdpdGggbm8gbmFtZXMpLiAqL1xuXHRwdWJsaWMgYWRkSW1wb3J0KHBrZzogc3RyaW5nLCAuLi5uYW1lczogc3RyaW5nW10pOiB0aGlzIHtcblx0XHR0aGlzLl9pbXBvcnRzLmFkZChwa2csIC4uLm5hbWVzKTtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxuXG5cdC8qKiBBZGQgbmFtZWQgdHlwZS1vbmx5IGltcG9ydHMuICovXG5cdHB1YmxpYyBhZGRUeXBlSW1wb3J0KHBrZzogc3RyaW5nLCAuLi5uYW1lczogc3RyaW5nW10pOiB0aGlzIHtcblx0XHR0aGlzLl9pbXBvcnRzLmFkZFR5cGUocGtnLCAuLi5uYW1lcyk7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvKipcblx0ICogQXBwZW5kIGEgYnVpbGRlciBjaGFpbiBjYWxsIGluc2VydGVkIGJldHdlZW4gYC53aXRoU2VydmljZXMo4oCmKWAgYW5kXG5cdCAqIGAud2l0aENvbnRyb2xsZXJzKOKApilgLiAgUGFzcyB0aGUgY2FsbCB3aXRoIGl0cyBsZWFkaW5nIGRvdCxcblx0ICogZS5nLiBgLndpdGhUeXBlT3JtKHsg4oCmIH0pYC5cblx0ICovXG5cdHB1YmxpYyBhcHBlbmRCdWlsZGVyQ2hhaW4oY2FsbDogc3RyaW5nKTogdGhpcyB7XG5cdFx0dGhpcy5fYnVpbGRlckNoYWluLnB1c2goY2FsbCk7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvLyDilIDilIAgcmVuZGVyLXBoYXNlIEFQSSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuXHQvKiogUmVnaXN0ZXIgYSBjb250cm9sbGVyOyBhZGRzIGl0cyBpbXBvcnQgYW5kIHF1ZXVlcyBpdCBmb3Igd2l0aENvbnRyb2xsZXJzKCkuICovXG5cdHB1YmxpYyBhZGRDb250cm9sbGVyKG1vZGVsOiBDbGFzc01vZGVsKTogdGhpcyB7XG5cdFx0Y29uc3QgaW1wb3J0UGF0aCA9IGAuL2NvbnRyb2xsZXJzLyR7bW9kZWwuZmlsZU5hbWUucmVwbGFjZSgvXFwudHMkLywgXCIuanNcIil9YDtcblx0XHR0aGlzLl9pbXBvcnRzLmFkZChpbXBvcnRQYXRoLCBtb2RlbC5jbGFzc05hbWUpO1xuXHRcdHRoaXMuX2NvbnRyb2xsZXJzLnB1c2goeyBjbGFzc05hbWU6IG1vZGVsLmNsYXNzTmFtZSwgaW1wb3J0UGF0aCB9KTtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxuXG5cdC8vIOKUgOKUgCByZW5kZXJpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cblx0cHVibGljIHJlbmRlcigpOiBzdHJpbmcge1xuXHRcdGNvbnN0IGNvbnRyb2xsZXJzQXJnID0gdGhpcy5fY29udHJvbGxlcnMubWFwKChjKSA9PiBjLmNsYXNzTmFtZSkuam9pbihcIiwgXCIpO1xuXG5cdFx0Y29uc3QgY2hhaW5DYWxscyA9IFtcblx0XHRcdC4uLnRoaXMuX2J1aWxkZXJDaGFpbixcblx0XHRcdGAud2l0aENvbnRyb2xsZXJzKCR7Y29udHJvbGxlcnNBcmd9KWAsXG5cdFx0XHRgLmJ1aWxkKCk7YCxcblx0XHRdXG5cdFx0XHQubWFwKChjYWxsKSA9PiBgXFx0JHtjYWxsfWApXG5cdFx0XHQuam9pbihcIlxcblwiKTtcblxuXHRcdGNvbnN0IGltcG9ydFNlY3Rpb24gPSB0aGlzLl9pbXBvcnRzLnJlbmRlcigpLmpvaW4oXCJcXG5cIik7XG5cblx0XHRyZXR1cm4gYCR7W1xuXHRcdFx0aW1wb3J0U2VjdGlvbixcblx0XHRcdGBzY3JpYmUuZXh0ZW5kLndpdGhQaW5vUHJldHR5KCk7YCxcblx0XHRcdGBjb25zdCBhcHAgPSBhd2FpdCBCdWlsZGVyLmNyZWF0ZSh7IGFwcGxpY2F0aW9uTmFtZTogXCIke3RoaXMuX2FwcGxpY2F0aW9uTmFtZX1cIiB9KVxcbiR7Y2hhaW5DYWxsc31gLFxuXHRcdFx0YGF3YWl0IGFwcC5zdGFydCh7IHBvcnQ6IDMwMDAgfSk7YCxcblx0XHRcdGBleHBvcnQgZGVmYXVsdCBhcHA7YCxcblx0XHRdLmpvaW4oXCJcXG5cXG5cIil9XFxuYDtcblx0fVxufVxuIl0sIm5hbWVzIjpbIk1BSU5fVFNfS0VZIiwiTWFpblRzTW9kZWwiLCJtb2RlbEtleSIsIl9hcHBsaWNhdGlvbk5hbWUiLCJfaW1wb3J0cyIsIl9idWlsZGVyQ2hhaW4iLCJfY29udHJvbGxlcnMiLCJhcHBsaWNhdGlvbk5hbWUiLCJJbXBvcnRNYXAiLCJhZGQiLCJhZGRJbXBvcnQiLCJwa2ciLCJuYW1lcyIsImFkZFR5cGVJbXBvcnQiLCJhZGRUeXBlIiwiYXBwZW5kQnVpbGRlckNoYWluIiwiY2FsbCIsInB1c2giLCJhZGRDb250cm9sbGVyIiwibW9kZWwiLCJpbXBvcnRQYXRoIiwiZmlsZU5hbWUiLCJyZXBsYWNlIiwiY2xhc3NOYW1lIiwicmVuZGVyIiwiY29udHJvbGxlcnNBcmciLCJtYXAiLCJjIiwiam9pbiIsImNoYWluQ2FsbHMiLCJpbXBvcnRTZWN0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztRQUthQTtlQUFBQTs7UUFVQUM7ZUFBQUE7OzsyQkFkYTt1QkFDRDtBQUdsQixNQUFNRCxjQUFjRSxJQUFBQSxlQUFRLEVBQWM7QUFVMUMsTUFBTUQ7SUFDS0UsaUJBQXlCO0lBQ3pCQyxTQUFvQjtJQUNwQkMsY0FBd0I7SUFDeEJDLGVBQWlFLEVBQUUsQ0FBQztJQUVyRixZQUFtQkMsZUFBdUIsQ0FBRTtRQUMzQyxJQUFJLENBQUNKLGdCQUFnQixHQUFHSTtRQUV4Qiw2RUFBNkU7UUFDN0UsSUFBSSxDQUFDSCxRQUFRLEdBQUcsSUFBSUksb0JBQVMsR0FDM0JDLEdBQUcsQ0FBQyx5QkFDSkEsR0FBRyxDQUFDLHlCQUNKQSxHQUFHLENBQUMseUJBQ0pBLEdBQUcsQ0FBQyxzQkFDSkEsR0FBRyxDQUFDLG9CQUFvQixXQUN4QkEsR0FBRyxDQUFDLDhCQUE4QixtQkFDbENBLEdBQUcsQ0FBQyxvQkFBb0IsVUFDeEJBLEdBQUcsQ0FBQyxzQkFBc0Isa0JBQzFCQSxHQUFHLENBQUMsdUJBQXVCO1FBRTdCLHNGQUFzRjtRQUN0RixJQUFJLENBQUNKLGFBQWEsR0FBRztZQUNwQixDQUFDLGtDQUFrQyxDQUFDO1lBQ3BDLENBQUMsa0NBQWtDLENBQUM7WUFDcEMsQ0FBQyxXQUFXLENBQUM7WUFDYixDQUFDLCtEQUErRCxDQUFDO1NBQ2pFO0lBQ0Y7SUFFQSw0RUFBNEU7SUFFNUUsd0VBQXdFLEdBQ3hFLEFBQU9LLFVBQVVDLEdBQVcsRUFBRSxHQUFHQyxLQUFlLEVBQVE7UUFDdkQsSUFBSSxDQUFDUixRQUFRLENBQUNLLEdBQUcsQ0FBQ0UsUUFBUUM7UUFDMUIsT0FBTyxJQUFJO0lBQ1o7SUFFQSxpQ0FBaUMsR0FDakMsQUFBT0MsY0FBY0YsR0FBVyxFQUFFLEdBQUdDLEtBQWUsRUFBUTtRQUMzRCxJQUFJLENBQUNSLFFBQVEsQ0FBQ1UsT0FBTyxDQUFDSCxRQUFRQztRQUM5QixPQUFPLElBQUk7SUFDWjtJQUVBOzs7O0VBSUMsR0FDRCxBQUFPRyxtQkFBbUJDLElBQVksRUFBUTtRQUM3QyxJQUFJLENBQUNYLGFBQWEsQ0FBQ1ksSUFBSSxDQUFDRDtRQUN4QixPQUFPLElBQUk7SUFDWjtJQUVBLDRFQUE0RTtJQUU1RSxnRkFBZ0YsR0FDaEYsQUFBT0UsY0FBY0MsS0FBaUIsRUFBUTtRQUM3QyxNQUFNQyxhQUFhLENBQUMsY0FBYyxFQUFFRCxNQUFNRSxRQUFRLENBQUNDLE9BQU8sQ0FBQyxTQUFTLFFBQVE7UUFDNUUsSUFBSSxDQUFDbEIsUUFBUSxDQUFDSyxHQUFHLENBQUNXLFlBQVlELE1BQU1JLFNBQVM7UUFDN0MsSUFBSSxDQUFDakIsWUFBWSxDQUFDVyxJQUFJLENBQUM7WUFBRU0sV0FBV0osTUFBTUksU0FBUztZQUFFSDtRQUFXO1FBQ2hFLE9BQU8sSUFBSTtJQUNaO0lBRUEsNkVBQTZFO0lBRXRFSSxTQUFpQjtRQUN2QixNQUFNQyxpQkFBaUIsSUFBSSxDQUFDbkIsWUFBWSxDQUFDb0IsR0FBRyxDQUFDLENBQUNDLElBQU1BLEVBQUVKLFNBQVMsRUFBRUssSUFBSSxDQUFDO1FBRXRFLE1BQU1DLGFBQWE7ZUFDZixJQUFJLENBQUN4QixhQUFhO1lBQ3JCLENBQUMsaUJBQWlCLEVBQUVvQixlQUFlLENBQUMsQ0FBQztZQUNyQyxDQUFDLFNBQVMsQ0FBQztTQUNYLENBQ0NDLEdBQUcsQ0FBQyxDQUFDVixPQUFTLENBQUMsRUFBRSxFQUFFQSxNQUFNLEVBQ3pCWSxJQUFJLENBQUM7UUFFUCxNQUFNRSxnQkFBZ0IsSUFBSSxDQUFDMUIsUUFBUSxDQUFDb0IsTUFBTSxHQUFHSSxJQUFJLENBQUM7UUFFbEQsT0FBTyxHQUFHO1lBQ1RFO1lBQ0EsQ0FBQywrQkFBK0IsQ0FBQztZQUNqQyxDQUFDLHFEQUFxRCxFQUFFLElBQUksQ0FBQzNCLGdCQUFnQixDQUFDLE1BQU0sRUFBRTBCLFlBQVk7WUFDbEcsQ0FBQyxnQ0FBZ0MsQ0FBQztZQUNsQyxDQUFDLG1CQUFtQixDQUFDO1NBQ3JCLENBQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQjtBQUNEIn0=