@minecraft-docker/shared 1.6.0 → 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 (261) hide show
  1. package/dist/application/index.d.ts +3 -0
  2. package/dist/application/index.d.ts.map +1 -0
  3. package/dist/application/index.js +5 -0
  4. package/dist/application/index.js.map +1 -0
  5. package/dist/application/ports/inbound/IBackupUseCase.d.ts +69 -0
  6. package/dist/application/ports/inbound/IBackupUseCase.d.ts.map +1 -0
  7. package/dist/application/ports/inbound/IBackupUseCase.js +2 -0
  8. package/dist/application/ports/inbound/IBackupUseCase.js.map +1 -0
  9. package/dist/application/ports/inbound/ICreateServerUseCase.d.ts +32 -0
  10. package/dist/application/ports/inbound/ICreateServerUseCase.d.ts.map +1 -0
  11. package/dist/application/ports/inbound/ICreateServerUseCase.js +2 -0
  12. package/dist/application/ports/inbound/ICreateServerUseCase.js.map +1 -0
  13. package/dist/application/ports/inbound/IDeleteServerUseCase.d.ts +26 -0
  14. package/dist/application/ports/inbound/IDeleteServerUseCase.d.ts.map +1 -0
  15. package/dist/application/ports/inbound/IDeleteServerUseCase.js +2 -0
  16. package/dist/application/ports/inbound/IDeleteServerUseCase.js.map +1 -0
  17. package/dist/application/ports/inbound/IPlayerLookupUseCase.d.ts +47 -0
  18. package/dist/application/ports/inbound/IPlayerLookupUseCase.d.ts.map +1 -0
  19. package/dist/application/ports/inbound/IPlayerLookupUseCase.js +2 -0
  20. package/dist/application/ports/inbound/IPlayerLookupUseCase.js.map +1 -0
  21. package/dist/application/ports/inbound/IServerStatusUseCase.d.ts +34 -0
  22. package/dist/application/ports/inbound/IServerStatusUseCase.d.ts.map +1 -0
  23. package/dist/application/ports/inbound/IServerStatusUseCase.js +2 -0
  24. package/dist/application/ports/inbound/IServerStatusUseCase.js.map +1 -0
  25. package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts +97 -0
  26. package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts.map +1 -0
  27. package/dist/application/ports/inbound/IWorldManagementUseCase.js +2 -0
  28. package/dist/application/ports/inbound/IWorldManagementUseCase.js.map +1 -0
  29. package/dist/application/ports/inbound/index.d.ts +7 -0
  30. package/dist/application/ports/inbound/index.d.ts.map +1 -0
  31. package/dist/application/ports/inbound/index.js +2 -0
  32. package/dist/application/ports/inbound/index.js.map +1 -0
  33. package/dist/application/ports/index.d.ts +3 -0
  34. package/dist/application/ports/index.d.ts.map +1 -0
  35. package/dist/application/ports/index.js +2 -0
  36. package/dist/application/ports/index.js.map +1 -0
  37. package/dist/application/ports/outbound/IDocProvider.d.ts +73 -0
  38. package/dist/application/ports/outbound/IDocProvider.d.ts.map +1 -0
  39. package/dist/application/ports/outbound/IDocProvider.js +2 -0
  40. package/dist/application/ports/outbound/IDocProvider.js.map +1 -0
  41. package/dist/application/ports/outbound/IModSourcePort.d.ts +71 -0
  42. package/dist/application/ports/outbound/IModSourcePort.d.ts.map +1 -0
  43. package/dist/application/ports/outbound/IModSourcePort.js +19 -0
  44. package/dist/application/ports/outbound/IModSourcePort.js.map +1 -0
  45. package/dist/application/ports/outbound/IPromptPort.d.ts +148 -0
  46. package/dist/application/ports/outbound/IPromptPort.d.ts.map +1 -0
  47. package/dist/application/ports/outbound/IPromptPort.js +2 -0
  48. package/dist/application/ports/outbound/IPromptPort.js.map +1 -0
  49. package/dist/application/ports/outbound/IServerRepository.d.ts +54 -0
  50. package/dist/application/ports/outbound/IServerRepository.d.ts.map +1 -0
  51. package/dist/application/ports/outbound/IServerRepository.js +2 -0
  52. package/dist/application/ports/outbound/IServerRepository.js.map +1 -0
  53. package/dist/application/ports/outbound/IServiceManagerPort.d.ts +115 -0
  54. package/dist/application/ports/outbound/IServiceManagerPort.d.ts.map +1 -0
  55. package/dist/application/ports/outbound/IServiceManagerPort.js +2 -0
  56. package/dist/application/ports/outbound/IServiceManagerPort.js.map +1 -0
  57. package/dist/application/ports/outbound/IShellPort.d.ts +114 -0
  58. package/dist/application/ports/outbound/IShellPort.d.ts.map +1 -0
  59. package/dist/application/ports/outbound/IShellPort.js +2 -0
  60. package/dist/application/ports/outbound/IShellPort.js.map +1 -0
  61. package/dist/application/ports/outbound/IUserRepository.d.ts +42 -0
  62. package/dist/application/ports/outbound/IUserRepository.d.ts.map +1 -0
  63. package/dist/application/ports/outbound/IUserRepository.js +2 -0
  64. package/dist/application/ports/outbound/IUserRepository.js.map +1 -0
  65. package/dist/application/ports/outbound/IWorldRepository.d.ts +90 -0
  66. package/dist/application/ports/outbound/IWorldRepository.d.ts.map +1 -0
  67. package/dist/application/ports/outbound/IWorldRepository.js +2 -0
  68. package/dist/application/ports/outbound/IWorldRepository.js.map +1 -0
  69. package/dist/application/ports/outbound/index.d.ts +9 -0
  70. package/dist/application/ports/outbound/index.d.ts.map +1 -0
  71. package/dist/application/ports/outbound/index.js +2 -0
  72. package/dist/application/ports/outbound/index.js.map +1 -0
  73. package/dist/application/use-cases/BackupUseCase.d.ts +35 -0
  74. package/dist/application/use-cases/BackupUseCase.d.ts.map +1 -0
  75. package/dist/application/use-cases/BackupUseCase.js +222 -0
  76. package/dist/application/use-cases/BackupUseCase.js.map +1 -0
  77. package/dist/application/use-cases/CreateServerUseCase.d.ts +22 -0
  78. package/dist/application/use-cases/CreateServerUseCase.d.ts.map +1 -0
  79. package/dist/application/use-cases/CreateServerUseCase.js +144 -0
  80. package/dist/application/use-cases/CreateServerUseCase.js.map +1 -0
  81. package/dist/application/use-cases/DeleteServerUseCase.d.ts +24 -0
  82. package/dist/application/use-cases/DeleteServerUseCase.d.ts.map +1 -0
  83. package/dist/application/use-cases/DeleteServerUseCase.js +108 -0
  84. package/dist/application/use-cases/DeleteServerUseCase.js.map +1 -0
  85. package/dist/application/use-cases/PlayerLookupUseCase.d.ts +23 -0
  86. package/dist/application/use-cases/PlayerLookupUseCase.d.ts.map +1 -0
  87. package/dist/application/use-cases/PlayerLookupUseCase.js +130 -0
  88. package/dist/application/use-cases/PlayerLookupUseCase.js.map +1 -0
  89. package/dist/application/use-cases/ServerStatusUseCase.d.ts +30 -0
  90. package/dist/application/use-cases/ServerStatusUseCase.d.ts.map +1 -0
  91. package/dist/application/use-cases/ServerStatusUseCase.js +117 -0
  92. package/dist/application/use-cases/ServerStatusUseCase.js.map +1 -0
  93. package/dist/application/use-cases/WorldManagementUseCase.d.ts +50 -0
  94. package/dist/application/use-cases/WorldManagementUseCase.d.ts.map +1 -0
  95. package/dist/application/use-cases/WorldManagementUseCase.js +571 -0
  96. package/dist/application/use-cases/WorldManagementUseCase.js.map +1 -0
  97. package/dist/application/use-cases/index.d.ts +7 -0
  98. package/dist/application/use-cases/index.d.ts.map +1 -0
  99. package/dist/application/use-cases/index.js +7 -0
  100. package/dist/application/use-cases/index.js.map +1 -0
  101. package/dist/docker/index.d.ts +125 -0
  102. package/dist/docker/index.d.ts.map +1 -0
  103. package/dist/docker/index.js +557 -0
  104. package/dist/docker/index.js.map +1 -0
  105. package/dist/domain/entities/Server.d.ts +77 -0
  106. package/dist/domain/entities/Server.d.ts.map +1 -0
  107. package/dist/domain/entities/Server.js +138 -0
  108. package/dist/domain/entities/Server.js.map +1 -0
  109. package/dist/domain/entities/User.d.ts +77 -0
  110. package/dist/domain/entities/User.d.ts.map +1 -0
  111. package/dist/domain/entities/User.js +121 -0
  112. package/dist/domain/entities/User.js.map +1 -0
  113. package/dist/domain/entities/World.d.ts +76 -0
  114. package/dist/domain/entities/World.d.ts.map +1 -0
  115. package/dist/domain/entities/World.js +141 -0
  116. package/dist/domain/entities/World.js.map +1 -0
  117. package/dist/domain/entities/index.d.ts +4 -0
  118. package/dist/domain/entities/index.d.ts.map +1 -0
  119. package/dist/domain/entities/index.js +4 -0
  120. package/dist/domain/entities/index.js.map +1 -0
  121. package/dist/domain/index.d.ts +3 -0
  122. package/dist/domain/index.d.ts.map +1 -0
  123. package/dist/domain/index.js +7 -0
  124. package/dist/domain/index.js.map +1 -0
  125. package/dist/domain/mod/ModDependency.d.ts +18 -0
  126. package/dist/domain/mod/ModDependency.d.ts.map +1 -0
  127. package/dist/domain/mod/ModDependency.js +5 -0
  128. package/dist/domain/mod/ModDependency.js.map +1 -0
  129. package/dist/domain/mod/ModFile.d.ts +27 -0
  130. package/dist/domain/mod/ModFile.d.ts.map +1 -0
  131. package/dist/domain/mod/ModFile.js +5 -0
  132. package/dist/domain/mod/ModFile.js.map +1 -0
  133. package/dist/domain/mod/ModProject.d.ts +36 -0
  134. package/dist/domain/mod/ModProject.d.ts.map +1 -0
  135. package/dist/domain/mod/ModProject.js +5 -0
  136. package/dist/domain/mod/ModProject.js.map +1 -0
  137. package/dist/domain/mod/ModSearchResult.d.ts +18 -0
  138. package/dist/domain/mod/ModSearchResult.d.ts.map +1 -0
  139. package/dist/domain/mod/ModSearchResult.js +5 -0
  140. package/dist/domain/mod/ModSearchResult.js.map +1 -0
  141. package/dist/domain/mod/ModVersion.d.ts +36 -0
  142. package/dist/domain/mod/ModVersion.d.ts.map +1 -0
  143. package/dist/domain/mod/ModVersion.js +5 -0
  144. package/dist/domain/mod/ModVersion.js.map +1 -0
  145. package/dist/domain/mod/index.d.ts +11 -0
  146. package/dist/domain/mod/index.d.ts.map +1 -0
  147. package/dist/domain/mod/index.js +6 -0
  148. package/dist/domain/mod/index.js.map +1 -0
  149. package/dist/domain/mod/types.d.ts +43 -0
  150. package/dist/domain/mod/types.d.ts.map +1 -0
  151. package/dist/domain/mod/types.js +6 -0
  152. package/dist/domain/mod/types.js.map +1 -0
  153. package/dist/domain/value-objects/McVersion.d.ts +35 -0
  154. package/dist/domain/value-objects/McVersion.d.ts.map +1 -0
  155. package/dist/domain/value-objects/McVersion.js +117 -0
  156. package/dist/domain/value-objects/McVersion.js.map +1 -0
  157. package/dist/domain/value-objects/Memory.d.ts +37 -0
  158. package/dist/domain/value-objects/Memory.d.ts.map +1 -0
  159. package/dist/domain/value-objects/Memory.js +107 -0
  160. package/dist/domain/value-objects/Memory.js.map +1 -0
  161. package/dist/domain/value-objects/ProcessInfo.d.ts +99 -0
  162. package/dist/domain/value-objects/ProcessInfo.d.ts.map +1 -0
  163. package/dist/domain/value-objects/ProcessInfo.js +171 -0
  164. package/dist/domain/value-objects/ProcessInfo.js.map +1 -0
  165. package/dist/domain/value-objects/Role.d.ts +41 -0
  166. package/dist/domain/value-objects/Role.d.ts.map +1 -0
  167. package/dist/domain/value-objects/Role.js +66 -0
  168. package/dist/domain/value-objects/Role.js.map +1 -0
  169. package/dist/domain/value-objects/ServerName.d.ts +21 -0
  170. package/dist/domain/value-objects/ServerName.d.ts.map +1 -0
  171. package/dist/domain/value-objects/ServerName.js +58 -0
  172. package/dist/domain/value-objects/ServerName.js.map +1 -0
  173. package/dist/domain/value-objects/ServerType.d.ts +40 -0
  174. package/dist/domain/value-objects/ServerType.d.ts.map +1 -0
  175. package/dist/domain/value-objects/ServerType.js +136 -0
  176. package/dist/domain/value-objects/ServerType.js.map +1 -0
  177. package/dist/domain/value-objects/ServiceStatus.d.ts +64 -0
  178. package/dist/domain/value-objects/ServiceStatus.d.ts.map +1 -0
  179. package/dist/domain/value-objects/ServiceStatus.js +99 -0
  180. package/dist/domain/value-objects/ServiceStatus.js.map +1 -0
  181. package/dist/domain/value-objects/UserId.d.ts +21 -0
  182. package/dist/domain/value-objects/UserId.d.ts.map +1 -0
  183. package/dist/domain/value-objects/UserId.js +43 -0
  184. package/dist/domain/value-objects/UserId.js.map +1 -0
  185. package/dist/domain/value-objects/Username.d.ts +16 -0
  186. package/dist/domain/value-objects/Username.d.ts.map +1 -0
  187. package/dist/domain/value-objects/Username.js +46 -0
  188. package/dist/domain/value-objects/Username.js.map +1 -0
  189. package/dist/domain/value-objects/WorldOptions.d.ts +49 -0
  190. package/dist/domain/value-objects/WorldOptions.d.ts.map +1 -0
  191. package/dist/domain/value-objects/WorldOptions.js +149 -0
  192. package/dist/domain/value-objects/WorldOptions.js.map +1 -0
  193. package/dist/domain/value-objects/index.d.ts +11 -0
  194. package/dist/domain/value-objects/index.d.ts.map +1 -0
  195. package/dist/domain/value-objects/index.js +13 -0
  196. package/dist/domain/value-objects/index.js.map +1 -0
  197. package/dist/index.d.ts +9 -0
  198. package/dist/index.d.ts.map +1 -0
  199. package/dist/index.js +21 -0
  200. package/dist/index.js.map +1 -0
  201. package/dist/infrastructure/adapters/ApiPromptAdapter.d.ts +115 -0
  202. package/dist/infrastructure/adapters/ApiPromptAdapter.d.ts.map +1 -0
  203. package/dist/infrastructure/adapters/ApiPromptAdapter.js +268 -0
  204. package/dist/infrastructure/adapters/ApiPromptAdapter.js.map +1 -0
  205. package/dist/infrastructure/adapters/DocsAdapter.d.ts +45 -0
  206. package/dist/infrastructure/adapters/DocsAdapter.d.ts.map +1 -0
  207. package/dist/infrastructure/adapters/DocsAdapter.js +490 -0
  208. package/dist/infrastructure/adapters/DocsAdapter.js.map +1 -0
  209. package/dist/infrastructure/adapters/ServerRepository.d.ts +49 -0
  210. package/dist/infrastructure/adapters/ServerRepository.d.ts.map +1 -0
  211. package/dist/infrastructure/adapters/ServerRepository.js +206 -0
  212. package/dist/infrastructure/adapters/ServerRepository.js.map +1 -0
  213. package/dist/infrastructure/adapters/ShellAdapter.d.ts +41 -0
  214. package/dist/infrastructure/adapters/ShellAdapter.d.ts.map +1 -0
  215. package/dist/infrastructure/adapters/ShellAdapter.js +198 -0
  216. package/dist/infrastructure/adapters/ShellAdapter.js.map +1 -0
  217. package/dist/infrastructure/adapters/SqliteUserRepository.d.ts +70 -0
  218. package/dist/infrastructure/adapters/SqliteUserRepository.d.ts.map +1 -0
  219. package/dist/infrastructure/adapters/SqliteUserRepository.js +149 -0
  220. package/dist/infrastructure/adapters/SqliteUserRepository.js.map +1 -0
  221. package/dist/infrastructure/adapters/WorldRepository.d.ts +67 -0
  222. package/dist/infrastructure/adapters/WorldRepository.d.ts.map +1 -0
  223. package/dist/infrastructure/adapters/WorldRepository.js +283 -0
  224. package/dist/infrastructure/adapters/WorldRepository.js.map +1 -0
  225. package/dist/infrastructure/adapters/YamlUserRepository.d.ts +67 -0
  226. package/dist/infrastructure/adapters/YamlUserRepository.d.ts.map +1 -0
  227. package/dist/infrastructure/adapters/YamlUserRepository.js +161 -0
  228. package/dist/infrastructure/adapters/YamlUserRepository.js.map +1 -0
  229. package/dist/infrastructure/adapters/index.d.ts +12 -0
  230. package/dist/infrastructure/adapters/index.d.ts.map +1 -0
  231. package/dist/infrastructure/adapters/index.js +12 -0
  232. package/dist/infrastructure/adapters/index.js.map +1 -0
  233. package/dist/infrastructure/config/Pm2EcosystemConfig.d.ts +192 -0
  234. package/dist/infrastructure/config/Pm2EcosystemConfig.d.ts.map +1 -0
  235. package/dist/infrastructure/config/Pm2EcosystemConfig.js +48 -0
  236. package/dist/infrastructure/config/Pm2EcosystemConfig.js.map +1 -0
  237. package/dist/infrastructure/config/index.d.ts +6 -0
  238. package/dist/infrastructure/config/index.d.ts.map +1 -0
  239. package/dist/infrastructure/config/index.js +6 -0
  240. package/dist/infrastructure/config/index.js.map +1 -0
  241. package/dist/infrastructure/factories/ModSourceFactory.d.ts +73 -0
  242. package/dist/infrastructure/factories/ModSourceFactory.d.ts.map +1 -0
  243. package/dist/infrastructure/factories/ModSourceFactory.js +98 -0
  244. package/dist/infrastructure/factories/ModSourceFactory.js.map +1 -0
  245. package/dist/infrastructure/factories/index.d.ts +5 -0
  246. package/dist/infrastructure/factories/index.d.ts.map +1 -0
  247. package/dist/infrastructure/factories/index.js +5 -0
  248. package/dist/infrastructure/factories/index.js.map +1 -0
  249. package/dist/infrastructure/index.d.ts +7 -0
  250. package/dist/infrastructure/index.d.ts.map +1 -0
  251. package/dist/infrastructure/index.js +7 -0
  252. package/dist/infrastructure/index.js.map +1 -0
  253. package/dist/types/index.d.ts +151 -0
  254. package/dist/types/index.d.ts.map +1 -0
  255. package/dist/types/index.js +2 -0
  256. package/dist/types/index.js.map +1 -0
  257. package/dist/utils/index.d.ts +81 -0
  258. package/dist/utils/index.d.ts.map +1 -0
  259. package/dist/utils/index.js +200 -0
  260. package/dist/utils/index.js.map +1 -0
  261. package/package.json +10 -2
@@ -0,0 +1,3 @@
1
+ export * from './ports/index.js';
2
+ export * from './use-cases/index.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -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,5 @@
1
+ // Ports
2
+ export * from './ports/index.js';
3
+ // Use Cases
4
+ export * from './use-cases/index.js';
5
+ //# sourceMappingURL=index.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IBackupUseCase.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ICreateServerUseCase.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IDeleteServerUseCase.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IPlayerLookupUseCase.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IServerStatusUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IServerStatusUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IServerStatusUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,97 @@
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
+ }
21
+ /**
22
+ * World Management Use Case - Inbound Port
23
+ * Manages world assignments and locks
24
+ */
25
+ export interface IWorldManagementUseCase {
26
+ /**
27
+ * List all worlds with lock status
28
+ */
29
+ listWorlds(): Promise<WorldListResult[]>;
30
+ /**
31
+ * Interactive world creation with seed support
32
+ */
33
+ createWorld(options?: WorldCreateOptions): Promise<WorldCreateResult>;
34
+ /**
35
+ * Interactive world assignment
36
+ */
37
+ assignWorld(): Promise<WorldAssignResult>;
38
+ /**
39
+ * Assign world to server by name
40
+ */
41
+ assignWorldByName(worldName: string, serverName: string): Promise<WorldAssignResult>;
42
+ /**
43
+ * Interactive world release
44
+ */
45
+ releaseWorld(): Promise<WorldReleaseResult>;
46
+ /**
47
+ * Release world by name
48
+ */
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>;
58
+ }
59
+ /**
60
+ * World list result
61
+ */
62
+ export interface WorldListResult {
63
+ name: string;
64
+ path: string;
65
+ isLocked: boolean;
66
+ lockedBy?: string;
67
+ size: string;
68
+ lastModified?: Date;
69
+ }
70
+ /**
71
+ * World assignment result
72
+ */
73
+ export interface WorldAssignResult {
74
+ success: boolean;
75
+ worldName: string;
76
+ serverName: string;
77
+ error?: string;
78
+ }
79
+ /**
80
+ * World release result
81
+ */
82
+ export interface WorldReleaseResult {
83
+ success: boolean;
84
+ worldName: string;
85
+ previousServer?: string;
86
+ error?: string;
87
+ }
88
+ /**
89
+ * World delete result
90
+ */
91
+ export interface WorldDeleteResult {
92
+ success: boolean;
93
+ worldName: string;
94
+ size?: string;
95
+ error?: string;
96
+ }
97
+ //# 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":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IWorldManagementUseCase.js.map
@@ -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, WorldDeleteResult, WorldCreateOptions, WorldCreateResult, } 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,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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -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, 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
+ //# 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,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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IDocProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDocProvider.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IDocProvider.ts"],"names":[],"mappings":""}
@@ -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"}