@minecraft-docker/shared 1.6.0 → 1.6.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.
- package/dist/application/index.d.ts +3 -0
- package/dist/application/index.d.ts.map +1 -0
- package/dist/application/index.js +5 -0
- package/dist/application/index.js.map +1 -0
- package/dist/application/ports/inbound/IBackupUseCase.d.ts +69 -0
- package/dist/application/ports/inbound/IBackupUseCase.d.ts.map +1 -0
- package/dist/application/ports/inbound/IBackupUseCase.js +2 -0
- package/dist/application/ports/inbound/IBackupUseCase.js.map +1 -0
- package/dist/application/ports/inbound/ICreateServerUseCase.d.ts +32 -0
- package/dist/application/ports/inbound/ICreateServerUseCase.d.ts.map +1 -0
- package/dist/application/ports/inbound/ICreateServerUseCase.js +2 -0
- package/dist/application/ports/inbound/ICreateServerUseCase.js.map +1 -0
- package/dist/application/ports/inbound/IDeleteServerUseCase.d.ts +26 -0
- package/dist/application/ports/inbound/IDeleteServerUseCase.d.ts.map +1 -0
- package/dist/application/ports/inbound/IDeleteServerUseCase.js +2 -0
- package/dist/application/ports/inbound/IDeleteServerUseCase.js.map +1 -0
- package/dist/application/ports/inbound/IPlayerLookupUseCase.d.ts +47 -0
- package/dist/application/ports/inbound/IPlayerLookupUseCase.d.ts.map +1 -0
- package/dist/application/ports/inbound/IPlayerLookupUseCase.js +2 -0
- package/dist/application/ports/inbound/IPlayerLookupUseCase.js.map +1 -0
- package/dist/application/ports/inbound/IServerStatusUseCase.d.ts +34 -0
- package/dist/application/ports/inbound/IServerStatusUseCase.d.ts.map +1 -0
- package/dist/application/ports/inbound/IServerStatusUseCase.js +2 -0
- package/dist/application/ports/inbound/IServerStatusUseCase.js.map +1 -0
- package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts +56 -0
- package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts.map +1 -0
- package/dist/application/ports/inbound/IWorldManagementUseCase.js +2 -0
- package/dist/application/ports/inbound/IWorldManagementUseCase.js.map +1 -0
- package/dist/application/ports/inbound/index.d.ts +7 -0
- package/dist/application/ports/inbound/index.d.ts.map +1 -0
- package/dist/application/ports/inbound/index.js +2 -0
- package/dist/application/ports/inbound/index.js.map +1 -0
- package/dist/application/ports/index.d.ts +3 -0
- package/dist/application/ports/index.d.ts.map +1 -0
- package/dist/application/ports/index.js +2 -0
- package/dist/application/ports/index.js.map +1 -0
- package/dist/application/ports/outbound/IDocProvider.d.ts +73 -0
- package/dist/application/ports/outbound/IDocProvider.d.ts.map +1 -0
- package/dist/application/ports/outbound/IDocProvider.js +2 -0
- package/dist/application/ports/outbound/IDocProvider.js.map +1 -0
- package/dist/application/ports/outbound/IPromptPort.d.ts +136 -0
- package/dist/application/ports/outbound/IPromptPort.d.ts.map +1 -0
- package/dist/application/ports/outbound/IPromptPort.js +2 -0
- package/dist/application/ports/outbound/IPromptPort.js.map +1 -0
- package/dist/application/ports/outbound/IServerRepository.d.ts +54 -0
- package/dist/application/ports/outbound/IServerRepository.d.ts.map +1 -0
- package/dist/application/ports/outbound/IServerRepository.js +2 -0
- package/dist/application/ports/outbound/IServerRepository.js.map +1 -0
- package/dist/application/ports/outbound/IShellPort.d.ts +106 -0
- package/dist/application/ports/outbound/IShellPort.d.ts.map +1 -0
- package/dist/application/ports/outbound/IShellPort.js +2 -0
- package/dist/application/ports/outbound/IShellPort.js.map +1 -0
- package/dist/application/ports/outbound/IWorldRepository.d.ts +71 -0
- package/dist/application/ports/outbound/IWorldRepository.d.ts.map +1 -0
- package/dist/application/ports/outbound/IWorldRepository.js +2 -0
- package/dist/application/ports/outbound/IWorldRepository.js.map +1 -0
- package/dist/application/ports/outbound/index.d.ts +6 -0
- package/dist/application/ports/outbound/index.d.ts.map +1 -0
- package/dist/application/ports/outbound/index.js +2 -0
- package/dist/application/ports/outbound/index.js.map +1 -0
- package/dist/application/use-cases/BackupUseCase.d.ts +35 -0
- package/dist/application/use-cases/BackupUseCase.d.ts.map +1 -0
- package/dist/application/use-cases/BackupUseCase.js +222 -0
- package/dist/application/use-cases/BackupUseCase.js.map +1 -0
- package/dist/application/use-cases/CreateServerUseCase.d.ts +22 -0
- package/dist/application/use-cases/CreateServerUseCase.d.ts.map +1 -0
- package/dist/application/use-cases/CreateServerUseCase.js +145 -0
- package/dist/application/use-cases/CreateServerUseCase.js.map +1 -0
- package/dist/application/use-cases/DeleteServerUseCase.d.ts +24 -0
- package/dist/application/use-cases/DeleteServerUseCase.d.ts.map +1 -0
- package/dist/application/use-cases/DeleteServerUseCase.js +108 -0
- package/dist/application/use-cases/DeleteServerUseCase.js.map +1 -0
- package/dist/application/use-cases/PlayerLookupUseCase.d.ts +23 -0
- package/dist/application/use-cases/PlayerLookupUseCase.d.ts.map +1 -0
- package/dist/application/use-cases/PlayerLookupUseCase.js +130 -0
- package/dist/application/use-cases/PlayerLookupUseCase.js.map +1 -0
- package/dist/application/use-cases/ServerStatusUseCase.d.ts +30 -0
- package/dist/application/use-cases/ServerStatusUseCase.d.ts.map +1 -0
- package/dist/application/use-cases/ServerStatusUseCase.js +117 -0
- package/dist/application/use-cases/ServerStatusUseCase.js.map +1 -0
- package/dist/application/use-cases/WorldManagementUseCase.d.ts +33 -0
- package/dist/application/use-cases/WorldManagementUseCase.d.ts.map +1 -0
- package/dist/application/use-cases/WorldManagementUseCase.js +239 -0
- package/dist/application/use-cases/WorldManagementUseCase.js.map +1 -0
- package/dist/application/use-cases/index.d.ts +7 -0
- package/dist/application/use-cases/index.d.ts.map +1 -0
- package/dist/application/use-cases/index.js +7 -0
- package/dist/application/use-cases/index.js.map +1 -0
- package/dist/docker/index.d.ts +111 -0
- package/dist/docker/index.d.ts.map +1 -0
- package/dist/docker/index.js +532 -0
- package/dist/docker/index.js.map +1 -0
- package/dist/domain/entities/Server.d.ts +77 -0
- package/dist/domain/entities/Server.d.ts.map +1 -0
- package/dist/domain/entities/Server.js +138 -0
- package/dist/domain/entities/Server.js.map +1 -0
- package/dist/domain/entities/World.d.ts +70 -0
- package/dist/domain/entities/World.d.ts.map +1 -0
- package/dist/domain/entities/World.js +128 -0
- package/dist/domain/entities/World.js.map +1 -0
- package/dist/domain/entities/index.d.ts +3 -0
- package/dist/domain/entities/index.d.ts.map +1 -0
- package/dist/domain/entities/index.js +3 -0
- package/dist/domain/entities/index.js.map +1 -0
- package/dist/domain/index.d.ts +3 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +5 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/value-objects/McVersion.d.ts +35 -0
- package/dist/domain/value-objects/McVersion.d.ts.map +1 -0
- package/dist/domain/value-objects/McVersion.js +117 -0
- package/dist/domain/value-objects/McVersion.js.map +1 -0
- package/dist/domain/value-objects/Memory.d.ts +37 -0
- package/dist/domain/value-objects/Memory.d.ts.map +1 -0
- package/dist/domain/value-objects/Memory.js +107 -0
- package/dist/domain/value-objects/Memory.js.map +1 -0
- package/dist/domain/value-objects/ServerName.d.ts +21 -0
- package/dist/domain/value-objects/ServerName.d.ts.map +1 -0
- package/dist/domain/value-objects/ServerName.js +58 -0
- package/dist/domain/value-objects/ServerName.js.map +1 -0
- package/dist/domain/value-objects/ServerType.d.ts +39 -0
- package/dist/domain/value-objects/ServerType.d.ts.map +1 -0
- package/dist/domain/value-objects/ServerType.js +128 -0
- package/dist/domain/value-objects/ServerType.js.map +1 -0
- package/dist/domain/value-objects/WorldOptions.d.ts +49 -0
- package/dist/domain/value-objects/WorldOptions.d.ts.map +1 -0
- package/dist/domain/value-objects/WorldOptions.js +149 -0
- package/dist/domain/value-objects/WorldOptions.js.map +1 -0
- package/dist/domain/value-objects/index.d.ts +6 -0
- package/dist/domain/value-objects/index.d.ts.map +1 -0
- package/dist/domain/value-objects/index.js +6 -0
- package/dist/domain/value-objects/index.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/infrastructure/adapters/DocsAdapter.d.ts +45 -0
- package/dist/infrastructure/adapters/DocsAdapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/DocsAdapter.js +490 -0
- package/dist/infrastructure/adapters/DocsAdapter.js.map +1 -0
- package/dist/infrastructure/adapters/ServerRepository.d.ts +49 -0
- package/dist/infrastructure/adapters/ServerRepository.d.ts.map +1 -0
- package/dist/infrastructure/adapters/ServerRepository.js +206 -0
- package/dist/infrastructure/adapters/ServerRepository.js.map +1 -0
- package/dist/infrastructure/adapters/ShellAdapter.d.ts +39 -0
- package/dist/infrastructure/adapters/ShellAdapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/ShellAdapter.js +188 -0
- package/dist/infrastructure/adapters/ShellAdapter.js.map +1 -0
- package/dist/infrastructure/adapters/WorldRepository.d.ts +55 -0
- package/dist/infrastructure/adapters/WorldRepository.d.ts.map +1 -0
- package/dist/infrastructure/adapters/WorldRepository.js +213 -0
- package/dist/infrastructure/adapters/WorldRepository.js.map +1 -0
- package/dist/infrastructure/adapters/index.d.ts +9 -0
- package/dist/infrastructure/adapters/index.d.ts.map +1 -0
- package/dist/infrastructure/adapters/index.js +9 -0
- package/dist/infrastructure/adapters/index.js.map +1 -0
- package/dist/infrastructure/index.d.ts +6 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +6 -0
- package/dist/infrastructure/index.js.map +1 -0
- package/dist/types/index.d.ts +151 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/index.d.ts +81 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +200 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,kBAAkB,CAAC;AAEjC,YAAY;AACZ,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backup Use Case - Inbound Port
|
|
3
|
+
* Manages world backups to GitHub
|
|
4
|
+
*/
|
|
5
|
+
export interface IBackupUseCase {
|
|
6
|
+
/**
|
|
7
|
+
* Interactive backup push
|
|
8
|
+
*/
|
|
9
|
+
push(): Promise<BackupPushResult>;
|
|
10
|
+
/**
|
|
11
|
+
* Push backup with message
|
|
12
|
+
*/
|
|
13
|
+
pushWithMessage(message: string): Promise<BackupPushResult>;
|
|
14
|
+
/**
|
|
15
|
+
* Get backup status
|
|
16
|
+
*/
|
|
17
|
+
status(): Promise<BackupStatusResult>;
|
|
18
|
+
/**
|
|
19
|
+
* Get backup history
|
|
20
|
+
*/
|
|
21
|
+
history(): Promise<BackupHistoryResult[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Interactive restore selection
|
|
24
|
+
*/
|
|
25
|
+
restore(): Promise<BackupRestoreResult>;
|
|
26
|
+
/**
|
|
27
|
+
* Restore from specific commit
|
|
28
|
+
*/
|
|
29
|
+
restoreFromCommit(commitHash: string): Promise<BackupRestoreResult>;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Backup push result
|
|
33
|
+
*/
|
|
34
|
+
export interface BackupPushResult {
|
|
35
|
+
success: boolean;
|
|
36
|
+
commitHash?: string;
|
|
37
|
+
message?: string;
|
|
38
|
+
worldsBackedUp?: string[];
|
|
39
|
+
error?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Backup status result
|
|
43
|
+
*/
|
|
44
|
+
export interface BackupStatusResult {
|
|
45
|
+
configured: boolean;
|
|
46
|
+
repository?: string;
|
|
47
|
+
branch?: string;
|
|
48
|
+
lastBackup?: Date;
|
|
49
|
+
autoBackupEnabled?: boolean;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Backup history entry
|
|
53
|
+
*/
|
|
54
|
+
export interface BackupHistoryResult {
|
|
55
|
+
commitHash: string;
|
|
56
|
+
message: string;
|
|
57
|
+
date: Date;
|
|
58
|
+
author: string;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Backup restore result
|
|
62
|
+
*/
|
|
63
|
+
export interface BackupRestoreResult {
|
|
64
|
+
success: boolean;
|
|
65
|
+
commitHash: string;
|
|
66
|
+
worldsRestored?: string[];
|
|
67
|
+
error?: string;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=IBackupUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IBackupUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IBackupUseCase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAElC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE5D;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEtC;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAE1C;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAExC;;OAEG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IBackupUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IBackupUseCase.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Server } from '../../../domain/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Create Server Use Case - Inbound Port
|
|
4
|
+
* Orchestrates interactive server creation flow
|
|
5
|
+
*/
|
|
6
|
+
export interface ICreateServerUseCase {
|
|
7
|
+
/**
|
|
8
|
+
* Execute interactive server creation
|
|
9
|
+
* Prompts user for all configuration options
|
|
10
|
+
*/
|
|
11
|
+
execute(): Promise<Server>;
|
|
12
|
+
/**
|
|
13
|
+
* Execute server creation with provided configuration
|
|
14
|
+
* Used when arguments are passed via CLI
|
|
15
|
+
*/
|
|
16
|
+
executeWithConfig(config: CreateServerConfig): Promise<Server>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Server creation configuration
|
|
20
|
+
* Used for non-interactive mode
|
|
21
|
+
*/
|
|
22
|
+
export interface CreateServerConfig {
|
|
23
|
+
name: string;
|
|
24
|
+
type?: string;
|
|
25
|
+
version?: string;
|
|
26
|
+
memory?: string;
|
|
27
|
+
seed?: string;
|
|
28
|
+
worldName?: string;
|
|
29
|
+
worldUrl?: string;
|
|
30
|
+
autoStart?: boolean;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=ICreateServerUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ICreateServerUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/ICreateServerUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3B;;;OAGG;IACH,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAChE;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ICreateServerUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/ICreateServerUseCase.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Delete Server Use Case - Inbound Port
|
|
3
|
+
* Orchestrates server deletion with confirmation
|
|
4
|
+
*/
|
|
5
|
+
export interface IDeleteServerUseCase {
|
|
6
|
+
/**
|
|
7
|
+
* Execute interactive server deletion
|
|
8
|
+
* Shows server selection and confirmation prompts
|
|
9
|
+
*/
|
|
10
|
+
execute(): Promise<boolean>;
|
|
11
|
+
/**
|
|
12
|
+
* Execute server deletion with provided name
|
|
13
|
+
* Used when server name is passed via CLI
|
|
14
|
+
*/
|
|
15
|
+
executeWithName(name: string, force?: boolean): Promise<boolean>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Server deletion result
|
|
19
|
+
*/
|
|
20
|
+
export interface DeleteServerResult {
|
|
21
|
+
success: boolean;
|
|
22
|
+
serverName: string;
|
|
23
|
+
worldPreserved?: string;
|
|
24
|
+
error?: string;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=IDeleteServerUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDeleteServerUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IDeleteServerUseCase.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5B;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDeleteServerUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IDeleteServerUseCase.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Player Lookup Use Case - Inbound Port
|
|
3
|
+
* Looks up Minecraft player information
|
|
4
|
+
*/
|
|
5
|
+
export interface IPlayerLookupUseCase {
|
|
6
|
+
/**
|
|
7
|
+
* Interactive player lookup
|
|
8
|
+
*/
|
|
9
|
+
lookup(): Promise<PlayerLookupResult>;
|
|
10
|
+
/**
|
|
11
|
+
* Lookup player by name
|
|
12
|
+
*/
|
|
13
|
+
lookupByName(name: string): Promise<PlayerLookupResult>;
|
|
14
|
+
/**
|
|
15
|
+
* Get player UUID
|
|
16
|
+
*/
|
|
17
|
+
getUuid(name: string, offline?: boolean): Promise<PlayerUuidResult>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Player lookup result
|
|
21
|
+
*/
|
|
22
|
+
export interface PlayerLookupResult {
|
|
23
|
+
success: boolean;
|
|
24
|
+
name?: string;
|
|
25
|
+
uuid?: string;
|
|
26
|
+
skinUrl?: string;
|
|
27
|
+
nameHistory?: PlayerNameHistory[];
|
|
28
|
+
error?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Player name history entry
|
|
32
|
+
*/
|
|
33
|
+
export interface PlayerNameHistory {
|
|
34
|
+
name: string;
|
|
35
|
+
changedAt?: Date;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Player UUID result
|
|
39
|
+
*/
|
|
40
|
+
export interface PlayerUuidResult {
|
|
41
|
+
success: boolean;
|
|
42
|
+
name: string;
|
|
43
|
+
uuid?: string;
|
|
44
|
+
isOffline: boolean;
|
|
45
|
+
error?: string;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=IPlayerLookupUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPlayerLookupUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IPlayerLookupUseCase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEtC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAExD;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPlayerLookupUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IPlayerLookupUseCase.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ServerStatus } from '../../../domain/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Server Status Use Case - Inbound Port
|
|
4
|
+
* Displays server status information
|
|
5
|
+
*/
|
|
6
|
+
export interface IServerStatusUseCase {
|
|
7
|
+
/**
|
|
8
|
+
* Get status of all servers
|
|
9
|
+
*/
|
|
10
|
+
execute(): Promise<ServerStatusResult[]>;
|
|
11
|
+
/**
|
|
12
|
+
* Get status of a specific server
|
|
13
|
+
*/
|
|
14
|
+
executeForServer(name: string): Promise<ServerStatusResult>;
|
|
15
|
+
/**
|
|
16
|
+
* Get status in JSON format
|
|
17
|
+
*/
|
|
18
|
+
executeAsJson(): Promise<string>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Server status result
|
|
22
|
+
*/
|
|
23
|
+
export interface ServerStatusResult {
|
|
24
|
+
name: string;
|
|
25
|
+
containerName: string;
|
|
26
|
+
hostname: string;
|
|
27
|
+
status: ServerStatus;
|
|
28
|
+
type: string;
|
|
29
|
+
version: string;
|
|
30
|
+
playerCount: number;
|
|
31
|
+
memory?: string;
|
|
32
|
+
uptime?: string;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=IServerStatusUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IServerStatusUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IServerStatusUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAEzC;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE5D;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IServerStatusUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IServerStatusUseCase.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* World Management Use Case - Inbound Port
|
|
3
|
+
* Manages world assignments and locks
|
|
4
|
+
*/
|
|
5
|
+
export interface IWorldManagementUseCase {
|
|
6
|
+
/**
|
|
7
|
+
* List all worlds with lock status
|
|
8
|
+
*/
|
|
9
|
+
listWorlds(): Promise<WorldListResult[]>;
|
|
10
|
+
/**
|
|
11
|
+
* Interactive world assignment
|
|
12
|
+
*/
|
|
13
|
+
assignWorld(): Promise<WorldAssignResult>;
|
|
14
|
+
/**
|
|
15
|
+
* Assign world to server by name
|
|
16
|
+
*/
|
|
17
|
+
assignWorldByName(worldName: string, serverName: string): Promise<WorldAssignResult>;
|
|
18
|
+
/**
|
|
19
|
+
* Interactive world release
|
|
20
|
+
*/
|
|
21
|
+
releaseWorld(): Promise<WorldReleaseResult>;
|
|
22
|
+
/**
|
|
23
|
+
* Release world by name
|
|
24
|
+
*/
|
|
25
|
+
releaseWorldByName(worldName: string, force?: boolean): Promise<WorldReleaseResult>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* World list result
|
|
29
|
+
*/
|
|
30
|
+
export interface WorldListResult {
|
|
31
|
+
name: string;
|
|
32
|
+
path: string;
|
|
33
|
+
isLocked: boolean;
|
|
34
|
+
lockedBy?: string;
|
|
35
|
+
size: string;
|
|
36
|
+
lastModified?: Date;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* World assignment result
|
|
40
|
+
*/
|
|
41
|
+
export interface WorldAssignResult {
|
|
42
|
+
success: boolean;
|
|
43
|
+
worldName: string;
|
|
44
|
+
serverName: string;
|
|
45
|
+
error?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* World release result
|
|
49
|
+
*/
|
|
50
|
+
export interface WorldReleaseResult {
|
|
51
|
+
success: boolean;
|
|
52
|
+
worldName: string;
|
|
53
|
+
previousServer?: string;
|
|
54
|
+
error?: string;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=IWorldManagementUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IWorldManagementUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IWorldManagementUseCase.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEzC;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE1C;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAErF;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE5C;;OAEG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACrF;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IWorldManagementUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IWorldManagementUseCase.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type { ICreateServerUseCase, CreateServerConfig } from './ICreateServerUseCase.js';
|
|
2
|
+
export type { IDeleteServerUseCase, DeleteServerResult } from './IDeleteServerUseCase.js';
|
|
3
|
+
export type { IServerStatusUseCase, ServerStatusResult } from './IServerStatusUseCase.js';
|
|
4
|
+
export type { IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, } from './IWorldManagementUseCase.js';
|
|
5
|
+
export type { IBackupUseCase, BackupPushResult, BackupStatusResult, BackupHistoryResult, BackupRestoreResult, } from './IBackupUseCase.js';
|
|
6
|
+
export type { IPlayerLookupUseCase, PlayerLookupResult, PlayerNameHistory, PlayerUuidResult, } from './IPlayerLookupUseCase.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export type { ICreateServerUseCase, CreateServerConfig, IDeleteServerUseCase, DeleteServerResult, IServerStatusUseCase, ServerStatusResult, IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, IBackupUseCase, BackupPushResult, BackupStatusResult, BackupHistoryResult, BackupRestoreResult, IPlayerLookupUseCase, PlayerLookupResult, PlayerNameHistory, PlayerUuidResult, } from './inbound/index.js';
|
|
2
|
+
export type { IPromptPort, TextPromptOptions, SelectPromptOptions, SelectOption, ConfirmPromptOptions, Spinner, IShellPort, CreateServerOptions, LogsOptions, ShellResult, IDocProvider, DocServerTypeInfo, DocEnvVarInfo, DocVersionInfo, DocMemoryInfo, IServerRepository, ServerConfigData, IWorldRepository, WorldLockData, WorldWithServerStatus, ServerStatus, WorldAvailabilityCategory, } from './outbound/index.js';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/application/ports/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/ports/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { ServerTypeInfo } from '../../../domain/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Doc Provider Port - Outbound Port
|
|
4
|
+
* Interface for reading and parsing docs/ directory
|
|
5
|
+
*/
|
|
6
|
+
export interface IDocProvider {
|
|
7
|
+
/**
|
|
8
|
+
* Get server types from docs/06-types-and-platforms.md
|
|
9
|
+
*/
|
|
10
|
+
getServerTypes(): Promise<DocServerTypeInfo[]>;
|
|
11
|
+
/**
|
|
12
|
+
* Get environment variables from docs/03-variables.md
|
|
13
|
+
*/
|
|
14
|
+
getEnvVars(category?: string): Promise<DocEnvVarInfo[]>;
|
|
15
|
+
/**
|
|
16
|
+
* Get version compatibility information
|
|
17
|
+
*/
|
|
18
|
+
getVersionCompatibility(serverType: string): Promise<DocVersionInfo[]>;
|
|
19
|
+
/**
|
|
20
|
+
* Get common Minecraft versions
|
|
21
|
+
*/
|
|
22
|
+
getCommonVersions(): Promise<string[]>;
|
|
23
|
+
/**
|
|
24
|
+
* Get recommended memory settings
|
|
25
|
+
*/
|
|
26
|
+
getMemoryRecommendations(): Promise<DocMemoryInfo[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Check if docs are available
|
|
29
|
+
*/
|
|
30
|
+
isAvailable(): Promise<boolean>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Server type information from docs
|
|
34
|
+
*/
|
|
35
|
+
export interface DocServerTypeInfo extends ServerTypeInfo {
|
|
36
|
+
docSection?: string;
|
|
37
|
+
defaultVersion?: string;
|
|
38
|
+
javaVersions: string[];
|
|
39
|
+
notes?: string[];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Environment variable information from docs
|
|
43
|
+
*/
|
|
44
|
+
export interface DocEnvVarInfo {
|
|
45
|
+
name: string;
|
|
46
|
+
type: string;
|
|
47
|
+
default?: string;
|
|
48
|
+
description: string;
|
|
49
|
+
required: boolean;
|
|
50
|
+
category: string;
|
|
51
|
+
example?: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Version compatibility information
|
|
55
|
+
*/
|
|
56
|
+
export interface DocVersionInfo {
|
|
57
|
+
mcVersion: string;
|
|
58
|
+
javaVersion: string;
|
|
59
|
+
supportedTypes: string[];
|
|
60
|
+
releaseDate?: string;
|
|
61
|
+
isLatest?: boolean;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Memory recommendation information
|
|
65
|
+
*/
|
|
66
|
+
export interface DocMemoryInfo {
|
|
67
|
+
label: string;
|
|
68
|
+
value: string;
|
|
69
|
+
description: string;
|
|
70
|
+
recommended?: boolean;
|
|
71
|
+
forMods?: boolean;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=IDocProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDocProvider.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IDocProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE/C;;OAEG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAExD;;OAEG;IACH,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAEvE;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEvC;;OAEG;IACH,wBAAwB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAErD;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDocProvider.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IDocProvider.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { ServerName, ServerType, McVersion, Memory, WorldOptions, Server, World } from '../../../domain/index.js';
|
|
2
|
+
import type { WorldWithServerStatus } from './IWorldRepository.js';
|
|
3
|
+
/**
|
|
4
|
+
* Prompt Port - Outbound Port
|
|
5
|
+
* Interface for user interaction/prompts
|
|
6
|
+
*/
|
|
7
|
+
export interface IPromptPort {
|
|
8
|
+
/**
|
|
9
|
+
* Show introduction message
|
|
10
|
+
*/
|
|
11
|
+
intro(message: string): void;
|
|
12
|
+
/**
|
|
13
|
+
* Show conclusion message
|
|
14
|
+
*/
|
|
15
|
+
outro(message: string): void;
|
|
16
|
+
/**
|
|
17
|
+
* Text input prompt
|
|
18
|
+
*/
|
|
19
|
+
text(options: TextPromptOptions): Promise<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Select from options
|
|
22
|
+
*/
|
|
23
|
+
select<T>(options: SelectPromptOptions<T>): Promise<T>;
|
|
24
|
+
/**
|
|
25
|
+
* Confirm yes/no prompt
|
|
26
|
+
*/
|
|
27
|
+
confirm(options: ConfirmPromptOptions): Promise<boolean>;
|
|
28
|
+
/**
|
|
29
|
+
* Prompt for server name with validation
|
|
30
|
+
*/
|
|
31
|
+
promptServerName(): Promise<ServerName>;
|
|
32
|
+
/**
|
|
33
|
+
* Prompt for server type selection
|
|
34
|
+
*/
|
|
35
|
+
promptServerType(): Promise<ServerType>;
|
|
36
|
+
/**
|
|
37
|
+
* Prompt for Minecraft version
|
|
38
|
+
*/
|
|
39
|
+
promptMcVersion(serverType: ServerType): Promise<McVersion>;
|
|
40
|
+
/**
|
|
41
|
+
* Prompt for memory allocation
|
|
42
|
+
*/
|
|
43
|
+
promptMemory(): Promise<Memory>;
|
|
44
|
+
/**
|
|
45
|
+
* Prompt for world options (new/existing/download)
|
|
46
|
+
*/
|
|
47
|
+
promptWorldOptions(): Promise<WorldOptions>;
|
|
48
|
+
/**
|
|
49
|
+
* Prompt for server selection from list
|
|
50
|
+
*/
|
|
51
|
+
promptServerSelection(servers: Server[]): Promise<Server>;
|
|
52
|
+
/**
|
|
53
|
+
* Prompt for world selection from list
|
|
54
|
+
*/
|
|
55
|
+
promptWorldSelection(worlds: World[]): Promise<World>;
|
|
56
|
+
/**
|
|
57
|
+
* Prompt for existing world selection with availability status
|
|
58
|
+
* Shows worlds categorized by: available, stopped server, running server
|
|
59
|
+
* @param worlds - List of worlds with their server status
|
|
60
|
+
* @returns Selected world or null if cancelled/no selection
|
|
61
|
+
*/
|
|
62
|
+
promptExistingWorldSelection(worlds: WorldWithServerStatus[]): Promise<World | null>;
|
|
63
|
+
/**
|
|
64
|
+
* Start a spinner with message
|
|
65
|
+
*/
|
|
66
|
+
spinner(): Spinner;
|
|
67
|
+
/**
|
|
68
|
+
* Display success message
|
|
69
|
+
*/
|
|
70
|
+
success(message: string): void;
|
|
71
|
+
/**
|
|
72
|
+
* Display error message
|
|
73
|
+
*/
|
|
74
|
+
error(message: string): void;
|
|
75
|
+
/**
|
|
76
|
+
* Display warning message
|
|
77
|
+
*/
|
|
78
|
+
warn(message: string): void;
|
|
79
|
+
/**
|
|
80
|
+
* Display info message
|
|
81
|
+
*/
|
|
82
|
+
info(message: string): void;
|
|
83
|
+
/**
|
|
84
|
+
* Display note
|
|
85
|
+
*/
|
|
86
|
+
note(message: string, title?: string): void;
|
|
87
|
+
/**
|
|
88
|
+
* Check if user cancelled
|
|
89
|
+
*/
|
|
90
|
+
isCancel(value: unknown): boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Handle user cancellation
|
|
93
|
+
*/
|
|
94
|
+
handleCancel(): never;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Text prompt options
|
|
98
|
+
*/
|
|
99
|
+
export interface TextPromptOptions {
|
|
100
|
+
message: string;
|
|
101
|
+
placeholder?: string;
|
|
102
|
+
initialValue?: string;
|
|
103
|
+
validate?: (value: string) => string | void;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Select prompt options
|
|
107
|
+
*/
|
|
108
|
+
export interface SelectPromptOptions<T> {
|
|
109
|
+
message: string;
|
|
110
|
+
options: SelectOption<T>[];
|
|
111
|
+
initialValue?: T;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Select option
|
|
115
|
+
*/
|
|
116
|
+
export interface SelectOption<T> {
|
|
117
|
+
value: T;
|
|
118
|
+
label: string;
|
|
119
|
+
hint?: string;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Confirm prompt options
|
|
123
|
+
*/
|
|
124
|
+
export interface ConfirmPromptOptions {
|
|
125
|
+
message: string;
|
|
126
|
+
initialValue?: boolean;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Spinner interface
|
|
130
|
+
*/
|
|
131
|
+
export interface Spinner {
|
|
132
|
+
start(message?: string): void;
|
|
133
|
+
stop(message?: string): void;
|
|
134
|
+
message(message: string): void;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=IPromptPort.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPromptPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IPromptPort.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPromptPort.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IPromptPort.ts"],"names":[],"mappings":""}
|