task-script-support-cli 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/.prettierignore +3 -0
  2. package/.prettierrc +1 -0
  3. package/.vscode/launch.json +34 -0
  4. package/README.md +3 -0
  5. package/dist/eslint.config.d.ts +3 -0
  6. package/dist/eslint.config.d.ts.map +1 -0
  7. package/dist/eslint.config.js +16 -0
  8. package/dist/eslint.config.js.map +1 -0
  9. package/dist/package.json +55 -0
  10. package/dist/src/commands/about.d.ts +7 -0
  11. package/dist/src/commands/about.d.ts.map +1 -0
  12. package/dist/src/commands/about.js +24 -0
  13. package/dist/src/commands/about.js.map +1 -0
  14. package/dist/src/commands/gen.d.ts +12 -0
  15. package/dist/src/commands/gen.d.ts.map +1 -0
  16. package/dist/src/commands/gen.js +35 -0
  17. package/dist/src/commands/gen.js.map +1 -0
  18. package/dist/src/index.d.ts +2 -0
  19. package/dist/src/index.d.ts.map +1 -0
  20. package/dist/src/index.js +34 -0
  21. package/dist/src/index.js.map +1 -0
  22. package/dist/src/services/arg-service.d.ts +10 -0
  23. package/dist/src/services/arg-service.d.ts.map +1 -0
  24. package/dist/src/services/arg-service.js +71 -0
  25. package/dist/src/services/arg-service.js.map +1 -0
  26. package/dist/src/services/banner-service.d.ts +8 -0
  27. package/dist/src/services/banner-service.d.ts.map +1 -0
  28. package/dist/src/services/banner-service.js +50 -0
  29. package/dist/src/services/banner-service.js.map +1 -0
  30. package/dist/src/services/file-service.d.ts +12 -0
  31. package/dist/src/services/file-service.d.ts.map +1 -0
  32. package/dist/src/services/file-service.js +82 -0
  33. package/dist/src/services/file-service.js.map +1 -0
  34. package/dist/src/services/log-service.d.ts +14 -0
  35. package/dist/src/services/log-service.d.ts.map +1 -0
  36. package/dist/src/services/log-service.js +61 -0
  37. package/dist/src/services/log-service.js.map +1 -0
  38. package/dist/src/services/project-service.d.ts +31 -0
  39. package/dist/src/services/project-service.d.ts.map +1 -0
  40. package/dist/src/services/project-service.js +86 -0
  41. package/dist/src/services/project-service.js.map +1 -0
  42. package/dist/src/services/spawn-service.d.ts +12 -0
  43. package/dist/src/services/spawn-service.d.ts.map +1 -0
  44. package/dist/src/services/spawn-service.js +111 -0
  45. package/dist/src/services/spawn-service.js.map +1 -0
  46. package/dist/src/services/updater-service.d.ts +7 -0
  47. package/dist/src/services/updater-service.d.ts.map +1 -0
  48. package/dist/src/services/updater-service.js +24 -0
  49. package/dist/src/services/updater-service.js.map +1 -0
  50. package/dist/src/services/util-service.d.ts +23 -0
  51. package/dist/src/services/util-service.d.ts.map +1 -0
  52. package/dist/src/services/util-service.js +89 -0
  53. package/dist/src/services/util-service.js.map +1 -0
  54. package/dist/src/tasks/check-env.d.ts +44 -0
  55. package/dist/src/tasks/check-env.d.ts.map +1 -0
  56. package/dist/src/tasks/check-env.js +126 -0
  57. package/dist/src/tasks/check-env.js.map +1 -0
  58. package/dist/src/tasks/generate-command.d.ts +23 -0
  59. package/dist/src/tasks/generate-command.d.ts.map +1 -0
  60. package/dist/src/tasks/generate-command.js +91 -0
  61. package/dist/src/tasks/generate-command.js.map +1 -0
  62. package/dist/src/tasks/generate-service.d.ts +26 -0
  63. package/dist/src/tasks/generate-service.d.ts.map +1 -0
  64. package/dist/src/tasks/generate-service.js +88 -0
  65. package/dist/src/tasks/generate-service.js.map +1 -0
  66. package/dist/src/tasks/generate-task.d.ts +26 -0
  67. package/dist/src/tasks/generate-task.d.ts.map +1 -0
  68. package/dist/src/tasks/generate-task.js +88 -0
  69. package/dist/src/tasks/generate-task.js.map +1 -0
  70. package/dist/src/tasks/print-about-information.d.ts +8 -0
  71. package/dist/src/tasks/print-about-information.d.ts.map +1 -0
  72. package/dist/src/tasks/print-about-information.js +30 -0
  73. package/dist/src/tasks/print-about-information.js.map +1 -0
  74. package/dist/src/tasks/print-banner.d.ts +12 -0
  75. package/dist/src/tasks/print-banner.d.ts.map +1 -0
  76. package/dist/src/tasks/print-banner.js +47 -0
  77. package/dist/src/tasks/print-banner.js.map +1 -0
  78. package/dist/src/tasks/print-generated-results.d.ts +12 -0
  79. package/dist/src/tasks/print-generated-results.d.ts.map +1 -0
  80. package/dist/src/tasks/print-generated-results.js +48 -0
  81. package/dist/src/tasks/print-generated-results.js.map +1 -0
  82. package/dist/src/tasks/select-gen-target.d.ts +9 -0
  83. package/dist/src/tasks/select-gen-target.d.ts.map +1 -0
  84. package/dist/src/tasks/select-gen-target.js +44 -0
  85. package/dist/src/tasks/select-gen-target.js.map +1 -0
  86. package/dist/src/templates/command.d.ts +2 -0
  87. package/dist/src/templates/command.d.ts.map +1 -0
  88. package/dist/src/templates/command.js +19 -0
  89. package/dist/src/templates/command.js.map +1 -0
  90. package/dist/src/templates/service.d.ts +2 -0
  91. package/dist/src/templates/service.d.ts.map +1 -0
  92. package/dist/src/templates/service.js +16 -0
  93. package/dist/src/templates/service.js.map +1 -0
  94. package/dist/src/templates/task.d.ts +2 -0
  95. package/dist/src/templates/task.d.ts.map +1 -0
  96. package/dist/src/templates/task.js +20 -0
  97. package/dist/src/templates/task.js.map +1 -0
  98. package/dist/src/types/format.d.ts +7 -0
  99. package/dist/src/types/format.d.ts.map +1 -0
  100. package/dist/src/types/format.js +11 -0
  101. package/dist/src/types/format.js.map +1 -0
  102. package/dist/src/types/process.d.ts +16 -0
  103. package/dist/src/types/process.d.ts.map +1 -0
  104. package/dist/src/types/process.js +12 -0
  105. package/dist/src/types/process.js.map +1 -0
  106. package/dist/src/types/state.d.ts +26 -0
  107. package/dist/src/types/state.d.ts.map +1 -0
  108. package/dist/src/types/state.js +17 -0
  109. package/dist/src/types/state.js.map +1 -0
  110. package/dist/src/wrappers/app-task.d.ts +19 -0
  111. package/dist/src/wrappers/app-task.d.ts.map +1 -0
  112. package/dist/src/wrappers/app-task.js +61 -0
  113. package/dist/src/wrappers/app-task.js.map +1 -0
  114. package/dist/src/wrappers/command.d.ts +11 -0
  115. package/dist/src/wrappers/command.d.ts.map +1 -0
  116. package/dist/src/wrappers/command.js +36 -0
  117. package/dist/src/wrappers/command.js.map +1 -0
  118. package/dist/tssc +3 -0
  119. package/eslint.config.ts +11 -0
  120. package/install-link.sh +21 -0
  121. package/package.json +55 -0
  122. package/setup.md +37 -0
  123. package/src/commands/about.ts +9 -0
  124. package/src/commands/gen.ts +20 -0
  125. package/src/index.ts +38 -0
  126. package/src/services/arg-service.ts +52 -0
  127. package/src/services/banner-service.ts +42 -0
  128. package/src/services/file-service.ts +78 -0
  129. package/src/services/log-service.ts +43 -0
  130. package/src/services/project-service.ts +72 -0
  131. package/src/services/spawn-service.ts +73 -0
  132. package/src/services/updater-service.ts +9 -0
  133. package/src/services/util-service.ts +87 -0
  134. package/src/tasks/check-env.ts +125 -0
  135. package/src/tasks/generate-command.ts +87 -0
  136. package/src/tasks/generate-service.ts +82 -0
  137. package/src/tasks/generate-task.ts +83 -0
  138. package/src/tasks/print-about-information.ts +16 -0
  139. package/src/tasks/print-banner.ts +37 -0
  140. package/src/tasks/print-generated-results.ts +36 -0
  141. package/src/tasks/select-gen-target.ts +29 -0
  142. package/src/templates/command.ts +18 -0
  143. package/src/templates/service.ts +12 -0
  144. package/src/templates/task.ts +16 -0
  145. package/src/types/format.ts +6 -0
  146. package/src/types/process.ts +18 -0
  147. package/src/types/state.ts +29 -0
  148. package/src/wrappers/app-task.ts +48 -0
  149. package/src/wrappers/command.ts +21 -0
  150. package/tsconfig.json +27 -0
  151. package/tssc +3 -0
@@ -0,0 +1,3 @@
1
+ # Ignore artifacts:
2
+ build
3
+ coverage
package/.prettierrc ADDED
@@ -0,0 +1 @@
1
+ {}
@@ -0,0 +1,34 @@
1
+ {
2
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
3
+ "version": "0.2.0",
4
+ "configurations": [
5
+ {
6
+ "name": "Start About",
7
+ "request": "launch",
8
+ "runtimeArgs": ["start", "--", "about"],
9
+ "runtimeExecutable": "npm",
10
+ "skipFiles": ["<node_internals>/**"],
11
+ "type": "node"
12
+ },
13
+
14
+ {
15
+ "name": "Start Gen Service",
16
+ "request": "launch",
17
+ "runtimeArgs": ["start", "--", "gen", "-s", "-n", "Updater Service"],
18
+ "runtimeExecutable": "npm",
19
+ "skipFiles": ["<node_internals>/**"],
20
+ "type": "node"
21
+ },
22
+
23
+ {
24
+ "type": "node",
25
+ "request": "launch",
26
+ "name": "Build & Run About",
27
+ "skipFiles": ["<node_internals>/**"],
28
+ "program": "${workspaceFolder}/dist/src/index.js",
29
+ "preLaunchTask": "tsc: build - tsconfig.json",
30
+ "outFiles": ["${workspaceFolder}/dist/**/*.js"],
31
+ "args": ["about"]
32
+ }
33
+ ]
34
+ }
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ ### tssc
2
+
3
+ CLI helper for task-script-support projects.
@@ -0,0 +1,3 @@
1
+ declare const _default: import("@eslint/config-helpers").Config[];
2
+ export default _default;
3
+ //# sourceMappingURL=eslint.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint.config.d.ts","sourceRoot":"./src/","sources":["eslint.config.ts"],"names":[],"mappings":";AAIA,wBAMG"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const js_1 = __importDefault(require("@eslint/js"));
7
+ const config_1 = require("eslint/config");
8
+ const typescript_eslint_1 = __importDefault(require("typescript-eslint"));
9
+ exports.default = (0, config_1.defineConfig)([
10
+ {
11
+ extends: [js_1.default.configs.recommended, typescript_eslint_1.default.configs.recommended],
12
+ files: ["./src/**/*.ts", "./tests/**/*.ts"],
13
+ },
14
+ (0, config_1.globalIgnores)(["dist/*"]),
15
+ ]);
16
+ //# sourceMappingURL=eslint.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint.config.js","sourceRoot":"./src/","sources":["eslint.config.ts"],"names":[],"mappings":";;;;;AAAA,oDAAgC;AAChC,0CAA4D;AAC5D,0EAAyC;AAEzC,kBAAe,IAAA,qBAAY,EAAC;IAC1B;QACE,OAAO,EAAE,CAAC,YAAM,CAAC,OAAO,CAAC,WAAW,EAAE,2BAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;QACnE,KAAK,EAAE,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAC5C;IACD,IAAA,sBAAa,EAAC,CAAC,QAAQ,CAAC,CAAC;CAC1B,CAAC,CAAC"}
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "task-script-support-cli",
3
+ "version": "0.1.1",
4
+ "main": "index.js",
5
+ "type": "commonjs",
6
+ "preferGlobal": true,
7
+ "bin": {
8
+ "tssc": "./dist/tssc"
9
+ },
10
+ "scripts": {
11
+ "start": "jiti src/index.ts",
12
+ "dev": "npm run build && node dist/src/index.js",
13
+ "clean": "rm -rf ./dist",
14
+ "lint": "eslint --config eslint.config.ts",
15
+ "cpsh": "cp ./tssc ./dist/",
16
+ "watch": "onchange './*{.json,.sh,.ts}' 'src/*.ts' -- npm run build",
17
+ "format": "prettier --write ./",
18
+ "format-check": "prettier --check .",
19
+ "hooks-one-time-setup": "npx simple-git-hooks",
20
+ "prettier-watch": "onchange \"**/*\" -- prettier --write --ignore-unknown {{changed}}",
21
+ "build": "rm -rf ./dist && npx tsc && node dist/src/index.js -v && npm run cpsh",
22
+ "test": "vitest run",
23
+ "test-watch": "vitest"
24
+ },
25
+ "keywords": [],
26
+ "author": "",
27
+ "license": "ISC",
28
+ "description": "Helps scaffold things in a Task Script Support Project",
29
+ "simple-git-hooks": {
30
+ "pre-commit": "npx pretty-quick --staged && npm run lint"
31
+ },
32
+ "dependencies": {
33
+ "chalk": "^4.1.2",
34
+ "commander": "^14.0.2",
35
+ "dotenv": "^17.2.3",
36
+ "figlet": "^1.9.4",
37
+ "immutable": "^5.1.4",
38
+ "reflect-metadata": "^0.2.2",
39
+ "task-script-support": "^2.3.0",
40
+ "tsyringe": "^4.10.0"
41
+ },
42
+ "devDependencies": {
43
+ "@eslint/js": "^9.39.3",
44
+ "@types/node": "^24.10.1",
45
+ "eslint": "^10.0.3",
46
+ "jiti": "^2.6.1",
47
+ "onchange": "^7.1.0",
48
+ "prettier": "^3.7.1",
49
+ "pretty-quick": "^4.2.2",
50
+ "simple-git-hooks": "^2.13.1",
51
+ "typescript": "^5.9.3",
52
+ "typescript-eslint": "^8.48.0",
53
+ "vitest": "^4.0.15"
54
+ }
55
+ }
@@ -0,0 +1,7 @@
1
+ import { Command } from "../wrappers/command";
2
+ import PrintAboutInformation from "../tasks/print-about-information";
3
+ import PrintBanner from "../tasks/print-banner";
4
+ export declare class AboutCommand extends Command {
5
+ tasks: (typeof PrintAboutInformation | typeof PrintBanner)[];
6
+ }
7
+ //# sourceMappingURL=about.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"about.d.ts","sourceRoot":"./src/","sources":["src/commands/about.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,qBAAqB,MAAM,kCAAkC,CAAC;AACrE,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAEhD,qBACa,YAAa,SAAQ,OAAO;IACvC,KAAK,wDAAwC;CAC9C"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AboutCommand = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const command_1 = require("../wrappers/command");
15
+ const print_about_information_1 = __importDefault(require("../tasks/print-about-information"));
16
+ const print_banner_1 = __importDefault(require("../tasks/print-banner"));
17
+ let AboutCommand = class AboutCommand extends command_1.Command {
18
+ tasks = [print_banner_1.default, print_about_information_1.default];
19
+ };
20
+ exports.AboutCommand = AboutCommand;
21
+ exports.AboutCommand = AboutCommand = __decorate([
22
+ (0, tsyringe_1.singleton)()
23
+ ], AboutCommand);
24
+ //# sourceMappingURL=about.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"about.js","sourceRoot":"./src/","sources":["src/commands/about.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAqC;AACrC,iDAA8C;AAC9C,+FAAqE;AACrE,yEAAgD;AAGzC,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,iBAAO;IACvC,KAAK,GAAG,CAAC,sBAAW,EAAE,iCAAqB,CAAC,CAAC;CAC9C,CAAA;AAFY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,oBAAS,GAAE;GACC,YAAY,CAExB"}
@@ -0,0 +1,12 @@
1
+ import { Command } from "../wrappers/command";
2
+ import CheckEnvironment from "../tasks/check-env";
3
+ import PrintBanner from "../tasks/print-banner";
4
+ import SelectGenTarget from "../tasks/select-gen-target";
5
+ import GenerateService from "../tasks/generate-service";
6
+ import GenerateCommand from "../tasks/generate-command";
7
+ import GenerateTask from "../tasks/generate-task";
8
+ import PrintGeneratedResults from "../tasks/print-generated-results";
9
+ export declare class GenCommand extends Command {
10
+ tasks: (typeof PrintBanner | typeof CheckEnvironment | typeof SelectGenTarget | typeof PrintGeneratedResults | (typeof GenerateService | typeof GenerateCommand | typeof GenerateTask)[])[];
11
+ }
12
+ //# sourceMappingURL=gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gen.d.ts","sourceRoot":"./src/","sources":["src/commands/gen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,qBAAqB,MAAM,kCAAkC,CAAC;AAErE,qBACa,UAAW,SAAQ,OAAO;IACrC,KAAK,uLAMH;CACH"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.GenCommand = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const command_1 = require("../wrappers/command");
15
+ const check_env_1 = __importDefault(require("../tasks/check-env"));
16
+ const print_banner_1 = __importDefault(require("../tasks/print-banner"));
17
+ const select_gen_target_1 = __importDefault(require("../tasks/select-gen-target"));
18
+ const generate_service_1 = __importDefault(require("../tasks/generate-service"));
19
+ const generate_command_1 = __importDefault(require("../tasks/generate-command"));
20
+ const generate_task_1 = __importDefault(require("../tasks/generate-task"));
21
+ const print_generated_results_1 = __importDefault(require("../tasks/print-generated-results"));
22
+ let GenCommand = class GenCommand extends command_1.Command {
23
+ tasks = [
24
+ print_banner_1.default,
25
+ check_env_1.default,
26
+ select_gen_target_1.default,
27
+ [generate_command_1.default, generate_service_1.default, generate_task_1.default],
28
+ print_generated_results_1.default,
29
+ ];
30
+ };
31
+ exports.GenCommand = GenCommand;
32
+ exports.GenCommand = GenCommand = __decorate([
33
+ (0, tsyringe_1.singleton)()
34
+ ], GenCommand);
35
+ //# sourceMappingURL=gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gen.js","sourceRoot":"./src/","sources":["src/commands/gen.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAqC;AACrC,iDAA8C;AAC9C,mEAAkD;AAClD,yEAAgD;AAChD,mFAAyD;AACzD,iFAAwD;AACxD,iFAAwD;AACxD,2EAAkD;AAClD,+FAAqE;AAG9D,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,iBAAO;IACrC,KAAK,GAAG;QACN,sBAAW;QACX,mBAAgB;QAChB,2BAAe;QACf,CAAC,0BAAe,EAAE,0BAAe,EAAE,uBAAY,CAAC;QAChD,iCAAqB;KACtB,CAAC;CACH,CAAA;AARY,gCAAU;qBAAV,UAAU;IADtB,IAAA,oBAAS,GAAE;GACC,UAAU,CAQtB"}
@@ -0,0 +1,2 @@
1
+ import "reflect-metadata";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"./src/","sources":["src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ require("reflect-metadata");
7
+ const dotenv_1 = __importDefault(require("dotenv"));
8
+ const tsyringe_1 = require("tsyringe");
9
+ const commander_1 = __importDefault(require("commander"));
10
+ dotenv_1.default.config({ quiet: true });
11
+ const util_service_1 = require("./services/util-service");
12
+ // initialize manual injectables
13
+ util_service_1.UtilService.initializeDependencies();
14
+ const about_1 = require("./commands/about");
15
+ const gen_1 = require("./commands/gen");
16
+ const { program } = commander_1.default;
17
+ const name = util_service_1.UtilService.getAppName();
18
+ const version = util_service_1.UtilService.getAppVersion();
19
+ program
20
+ .version(`${name} version: ${version}`, "-v, --version")
21
+ .description(`${name.split("-").map(util_service_1.UtilService.titleize).join(" ")} Client`);
22
+ program
23
+ .command("about")
24
+ .action(tsyringe_1.container.resolve(about_1.AboutCommand).handler)
25
+ .option("--rf, --random-font", "use a random font for app banner");
26
+ program
27
+ .command("gen")
28
+ .option("-n, --target-name <name>", "Name of Generated Target")
29
+ .option("-s, --service", "Generate a service")
30
+ .option("-c, --command", "Generate a command")
31
+ .option("-t, --task", "Generate a task")
32
+ .action(tsyringe_1.container.resolve(gen_1.GenCommand).handler);
33
+ program.parse(process.argv);
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"./src/","sources":["src/index.ts"],"names":[],"mappings":";;;;;AAAA,4BAA0B;AAE1B,oDAA4B;AAC5B,uCAAqC;AACrC,0DAAkC;AAElC,gBAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAE/B,0DAAsD;AAEtD,gCAAgC;AAChC,0BAAW,CAAC,sBAAsB,EAAE,CAAC;AAErC,4CAAgD;AAChD,wCAA4C;AAE5C,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAS,CAAC;AAC9B,MAAM,IAAI,GAAG,0BAAW,CAAC,UAAU,EAAE,CAAC;AACtC,MAAM,OAAO,GAAG,0BAAW,CAAC,aAAa,EAAE,CAAC;AAE5C,OAAO;KACJ,OAAO,CAAC,GAAG,IAAI,aAAa,OAAO,EAAE,EAAE,eAAe,CAAC;KACvD,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,0BAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAEhF,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CAAC,oBAAS,CAAC,OAAO,CAAC,oBAAY,CAAC,CAAC,OAAO,CAAC;KAC/C,MAAM,CAAC,qBAAqB,EAAE,kCAAkC,CAAC,CAAC;AAErE,OAAO;KACJ,OAAO,CAAC,KAAK,CAAC;KACd,MAAM,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;KAC9D,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC;KAC7C,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC;KAC7C,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC;KACvC,MAAM,CAAC,oBAAS,CAAC,OAAO,CAAC,gBAAU,CAAC,CAAC,OAAO,CAAC,CAAC;AAEjD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { CLIArg } from "../types/process";
2
+ export declare class ArgService {
3
+ private args?;
4
+ constructor(args?: CLIArg[] | undefined);
5
+ getOption<T = string>(longNameOption: string): T;
6
+ hasFlag(flag: string): CLIArg | undefined;
7
+ cleanTargetName(name: string): string;
8
+ getTargetName(): string | undefined;
9
+ }
10
+ //# sourceMappingURL=arg-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arg-service.d.ts","sourceRoot":"./src/","sources":["src/services/arg-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAyB,MAAM,kBAAkB,CAAC;AAGjE,qBACa,UAAU;IACO,OAAO,CAAC,IAAI,CAAC;gBAAL,IAAI,CAAC,EAAE,MAAM,EAAE,YAAA;IAEnD,SAAS,CAAC,CAAC,GAAG,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;IAqBhD,OAAO,CAAC,IAAI,EAAE,MAAM;IAWpB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIrC,aAAa,IAAI,MAAM,GAAG,SAAS;CAOpC"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ArgService = void 0;
16
+ const tsyringe_1 = require("tsyringe");
17
+ const process_1 = require("../types/process");
18
+ const util_service_1 = require("./util-service");
19
+ let ArgService = class ArgService {
20
+ args;
21
+ constructor(args) {
22
+ this.args = args;
23
+ }
24
+ getOption(longNameOption) {
25
+ if (!this.args) {
26
+ throw new Error("Missing Arguments in ArgService!");
27
+ }
28
+ const argObjects = [];
29
+ for (const a of this.args) {
30
+ if (Array.isArray(a) || typeof a === "string")
31
+ continue;
32
+ argObjects.push(a);
33
+ }
34
+ const found = argObjects.find((arg) => arg[longNameOption] !== undefined);
35
+ if (found) {
36
+ return found[longNameOption];
37
+ }
38
+ else {
39
+ throw new Error(`Unable to resolve argument option ${longNameOption}`);
40
+ }
41
+ }
42
+ hasFlag(flag) {
43
+ if (!this.args) {
44
+ throw new Error("Missing Arguments in ArgService!");
45
+ }
46
+ return this.args.find((arg) => {
47
+ if (typeof arg === "string")
48
+ return false;
49
+ if (Array.isArray(arg))
50
+ return false;
51
+ return arg[flag] !== undefined;
52
+ });
53
+ }
54
+ cleanTargetName(name) {
55
+ return util_service_1.UtilService.titleizeAll(name);
56
+ }
57
+ getTargetName() {
58
+ if (!this.hasFlag(process_1.CLIOptions.targetName)) {
59
+ return undefined;
60
+ }
61
+ const argInput = this.getOption(process_1.CLIOptions.targetName);
62
+ return this.cleanTargetName(argInput);
63
+ }
64
+ };
65
+ exports.ArgService = ArgService;
66
+ exports.ArgService = ArgService = __decorate([
67
+ (0, tsyringe_1.singleton)(),
68
+ __param(0, (0, tsyringe_1.inject)("Args")),
69
+ __metadata("design:paramtypes", [Array])
70
+ ], ArgService);
71
+ //# sourceMappingURL=arg-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arg-service.js","sourceRoot":"./src/","sources":["src/services/arg-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAA6C;AAC7C,8CAAiE;AACjE,iDAA6C;AAGtC,IAAM,UAAU,GAAhB,MAAM,UAAU;IACe;IAApC,YAAoC,IAAe;QAAf,SAAI,GAAJ,IAAI,CAAW;IAAG,CAAC;IAEvD,SAAS,CAAa,cAAsB;QAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,UAAU,GAAgB,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,SAAS;YACxD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAC3B,CAAC,GAAc,EAAE,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,SAAS,CACtD,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC,cAAc,CAAM,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,qCAAqC,cAAc,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC5B,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YACrC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,IAAY;QAC1B,OAAO,0BAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACzC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAU,CAAC,UAAU,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;CACF,CAAA;AA9CY,gCAAU;qBAAV,UAAU;IADtB,IAAA,oBAAS,GAAE;IAEG,WAAA,IAAA,iBAAM,EAAC,MAAM,CAAC,CAAA;;GADhB,UAAU,CA8CtB"}
@@ -0,0 +1,8 @@
1
+ export declare class BannerService {
2
+ _selectFonts: string[];
3
+ defaultFontFamily: string;
4
+ toBanner(text: string, font?: string): Promise<string>;
5
+ getSupportedFonts(): Promise<string[]>;
6
+ getRandomFont(): Promise<string>;
7
+ }
8
+ //# sourceMappingURL=banner-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner-service.d.ts","sourceRoot":"./src/","sources":["src/services/banner-service.ts"],"names":[],"mappings":"AAGA,qBACa,aAAa;IACxB,YAAY,WAWV;IACF,iBAAiB,EAAE,MAAM,CAAW;IAE9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMtD,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAQtC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;CAQvC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BannerService = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const figlet_1 = __importDefault(require("figlet"));
15
+ let BannerService = class BannerService {
16
+ _selectFonts = [
17
+ "AMC Slash",
18
+ "Calvin S",
19
+ "Bell",
20
+ "Pagga",
21
+ "Shadow",
22
+ "Small Block",
23
+ "Cybermedium",
24
+ "Kban",
25
+ "Short",
26
+ "Coinstak",
27
+ ];
28
+ defaultFontFamily = "Pagga";
29
+ async toBanner(text, font) {
30
+ return await figlet_1.default.text(text, {
31
+ font: font || this.defaultFontFamily,
32
+ });
33
+ }
34
+ async getSupportedFonts() {
35
+ return await new Promise((res, rej) => {
36
+ figlet_1.default.fonts((err, fonts) => err ? rej(err) : res(fonts || []));
37
+ });
38
+ }
39
+ async getRandomFont() {
40
+ const randomIndexBetween = (start = 0, end = 0) => Math.floor(Math.random() * (end - start + 1)) + start;
41
+ const bannerFonts = await this.getSupportedFonts();
42
+ const randomFontIndex = randomIndexBetween(0, bannerFonts.length - 1);
43
+ return bannerFonts[randomFontIndex] || this.defaultFontFamily;
44
+ }
45
+ };
46
+ exports.BannerService = BannerService;
47
+ exports.BannerService = BannerService = __decorate([
48
+ (0, tsyringe_1.singleton)()
49
+ ], BannerService);
50
+ //# sourceMappingURL=banner-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner-service.js","sourceRoot":"./src/","sources":["src/services/banner-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAqC;AACrC,oDAA4B;AAGrB,IAAM,aAAa,GAAnB,MAAM,aAAa;IACxB,YAAY,GAAG;QACb,WAAW;QACX,UAAU;QACV,MAAM;QACN,OAAO;QACP,QAAQ;QACR,aAAa;QACb,aAAa;QACb,MAAM;QACN,OAAO;QACP,UAAU;KACX,CAAC;IACF,iBAAiB,GAAW,OAAO,CAAC;IAEpC,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAAa;QACxC,OAAO,MAAM,gBAAM,CAAC,IAAI,CAAC,IAAI,EAAE;YAC7B,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,iBAAiB;SACrC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACpC,gBAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAC1B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAK,EAAe,CAAC,CAChD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,kBAAkB,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,EAAE,CAChD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;QAExD,MAAM,WAAW,GAAa,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7D,MAAM,eAAe,GAAG,kBAAkB,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtE,OAAO,WAAW,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC;IAChE,CAAC;CACF,CAAA;AArCY,sCAAa;wBAAb,aAAa;IADzB,IAAA,oBAAS,GAAE;GACC,aAAa,CAqCzB"}
@@ -0,0 +1,12 @@
1
+ export default class FileService {
2
+ getRunnerDir(): string;
3
+ getFilesInDir(dirPath: string): string[];
4
+ getRunnerRootDir(): string;
5
+ getTaskDirs(startPath: string): string[];
6
+ getServiceDirs(startPath: string): string[];
7
+ getCommandDirs(startPath: string): string[];
8
+ writeFile(filePath: string, content: string): void;
9
+ private findDirsByName;
10
+ private traverseDir;
11
+ }
12
+ //# sourceMappingURL=file-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-service.d.ts","sourceRoot":"./src/","sources":["src/services/file-service.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,YAAY,IAAI,MAAM;IAItB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAOxC,gBAAgB,IAAI,MAAM;IAa1B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAIxC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAI3C,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAI3C,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAWlD,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,WAAW;CAWpB"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const chalk_1 = __importDefault(require("chalk"));
13
+ const node_fs_1 = __importDefault(require("node:fs"));
14
+ const node_path_1 = __importDefault(require("node:path"));
15
+ const tsyringe_1 = require("tsyringe");
16
+ const ignoredDirectories = new Set(["node_modules", "dist"]);
17
+ let FileService = class FileService {
18
+ getRunnerDir() {
19
+ return process.cwd();
20
+ }
21
+ getFilesInDir(dirPath) {
22
+ if (!node_fs_1.default.existsSync(dirPath) || !node_fs_1.default.statSync(dirPath).isDirectory()) {
23
+ throw new Error(`Directory not found: ${dirPath}`);
24
+ }
25
+ return node_fs_1.default.readdirSync(dirPath);
26
+ }
27
+ getRunnerRootDir() {
28
+ let currentDir = this.getRunnerDir();
29
+ while (currentDir !== "/") {
30
+ if (node_fs_1.default.existsSync(node_path_1.default.join(currentDir, "package.json"))) {
31
+ return currentDir;
32
+ }
33
+ currentDir = node_path_1.default.dirname(currentDir);
34
+ }
35
+ throw new Error(`Unable to find project root! ${chalk_1.default.dim("(missing package.json?)")}`);
36
+ }
37
+ getTaskDirs(startPath) {
38
+ return this.findDirsByName(startPath, "tasks");
39
+ }
40
+ getServiceDirs(startPath) {
41
+ return this.findDirsByName(startPath, "services");
42
+ }
43
+ getCommandDirs(startPath) {
44
+ return this.findDirsByName(startPath, "commands");
45
+ }
46
+ writeFile(filePath, content) {
47
+ const dirPath = node_path_1.default.dirname(filePath);
48
+ if (!node_fs_1.default.existsSync(dirPath)) {
49
+ throw new Error(`Directory not found: ${chalk_1.default.magentaBright(dirPath)}`);
50
+ }
51
+ if (node_fs_1.default.existsSync(filePath)) {
52
+ throw new Error(`File already exists: ${chalk_1.default.magentaBright(filePath)}`);
53
+ }
54
+ node_fs_1.default.writeFileSync(filePath, content, "utf-8");
55
+ }
56
+ findDirsByName(dirPath, dirNameSuffix) {
57
+ const dirs = [];
58
+ this.traverseDir(dirPath, (dir) => {
59
+ if (node_path_1.default.basename(dir).includes(dirNameSuffix) && !dirs.includes(dir)) {
60
+ dirs.push(dir);
61
+ }
62
+ });
63
+ return dirs;
64
+ }
65
+ traverseDir(dirPath, callback) {
66
+ const entries = node_fs_1.default.readdirSync(dirPath, { withFileTypes: true });
67
+ for (const entry of entries) {
68
+ const fullPath = node_path_1.default.join(dirPath, entry.name);
69
+ if (entry.isDirectory() && !ignoredDirectories.has(entry.name)) {
70
+ this.traverseDir(fullPath, callback);
71
+ }
72
+ else {
73
+ callback(node_path_1.default.dirname(fullPath));
74
+ }
75
+ }
76
+ }
77
+ };
78
+ FileService = __decorate([
79
+ (0, tsyringe_1.singleton)()
80
+ ], FileService);
81
+ exports.default = FileService;
82
+ //# sourceMappingURL=file-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-service.js","sourceRoot":"./src/","sources":["src/services/file-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { PinoLogger } from "task-script-support";
2
+ import pino from "pino";
3
+ export declare class LogService {
4
+ private pinoLogger;
5
+ logger: pino.Logger;
6
+ static ParentInstance?: pino.Logger;
7
+ constructor(pinoLogger: PinoLogger);
8
+ setPrefix(prefix: string): void;
9
+ info(msg: string, obj?: unknown): void;
10
+ error(err: Error | string, msg?: string, obj?: unknown): void;
11
+ warn(msg: string, obj?: unknown): void;
12
+ debug(msg: string, obj?: unknown): void;
13
+ }
14
+ //# sourceMappingURL=log-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-service.d.ts","sourceRoot":"./src/","sources":["src/services/log-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,qBACa,UAAU;IAKa,OAAO,CAAC,UAAU;IAJpD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IAEpB,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;gBAEM,UAAU,EAAE,UAAU;IAShE,SAAS,CAAC,MAAM,EAAE,MAAM;IAIjB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAItC,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAQ7D,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAItC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;CAG/C"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var LogService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.LogService = void 0;
17
+ const tsyringe_1 = require("tsyringe");
18
+ const task_script_support_1 = require("task-script-support");
19
+ let LogService = class LogService {
20
+ static { LogService_1 = this; }
21
+ pinoLogger;
22
+ logger;
23
+ static ParentInstance;
24
+ constructor(pinoLogger) {
25
+ this.pinoLogger = pinoLogger;
26
+ if (!LogService_1.ParentInstance) {
27
+ this.logger = pinoLogger.getLogger();
28
+ LogService_1.ParentInstance = this.logger;
29
+ }
30
+ else {
31
+ this.logger = LogService_1.ParentInstance.child({});
32
+ }
33
+ }
34
+ setPrefix(prefix) {
35
+ this.logger = this.pinoLogger.getLogger(prefix);
36
+ }
37
+ info(msg, obj) {
38
+ this.logger.info(obj, msg);
39
+ }
40
+ error(err, msg, obj) {
41
+ if (err instanceof Error) {
42
+ this.logger.error({ err, ...(obj ? obj : {}) }, msg || "Error occurred");
43
+ }
44
+ else {
45
+ this.logger.error(obj, `${msg}: ${err}`);
46
+ }
47
+ }
48
+ warn(msg, obj) {
49
+ this.logger.warn(obj, msg);
50
+ }
51
+ debug(msg, obj) {
52
+ this.logger.debug(obj, msg);
53
+ }
54
+ };
55
+ exports.LogService = LogService;
56
+ exports.LogService = LogService = LogService_1 = __decorate([
57
+ (0, tsyringe_1.injectable)(),
58
+ __param(0, (0, tsyringe_1.inject)("PinoLogger")),
59
+ __metadata("design:paramtypes", [task_script_support_1.PinoLogger])
60
+ ], LogService);
61
+ //# sourceMappingURL=log-service.js.map