@wocker/ws 1.0.23 → 1.0.24

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 (83) hide show
  1. package/lib/{AppModule.d.ts → RootModule.d.ts} +1 -1
  2. package/lib/{AppModule.js → RootModule.js} +32 -30
  3. package/lib/controllers/DebugController.d.ts +1 -2
  4. package/lib/controllers/DebugController.js +4 -6
  5. package/lib/controllers/ExperimentalController.d.ts +1 -1
  6. package/lib/controllers/ExperimentalController.js +1 -2
  7. package/lib/controllers/PluginController.d.ts +1 -1
  8. package/lib/controllers/PluginController.js +1 -2
  9. package/lib/controllers/ProjectController.d.ts +7 -10
  10. package/lib/controllers/ProjectController.js +64 -202
  11. package/lib/controllers/index.d.ts +0 -1
  12. package/lib/controllers/index.js +0 -1
  13. package/lib/env.d.ts +2 -2
  14. package/lib/env.js +3 -3
  15. package/lib/main.js +5 -9
  16. package/lib/makes/index.d.ts +0 -1
  17. package/lib/makes/index.js +0 -1
  18. package/lib/modules/app/index.js +17 -1
  19. package/lib/modules/docker/index.d.ts +2 -2
  20. package/lib/modules/docker/index.js +5 -5
  21. package/lib/modules/docker/services/DockerService.d.ts +2 -2
  22. package/lib/modules/docker/services/DockerService.js +5 -5
  23. package/lib/modules/docker/services/ModemService.d.ts +1 -0
  24. package/lib/modules/docker/services/ModemService.js +1 -0
  25. package/lib/modules/index.d.ts +3 -0
  26. package/lib/modules/index.js +3 -0
  27. package/lib/modules/keystore/controllers/KeystoreController.d.ts +1 -1
  28. package/lib/modules/keystore/controllers/KeystoreController.js +1 -2
  29. package/lib/modules/keystore/providers/FileKeystoreProvider.d.ts +3 -4
  30. package/lib/modules/keystore/providers/FileKeystoreProvider.js +4 -5
  31. package/lib/modules/keystore/services/KeystoreService.d.ts +4 -3
  32. package/lib/modules/keystore/services/KeystoreService.js +9 -6
  33. package/lib/modules/preset/controllers/PresetController.d.ts +18 -0
  34. package/lib/modules/preset/controllers/PresetController.js +157 -0
  35. package/lib/modules/preset/controllers/PresetListener.d.ts +14 -0
  36. package/lib/modules/preset/controllers/PresetListener.js +140 -0
  37. package/lib/modules/preset/index.d.ts +5 -0
  38. package/lib/modules/preset/index.js +39 -0
  39. package/lib/modules/preset/repositories/PresetRepository.d.ts +16 -0
  40. package/lib/{repositories → modules/preset/repositories}/PresetRepository.js +9 -11
  41. package/lib/{services → modules/preset/services}/PresetService.d.ts +4 -12
  42. package/lib/{services → modules/preset/services}/PresetService.js +20 -24
  43. package/lib/modules/project/controllers/ProjectController.d.ts +13 -0
  44. package/lib/modules/project/controllers/ProjectController.js +127 -0
  45. package/lib/modules/project/index.d.ts +5 -0
  46. package/lib/modules/project/index.js +39 -0
  47. package/lib/modules/project/repositories/ProjectRepository.d.ts +13 -0
  48. package/lib/modules/project/repositories/ProjectRepository.js +90 -0
  49. package/lib/modules/project/services/ProjectService.d.ts +21 -0
  50. package/lib/modules/project/services/ProjectService.js +211 -0
  51. package/lib/modules/proxy/controllers/CertController.d.ts +1 -1
  52. package/lib/modules/proxy/controllers/CertController.js +2 -2
  53. package/lib/modules/proxy/controllers/ProxyController.d.ts +4 -6
  54. package/lib/modules/proxy/controllers/ProxyController.js +9 -11
  55. package/lib/modules/proxy/index.js +3 -1
  56. package/lib/modules/proxy/services/CertService.d.ts +3 -4
  57. package/lib/modules/proxy/services/CertService.js +5 -6
  58. package/lib/modules/proxy/services/ProxyService.d.ts +3 -3
  59. package/lib/modules/proxy/services/ProxyService.js +14 -15
  60. package/lib/services/PluginService.d.ts +1 -3
  61. package/lib/services/PluginService.js +9 -13
  62. package/package.json +5 -5
  63. package/lib/controllers/PresetController.d.ts +0 -27
  64. package/lib/controllers/PresetController.js +0 -364
  65. package/lib/makes/Logger.d.ts +0 -9
  66. package/lib/makes/Logger.js +0 -34
  67. package/lib/repositories/PresetRepository.d.ts +0 -23
  68. package/lib/repositories/index.d.ts +0 -1
  69. package/lib/repositories/index.js +0 -17
  70. package/lib/services/AppConfigService.d.ts +0 -24
  71. package/lib/services/AppConfigService.js +0 -154
  72. package/lib/services/AppEventsService.d.ts +0 -9
  73. package/lib/services/AppEventsService.js +0 -43
  74. package/lib/services/LogService.d.ts +0 -15
  75. package/lib/services/LogService.js +0 -67
  76. package/lib/services/ProjectService.d.ts +0 -27
  77. package/lib/services/ProjectService.js +0 -206
  78. package/presets/go/Dockerfile +0 -19
  79. package/presets/go/config.json +0 -14
  80. package/presets/php-fpm/Dockerfile +0 -173
  81. package/presets/php-fpm/bin/compare-version +0 -3
  82. package/presets/php-fpm/config.json +0 -55
  83. package/presets/php-fpm/etc/nginx/sites-available/default.conf +0 -36
@@ -1,15 +1,13 @@
1
- import { Project } from "@wocker/core";
2
- import { AppConfigService } from "../../../services/AppConfigService";
3
- import { AppEventsService } from "../../../services/AppEventsService";
4
- import { ProjectService } from "../../../services/ProjectService";
1
+ import { Project, AppConfigService, EventService } from "@wocker/core";
2
+ import { ProjectService } from "../../project";
5
3
  import { ProxyService } from "../services/ProxyService";
6
4
  export declare class ProxyController {
7
5
  protected readonly appConfigService: AppConfigService;
8
- protected readonly appEventsService: AppEventsService;
6
+ protected readonly eventService: EventService;
9
7
  protected readonly projectService: ProjectService;
10
8
  protected readonly proxyService: ProxyService;
11
9
  protected containerName: string;
12
- constructor(appConfigService: AppConfigService, appEventsService: AppEventsService, projectService: ProjectService, proxyService: ProxyService);
10
+ constructor(appConfigService: AppConfigService, eventService: EventService, projectService: ProjectService, proxyService: ProxyService);
13
11
  onProjectStart(project: Project): Promise<void>;
14
12
  onProjectStop(project: Project): Promise<void>;
15
13
  getProjectNames(): string[];
@@ -19,20 +19,18 @@ exports.ProxyController = void 0;
19
19
  const core_1 = require("@wocker/core");
20
20
  const utils_1 = require("@wocker/utils");
21
21
  const yoctocolors_cjs_1 = __importDefault(require("yoctocolors-cjs"));
22
- const AppConfigService_1 = require("../../../services/AppConfigService");
23
- const AppEventsService_1 = require("../../../services/AppEventsService");
24
- const ProjectService_1 = require("../../../services/ProjectService");
22
+ const project_1 = require("../../project");
25
23
  const ProxyService_1 = require("../services/ProxyService");
26
24
  let ProxyController = class ProxyController {
27
- constructor(appConfigService, appEventsService, projectService, proxyService) {
25
+ constructor(appConfigService, eventService, projectService, proxyService) {
28
26
  this.appConfigService = appConfigService;
29
- this.appEventsService = appEventsService;
27
+ this.eventService = eventService;
30
28
  this.projectService = projectService;
31
29
  this.proxyService = proxyService;
32
30
  this.containerName = "proxy.workspace";
33
- this.appEventsService.on("project:init", (project) => this.proxyService.init(project));
34
- this.appEventsService.on("project:start", (project) => this.onProjectStart(project));
35
- this.appEventsService.on("project:stop", (project) => this.onProjectStop(project));
31
+ this.eventService.on("project:init", (project) => this.proxyService.init(project));
32
+ this.eventService.on("project:start", (project) => this.onProjectStart(project));
33
+ this.eventService.on("project:stop", (project) => this.onProjectStop(project));
36
34
  }
37
35
  async onProjectStart(project) {
38
36
  if (project.domains.length === 0) {
@@ -176,8 +174,8 @@ __decorate([
176
174
  exports.ProxyController = ProxyController = __decorate([
177
175
  (0, core_1.Controller)(),
178
176
  (0, core_1.Description)("Proxy commands"),
179
- __metadata("design:paramtypes", [AppConfigService_1.AppConfigService,
180
- AppEventsService_1.AppEventsService,
181
- ProjectService_1.ProjectService,
177
+ __metadata("design:paramtypes", [core_1.AppConfigService,
178
+ core_1.EventService,
179
+ project_1.ProjectService,
182
180
  ProxyService_1.ProxyService])
183
181
  ], ProxyController);
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.CertService = exports.ProxyService = exports.ProxyModule = void 0;
10
10
  const core_1 = require("@wocker/core");
11
11
  const docker_1 = require("../docker");
12
+ const project_1 = require("../project");
12
13
  const CertController_1 = require("./controllers/CertController");
13
14
  const ProxyController_1 = require("./controllers/ProxyController");
14
15
  const CertService_1 = require("./services/CertService");
@@ -21,7 +22,8 @@ exports.ProxyModule = ProxyModule;
21
22
  exports.ProxyModule = ProxyModule = __decorate([
22
23
  (0, core_1.Module)({
23
24
  imports: [
24
- docker_1.DockerModule
25
+ docker_1.DockerModule,
26
+ project_1.ProjectModule
25
27
  ],
26
28
  controllers: [
27
29
  CertController_1.CertController,
@@ -1,15 +1,14 @@
1
- import { Project } from "@wocker/core";
1
+ import { Project, AppFileSystemService } from "@wocker/core";
2
2
  import { DockerService } from "../../docker";
3
- import { AppConfigService } from "../../../services/AppConfigService";
4
3
  import { ProxyService } from "./ProxyService";
5
4
  type CertMap = {
6
5
  [name: string]: string[];
7
6
  };
8
7
  export declare class CertService {
9
- protected readonly appConfigService: AppConfigService;
8
+ protected readonly fs: AppFileSystemService;
10
9
  protected readonly proxyService: ProxyService;
11
10
  protected readonly dockerService: DockerService;
12
- constructor(appConfigService: AppConfigService, proxyService: ProxyService, dockerService: DockerService);
11
+ constructor(fs: AppFileSystemService, proxyService: ProxyService, dockerService: DockerService);
13
12
  list(): Promise<string>;
14
13
  generate(certName: string, dns: string[]): Promise<void>;
15
14
  getCertsMap(): CertMap;
@@ -50,11 +50,10 @@ const core_1 = require("@wocker/core");
50
50
  const Path = __importStar(require("path"));
51
51
  const cli_table3_1 = __importDefault(require("cli-table3"));
52
52
  const docker_1 = require("../../docker");
53
- const AppConfigService_1 = require("../../../services/AppConfigService");
54
53
  const ProxyService_1 = require("./ProxyService");
55
54
  let CertService = class CertService {
56
- constructor(appConfigService, proxyService, dockerService) {
57
- this.appConfigService = appConfigService;
55
+ constructor(fs, proxyService, dockerService) {
56
+ this.fs = fs;
58
57
  this.proxyService = proxyService;
59
58
  this.dockerService = dockerService;
60
59
  }
@@ -94,7 +93,7 @@ let CertService = class CertService {
94
93
  });
95
94
  }
96
95
  getCertsMap() {
97
- const files = this.appConfigService.fs.readdir("certs/projects");
96
+ const files = this.fs.readdir("certs/projects");
98
97
  return files.reduce((res, file) => {
99
98
  const ext = Path.extname(file);
100
99
  const name = Path.basename(file, ext);
@@ -137,7 +136,7 @@ let CertService = class CertService {
137
136
  return;
138
137
  }
139
138
  for (const ext of certs[name]) {
140
- this.appConfigService.fs.rm(`certs/projects/${name}${ext}`);
139
+ this.fs.rm(`certs/projects/${name}${ext}`);
141
140
  }
142
141
  console.info(`Cert ${name} deleted`);
143
142
  }
@@ -145,7 +144,7 @@ let CertService = class CertService {
145
144
  exports.CertService = CertService;
146
145
  exports.CertService = CertService = __decorate([
147
146
  (0, core_1.Injectable)(),
148
- __metadata("design:paramtypes", [AppConfigService_1.AppConfigService,
147
+ __metadata("design:paramtypes", [core_1.AppFileSystemService,
149
148
  ProxyService_1.ProxyService,
150
149
  docker_1.DockerService])
151
150
  ], CertService);
@@ -1,13 +1,13 @@
1
- import { Project, ProxyService as CoreProxyService } from "@wocker/core";
2
- import { AppConfigService } from "../../../services/AppConfigService";
1
+ import { Project, AppConfigService, AppFileSystemService, ProxyService as CoreProxyService } from "@wocker/core";
3
2
  import { DockerService } from "../../docker";
4
3
  export declare class ProxyService extends CoreProxyService {
5
4
  protected readonly appConfigService: AppConfigService;
5
+ protected readonly fs: AppFileSystemService;
6
6
  protected readonly dockerService: DockerService;
7
7
  protected containerName: string;
8
8
  protected imageName: string;
9
9
  protected oldImages: string[];
10
- constructor(appConfigService: AppConfigService, dockerService: DockerService);
10
+ constructor(appConfigService: AppConfigService, fs: AppFileSystemService, dockerService: DockerService);
11
11
  init(project: Project): Promise<void>;
12
12
  start(restart?: boolean, rebuild?: boolean): Promise<void>;
13
13
  stop(): Promise<void>;
@@ -47,12 +47,12 @@ const core_1 = require("@wocker/core");
47
47
  const utils_1 = require("@wocker/utils");
48
48
  const Path = __importStar(require("path"));
49
49
  const env_1 = require("../../../env");
50
- const AppConfigService_1 = require("../../../services/AppConfigService");
51
50
  const docker_1 = require("../../docker");
52
51
  let ProxyService = class ProxyService extends core_1.ProxyService {
53
- constructor(appConfigService, dockerService) {
52
+ constructor(appConfigService, fs, dockerService) {
54
53
  super();
55
54
  this.appConfigService = appConfigService;
55
+ this.fs = fs;
56
56
  this.dockerService = dockerService;
57
57
  this.containerName = "proxy.workspace";
58
58
  this.imageName = "wocker-proxy:1.0.1";
@@ -77,15 +77,15 @@ let ProxyService = class ProxyService extends core_1.ProxyService {
77
77
  if (!container) {
78
78
  console.info("Proxy starting...");
79
79
  await this.build(rebuild);
80
- const fs = this.appConfigService.fs;
81
- if (!this.appConfigService.fs.exists("certs/ca")) {
82
- this.appConfigService.fs.mkdir("certs/ca", {
80
+ const fs = this.fs;
81
+ if (!this.fs.exists("certs/ca")) {
82
+ this.fs.mkdir("certs/ca", {
83
83
  recursive: true,
84
84
  mode: 0o700
85
85
  });
86
86
  }
87
- if (!this.appConfigService.fs.exists("certs/projects")) {
88
- this.appConfigService.fs.mkdir("certs/projects", {
87
+ if (!this.fs.exists("certs/projects")) {
88
+ this.fs.mkdir("certs/projects", {
89
89
  recursive: true,
90
90
  mode: 0o700
91
91
  });
@@ -96,10 +96,9 @@ let ProxyService = class ProxyService extends core_1.ProxyService {
96
96
  mode: 0o700
97
97
  });
98
98
  }
99
- const config = this.appConfigService.config;
100
- const httpPort = config.getMeta("PROXY_HTTP_PORT", "80");
101
- const httpsPort = config.getMeta("PROXY_HTTPS_PORT", "443");
102
- const sshPort = config.getMeta("PROXY_SSH_PORT", "22");
99
+ const httpPort = this.appConfigService.getMeta("PROXY_HTTP_PORT", "80");
100
+ const httpsPort = this.appConfigService.getMeta("PROXY_HTTPS_PORT", "443");
101
+ const sshPort = this.appConfigService.getMeta("PROXY_SSH_PORT", "22");
103
102
  container = await this.dockerService.createContainer({
104
103
  name: this.containerName,
105
104
  image: this.imageName,
@@ -111,7 +110,7 @@ let ProxyService = class ProxyService extends core_1.ProxyService {
111
110
  ports: [
112
111
  `${httpPort}:80`,
113
112
  `${httpsPort}:443`,
114
- ...config.getMeta("PROXY_SSH_PASSWORD") ? [
113
+ ...this.appConfigService.getMeta("PROXY_SSH_PASSWORD") ? [
115
114
  `${sshPort}:22`
116
115
  ] : []
117
116
  ],
@@ -145,13 +144,12 @@ let ProxyService = class ProxyService extends core_1.ProxyService {
145
144
  for (const oldImage of this.oldImages) {
146
145
  await this.dockerService.imageRm(oldImage);
147
146
  }
148
- const config = this.appConfigService.config;
149
147
  await this.dockerService.buildImage({
150
148
  tag: this.imageName,
151
149
  context: Path.join(env_1.PLUGINS_DIR, "proxy"),
152
150
  src: "./Dockerfile",
153
151
  buildArgs: {
154
- SSH_PASSWORD: config.getMeta("PROXY_SSH_PASSWORD")
152
+ SSH_PASSWORD: this.appConfigService.getMeta("PROXY_SSH_PASSWORD")
155
153
  }
156
154
  });
157
155
  }
@@ -162,6 +160,7 @@ let ProxyService = class ProxyService extends core_1.ProxyService {
162
160
  exports.ProxyService = ProxyService;
163
161
  exports.ProxyService = ProxyService = __decorate([
164
162
  (0, core_1.Injectable)("PROXY_SERVICE"),
165
- __metadata("design:paramtypes", [AppConfigService_1.AppConfigService,
163
+ __metadata("design:paramtypes", [core_1.AppConfigService,
164
+ core_1.AppFileSystemService,
166
165
  docker_1.DockerService])
167
166
  ], ProxyService);
@@ -1,6 +1,4 @@
1
- import { Cli } from "@wocker/core";
2
- import { AppConfigService } from "./AppConfigService";
3
- import { LogService } from "./LogService";
1
+ import { Cli, AppConfigService, LogService } from "@wocker/core";
4
2
  import { NpmService } from "./NpmService";
5
3
  import { Plugin } from "../makes";
6
4
  export declare class PluginService {
@@ -49,8 +49,6 @@ exports.PluginService = void 0;
49
49
  const core_1 = require("@wocker/core");
50
50
  const cli_table3_1 = __importDefault(require("cli-table3"));
51
51
  const yoctocolors_cjs_1 = __importDefault(require("yoctocolors-cjs"));
52
- const AppConfigService_1 = require("./AppConfigService");
53
- const LogService_1 = require("./LogService");
54
52
  const NpmService_1 = require("./NpmService");
55
53
  const makes_1 = require("../makes");
56
54
  const utils_1 = require("../utils");
@@ -62,15 +60,14 @@ let PluginService = class PluginService {
62
60
  this.cli = cli;
63
61
  }
64
62
  getPluginsTable() {
65
- const config = this.appConfigService.config;
66
63
  const table = new cli_table3_1.default({
67
64
  head: ["Name", "Env"],
68
65
  colWidths: [30]
69
66
  });
70
- if (config.plugins.length === 0) {
67
+ if (this.appConfigService.plugins.length === 0) {
71
68
  return yoctocolors_cjs_1.default.gray("No plugins installed");
72
69
  }
73
- for (const plugin of config.plugins) {
70
+ for (const plugin of this.appConfigService.plugins) {
74
71
  table.push([plugin.name, plugin.env]);
75
72
  }
76
73
  return table.toString();
@@ -92,7 +89,7 @@ let PluginService = class PluginService {
92
89
  const fullName = `${prefix}${name}${suffix}`;
93
90
  try {
94
91
  if (await this.checkPlugin(fullName)) {
95
- this.appConfigService.config.addPlugin(fullName);
92
+ this.appConfigService.addPlugin(fullName);
96
93
  this.appConfigService.save();
97
94
  console.info(`Plugin ${fullName} activated`);
98
95
  return;
@@ -101,7 +98,7 @@ let PluginService = class PluginService {
101
98
  const env = packageInfo["dist-tags"].beta && beta ? "beta" : "latest";
102
99
  await this.npmService.install(fullName, env);
103
100
  if (await this.checkPlugin(fullName)) {
104
- this.appConfigService.config.addPlugin(fullName, env);
101
+ this.appConfigService.addPlugin(fullName, env);
105
102
  this.appConfigService.save();
106
103
  console.info(`Plugin ${fullName}@${env} activated`);
107
104
  return;
@@ -114,7 +111,7 @@ let PluginService = class PluginService {
114
111
  async uninstall(pluginName) {
115
112
  const [, prefix = "@wocker/", name, suffix = "-plugin"] = /^(@wocker\/)?(\w+)(-plugin)?$/.exec(pluginName) || [];
116
113
  const fullName = `${prefix}${name}${suffix}`;
117
- this.appConfigService.config.removePlugin(fullName);
114
+ this.appConfigService.removePlugin(fullName);
118
115
  this.appConfigService.save();
119
116
  console.info(`Plugin ${fullName} deactivated`);
120
117
  }
@@ -123,11 +120,10 @@ let PluginService = class PluginService {
123
120
  return new makes_1.Plugin(type);
124
121
  }
125
122
  async update() {
126
- const config = this.appConfigService.config;
127
- if (!config.plugins) {
123
+ if (this.appConfigService.plugins.length === 0) {
128
124
  return;
129
125
  }
130
- for (const plugin of config.plugins) {
126
+ for (const plugin of this.appConfigService.plugins) {
131
127
  console.info(`Checking ${plugin.name}...`);
132
128
  try {
133
129
  const current = await this.getCurrentVersion(plugin.name);
@@ -163,8 +159,8 @@ let PluginService = class PluginService {
163
159
  exports.PluginService = PluginService;
164
160
  exports.PluginService = PluginService = __decorate([
165
161
  (0, core_1.Injectable)(),
166
- __metadata("design:paramtypes", [AppConfigService_1.AppConfigService,
162
+ __metadata("design:paramtypes", [core_1.AppConfigService,
167
163
  NpmService_1.NpmService,
168
- LogService_1.LogService,
164
+ core_1.LogService,
169
165
  core_1.Cli])
170
166
  ], PluginService);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wocker/ws",
3
- "version": "1.0.23",
3
+ "version": "1.0.24",
4
4
  "author": "Kris Papercut <krispcut@gmail.com>",
5
5
  "description": "Docker workspace for web projects",
6
6
  "license": "MIT",
@@ -33,13 +33,12 @@
33
33
  "make-coverage-badge": "make-coverage-badge"
34
34
  },
35
35
  "dependencies": {
36
- "@wocker/core": "1.0.23",
36
+ "@wocker/core": "1.0.24",
37
37
  "@wocker/utils": "^2.0.3",
38
38
  "async-mutex": "^0.4.0",
39
39
  "axios": "^1.6.7",
40
40
  "child_process": "^1.0.2",
41
41
  "cli-table3": "^0.6.2",
42
- "date-fns": "^2.29.3",
43
42
  "dockerode": "^4.0.2",
44
43
  "fs": "^0.0.1-security",
45
44
  "keytar": "^7.9.0",
@@ -57,12 +56,13 @@
57
56
  "@types/mute-stream": "^0.0.4",
58
57
  "@types/node": "^22.14.1",
59
58
  "@types/unzipper": "^0.10.10",
60
- "@wocker/testing": "1.0.1",
59
+ "@wocker/testing": "1.0.2",
61
60
  "jest": "^29.7.0",
62
61
  "make-coverage-badge": "^1.2.0",
63
62
  "memfs": "^4.17.0",
64
63
  "ts-jest": "^29.3.2",
65
64
  "ts-node": "^10.9.2",
66
- "typescript": "^5.6.3"
65
+ "typescript": "^5.6.3",
66
+ "unionfs": "^4.5.4"
67
67
  }
68
68
  }
@@ -1,27 +0,0 @@
1
- import { Project } from "@wocker/core";
2
- import { PresetRepository } from "../repositories";
3
- import { AppConfigService } from "../services/AppConfigService";
4
- import { AppEventsService } from "../services/AppEventsService";
5
- import { ProjectService } from "../services/ProjectService";
6
- import { PresetService } from "../services/PresetService";
7
- import { DockerService } from "../modules";
8
- export declare class PresetController {
9
- protected readonly appConfigService: AppConfigService;
10
- protected readonly appEventsService: AppEventsService;
11
- protected readonly projectService: ProjectService;
12
- protected readonly presetService: PresetService;
13
- protected readonly presetRepository: PresetRepository;
14
- protected readonly dockerService: DockerService;
15
- constructor(appConfigService: AppConfigService, appEventsService: AppEventsService, projectService: ProjectService, presetService: PresetService, presetRepository: PresetRepository, dockerService: DockerService);
16
- presets(): Promise<string[]>;
17
- protected onInit(project: Project): Promise<void>;
18
- protected onRebuild(project: Project): Promise<void>;
19
- protected onBeforeStart(project: Project): Promise<void>;
20
- init(): Promise<void>;
21
- destroy(): Promise<void>;
22
- add(name: string, version?: string): Promise<void>;
23
- list(): Promise<string>;
24
- delete(name: string, confirm?: boolean): Promise<void>;
25
- eject(name?: string): Promise<void>;
26
- build(presetName: string, rebuild?: boolean): Promise<void>;
27
- }