@edgible-team/cli 1.2.4 → 1.2.8

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 (221) hide show
  1. package/dist/commands/agent/agent-handlers.d.ts +45 -0
  2. package/dist/commands/agent/agent-handlers.d.ts.map +1 -0
  3. package/dist/commands/agent/agent-handlers.js +1159 -0
  4. package/dist/commands/agent/install.d.ts +11 -0
  5. package/dist/commands/agent/install.d.ts.map +1 -0
  6. package/dist/commands/agent/install.js +399 -0
  7. package/dist/commands/agent/logs.d.ts +12 -0
  8. package/dist/commands/agent/logs.d.ts.map +1 -0
  9. package/dist/commands/agent/logs.js +77 -0
  10. package/dist/commands/agent/restart.d.ts +4 -0
  11. package/dist/commands/agent/restart.d.ts.map +1 -0
  12. package/dist/commands/agent/restart.js +33 -0
  13. package/dist/commands/agent/set-log-level.d.ts +8 -0
  14. package/dist/commands/agent/set-log-level.d.ts.map +1 -0
  15. package/dist/commands/agent/set-log-level.js +133 -0
  16. package/dist/commands/agent/setup.d.ts +9 -0
  17. package/dist/commands/agent/setup.d.ts.map +1 -0
  18. package/dist/commands/agent/setup.js +149 -0
  19. package/dist/commands/agent/start.d.ts +12 -0
  20. package/dist/commands/agent/start.d.ts.map +1 -0
  21. package/dist/commands/agent/start.js +308 -0
  22. package/dist/commands/agent/status.d.ts +7 -0
  23. package/dist/commands/agent/status.d.ts.map +1 -0
  24. package/dist/commands/agent/status.js +68 -0
  25. package/dist/commands/agent/stop.d.ts +4 -0
  26. package/dist/commands/agent/stop.d.ts.map +1 -0
  27. package/dist/commands/agent/stop.js +33 -0
  28. package/dist/commands/agent/uninstall.d.ts +7 -0
  29. package/dist/commands/agent/uninstall.d.ts.map +1 -0
  30. package/dist/commands/agent/uninstall.js +168 -0
  31. package/dist/commands/agent.d.ts.map +1 -1
  32. package/dist/commands/agent.js +24 -1190
  33. package/dist/commands/ai/helpers.d.ts +139 -0
  34. package/dist/commands/ai/helpers.d.ts.map +1 -0
  35. package/dist/commands/ai/helpers.js +1470 -0
  36. package/dist/commands/ai/serve.d.ts +6 -0
  37. package/dist/commands/ai/serve.d.ts.map +1 -0
  38. package/dist/commands/ai/serve.js +124 -0
  39. package/dist/commands/ai/setup.d.ts +14 -0
  40. package/dist/commands/ai/setup.d.ts.map +1 -0
  41. package/dist/commands/ai/setup.js +86 -0
  42. package/dist/commands/ai/status.d.ts +2 -0
  43. package/dist/commands/ai/status.d.ts.map +1 -0
  44. package/dist/commands/ai/status.js +160 -0
  45. package/dist/commands/ai/stop.d.ts +2 -0
  46. package/dist/commands/ai/stop.d.ts.map +1 -0
  47. package/dist/commands/ai/stop.js +21 -0
  48. package/dist/commands/ai/teardown.d.ts +5 -0
  49. package/dist/commands/ai/teardown.d.ts.map +1 -0
  50. package/dist/commands/ai/teardown.js +78 -0
  51. package/dist/commands/ai/test.d.ts +4 -0
  52. package/dist/commands/ai/test.d.ts.map +1 -0
  53. package/dist/commands/ai/test.js +65 -0
  54. package/dist/commands/ai.d.ts.map +1 -1
  55. package/dist/commands/ai.js +16 -1938
  56. package/dist/commands/application/api-keys/create.d.ts +6 -0
  57. package/dist/commands/application/api-keys/create.d.ts.map +1 -0
  58. package/dist/commands/application/api-keys/create.js +68 -0
  59. package/dist/commands/application/api-keys/delete.d.ts +6 -0
  60. package/dist/commands/application/api-keys/delete.d.ts.map +1 -0
  61. package/dist/commands/application/api-keys/delete.js +79 -0
  62. package/dist/commands/application/api-keys/list.d.ts +5 -0
  63. package/dist/commands/application/api-keys/list.d.ts.map +1 -0
  64. package/dist/commands/application/api-keys/list.js +65 -0
  65. package/dist/commands/application/api-keys.d.ts +3 -0
  66. package/dist/commands/application/api-keys.d.ts.map +1 -0
  67. package/dist/commands/application/api-keys.js +227 -0
  68. package/dist/commands/application/create-compose.d.ts +3 -0
  69. package/dist/commands/application/create-compose.d.ts.map +1 -0
  70. package/dist/commands/application/create-compose.js +381 -0
  71. package/dist/commands/application/create-docker-compose.d.ts +10 -0
  72. package/dist/commands/application/create-docker-compose.d.ts.map +1 -0
  73. package/dist/commands/application/create-docker-compose.js +334 -0
  74. package/dist/commands/application/create-existing.d.ts +14 -0
  75. package/dist/commands/application/create-existing.d.ts.map +1 -0
  76. package/dist/commands/application/create-existing.js +359 -0
  77. package/dist/commands/application/create-interactive.d.ts +3 -0
  78. package/dist/commands/application/create-interactive.d.ts.map +1 -0
  79. package/dist/commands/application/create-interactive.js +326 -0
  80. package/dist/commands/application/create-managed-process.d.ts +15 -0
  81. package/dist/commands/application/create-managed-process.d.ts.map +1 -0
  82. package/dist/commands/application/create-managed-process.js +371 -0
  83. package/dist/commands/application/create-stubs.d.ts +4 -0
  84. package/dist/commands/application/create-stubs.d.ts.map +1 -0
  85. package/dist/commands/application/create-stubs.js +19 -0
  86. package/dist/commands/application/create-workload.d.ts +5 -0
  87. package/dist/commands/application/create-workload.d.ts.map +1 -0
  88. package/dist/commands/application/create-workload.js +48 -0
  89. package/dist/commands/application/delete.d.ts +6 -0
  90. package/dist/commands/application/delete.d.ts.map +1 -0
  91. package/dist/commands/application/delete.js +76 -0
  92. package/dist/commands/application/get.d.ts +5 -0
  93. package/dist/commands/application/get.d.ts.map +1 -0
  94. package/dist/commands/application/get.js +35 -0
  95. package/dist/commands/application/list.d.ts +4 -0
  96. package/dist/commands/application/list.d.ts.map +1 -0
  97. package/dist/commands/application/list.js +41 -0
  98. package/dist/commands/application/short-codes/create.d.ts +7 -0
  99. package/dist/commands/application/short-codes/create.d.ts.map +1 -0
  100. package/dist/commands/application/short-codes/create.js +69 -0
  101. package/dist/commands/application/short-codes/delete.d.ts +6 -0
  102. package/dist/commands/application/short-codes/delete.d.ts.map +1 -0
  103. package/dist/commands/application/short-codes/delete.js +79 -0
  104. package/dist/commands/application/short-codes/list.d.ts +5 -0
  105. package/dist/commands/application/short-codes/list.d.ts.map +1 -0
  106. package/dist/commands/application/short-codes/list.js +63 -0
  107. package/dist/commands/application/short-codes/toggle.d.ts +5 -0
  108. package/dist/commands/application/short-codes/toggle.d.ts.map +1 -0
  109. package/dist/commands/application/short-codes/toggle.js +71 -0
  110. package/dist/commands/application/short-codes.d.ts +3 -0
  111. package/dist/commands/application/short-codes.d.ts.map +1 -0
  112. package/dist/commands/application/short-codes.js +226 -0
  113. package/dist/commands/application/toggle.d.ts +2 -0
  114. package/dist/commands/application/toggle.d.ts.map +1 -0
  115. package/dist/commands/application/toggle.js +78 -0
  116. package/dist/commands/application/update.d.ts +4 -0
  117. package/dist/commands/application/update.d.ts.map +1 -0
  118. package/dist/commands/application/update.js +11 -0
  119. package/dist/commands/application.d.ts.map +1 -1
  120. package/dist/commands/application.js +32 -1630
  121. package/dist/commands/auth.d.ts.map +1 -1
  122. package/dist/commands/auth.js +31 -49
  123. package/dist/commands/base/BaseCommand.d.ts +3 -3
  124. package/dist/commands/base/BaseCommand.d.ts.map +1 -1
  125. package/dist/commands/base/BaseCommand.js +3 -3
  126. package/dist/commands/base/command-wrapper.d.ts +0 -4
  127. package/dist/commands/base/command-wrapper.d.ts.map +1 -1
  128. package/dist/commands/base/command-wrapper.js +13 -14
  129. package/dist/commands/base/middleware.d.ts +3 -3
  130. package/dist/commands/base/middleware.d.ts.map +1 -1
  131. package/dist/commands/base/middleware.js +4 -4
  132. package/dist/commands/config.d.ts.map +1 -1
  133. package/dist/commands/config.js +15 -32
  134. package/dist/commands/connectivity.d.ts.map +1 -1
  135. package/dist/commands/connectivity.js +6 -11
  136. package/dist/commands/debug.d.ts.map +1 -1
  137. package/dist/commands/debug.js +187 -46
  138. package/dist/commands/discover.d.ts.map +1 -1
  139. package/dist/commands/discover.js +4 -17
  140. package/dist/commands/gateway.d.ts.map +1 -1
  141. package/dist/commands/gateway.js +37 -77
  142. package/dist/commands/managedGateway/create.d.ts +6 -0
  143. package/dist/commands/managedGateway/create.d.ts.map +1 -0
  144. package/dist/commands/managedGateway/create.js +50 -0
  145. package/dist/commands/managedGateway/delete.d.ts +5 -0
  146. package/dist/commands/managedGateway/delete.d.ts.map +1 -0
  147. package/dist/commands/managedGateway/delete.js +57 -0
  148. package/dist/commands/managedGateway/get.d.ts +4 -0
  149. package/dist/commands/managedGateway/get.d.ts.map +1 -0
  150. package/dist/commands/managedGateway/get.js +71 -0
  151. package/dist/commands/managedGateway/haproxy-stats.d.ts +6 -0
  152. package/dist/commands/managedGateway/haproxy-stats.d.ts.map +1 -0
  153. package/dist/commands/managedGateway/haproxy-stats.js +131 -0
  154. package/dist/commands/managedGateway/list.d.ts +4 -0
  155. package/dist/commands/managedGateway/list.d.ts.map +1 -0
  156. package/dist/commands/managedGateway/list.js +50 -0
  157. package/dist/commands/managedGateway/logs.d.ts +10 -0
  158. package/dist/commands/managedGateway/logs.d.ts.map +1 -0
  159. package/dist/commands/managedGateway/logs.js +100 -0
  160. package/dist/commands/managedGateway/reboot.d.ts +5 -0
  161. package/dist/commands/managedGateway/reboot.d.ts.map +1 -0
  162. package/dist/commands/managedGateway/reboot.js +95 -0
  163. package/dist/commands/managedGateway/resync.d.ts +10 -0
  164. package/dist/commands/managedGateway/resync.d.ts.map +1 -0
  165. package/dist/commands/managedGateway/resync.js +69 -0
  166. package/dist/commands/managedGateway/ssh.d.ts +4 -0
  167. package/dist/commands/managedGateway/ssh.d.ts.map +1 -0
  168. package/dist/commands/managedGateway/ssh.js +130 -0
  169. package/dist/commands/managedGateway/wipe-logs.d.ts +4 -0
  170. package/dist/commands/managedGateway/wipe-logs.d.ts.map +1 -0
  171. package/dist/commands/managedGateway/wipe-logs.js +67 -0
  172. package/dist/commands/managedGateway/wireguard.d.ts +4 -0
  173. package/dist/commands/managedGateway/wireguard.d.ts.map +1 -0
  174. package/dist/commands/managedGateway/wireguard.js +68 -0
  175. package/dist/commands/managedGateway.d.ts.map +1 -1
  176. package/dist/commands/managedGateway.js +61 -117
  177. package/dist/commands/utils/config-validator.d.ts +5 -5
  178. package/dist/commands/utils/config-validator.d.ts.map +1 -1
  179. package/dist/commands/utils/config-validator.js +8 -8
  180. package/dist/commands/utils/output-formatter.js +1 -1
  181. package/dist/config/app-config.d.ts +1 -1
  182. package/dist/config/app-config.js +2 -2
  183. package/dist/index.js +0 -3
  184. package/dist/services/LocalAgentManager.d.ts.map +1 -1
  185. package/dist/services/LocalAgentManager.js +4 -2
  186. package/dist/services/agentDeployment/AgentDeploymentService.d.ts +35 -0
  187. package/dist/services/agentDeployment/AgentDeploymentService.d.ts.map +1 -0
  188. package/dist/services/agentDeployment/AgentDeploymentService.js +35 -0
  189. package/dist/services/application/ApplicationService.d.ts +5 -4
  190. package/dist/services/application/ApplicationService.d.ts.map +1 -1
  191. package/dist/services/application/ApplicationService.js +22 -35
  192. package/dist/services/auth/AuthService.d.ts +5 -5
  193. package/dist/services/auth/AuthService.d.ts.map +1 -1
  194. package/dist/services/auth/AuthService.js +11 -58
  195. package/dist/services/daemon/DaemonManagerFactory.d.ts +2 -0
  196. package/dist/services/daemon/DaemonManagerFactory.d.ts.map +1 -1
  197. package/dist/services/daemon/DaemonManagerFactory.js +14 -6
  198. package/dist/services/diagnostics/DiagnosticsService.d.ts +89 -0
  199. package/dist/services/diagnostics/DiagnosticsService.d.ts.map +1 -0
  200. package/dist/services/diagnostics/DiagnosticsService.js +37 -0
  201. package/dist/services/edgible.d.ts +6 -4
  202. package/dist/services/edgible.d.ts.map +1 -1
  203. package/dist/services/edgible.js +36 -86
  204. package/dist/services/gateway/GatewayService.d.ts +5 -6
  205. package/dist/services/gateway/GatewayService.d.ts.map +1 -1
  206. package/dist/services/gateway/GatewayService.js +22 -36
  207. package/dist/services/instances.d.ts +34 -0
  208. package/dist/services/instances.d.ts.map +1 -0
  209. package/dist/services/instances.js +64 -0
  210. package/dist/services/managedGateway/ManagedGatewayService.d.ts +75 -0
  211. package/dist/services/managedGateway/ManagedGatewayService.d.ts.map +1 -0
  212. package/dist/services/managedGateway/ManagedGatewayService.js +44 -0
  213. package/dist/services/token/TokenManager.d.ts +56 -0
  214. package/dist/services/token/TokenManager.d.ts.map +1 -0
  215. package/dist/services/token/TokenManager.js +85 -0
  216. package/dist/types/validation/schemas.d.ts +22 -22
  217. package/dist/utils/PlatformDetector.d.ts +2 -0
  218. package/dist/utils/PlatformDetector.d.ts.map +1 -1
  219. package/dist/utils/PlatformDetector.js +5 -34
  220. package/dist/validation/schemas.d.ts +6 -6
  221. package/package.json +1 -1
@@ -35,7 +35,7 @@ function formatApplication(app) {
35
35
  if (app.description) {
36
36
  output += chalk_1.default.gray(` Description: ${app.description}\n`);
37
37
  }
38
- output += chalk_1.default.cyan(` URL: ${app.protocol}://${app.servingIp}:${app.port}\n`);
38
+ output += chalk_1.default.cyan(` URL: ${app.protocol}://${app.servingIp}\n`);
39
39
  return output;
40
40
  }
41
41
  /**
@@ -21,7 +21,7 @@ export interface AppConfig {
21
21
  * Users can set these via shell/system environment variables.
22
22
  *
23
23
  * Available environment variables:
24
- * - LOG_LEVEL: Set log level (default: 'INFO')
24
+ * - LOG_LEVEL: Set log level (default: 'WARN')
25
25
  * Note: API_BASE_URL is now hardcoded based on stage (STAGE or SST_STAGE env var)
26
26
  * - NO_COLOR: Disable colored output (set to '1' or 'true')
27
27
  * - PLAIN_OUTPUT: Enable plain text output (set to '1' or 'true')
@@ -23,7 +23,7 @@ const DEFAULT_INSTANCE_TYPE = 't3.micro';
23
23
  * Users can set these via shell/system environment variables.
24
24
  *
25
25
  * Available environment variables:
26
- * - LOG_LEVEL: Set log level (default: 'INFO')
26
+ * - LOG_LEVEL: Set log level (default: 'WARN')
27
27
  * Note: API_BASE_URL is now hardcoded based on stage (STAGE or SST_STAGE env var)
28
28
  * - NO_COLOR: Disable colored output (set to '1' or 'true')
29
29
  * - PLAIN_OUTPUT: Enable plain text output (set to '1' or 'true')
@@ -32,7 +32,7 @@ const DEFAULT_INSTANCE_TYPE = 't3.micro';
32
32
  */
33
33
  function loadConfig() {
34
34
  const apiBaseUrl = (0, urls_1.getApiBaseUrl)();
35
- const logLevel = process.env.LOG_LEVEL || 'INFO';
35
+ const logLevel = process.env.LOG_LEVEL || 'WARN';
36
36
  const colorEnabled = process.env.NO_COLOR !== '1' && process.env.NO_COLOR !== 'true';
37
37
  const plain = process.env.PLAIN_OUTPUT === '1' || process.env.PLAIN_OUTPUT === 'true';
38
38
  const defaultRegion = process.env.DEFAULT_REGION || DEFAULT_REGION;
package/dist/index.js CHANGED
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  const commander_1 = require("commander");
5
5
  const errors_1 = require("./utils/errors");
6
6
  const output_1 = require("./utils/output");
7
- const bindings_1 = require("./di/bindings");
8
7
  const application_1 = require("./commands/application");
9
8
  const gateway_1 = require("./commands/gateway");
10
9
  const auth_1 = require("./commands/auth");
@@ -15,8 +14,6 @@ const ai_1 = require("./commands/ai");
15
14
  const agent_1 = require("./commands/agent");
16
15
  const debug_1 = require("./commands/debug");
17
16
  const managedGateway_1 = require("./commands/managedGateway");
18
- // Initialize dependency injection container
19
- (0, bindings_1.initializeContainer)();
20
17
  const program = new commander_1.Command();
21
18
  // Set up the CLI
22
19
  program
@@ -1 +1 @@
1
- {"version":3,"file":"LocalAgentManager.d.ts","sourceRoot":"","sources":["../../src/services/LocalAgentManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalAgentManager.d.ts","sourceRoot":"","sources":["../../src/services/LocalAgentManager.ts"],"names":[],"mappings":"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"}
@@ -1207,7 +1207,7 @@ class LocalAgentManager {
1207
1207
  const { execSync } = require('child_process');
1208
1208
  // Use rsync for efficient directory copying (cross-platform)
1209
1209
  try {
1210
- execSync(`rsync -av --exclude=node_modules/.cache --exclude=.git "${src}/" "${dest}/"`, { stdio: 'inherit' });
1210
+ execSync(`rsync -a --exclude=node_modules/.cache --exclude=.git "${src}/" "${dest}/"`, { stdio: 'ignore' });
1211
1211
  }
1212
1212
  catch (error) {
1213
1213
  // Fallback to manual copying if rsync is not available
@@ -1309,7 +1309,9 @@ class LocalAgentManager {
1309
1309
  const extractPath = path.join(tempDir, 'extracted');
1310
1310
  await mkdir(extractPath, { recursive: true });
1311
1311
  // Use unzip command (available on most systems)
1312
- (0, child_process_1.execSync)(`unzip -q "${zipPath}" -d "${extractPath}"`, {});
1312
+ (0, child_process_1.execSync)(`unzip -q "${zipPath}" -d "${extractPath}"`, {
1313
+ stdio: 'ignore',
1314
+ });
1313
1315
  // Copy extracted files to agent directory
1314
1316
  await this.copyDirectory(extractPath, targetConfigPath);
1315
1317
  // Make the agent binary executable
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Agent Deployment Service
3
+ *
4
+ * Handles agent configuration generation and deployment logic.
5
+ * This is a focused service extracted from the EdgibleService god object.
6
+ */
7
+ import { EdgibleService } from '../edgible';
8
+ export interface AgentDeploymentService {
9
+ /**
10
+ * Generate agent user data for cloud-init
11
+ */
12
+ generateAgentUserData(deviceId: string): string;
13
+ /**
14
+ * Generate agent configuration code
15
+ */
16
+ generateAgentCode(deviceId: string): string;
17
+ /**
18
+ * Resync agent on a gateway
19
+ */
20
+ resyncGatewayAgent(gatewayId: string, agentVersion?: string, installFromLocal?: boolean): Promise<any>;
21
+ }
22
+ /**
23
+ * Implementation of AgentDeploymentService
24
+ *
25
+ * Currently delegates to EdgibleService for backward compatibility.
26
+ * In Phase 3, we'll extract the actual implementation.
27
+ */
28
+ export declare class AgentDeploymentServiceImpl implements AgentDeploymentService {
29
+ private edgibleService;
30
+ constructor(edgibleService: EdgibleService);
31
+ generateAgentUserData(deviceId: string): string;
32
+ generateAgentCode(deviceId: string): string;
33
+ resyncGatewayAgent(gatewayId: string, agentVersion?: string, installFromLocal?: boolean): Promise<any>;
34
+ }
35
+ //# sourceMappingURL=AgentDeploymentService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentDeploymentService.d.ts","sourceRoot":"","sources":["../../../src/services/agentDeployment/AgentDeploymentService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhD;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5C;;OAEG;IACH,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,OAAO,GACzB,OAAO,CAAC,GAAG,CAAC,CAAC;CACjB;AAED;;;;;GAKG;AACH,qBAAa,0BAA2B,YAAW,sBAAsB;IAC3D,OAAO,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAElD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAM/C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAMrC,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,OAAO,GACzB,OAAO,CAAC,GAAG,CAAC;CAGhB"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ /**
3
+ * Agent Deployment Service
4
+ *
5
+ * Handles agent configuration generation and deployment logic.
6
+ * This is a focused service extracted from the EdgibleService god object.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AgentDeploymentServiceImpl = void 0;
10
+ /**
11
+ * Implementation of AgentDeploymentService
12
+ *
13
+ * Currently delegates to EdgibleService for backward compatibility.
14
+ * In Phase 3, we'll extract the actual implementation.
15
+ */
16
+ class AgentDeploymentServiceImpl {
17
+ constructor(edgibleService) {
18
+ this.edgibleService = edgibleService;
19
+ }
20
+ generateAgentUserData(deviceId) {
21
+ // Access the private method via type assertion (temporary hack)
22
+ // In Phase 3, we'll properly extract this
23
+ return this.edgibleService.generateAgentUserData(deviceId);
24
+ }
25
+ generateAgentCode(deviceId) {
26
+ // Access the private method via type assertion (temporary hack)
27
+ // In Phase 3, we'll properly extract this
28
+ return this.edgibleService.generateAgentCode(deviceId);
29
+ }
30
+ async resyncGatewayAgent(gatewayId, agentVersion, installFromLocal) {
31
+ return this.edgibleService.resyncGatewayAgent(gatewayId, agentVersion, installFromLocal);
32
+ }
33
+ }
34
+ exports.AgentDeploymentServiceImpl = AgentDeploymentServiceImpl;
35
+ //# sourceMappingURL=AgentDeploymentService.js.map
@@ -3,8 +3,9 @@
3
3
  * Handles application management operations
4
4
  */
5
5
  import { Application, Workload } from '../../detection/WorkloadDetector';
6
- import { ConfigRepository } from '../../repositories/config-repository';
6
+ import { ConfigManager } from '../../state/config';
7
7
  import { AuthService } from '../auth/AuthService';
8
+ import { TokenManager } from '../token/TokenManager';
8
9
  import { Logger } from '../../utils/logger';
9
10
  export interface ApplicationService {
10
11
  setupApplication(workload: Workload, port: number, protocol: 'http' | 'https' | 'tcp' | 'udp', description?: string, gatewayId?: string): Promise<Application>;
@@ -36,13 +37,13 @@ export interface ApplicationService {
36
37
  }
37
38
  export declare class ApplicationServiceImpl implements ApplicationService {
38
39
  private apiClient;
39
- private configRepository;
40
+ private configManager;
40
41
  private authService;
42
+ private tokenManager;
41
43
  private logger;
42
44
  private baseUrl;
43
45
  private applications;
44
- constructor(baseUrl: string, configRepository: ConfigRepository, authService: AuthService, logger: Logger);
45
- private restoreTokensFromApiClient;
46
+ constructor(baseUrl: string, configManager: ConfigManager, authService: AuthService, tokenManager: TokenManager, logger: Logger);
46
47
  private generateServingIp;
47
48
  setupApplication(workload: Workload, port: number, protocol?: 'http' | 'https' | 'tcp' | 'udp', description?: string, gatewayId?: string): Promise<Application>;
48
49
  getApplications(): Promise<Application[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationService.d.ts","sourceRoot":"","sources":["../../../src/services/application/ApplicationService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationService.d.ts","sourceRoot":"","sources":["../../../src/services/application/ApplicationService.ts"],"names":[],"mappings":"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"}
@@ -7,28 +7,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.ApplicationServiceImpl = void 0;
8
8
  const client_1 = require("../../client");
9
9
  class ApplicationServiceImpl {
10
- constructor(baseUrl, configRepository, authService, logger) {
10
+ constructor(baseUrl, configManager, authService, tokenManager, logger) {
11
11
  this.applications = [];
12
12
  this.baseUrl = baseUrl;
13
- this.configRepository = configRepository;
13
+ this.configManager = configManager;
14
14
  this.authService = authService;
15
+ this.tokenManager = tokenManager;
15
16
  this.logger = logger;
16
17
  this.apiClient = (0, client_1.createApiClient)(baseUrl);
17
- this.restoreTokensFromApiClient();
18
- }
19
- restoreTokensFromApiClient() {
20
- const accessToken = this.authService.getAccessToken();
21
- const idToken = this.authService.getIdToken();
22
- const refreshToken = this.authService.getRefreshToken();
23
- if (accessToken) {
24
- this.apiClient.setAccessToken(accessToken);
25
- }
26
- if (idToken) {
27
- this.apiClient.setIdToken(idToken);
28
- }
29
- if (refreshToken) {
30
- this.apiClient.setRefreshToken(refreshToken);
31
- }
18
+ this.tokenManager.restoreTokensFromConfig(this.apiClient);
32
19
  }
33
20
  generateServingIp() {
34
21
  // Generate a mock IP in the 10.x.x.x range
@@ -41,11 +28,11 @@ class ApplicationServiceImpl {
41
28
  async setupApplication(workload, port, protocol = 'http', description, gatewayId) {
42
29
  try {
43
30
  // Attempt auto re-login if tokens are missing but credentials are available
44
- await this.authService.attemptAutoRelogin();
45
- this.restoreTokensFromApiClient();
31
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
32
+ this.tokenManager.restoreTokensFromConfig(this.apiClient);
46
33
  this.logger.info(`Setting up application for workload: ${workload.name}`);
47
34
  // Get organization ID from config
48
- const config = this.configRepository.getConfig();
35
+ const config = this.configManager.getConfig();
49
36
  if (!config.organizationId) {
50
37
  throw new Error('No organization ID found. Please login first.');
51
38
  }
@@ -97,10 +84,10 @@ class ApplicationServiceImpl {
97
84
  async getApplications() {
98
85
  try {
99
86
  // Attempt auto re-login if tokens are missing but credentials are available
100
- await this.authService.attemptAutoRelogin();
101
- this.restoreTokensFromApiClient();
87
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
88
+ this.tokenManager.restoreTokensFromConfig(this.apiClient);
102
89
  this.logger.debug('Getting applications');
103
- const config = this.configRepository.getConfig();
90
+ const config = this.configManager.getConfig();
104
91
  let organizationId;
105
92
  // Check if we have an organization ID in the config (device login)
106
93
  if (config.organizationId) {
@@ -251,8 +238,8 @@ class ApplicationServiceImpl {
251
238
  async deleteApplication(id) {
252
239
  try {
253
240
  // Attempt auto re-login if tokens are missing but credentials are available
254
- await this.authService.attemptAutoRelogin();
255
- this.restoreTokensFromApiClient();
241
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
242
+ this.tokenManager.restoreTokensFromConfig(this.apiClient);
256
243
  this.logger.info(`Deleting application: ${id}`);
257
244
  await this.apiClient.deleteApplication(id);
258
245
  this.logger.info('Application deleted successfully', { applicationId: id });
@@ -266,9 +253,9 @@ class ApplicationServiceImpl {
266
253
  async createApplicationProgrammatically(params) {
267
254
  try {
268
255
  // Attempt auto re-login if tokens are missing but credentials are available
269
- await this.authService.attemptAutoRelogin();
270
- this.restoreTokensFromApiClient();
271
- const config = this.configRepository.getConfig();
256
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
257
+ this.tokenManager.restoreTokensFromConfig(this.apiClient);
258
+ const config = this.configManager.getConfig();
272
259
  if (!config.organizationId) {
273
260
  throw new Error('Not logged in. Please run "edgible login" first.');
274
261
  }
@@ -317,7 +304,7 @@ class ApplicationServiceImpl {
317
304
  */
318
305
  async listApiKeys(applicationId) {
319
306
  try {
320
- await this.authService.attemptAutoRelogin();
307
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
321
308
  const response = await this.apiClient.listApplicationApiKeys(applicationId);
322
309
  return response.keys || [];
323
310
  }
@@ -331,7 +318,7 @@ class ApplicationServiceImpl {
331
318
  */
332
319
  async createApiKey(applicationId, name, expiresAt) {
333
320
  try {
334
- await this.authService.attemptAutoRelogin();
321
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
335
322
  const response = await this.apiClient.createApplicationApiKey(applicationId, name, expiresAt);
336
323
  return response;
337
324
  }
@@ -345,7 +332,7 @@ class ApplicationServiceImpl {
345
332
  */
346
333
  async deleteApiKey(applicationId, keyId) {
347
334
  try {
348
- await this.authService.attemptAutoRelogin();
335
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
349
336
  await this.apiClient.deleteApplicationApiKey(applicationId, keyId);
350
337
  }
351
338
  catch (error) {
@@ -358,7 +345,7 @@ class ApplicationServiceImpl {
358
345
  */
359
346
  async listShortCodes(applicationId) {
360
347
  try {
361
- await this.authService.attemptAutoRelogin();
348
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
362
349
  const response = await this.apiClient.listApplicationShortCodes(applicationId);
363
350
  return response.codes || [];
364
351
  }
@@ -372,7 +359,7 @@ class ApplicationServiceImpl {
372
359
  */
373
360
  async createShortCode(applicationId, name, expiresAt, maxUses) {
374
361
  try {
375
- await this.authService.attemptAutoRelogin();
362
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
376
363
  const response = await this.apiClient.createApplicationShortCode(applicationId, name, expiresAt, maxUses);
377
364
  return response;
378
365
  }
@@ -386,7 +373,7 @@ class ApplicationServiceImpl {
386
373
  */
387
374
  async updateShortCode(applicationId, codeId, updates) {
388
375
  try {
389
- await this.authService.attemptAutoRelogin();
376
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
390
377
  const response = await this.apiClient.updateApplicationShortCode(applicationId, codeId, updates);
391
378
  return response;
392
379
  }
@@ -400,7 +387,7 @@ class ApplicationServiceImpl {
400
387
  */
401
388
  async deleteShortCode(applicationId, codeId) {
402
389
  try {
403
- await this.authService.attemptAutoRelogin();
390
+ await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
404
391
  await this.apiClient.deleteApplicationShortCode(applicationId, codeId);
405
392
  }
406
393
  catch (error) {
@@ -4,7 +4,8 @@
4
4
  */
5
5
  import { LoginResponse } from '../../client';
6
6
  import { CreateDeviceWithOrphanedOrganizationResponse, GetUserOrganizationsResponse } from '../../types/ApiResponses';
7
- import { ConfigRepository } from '../../repositories/config-repository';
7
+ import { ConfigManager } from '../../state/config';
8
+ import { TokenManager } from '../token/TokenManager';
8
9
  import { Logger } from '../../utils/logger';
9
10
  export interface AuthService {
10
11
  loginUser(email: string, password: string): Promise<LoginResponse>;
@@ -21,13 +22,12 @@ export interface AuthService {
21
22
  }
22
23
  export declare class AuthServiceImpl implements AuthService {
23
24
  private apiClient;
24
- private configRepository;
25
+ private configManager;
26
+ private tokenManager;
25
27
  private logger;
26
28
  private baseUrl;
27
- constructor(baseUrl: string, configRepository: ConfigRepository, logger: Logger);
28
- private restoreTokensFromConfig;
29
+ constructor(baseUrl: string, configManager: ConfigManager, tokenManager: TokenManager, logger: Logger);
29
30
  attemptAutoRelogin(): Promise<boolean>;
30
- private saveTokensToConfig;
31
31
  loginUser(email: string, password: string): Promise<LoginResponse>;
32
32
  createDeviceWithOrganization(deviceName: string, password: string, userEmail?: string): Promise<CreateDeviceWithOrphanedOrganizationResponse>;
33
33
  checkAccount(email: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../src/services/auth/AuthService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAA4C,aAAa,EAAE,MAAM,cAAc,CAAC;AAEvF,OAAO,EAAE,4CAA4C,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAEtH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACnE,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACxE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9E,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,4BAA4B,CAC1B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4CAA4C,CAAC,CAAC;IACzD,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC3E,cAAc,IAAI,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,IAAI,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,IAAI,MAAM,GAAG,SAAS,CAAC;IACtC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC;AAED,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAGtB,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM;IAShB,OAAO,CAAC,uBAAuB;IAsBzB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB5C,OAAO,CAAC,kBAAkB;IAkBpB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAYlE,4BAA4B,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4CAA4C,CAAC;IA0BlD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB7C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAYvE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8C7E,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1D,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC,eAAe,IAAI,MAAM,GAAG,SAAS;IAI/B,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;CAQjF"}
1
+ {"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../src/services/auth/AuthService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAA4C,aAAa,EAAE,MAAM,cAAc,CAAC;AAEvF,OAAO,EAAE,4CAA4C,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAEtH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACnE,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACxE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9E,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,4BAA4B,CAC1B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4CAA4C,CAAC,CAAC;IACzD,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC3E,cAAc,IAAI,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,IAAI,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,IAAI,MAAM,GAAG,SAAS,CAAC;IACtC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC;AAED,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAGtB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM;IAUV,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAOtC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAYlE,4BAA4B,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4CAA4C,CAAC;IA0BlD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB7C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAYvE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8C7E,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1D,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC,eAAe,IAAI,MAAM,GAAG,SAAS;IAI/B,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;CAQjF"}
@@ -8,69 +8,22 @@ exports.AuthServiceImpl = void 0;
8
8
  const client_1 = require("../../client");
9
9
  const passwordValidation_1 = require("../../utils/passwordValidation");
10
10
  class AuthServiceImpl {
11
- constructor(baseUrl, configRepository, logger) {
11
+ constructor(baseUrl, configManager, tokenManager, logger) {
12
12
  this.baseUrl = baseUrl;
13
- this.configRepository = configRepository;
13
+ this.configManager = configManager;
14
+ this.tokenManager = tokenManager;
14
15
  this.logger = logger;
15
16
  this.apiClient = (0, client_1.createApiClient)(baseUrl);
16
- this.restoreTokensFromConfig();
17
- }
18
- restoreTokensFromConfig() {
19
- const config = this.configRepository.getConfig();
20
- if (config.accessToken) {
21
- this.apiClient.setAccessToken(config.accessToken);
22
- }
23
- if (config.idToken) {
24
- this.apiClient.setIdToken(config.idToken);
25
- }
26
- if (config.refreshToken) {
27
- this.apiClient.setRefreshToken(config.refreshToken);
28
- }
29
- this.logger.debug('Token restoration', {
30
- hasAccessToken: !!config.accessToken,
31
- hasIdToken: !!config.idToken,
32
- hasRefreshToken: !!config.refreshToken,
33
- organizationId: config.organizationId,
34
- deviceId: config.deviceId,
35
- });
17
+ this.tokenManager.restoreTokensFromConfig(this.apiClient);
36
18
  }
37
19
  async attemptAutoRelogin() {
38
- const config = this.configRepository.getConfig();
39
- // If no tokens but we have device credentials, attempt automatic re-login
40
- if (!config.idToken && !config.accessToken && config.deviceId && config.devicePassword) {
41
- this.logger.debug('No tokens available, attempting automatic device re-login');
42
- try {
43
- await this.loginDevice(config.deviceId, config.devicePassword);
44
- this.logger.debug('Automatic re-login successful');
45
- return true;
46
- }
47
- catch (error) {
48
- this.logger.warn('Automatic re-login failed', error instanceof Error ? error.message : String(error));
49
- return false;
50
- }
51
- }
52
- return false;
53
- }
54
- saveTokensToConfig() {
55
- const accessToken = this.apiClient.getAccessToken();
56
- const idToken = this.apiClient.getIdToken();
57
- const refreshToken = this.apiClient.getRefreshToken();
58
- this.logger.debug('Saving tokens', {
59
- hasAccessToken: !!accessToken,
60
- hasIdToken: !!idToken,
61
- hasRefreshToken: !!refreshToken,
62
- });
63
- this.configRepository.updateConfig({
64
- accessToken,
65
- idToken,
66
- refreshToken,
67
- });
20
+ return this.tokenManager.ensureValidToken(this.apiClient, this.loginDevice.bind(this));
68
21
  }
69
22
  async loginUser(email, password) {
70
23
  try {
71
24
  const loginRequest = { email, password };
72
25
  const response = await this.apiClient.login(loginRequest);
73
- this.saveTokensToConfig();
26
+ this.tokenManager.saveTokensToConfig(this.apiClient);
74
27
  return response;
75
28
  }
76
29
  catch (error) {
@@ -130,7 +83,7 @@ class AuthServiceImpl {
130
83
  try {
131
84
  const loginRequest = { email: deviceId, password };
132
85
  const response = await this.apiClient.login(loginRequest);
133
- this.saveTokensToConfig();
86
+ this.tokenManager.saveTokensToConfig(this.apiClient);
134
87
  return response;
135
88
  }
136
89
  catch (error) {
@@ -183,7 +136,7 @@ class AuthServiceImpl {
183
136
  async refreshToken(refreshToken) {
184
137
  try {
185
138
  const response = await this.apiClient.refreshToken({ refreshToken });
186
- this.saveTokensToConfig();
139
+ this.tokenManager.saveTokensToConfig(this.apiClient);
187
140
  return response;
188
141
  }
189
142
  catch (error) {
@@ -192,13 +145,13 @@ class AuthServiceImpl {
192
145
  }
193
146
  }
194
147
  getAccessToken() {
195
- return this.apiClient.getAccessToken();
148
+ return this.tokenManager.getAccessToken();
196
149
  }
197
150
  getIdToken() {
198
- return this.apiClient.getIdToken();
151
+ return this.tokenManager.getIdToken();
199
152
  }
200
153
  getRefreshToken() {
201
- return this.apiClient.getRefreshToken();
154
+ return this.tokenManager.getRefreshToken();
202
155
  }
203
156
  async getUserOrganizations(email) {
204
157
  try {
@@ -3,10 +3,12 @@ export type DaemonType = 'systemd' | 'launchd' | 'windows-service' | 'docker' |
3
3
  export declare class DaemonManagerFactory {
4
4
  /**
5
5
  * Create a daemon manager instance based on the type
6
+ * Only native daemon installations are supported (systemd, launchd, windows-service)
6
7
  */
7
8
  static create(type: DaemonType): IDaemonManager;
8
9
  /**
9
10
  * Get daemon manager from stored config type
11
+ * Only native daemon types are supported
10
12
  */
11
13
  static fromConfig(installationType?: string): IDaemonManager | null;
12
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"DaemonManagerFactory.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/DaemonManagerFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAQjE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzF,qBAAa,oBAAoB;IAC/B;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc;IAiC/C;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAanE;;OAEG;WACU,cAAc,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAS9D"}
1
+ {"version":3,"file":"DaemonManagerFactory.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/DaemonManagerFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAQjE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzF,qBAAa,oBAAoB;IAC/B;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc;IAiC/C;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAwBnE;;OAEG;WACU,cAAc,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAS9D"}
@@ -4,15 +4,18 @@ exports.DaemonManagerFactory = void 0;
4
4
  const SystemdDaemonManager_1 = require("./SystemdDaemonManager");
5
5
  const LaunchdDaemonManager_1 = require("./LaunchdDaemonManager");
6
6
  const WindowsServiceDaemonManager_1 = require("./WindowsServiceDaemonManager");
7
- const DockerDaemonManager_1 = require("./DockerDaemonManager");
8
- const PodmanDaemonManager_1 = require("./PodmanDaemonManager");
9
7
  const PlatformDetector_1 = require("../../utils/PlatformDetector");
10
8
  class DaemonManagerFactory {
11
9
  /**
12
10
  * Create a daemon manager instance based on the type
11
+ * Only native daemon installations are supported (systemd, launchd, windows-service)
13
12
  */
14
13
  static create(type) {
15
14
  const platform = PlatformDetector_1.PlatformDetector.getPlatform();
15
+ // Block Docker and Podman installations
16
+ if (type === 'docker' || type === 'podman') {
17
+ throw new Error(`${type} installations are no longer supported. Please use native daemon installations (systemd, launchd, or windows-service).`);
18
+ }
16
19
  switch (type) {
17
20
  case 'systemd':
18
21
  if (platform !== 'linux') {
@@ -29,16 +32,13 @@ class DaemonManagerFactory {
29
32
  throw new Error('Windows Service is only available on Windows');
30
33
  }
31
34
  return new WindowsServiceDaemonManager_1.WindowsServiceDaemonManager();
32
- case 'docker':
33
- return new DockerDaemonManager_1.DockerDaemonManager();
34
- case 'podman':
35
- return new PodmanDaemonManager_1.PodmanDaemonManager();
36
35
  default:
37
36
  throw new Error(`Unknown daemon type: ${type}`);
38
37
  }
39
38
  }
40
39
  /**
41
40
  * Get daemon manager from stored config type
41
+ * Only native daemon types are supported
42
42
  */
43
43
  static fromConfig(installationType) {
44
44
  if (!installationType) {
@@ -48,6 +48,14 @@ class DaemonManagerFactory {
48
48
  if (!validTypes.includes(installationType)) {
49
49
  throw new Error(`Invalid installation type in config: ${installationType}`);
50
50
  }
51
+ // Provide helpful error for legacy Docker/Podman installations
52
+ if (installationType === 'docker' || installationType === 'podman') {
53
+ throw new Error(`${installationType} installations are no longer supported.\n` +
54
+ `Please uninstall the current agent and reinstall using a native daemon:\n` +
55
+ ` - Linux: systemd\n` +
56
+ ` - macOS: launchd\n` +
57
+ ` - Windows: windows-service`);
58
+ }
51
59
  return this.create(installationType);
52
60
  }
53
61
  /**