@minecraft-docker/shared 1.6.1 → 1.6.2
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.
- package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts +41 -0
- package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts.map +1 -1
- package/dist/application/ports/inbound/index.d.ts +1 -1
- package/dist/application/ports/inbound/index.d.ts.map +1 -1
- package/dist/application/ports/index.d.ts +2 -2
- package/dist/application/ports/index.d.ts.map +1 -1
- package/dist/application/ports/outbound/IModSourcePort.d.ts +71 -0
- package/dist/application/ports/outbound/IModSourcePort.d.ts.map +1 -0
- package/dist/application/ports/outbound/IModSourcePort.js +19 -0
- package/dist/application/ports/outbound/IModSourcePort.js.map +1 -0
- package/dist/application/ports/outbound/IPromptPort.d.ts +12 -0
- package/dist/application/ports/outbound/IPromptPort.d.ts.map +1 -1
- package/dist/application/ports/outbound/IServiceManagerPort.d.ts +115 -0
- package/dist/application/ports/outbound/IServiceManagerPort.d.ts.map +1 -0
- package/dist/application/ports/outbound/IServiceManagerPort.js +2 -0
- package/dist/application/ports/outbound/IServiceManagerPort.js.map +1 -0
- package/dist/application/ports/outbound/IShellPort.d.ts +10 -2
- package/dist/application/ports/outbound/IShellPort.d.ts.map +1 -1
- package/dist/application/ports/outbound/IUserRepository.d.ts +42 -0
- package/dist/application/ports/outbound/IUserRepository.d.ts.map +1 -0
- package/dist/application/ports/outbound/IUserRepository.js +2 -0
- package/dist/application/ports/outbound/IUserRepository.js.map +1 -0
- package/dist/application/ports/outbound/IWorldRepository.d.ts +19 -0
- package/dist/application/ports/outbound/IWorldRepository.d.ts.map +1 -1
- package/dist/application/ports/outbound/index.d.ts +4 -1
- package/dist/application/ports/outbound/index.d.ts.map +1 -1
- package/dist/application/use-cases/CreateServerUseCase.d.ts.map +1 -1
- package/dist/application/use-cases/CreateServerUseCase.js +2 -3
- package/dist/application/use-cases/CreateServerUseCase.js.map +1 -1
- package/dist/application/use-cases/DeleteServerUseCase.js +5 -5
- package/dist/application/use-cases/DeleteServerUseCase.js.map +1 -1
- package/dist/application/use-cases/WorldManagementUseCase.d.ts +18 -1
- package/dist/application/use-cases/WorldManagementUseCase.d.ts.map +1 -1
- package/dist/application/use-cases/WorldManagementUseCase.js +332 -0
- package/dist/application/use-cases/WorldManagementUseCase.js.map +1 -1
- package/dist/docker/index.d.ts +14 -0
- package/dist/docker/index.d.ts.map +1 -1
- package/dist/docker/index.js +26 -1
- package/dist/docker/index.js.map +1 -1
- package/dist/domain/entities/User.d.ts +77 -0
- package/dist/domain/entities/User.d.ts.map +1 -0
- package/dist/domain/entities/User.js +121 -0
- package/dist/domain/entities/User.js.map +1 -0
- package/dist/domain/entities/World.d.ts +7 -1
- package/dist/domain/entities/World.d.ts.map +1 -1
- package/dist/domain/entities/World.js +14 -1
- package/dist/domain/entities/World.js.map +1 -1
- package/dist/domain/entities/index.d.ts +1 -0
- package/dist/domain/entities/index.d.ts.map +1 -1
- package/dist/domain/entities/index.js +1 -0
- package/dist/domain/entities/index.js.map +1 -1
- package/dist/domain/index.d.ts +2 -2
- package/dist/domain/index.d.ts.map +1 -1
- package/dist/domain/index.js +4 -2
- package/dist/domain/index.js.map +1 -1
- package/dist/domain/mod/ModDependency.d.ts +18 -0
- package/dist/domain/mod/ModDependency.d.ts.map +1 -0
- package/dist/domain/mod/ModDependency.js +5 -0
- package/dist/domain/mod/ModDependency.js.map +1 -0
- package/dist/domain/mod/ModFile.d.ts +27 -0
- package/dist/domain/mod/ModFile.d.ts.map +1 -0
- package/dist/domain/mod/ModFile.js +5 -0
- package/dist/domain/mod/ModFile.js.map +1 -0
- package/dist/domain/mod/ModProject.d.ts +36 -0
- package/dist/domain/mod/ModProject.d.ts.map +1 -0
- package/dist/domain/mod/ModProject.js +5 -0
- package/dist/domain/mod/ModProject.js.map +1 -0
- package/dist/domain/mod/ModSearchResult.d.ts +18 -0
- package/dist/domain/mod/ModSearchResult.d.ts.map +1 -0
- package/dist/domain/mod/ModSearchResult.js +5 -0
- package/dist/domain/mod/ModSearchResult.js.map +1 -0
- package/dist/domain/mod/ModVersion.d.ts +36 -0
- package/dist/domain/mod/ModVersion.d.ts.map +1 -0
- package/dist/domain/mod/ModVersion.js +5 -0
- package/dist/domain/mod/ModVersion.js.map +1 -0
- package/dist/domain/mod/index.d.ts +11 -0
- package/dist/domain/mod/index.d.ts.map +1 -0
- package/dist/domain/mod/index.js +6 -0
- package/dist/domain/mod/index.js.map +1 -0
- package/dist/domain/mod/types.d.ts +43 -0
- package/dist/domain/mod/types.d.ts.map +1 -0
- package/dist/domain/mod/types.js +6 -0
- package/dist/domain/mod/types.js.map +1 -0
- package/dist/domain/value-objects/ProcessInfo.d.ts +99 -0
- package/dist/domain/value-objects/ProcessInfo.d.ts.map +1 -0
- package/dist/domain/value-objects/ProcessInfo.js +171 -0
- package/dist/domain/value-objects/ProcessInfo.js.map +1 -0
- package/dist/domain/value-objects/Role.d.ts +41 -0
- package/dist/domain/value-objects/Role.d.ts.map +1 -0
- package/dist/domain/value-objects/Role.js +66 -0
- package/dist/domain/value-objects/Role.js.map +1 -0
- package/dist/domain/value-objects/ServerType.d.ts +1 -0
- package/dist/domain/value-objects/ServerType.d.ts.map +1 -1
- package/dist/domain/value-objects/ServerType.js +8 -0
- package/dist/domain/value-objects/ServerType.js.map +1 -1
- package/dist/domain/value-objects/ServiceStatus.d.ts +64 -0
- package/dist/domain/value-objects/ServiceStatus.d.ts.map +1 -0
- package/dist/domain/value-objects/ServiceStatus.js +99 -0
- package/dist/domain/value-objects/ServiceStatus.js.map +1 -0
- package/dist/domain/value-objects/UserId.d.ts +21 -0
- package/dist/domain/value-objects/UserId.d.ts.map +1 -0
- package/dist/domain/value-objects/UserId.js +43 -0
- package/dist/domain/value-objects/UserId.js.map +1 -0
- package/dist/domain/value-objects/Username.d.ts +16 -0
- package/dist/domain/value-objects/Username.d.ts.map +1 -0
- package/dist/domain/value-objects/Username.js +46 -0
- package/dist/domain/value-objects/Username.js.map +1 -0
- package/dist/domain/value-objects/index.d.ts +5 -0
- package/dist/domain/value-objects/index.d.ts.map +1 -1
- package/dist/domain/value-objects/index.js +7 -0
- package/dist/domain/value-objects/index.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/adapters/ApiPromptAdapter.d.ts +115 -0
- package/dist/infrastructure/adapters/ApiPromptAdapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/ApiPromptAdapter.js +268 -0
- package/dist/infrastructure/adapters/ApiPromptAdapter.js.map +1 -0
- package/dist/infrastructure/adapters/ServerRepository.js +3 -3
- package/dist/infrastructure/adapters/ServerRepository.js.map +1 -1
- package/dist/infrastructure/adapters/ShellAdapter.d.ts +4 -2
- package/dist/infrastructure/adapters/ShellAdapter.d.ts.map +1 -1
- package/dist/infrastructure/adapters/ShellAdapter.js +15 -5
- package/dist/infrastructure/adapters/ShellAdapter.js.map +1 -1
- package/dist/infrastructure/adapters/SqliteUserRepository.d.ts +70 -0
- package/dist/infrastructure/adapters/SqliteUserRepository.d.ts.map +1 -0
- package/dist/infrastructure/adapters/SqliteUserRepository.js +149 -0
- package/dist/infrastructure/adapters/SqliteUserRepository.js.map +1 -0
- package/dist/infrastructure/adapters/WorldRepository.d.ts +12 -0
- package/dist/infrastructure/adapters/WorldRepository.d.ts.map +1 -1
- package/dist/infrastructure/adapters/WorldRepository.js +73 -3
- package/dist/infrastructure/adapters/WorldRepository.js.map +1 -1
- package/dist/infrastructure/adapters/YamlUserRepository.d.ts +67 -0
- package/dist/infrastructure/adapters/YamlUserRepository.d.ts.map +1 -0
- package/dist/infrastructure/adapters/YamlUserRepository.js +161 -0
- package/dist/infrastructure/adapters/YamlUserRepository.js.map +1 -0
- package/dist/infrastructure/adapters/index.d.ts +3 -0
- package/dist/infrastructure/adapters/index.d.ts.map +1 -1
- package/dist/infrastructure/adapters/index.js +3 -0
- package/dist/infrastructure/adapters/index.js.map +1 -1
- package/dist/infrastructure/config/Pm2EcosystemConfig.d.ts +192 -0
- package/dist/infrastructure/config/Pm2EcosystemConfig.d.ts.map +1 -0
- package/dist/infrastructure/config/Pm2EcosystemConfig.js +48 -0
- package/dist/infrastructure/config/Pm2EcosystemConfig.js.map +1 -0
- package/dist/infrastructure/config/index.d.ts +6 -0
- package/dist/infrastructure/config/index.d.ts.map +1 -0
- package/dist/infrastructure/config/index.js +6 -0
- package/dist/infrastructure/config/index.js.map +1 -0
- package/dist/infrastructure/factories/ModSourceFactory.d.ts +73 -0
- package/dist/infrastructure/factories/ModSourceFactory.d.ts.map +1 -0
- package/dist/infrastructure/factories/ModSourceFactory.js +98 -0
- package/dist/infrastructure/factories/ModSourceFactory.js.map +1 -0
- package/dist/infrastructure/factories/index.d.ts +5 -0
- package/dist/infrastructure/factories/index.d.ts.map +1 -0
- package/dist/infrastructure/factories/index.js +5 -0
- package/dist/infrastructure/factories/index.js.map +1 -0
- package/dist/infrastructure/index.d.ts +1 -0
- package/dist/infrastructure/index.d.ts.map +1 -1
- package/dist/infrastructure/index.js +1 -0
- package/dist/infrastructure/index.js.map +1 -1
- package/package.json +10 -2
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { ServiceStatus, ServiceStatusEnum } from './ServiceStatus.js';
|
|
2
|
+
/**
|
|
3
|
+
* Process monitoring metrics
|
|
4
|
+
*/
|
|
5
|
+
export interface ProcessMetrics {
|
|
6
|
+
memory: number;
|
|
7
|
+
cpu: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Process information data interface
|
|
11
|
+
*/
|
|
12
|
+
export interface ProcessInfoData {
|
|
13
|
+
pmId: number;
|
|
14
|
+
name: string;
|
|
15
|
+
status: ServiceStatusEnum;
|
|
16
|
+
pid?: number;
|
|
17
|
+
cpu?: number;
|
|
18
|
+
memory?: number;
|
|
19
|
+
uptime?: number;
|
|
20
|
+
restarts?: number;
|
|
21
|
+
createdAt?: Date;
|
|
22
|
+
interpreter?: string;
|
|
23
|
+
scriptPath?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* ProcessInfo Value Object
|
|
27
|
+
* Represents information about a managed service process
|
|
28
|
+
*/
|
|
29
|
+
export declare class ProcessInfo {
|
|
30
|
+
private readonly _data;
|
|
31
|
+
private constructor();
|
|
32
|
+
get pmId(): number;
|
|
33
|
+
get name(): string;
|
|
34
|
+
get status(): ServiceStatus;
|
|
35
|
+
get statusValue(): ServiceStatusEnum;
|
|
36
|
+
get pid(): number | undefined;
|
|
37
|
+
get cpu(): number | undefined;
|
|
38
|
+
get memory(): number | undefined;
|
|
39
|
+
get uptime(): number | undefined;
|
|
40
|
+
get restarts(): number | undefined;
|
|
41
|
+
get createdAt(): Date | undefined;
|
|
42
|
+
get interpreter(): string | undefined;
|
|
43
|
+
get scriptPath(): string | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Check if process is online
|
|
46
|
+
*/
|
|
47
|
+
get isOnline(): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Check if process is stopped
|
|
50
|
+
*/
|
|
51
|
+
get isStopped(): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Check if process has errored
|
|
54
|
+
*/
|
|
55
|
+
get isErrored(): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Get formatted memory usage string
|
|
58
|
+
*/
|
|
59
|
+
get memoryFormatted(): string;
|
|
60
|
+
/**
|
|
61
|
+
* Get formatted uptime string
|
|
62
|
+
*/
|
|
63
|
+
get uptimeFormatted(): string;
|
|
64
|
+
/**
|
|
65
|
+
* Get metrics object
|
|
66
|
+
*/
|
|
67
|
+
get metrics(): ProcessMetrics | null;
|
|
68
|
+
/**
|
|
69
|
+
* Create a ProcessInfo from data
|
|
70
|
+
*/
|
|
71
|
+
static create(data: ProcessInfoData): ProcessInfo;
|
|
72
|
+
/**
|
|
73
|
+
* Create from PM2 process description
|
|
74
|
+
*/
|
|
75
|
+
static fromPm2(pm2Process: {
|
|
76
|
+
pm_id?: number;
|
|
77
|
+
name?: string;
|
|
78
|
+
pm2_env?: {
|
|
79
|
+
status?: string;
|
|
80
|
+
pm_uptime?: number;
|
|
81
|
+
restart_time?: number;
|
|
82
|
+
created_at?: number;
|
|
83
|
+
exec_interpreter?: string;
|
|
84
|
+
pm_exec_path?: string;
|
|
85
|
+
};
|
|
86
|
+
pid?: number;
|
|
87
|
+
monit?: {
|
|
88
|
+
cpu?: number;
|
|
89
|
+
memory?: number;
|
|
90
|
+
};
|
|
91
|
+
}): ProcessInfo;
|
|
92
|
+
/**
|
|
93
|
+
* Convert to plain object
|
|
94
|
+
*/
|
|
95
|
+
toJSON(): ProcessInfoData;
|
|
96
|
+
equals(other: ProcessInfo): boolean;
|
|
97
|
+
toString(): string;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=ProcessInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProcessInfo.d.ts","sourceRoot":"","sources":["../../../src/domain/value-objects/ProcessInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACF,OAAO,CAAC,QAAQ,CAAC,KAAK;IAA1C,OAAO;IAIP,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,MAAM,IAAI,aAAa,CAE1B;IAED,IAAI,WAAW,IAAI,iBAAiB,CAEnC;IAED,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAE5B;IAED,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAE5B;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAEjC;IAED,IAAI,SAAS,IAAI,IAAI,GAAG,SAAS,CAEhC;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,MAAM,CAG5B;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,MAAM,CAG5B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,cAAc,GAAG,IAAI,CAQnC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,WAAW;IAUjD;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE;YACR,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE;YACN,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,GAAG,WAAW;IAmBf;;OAEG;IACH,MAAM,IAAI,eAAe;IAIzB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAInC,QAAQ,IAAI,MAAM;CAGnB"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { ServiceStatus, ServiceStatusEnum } from './ServiceStatus.js';
|
|
2
|
+
/**
|
|
3
|
+
* ProcessInfo Value Object
|
|
4
|
+
* Represents information about a managed service process
|
|
5
|
+
*/
|
|
6
|
+
export class ProcessInfo {
|
|
7
|
+
_data;
|
|
8
|
+
constructor(_data) {
|
|
9
|
+
this._data = _data;
|
|
10
|
+
Object.freeze(this);
|
|
11
|
+
}
|
|
12
|
+
get pmId() {
|
|
13
|
+
return this._data.pmId;
|
|
14
|
+
}
|
|
15
|
+
get name() {
|
|
16
|
+
return this._data.name;
|
|
17
|
+
}
|
|
18
|
+
get status() {
|
|
19
|
+
return ServiceStatus.create(this._data.status);
|
|
20
|
+
}
|
|
21
|
+
get statusValue() {
|
|
22
|
+
return this._data.status;
|
|
23
|
+
}
|
|
24
|
+
get pid() {
|
|
25
|
+
return this._data.pid;
|
|
26
|
+
}
|
|
27
|
+
get cpu() {
|
|
28
|
+
return this._data.cpu;
|
|
29
|
+
}
|
|
30
|
+
get memory() {
|
|
31
|
+
return this._data.memory;
|
|
32
|
+
}
|
|
33
|
+
get uptime() {
|
|
34
|
+
return this._data.uptime;
|
|
35
|
+
}
|
|
36
|
+
get restarts() {
|
|
37
|
+
return this._data.restarts;
|
|
38
|
+
}
|
|
39
|
+
get createdAt() {
|
|
40
|
+
return this._data.createdAt;
|
|
41
|
+
}
|
|
42
|
+
get interpreter() {
|
|
43
|
+
return this._data.interpreter;
|
|
44
|
+
}
|
|
45
|
+
get scriptPath() {
|
|
46
|
+
return this._data.scriptPath;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Check if process is online
|
|
50
|
+
*/
|
|
51
|
+
get isOnline() {
|
|
52
|
+
return this._data.status === ServiceStatusEnum.ONLINE;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Check if process is stopped
|
|
56
|
+
*/
|
|
57
|
+
get isStopped() {
|
|
58
|
+
return this._data.status === ServiceStatusEnum.STOPPED;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Check if process has errored
|
|
62
|
+
*/
|
|
63
|
+
get isErrored() {
|
|
64
|
+
return this._data.status === ServiceStatusEnum.ERRORED;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Get formatted memory usage string
|
|
68
|
+
*/
|
|
69
|
+
get memoryFormatted() {
|
|
70
|
+
if (this._data.memory === undefined)
|
|
71
|
+
return 'N/A';
|
|
72
|
+
return formatBytes(this._data.memory);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Get formatted uptime string
|
|
76
|
+
*/
|
|
77
|
+
get uptimeFormatted() {
|
|
78
|
+
if (this._data.uptime === undefined)
|
|
79
|
+
return 'N/A';
|
|
80
|
+
return formatDuration(this._data.uptime);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get metrics object
|
|
84
|
+
*/
|
|
85
|
+
get metrics() {
|
|
86
|
+
if (this._data.cpu === undefined || this._data.memory === undefined) {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
return {
|
|
90
|
+
cpu: this._data.cpu,
|
|
91
|
+
memory: this._data.memory,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Create a ProcessInfo from data
|
|
96
|
+
*/
|
|
97
|
+
static create(data) {
|
|
98
|
+
if (data.pmId < 0) {
|
|
99
|
+
throw new Error('PM2 ID cannot be negative');
|
|
100
|
+
}
|
|
101
|
+
if (!data.name || data.name.trim() === '') {
|
|
102
|
+
throw new Error('Process name is required');
|
|
103
|
+
}
|
|
104
|
+
return new ProcessInfo(data);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Create from PM2 process description
|
|
108
|
+
*/
|
|
109
|
+
static fromPm2(pm2Process) {
|
|
110
|
+
const env = pm2Process.pm2_env || {};
|
|
111
|
+
const monit = pm2Process.monit || {};
|
|
112
|
+
return ProcessInfo.create({
|
|
113
|
+
pmId: pm2Process.pm_id ?? 0,
|
|
114
|
+
name: pm2Process.name ?? 'unknown',
|
|
115
|
+
status: env.status ?? ServiceStatusEnum.STOPPED,
|
|
116
|
+
pid: pm2Process.pid,
|
|
117
|
+
cpu: monit.cpu,
|
|
118
|
+
memory: monit.memory,
|
|
119
|
+
uptime: env.pm_uptime,
|
|
120
|
+
restarts: env.restart_time,
|
|
121
|
+
createdAt: env.created_at ? new Date(env.created_at) : undefined,
|
|
122
|
+
interpreter: env.exec_interpreter,
|
|
123
|
+
scriptPath: env.pm_exec_path,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Convert to plain object
|
|
128
|
+
*/
|
|
129
|
+
toJSON() {
|
|
130
|
+
return { ...this._data };
|
|
131
|
+
}
|
|
132
|
+
equals(other) {
|
|
133
|
+
return this._data.pmId === other._data.pmId && this._data.name === other._data.name;
|
|
134
|
+
}
|
|
135
|
+
toString() {
|
|
136
|
+
return `${this._data.name} (PM2 ID: ${this._data.pmId}, Status: ${this._data.status})`;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Format bytes to human readable string
|
|
141
|
+
*/
|
|
142
|
+
function formatBytes(bytes) {
|
|
143
|
+
const units = ['B', 'KB', 'MB', 'GB', 'TB'];
|
|
144
|
+
let unitIndex = 0;
|
|
145
|
+
let size = bytes;
|
|
146
|
+
while (size >= 1024 && unitIndex < units.length - 1) {
|
|
147
|
+
size /= 1024;
|
|
148
|
+
unitIndex++;
|
|
149
|
+
}
|
|
150
|
+
return `${size.toFixed(1)} ${units[unitIndex]}`;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Format duration in milliseconds to human readable string
|
|
154
|
+
*/
|
|
155
|
+
function formatDuration(ms) {
|
|
156
|
+
const seconds = Math.floor(ms / 1000);
|
|
157
|
+
const minutes = Math.floor(seconds / 60);
|
|
158
|
+
const hours = Math.floor(minutes / 60);
|
|
159
|
+
const days = Math.floor(hours / 24);
|
|
160
|
+
if (days > 0) {
|
|
161
|
+
return `${days}d ${hours % 24}h`;
|
|
162
|
+
}
|
|
163
|
+
if (hours > 0) {
|
|
164
|
+
return `${hours}h ${minutes % 60}m`;
|
|
165
|
+
}
|
|
166
|
+
if (minutes > 0) {
|
|
167
|
+
return `${minutes}m ${seconds % 60}s`;
|
|
168
|
+
}
|
|
169
|
+
return `${seconds}s`;
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=ProcessInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProcessInfo.js","sourceRoot":"","sources":["../../../src/domain/value-objects/ProcessInfo.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Role Enum
|
|
3
|
+
* Defines available user roles in the system
|
|
4
|
+
*/
|
|
5
|
+
export declare enum RoleEnum {
|
|
6
|
+
ADMIN = "admin",
|
|
7
|
+
VIEWER = "viewer"
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Role Value Object
|
|
11
|
+
* Represents a validated user role
|
|
12
|
+
*/
|
|
13
|
+
export declare class Role {
|
|
14
|
+
private readonly _value;
|
|
15
|
+
private static readonly VALID_ROLES;
|
|
16
|
+
private constructor();
|
|
17
|
+
get value(): RoleEnum;
|
|
18
|
+
/**
|
|
19
|
+
* Create a Role from a string value
|
|
20
|
+
*/
|
|
21
|
+
static create(value: string): Role;
|
|
22
|
+
/**
|
|
23
|
+
* Create an admin role
|
|
24
|
+
*/
|
|
25
|
+
static admin(): Role;
|
|
26
|
+
/**
|
|
27
|
+
* Create a viewer role
|
|
28
|
+
*/
|
|
29
|
+
static viewer(): Role;
|
|
30
|
+
/**
|
|
31
|
+
* Check if this role is admin
|
|
32
|
+
*/
|
|
33
|
+
get isAdmin(): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Check if this role is viewer
|
|
36
|
+
*/
|
|
37
|
+
get isViewer(): boolean;
|
|
38
|
+
equals(other: Role): boolean;
|
|
39
|
+
toString(): string;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=Role.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Role.d.ts","sourceRoot":"","sources":["../../../src/domain/value-objects/Role.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,MAAM,WAAW;CAClB;AAED;;;GAGG;AACH,qBAAa,IAAI;IAGK,OAAO,CAAC,QAAQ,CAAC,MAAM;IAF3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAoC;IAEvE,OAAO;IAIP,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAalC;;OAEG;IACH,MAAM,CAAC,KAAK,IAAI,IAAI;IAIpB;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,IAAI;IAIrB;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO;IAI5B,QAAQ,IAAI,MAAM;CAGnB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Role Enum
|
|
3
|
+
* Defines available user roles in the system
|
|
4
|
+
*/
|
|
5
|
+
export var RoleEnum;
|
|
6
|
+
(function (RoleEnum) {
|
|
7
|
+
RoleEnum["ADMIN"] = "admin";
|
|
8
|
+
RoleEnum["VIEWER"] = "viewer";
|
|
9
|
+
})(RoleEnum || (RoleEnum = {}));
|
|
10
|
+
/**
|
|
11
|
+
* Role Value Object
|
|
12
|
+
* Represents a validated user role
|
|
13
|
+
*/
|
|
14
|
+
export class Role {
|
|
15
|
+
_value;
|
|
16
|
+
static VALID_ROLES = new Set(Object.values(RoleEnum));
|
|
17
|
+
constructor(_value) {
|
|
18
|
+
this._value = _value;
|
|
19
|
+
Object.freeze(this);
|
|
20
|
+
}
|
|
21
|
+
get value() {
|
|
22
|
+
return this._value;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Create a Role from a string value
|
|
26
|
+
*/
|
|
27
|
+
static create(value) {
|
|
28
|
+
const normalized = value.trim().toLowerCase();
|
|
29
|
+
if (!Role.VALID_ROLES.has(normalized)) {
|
|
30
|
+
const validRoles = Array.from(Role.VALID_ROLES).join(', ');
|
|
31
|
+
throw new Error(`Invalid role: ${value}. Valid roles are: ${validRoles}`);
|
|
32
|
+
}
|
|
33
|
+
return new Role(normalized);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Create an admin role
|
|
37
|
+
*/
|
|
38
|
+
static admin() {
|
|
39
|
+
return new Role(RoleEnum.ADMIN);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create a viewer role
|
|
43
|
+
*/
|
|
44
|
+
static viewer() {
|
|
45
|
+
return new Role(RoleEnum.VIEWER);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Check if this role is admin
|
|
49
|
+
*/
|
|
50
|
+
get isAdmin() {
|
|
51
|
+
return this._value === RoleEnum.ADMIN;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Check if this role is viewer
|
|
55
|
+
*/
|
|
56
|
+
get isViewer() {
|
|
57
|
+
return this._value === RoleEnum.VIEWER;
|
|
58
|
+
}
|
|
59
|
+
equals(other) {
|
|
60
|
+
return this._value === other._value;
|
|
61
|
+
}
|
|
62
|
+
toString() {
|
|
63
|
+
return this._value;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=Role.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/domain/value-objects/Role.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AAED;;;GAGG;AACH,MAAM,OAAO,IAAI;IAGsB;IAF7B,MAAM,CAAU,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEvE,YAAqC,MAAgB;QAAhB,WAAM,GAAN,MAAM,CAAU;QACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAa;QACzB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAc,CAAC;QAE1D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,IAAI,KAAK,CACb,iBAAiB,KAAK,sBAAsB,UAAU,EAAE,CACzD,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK;QACV,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,KAAK,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,KAAW;QAChB,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;IACtC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerType.d.ts","sourceRoot":"","sources":["../../../src/domain/value-objects/ServerType.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"ServerType.d.ts","sourceRoot":"","sources":["../../../src/domain/value-objects/ServerType.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;CACtB;AAoED,qBAAa,UAAU;IACD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA3C,OAAO;IAIP,IAAI,KAAK,IAAI,cAAc,CAE1B;IAED,IAAI,IAAI,IAAI,cAAc,CAKzB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAWxC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU;IAIlD,MAAM,CAAC,MAAM,IAAI,cAAc,EAAE;IAOjC,MAAM,CAAC,cAAc,IAAI,UAAU;IAInC,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;IAIlC,QAAQ,IAAI,MAAM;CAGnB"}
|
|
@@ -7,6 +7,7 @@ export var ServerTypeEnum;
|
|
|
7
7
|
ServerTypeEnum["PAPER"] = "PAPER";
|
|
8
8
|
ServerTypeEnum["VANILLA"] = "VANILLA";
|
|
9
9
|
ServerTypeEnum["FORGE"] = "FORGE";
|
|
10
|
+
ServerTypeEnum["NEOFORGE"] = "NEOFORGE";
|
|
10
11
|
ServerTypeEnum["FABRIC"] = "FABRIC";
|
|
11
12
|
ServerTypeEnum["SPIGOT"] = "SPIGOT";
|
|
12
13
|
ServerTypeEnum["BUKKIT"] = "BUKKIT";
|
|
@@ -35,6 +36,13 @@ const SERVER_TYPE_INFO = {
|
|
|
35
36
|
supportsMods: true,
|
|
36
37
|
recommended: false,
|
|
37
38
|
},
|
|
39
|
+
[ServerTypeEnum.NEOFORGE]: {
|
|
40
|
+
label: 'NeoForge',
|
|
41
|
+
description: 'Modern Forge fork for Minecraft 1.20.1+',
|
|
42
|
+
supportsPlugins: false,
|
|
43
|
+
supportsMods: true,
|
|
44
|
+
recommended: false,
|
|
45
|
+
},
|
|
38
46
|
[ServerTypeEnum.FABRIC]: {
|
|
39
47
|
label: 'Fabric',
|
|
40
48
|
description: 'Lightweight modded server',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerType.js","sourceRoot":"","sources":["../../../src/domain/value-objects/ServerType.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"ServerType.js","sourceRoot":"","sources":["../../../src/domain/value-objects/ServerType.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service Status Enum
|
|
3
|
+
* Defines possible states for a managed service process
|
|
4
|
+
*/
|
|
5
|
+
export declare enum ServiceStatusEnum {
|
|
6
|
+
ONLINE = "online",
|
|
7
|
+
STOPPING = "stopping",
|
|
8
|
+
STOPPED = "stopped",
|
|
9
|
+
ERRORED = "errored",
|
|
10
|
+
ONE_LAUNCH_STATUS = "one-launch-status"
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* ServiceStatus Value Object
|
|
14
|
+
* Represents a validated service status
|
|
15
|
+
*/
|
|
16
|
+
export declare class ServiceStatus {
|
|
17
|
+
private readonly _value;
|
|
18
|
+
private static readonly VALID_STATUSES;
|
|
19
|
+
private constructor();
|
|
20
|
+
get value(): ServiceStatusEnum;
|
|
21
|
+
/**
|
|
22
|
+
* Create a ServiceStatus from a string value
|
|
23
|
+
*/
|
|
24
|
+
static create(value: string): ServiceStatus;
|
|
25
|
+
/**
|
|
26
|
+
* Create an online status
|
|
27
|
+
*/
|
|
28
|
+
static online(): ServiceStatus;
|
|
29
|
+
/**
|
|
30
|
+
* Create a stopped status
|
|
31
|
+
*/
|
|
32
|
+
static stopped(): ServiceStatus;
|
|
33
|
+
/**
|
|
34
|
+
* Create a stopping status
|
|
35
|
+
*/
|
|
36
|
+
static stopping(): ServiceStatus;
|
|
37
|
+
/**
|
|
38
|
+
* Create an errored status
|
|
39
|
+
*/
|
|
40
|
+
static errored(): ServiceStatus;
|
|
41
|
+
/**
|
|
42
|
+
* Check if service is online
|
|
43
|
+
*/
|
|
44
|
+
get isOnline(): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Check if service is stopped
|
|
47
|
+
*/
|
|
48
|
+
get isStopped(): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Check if service is stopping
|
|
51
|
+
*/
|
|
52
|
+
get isStopping(): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Check if service has errored
|
|
55
|
+
*/
|
|
56
|
+
get isErrored(): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Check if service is running (online or stopping)
|
|
59
|
+
*/
|
|
60
|
+
get isRunning(): boolean;
|
|
61
|
+
equals(other: ServiceStatus): boolean;
|
|
62
|
+
toString(): string;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=ServiceStatus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceStatus.d.ts","sourceRoot":"","sources":["../../../src/domain/value-objects/ServiceStatus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;CACxC;AAED;;;GAGG;AACH,qBAAa,aAAa;IAGJ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAF3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAEnF,OAAO;IAIP,IAAI,KAAK,IAAI,iBAAiB,CAE7B;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa;IAa3C;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,aAAa;IAI9B;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,aAAa;IAI/B;;OAEG;IACH,MAAM,CAAC,QAAQ,IAAI,aAAa;IAIhC;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,aAAa;IAI/B;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAIrC,QAAQ,IAAI,MAAM;CAGnB"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service Status Enum
|
|
3
|
+
* Defines possible states for a managed service process
|
|
4
|
+
*/
|
|
5
|
+
export var ServiceStatusEnum;
|
|
6
|
+
(function (ServiceStatusEnum) {
|
|
7
|
+
ServiceStatusEnum["ONLINE"] = "online";
|
|
8
|
+
ServiceStatusEnum["STOPPING"] = "stopping";
|
|
9
|
+
ServiceStatusEnum["STOPPED"] = "stopped";
|
|
10
|
+
ServiceStatusEnum["ERRORED"] = "errored";
|
|
11
|
+
ServiceStatusEnum["ONE_LAUNCH_STATUS"] = "one-launch-status";
|
|
12
|
+
})(ServiceStatusEnum || (ServiceStatusEnum = {}));
|
|
13
|
+
/**
|
|
14
|
+
* ServiceStatus Value Object
|
|
15
|
+
* Represents a validated service status
|
|
16
|
+
*/
|
|
17
|
+
export class ServiceStatus {
|
|
18
|
+
_value;
|
|
19
|
+
static VALID_STATUSES = new Set(Object.values(ServiceStatusEnum));
|
|
20
|
+
constructor(_value) {
|
|
21
|
+
this._value = _value;
|
|
22
|
+
Object.freeze(this);
|
|
23
|
+
}
|
|
24
|
+
get value() {
|
|
25
|
+
return this._value;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Create a ServiceStatus from a string value
|
|
29
|
+
*/
|
|
30
|
+
static create(value) {
|
|
31
|
+
const normalized = value.trim().toLowerCase();
|
|
32
|
+
if (!ServiceStatus.VALID_STATUSES.has(normalized)) {
|
|
33
|
+
const validStatuses = Array.from(ServiceStatus.VALID_STATUSES).join(', ');
|
|
34
|
+
throw new Error(`Invalid service status: ${value}. Valid statuses are: ${validStatuses}`);
|
|
35
|
+
}
|
|
36
|
+
return new ServiceStatus(normalized);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Create an online status
|
|
40
|
+
*/
|
|
41
|
+
static online() {
|
|
42
|
+
return new ServiceStatus(ServiceStatusEnum.ONLINE);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Create a stopped status
|
|
46
|
+
*/
|
|
47
|
+
static stopped() {
|
|
48
|
+
return new ServiceStatus(ServiceStatusEnum.STOPPED);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Create a stopping status
|
|
52
|
+
*/
|
|
53
|
+
static stopping() {
|
|
54
|
+
return new ServiceStatus(ServiceStatusEnum.STOPPING);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Create an errored status
|
|
58
|
+
*/
|
|
59
|
+
static errored() {
|
|
60
|
+
return new ServiceStatus(ServiceStatusEnum.ERRORED);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Check if service is online
|
|
64
|
+
*/
|
|
65
|
+
get isOnline() {
|
|
66
|
+
return this._value === ServiceStatusEnum.ONLINE;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Check if service is stopped
|
|
70
|
+
*/
|
|
71
|
+
get isStopped() {
|
|
72
|
+
return this._value === ServiceStatusEnum.STOPPED;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Check if service is stopping
|
|
76
|
+
*/
|
|
77
|
+
get isStopping() {
|
|
78
|
+
return this._value === ServiceStatusEnum.STOPPING;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Check if service has errored
|
|
82
|
+
*/
|
|
83
|
+
get isErrored() {
|
|
84
|
+
return this._value === ServiceStatusEnum.ERRORED;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Check if service is running (online or stopping)
|
|
88
|
+
*/
|
|
89
|
+
get isRunning() {
|
|
90
|
+
return this._value === ServiceStatusEnum.ONLINE || this._value === ServiceStatusEnum.STOPPING;
|
|
91
|
+
}
|
|
92
|
+
equals(other) {
|
|
93
|
+
return this._value === other._value;
|
|
94
|
+
}
|
|
95
|
+
toString() {
|
|
96
|
+
return this._value;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=ServiceStatus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceStatus.js","sourceRoot":"","sources":["../../../src/domain/value-objects/ServiceStatus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;IACrB,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;AACzC,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B;AAED;;;GAGG;AACH,MAAM,OAAO,aAAa;IAGa;IAF7B,MAAM,CAAU,cAAc,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAEnF,YAAqC,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;QAC5D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAa;QACzB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAuB,CAAC;QAEnE,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAClD,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1E,MAAM,IAAI,KAAK,CACb,2BAA2B,KAAK,yBAAyB,aAAa,EAAE,CACzE,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,aAAa,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ;QACb,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,OAAO,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,QAAQ,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,OAAO,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,QAAQ,CAAC;IAChG,CAAC;IAED,MAAM,CAAC,KAAoB;QACzB,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;IACtC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UserId Value Object
|
|
3
|
+
* Represents a validated UUID-based user identifier
|
|
4
|
+
*/
|
|
5
|
+
export declare class UserId {
|
|
6
|
+
private readonly _value;
|
|
7
|
+
private static readonly UUID_REGEX;
|
|
8
|
+
private constructor();
|
|
9
|
+
get value(): string;
|
|
10
|
+
/**
|
|
11
|
+
* Create a UserId from an existing UUID string
|
|
12
|
+
*/
|
|
13
|
+
static create(value: string): UserId;
|
|
14
|
+
/**
|
|
15
|
+
* Generate a new random UserId
|
|
16
|
+
*/
|
|
17
|
+
static generate(): UserId;
|
|
18
|
+
equals(other: UserId): boolean;
|
|
19
|
+
toString(): string;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=UserId.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UserId.d.ts","sourceRoot":"","sources":["../../../src/domain/value-objects/UserId.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,MAAM;IAIG,OAAO,CAAC,QAAQ,CAAC,MAAM;IAH3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAC6C;IAE/E,OAAO;IAIP,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAcpC;;OAEG;IACH,MAAM,CAAC,QAAQ,IAAI,MAAM;IAMzB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9B,QAAQ,IAAI,MAAM;CAGnB"}
|