@oalacea/daemon 0.5.0 → 0.6.0

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 (222) hide show
  1. package/LICENSE +23 -23
  2. package/README.md +147 -141
  3. package/bin/Dockerfile +75 -74
  4. package/dist/cli/cli.d.ts +42 -0
  5. package/dist/cli/cli.d.ts.map +1 -0
  6. package/dist/cli/cli.js +89 -0
  7. package/dist/cli/cli.js.map +1 -0
  8. package/dist/cli/commands/detect.command.d.ts +39 -0
  9. package/dist/cli/commands/detect.command.d.ts.map +1 -0
  10. package/dist/cli/commands/detect.command.js +111 -0
  11. package/dist/cli/commands/detect.command.js.map +1 -0
  12. package/dist/cli/commands/index.d.ts +14 -0
  13. package/dist/cli/commands/index.d.ts.map +1 -0
  14. package/dist/cli/commands/index.js +11 -0
  15. package/dist/cli/commands/index.js.map +1 -0
  16. package/dist/cli/commands/init.command.d.ts +41 -0
  17. package/dist/cli/commands/init.command.d.ts.map +1 -0
  18. package/dist/cli/commands/init.command.js +111 -0
  19. package/dist/cli/commands/init.command.js.map +1 -0
  20. package/dist/cli/commands/test.command.d.ts +58 -0
  21. package/dist/cli/commands/test.command.d.ts.map +1 -0
  22. package/dist/cli/commands/test.command.js +180 -0
  23. package/dist/cli/commands/test.command.js.map +1 -0
  24. package/dist/cli/index.d.ts +8 -0
  25. package/dist/cli/index.d.ts.map +1 -0
  26. package/dist/cli/index.js +10 -0
  27. package/dist/cli/index.js.map +1 -0
  28. package/dist/core/config/daemon.config.d.ts +32 -0
  29. package/dist/core/config/daemon.config.d.ts.map +1 -0
  30. package/dist/core/config/daemon.config.js +83 -0
  31. package/dist/core/config/daemon.config.js.map +1 -0
  32. package/dist/core/config/index.d.ts +5 -0
  33. package/dist/core/config/index.d.ts.map +1 -0
  34. package/dist/core/config/index.js +5 -0
  35. package/dist/core/config/index.js.map +1 -0
  36. package/dist/core/constants.d.ts +36 -0
  37. package/dist/core/constants.d.ts.map +1 -0
  38. package/dist/core/constants.js +56 -0
  39. package/dist/core/constants.js.map +1 -0
  40. package/dist/core/types/common.types.d.ts +250 -0
  41. package/dist/core/types/common.types.d.ts.map +1 -0
  42. package/dist/core/types/common.types.js +7 -0
  43. package/dist/core/types/common.types.js.map +1 -0
  44. package/dist/core/types/detection.types.d.ts +232 -0
  45. package/dist/core/types/detection.types.d.ts.map +1 -0
  46. package/dist/core/types/detection.types.js +22 -0
  47. package/dist/core/types/detection.types.js.map +1 -0
  48. package/dist/core/types/docker.types.d.ts +322 -0
  49. package/dist/core/types/docker.types.d.ts.map +1 -0
  50. package/dist/core/types/docker.types.js +7 -0
  51. package/dist/core/types/docker.types.js.map +1 -0
  52. package/dist/core/types/index.d.ts +11 -0
  53. package/dist/core/types/index.d.ts.map +1 -0
  54. package/dist/core/types/index.js +7 -0
  55. package/dist/core/types/index.js.map +1 -0
  56. package/dist/core/types/project.types.d.ts +74 -0
  57. package/dist/core/types/project.types.d.ts.map +1 -0
  58. package/dist/core/types/project.types.js +7 -0
  59. package/dist/core/types/project.types.js.map +1 -0
  60. package/dist/core/types/shared.types.d.ts +118 -0
  61. package/dist/core/types/shared.types.d.ts.map +1 -0
  62. package/dist/core/types/shared.types.js +7 -0
  63. package/dist/core/types/shared.types.js.map +1 -0
  64. package/dist/core/types/test.types.d.ts +230 -0
  65. package/dist/core/types/test.types.d.ts.map +1 -0
  66. package/dist/core/types/test.types.js +7 -0
  67. package/dist/core/types/test.types.js.map +1 -0
  68. package/dist/services/detection/__tests__/framework-detector.test.d.ts +5 -0
  69. package/dist/services/detection/__tests__/framework-detector.test.d.ts.map +1 -0
  70. package/dist/services/detection/__tests__/framework-detector.test.js +52 -0
  71. package/dist/services/detection/__tests__/framework-detector.test.js.map +1 -0
  72. package/dist/services/detection/framework-detector.d.ts +179 -0
  73. package/dist/services/detection/framework-detector.d.ts.map +1 -0
  74. package/dist/services/detection/framework-detector.js +636 -0
  75. package/dist/services/detection/framework-detector.js.map +1 -0
  76. package/dist/services/detection/index.d.ts +10 -0
  77. package/dist/services/detection/index.d.ts.map +1 -0
  78. package/dist/services/detection/index.js +7 -0
  79. package/dist/services/detection/index.js.map +1 -0
  80. package/dist/services/docker/__tests__/docker-manager.test.d.ts +5 -0
  81. package/dist/services/docker/__tests__/docker-manager.test.d.ts.map +1 -0
  82. package/dist/services/docker/__tests__/docker-manager.test.js +67 -0
  83. package/dist/services/docker/__tests__/docker-manager.test.js.map +1 -0
  84. package/dist/services/docker/docker-manager.d.ts +157 -0
  85. package/dist/services/docker/docker-manager.d.ts.map +1 -0
  86. package/dist/services/docker/docker-manager.js +516 -0
  87. package/dist/services/docker/docker-manager.js.map +1 -0
  88. package/dist/services/docker/index.d.ts +9 -0
  89. package/dist/services/docker/index.d.ts.map +1 -0
  90. package/dist/services/docker/index.js +9 -0
  91. package/dist/services/docker/index.js.map +1 -0
  92. package/dist/services/index.d.ts +10 -0
  93. package/dist/services/index.d.ts.map +1 -0
  94. package/dist/services/index.js +8 -0
  95. package/dist/services/index.js.map +1 -0
  96. package/dist/shared/errors/__tests__/base.error.test.d.ts +5 -0
  97. package/dist/shared/errors/__tests__/base.error.test.d.ts.map +1 -0
  98. package/dist/shared/errors/__tests__/base.error.test.js +61 -0
  99. package/dist/shared/errors/__tests__/base.error.test.js.map +1 -0
  100. package/dist/shared/errors/__tests__/command.error.test.d.ts +5 -0
  101. package/dist/shared/errors/__tests__/command.error.test.d.ts.map +1 -0
  102. package/dist/shared/errors/__tests__/command.error.test.js +62 -0
  103. package/dist/shared/errors/__tests__/command.error.test.js.map +1 -0
  104. package/dist/shared/errors/__tests__/file.error.test.d.ts +5 -0
  105. package/dist/shared/errors/__tests__/file.error.test.d.ts.map +1 -0
  106. package/dist/shared/errors/__tests__/file.error.test.js +75 -0
  107. package/dist/shared/errors/__tests__/file.error.test.js.map +1 -0
  108. package/dist/shared/errors/__tests__/index.test.d.ts +5 -0
  109. package/dist/shared/errors/__tests__/index.test.d.ts.map +1 -0
  110. package/dist/shared/errors/__tests__/index.test.js +62 -0
  111. package/dist/shared/errors/__tests__/index.test.js.map +1 -0
  112. package/dist/shared/errors/__tests__/validation.error.test.d.ts +5 -0
  113. package/dist/shared/errors/__tests__/validation.error.test.d.ts.map +1 -0
  114. package/dist/shared/errors/__tests__/validation.error.test.js +79 -0
  115. package/dist/shared/errors/__tests__/validation.error.test.js.map +1 -0
  116. package/dist/shared/errors/base.error.d.ts +54 -0
  117. package/dist/shared/errors/base.error.d.ts.map +1 -0
  118. package/dist/shared/errors/base.error.js +85 -0
  119. package/dist/shared/errors/base.error.js.map +1 -0
  120. package/dist/shared/errors/command.error.d.ts +58 -0
  121. package/dist/shared/errors/command.error.d.ts.map +1 -0
  122. package/dist/shared/errors/command.error.js +102 -0
  123. package/dist/shared/errors/command.error.js.map +1 -0
  124. package/dist/shared/errors/detection.error.d.ts +42 -0
  125. package/dist/shared/errors/detection.error.d.ts.map +1 -0
  126. package/dist/shared/errors/detection.error.js +82 -0
  127. package/dist/shared/errors/detection.error.js.map +1 -0
  128. package/dist/shared/errors/docker.error.d.ts +142 -0
  129. package/dist/shared/errors/docker.error.d.ts.map +1 -0
  130. package/dist/shared/errors/docker.error.js +172 -0
  131. package/dist/shared/errors/docker.error.js.map +1 -0
  132. package/dist/shared/errors/file.error.d.ts +66 -0
  133. package/dist/shared/errors/file.error.d.ts.map +1 -0
  134. package/dist/shared/errors/file.error.js +93 -0
  135. package/dist/shared/errors/file.error.js.map +1 -0
  136. package/dist/shared/errors/index.d.ts +56 -0
  137. package/dist/shared/errors/index.d.ts.map +1 -0
  138. package/dist/shared/errors/index.js +86 -0
  139. package/dist/shared/errors/index.js.map +1 -0
  140. package/dist/shared/errors/validation.error.d.ts +67 -0
  141. package/dist/shared/errors/validation.error.d.ts.map +1 -0
  142. package/dist/shared/errors/validation.error.js +97 -0
  143. package/dist/shared/errors/validation.error.js.map +1 -0
  144. package/dist/shared/templates/index.d.ts +2 -0
  145. package/dist/shared/templates/index.d.ts.map +1 -0
  146. package/dist/shared/templates/index.js +2 -0
  147. package/dist/shared/templates/index.js.map +1 -0
  148. package/dist/shared/templates/prompt-builder.d.ts +2 -0
  149. package/dist/shared/templates/prompt-builder.d.ts.map +1 -0
  150. package/dist/shared/templates/prompt-builder.js +2 -0
  151. package/dist/shared/templates/prompt-builder.js.map +1 -0
  152. package/dist/shared/templates/template-engine.d.ts +2 -0
  153. package/dist/shared/templates/template-engine.d.ts.map +1 -0
  154. package/dist/shared/templates/template-engine.js +2 -0
  155. package/dist/shared/templates/template-engine.js.map +1 -0
  156. package/dist/shared/utils/__tests__/command-executor.test.d.ts +5 -0
  157. package/dist/shared/utils/__tests__/command-executor.test.d.ts.map +1 -0
  158. package/dist/shared/utils/__tests__/command-executor.test.js +45 -0
  159. package/dist/shared/utils/__tests__/command-executor.test.js.map +1 -0
  160. package/dist/shared/utils/__tests__/file-helper.test.d.ts +5 -0
  161. package/dist/shared/utils/__tests__/file-helper.test.d.ts.map +1 -0
  162. package/dist/shared/utils/__tests__/file-helper.test.js +71 -0
  163. package/dist/shared/utils/__tests__/file-helper.test.js.map +1 -0
  164. package/dist/shared/utils/__tests__/logger.test.d.ts +5 -0
  165. package/dist/shared/utils/__tests__/logger.test.d.ts.map +1 -0
  166. package/dist/shared/utils/__tests__/logger.test.js +83 -0
  167. package/dist/shared/utils/__tests__/logger.test.js.map +1 -0
  168. package/dist/shared/utils/command-executer.d.ts +2 -0
  169. package/dist/shared/utils/command-executer.d.ts.map +1 -0
  170. package/dist/shared/utils/command-executer.js +2 -0
  171. package/dist/shared/utils/command-executer.js.map +1 -0
  172. package/dist/shared/utils/command-executor.d.ts +255 -0
  173. package/dist/shared/utils/command-executor.d.ts.map +1 -0
  174. package/dist/shared/utils/command-executor.js +287 -0
  175. package/dist/shared/utils/command-executor.js.map +1 -0
  176. package/dist/shared/utils/file-helper.d.ts +86 -0
  177. package/dist/shared/utils/file-helper.d.ts.map +1 -0
  178. package/dist/shared/utils/file-helper.js +323 -0
  179. package/dist/shared/utils/file-helper.js.map +1 -0
  180. package/dist/shared/utils/index.d.ts +9 -0
  181. package/dist/shared/utils/index.d.ts.map +1 -0
  182. package/dist/shared/utils/index.js +9 -0
  183. package/dist/shared/utils/index.js.map +1 -0
  184. package/dist/shared/utils/logger.d.ts +163 -0
  185. package/dist/shared/utils/logger.d.ts.map +1 -0
  186. package/dist/shared/utils/logger.js +389 -0
  187. package/dist/shared/utils/logger.js.map +1 -0
  188. package/package.json +53 -34
  189. package/prompts/DEPS_EFFICIENCY.md +558 -558
  190. package/prompts/E2E.md +491 -491
  191. package/prompts/EXECUTE.md +1060 -1060
  192. package/prompts/INTEGRATION_API.md +484 -484
  193. package/prompts/INTEGRATION_DB.md +425 -425
  194. package/prompts/PERF_API.md +433 -433
  195. package/prompts/PERF_DB.md +430 -430
  196. package/prompts/PERF_FRONT.md +357 -357
  197. package/prompts/REMEDIATION.md +482 -482
  198. package/prompts/UNIT.md +260 -260
  199. package/templates/README.md +38 -38
  200. package/templates/k6/load-test.js +54 -54
  201. package/templates/playwright/e2e.spec.ts +61 -61
  202. package/templates/vitest/angular-component.test.ts +38 -38
  203. package/templates/vitest/api.test.ts +51 -51
  204. package/templates/vitest/component.test.ts +27 -27
  205. package/templates/vitest/hook.test.ts +36 -36
  206. package/templates/vitest/solid-component.test.ts +34 -34
  207. package/templates/vitest/svelte-component.test.ts +33 -33
  208. package/templates/vitest/vue-component.test.ts +39 -39
  209. package/CHANGELOG.md +0 -38
  210. package/agents/deps-analyzer.js +0 -366
  211. package/agents/detector.js +0 -570
  212. package/agents/fix-engine.js +0 -305
  213. package/agents/lighthouse-scanner.js +0 -405
  214. package/agents/perf-analyzer.js +0 -294
  215. package/agents/perf-front-analyzer.js +0 -229
  216. package/agents/test-generator.js +0 -387
  217. package/agents/test-runner.js +0 -318
  218. package/bin/cli.js +0 -449
  219. package/lib/config.js +0 -250
  220. package/lib/docker.js +0 -207
  221. package/lib/reporter.js +0 -297
  222. package/scripts/dev.js +0 -106
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Command execution errors.
3
+ *
4
+ * Error codes:
5
+ * - COMMAND_001: Generic command execution error
6
+ * - COMMAND_002: Command not found
7
+ * - COMMAND_003: Command timeout
8
+ * - COMMAND_004: Command returned non-zero exit code
9
+ * - COMMAND_005: Invalid command arguments
10
+ * - COMMAND_006: Command cancelled
11
+ */
12
+ import { DaemonError } from './base.error.js';
13
+ /**
14
+ * Base class for all command execution errors
15
+ */
16
+ export class CommandExecutionError extends DaemonError {
17
+ command;
18
+ exitCode;
19
+ stdout;
20
+ stderr;
21
+ constructor(message, command, exitCode, stdout, stderr, options) {
22
+ super(message, 'COMMAND_001', {
23
+ ...options,
24
+ context: {
25
+ command,
26
+ exitCode,
27
+ stdout,
28
+ stderr,
29
+ ...options?.context,
30
+ },
31
+ });
32
+ this.name = 'CommandExecutionError';
33
+ this.command = command;
34
+ this.exitCode = exitCode;
35
+ this.stdout = stdout;
36
+ this.stderr = stderr;
37
+ }
38
+ /**
39
+ * Check if the command failed due to a non-zero exit code
40
+ */
41
+ isNonZeroExit() {
42
+ return this.exitCode !== null && this.exitCode !== 0;
43
+ }
44
+ }
45
+ /**
46
+ * Thrown when a command executable is not found
47
+ */
48
+ export class CommandNotFoundError extends CommandExecutionError {
49
+ constructor(command, options) {
50
+ super(`Command not found: ${command}`, command, null, '', '', options);
51
+ this.name = 'CommandNotFoundError';
52
+ }
53
+ }
54
+ /**
55
+ * Thrown when a command execution times out
56
+ */
57
+ export class CommandTimeoutError extends CommandExecutionError {
58
+ constructor(command, timeout, options) {
59
+ super(`Command timed out after ${timeout}ms: ${command}`, command, null, '', '', {
60
+ ...options,
61
+ context: {
62
+ timeout,
63
+ ...options?.context,
64
+ },
65
+ });
66
+ this.name = 'CommandTimeoutError';
67
+ }
68
+ }
69
+ /**
70
+ * Thrown when a command returns a non-zero exit code
71
+ */
72
+ export class CommandFailedError extends CommandExecutionError {
73
+ constructor(command, exitCode, stdout, stderr, options) {
74
+ super(`Command failed with exit code ${exitCode}: ${command}`, command, exitCode, stdout, stderr, options);
75
+ this.name = 'CommandFailedError';
76
+ }
77
+ }
78
+ /**
79
+ * Thrown when command arguments are invalid
80
+ */
81
+ export class InvalidCommandArgumentsError extends CommandExecutionError {
82
+ constructor(command, reason, options) {
83
+ super(`Invalid command arguments for ${command}: ${reason}`, command, null, '', '', {
84
+ ...options,
85
+ context: {
86
+ reason,
87
+ ...options?.context,
88
+ },
89
+ });
90
+ this.name = 'InvalidCommandArgumentsError';
91
+ }
92
+ }
93
+ /**
94
+ * Thrown when a command is cancelled by the user or system
95
+ */
96
+ export class CommandCancelledError extends CommandExecutionError {
97
+ constructor(command, options) {
98
+ super(`Command cancelled: ${command}`, command, null, '', '', options);
99
+ this.name = 'CommandCancelledError';
100
+ }
101
+ }
102
+ //# sourceMappingURL=command.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.error.js","sourceRoot":"","sources":["../../../src/shared/errors/command.error.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Framework detection errors.
3
+ *
4
+ * Error codes:
5
+ * - DETECTION_001: Generic detection error
6
+ * - DETECTION_002: Unsupported framework
7
+ * - DETECTION_003: No framework detected
8
+ * - DETECTION_004: Ambiguous framework detection
9
+ * - DETECTION_005: Invalid project structure
10
+ */
11
+ import { DaemonError, type DaemonErrorOptions } from './base.error.js';
12
+ /**
13
+ * Base class for all detection-related errors
14
+ */
15
+ export declare class DetectionError extends DaemonError {
16
+ constructor(message: string, code: string, options?: DaemonErrorOptions);
17
+ }
18
+ /**
19
+ * Thrown when a framework is not supported by Daemon
20
+ */
21
+ export declare class UnsupportedFrameworkError extends DetectionError {
22
+ constructor(framework: string, options?: DaemonErrorOptions);
23
+ }
24
+ /**
25
+ * Thrown when no framework can be detected in the project
26
+ */
27
+ export declare class NoFrameworkDetectedError extends DetectionError {
28
+ constructor(projectPath: string, options?: DaemonErrorOptions);
29
+ }
30
+ /**
31
+ * Thrown when framework detection is ambiguous (multiple possible frameworks)
32
+ */
33
+ export declare class AmbiguousFrameworkError extends DetectionError {
34
+ constructor(candidates: string[], options?: DaemonErrorOptions);
35
+ }
36
+ /**
37
+ * Thrown when the project structure is invalid or corrupted
38
+ */
39
+ export declare class InvalidProjectStructureError extends DetectionError {
40
+ constructor(projectPath: string, reason: string, options?: DaemonErrorOptions);
41
+ }
42
+ //# sourceMappingURL=detection.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detection.error.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/detection.error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAAqB,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1F;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;gBACjC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAIxE;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,cAAc;gBAC/C,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAc5D;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;gBAC9C,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAc9D;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,cAAc;gBAC7C,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAc/D;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,cAAc;gBAClD,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAe9E"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Framework detection errors.
3
+ *
4
+ * Error codes:
5
+ * - DETECTION_001: Generic detection error
6
+ * - DETECTION_002: Unsupported framework
7
+ * - DETECTION_003: No framework detected
8
+ * - DETECTION_004: Ambiguous framework detection
9
+ * - DETECTION_005: Invalid project structure
10
+ */
11
+ import { DaemonError } from './base.error.js';
12
+ /**
13
+ * Base class for all detection-related errors
14
+ */
15
+ export class DetectionError extends DaemonError {
16
+ constructor(message, code, options) {
17
+ super(message, code, options);
18
+ this.name = 'DetectionError';
19
+ }
20
+ }
21
+ /**
22
+ * Thrown when a framework is not supported by Daemon
23
+ */
24
+ export class UnsupportedFrameworkError extends DetectionError {
25
+ constructor(framework, options) {
26
+ super(`Unsupported framework: ${framework}. Daemon currently supports a limited set of frameworks.`, 'DETECTION_002', {
27
+ ...options,
28
+ context: {
29
+ framework,
30
+ ...options?.context,
31
+ },
32
+ });
33
+ this.name = 'UnsupportedFrameworkError';
34
+ }
35
+ }
36
+ /**
37
+ * Thrown when no framework can be detected in the project
38
+ */
39
+ export class NoFrameworkDetectedError extends DetectionError {
40
+ constructor(projectPath, options) {
41
+ super(`No supported framework detected in ${projectPath}`, 'DETECTION_003', {
42
+ ...options,
43
+ context: {
44
+ projectPath,
45
+ ...options?.context,
46
+ },
47
+ });
48
+ this.name = 'NoFrameworkDetectedError';
49
+ }
50
+ }
51
+ /**
52
+ * Thrown when framework detection is ambiguous (multiple possible frameworks)
53
+ */
54
+ export class AmbiguousFrameworkError extends DetectionError {
55
+ constructor(candidates, options) {
56
+ super(`Ambiguous framework detection: multiple frameworks detected (${candidates.join(', ')})`, 'DETECTION_004', {
57
+ ...options,
58
+ context: {
59
+ candidates,
60
+ ...options?.context,
61
+ },
62
+ });
63
+ this.name = 'AmbiguousFrameworkError';
64
+ }
65
+ }
66
+ /**
67
+ * Thrown when the project structure is invalid or corrupted
68
+ */
69
+ export class InvalidProjectStructureError extends DetectionError {
70
+ constructor(projectPath, reason, options) {
71
+ super(`Invalid project structure at ${projectPath}: ${reason}`, 'DETECTION_005', {
72
+ ...options,
73
+ context: {
74
+ projectPath,
75
+ reason,
76
+ ...options?.context,
77
+ },
78
+ });
79
+ this.name = 'InvalidProjectStructureError';
80
+ }
81
+ }
82
+ //# sourceMappingURL=detection.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detection.error.js","sourceRoot":"","sources":["../../../src/shared/errors/detection.error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAA8C,MAAM,iBAAiB,CAAC;AAE1F;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,WAAW;IAC7C,YAAY,OAAe,EAAE,IAAY,EAAE,OAA4B;QACrE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,cAAc;IAC3D,YAAY,SAAiB,EAAE,OAA4B;QACzD,KAAK,CACH,0BAA0B,SAAS,0DAA0D,EAC7F,eAAe,EACf;YACE,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,SAAS;gBACT,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CACF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,wBAAyB,SAAQ,cAAc;IAC1D,YAAY,WAAmB,EAAE,OAA4B;QAC3D,KAAK,CACH,sCAAsC,WAAW,EAAE,EACnD,eAAe,EACf;YACE,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,WAAW;gBACX,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CACF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,cAAc;IACzD,YAAY,UAAoB,EAAE,OAA4B;QAC5D,KAAK,CACH,gEAAgE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EACxF,eAAe,EACf;YACE,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,UAAU;gBACV,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CACF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,4BAA6B,SAAQ,cAAc;IAC9D,YAAY,WAAmB,EAAE,MAAc,EAAE,OAA4B;QAC3E,KAAK,CACH,gCAAgC,WAAW,KAAK,MAAM,EAAE,EACxD,eAAe,EACf;YACE,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,WAAW;gBACX,MAAM;gBACN,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CACF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC7C,CAAC;CACF"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Docker-specific errors.
3
+ *
4
+ * Error codes:
5
+ * - DOCKER_001: Generic Docker error
6
+ * - DOCKER_002: Container not found
7
+ * - DOCKER_003: Image build failed
8
+ * - DOCKER_004: Container already exists
9
+ * - DOCKER_005: Container start failed
10
+ * - DOCKER_006: Container stop failed
11
+ * - DOCKER_007: Docker daemon not available
12
+ * - DOCKER_008: Image pull failed
13
+ */
14
+ import { DaemonError, type ErrorContext, type DaemonErrorOptions } from './base.error.js';
15
+ /**
16
+ * Base class for all Docker-related errors
17
+ */
18
+ export declare class BaseDockerError extends DaemonError {
19
+ constructor(message: string, code: string, options?: DaemonErrorOptions);
20
+ }
21
+ /**
22
+ * Thrown when a container cannot be found
23
+ */
24
+ export declare class ContainerNotFoundError extends BaseDockerError {
25
+ constructor(containerIdOrName: string, options?: DaemonErrorOptions);
26
+ }
27
+ /**
28
+ * Thrown when a Docker image build fails
29
+ */
30
+ export declare class ImageBuildError extends BaseDockerError {
31
+ constructor(buildPath: string, buildReason: string, options?: DaemonErrorOptions);
32
+ }
33
+ /**
34
+ * Thrown when a container with the same name already exists
35
+ */
36
+ export declare class ContainerAlreadyExistsError extends BaseDockerError {
37
+ constructor(containerName: string, options?: DaemonErrorOptions);
38
+ }
39
+ /**
40
+ * Thrown when container start fails
41
+ */
42
+ export declare class ContainerStartError extends BaseDockerError {
43
+ constructor(containerName: string, reason: string, options?: DaemonErrorOptions);
44
+ }
45
+ /**
46
+ * Thrown when container stop fails
47
+ */
48
+ export declare class ContainerStopError extends BaseDockerError {
49
+ constructor(containerName: string, reason: string, options?: DaemonErrorOptions);
50
+ }
51
+ /**
52
+ * Thrown when Docker daemon is not available or not running
53
+ */
54
+ export declare class DockerDaemonUnavailableError extends BaseDockerError {
55
+ constructor(reason?: string, options?: DaemonErrorOptions);
56
+ }
57
+ /**
58
+ * Thrown when Docker image pull fails
59
+ */
60
+ export declare class ImagePullError extends BaseDockerError {
61
+ constructor(imageName: string, reason: string, options?: DaemonErrorOptions);
62
+ }
63
+ /**
64
+ * Factory methods pour créer facilement des erreurs Docker
65
+ */
66
+ export declare const DockerErrors: {
67
+ /**
68
+ * Crée une erreur générique Docker
69
+ */
70
+ generic: (message: string, context?: ErrorContext) => BaseDockerError;
71
+ /**
72
+ * Crée une erreur conteneur non trouvé
73
+ */
74
+ containerNotFound: (containerName: string) => ContainerNotFoundError;
75
+ /**
76
+ * Crée une erreur de build d'image
77
+ */
78
+ imageBuildFailed: (buildPath: string, reason: string) => ImageBuildError;
79
+ /**
80
+ * Crée une erreur conteneur déjà existant
81
+ */
82
+ containerAlreadyExists: (containerName: string) => ContainerAlreadyExistsError;
83
+ /**
84
+ * Crée une erreur échec démarrage conteneur
85
+ */
86
+ containerStartFailed: (containerName: string, cause?: unknown) => ContainerStartError;
87
+ /**
88
+ * Crée une erreur échec arrêt conteneur
89
+ */
90
+ containerStopFailed: (containerName: string, reason: string) => ContainerStopError;
91
+ /**
92
+ * Crée une erreur Docker non disponible
93
+ */
94
+ dockerNotRunning: () => DockerDaemonUnavailableError;
95
+ /**
96
+ * Crée une erreur échec exec
97
+ */
98
+ execFailed: (containerName: string, cause: unknown) => BaseDockerError;
99
+ /**
100
+ * Crée une erreur création conteneur échouée
101
+ */
102
+ containerCreateFailed: (containerName: string, cause?: unknown) => BaseDockerError;
103
+ };
104
+ export declare const DockerError: {
105
+ /**
106
+ * Crée une erreur générique Docker
107
+ */
108
+ generic: (message: string, context?: ErrorContext) => BaseDockerError;
109
+ /**
110
+ * Crée une erreur conteneur non trouvé
111
+ */
112
+ containerNotFound: (containerName: string) => ContainerNotFoundError;
113
+ /**
114
+ * Crée une erreur de build d'image
115
+ */
116
+ imageBuildFailed: (buildPath: string, reason: string) => ImageBuildError;
117
+ /**
118
+ * Crée une erreur conteneur déjà existant
119
+ */
120
+ containerAlreadyExists: (containerName: string) => ContainerAlreadyExistsError;
121
+ /**
122
+ * Crée une erreur échec démarrage conteneur
123
+ */
124
+ containerStartFailed: (containerName: string, cause?: unknown) => ContainerStartError;
125
+ /**
126
+ * Crée une erreur échec arrêt conteneur
127
+ */
128
+ containerStopFailed: (containerName: string, reason: string) => ContainerStopError;
129
+ /**
130
+ * Crée une erreur Docker non disponible
131
+ */
132
+ dockerNotRunning: () => DockerDaemonUnavailableError;
133
+ /**
134
+ * Crée une erreur échec exec
135
+ */
136
+ execFailed: (containerName: string, cause: unknown) => BaseDockerError;
137
+ /**
138
+ * Crée une erreur création conteneur échouée
139
+ */
140
+ containerCreateFailed: (containerName: string, cause?: unknown) => BaseDockerError;
141
+ };
142
+ //# sourceMappingURL=docker.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker.error.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/docker.error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1F;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAIxE;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,iBAAiB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAcpE;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,eAAe;gBAEhD,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,kBAAkB;CAgB/B;AAED;;GAEG;AACH,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAchE;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAehF;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAehF;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAU1D;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,eAAe;gBACrC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAe5E;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB;;OAEG;uBACgB,MAAM,YAAY,YAAY;IAGjD;;OAEG;uCACgC,MAAM;IAGzC;;OAEG;kCAC2B,MAAM,UAAU,MAAM;IAGpD;;OAEG;4CACqC,MAAM;IAG9C;;OAEG;0CACmC,MAAM,UAAU,OAAO;IAM7D;;OAEG;yCACkC,MAAM,UAAU,MAAM;IAG3D;;OAEG;;IAIH;;OAEG;gCACyB,MAAM,SAAS,OAAO;IAOlD;;OAEG;2CACoC,MAAM,UAAU,OAAO;CAM/D,CAAC;AAGF,eAAO,MAAM,WAAW;IAnEtB;;OAEG;uBACgB,MAAM,YAAY,YAAY;IAGjD;;OAEG;uCACgC,MAAM;IAGzC;;OAEG;kCAC2B,MAAM,UAAU,MAAM;IAGpD;;OAEG;4CACqC,MAAM;IAG9C;;OAEG;0CACmC,MAAM,UAAU,OAAO;IAM7D;;OAEG;yCACkC,MAAM,UAAU,MAAM;IAG3D;;OAEG;;IAIH;;OAEG;gCACyB,MAAM,SAAS,OAAO;IAOlD;;OAEG;2CACoC,MAAM,UAAU,OAAO;CASzB,CAAC"}
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Docker-specific errors.
3
+ *
4
+ * Error codes:
5
+ * - DOCKER_001: Generic Docker error
6
+ * - DOCKER_002: Container not found
7
+ * - DOCKER_003: Image build failed
8
+ * - DOCKER_004: Container already exists
9
+ * - DOCKER_005: Container start failed
10
+ * - DOCKER_006: Container stop failed
11
+ * - DOCKER_007: Docker daemon not available
12
+ * - DOCKER_008: Image pull failed
13
+ */
14
+ import { DaemonError } from './base.error.js';
15
+ /**
16
+ * Base class for all Docker-related errors
17
+ */
18
+ export class BaseDockerError extends DaemonError {
19
+ constructor(message, code, options) {
20
+ super(message, code, options);
21
+ this.name = 'DockerError';
22
+ }
23
+ }
24
+ /**
25
+ * Thrown when a container cannot be found
26
+ */
27
+ export class ContainerNotFoundError extends BaseDockerError {
28
+ constructor(containerIdOrName, options) {
29
+ super(`Container not found: ${containerIdOrName}`, 'DOCKER_002', {
30
+ ...options,
31
+ context: {
32
+ containerId: containerIdOrName,
33
+ ...options?.context,
34
+ },
35
+ });
36
+ this.name = 'ContainerNotFoundError';
37
+ }
38
+ }
39
+ /**
40
+ * Thrown when a Docker image build fails
41
+ */
42
+ export class ImageBuildError extends BaseDockerError {
43
+ constructor(buildPath, buildReason, options) {
44
+ super(`Docker image build failed for ${buildPath}: ${buildReason}`, 'DOCKER_003', {
45
+ ...options,
46
+ context: {
47
+ buildPath,
48
+ buildReason,
49
+ ...options?.context,
50
+ },
51
+ });
52
+ this.name = 'ImageBuildError';
53
+ }
54
+ }
55
+ /**
56
+ * Thrown when a container with the same name already exists
57
+ */
58
+ export class ContainerAlreadyExistsError extends BaseDockerError {
59
+ constructor(containerName, options) {
60
+ super(`Container already exists: ${containerName}`, 'DOCKER_004', {
61
+ ...options,
62
+ context: {
63
+ containerName,
64
+ ...options?.context,
65
+ },
66
+ });
67
+ this.name = 'ContainerAlreadyExistsError';
68
+ }
69
+ }
70
+ /**
71
+ * Thrown when container start fails
72
+ */
73
+ export class ContainerStartError extends BaseDockerError {
74
+ constructor(containerName, reason, options) {
75
+ super(`Failed to start container ${containerName}: ${reason}`, 'DOCKER_005', {
76
+ ...options,
77
+ context: {
78
+ containerName,
79
+ reason,
80
+ ...options?.context,
81
+ },
82
+ });
83
+ this.name = 'ContainerStartError';
84
+ }
85
+ }
86
+ /**
87
+ * Thrown when container stop fails
88
+ */
89
+ export class ContainerStopError extends BaseDockerError {
90
+ constructor(containerName, reason, options) {
91
+ super(`Failed to stop container ${containerName}: ${reason}`, 'DOCKER_006', {
92
+ ...options,
93
+ context: {
94
+ containerName,
95
+ reason,
96
+ ...options?.context,
97
+ },
98
+ });
99
+ this.name = 'ContainerStopError';
100
+ }
101
+ }
102
+ /**
103
+ * Thrown when Docker daemon is not available or not running
104
+ */
105
+ export class DockerDaemonUnavailableError extends BaseDockerError {
106
+ constructor(reason, options) {
107
+ super(reason
108
+ ? `Docker daemon unavailable: ${reason}`
109
+ : 'Docker daemon is not running or not accessible', 'DOCKER_007', options);
110
+ this.name = 'DockerDaemonUnavailableError';
111
+ }
112
+ }
113
+ /**
114
+ * Thrown when Docker image pull fails
115
+ */
116
+ export class ImagePullError extends BaseDockerError {
117
+ constructor(imageName, reason, options) {
118
+ super(`Failed to pull Docker image ${imageName}: ${reason}`, 'DOCKER_008', {
119
+ ...options,
120
+ context: {
121
+ imageName,
122
+ reason,
123
+ ...options?.context,
124
+ },
125
+ });
126
+ this.name = 'ImagePullError';
127
+ }
128
+ }
129
+ /**
130
+ * Factory methods pour créer facilement des erreurs Docker
131
+ */
132
+ export const DockerErrors = {
133
+ /**
134
+ * Crée une erreur générique Docker
135
+ */
136
+ generic: (message, context) => new BaseDockerError(message, 'DOCKER_001', { context }),
137
+ /**
138
+ * Crée une erreur conteneur non trouvé
139
+ */
140
+ containerNotFound: (containerName) => new ContainerNotFoundError(containerName),
141
+ /**
142
+ * Crée une erreur de build d'image
143
+ */
144
+ imageBuildFailed: (buildPath, reason) => new ImageBuildError(buildPath, reason),
145
+ /**
146
+ * Crée une erreur conteneur déjà existant
147
+ */
148
+ containerAlreadyExists: (containerName) => new ContainerAlreadyExistsError(containerName),
149
+ /**
150
+ * Crée une erreur échec démarrage conteneur
151
+ */
152
+ containerStartFailed: (containerName, cause) => new ContainerStartError(containerName, cause instanceof Error ? cause.message : String(cause ?? 'Unknown reason')),
153
+ /**
154
+ * Crée une erreur échec arrêt conteneur
155
+ */
156
+ containerStopFailed: (containerName, reason) => new ContainerStopError(containerName, reason),
157
+ /**
158
+ * Crée une erreur Docker non disponible
159
+ */
160
+ dockerNotRunning: () => new DockerDaemonUnavailableError(),
161
+ /**
162
+ * Crée une erreur échec exec
163
+ */
164
+ execFailed: (containerName, cause) => new BaseDockerError(`Command execution failed in container ${containerName}`, 'DOCKER_009', { cause: cause instanceof Error ? cause : undefined }),
165
+ /**
166
+ * Crée une erreur création conteneur échouée
167
+ */
168
+ containerCreateFailed: (containerName, cause) => new BaseDockerError(`Failed to create container ${containerName}`, 'DOCKER_010', { cause: cause instanceof Error ? cause : undefined }),
169
+ };
170
+ // Alias pour compatibilité
171
+ export const DockerError = DockerErrors;
172
+ //# sourceMappingURL=docker.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker.error.js","sourceRoot":"","sources":["../../../src/shared/errors/docker.error.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * FileSystemError - Errors related to file system operations.
3
+ *
4
+ * Provides specific error types for common file operations:
5
+ * - File not found
6
+ * - Permission denied
7
+ * - Invalid JSON
8
+ * - Directory creation failures
9
+ * - File operation failures
10
+ */
11
+ import { DaemonError, type DaemonErrorOptions } from './base.error.js';
12
+ /**
13
+ * Base class for all file system related errors
14
+ */
15
+ export declare class FileSystemError extends DaemonError {
16
+ constructor(message: string, code: string, options?: DaemonErrorOptions);
17
+ }
18
+ /**
19
+ * Thrown when a file or directory is not found
20
+ */
21
+ export declare class FileNotFoundError extends FileSystemError {
22
+ constructor(filePath: string, options?: DaemonErrorOptions);
23
+ }
24
+ /**
25
+ * Thrown when lacking permission to access a file/directory
26
+ */
27
+ export declare class FilePermissionError extends FileSystemError {
28
+ constructor(filePath: string, operation: string, options?: DaemonErrorOptions);
29
+ }
30
+ /**
31
+ * Thrown when JSON parsing fails
32
+ */
33
+ export declare class InvalidJsonError extends FileSystemError {
34
+ constructor(filePath: string, parseError: string, options?: DaemonErrorOptions);
35
+ }
36
+ /**
37
+ * Thrown when directory creation fails
38
+ */
39
+ export declare class DirectoryCreationError extends FileSystemError {
40
+ constructor(dirPath: string, options?: DaemonErrorOptions);
41
+ }
42
+ /**
43
+ * Thrown when file write operation fails
44
+ */
45
+ export declare class FileWriteError extends FileSystemError {
46
+ constructor(filePath: string, options?: DaemonErrorOptions);
47
+ }
48
+ /**
49
+ * Thrown when file read operation fails
50
+ */
51
+ export declare class FileReadError extends FileSystemError {
52
+ constructor(filePath: string, options?: DaemonErrorOptions);
53
+ }
54
+ /**
55
+ * Thrown when file copy operation fails
56
+ */
57
+ export declare class FileCopyError extends FileSystemError {
58
+ constructor(sourcePath: string, destPath: string, options?: DaemonErrorOptions);
59
+ }
60
+ /**
61
+ * Thrown when file search operation fails
62
+ */
63
+ export declare class FileSearchError extends FileSystemError {
64
+ constructor(dirPath: string, pattern: string, options?: DaemonErrorOptions);
65
+ }
66
+ //# sourceMappingURL=file.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.error.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/file.error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEvE;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAIxE;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;gBACxC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ3D;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ9E;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,eAAe;gBACvC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ/E;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ1D;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,eAAe;gBACrC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ3D;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,eAAe;gBACpC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ3D;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,eAAe;gBACpC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ/E;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ3E"}