@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.
Files changed (162) hide show
  1. package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts +41 -0
  2. package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts.map +1 -1
  3. package/dist/application/ports/inbound/index.d.ts +1 -1
  4. package/dist/application/ports/inbound/index.d.ts.map +1 -1
  5. package/dist/application/ports/index.d.ts +2 -2
  6. package/dist/application/ports/index.d.ts.map +1 -1
  7. package/dist/application/ports/outbound/IModSourcePort.d.ts +71 -0
  8. package/dist/application/ports/outbound/IModSourcePort.d.ts.map +1 -0
  9. package/dist/application/ports/outbound/IModSourcePort.js +19 -0
  10. package/dist/application/ports/outbound/IModSourcePort.js.map +1 -0
  11. package/dist/application/ports/outbound/IPromptPort.d.ts +12 -0
  12. package/dist/application/ports/outbound/IPromptPort.d.ts.map +1 -1
  13. package/dist/application/ports/outbound/IServiceManagerPort.d.ts +115 -0
  14. package/dist/application/ports/outbound/IServiceManagerPort.d.ts.map +1 -0
  15. package/dist/application/ports/outbound/IServiceManagerPort.js +2 -0
  16. package/dist/application/ports/outbound/IServiceManagerPort.js.map +1 -0
  17. package/dist/application/ports/outbound/IShellPort.d.ts +10 -2
  18. package/dist/application/ports/outbound/IShellPort.d.ts.map +1 -1
  19. package/dist/application/ports/outbound/IUserRepository.d.ts +42 -0
  20. package/dist/application/ports/outbound/IUserRepository.d.ts.map +1 -0
  21. package/dist/application/ports/outbound/IUserRepository.js +2 -0
  22. package/dist/application/ports/outbound/IUserRepository.js.map +1 -0
  23. package/dist/application/ports/outbound/IWorldRepository.d.ts +19 -0
  24. package/dist/application/ports/outbound/IWorldRepository.d.ts.map +1 -1
  25. package/dist/application/ports/outbound/index.d.ts +4 -1
  26. package/dist/application/ports/outbound/index.d.ts.map +1 -1
  27. package/dist/application/use-cases/CreateServerUseCase.d.ts.map +1 -1
  28. package/dist/application/use-cases/CreateServerUseCase.js +2 -3
  29. package/dist/application/use-cases/CreateServerUseCase.js.map +1 -1
  30. package/dist/application/use-cases/DeleteServerUseCase.js +5 -5
  31. package/dist/application/use-cases/DeleteServerUseCase.js.map +1 -1
  32. package/dist/application/use-cases/WorldManagementUseCase.d.ts +18 -1
  33. package/dist/application/use-cases/WorldManagementUseCase.d.ts.map +1 -1
  34. package/dist/application/use-cases/WorldManagementUseCase.js +332 -0
  35. package/dist/application/use-cases/WorldManagementUseCase.js.map +1 -1
  36. package/dist/docker/index.d.ts +14 -0
  37. package/dist/docker/index.d.ts.map +1 -1
  38. package/dist/docker/index.js +26 -1
  39. package/dist/docker/index.js.map +1 -1
  40. package/dist/domain/entities/User.d.ts +77 -0
  41. package/dist/domain/entities/User.d.ts.map +1 -0
  42. package/dist/domain/entities/User.js +121 -0
  43. package/dist/domain/entities/User.js.map +1 -0
  44. package/dist/domain/entities/World.d.ts +7 -1
  45. package/dist/domain/entities/World.d.ts.map +1 -1
  46. package/dist/domain/entities/World.js +14 -1
  47. package/dist/domain/entities/World.js.map +1 -1
  48. package/dist/domain/entities/index.d.ts +1 -0
  49. package/dist/domain/entities/index.d.ts.map +1 -1
  50. package/dist/domain/entities/index.js +1 -0
  51. package/dist/domain/entities/index.js.map +1 -1
  52. package/dist/domain/index.d.ts +2 -2
  53. package/dist/domain/index.d.ts.map +1 -1
  54. package/dist/domain/index.js +4 -2
  55. package/dist/domain/index.js.map +1 -1
  56. package/dist/domain/mod/ModDependency.d.ts +18 -0
  57. package/dist/domain/mod/ModDependency.d.ts.map +1 -0
  58. package/dist/domain/mod/ModDependency.js +5 -0
  59. package/dist/domain/mod/ModDependency.js.map +1 -0
  60. package/dist/domain/mod/ModFile.d.ts +27 -0
  61. package/dist/domain/mod/ModFile.d.ts.map +1 -0
  62. package/dist/domain/mod/ModFile.js +5 -0
  63. package/dist/domain/mod/ModFile.js.map +1 -0
  64. package/dist/domain/mod/ModProject.d.ts +36 -0
  65. package/dist/domain/mod/ModProject.d.ts.map +1 -0
  66. package/dist/domain/mod/ModProject.js +5 -0
  67. package/dist/domain/mod/ModProject.js.map +1 -0
  68. package/dist/domain/mod/ModSearchResult.d.ts +18 -0
  69. package/dist/domain/mod/ModSearchResult.d.ts.map +1 -0
  70. package/dist/domain/mod/ModSearchResult.js +5 -0
  71. package/dist/domain/mod/ModSearchResult.js.map +1 -0
  72. package/dist/domain/mod/ModVersion.d.ts +36 -0
  73. package/dist/domain/mod/ModVersion.d.ts.map +1 -0
  74. package/dist/domain/mod/ModVersion.js +5 -0
  75. package/dist/domain/mod/ModVersion.js.map +1 -0
  76. package/dist/domain/mod/index.d.ts +11 -0
  77. package/dist/domain/mod/index.d.ts.map +1 -0
  78. package/dist/domain/mod/index.js +6 -0
  79. package/dist/domain/mod/index.js.map +1 -0
  80. package/dist/domain/mod/types.d.ts +43 -0
  81. package/dist/domain/mod/types.d.ts.map +1 -0
  82. package/dist/domain/mod/types.js +6 -0
  83. package/dist/domain/mod/types.js.map +1 -0
  84. package/dist/domain/value-objects/ProcessInfo.d.ts +99 -0
  85. package/dist/domain/value-objects/ProcessInfo.d.ts.map +1 -0
  86. package/dist/domain/value-objects/ProcessInfo.js +171 -0
  87. package/dist/domain/value-objects/ProcessInfo.js.map +1 -0
  88. package/dist/domain/value-objects/Role.d.ts +41 -0
  89. package/dist/domain/value-objects/Role.d.ts.map +1 -0
  90. package/dist/domain/value-objects/Role.js +66 -0
  91. package/dist/domain/value-objects/Role.js.map +1 -0
  92. package/dist/domain/value-objects/ServerType.d.ts +1 -0
  93. package/dist/domain/value-objects/ServerType.d.ts.map +1 -1
  94. package/dist/domain/value-objects/ServerType.js +8 -0
  95. package/dist/domain/value-objects/ServerType.js.map +1 -1
  96. package/dist/domain/value-objects/ServiceStatus.d.ts +64 -0
  97. package/dist/domain/value-objects/ServiceStatus.d.ts.map +1 -0
  98. package/dist/domain/value-objects/ServiceStatus.js +99 -0
  99. package/dist/domain/value-objects/ServiceStatus.js.map +1 -0
  100. package/dist/domain/value-objects/UserId.d.ts +21 -0
  101. package/dist/domain/value-objects/UserId.d.ts.map +1 -0
  102. package/dist/domain/value-objects/UserId.js +43 -0
  103. package/dist/domain/value-objects/UserId.js.map +1 -0
  104. package/dist/domain/value-objects/Username.d.ts +16 -0
  105. package/dist/domain/value-objects/Username.d.ts.map +1 -0
  106. package/dist/domain/value-objects/Username.js +46 -0
  107. package/dist/domain/value-objects/Username.js.map +1 -0
  108. package/dist/domain/value-objects/index.d.ts +5 -0
  109. package/dist/domain/value-objects/index.d.ts.map +1 -1
  110. package/dist/domain/value-objects/index.js +7 -0
  111. package/dist/domain/value-objects/index.js.map +1 -1
  112. package/dist/index.d.ts +3 -1
  113. package/dist/index.d.ts.map +1 -1
  114. package/dist/index.js +6 -2
  115. package/dist/index.js.map +1 -1
  116. package/dist/infrastructure/adapters/ApiPromptAdapter.d.ts +115 -0
  117. package/dist/infrastructure/adapters/ApiPromptAdapter.d.ts.map +1 -0
  118. package/dist/infrastructure/adapters/ApiPromptAdapter.js +268 -0
  119. package/dist/infrastructure/adapters/ApiPromptAdapter.js.map +1 -0
  120. package/dist/infrastructure/adapters/ServerRepository.js +3 -3
  121. package/dist/infrastructure/adapters/ServerRepository.js.map +1 -1
  122. package/dist/infrastructure/adapters/ShellAdapter.d.ts +4 -2
  123. package/dist/infrastructure/adapters/ShellAdapter.d.ts.map +1 -1
  124. package/dist/infrastructure/adapters/ShellAdapter.js +15 -5
  125. package/dist/infrastructure/adapters/ShellAdapter.js.map +1 -1
  126. package/dist/infrastructure/adapters/SqliteUserRepository.d.ts +70 -0
  127. package/dist/infrastructure/adapters/SqliteUserRepository.d.ts.map +1 -0
  128. package/dist/infrastructure/adapters/SqliteUserRepository.js +149 -0
  129. package/dist/infrastructure/adapters/SqliteUserRepository.js.map +1 -0
  130. package/dist/infrastructure/adapters/WorldRepository.d.ts +12 -0
  131. package/dist/infrastructure/adapters/WorldRepository.d.ts.map +1 -1
  132. package/dist/infrastructure/adapters/WorldRepository.js +73 -3
  133. package/dist/infrastructure/adapters/WorldRepository.js.map +1 -1
  134. package/dist/infrastructure/adapters/YamlUserRepository.d.ts +67 -0
  135. package/dist/infrastructure/adapters/YamlUserRepository.d.ts.map +1 -0
  136. package/dist/infrastructure/adapters/YamlUserRepository.js +161 -0
  137. package/dist/infrastructure/adapters/YamlUserRepository.js.map +1 -0
  138. package/dist/infrastructure/adapters/index.d.ts +3 -0
  139. package/dist/infrastructure/adapters/index.d.ts.map +1 -1
  140. package/dist/infrastructure/adapters/index.js +3 -0
  141. package/dist/infrastructure/adapters/index.js.map +1 -1
  142. package/dist/infrastructure/config/Pm2EcosystemConfig.d.ts +192 -0
  143. package/dist/infrastructure/config/Pm2EcosystemConfig.d.ts.map +1 -0
  144. package/dist/infrastructure/config/Pm2EcosystemConfig.js +48 -0
  145. package/dist/infrastructure/config/Pm2EcosystemConfig.js.map +1 -0
  146. package/dist/infrastructure/config/index.d.ts +6 -0
  147. package/dist/infrastructure/config/index.d.ts.map +1 -0
  148. package/dist/infrastructure/config/index.js +6 -0
  149. package/dist/infrastructure/config/index.js.map +1 -0
  150. package/dist/infrastructure/factories/ModSourceFactory.d.ts +73 -0
  151. package/dist/infrastructure/factories/ModSourceFactory.d.ts.map +1 -0
  152. package/dist/infrastructure/factories/ModSourceFactory.js +98 -0
  153. package/dist/infrastructure/factories/ModSourceFactory.js.map +1 -0
  154. package/dist/infrastructure/factories/index.d.ts +5 -0
  155. package/dist/infrastructure/factories/index.d.ts.map +1 -0
  156. package/dist/infrastructure/factories/index.js +5 -0
  157. package/dist/infrastructure/factories/index.js.map +1 -0
  158. package/dist/infrastructure/index.d.ts +1 -0
  159. package/dist/infrastructure/index.d.ts.map +1 -1
  160. package/dist/infrastructure/index.js +1 -0
  161. package/dist/infrastructure/index.js.map +1 -1
  162. package/package.json +10 -2
@@ -1,3 +1,23 @@
1
+ /**
2
+ * World creation options
3
+ */
4
+ export interface WorldCreateOptions {
5
+ name?: string;
6
+ seed?: string;
7
+ serverName?: string;
8
+ autoStart?: boolean;
9
+ }
10
+ /**
11
+ * World creation result
12
+ */
13
+ export interface WorldCreateResult {
14
+ success: boolean;
15
+ worldName: string;
16
+ seed?: string;
17
+ serverName?: string;
18
+ started?: boolean;
19
+ error?: string;
20
+ }
1
21
  /**
2
22
  * World Management Use Case - Inbound Port
3
23
  * Manages world assignments and locks
@@ -7,6 +27,10 @@ export interface IWorldManagementUseCase {
7
27
  * List all worlds with lock status
8
28
  */
9
29
  listWorlds(): Promise<WorldListResult[]>;
30
+ /**
31
+ * Interactive world creation with seed support
32
+ */
33
+ createWorld(options?: WorldCreateOptions): Promise<WorldCreateResult>;
10
34
  /**
11
35
  * Interactive world assignment
12
36
  */
@@ -23,6 +47,14 @@ export interface IWorldManagementUseCase {
23
47
  * Release world by name
24
48
  */
25
49
  releaseWorldByName(worldName: string, force?: boolean): Promise<WorldReleaseResult>;
50
+ /**
51
+ * Interactive world deletion
52
+ */
53
+ deleteWorld(): Promise<WorldDeleteResult>;
54
+ /**
55
+ * Delete world by name
56
+ */
57
+ deleteWorldByName(worldName: string, force?: boolean): Promise<WorldDeleteResult>;
26
58
  }
27
59
  /**
28
60
  * World list result
@@ -53,4 +85,13 @@ export interface WorldReleaseResult {
53
85
  previousServer?: string;
54
86
  error?: string;
55
87
  }
88
+ /**
89
+ * World delete result
90
+ */
91
+ export interface WorldDeleteResult {
92
+ success: boolean;
93
+ worldName: string;
94
+ size?: string;
95
+ error?: string;
96
+ }
56
97
  //# sourceMappingURL=IWorldManagementUseCase.d.ts.map
@@ -1 +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"}
1
+ {"version":3,"file":"IWorldManagementUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IWorldManagementUseCase.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEzC;;OAEG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEtE;;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;IAEpF;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE1C;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACnF;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;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -1,7 +1,7 @@
1
1
  export type { ICreateServerUseCase, CreateServerConfig } from './ICreateServerUseCase.js';
2
2
  export type { IDeleteServerUseCase, DeleteServerResult } from './IDeleteServerUseCase.js';
3
3
  export type { IServerStatusUseCase, ServerStatusResult } from './IServerStatusUseCase.js';
4
- export type { IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, } from './IWorldManagementUseCase.js';
4
+ export type { IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, WorldDeleteResult, WorldCreateOptions, WorldCreateResult, } from './IWorldManagementUseCase.js';
5
5
  export type { IBackupUseCase, BackupPushResult, BackupStatusResult, BackupHistoryResult, BackupRestoreResult, } from './IBackupUseCase.js';
6
6
  export type { IPlayerLookupUseCase, PlayerLookupResult, PlayerNameHistory, PlayerUuidResult, } from './IPlayerLookupUseCase.js';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +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"}
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,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,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"}
@@ -1,3 +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';
1
+ export type { ICreateServerUseCase, CreateServerConfig, IDeleteServerUseCase, DeleteServerResult, IServerStatusUseCase, ServerStatusResult, IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, WorldDeleteResult, WorldCreateOptions, WorldCreateResult, IBackupUseCase, BackupPushResult, BackupStatusResult, BackupHistoryResult, BackupRestoreResult, IPlayerLookupUseCase, PlayerLookupResult, PlayerNameHistory, PlayerUuidResult, } from './inbound/index.js';
2
+ export type { IPromptPort, TextPromptOptions, SelectPromptOptions, SelectOption, ConfirmPromptOptions, PasswordPromptOptions, Spinner, IShellPort, CreateServerOptions, LogsOptions, ShellResult, IDocProvider, DocServerTypeInfo, DocEnvVarInfo, DocVersionInfo, DocMemoryInfo, IServerRepository, ServerConfigData, IWorldRepository, WorldLockData, WorldWithServerStatus, ServerStatus, WorldAvailabilityCategory, IModSourcePort, IUserRepository, IServiceManagerPort, ServiceStartOptions, ServiceStopOptions, ServiceRestartOptions, ServiceLogsOptions, } from './outbound/index.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +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"}
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,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,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,qBAAqB,EACrB,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,EACzB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * IModSourcePort - Outbound port for mod source adapters
3
+ *
4
+ * This interface defines the contract for mod source implementations.
5
+ * Each mod source (Modrinth, CurseForge, Spiget, etc.) must implement this interface.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * class ModrinthAdapter implements IModSourcePort {
10
+ * readonly sourceName = 'modrinth';
11
+ *
12
+ * async search(query: string): Promise<ModSearchResult> {
13
+ * // Implementation
14
+ * }
15
+ * }
16
+ * ```
17
+ */
18
+ import type { ModProject, ModVersion, ModSearchResult, ModSearchOptions, ModVersionOptions } from '../../../domain/mod/index.js';
19
+ /**
20
+ * Port interface for mod source adapters
21
+ */
22
+ export interface IModSourcePort {
23
+ /**
24
+ * Unique identifier for this source
25
+ * @example 'modrinth', 'curseforge', 'spiget'
26
+ */
27
+ readonly sourceName: string;
28
+ /**
29
+ * Human-readable display name
30
+ * @example 'Modrinth', 'CurseForge', 'SpigotMC'
31
+ */
32
+ readonly displayName: string;
33
+ /**
34
+ * Search for mods/plugins
35
+ * @param query - Search query string
36
+ * @param options - Search options (pagination, filters)
37
+ * @returns Paginated search results
38
+ */
39
+ search(query: string, options?: ModSearchOptions): Promise<ModSearchResult>;
40
+ /**
41
+ * Get project details by slug or ID
42
+ * @param slugOrId - Project slug or ID
43
+ * @returns Project details or null if not found
44
+ */
45
+ getProject(slugOrId: string): Promise<ModProject | null>;
46
+ /**
47
+ * Get available versions for a project
48
+ * @param slugOrId - Project slug or ID
49
+ * @param options - Version filter options
50
+ * @returns List of versions
51
+ */
52
+ getVersions(slugOrId: string, options?: ModVersionOptions): Promise<ModVersion[]>;
53
+ /**
54
+ * Check if this source is available (API accessible, credentials valid)
55
+ * @returns true if the source is ready to use
56
+ */
57
+ isAvailable(): Promise<boolean>;
58
+ /**
59
+ * Get the environment variable key for this source
60
+ * Used for config.env configuration
61
+ * @example 'MODRINTH_PROJECTS', 'CURSEFORGE_FILES', 'SPIGET_RESOURCES'
62
+ */
63
+ getEnvKey(): string;
64
+ /**
65
+ * Format a project reference for config.env
66
+ * @param project - Project to format
67
+ * @returns Formatted string for environment variable
68
+ */
69
+ formatForEnv(project: ModProject): string;
70
+ }
71
+ //# sourceMappingURL=IModSourcePort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IModSourcePort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IModSourcePort.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE5E;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IAEzD;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAElF;;;OAGG;IACH,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEhC;;;;OAIG;IACH,SAAS,IAAI,MAAM,CAAC;IAEpB;;;;OAIG;IACH,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;CAC3C"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * IModSourcePort - Outbound port for mod source adapters
3
+ *
4
+ * This interface defines the contract for mod source implementations.
5
+ * Each mod source (Modrinth, CurseForge, Spiget, etc.) must implement this interface.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * class ModrinthAdapter implements IModSourcePort {
10
+ * readonly sourceName = 'modrinth';
11
+ *
12
+ * async search(query: string): Promise<ModSearchResult> {
13
+ * // Implementation
14
+ * }
15
+ * }
16
+ * ```
17
+ */
18
+ export {};
19
+ //# sourceMappingURL=IModSourcePort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IModSourcePort.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IModSourcePort.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
@@ -25,6 +25,10 @@ export interface IPromptPort {
25
25
  * Confirm yes/no prompt
26
26
  */
27
27
  confirm(options: ConfirmPromptOptions): Promise<boolean>;
28
+ /**
29
+ * Password input prompt (masked)
30
+ */
31
+ password(options: PasswordPromptOptions): Promise<string>;
28
32
  /**
29
33
  * Prompt for server name with validation
30
34
  */
@@ -125,6 +129,14 @@ export interface ConfirmPromptOptions {
125
129
  message: string;
126
130
  initialValue?: boolean;
127
131
  }
132
+ /**
133
+ * Password prompt options
134
+ */
135
+ export interface PasswordPromptOptions {
136
+ message: string;
137
+ mask?: string;
138
+ validate?: (value: string) => string | void;
139
+ }
128
140
  /**
129
141
  * Spinner interface
130
142
  */
@@ -1 +1 @@
1
- {"version":3,"file":"IPromptPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IPromptPort.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IPromptPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IPromptPort.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,MAAM,EACN,YAAY,EACZ,MAAM,EACN,KAAK,EACN,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAK1B;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAElD;;OAEG;IACH,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEvD;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAM1D;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAExC;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAExC;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAE5D;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhC;;OAEG;IACH,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAE5C;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1D;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEtD;;;;;OAKG;IACH,4BAA4B,CAC1B,MAAM,EAAE,qBAAqB,EAAE,GAC9B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAMzB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAM5C;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAElC;;OAEG;IACH,YAAY,IAAI,KAAK,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,CAAC,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC"}
@@ -0,0 +1,115 @@
1
+ import type { ProcessInfo } from '../../../domain/value-objects/ProcessInfo.js';
2
+ /**
3
+ * Service start options
4
+ */
5
+ export interface ServiceStartOptions {
6
+ /** Environment variables to pass to the service */
7
+ env?: Record<string, string>;
8
+ /** Working directory for the service */
9
+ cwd?: string;
10
+ /** Whether to wait for the service to be ready */
11
+ wait?: boolean;
12
+ /** Timeout in milliseconds when waiting */
13
+ waitTimeout?: number;
14
+ }
15
+ /**
16
+ * Service stop options
17
+ */
18
+ export interface ServiceStopOptions {
19
+ /** Force stop (SIGKILL) instead of graceful shutdown */
20
+ force?: boolean;
21
+ /** Timeout in milliseconds before force stop */
22
+ timeout?: number;
23
+ }
24
+ /**
25
+ * Service restart options
26
+ */
27
+ export interface ServiceRestartOptions extends ServiceStartOptions, ServiceStopOptions {
28
+ /** Update environment variables before restart */
29
+ updateEnv?: boolean;
30
+ }
31
+ /**
32
+ * Service logs options
33
+ */
34
+ export interface ServiceLogsOptions {
35
+ /** Number of lines to return */
36
+ lines?: number;
37
+ /** Return error logs instead of output logs */
38
+ err?: boolean;
39
+ /** Filter logs by timestamp (return logs after this date) */
40
+ since?: Date;
41
+ }
42
+ /**
43
+ * Service Manager Port - Outbound Port
44
+ * Interface for managing service processes (PM2, systemd, etc.)
45
+ *
46
+ * This port abstracts process management operations to allow
47
+ * different implementations (PM2, systemd, Docker, etc.)
48
+ */
49
+ export interface IServiceManagerPort {
50
+ /**
51
+ * Start a service by name
52
+ * @param name - The service name as defined in ecosystem config
53
+ * @param options - Optional start configuration
54
+ * @throws Error if service not found or start fails
55
+ */
56
+ start(name: string, options?: ServiceStartOptions): Promise<void>;
57
+ /**
58
+ * Stop a service by name
59
+ * @param name - The service name
60
+ * @param options - Optional stop configuration
61
+ * @throws Error if service not found or stop fails
62
+ */
63
+ stop(name: string, options?: ServiceStopOptions): Promise<void>;
64
+ /**
65
+ * Restart a service by name
66
+ * @param name - The service name
67
+ * @param options - Optional restart configuration
68
+ * @throws Error if service not found or restart fails
69
+ */
70
+ restart(name: string, options?: ServiceRestartOptions): Promise<void>;
71
+ /**
72
+ * Get status of one or all services
73
+ * @param name - Optional service name. If not provided, returns all services
74
+ * @returns Array of process information
75
+ */
76
+ status(name?: string): Promise<ProcessInfo[]>;
77
+ /**
78
+ * Get logs for a service
79
+ * @param name - The service name
80
+ * @param options - Optional log retrieval options
81
+ * @returns Log content as string
82
+ */
83
+ logs(name: string, options?: ServiceLogsOptions): Promise<string>;
84
+ /**
85
+ * Delete a service from the process manager
86
+ * @param name - The service name to delete
87
+ * @throws Error if service not found
88
+ */
89
+ delete(name: string): Promise<void>;
90
+ /**
91
+ * Reload ecosystem configuration
92
+ * @param configPath - Path to ecosystem config file
93
+ */
94
+ reload(configPath: string): Promise<void>;
95
+ /**
96
+ * Check if a service exists
97
+ * @param name - The service name
98
+ * @returns true if service is registered
99
+ */
100
+ exists(name: string): Promise<boolean>;
101
+ /**
102
+ * Flush logs for a service
103
+ * @param name - The service name
104
+ */
105
+ flush(name: string): Promise<void>;
106
+ /**
107
+ * Save current process list (for restart persistence)
108
+ */
109
+ save(): Promise<void>;
110
+ /**
111
+ * Resurrect saved processes
112
+ */
113
+ resurrect(): Promise<void>;
114
+ }
115
+ //# sourceMappingURL=IServiceManagerPort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IServiceManagerPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IServiceManagerPort.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,wCAAwC;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB,EAAE,kBAAkB;IACpF,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,6DAA6D;IAC7D,KAAK,CAAC,EAAE,IAAI,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElE;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAE9C;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAElE;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC;;;OAGG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IServiceManagerPort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IServiceManagerPort.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IServiceManagerPort.ts"],"names":[],"mappings":""}
@@ -15,11 +15,19 @@ export interface IShellPort {
15
15
  /**
16
16
  * Start a server
17
17
  */
18
- startServer(name: ServerName): Promise<ShellResult>;
18
+ startServer(name: ServerName | string): Promise<ShellResult>;
19
19
  /**
20
20
  * Stop a server
21
21
  */
22
- stopServer(name: ServerName): Promise<ShellResult>;
22
+ stopServer(name: ServerName | string): Promise<ShellResult>;
23
+ /**
24
+ * Get server status
25
+ */
26
+ serverStatus(name: string): Promise<ShellResult>;
27
+ /**
28
+ * Set server config value
29
+ */
30
+ setServerConfig(serverName: string, key: string, value: string): Promise<ShellResult>;
23
31
  /**
24
32
  * Get server logs
25
33
  */
@@ -1 +1 @@
1
- {"version":3,"file":"IShellPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IShellPort.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IShellPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IShellPort.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEnG;;;GAGG;AACH,MAAM,WAAW,UAAU;IAKzB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,CAAC;IAExB;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEtE;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE7D;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE5D;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEjD;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEtF;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEpE;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAMhD;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAM7C;;OAEG;IACH,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEhD;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1F;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAMtD;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEjD;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAMlE;;OAEG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEnD;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAErC;;OAEG;IACH,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEpD;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAMxD;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE5D;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,SAAS,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB"}
@@ -0,0 +1,42 @@
1
+ import { User } from '../../../domain/entities/User.js';
2
+ import { UserId } from '../../../domain/value-objects/UserId.js';
3
+ import { Username } from '../../../domain/value-objects/Username.js';
4
+ /**
5
+ * User Repository Port - Outbound Port
6
+ * Interface for user data access
7
+ */
8
+ export interface IUserRepository {
9
+ /**
10
+ * Find a user by their unique ID
11
+ * @param id - The user's unique identifier
12
+ * @returns The user if found, null otherwise
13
+ */
14
+ findById(id: UserId): Promise<User | null>;
15
+ /**
16
+ * Find a user by their username
17
+ * @param username - The username to search for
18
+ * @returns The user if found, null otherwise
19
+ */
20
+ findByUsername(username: Username): Promise<User | null>;
21
+ /**
22
+ * Get all users in the system
23
+ * @returns Array of all users
24
+ */
25
+ findAll(): Promise<User[]>;
26
+ /**
27
+ * Save a user (create or update)
28
+ * @param user - The user entity to save
29
+ */
30
+ save(user: User): Promise<void>;
31
+ /**
32
+ * Delete a user by their ID
33
+ * @param id - The user's unique identifier
34
+ */
35
+ delete(id: UserId): Promise<void>;
36
+ /**
37
+ * Get the total count of users
38
+ * @returns The number of users in the system
39
+ */
40
+ count(): Promise<number>;
41
+ }
42
+ //# sourceMappingURL=IUserRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,yCAAyC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AAErE;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAE3C;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAEzD;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAE3B;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IUserRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IUserRepository.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IUserRepository.ts"],"names":[],"mappings":""}
@@ -58,6 +58,25 @@ export interface IWorldRepository {
58
58
  * Returns worlds categorized by availability
59
59
  */
60
60
  findAllWithServerStatus(): Promise<WorldWithServerStatus[]>;
61
+ /**
62
+ * Delete a world directory
63
+ * @param name World name to delete
64
+ * @returns true if deleted successfully
65
+ */
66
+ delete(name: string): Promise<boolean>;
67
+ /**
68
+ * Create a new world directory with optional seed
69
+ * @param name World name to create
70
+ * @param seed Optional seed for world generation
71
+ * @returns Created World entity
72
+ */
73
+ create(name: string, seed?: string): Promise<World>;
74
+ /**
75
+ * Get seed for a world from .meta file
76
+ * @param name World name
77
+ * @returns Seed string or null if not found
78
+ */
79
+ getSeed(name: string): Promise<string | null>;
61
80
  }
62
81
  /**
63
82
  * World lock data from lock file
@@ -1 +1 @@
1
- {"version":3,"file":"IWorldRepository.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IWorldRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAmB,MAAM,0BAA0B,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,QAAQ,EAAE,yBAAyB,CAAC;CACrC;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAE5B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAEhD;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEjC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAE/B;;OAEG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEnD;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE/B;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAE3D;;;OAGG;IACH,uBAAuB,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;CAC7D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
1
+ {"version":3,"file":"IWorldRepository.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IWorldRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAmB,MAAM,0BAA0B,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,QAAQ,EAAE,yBAAyB,CAAC;CACrC;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAE5B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAEhD;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEjC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAE/B;;OAEG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEnD;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE/B;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAE3D;;;OAGG;IACH,uBAAuB,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAE5D;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEpD;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
@@ -1,6 +1,9 @@
1
- export type { IPromptPort, TextPromptOptions, SelectPromptOptions, SelectOption, ConfirmPromptOptions, Spinner, } from './IPromptPort.js';
1
+ export type { IPromptPort, TextPromptOptions, SelectPromptOptions, SelectOption, ConfirmPromptOptions, PasswordPromptOptions, Spinner, } from './IPromptPort.js';
2
2
  export type { IShellPort, CreateServerOptions, LogsOptions, ShellResult, } from './IShellPort.js';
3
3
  export type { IDocProvider, DocServerTypeInfo, DocEnvVarInfo, DocVersionInfo, DocMemoryInfo, } from './IDocProvider.js';
4
4
  export type { IServerRepository, ServerConfigData, } from './IServerRepository.js';
5
5
  export type { IWorldRepository, WorldLockData, WorldWithServerStatus, ServerStatus, WorldAvailabilityCategory, } from './IWorldRepository.js';
6
+ export type { IModSourcePort } from './IModSourcePort.js';
7
+ export type { IUserRepository } from './IUserRepository.js';
8
+ export type { IServiceManagerPort, ServiceStartOptions, ServiceStopOptions, ServiceRestartOptions, ServiceLogsOptions, } from './IServiceManagerPort.js';
6
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,OAAO,GACR,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,GACZ,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,OAAO,GACR,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,GACZ,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateServerUseCase.d.ts","sourceRoot":"","sources":["../../../src/application/use-cases/CreateServerUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAOP,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,oBAAoB;IAE5D,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAHV,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,iBAAiB,EAC7B,SAAS,CAAC,EAAE,gBAAgB,YAAA;IAG/C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IA2FhC;;OAEG;IACG,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;CAsDrE"}
1
+ {"version":3,"file":"CreateServerUseCase.d.ts","sourceRoot":"","sources":["../../../src/application/use-cases/CreateServerUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAOP,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,oBAAoB;IAE5D,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAHV,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,iBAAiB,EAC7B,SAAS,CAAC,EAAE,gBAAgB,YAAA;IAG/C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAyFhC;;OAEG;IACG,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;CAsDrE"}
@@ -58,9 +58,10 @@ export class CreateServerUseCase {
58
58
  memory,
59
59
  worldOptions,
60
60
  });
61
- // Execute creation
61
+ // Execute creation - stop spinner before running script to avoid output conflicts
62
62
  const spinner = this.prompt.spinner();
63
63
  spinner.start('Creating server...');
64
+ spinner.stop('Running create script...');
64
65
  const result = await this.shell.createServer(name, {
65
66
  type,
66
67
  version,
@@ -69,11 +70,9 @@ export class CreateServerUseCase {
69
70
  autoStart: true,
70
71
  });
71
72
  if (!result.success) {
72
- spinner.stop('Failed to create server');
73
73
  this.prompt.error(result.stderr || 'Unknown error occurred');
74
74
  throw new Error(result.stderr || 'Server creation failed');
75
75
  }
76
- spinner.stop('Server created successfully');
77
76
  this.prompt.success(`Server '${name.value}' created!`);
78
77
  this.prompt.note(`Connect via: ${name.hostname}:25565`, 'Connection Info');
79
78
  this.prompt.outro('Happy mining!');
@@ -1 +1 @@
1
- {"version":3,"file":"CreateServerUseCase.js","sourceRoot":"","sources":["../../../src/application/use-cases/CreateServerUseCase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CreateServerUseCase.js","sourceRoot":"","sources":["../../../src/application/use-cases/CreateServerUseCase.ts"],"names":[],"mappings":"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"}
@@ -80,17 +80,17 @@ export class DeleteServerUseCase {
80
80
  if (server.isRunning) {
81
81
  spinner.start('Stopping server...');
82
82
  await this.shell.stopServer(server.name);
83
- spinner.message('Server stopped');
83
+ spinner.stop('Server stopped');
84
84
  }
85
- // Delete server
85
+ // Delete server - stop spinner before running script to avoid output conflicts
86
+ // Always pass force=true since confirmation was already handled by UseCase
86
87
  spinner.start('Removing server...');
87
- const result = await this.shell.deleteServer(server.name, force);
88
+ spinner.stop('Running delete script...');
89
+ const result = await this.shell.deleteServer(server.name, true);
88
90
  if (!result.success) {
89
- spinner.stop('Failed to delete server');
90
91
  this.prompt.error(result.stderr || 'Unknown error occurred');
91
92
  return false;
92
93
  }
93
- spinner.stop('Server deleted');
94
94
  this.prompt.success(`Server '${server.name.value}' deleted`);
95
95
  // Note about world preservation
96
96
  if (server.worldOptions.isExistingWorld) {
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteServerUseCase.js","sourceRoot":"","sources":["../../../src/application/use-cases/DeleteServerUseCase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeleteServerUseCase.js","sourceRoot":"","sources":["../../../src/application/use-cases/DeleteServerUseCase.ts"],"names":[],"mappings":"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"}