driftdetect-vscode 0.9.24 → 0.9.26

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 (241) hide show
  1. package/package.json +14 -14
  2. package/.turbo/turbo-build.log +0 -4
  3. package/.turbo/turbo-test.log +0 -138
  4. package/LICENSE +0 -121
  5. package/dist/activation/activation-controller.d.ts +0 -61
  6. package/dist/activation/activation-controller.d.ts.map +0 -1
  7. package/dist/activation/activation-controller.js +0 -235
  8. package/dist/activation/activation-controller.js.map +0 -1
  9. package/dist/activation/activation-phases.d.ts +0 -28
  10. package/dist/activation/activation-phases.d.ts.map +0 -1
  11. package/dist/activation/activation-phases.js +0 -80
  12. package/dist/activation/activation-phases.js.map +0 -1
  13. package/dist/activation/index.d.ts +0 -6
  14. package/dist/activation/index.d.ts.map +0 -1
  15. package/dist/activation/index.js +0 -6
  16. package/dist/activation/index.js.map +0 -1
  17. package/dist/client/connection-config.d.ts +0 -50
  18. package/dist/client/connection-config.d.ts.map +0 -1
  19. package/dist/client/connection-config.js +0 -56
  20. package/dist/client/connection-config.js.map +0 -1
  21. package/dist/client/connection-manager.d.ts +0 -70
  22. package/dist/client/connection-manager.d.ts.map +0 -1
  23. package/dist/client/connection-manager.js +0 -214
  24. package/dist/client/connection-manager.js.map +0 -1
  25. package/dist/client/index.d.ts +0 -8
  26. package/dist/client/index.d.ts.map +0 -1
  27. package/dist/client/index.js +0 -8
  28. package/dist/client/index.js.map +0 -1
  29. package/dist/client/language-client-factory.d.ts +0 -29
  30. package/dist/client/language-client-factory.d.ts.map +0 -1
  31. package/dist/client/language-client-factory.js +0 -76
  32. package/dist/client/language-client-factory.js.map +0 -1
  33. package/dist/client/request-middleware.d.ts +0 -38
  34. package/dist/client/request-middleware.d.ts.map +0 -1
  35. package/dist/client/request-middleware.js +0 -85
  36. package/dist/client/request-middleware.js.map +0 -1
  37. package/dist/commands/command-definitions.d.ts +0 -53
  38. package/dist/commands/command-definitions.d.ts.map +0 -1
  39. package/dist/commands/command-definitions.js +0 -212
  40. package/dist/commands/command-definitions.js.map +0 -1
  41. package/dist/commands/command-router.d.ts +0 -80
  42. package/dist/commands/command-router.d.ts.map +0 -1
  43. package/dist/commands/command-router.js +0 -127
  44. package/dist/commands/command-router.js.map +0 -1
  45. package/dist/commands/handlers/connection-handlers.d.ts +0 -14
  46. package/dist/commands/handlers/connection-handlers.d.ts.map +0 -1
  47. package/dist/commands/handlers/connection-handlers.js +0 -57
  48. package/dist/commands/handlers/connection-handlers.js.map +0 -1
  49. package/dist/commands/handlers/constants-handlers.d.ts +0 -11
  50. package/dist/commands/handlers/constants-handlers.d.ts.map +0 -1
  51. package/dist/commands/handlers/constants-handlers.js +0 -84
  52. package/dist/commands/handlers/constants-handlers.js.map +0 -1
  53. package/dist/commands/handlers/index.d.ts +0 -10
  54. package/dist/commands/handlers/index.d.ts.map +0 -1
  55. package/dist/commands/handlers/index.js +0 -10
  56. package/dist/commands/handlers/index.js.map +0 -1
  57. package/dist/commands/handlers/pattern-handlers.d.ts +0 -13
  58. package/dist/commands/handlers/pattern-handlers.d.ts.map +0 -1
  59. package/dist/commands/handlers/pattern-handlers.js +0 -127
  60. package/dist/commands/handlers/pattern-handlers.js.map +0 -1
  61. package/dist/commands/handlers/scan-handlers.d.ts +0 -15
  62. package/dist/commands/handlers/scan-handlers.d.ts.map +0 -1
  63. package/dist/commands/handlers/scan-handlers.js +0 -74
  64. package/dist/commands/handlers/scan-handlers.js.map +0 -1
  65. package/dist/commands/handlers/ui-handlers.d.ts +0 -12
  66. package/dist/commands/handlers/ui-handlers.d.ts.map +0 -1
  67. package/dist/commands/handlers/ui-handlers.js +0 -74
  68. package/dist/commands/handlers/ui-handlers.js.map +0 -1
  69. package/dist/commands/handlers/violation-handlers.d.ts +0 -13
  70. package/dist/commands/handlers/violation-handlers.d.ts.map +0 -1
  71. package/dist/commands/handlers/violation-handlers.js +0 -76
  72. package/dist/commands/handlers/violation-handlers.js.map +0 -1
  73. package/dist/commands/index.d.ts +0 -7
  74. package/dist/commands/index.d.ts.map +0 -1
  75. package/dist/commands/index.js +0 -7
  76. package/dist/commands/index.js.map +0 -1
  77. package/dist/commands/middleware/connection-check-middleware.d.ts +0 -12
  78. package/dist/commands/middleware/connection-check-middleware.d.ts.map +0 -1
  79. package/dist/commands/middleware/connection-check-middleware.js +0 -34
  80. package/dist/commands/middleware/connection-check-middleware.js.map +0 -1
  81. package/dist/commands/middleware/index.d.ts +0 -7
  82. package/dist/commands/middleware/index.d.ts.map +0 -1
  83. package/dist/commands/middleware/index.js +0 -7
  84. package/dist/commands/middleware/index.js.map +0 -1
  85. package/dist/commands/middleware/logging-middleware.d.ts +0 -12
  86. package/dist/commands/middleware/logging-middleware.d.ts.map +0 -1
  87. package/dist/commands/middleware/logging-middleware.js +0 -24
  88. package/dist/commands/middleware/logging-middleware.js.map +0 -1
  89. package/dist/commands/middleware/telemetry-middleware.d.ts +0 -22
  90. package/dist/commands/middleware/telemetry-middleware.d.ts.map +0 -1
  91. package/dist/commands/middleware/telemetry-middleware.js +0 -30
  92. package/dist/commands/middleware/telemetry-middleware.js.map +0 -1
  93. package/dist/config/config-manager.d.ts +0 -53
  94. package/dist/config/config-manager.d.ts.map +0 -1
  95. package/dist/config/config-manager.js +0 -178
  96. package/dist/config/config-manager.js.map +0 -1
  97. package/dist/config/defaults.d.ts +0 -11
  98. package/dist/config/defaults.d.ts.map +0 -1
  99. package/dist/config/defaults.js +0 -43
  100. package/dist/config/defaults.js.map +0 -1
  101. package/dist/config/index.d.ts +0 -7
  102. package/dist/config/index.d.ts.map +0 -1
  103. package/dist/config/index.js +0 -7
  104. package/dist/config/index.js.map +0 -1
  105. package/dist/config/validator.d.ts +0 -22
  106. package/dist/config/validator.d.ts.map +0 -1
  107. package/dist/config/validator.js +0 -93
  108. package/dist/config/validator.js.map +0 -1
  109. package/dist/extension.d.ts +0 -32
  110. package/dist/extension.d.ts.map +0 -1
  111. package/dist/extension.js +0 -50
  112. package/dist/extension.js.map +0 -1
  113. package/dist/infrastructure/disposable-manager.d.ts +0 -43
  114. package/dist/infrastructure/disposable-manager.d.ts.map +0 -1
  115. package/dist/infrastructure/disposable-manager.js +0 -75
  116. package/dist/infrastructure/disposable-manager.js.map +0 -1
  117. package/dist/infrastructure/event-bus.d.ts +0 -85
  118. package/dist/infrastructure/event-bus.d.ts.map +0 -1
  119. package/dist/infrastructure/event-bus.js +0 -74
  120. package/dist/infrastructure/event-bus.js.map +0 -1
  121. package/dist/infrastructure/index.d.ts +0 -10
  122. package/dist/infrastructure/index.d.ts.map +0 -1
  123. package/dist/infrastructure/index.js +0 -10
  124. package/dist/infrastructure/index.js.map +0 -1
  125. package/dist/infrastructure/logger.d.ts +0 -37
  126. package/dist/infrastructure/logger.d.ts.map +0 -1
  127. package/dist/infrastructure/logger.js +0 -86
  128. package/dist/infrastructure/logger.js.map +0 -1
  129. package/dist/infrastructure/service-container.d.ts +0 -68
  130. package/dist/infrastructure/service-container.d.ts.map +0 -1
  131. package/dist/infrastructure/service-container.js +0 -94
  132. package/dist/infrastructure/service-container.js.map +0 -1
  133. package/dist/state/index.d.ts +0 -7
  134. package/dist/state/index.d.ts.map +0 -1
  135. package/dist/state/index.js +0 -7
  136. package/dist/state/index.js.map +0 -1
  137. package/dist/state/initial-state.d.ts +0 -11
  138. package/dist/state/initial-state.d.ts.map +0 -1
  139. package/dist/state/initial-state.js +0 -58
  140. package/dist/state/initial-state.js.map +0 -1
  141. package/dist/state/selectors.d.ts +0 -41
  142. package/dist/state/selectors.d.ts.map +0 -1
  143. package/dist/state/selectors.js +0 -61
  144. package/dist/state/selectors.js.map +0 -1
  145. package/dist/state/state-manager.d.ts +0 -54
  146. package/dist/state/state-manager.d.ts.map +0 -1
  147. package/dist/state/state-manager.js +0 -166
  148. package/dist/state/state-manager.js.map +0 -1
  149. package/dist/types/config-types.d.ts +0 -69
  150. package/dist/types/config-types.d.ts.map +0 -1
  151. package/dist/types/config-types.js +0 -5
  152. package/dist/types/config-types.js.map +0 -1
  153. package/dist/types/extension-types.d.ts +0 -45
  154. package/dist/types/extension-types.d.ts.map +0 -1
  155. package/dist/types/extension-types.js +0 -5
  156. package/dist/types/extension-types.js.map +0 -1
  157. package/dist/types/index.d.ts +0 -12
  158. package/dist/types/index.d.ts.map +0 -1
  159. package/dist/types/index.js +0 -12
  160. package/dist/types/index.js.map +0 -1
  161. package/dist/types/lsp-types.d.ts +0 -70
  162. package/dist/types/lsp-types.d.ts.map +0 -1
  163. package/dist/types/lsp-types.js +0 -5
  164. package/dist/types/lsp-types.js.map +0 -1
  165. package/dist/types/state-types.d.ts +0 -82
  166. package/dist/types/state-types.d.ts.map +0 -1
  167. package/dist/types/state-types.js +0 -5
  168. package/dist/types/state-types.js.map +0 -1
  169. package/dist/types/vscode-types.d.ts +0 -36
  170. package/dist/types/vscode-types.d.ts.map +0 -1
  171. package/dist/types/vscode-types.js +0 -7
  172. package/dist/types/vscode-types.js.map +0 -1
  173. package/dist/ui/decorations/decoration-controller.d.ts +0 -45
  174. package/dist/ui/decorations/decoration-controller.d.ts.map +0 -1
  175. package/dist/ui/decorations/decoration-controller.js +0 -198
  176. package/dist/ui/decorations/decoration-controller.js.map +0 -1
  177. package/dist/ui/decorations/decoration-types.d.ts +0 -28
  178. package/dist/ui/decorations/decoration-types.d.ts.map +0 -1
  179. package/dist/ui/decorations/decoration-types.js +0 -98
  180. package/dist/ui/decorations/decoration-types.js.map +0 -1
  181. package/dist/ui/decorations/index.d.ts +0 -7
  182. package/dist/ui/decorations/index.d.ts.map +0 -1
  183. package/dist/ui/decorations/index.js +0 -6
  184. package/dist/ui/decorations/index.js.map +0 -1
  185. package/dist/ui/index.d.ts +0 -7
  186. package/dist/ui/index.d.ts.map +0 -1
  187. package/dist/ui/index.js +0 -7
  188. package/dist/ui/index.js.map +0 -1
  189. package/dist/ui/notifications/index.d.ts +0 -5
  190. package/dist/ui/notifications/index.d.ts.map +0 -1
  191. package/dist/ui/notifications/index.js +0 -5
  192. package/dist/ui/notifications/index.js.map +0 -1
  193. package/dist/ui/notifications/notification-service.d.ts +0 -66
  194. package/dist/ui/notifications/notification-service.d.ts.map +0 -1
  195. package/dist/ui/notifications/notification-service.js +0 -103
  196. package/dist/ui/notifications/notification-service.js.map +0 -1
  197. package/dist/ui/status-bar/index.d.ts +0 -6
  198. package/dist/ui/status-bar/index.d.ts.map +0 -1
  199. package/dist/ui/status-bar/index.js +0 -6
  200. package/dist/ui/status-bar/index.js.map +0 -1
  201. package/dist/ui/status-bar/status-bar-controller.d.ts +0 -37
  202. package/dist/ui/status-bar/status-bar-controller.d.ts.map +0 -1
  203. package/dist/ui/status-bar/status-bar-controller.js +0 -111
  204. package/dist/ui/status-bar/status-bar-controller.js.map +0 -1
  205. package/dist/ui/status-bar/status-bar-modes.d.ts +0 -26
  206. package/dist/ui/status-bar/status-bar-modes.d.ts.map +0 -1
  207. package/dist/ui/status-bar/status-bar-modes.js +0 -97
  208. package/dist/ui/status-bar/status-bar-modes.js.map +0 -1
  209. package/dist/views/base-tree-provider.d.ts +0 -74
  210. package/dist/views/base-tree-provider.d.ts.map +0 -1
  211. package/dist/views/base-tree-provider.js +0 -95
  212. package/dist/views/base-tree-provider.js.map +0 -1
  213. package/dist/views/constants-tree-provider.d.ts +0 -112
  214. package/dist/views/constants-tree-provider.d.ts.map +0 -1
  215. package/dist/views/constants-tree-provider.js +0 -344
  216. package/dist/views/constants-tree-provider.js.map +0 -1
  217. package/dist/views/files-tree-provider.d.ts +0 -37
  218. package/dist/views/files-tree-provider.d.ts.map +0 -1
  219. package/dist/views/files-tree-provider.js +0 -98
  220. package/dist/views/files-tree-provider.js.map +0 -1
  221. package/dist/views/index.d.ts +0 -10
  222. package/dist/views/index.d.ts.map +0 -1
  223. package/dist/views/index.js +0 -10
  224. package/dist/views/index.js.map +0 -1
  225. package/dist/views/patterns-tree-provider.d.ts +0 -39
  226. package/dist/views/patterns-tree-provider.d.ts.map +0 -1
  227. package/dist/views/patterns-tree-provider.js +0 -139
  228. package/dist/views/patterns-tree-provider.js.map +0 -1
  229. package/dist/views/violations-tree-provider.d.ts +0 -46
  230. package/dist/views/violations-tree-provider.d.ts.map +0 -1
  231. package/dist/views/violations-tree-provider.js +0 -158
  232. package/dist/views/violations-tree-provider.js.map +0 -1
  233. package/dist/webview/index.d.ts +0 -7
  234. package/dist/webview/index.d.ts.map +0 -1
  235. package/dist/webview/index.js +0 -7
  236. package/dist/webview/index.js.map +0 -1
  237. package/dist/webview/webview-manager.d.ts +0 -57
  238. package/dist/webview/webview-manager.d.ts.map +0 -1
  239. package/dist/webview/webview-manager.js +0 -167
  240. package/dist/webview/webview-manager.js.map +0 -1
  241. package/tsconfig.tsbuildinfo +0 -1
@@ -1,80 +0,0 @@
1
- /**
2
- * Activation phases configuration
3
- *
4
- * Single responsibility: Define activation phase order and timing.
5
- */
6
- /**
7
- * Activation phases in order
8
- */
9
- export const ActivationPhases = [
10
- // Immediate phase - must complete before activate() returns
11
- {
12
- name: 'infrastructure',
13
- phase: 'immediate',
14
- timeout: 50,
15
- critical: true,
16
- },
17
- {
18
- name: 'state',
19
- phase: 'immediate',
20
- timeout: 50,
21
- critical: true,
22
- },
23
- {
24
- name: 'config',
25
- phase: 'immediate',
26
- timeout: 50,
27
- critical: true,
28
- },
29
- {
30
- name: 'statusBar',
31
- phase: 'immediate',
32
- timeout: 50,
33
- critical: false,
34
- },
35
- // Deferred phase - runs after activate() returns
36
- {
37
- name: 'connection',
38
- phase: 'deferred',
39
- timeout: 10000,
40
- critical: true,
41
- },
42
- {
43
- name: 'commands',
44
- phase: 'deferred',
45
- timeout: 100,
46
- critical: true,
47
- },
48
- {
49
- name: 'decorations',
50
- phase: 'deferred',
51
- timeout: 100,
52
- critical: false,
53
- },
54
- // Lazy phase - activated on demand
55
- {
56
- name: 'treeViews',
57
- phase: 'lazy',
58
- timeout: 500,
59
- critical: false,
60
- },
61
- {
62
- name: 'webviews',
63
- phase: 'lazy',
64
- timeout: 500,
65
- critical: false,
66
- },
67
- ];
68
- /**
69
- * Get phases by type
70
- */
71
- export function getPhasesByType(type) {
72
- return ActivationPhases.filter(p => p.phase === type);
73
- }
74
- /**
75
- * Get critical phases
76
- */
77
- export function getCriticalPhases() {
78
- return ActivationPhases.filter(p => p.critical);
79
- }
80
- //# sourceMappingURL=activation-phases.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"activation-phases.js","sourceRoot":"","sources":["../../src/activation/activation-phases.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAkB;IAC7C,4DAA4D;IAC5D;QACE,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,KAAK;KAChB;IAED,iDAAiD;IACjD;QACE,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,KAAK;KAChB;IAED,mCAAmC;IACnC;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,KAAK;KAChB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAqB;IACnD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAClD,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Activation module exports
3
- */
4
- export { ActivationController, createActivationController } from './activation-controller.js';
5
- export { ActivationPhases } from './activation-phases.js';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/activation/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Activation module exports
3
- */
4
- export { ActivationController, createActivationController } from './activation-controller.js';
5
- export { ActivationPhases } from './activation-phases.js';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/activation/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,50 +0,0 @@
1
- /**
2
- * Connection configuration constants
3
- *
4
- * Single responsibility: Define connection-related constants.
5
- */
6
- /**
7
- * Connection configuration
8
- */
9
- export declare const CONNECTION_CONFIG: {
10
- /**
11
- * Maximum restart attempts before giving up
12
- */
13
- readonly maxRestarts: 5;
14
- /**
15
- * Base delay between restarts (ms)
16
- */
17
- readonly restartDelay: 1000;
18
- /**
19
- * Exponential backoff multiplier
20
- */
21
- readonly backoffMultiplier: 2;
22
- /**
23
- * Maximum backoff delay (ms)
24
- */
25
- readonly maxBackoffDelay: 30000;
26
- /**
27
- * Health check interval (ms)
28
- */
29
- readonly healthCheckInterval: 30000;
30
- /**
31
- * Server initialization timeout (ms)
32
- */
33
- readonly initializeTimeout: 10000;
34
- /**
35
- * Individual request timeout (ms)
36
- */
37
- readonly requestTimeout: 5000;
38
- /**
39
- * Graceful shutdown timeout (ms)
40
- */
41
- readonly shutdownTimeout: 2000;
42
- };
43
- /**
44
- * Document selectors for the language client
45
- */
46
- export declare const DOCUMENT_SELECTORS: {
47
- scheme: string;
48
- language: string;
49
- }[];
50
- //# sourceMappingURL=connection-config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-config.d.ts","sourceRoot":"","sources":["../../src/client/connection-config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEK,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;GAS9B,CAAC"}
@@ -1,56 +0,0 @@
1
- /**
2
- * Connection configuration constants
3
- *
4
- * Single responsibility: Define connection-related constants.
5
- */
6
- /**
7
- * Connection configuration
8
- */
9
- export const CONNECTION_CONFIG = {
10
- /**
11
- * Maximum restart attempts before giving up
12
- */
13
- maxRestarts: 5,
14
- /**
15
- * Base delay between restarts (ms)
16
- */
17
- restartDelay: 1000,
18
- /**
19
- * Exponential backoff multiplier
20
- */
21
- backoffMultiplier: 2,
22
- /**
23
- * Maximum backoff delay (ms)
24
- */
25
- maxBackoffDelay: 30000,
26
- /**
27
- * Health check interval (ms)
28
- */
29
- healthCheckInterval: 30000,
30
- /**
31
- * Server initialization timeout (ms)
32
- */
33
- initializeTimeout: 10000,
34
- /**
35
- * Individual request timeout (ms)
36
- */
37
- requestTimeout: 5000,
38
- /**
39
- * Graceful shutdown timeout (ms)
40
- */
41
- shutdownTimeout: 2000,
42
- };
43
- /**
44
- * Document selectors for the language client
45
- */
46
- export const DOCUMENT_SELECTORS = [
47
- { scheme: 'file', language: 'typescript' },
48
- { scheme: 'file', language: 'typescriptreact' },
49
- { scheme: 'file', language: 'javascript' },
50
- { scheme: 'file', language: 'javascriptreact' },
51
- { scheme: 'file', language: 'python' },
52
- { scheme: 'file', language: 'csharp' },
53
- { scheme: 'file', language: 'java' },
54
- { scheme: 'file', language: 'php' },
55
- ];
56
- //# sourceMappingURL=connection-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-config.js","sourceRoot":"","sources":["../../src/client/connection-config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B;;OAEG;IACH,WAAW,EAAE,CAAC;IAEd;;OAEG;IACH,YAAY,EAAE,IAAI;IAElB;;OAEG;IACH,iBAAiB,EAAE,CAAC;IAEpB;;OAEG;IACH,eAAe,EAAE,KAAK;IAEtB;;OAEG;IACH,mBAAmB,EAAE,KAAK;IAE1B;;OAEG;IACH,iBAAiB,EAAE,KAAK;IAExB;;OAEG;IACH,cAAc,EAAE,IAAI;IAEpB;;OAEG;IACH,eAAe,EAAE,IAAI;CACb,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE;IAC1C,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE;IAC/C,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE;IAC1C,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE;IAC/C,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACtC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACtC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;IACpC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;CACpC,CAAC"}
@@ -1,70 +0,0 @@
1
- /**
2
- * ConnectionManager - LSP connection lifecycle management
3
- *
4
- * Single responsibility: Manage LSP client connection with auto-recovery.
5
- */
6
- import * as vscode from 'vscode';
7
- import type { EventBus } from '../infrastructure/event-bus.js';
8
- import type { Logger } from '../infrastructure/index.js';
9
- import type { ConnectionState, ServerConfig } from '../types/index.js';
10
- import type { LanguageClient } from 'vscode-languageclient/node';
11
- /**
12
- * Connection manager for LSP client
13
- */
14
- export declare class ConnectionManager implements vscode.Disposable {
15
- private readonly context;
16
- private readonly logger;
17
- private readonly eventBus;
18
- private config;
19
- private client;
20
- private state;
21
- private restartCount;
22
- private healthCheckTimer;
23
- private readonly disposables;
24
- private readonly stateEmitter;
25
- readonly onStateChange: vscode.Event<ConnectionState>;
26
- constructor(context: vscode.ExtensionContext, logger: Logger, eventBus: EventBus, config: ServerConfig);
27
- /**
28
- * Get current connection state
29
- */
30
- getState(): ConnectionState;
31
- /**
32
- * Get the language client (if connected)
33
- */
34
- getClient(): LanguageClient | null;
35
- /**
36
- * Connect to the LSP server
37
- */
38
- connect(): Promise<void>;
39
- /**
40
- * Disconnect from the LSP server
41
- */
42
- disconnect(): Promise<void>;
43
- /**
44
- * Reconnect to the LSP server
45
- */
46
- reconnect(): Promise<void>;
47
- /**
48
- * Update server configuration
49
- */
50
- updateConfig(config: ServerConfig): void;
51
- /**
52
- * Dispose resources
53
- */
54
- dispose(): void;
55
- private setState;
56
- private setupClientHandlers;
57
- private waitForReady;
58
- private handleConnectionError;
59
- private calculateBackoff;
60
- private startHealthCheck;
61
- private stopHealthCheck;
62
- private isHealthy;
63
- private timeout;
64
- private delay;
65
- }
66
- /**
67
- * Factory function for creating connection manager
68
- */
69
- export declare function createConnectionManager(context: vscode.ExtensionContext, logger: Logger, eventBus: EventBus, config: ServerConfig): ConnectionManager;
70
- //# sourceMappingURL=connection-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/client/connection-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAKjC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAoB,MAAM,4BAA4B,CAAC;AAGnF;;GAEG;AACH,qBAAa,iBAAkB,YAAW,MAAM,CAAC,UAAU;IAWvD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,MAAM;IAbhB,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2B;IAEvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA8C;IAC3E,QAAQ,CAAC,aAAa,gCAA2B;gBAG9B,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAC3B,MAAM,EAAE,YAAY;IAG9B;;OAEG;IACH,QAAQ,IAAI,eAAe;IAI3B;;OAEG;IACH,SAAS,IAAI,cAAc,GAAG,IAAI;IAIlC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+B9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBjC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAIxC;;OAEG;IACH,OAAO,IAAI,IAAI;IAcf,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,mBAAmB;YASb,YAAY;YAkBZ,qBAAqB;IA4BnC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,eAAe;YAOT,SAAS;IAgBvB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,KAAK;CAGd;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,GACnB,iBAAiB,CAEnB"}
@@ -1,214 +0,0 @@
1
- /**
2
- * ConnectionManager - LSP connection lifecycle management
3
- *
4
- * Single responsibility: Manage LSP client connection with auto-recovery.
5
- */
6
- import * as vscode from 'vscode';
7
- import { CONNECTION_CONFIG } from './connection-config.js';
8
- import { createLanguageClient } from './language-client-factory.js';
9
- /**
10
- * Connection manager for LSP client
11
- */
12
- export class ConnectionManager {
13
- context;
14
- logger;
15
- eventBus;
16
- config;
17
- client = null;
18
- state = 'disconnected';
19
- restartCount = 0;
20
- healthCheckTimer = null;
21
- disposables = [];
22
- stateEmitter = new vscode.EventEmitter();
23
- onStateChange = this.stateEmitter.event;
24
- constructor(context, logger, eventBus, config) {
25
- this.context = context;
26
- this.logger = logger;
27
- this.eventBus = eventBus;
28
- this.config = config;
29
- }
30
- /**
31
- * Get current connection state
32
- */
33
- getState() {
34
- return this.state;
35
- }
36
- /**
37
- * Get the language client (if connected)
38
- */
39
- getClient() {
40
- return this.state === 'connected' ? this.client : null;
41
- }
42
- /**
43
- * Connect to the LSP server
44
- */
45
- async connect() {
46
- if (this.state === 'connected' || this.state === 'connecting') {
47
- this.logger.debug('Already connected or connecting');
48
- return;
49
- }
50
- this.setState('connecting');
51
- try {
52
- this.client = createLanguageClient(this.context, this.logger, this.config);
53
- // Set up client event handlers
54
- this.setupClientHandlers();
55
- // Start the client
56
- await this.client.start();
57
- // Wait for ready state
58
- await this.waitForReady();
59
- this.setState('connected');
60
- this.restartCount = 0;
61
- this.startHealthCheck();
62
- this.logger.info('Connected to Drift LSP server');
63
- }
64
- catch (error) {
65
- await this.handleConnectionError(error);
66
- }
67
- }
68
- /**
69
- * Disconnect from the LSP server
70
- */
71
- async disconnect() {
72
- this.stopHealthCheck();
73
- if (this.client) {
74
- try {
75
- await Promise.race([
76
- this.client.stop(),
77
- this.timeout(CONNECTION_CONFIG.shutdownTimeout),
78
- ]);
79
- }
80
- catch (error) {
81
- this.logger.warn('Error during disconnect:', error);
82
- }
83
- this.client = null;
84
- }
85
- this.setState('disconnected');
86
- this.logger.info('Disconnected from Drift LSP server');
87
- }
88
- /**
89
- * Reconnect to the LSP server
90
- */
91
- async reconnect() {
92
- await this.disconnect();
93
- await this.connect();
94
- }
95
- /**
96
- * Update server configuration
97
- */
98
- updateConfig(config) {
99
- this.config = config;
100
- }
101
- /**
102
- * Dispose resources
103
- */
104
- dispose() {
105
- this.stopHealthCheck();
106
- this.stateEmitter.dispose();
107
- if (this.client) {
108
- this.client.stop().catch(() => { });
109
- this.client = null;
110
- }
111
- for (const d of this.disposables) {
112
- d.dispose();
113
- }
114
- }
115
- setState(state) {
116
- const previousState = this.state;
117
- this.state = state;
118
- this.stateEmitter.fire(state);
119
- this.eventBus.emit('connection:changed', { status: state, previousStatus: previousState });
120
- }
121
- setupClientHandlers() {
122
- if (!this.client) {
123
- return;
124
- }
125
- // Handle client errors
126
- this.client.onDidChangeState((event) => {
127
- this.logger.debug(`Client state changed: ${event.oldState} -> ${event.newState}`);
128
- });
129
- }
130
- async waitForReady() {
131
- if (!this.client) {
132
- throw new Error('Client not initialized');
133
- }
134
- const timeout = CONNECTION_CONFIG.initializeTimeout;
135
- const startTime = Date.now();
136
- while (Date.now() - startTime < timeout) {
137
- if (this.client.isRunning()) {
138
- return;
139
- }
140
- await this.delay(100);
141
- }
142
- throw new Error(`Server initialization timed out after ${timeout}ms`);
143
- }
144
- async handleConnectionError(error) {
145
- const errorMessage = error instanceof Error ? error.message : String(error);
146
- this.logger.error('Connection error:', errorMessage);
147
- this.setState('error');
148
- this.eventBus.emit('connection:error', {
149
- error: error instanceof Error ? error : new Error(errorMessage),
150
- recoverable: this.restartCount < CONNECTION_CONFIG.maxRestarts,
151
- });
152
- if (this.restartCount >= CONNECTION_CONFIG.maxRestarts) {
153
- this.setState('failed');
154
- this.logger.error(`Max restart attempts (${CONNECTION_CONFIG.maxRestarts}) reached`);
155
- return;
156
- }
157
- const delay = this.calculateBackoff();
158
- this.restartCount++;
159
- this.logger.info(`Reconnecting in ${delay}ms (attempt ${this.restartCount}/${CONNECTION_CONFIG.maxRestarts})`);
160
- this.setState('reconnecting');
161
- await this.delay(delay);
162
- await this.connect();
163
- }
164
- calculateBackoff() {
165
- const delay = CONNECTION_CONFIG.restartDelay *
166
- Math.pow(CONNECTION_CONFIG.backoffMultiplier, this.restartCount);
167
- return Math.min(delay, CONNECTION_CONFIG.maxBackoffDelay);
168
- }
169
- startHealthCheck() {
170
- this.stopHealthCheck();
171
- this.healthCheckTimer = setInterval(async () => {
172
- if (!await this.isHealthy()) {
173
- this.logger.warn('Health check failed, reconnecting...');
174
- await this.reconnect();
175
- }
176
- }, CONNECTION_CONFIG.healthCheckInterval);
177
- }
178
- stopHealthCheck() {
179
- if (this.healthCheckTimer) {
180
- clearInterval(this.healthCheckTimer);
181
- this.healthCheckTimer = null;
182
- }
183
- }
184
- async isHealthy() {
185
- if (!this.client?.isRunning()) {
186
- return false;
187
- }
188
- try {
189
- await Promise.race([
190
- this.client.sendRequest('drift/health'),
191
- this.timeout(5000),
192
- ]);
193
- return true;
194
- }
195
- catch {
196
- return false;
197
- }
198
- }
199
- timeout(ms) {
200
- return new Promise((_, reject) => {
201
- setTimeout(() => { reject(new Error('Timeout')); }, ms);
202
- });
203
- }
204
- delay(ms) {
205
- return new Promise((resolve) => setTimeout(resolve, ms));
206
- }
207
- }
208
- /**
209
- * Factory function for creating connection manager
210
- */
211
- export function createConnectionManager(context, logger, eventBus, config) {
212
- return new ConnectionManager(context, logger, eventBus, config);
213
- }
214
- //# sourceMappingURL=connection-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/client/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * LSP Client module exports
3
- */
4
- export { ConnectionManager, createConnectionManager } from './connection-manager.js';
5
- export { LanguageClientFactory, createLanguageClient } from './language-client-factory.js';
6
- export { RequestMiddleware, createRequestMiddleware } from './request-middleware.js';
7
- export { CONNECTION_CONFIG } from './connection-config.js';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * LSP Client module exports
3
- */
4
- export { ConnectionManager, createConnectionManager } from './connection-manager.js';
5
- export { LanguageClientFactory, createLanguageClient } from './language-client-factory.js';
6
- export { RequestMiddleware, createRequestMiddleware } from './request-middleware.js';
7
- export { CONNECTION_CONFIG } from './connection-config.js';
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,29 +0,0 @@
1
- /**
2
- * LanguageClientFactory - Creates configured LSP clients
3
- *
4
- * Single responsibility: Create and configure LanguageClient instances.
5
- */
6
- import * as vscode from 'vscode';
7
- import { LanguageClient } from 'vscode-languageclient/node';
8
- import type { Logger } from '../infrastructure/index.js';
9
- import type { ServerConfig } from '../types/index.js';
10
- /**
11
- * Factory for creating language clients
12
- */
13
- export declare class LanguageClientFactory {
14
- private readonly context;
15
- private readonly logger;
16
- constructor(context: vscode.ExtensionContext, logger: Logger);
17
- /**
18
- * Create a new language client
19
- */
20
- create(config: ServerConfig): LanguageClient;
21
- private createServerOptions;
22
- private createClientOptions;
23
- private getBundledServerPath;
24
- }
25
- /**
26
- * Factory function for creating language client factory
27
- */
28
- export declare function createLanguageClient(context: vscode.ExtensionContext, logger: Logger, config: ServerConfig): LanguageClient;
29
- //# sourceMappingURL=language-client-factory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"language-client-factory.d.ts","sourceRoot":"","sources":["../../src/client/language-client-factory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EACL,cAAc,EAIf,MAAM,4BAA4B,CAAC;AAIpC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,qBAAa,qBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,MAAM,EAAE,MAAM;IAGjC;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc;IAc5C,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,oBAAoB;CAa7B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,GACnB,cAAc,CAGhB"}
@@ -1,76 +0,0 @@
1
- /**
2
- * LanguageClientFactory - Creates configured LSP clients
3
- *
4
- * Single responsibility: Create and configure LanguageClient instances.
5
- */
6
- import * as path from 'node:path';
7
- import * as vscode from 'vscode';
8
- import { LanguageClient, TransportKind, } from 'vscode-languageclient/node';
9
- import { DOCUMENT_SELECTORS } from './connection-config.js';
10
- /**
11
- * Factory for creating language clients
12
- */
13
- export class LanguageClientFactory {
14
- context;
15
- logger;
16
- constructor(context, logger) {
17
- this.context = context;
18
- this.logger = logger;
19
- }
20
- /**
21
- * Create a new language client
22
- */
23
- create(config) {
24
- const serverOptions = this.createServerOptions(config);
25
- const clientOptions = this.createClientOptions(config);
26
- const client = new LanguageClient('drift', 'Drift Language Server', serverOptions, clientOptions);
27
- return client;
28
- }
29
- createServerOptions(config) {
30
- // Use custom path if provided, otherwise use bundled server
31
- const serverModule = config.path || this.getBundledServerPath();
32
- this.logger.debug(`Server module: ${serverModule}`);
33
- return {
34
- run: {
35
- module: serverModule,
36
- transport: TransportKind.ipc,
37
- args: config.args,
38
- },
39
- debug: {
40
- module: serverModule,
41
- transport: TransportKind.ipc,
42
- args: [...config.args, '--debug'],
43
- options: {
44
- execArgv: ['--nolazy', '--inspect=6009'],
45
- },
46
- },
47
- };
48
- }
49
- createClientOptions(config) {
50
- return {
51
- documentSelector: DOCUMENT_SELECTORS,
52
- synchronize: {
53
- // Watch .drift directory for config changes
54
- fileEvents: vscode.workspace.createFileSystemWatcher('**/.drift/**'),
55
- },
56
- outputChannel: vscode.window.createOutputChannel('Drift LSP'),
57
- traceOutputChannel: vscode.window.createOutputChannel('Drift LSP Trace'),
58
- initializationOptions: {
59
- trace: config.trace,
60
- },
61
- };
62
- }
63
- getBundledServerPath() {
64
- // Look for the LSP server in the extension's dependencies
65
- const serverPath = path.join(this.context.extensionPath, 'node_modules', 'driftdetect-lsp', 'dist', 'bin', 'server.js');
66
- return serverPath;
67
- }
68
- }
69
- /**
70
- * Factory function for creating language client factory
71
- */
72
- export function createLanguageClient(context, logger, config) {
73
- const factory = new LanguageClientFactory(context, logger);
74
- return factory.create(config);
75
- }
76
- //# sourceMappingURL=language-client-factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"language-client-factory.js","sourceRoot":"","sources":["../../src/client/language-client-factory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EACL,cAAc,EAGd,aAAa,GACd,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAK5D;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAEb;IACA;IAFnB,YACmB,OAAgC,EAChC,MAAc;QADd,YAAO,GAAP,OAAO,CAAyB;QAChC,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEJ;;OAEG;IACH,MAAM,CAAC,MAAoB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAEvD,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,OAAO,EACP,uBAAuB,EACvB,aAAa,EACb,aAAa,CACd,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,mBAAmB,CAAC,MAAoB;QAC9C,4DAA4D;QAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAEhE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,YAAY,EAAE,CAAC,CAAC;QAEpD,OAAO;YACL,GAAG,EAAE;gBACH,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,aAAa,CAAC,GAAG;gBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,aAAa,CAAC,GAAG;gBAC5B,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC;gBACjC,OAAO,EAAE;oBACP,QAAQ,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC;iBACzC;aACF;SACF,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,MAAoB;QAC9C,OAAO;YACL,gBAAgB,EAAE,kBAAkB;YACpC,WAAW,EAAE;gBACX,4CAA4C;gBAC5C,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,cAAc,CAAC;aACrE;YACD,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC;YAC7D,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;YACxE,qBAAqB,EAAE;gBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB;SACF,CAAC;IACJ,CAAC;IAEO,oBAAoB;QAC1B,0DAA0D;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAC1B,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,cAAc,EACd,iBAAiB,EACjB,MAAM,EACN,KAAK,EACL,WAAW,CACZ,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAgC,EAChC,MAAc,EACd,MAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3D,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC"}