@appkit/llamacpp-cli 2.0.0 → 2.1.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 (229) hide show
  1. package/README.md +271 -277
  2. package/dist/cli.js +133 -23
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/admin/config.d.ts +1 -1
  5. package/dist/commands/admin/config.js +5 -5
  6. package/dist/commands/admin/config.js.map +1 -1
  7. package/dist/commands/admin/log-config.d.ts +11 -0
  8. package/dist/commands/admin/log-config.d.ts.map +1 -0
  9. package/dist/commands/admin/log-config.js +159 -0
  10. package/dist/commands/admin/log-config.js.map +1 -0
  11. package/dist/commands/admin/logs.d.ts +2 -3
  12. package/dist/commands/admin/logs.d.ts.map +1 -1
  13. package/dist/commands/admin/logs.js +6 -48
  14. package/dist/commands/admin/logs.js.map +1 -1
  15. package/dist/commands/admin/status.d.ts.map +1 -1
  16. package/dist/commands/admin/status.js +1 -0
  17. package/dist/commands/admin/status.js.map +1 -1
  18. package/dist/commands/config.d.ts +1 -0
  19. package/dist/commands/config.d.ts.map +1 -1
  20. package/dist/commands/config.js +63 -196
  21. package/dist/commands/config.js.map +1 -1
  22. package/dist/commands/create.d.ts +3 -2
  23. package/dist/commands/create.d.ts.map +1 -1
  24. package/dist/commands/create.js +24 -97
  25. package/dist/commands/create.js.map +1 -1
  26. package/dist/commands/delete.d.ts.map +1 -1
  27. package/dist/commands/delete.js +7 -24
  28. package/dist/commands/delete.js.map +1 -1
  29. package/dist/commands/internal/server-wrapper.d.ts +15 -0
  30. package/dist/commands/internal/server-wrapper.d.ts.map +1 -0
  31. package/dist/commands/internal/server-wrapper.js +126 -0
  32. package/dist/commands/internal/server-wrapper.js.map +1 -0
  33. package/dist/commands/logs-all.d.ts +0 -2
  34. package/dist/commands/logs-all.d.ts.map +1 -1
  35. package/dist/commands/logs-all.js +1 -61
  36. package/dist/commands/logs-all.js.map +1 -1
  37. package/dist/commands/logs.d.ts +2 -5
  38. package/dist/commands/logs.d.ts.map +1 -1
  39. package/dist/commands/logs.js +104 -120
  40. package/dist/commands/logs.js.map +1 -1
  41. package/dist/commands/migrate-labels.d.ts +12 -0
  42. package/dist/commands/migrate-labels.d.ts.map +1 -0
  43. package/dist/commands/migrate-labels.js +160 -0
  44. package/dist/commands/migrate-labels.js.map +1 -0
  45. package/dist/commands/ps.d.ts.map +1 -1
  46. package/dist/commands/ps.js +2 -1
  47. package/dist/commands/ps.js.map +1 -1
  48. package/dist/commands/rm.d.ts.map +1 -1
  49. package/dist/commands/rm.js +22 -48
  50. package/dist/commands/rm.js.map +1 -1
  51. package/dist/commands/router/config.d.ts +1 -1
  52. package/dist/commands/router/config.js +6 -6
  53. package/dist/commands/router/config.js.map +1 -1
  54. package/dist/commands/router/logs.d.ts +2 -4
  55. package/dist/commands/router/logs.d.ts.map +1 -1
  56. package/dist/commands/router/logs.js +34 -189
  57. package/dist/commands/router/logs.js.map +1 -1
  58. package/dist/commands/router/status.d.ts.map +1 -1
  59. package/dist/commands/router/status.js +1 -0
  60. package/dist/commands/router/status.js.map +1 -1
  61. package/dist/commands/server-show.d.ts.map +1 -1
  62. package/dist/commands/server-show.js +3 -0
  63. package/dist/commands/server-show.js.map +1 -1
  64. package/dist/commands/start.d.ts.map +1 -1
  65. package/dist/commands/start.js +21 -72
  66. package/dist/commands/start.js.map +1 -1
  67. package/dist/commands/stop.d.ts.map +1 -1
  68. package/dist/commands/stop.js +10 -26
  69. package/dist/commands/stop.js.map +1 -1
  70. package/dist/launchers/llamacpp-admin +8 -0
  71. package/dist/launchers/llamacpp-router +8 -0
  72. package/dist/launchers/llamacpp-server +8 -0
  73. package/dist/lib/admin-manager.d.ts +4 -0
  74. package/dist/lib/admin-manager.d.ts.map +1 -1
  75. package/dist/lib/admin-manager.js +42 -18
  76. package/dist/lib/admin-manager.js.map +1 -1
  77. package/dist/lib/admin-server.d.ts +48 -1
  78. package/dist/lib/admin-server.d.ts.map +1 -1
  79. package/dist/lib/admin-server.js +632 -238
  80. package/dist/lib/admin-server.js.map +1 -1
  81. package/dist/lib/config-generator.d.ts +1 -0
  82. package/dist/lib/config-generator.d.ts.map +1 -1
  83. package/dist/lib/config-generator.js +12 -5
  84. package/dist/lib/config-generator.js.map +1 -1
  85. package/dist/lib/keyboard-manager.d.ts +162 -0
  86. package/dist/lib/keyboard-manager.d.ts.map +1 -0
  87. package/dist/lib/keyboard-manager.js +247 -0
  88. package/dist/lib/keyboard-manager.js.map +1 -0
  89. package/dist/lib/label-migration.d.ts +65 -0
  90. package/dist/lib/label-migration.d.ts.map +1 -0
  91. package/dist/lib/label-migration.js +458 -0
  92. package/dist/lib/label-migration.js.map +1 -0
  93. package/dist/lib/launchctl-manager.d.ts +9 -0
  94. package/dist/lib/launchctl-manager.d.ts.map +1 -1
  95. package/dist/lib/launchctl-manager.js +65 -19
  96. package/dist/lib/launchctl-manager.js.map +1 -1
  97. package/dist/lib/log-management-service.d.ts +51 -0
  98. package/dist/lib/log-management-service.d.ts.map +1 -0
  99. package/dist/lib/log-management-service.js +124 -0
  100. package/dist/lib/log-management-service.js.map +1 -0
  101. package/dist/lib/log-workers.d.ts +70 -0
  102. package/dist/lib/log-workers.d.ts.map +1 -0
  103. package/dist/lib/log-workers.js +217 -0
  104. package/dist/lib/log-workers.js.map +1 -0
  105. package/dist/lib/model-downloader.d.ts +9 -1
  106. package/dist/lib/model-downloader.d.ts.map +1 -1
  107. package/dist/lib/model-downloader.js +98 -1
  108. package/dist/lib/model-downloader.js.map +1 -1
  109. package/dist/lib/model-management-service.d.ts +60 -0
  110. package/dist/lib/model-management-service.d.ts.map +1 -0
  111. package/dist/lib/model-management-service.js +246 -0
  112. package/dist/lib/model-management-service.js.map +1 -0
  113. package/dist/lib/model-management-service.test.d.ts +2 -0
  114. package/dist/lib/model-management-service.test.d.ts.map +1 -0
  115. package/dist/lib/model-management-service.test.js.map +1 -0
  116. package/dist/lib/model-scanner.d.ts +15 -3
  117. package/dist/lib/model-scanner.d.ts.map +1 -1
  118. package/dist/lib/model-scanner.js +174 -17
  119. package/dist/lib/model-scanner.js.map +1 -1
  120. package/dist/lib/openapi-spec.d.ts +1335 -0
  121. package/dist/lib/openapi-spec.d.ts.map +1 -0
  122. package/dist/lib/openapi-spec.js +1017 -0
  123. package/dist/lib/openapi-spec.js.map +1 -0
  124. package/dist/lib/router-logger.d.ts +1 -1
  125. package/dist/lib/router-logger.d.ts.map +1 -1
  126. package/dist/lib/router-logger.js +13 -11
  127. package/dist/lib/router-logger.js.map +1 -1
  128. package/dist/lib/router-manager.d.ts +4 -0
  129. package/dist/lib/router-manager.d.ts.map +1 -1
  130. package/dist/lib/router-manager.js +30 -18
  131. package/dist/lib/router-manager.js.map +1 -1
  132. package/dist/lib/router-server.d.ts.map +1 -1
  133. package/dist/lib/router-server.js +22 -12
  134. package/dist/lib/router-server.js.map +1 -1
  135. package/dist/lib/server-config-service.d.ts +51 -0
  136. package/dist/lib/server-config-service.d.ts.map +1 -0
  137. package/dist/lib/server-config-service.js +310 -0
  138. package/dist/lib/server-config-service.js.map +1 -0
  139. package/dist/lib/server-config-service.test.d.ts +2 -0
  140. package/dist/lib/server-config-service.test.d.ts.map +1 -0
  141. package/dist/lib/server-config-service.test.js.map +1 -0
  142. package/dist/lib/server-lifecycle-service.d.ts +172 -0
  143. package/dist/lib/server-lifecycle-service.d.ts.map +1 -0
  144. package/dist/lib/server-lifecycle-service.js +619 -0
  145. package/dist/lib/server-lifecycle-service.js.map +1 -0
  146. package/dist/lib/state-manager.d.ts +18 -1
  147. package/dist/lib/state-manager.d.ts.map +1 -1
  148. package/dist/lib/state-manager.js +51 -2
  149. package/dist/lib/state-manager.js.map +1 -1
  150. package/dist/lib/status-checker.d.ts +11 -4
  151. package/dist/lib/status-checker.d.ts.map +1 -1
  152. package/dist/lib/status-checker.js +34 -1
  153. package/dist/lib/status-checker.js.map +1 -1
  154. package/dist/lib/validation-service.d.ts +43 -0
  155. package/dist/lib/validation-service.d.ts.map +1 -0
  156. package/dist/lib/validation-service.js +112 -0
  157. package/dist/lib/validation-service.js.map +1 -0
  158. package/dist/lib/validation-service.test.d.ts +2 -0
  159. package/dist/lib/validation-service.test.d.ts.map +1 -0
  160. package/dist/lib/validation-service.test.js.map +1 -0
  161. package/dist/scripts/http-log-filter.sh +8 -0
  162. package/dist/tui/ConfigApp.d.ts.map +1 -1
  163. package/dist/tui/ConfigApp.js +222 -184
  164. package/dist/tui/ConfigApp.js.map +1 -1
  165. package/dist/tui/HistoricalMonitorApp.d.ts.map +1 -1
  166. package/dist/tui/HistoricalMonitorApp.js +12 -0
  167. package/dist/tui/HistoricalMonitorApp.js.map +1 -1
  168. package/dist/tui/ModelsApp.d.ts.map +1 -1
  169. package/dist/tui/ModelsApp.js +93 -17
  170. package/dist/tui/ModelsApp.js.map +1 -1
  171. package/dist/tui/MonitorApp.d.ts.map +1 -1
  172. package/dist/tui/MonitorApp.js +1 -3
  173. package/dist/tui/MonitorApp.js.map +1 -1
  174. package/dist/tui/MultiServerMonitorApp.d.ts +3 -3
  175. package/dist/tui/MultiServerMonitorApp.d.ts.map +1 -1
  176. package/dist/tui/MultiServerMonitorApp.js +724 -508
  177. package/dist/tui/MultiServerMonitorApp.js.map +1 -1
  178. package/dist/tui/RootNavigator.d.ts.map +1 -1
  179. package/dist/tui/RootNavigator.js +17 -1
  180. package/dist/tui/RootNavigator.js.map +1 -1
  181. package/dist/tui/RouterApp.d.ts +6 -0
  182. package/dist/tui/RouterApp.d.ts.map +1 -0
  183. package/dist/tui/RouterApp.js +928 -0
  184. package/dist/tui/RouterApp.js.map +1 -0
  185. package/dist/tui/SearchApp.d.ts.map +1 -1
  186. package/dist/tui/SearchApp.js +27 -6
  187. package/dist/tui/SearchApp.js.map +1 -1
  188. package/dist/tui/shared/modal-controller.d.ts +65 -0
  189. package/dist/tui/shared/modal-controller.d.ts.map +1 -0
  190. package/dist/tui/shared/modal-controller.js +625 -0
  191. package/dist/tui/shared/modal-controller.js.map +1 -0
  192. package/dist/tui/shared/overlay-utils.d.ts +7 -0
  193. package/dist/tui/shared/overlay-utils.d.ts.map +1 -0
  194. package/dist/tui/shared/overlay-utils.js +54 -0
  195. package/dist/tui/shared/overlay-utils.js.map +1 -0
  196. package/dist/types/admin-config.d.ts +15 -2
  197. package/dist/types/admin-config.d.ts.map +1 -1
  198. package/dist/types/model-info.d.ts +5 -0
  199. package/dist/types/model-info.d.ts.map +1 -1
  200. package/dist/types/router-config.d.ts +2 -2
  201. package/dist/types/router-config.d.ts.map +1 -1
  202. package/dist/types/server-config.d.ts +8 -0
  203. package/dist/types/server-config.d.ts.map +1 -1
  204. package/dist/types/server-config.js +25 -0
  205. package/dist/types/server-config.js.map +1 -1
  206. package/dist/utils/http-log-filter.d.ts +10 -0
  207. package/dist/utils/http-log-filter.d.ts.map +1 -0
  208. package/dist/utils/http-log-filter.js +84 -0
  209. package/dist/utils/http-log-filter.js.map +1 -0
  210. package/dist/utils/log-parser.d.ts.map +1 -1
  211. package/dist/utils/log-parser.js +7 -4
  212. package/dist/utils/log-parser.js.map +1 -1
  213. package/dist/utils/log-utils.d.ts +59 -4
  214. package/dist/utils/log-utils.d.ts.map +1 -1
  215. package/dist/utils/log-utils.js +150 -11
  216. package/dist/utils/log-utils.js.map +1 -1
  217. package/dist/utils/shard-utils.d.ts +72 -0
  218. package/dist/utils/shard-utils.d.ts.map +1 -0
  219. package/dist/utils/shard-utils.js +168 -0
  220. package/dist/utils/shard-utils.js.map +1 -0
  221. package/package.json +18 -4
  222. package/src/launchers/llamacpp-admin +8 -0
  223. package/src/launchers/llamacpp-router +8 -0
  224. package/src/launchers/llamacpp-server +8 -0
  225. package/web/dist/assets/index-Byhoy86V.css +1 -0
  226. package/web/dist/assets/index-HSrgvray.js +50 -0
  227. package/web/dist/index.html +2 -2
  228. package/web/dist/assets/index-Bin89Lwr.css +0 -1
  229. package/web/dist/assets/index-CVmonw3T.js +0 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RouterApp.js","sourceRoot":"","sources":["../../src/tui/RouterApp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SearchApp.d.ts","sourceRoot":"","sources":["../../src/tui/SearchApp.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAkB9B;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAC9B,MAAM,EAAE,MAAM,IAAI,GACjB,OAAO,CAAC,IAAI,CAAC,CAsef"}
1
+ {"version":3,"file":"SearchApp.d.ts","sourceRoot":"","sources":["../../src/tui/SearchApp.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAqB9B;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAC9B,MAAM,EAAE,MAAM,IAAI,GACjB,OAAO,CAAC,IAAI,CAAC,CA6ff"}
@@ -9,6 +9,9 @@ const model_search_js_1 = require("../lib/model-search.js");
9
9
  const model_downloader_js_1 = require("../lib/model-downloader.js");
10
10
  const state_manager_js_1 = require("../lib/state-manager.js");
11
11
  const format_utils_js_1 = require("../utils/format-utils.js");
12
+ const modal_controller_js_1 = require("./shared/modal-controller.js");
13
+ const overlay_utils_js_1 = require("./shared/overlay-utils.js");
14
+ const keyboard_manager_js_1 = require("../lib/keyboard-manager.js");
12
15
  /**
13
16
  * Search HuggingFace and download models TUI
14
17
  */
@@ -24,6 +27,9 @@ async function createSearchUI(screen, onBack) {
24
27
  isLoadingFiles: false,
25
28
  error: null,
26
29
  };
30
+ // Keyboard manager and modal controller for centralized keyboard handling
31
+ const keyboardManager = new keyboard_manager_js_1.KeyboardManager(screen);
32
+ const modalController = new modal_controller_js_1.ModalController(screen, keyboardManager);
27
33
  // Create content box for results
28
34
  const contentBox = blessed_1.default.box({
29
35
  parent: screen,
@@ -157,6 +163,7 @@ async function createSearchUI(screen, onBack) {
157
163
  }
158
164
  // Show search popup modal
159
165
  function showSearchPopup() {
166
+ const overlay = (0, overlay_utils_js_1.createOverlay)(screen);
160
167
  const searchBox = blessed_1.default.box({
161
168
  parent: screen,
162
169
  top: 'center',
@@ -177,14 +184,11 @@ async function createSearchUI(screen, onBack) {
177
184
  right: 1,
178
185
  height: 1,
179
186
  inputOnFocus: true,
180
- style: {
181
- fg: 'white',
182
- bg: 'black',
183
- },
184
187
  });
185
188
  // Handle submit
186
189
  searchInput.on('submit', async (value) => {
187
190
  screen.remove(searchBox);
191
+ screen.remove(overlay);
188
192
  screen.render();
189
193
  if (value && value.trim()) {
190
194
  await executeSearch(value.trim());
@@ -193,12 +197,15 @@ async function createSearchUI(screen, onBack) {
193
197
  // Handle cancel
194
198
  searchInput.on('cancel', () => {
195
199
  screen.remove(searchBox);
200
+ screen.remove(overlay);
196
201
  render();
197
202
  });
198
203
  searchInput.key(['escape'], () => {
199
204
  screen.remove(searchBox);
205
+ screen.remove(overlay);
200
206
  render();
201
207
  });
208
+ screen.append(overlay);
202
209
  screen.append(searchBox);
203
210
  searchInput.focus();
204
211
  screen.render();
@@ -252,6 +259,12 @@ async function createSearchUI(screen, onBack) {
252
259
  const filename = state.modelFiles[state.selectedFileIndex];
253
260
  // Get models directory
254
261
  const modelsDir = await state_manager_js_1.stateManager.getModelsDirectory();
262
+ // Detect if this is a sharded model (show info in progress modal)
263
+ const { parseShardFilename } = require('../utils/shard-utils');
264
+ const basename = filename.split('/').pop() || filename;
265
+ const shardInfo = parseShardFilename(basename);
266
+ // Create overlay for progress modal
267
+ const progressOverlay = (0, overlay_utils_js_1.createOverlay)(screen);
255
268
  // Create progress modal
256
269
  const progressBox = blessed_1.default.box({
257
270
  parent: screen,
@@ -277,8 +290,12 @@ async function createSearchUI(screen, onBack) {
277
290
  const filled = Math.round((progress.percentage / 100) * barLength);
278
291
  const empty = barLength - filled;
279
292
  const bar = '█'.repeat(Math.max(0, filled)) + '░'.repeat(Math.max(0, empty));
280
- let content = `{bold}Downloading: ${progress.filename}{/bold}\n\n`;
281
- content += `[${bar}] ${percentage}%\n\n`;
293
+ let content = `{bold}Downloading: ${progress.filename}{/bold}\n`;
294
+ // Show sharded model info if applicable
295
+ if (shardInfo.isSharded) {
296
+ content += `{cyan-fg}📦 Sharded model: ${shardInfo.shardCount} files will be downloaded{/cyan-fg}\n`;
297
+ }
298
+ content += `\n[${bar}] ${percentage}%\n\n`;
282
299
  content += `Downloaded: ${(0, format_utils_js_1.formatBytes)(progress.downloaded)} / ${(0, format_utils_js_1.formatBytes)(progress.total)}\n`;
283
300
  content += `Speed: ${progress.speed}\n\n`;
284
301
  content += '{gray-fg}Press ESC or Ctrl+C to cancel{/gray-fg}';
@@ -298,10 +315,12 @@ async function createSearchUI(screen, onBack) {
298
315
  screen.unkey('escape', cancelHandler);
299
316
  screen.unkey('C-c', cancelHandler);
300
317
  screen.remove(progressBox);
318
+ screen.remove(progressOverlay);
301
319
  // Re-register main handlers
302
320
  screen.key(['escape'], keyHandlers.escape);
303
321
  screen.key(['C-c'], keyHandlers.quit);
304
322
  };
323
+ screen.append(progressOverlay);
305
324
  screen.append(progressBox);
306
325
  progressBox.focus();
307
326
  screen.key(['escape', 'C-c'], cancelHandler);
@@ -404,6 +423,8 @@ async function createSearchUI(screen, onBack) {
404
423
  showSearchPopup();
405
424
  },
406
425
  escape: () => {
426
+ if (modalController.isModalOpen())
427
+ return; // Don't handle if modal is open
407
428
  if (state.expandedModelIndex !== null) {
408
429
  // Go back to results list
409
430
  state.expandedModelIndex = null;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchApp.js","sourceRoot":"","sources":["../../src/tui/SearchApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchApp.js","sourceRoot":"","sources":["../../src/tui/SearchApp.ts"],"names":[],"mappings":";;;;;AAwBA,wCAggBC;AAxhBD,sDAA8B;AAC9B,4DAAoE;AACpE,oEAA+E;AAC/E,8DAAuD;AACvD,8DAAuD;AACvD,sEAA+D;AAC/D,gEAA0D;AAC1D,oEAA6D;AAc7D;;GAEG;AACI,KAAK,UAAU,cAAc,CAClC,MAA8B,EAC9B,MAAkB;IAElB,MAAM,KAAK,GAAgB;QACzB,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,CAAC;QAChB,WAAW,EAAE,KAAK;QAClB,kBAAkB,EAAE,IAAI;QACxB,UAAU,EAAE,EAAE;QACd,iBAAiB,EAAE,CAAC;QACpB,cAAc,EAAE,KAAK;QACrB,KAAK,EAAE,IAAI;KACZ,CAAC;IAEF,0EAA0E;IAC1E,MAAM,eAAe,GAAG,IAAI,qCAAe,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,eAAe,GAAG,IAAI,qCAAe,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAErE,iCAAiC;IACjC,MAAM,UAAU,GAAG,iBAAO,CAAC,GAAG,CAAC;QAC7B,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,IAAI;QACV,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,IAAI;QACX,SAAS,EAAE;YACT,EAAE,EAAE,GAAG;YACP,KAAK,EAAE;gBACL,EAAE,EAAE,MAAM;aACX;SACF;KACF,CAAC,CAAC;IAEH,iBAAiB;IACjB,SAAS,MAAM;QACb,MAAM,SAAS,GAAI,MAAM,CAAC,KAAgB,IAAI,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,SAAS;QACT,OAAO,IAAI,qDAAqD,CAAC;QACjE,OAAO,IAAI,sDAAsD,CAAC;QAClE,OAAO,IAAI,OAAO,GAAG,MAAM,CAAC;QAE5B,uBAAuB;QACvB,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,IAAI,qCAAqC,CAAC;YACjD,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,aAAa;QACb,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,IAAI,oBAAoB,KAAK,CAAC,KAAK,eAAe,CAAC;YAC1D,OAAO,IAAI,gDAAgD,CAAC;YAC5D,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,IAAI,oCAAoC,KAAK,CAAC,KAAK,gBAAgB,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,iEAAiE,CAAC;YAC/E,CAAC;YACD,OAAO,IAAI,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;YACjC,OAAO,IAAI,iDAAiD,CAAC;YAC7D,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,4BAA4B;QAC5B,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtD,OAAO,IAAI,gBAAgB,KAAK,CAAC,OAAO,WAAW,CAAC;YACpD,OAAO,IAAI,cAAc,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,aAAa,KAAK,CAAC,KAAK,IAAI,CAAC;YACtF,OAAO,IAAI,OAAO,GAAG,MAAM,CAAC;YAE5B,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBACzB,OAAO,IAAI,8CAA8C,CAAC;YAC5D,CAAC;iBAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzC,OAAO,IAAI,6DAA6D,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,8BAA8B,CAAC;gBAE1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACjD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBACjC,MAAM,UAAU,GAAG,CAAC,KAAK,KAAK,CAAC,iBAAiB,CAAC;oBACjD,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;oBAEzC,IAAI,UAAU,GAAG,EAAE,CAAC;oBACpB,IAAI,UAAU,EAAE,CAAC;wBACf,UAAU,GAAG,mBAAmB,SAAS,IAAI,IAAI,oBAAoB,CAAC;oBACxE,CAAC;yBAAM,CAAC;wBACN,UAAU,GAAG,GAAG,SAAS,IAAI,IAAI,EAAE,CAAC;oBACtC,CAAC;oBAED,OAAO,IAAI,UAAU,GAAG,IAAI,CAAC;gBAC/B,CAAC;gBAED,OAAO,IAAI,8DAA8D,CAAC;YAC5E,CAAC;YAED,OAAO,IAAI,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;YACjC,OAAO,IAAI,+DAA+D,CAAC;YAC3E,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,qBAAqB;QACrB,OAAO,IAAI,uBAAuB,KAAK,CAAC,KAAK,YAAY,CAAC;QAC1D,OAAO,IAAI,OAAO,GAAG,MAAM,CAAC;QAE5B,eAAe;QACf,OAAO,IAAI,2FAA2F,CAAC;QACvG,OAAO,IAAI,OAAO,GAAG,IAAI,CAAC;QAE1B,cAAc;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,UAAU,GAAG,CAAC,KAAK,KAAK,CAAC,aAAa,CAAC;YAC7C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAEzC,kCAAkC;YAClC,MAAM,WAAW,GAAG,EAAE,CAAC;YACvB,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC7B,IAAI,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;gBACjC,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAC1D,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAEtC,YAAY;YACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEjE,QAAQ;YACR,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAElD,oBAAoB;YACpB,IAAI,UAAU,GAAG,EAAE,CAAC;YACpB,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAG,mBAAmB,SAAS,MAAM,OAAO,MAAM,SAAS,MAAM,KAAK,oBAAoB,CAAC;YACvG,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,GAAG,SAAS,MAAM,OAAO,MAAM,SAAS,MAAM,KAAK,EAAE,CAAC;YACrE,CAAC;YAED,OAAO,IAAI,UAAU,GAAG,IAAI,CAAC;QAC/B,CAAC;QAED,SAAS;QACT,OAAO,IAAI,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,uFAAuF,CAAC;QAEnG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC/B,MAAM,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,0BAA0B;IAC1B,SAAS,eAAe;QACtB,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,CAAC,CAAC;QAEtC,MAAM,SAAS,GAAG,iBAAO,CAAC,GAAG,CAAC;YAC5B,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACxB,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;aACvB;YACD,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QAEH,SAAS,CAAC,UAAU,CAAC,qEAAqE,CAAC,CAAC;QAE5F,MAAM,WAAW,GAAG,iBAAO,CAAC,OAAO,CAAC;YAClC,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,gBAAgB;QAChB,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE;YAC/C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvB,MAAM,CAAC,MAAM,EAAE,CAAC;YAEhB,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC1B,MAAM,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,gBAAgB;QAChB,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvB,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvB,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,WAAW,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,iBAAiB;IACjB,KAAK,UAAU,aAAa,CAAC,KAAa;QACxC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACpB,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QACzB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;QACnB,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QACnB,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;QACxB,MAAM,EAAE,CAAC;QAET,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,6BAAW,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC1D,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YACxB,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC1B,MAAM,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACvE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC1B,MAAM,EAAE,CAAC;QACX,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,KAAK,UAAU,cAAc,CAAC,UAAkB;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxC,KAAK,CAAC,kBAAkB,GAAG,UAAU,CAAC;QACtC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;QAC5B,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;QACtB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC5B,MAAM,EAAE,CAAC;QAET,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,6BAAW,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7D,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;YACzB,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;YAC7B,MAAM,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACvE,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAChC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;YAC7B,MAAM,EAAE,CAAC;QACX,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,KAAK,UAAU,YAAY;QACzB,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE/E,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAE3D,uBAAuB;QACvB,MAAM,SAAS,GAAG,MAAM,+BAAY,CAAC,kBAAkB,EAAE,CAAC;QAE1D,kEAAkE;QAClE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;QACvD,MAAM,SAAS,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAE/C,oCAAoC;QACpC,MAAM,eAAe,GAAG,IAAA,gCAAa,EAAC,MAAM,CAAC,CAAC;QAE9C,wBAAwB;QACxB,MAAM,WAAW,GAAG,iBAAO,CAAC,GAAG,CAAC;YAC9B,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACxB,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;aACvB;YACD,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QAEH,2CAA2C;QAC3C,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAE9B,0BAA0B;QAC1B,SAAS,cAAc,CAAC,QAA0B;YAChD,IAAI,iBAAiB;gBAAE,OAAO;YAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;YACnE,MAAM,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC;YACjC,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAE7E,IAAI,OAAO,GAAG,sBAAsB,QAAQ,CAAC,QAAQ,WAAW,CAAC;YAEjE,wCAAwC;YACxC,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBACxB,OAAO,IAAI,8BAA8B,SAAS,CAAC,UAAU,uCAAuC,CAAC;YACvG,CAAC;YAED,OAAO,IAAI,MAAM,GAAG,KAAK,UAAU,OAAO,CAAC;YAC3C,OAAO,IAAI,eAAe,IAAA,6BAAW,EAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,IAAA,6BAAW,EAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YAChG,OAAO,IAAI,UAAU,QAAQ,CAAC,KAAK,MAAM,CAAC;YAC1C,OAAO,IAAI,kDAAkD,CAAC;YAE9D,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAChC,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC;QAED,uDAAuD;QACvD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtC,gBAAgB;QAChB,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,iBAAiB,GAAG,IAAI,CAAC;YACzB,eAAe,CAAC,KAAK,EAAE,CAAC,CAAE,8BAA8B;QAC1D,CAAC,CAAC;QAEF,uCAAuC;QACvC,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC3B,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC/B,4BAA4B;YAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3B,WAAW,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;QAC7C,MAAM,CAAC,MAAM,EAAE,CAAC;QAEhB,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,qCAAe,CAAC,aAAa,CACjC,KAAK,CAAC,OAAO,EACb,QAAQ,EACR,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC,EACD,SAAS,EACT,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,CACjD,CAAC;YAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,uBAAuB;gBACvB,OAAO,EAAE,CAAC;gBAEV,MAAM,UAAU,GAAG,iBAAO,CAAC,OAAO,CAAC;oBACjC,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;oBACxB,KAAK,EAAE;wBACL,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;wBACvB,EAAE,EAAE,OAAO;qBACZ;oBACD,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;gBAEH,UAAU,CAAC,OAAO,CAChB,4CAA4C,QAAQ,eAAe,SAAS,+BAA+B,EAC3G,GAAG,EAAE;oBACH,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC1B,MAAM,EAAE,CAAC;gBACX,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;YAEV,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,6CAA6C;gBAC7C,MAAM,QAAQ,GAAG,iBAAO,CAAC,OAAO,CAAC;oBAC/B,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;oBACxB,KAAK,EAAE;wBACL,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE;wBACrB,EAAE,EAAE,KAAK;qBACV;oBACD,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBAC1E,QAAQ,CAAC,OAAO,CAAC,mCAAmC,QAAQ,+BAA+B,EAAE,GAAG,EAAE;oBAChG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACxB,MAAM,EAAE,CAAC;gBACX,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,kCAAkC;gBAClC,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,MAAM,WAAW,GAAG;QAClB,EAAE,EAAE,GAAG,EAAE;YACP,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBACtC,mBAAmB;gBACnB,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,EAAE,CAAC;QACX,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACT,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBACtC,mBAAmB;gBACnB,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YAC/F,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YACpF,CAAC;YACD,MAAM,EAAE,CAAC;QACX,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBACtC,yBAAyB;gBACzB,YAAY,EAAE,CAAC;YACjB,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,sCAAsC;gBACtC,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QACD,MAAM,EAAE,GAAG,EAAE;YACX,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI;gBAAE,OAAO,CAAC,wCAAwC;YACvF,eAAe,EAAE,CAAC;QACpB,CAAC;QACD,MAAM,EAAE,GAAG,EAAE;YACX,IAAI,eAAe,CAAC,WAAW,EAAE;gBAAE,OAAO,CAAC,gCAAgC;YAC3E,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBACtC,0BAA0B;gBAC1B,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAChC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;gBACtB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC5B,MAAM,EAAE,CAAC;YACX,CAAC;iBAAM,CAAC;gBACN,yBAAyB;gBACzB,kBAAkB,EAAE,CAAC;gBACrB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC1B,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACT,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;KACF,CAAC;IAEF,mCAAmC;IACnC,SAAS,kBAAkB;QACzB,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,wBAAwB;IACxB,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAEhD,iBAAiB;IACjB,MAAM,EAAE,CAAC;IAET,iCAAiC;IACjC,eAAe,EAAE,CAAC;AACpB,CAAC"}
@@ -0,0 +1,65 @@
1
+ import * as blessed from 'blessed';
2
+ import { KeyboardManager } from '../../lib/keyboard-manager.js';
3
+ /**
4
+ * Modal controller that properly isolates keyboard handling using KeyboardManager.
5
+ *
6
+ * Key features:
7
+ * - Uses KeyboardManager context stack to prevent event propagation
8
+ * - Pushes blocking context when modal opens
9
+ * - Pops context when modal closes
10
+ * - Prevents screen handlers from executing while modal is active
11
+ * - Manages modal lifecycle with proper cleanup
12
+ * - Provides consistent API for all modal types
13
+ */
14
+ export declare class ModalController {
15
+ private screen;
16
+ private modalStack;
17
+ private keyboardManager;
18
+ constructor(screen: blessed.Widgets.Screen, keyboardManager: KeyboardManager);
19
+ /**
20
+ * Check if any modal is currently open
21
+ */
22
+ isModalOpen(): boolean;
23
+ /**
24
+ * Create modal element with standard styling
25
+ */
26
+ private createModalElement;
27
+ /**
28
+ * Show a simple error message modal
29
+ */
30
+ showError(message: string, onClose: () => void): Promise<void>;
31
+ /**
32
+ * Show a simple success message modal
33
+ */
34
+ showSuccess(message: string, onClose: () => void): Promise<void>;
35
+ /**
36
+ * Show an unsaved changes dialog
37
+ */
38
+ showUnsavedDialog(onClose: () => void): Promise<'save' | 'discard' | 'continue'>;
39
+ /**
40
+ * Show a restart confirmation dialog
41
+ */
42
+ showRestartDialog(serviceName: string, onClose: () => void): Promise<boolean>;
43
+ /**
44
+ * Show a number input modal
45
+ */
46
+ showNumberInput(title: string, currentValue: number, validation: ((value: number) => string | null) | undefined, onClose: () => void): Promise<number | null>;
47
+ /**
48
+ * Show a text input modal
49
+ */
50
+ showTextInput(title: string, currentValue: string, validation: ((value: string) => Promise<string | null>) | undefined, onClose: () => void): Promise<string | null>;
51
+ /**
52
+ * Show a select/toggle modal
53
+ */
54
+ showSelect(title: string, options: string[], currentValue: string | boolean, isToggle: boolean, onClose: () => void, additionalInfo?: (selectedValue: string) => string): Promise<string | boolean | null>;
55
+ /**
56
+ * Show a progress modal (non-interactive)
57
+ * Note: Progress modals don't use overlays since they're temporary
58
+ */
59
+ showProgress(message: string): blessed.Widgets.BoxElement;
60
+ /**
61
+ * Remove a progress modal
62
+ */
63
+ closeProgress(modal: blessed.Widgets.BoxElement): void;
64
+ }
65
+ //# sourceMappingURL=modal-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal-controller.d.ts","sourceRoot":"","sources":["../../../src/tui/shared/modal-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,eAAe,CAAkB;gBAE7B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,eAAe;IAK5E;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDpE;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAmDtE;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IA2FtF;;OAEG;IACG,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAwFnF;;OAEG;IACG,eAAe,CACnB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,EAC1D,OAAO,EAAE,MAAM,IAAI,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmGzB;;OAEG;IACG,aAAa,CACjB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,SAAS,EACnE,OAAO,EAAE,MAAM,IAAI,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA6FzB;;OAEG;IACG,UAAU,CACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,EACjB,YAAY,EAAE,MAAM,GAAG,OAAO,EAC9B,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,MAAM,IAAI,EACnB,cAAc,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,GACjD,OAAO,CAAC,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IAqGnC;;;OAGG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU;IAezD;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI;CAKvD"}