hammoc 1.0.4 → 1.1.1

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 (169) hide show
  1. package/README.md +46 -16
  2. package/bin/hammoc.js +22 -5
  3. package/package.json +2 -1
  4. package/packages/client/dist/assets/index-JvaBmdnx.css +32 -0
  5. package/packages/client/dist/assets/index-RJTIkL2R.js +1446 -0
  6. package/packages/client/dist/assets/{index-Zkw0a1l9.js → index-cwHQKX3r.js} +1 -1
  7. package/packages/client/dist/index.html +2 -2
  8. package/packages/client/dist/sw.js +2 -1
  9. package/packages/server/dist/app.d.ts.map +1 -1
  10. package/packages/server/dist/app.js +58 -6
  11. package/packages/server/dist/app.js.map +1 -1
  12. package/packages/server/dist/config/index.d.ts +17 -9
  13. package/packages/server/dist/config/index.d.ts.map +1 -1
  14. package/packages/server/dist/config/index.js +17 -10
  15. package/packages/server/dist/config/index.js.map +1 -1
  16. package/packages/server/dist/controllers/boardController.d.ts +0 -1
  17. package/packages/server/dist/controllers/boardController.d.ts.map +1 -1
  18. package/packages/server/dist/controllers/boardController.js +62 -29
  19. package/packages/server/dist/controllers/boardController.js.map +1 -1
  20. package/packages/server/dist/controllers/cliController.d.ts.map +1 -1
  21. package/packages/server/dist/controllers/cliController.js +8 -0
  22. package/packages/server/dist/controllers/cliController.js.map +1 -1
  23. package/packages/server/dist/controllers/fileSystemController.d.ts +10 -0
  24. package/packages/server/dist/controllers/fileSystemController.d.ts.map +1 -1
  25. package/packages/server/dist/controllers/fileSystemController.js +156 -0
  26. package/packages/server/dist/controllers/fileSystemController.js.map +1 -1
  27. package/packages/server/dist/controllers/queueController.d.ts +0 -4
  28. package/packages/server/dist/controllers/queueController.d.ts.map +1 -1
  29. package/packages/server/dist/controllers/queueController.js +0 -88
  30. package/packages/server/dist/controllers/queueController.js.map +1 -1
  31. package/packages/server/dist/controllers/queueTemplateController.d.ts +4 -0
  32. package/packages/server/dist/controllers/queueTemplateController.d.ts.map +1 -1
  33. package/packages/server/dist/controllers/queueTemplateController.js +61 -4
  34. package/packages/server/dist/controllers/queueTemplateController.js.map +1 -1
  35. package/packages/server/dist/controllers/serverController.d.ts +3 -3
  36. package/packages/server/dist/controllers/serverController.d.ts.map +1 -1
  37. package/packages/server/dist/controllers/serverController.js +42 -16
  38. package/packages/server/dist/controllers/serverController.js.map +1 -1
  39. package/packages/server/dist/controllers/sessionController.d.ts.map +1 -1
  40. package/packages/server/dist/controllers/sessionController.js +3 -1
  41. package/packages/server/dist/controllers/sessionController.js.map +1 -1
  42. package/packages/server/dist/handlers/websocket.d.ts +14 -2
  43. package/packages/server/dist/handlers/websocket.d.ts.map +1 -1
  44. package/packages/server/dist/handlers/websocket.js +780 -99
  45. package/packages/server/dist/handlers/websocket.js.map +1 -1
  46. package/packages/server/dist/index.js +5 -1
  47. package/packages/server/dist/index.js.map +1 -1
  48. package/packages/server/dist/locales/en/server.json +12 -3
  49. package/packages/server/dist/locales/es/server.json +3 -1
  50. package/packages/server/dist/locales/ja/server.json +3 -1
  51. package/packages/server/dist/locales/ko/server.json +12 -3
  52. package/packages/server/dist/locales/pt/server.json +3 -1
  53. package/packages/server/dist/locales/zh-CN/server.json +3 -1
  54. package/packages/server/dist/middleware/pathGuard.d.ts +1 -7
  55. package/packages/server/dist/middleware/pathGuard.d.ts.map +1 -1
  56. package/packages/server/dist/middleware/pathGuard.js +57 -4
  57. package/packages/server/dist/middleware/pathGuard.js.map +1 -1
  58. package/packages/server/dist/middleware/session.d.ts.map +1 -1
  59. package/packages/server/dist/middleware/session.js +3 -1
  60. package/packages/server/dist/middleware/session.js.map +1 -1
  61. package/packages/server/dist/routes/board.d.ts.map +1 -1
  62. package/packages/server/dist/routes/board.js +0 -1
  63. package/packages/server/dist/routes/board.js.map +1 -1
  64. package/packages/server/dist/routes/fileSystem.d.ts.map +1 -1
  65. package/packages/server/dist/routes/fileSystem.js +39 -0
  66. package/packages/server/dist/routes/fileSystem.js.map +1 -1
  67. package/packages/server/dist/routes/preferences.d.ts.map +1 -1
  68. package/packages/server/dist/routes/preferences.js +80 -2
  69. package/packages/server/dist/routes/preferences.js.map +1 -1
  70. package/packages/server/dist/routes/queue.d.ts.map +1 -1
  71. package/packages/server/dist/routes/queue.js +9 -8
  72. package/packages/server/dist/routes/queue.js.map +1 -1
  73. package/packages/server/dist/services/bmadStatusService.d.ts.map +1 -1
  74. package/packages/server/dist/services/bmadStatusService.js +60 -0
  75. package/packages/server/dist/services/bmadStatusService.js.map +1 -1
  76. package/packages/server/dist/services/chatService.d.ts +4 -0
  77. package/packages/server/dist/services/chatService.d.ts.map +1 -1
  78. package/packages/server/dist/services/chatService.js +7 -1
  79. package/packages/server/dist/services/chatService.js.map +1 -1
  80. package/packages/server/dist/services/cliService.d.ts.map +1 -1
  81. package/packages/server/dist/services/cliService.js +66 -15
  82. package/packages/server/dist/services/cliService.js.map +1 -1
  83. package/packages/server/dist/services/fileSystemService.d.ts +29 -1
  84. package/packages/server/dist/services/fileSystemService.d.ts.map +1 -1
  85. package/packages/server/dist/services/fileSystemService.js +240 -5
  86. package/packages/server/dist/services/fileSystemService.js.map +1 -1
  87. package/packages/server/dist/services/gitService.js +1 -1
  88. package/packages/server/dist/services/gitService.js.map +1 -1
  89. package/packages/server/dist/services/historyParser.d.ts +13 -0
  90. package/packages/server/dist/services/historyParser.d.ts.map +1 -1
  91. package/packages/server/dist/services/historyParser.js +72 -1
  92. package/packages/server/dist/services/historyParser.js.map +1 -1
  93. package/packages/server/dist/services/issueService.d.ts +3 -10
  94. package/packages/server/dist/services/issueService.d.ts.map +1 -1
  95. package/packages/server/dist/services/issueService.js +123 -152
  96. package/packages/server/dist/services/issueService.js.map +1 -1
  97. package/packages/server/dist/services/notificationService.d.ts +11 -6
  98. package/packages/server/dist/services/notificationService.d.ts.map +1 -1
  99. package/packages/server/dist/services/notificationService.js +75 -20
  100. package/packages/server/dist/services/notificationService.js.map +1 -1
  101. package/packages/server/dist/services/preferencesService.d.ts +2 -3
  102. package/packages/server/dist/services/preferencesService.d.ts.map +1 -1
  103. package/packages/server/dist/services/preferencesService.js +3 -10
  104. package/packages/server/dist/services/preferencesService.js.map +1 -1
  105. package/packages/server/dist/services/projectService.d.ts +26 -1
  106. package/packages/server/dist/services/projectService.d.ts.map +1 -1
  107. package/packages/server/dist/services/projectService.js +113 -0
  108. package/packages/server/dist/services/projectService.js.map +1 -1
  109. package/packages/server/dist/services/queueService.d.ts +1 -1
  110. package/packages/server/dist/services/queueService.d.ts.map +1 -1
  111. package/packages/server/dist/services/queueService.js +6 -2
  112. package/packages/server/dist/services/queueService.js.map +1 -1
  113. package/packages/server/dist/services/queueTemplateService.d.ts +5 -0
  114. package/packages/server/dist/services/queueTemplateService.d.ts.map +1 -1
  115. package/packages/server/dist/services/queueTemplateService.js +71 -21
  116. package/packages/server/dist/services/queueTemplateService.js.map +1 -1
  117. package/packages/server/dist/services/sessionService.d.ts +12 -0
  118. package/packages/server/dist/services/sessionService.d.ts.map +1 -1
  119. package/packages/server/dist/services/sessionService.js +142 -107
  120. package/packages/server/dist/services/sessionService.js.map +1 -1
  121. package/packages/server/dist/services/streamHandler.d.ts +4 -2
  122. package/packages/server/dist/services/streamHandler.d.ts.map +1 -1
  123. package/packages/server/dist/services/streamHandler.js +19 -4
  124. package/packages/server/dist/services/streamHandler.js.map +1 -1
  125. package/packages/server/dist/services/webPushService.d.ts +61 -0
  126. package/packages/server/dist/services/webPushService.d.ts.map +1 -0
  127. package/packages/server/dist/services/webPushService.js +258 -0
  128. package/packages/server/dist/services/webPushService.js.map +1 -0
  129. package/packages/server/dist/utils/networkUtils.d.ts +17 -2
  130. package/packages/server/dist/utils/networkUtils.d.ts.map +1 -1
  131. package/packages/server/dist/utils/networkUtils.js +121 -8
  132. package/packages/server/dist/utils/networkUtils.js.map +1 -1
  133. package/packages/server/package.json +4 -0
  134. package/packages/shared/dist/constants/errorCodes.d.ts +1 -0
  135. package/packages/shared/dist/constants/errorCodes.d.ts.map +1 -1
  136. package/packages/shared/dist/constants/errorCodes.js +2 -0
  137. package/packages/shared/dist/constants/errorCodes.js.map +1 -1
  138. package/packages/shared/dist/index.d.ts +1 -1
  139. package/packages/shared/dist/index.d.ts.map +1 -1
  140. package/packages/shared/dist/index.js.map +1 -1
  141. package/packages/shared/dist/types/bmadStatus.d.ts +2 -0
  142. package/packages/shared/dist/types/bmadStatus.d.ts.map +1 -1
  143. package/packages/shared/dist/types/bmadStatus.js.map +1 -1
  144. package/packages/shared/dist/types/board.d.ts +6 -8
  145. package/packages/shared/dist/types/board.d.ts.map +1 -1
  146. package/packages/shared/dist/types/board.js +24 -39
  147. package/packages/shared/dist/types/board.js.map +1 -1
  148. package/packages/shared/dist/types/fileSystem.d.ts +36 -0
  149. package/packages/shared/dist/types/fileSystem.d.ts.map +1 -1
  150. package/packages/shared/dist/types/fileSystem.js +15 -0
  151. package/packages/shared/dist/types/fileSystem.js.map +1 -1
  152. package/packages/shared/dist/types/history.d.ts +7 -0
  153. package/packages/shared/dist/types/history.d.ts.map +1 -1
  154. package/packages/shared/dist/types/preferences.d.ts +24 -2
  155. package/packages/shared/dist/types/preferences.d.ts.map +1 -1
  156. package/packages/shared/dist/types/preferences.js.map +1 -1
  157. package/packages/shared/dist/types/sdk.d.ts +7 -0
  158. package/packages/shared/dist/types/sdk.d.ts.map +1 -1
  159. package/packages/shared/dist/types/sdk.js +25 -0
  160. package/packages/shared/dist/types/sdk.js.map +1 -1
  161. package/packages/shared/dist/types/websocket.d.ts +41 -3
  162. package/packages/shared/dist/types/websocket.d.ts.map +1 -1
  163. package/packages/shared/dist/utils/queueTemplateUtils.d.ts +2 -1
  164. package/packages/shared/dist/utils/queueTemplateUtils.d.ts.map +1 -1
  165. package/packages/shared/dist/utils/queueTemplateUtils.js +10 -3
  166. package/packages/shared/dist/utils/queueTemplateUtils.js.map +1 -1
  167. package/packages/client/dist/assets/index-DgULSwlr.js +0 -1320
  168. package/packages/client/dist/assets/index-Dto2jQe7.css +0 -32
  169. package/packages/client/dist/workbox-7a79b53c.js +0 -1
@@ -9,15 +9,35 @@ import path from 'path';
9
9
  import os from 'os';
10
10
  import fs from 'fs/promises';
11
11
  import { existsSync } from 'fs';
12
- import { parseJSONLFile, sortMessagesByParentUuid, transformToHistoryMessages, cleanCommandTags, } from './historyParser.js';
12
+ import { parseJSONLFile, parseJSONLSessionMeta, sortMessagesByParentUuid, transformToHistoryMessages, cleanCommandTags, } from './historyParser.js';
13
13
  /**
14
14
  * SessionService - Manages Claude Code session data
15
15
  */
16
16
  export class SessionService {
17
17
  claudeProjectsDir;
18
+ // Per-project mutex for sessions-index.json writes to prevent concurrent read-modify-write races
19
+ static indexWriteLocks = new Map();
18
20
  constructor() {
19
21
  this.claudeProjectsDir = path.join(os.homedir(), '.claude', 'projects');
20
22
  }
23
+ /**
24
+ * Serialize async operations per project slug to prevent concurrent
25
+ * read-modify-write on sessions-index.json.
26
+ */
27
+ async withIndexLock(projectSlug, fn) {
28
+ const prev = SessionService.indexWriteLocks.get(projectSlug) ?? Promise.resolve();
29
+ const next = prev.then(fn, fn);
30
+ SessionService.indexWriteLocks.set(projectSlug, next);
31
+ try {
32
+ await next;
33
+ }
34
+ finally {
35
+ // Clean up if this is still the latest queued operation
36
+ if (SessionService.indexWriteLocks.get(projectSlug) === next) {
37
+ SessionService.indexWriteLocks.delete(projectSlug);
38
+ }
39
+ }
40
+ }
21
41
  /**
22
42
  * Encode a project path to Claude Code's directory format
23
43
  * /Users/username/myproject -> -Users-username-myproject
@@ -277,33 +297,16 @@ export class SessionService {
277
297
  const cacheMisses = candidates.filter(({ sessionId }) => !indexMap.has(sessionId));
278
298
  if (cacheMisses.length > 0) {
279
299
  await this.pMapWithLimit(cacheMisses, async ({ file, sessionId }) => {
280
- try {
281
- const rawMessages = await parseJSONLFile(path.join(projectDir, file));
282
- const userMessage = rawMessages.find(m => m.type === 'user');
283
- const content = userMessage?.message?.content;
284
- let rawText = '';
285
- if (typeof content === 'string') {
286
- rawText = content;
287
- }
288
- else if (Array.isArray(content)) {
289
- const textBlock = content
290
- .filter((b) => b.type === 'text')
291
- .find((b) => 'text' in b && typeof b.text === 'string' && cleanCommandTags(b.text).trim());
292
- if (textBlock && 'text' in textBlock) {
293
- rawText = textBlock.text;
294
- }
295
- }
300
+ const meta = await parseJSONLSessionMeta(path.join(projectDir, file));
301
+ if (meta) {
296
302
  indexMap.set(sessionId, {
297
303
  sessionId,
298
- firstPrompt: rawText,
299
- messageCount: rawMessages.filter(m => m.type === 'user' || m.type === 'assistant').length,
304
+ firstPrompt: meta.firstPrompt,
305
+ messageCount: meta.messageCount,
300
306
  created: '',
301
307
  modified: '',
302
308
  });
303
309
  }
304
- catch {
305
- // Skip unparseable files — treated as empty firstPrompt
306
- }
307
310
  }, 8);
308
311
  }
309
312
  const metadataMatched = new Set();
@@ -347,37 +350,20 @@ export class SessionService {
347
350
  modified: stat.mtime.toISOString(),
348
351
  };
349
352
  }
350
- // Cache miss — parse JSONL
351
- try {
352
- const rawMessages = await parseJSONLFile(path.join(projectDir, file));
353
- const userMessage = rawMessages.find(m => m.type === 'user');
354
- const content = userMessage?.message?.content;
355
- let rawText = null;
356
- if (typeof content === 'string') {
357
- rawText = content;
358
- }
359
- else if (Array.isArray(content)) {
360
- const textBlock = content
361
- .filter((b) => b.type === 'text')
362
- .find((b) => 'text' in b && cleanCommandTags(b.text).trim());
363
- if (textBlock && 'text' in textBlock) {
364
- rawText = textBlock.text;
365
- }
366
- }
367
- // Filter empty sessions for cache misses when !includeEmpty
368
- if (!includeEmpty && !rawText)
369
- return null;
370
- return {
371
- sessionId,
372
- firstPrompt: rawText ? this.truncateFirstPrompt(rawText) : '',
373
- messageCount: rawMessages.filter(m => m.type === 'user' || m.type === 'assistant').length,
374
- created: stat.birthtime.toISOString(),
375
- modified: stat.mtime.toISOString(),
376
- };
377
- }
378
- catch {
379
- return null; // Skip unparseable files
380
- }
353
+ // Cache miss — use lightweight stream parser
354
+ const meta = await parseJSONLSessionMeta(path.join(projectDir, file));
355
+ if (!meta)
356
+ return null;
357
+ // Filter empty sessions for cache misses when !includeEmpty
358
+ if (!includeEmpty && !meta.firstPrompt)
359
+ return null;
360
+ return {
361
+ sessionId,
362
+ firstPrompt: meta.firstPrompt ? this.truncateFirstPrompt(meta.firstPrompt) : '',
363
+ messageCount: meta.messageCount,
364
+ created: stat.birthtime.toISOString(),
365
+ modified: stat.mtime.toISOString(),
366
+ };
381
367
  }))).filter((s) => s !== null);
382
368
  return { sessions, total: candidates.length };
383
369
  }
@@ -417,56 +403,26 @@ export class SessionService {
417
403
  if (!sessionMap.has(sessionId)) {
418
404
  const filePath = path.join(projectDir, file);
419
405
  const stat = await fs.stat(filePath);
420
- try {
421
- const rawMessages = await parseJSONLFile(filePath);
422
- const userMessage = rawMessages.find(m => m.type === 'user');
423
- if (userMessage) {
424
- const content = userMessage.message?.content;
425
- let rawText = null;
426
- if (typeof content === 'string') {
427
- rawText = content;
428
- }
429
- else if (Array.isArray(content)) {
430
- const textBlock = content
431
- .filter((b) => b.type === 'text')
432
- .find((b) => 'text' in b && cleanCommandTags(b.text).trim());
433
- if (textBlock && 'text' in textBlock) {
434
- rawText = textBlock.text;
435
- }
436
- }
437
- const firstPrompt = rawText ? this.truncateFirstPrompt(rawText) : null;
438
- if (rawText || includeEmpty) {
439
- if (rawText)
440
- rawFirstPromptMap.set(sessionId, rawText);
441
- sessionMap.set(sessionId, {
442
- sessionId,
443
- firstPrompt: firstPrompt || '',
444
- messageCount: rawMessages.filter(m => m.type === 'user' || m.type === 'assistant').length,
445
- created: stat.birthtime.toISOString(),
446
- modified: stat.mtime.toISOString(),
447
- });
448
- }
449
- }
450
- else if (includeEmpty) {
451
- sessionMap.set(sessionId, {
452
- sessionId,
453
- firstPrompt: '',
454
- messageCount: 0,
455
- created: stat.birthtime.toISOString(),
456
- modified: stat.mtime.toISOString(),
457
- });
458
- }
406
+ const meta = await parseJSONLSessionMeta(filePath);
407
+ if (meta && (meta.firstPrompt || includeEmpty)) {
408
+ if (meta.firstPrompt)
409
+ rawFirstPromptMap.set(sessionId, meta.firstPrompt);
410
+ sessionMap.set(sessionId, {
411
+ sessionId,
412
+ firstPrompt: meta.firstPrompt ? this.truncateFirstPrompt(meta.firstPrompt) : '',
413
+ messageCount: meta.messageCount,
414
+ created: stat.birthtime.toISOString(),
415
+ modified: stat.mtime.toISOString(),
416
+ });
459
417
  }
460
- catch {
461
- if (includeEmpty) {
462
- sessionMap.set(sessionId, {
463
- sessionId,
464
- firstPrompt: '',
465
- messageCount: 0,
466
- created: stat.birthtime.toISOString(),
467
- modified: stat.mtime.toISOString(),
468
- });
469
- }
418
+ else if (includeEmpty) {
419
+ sessionMap.set(sessionId, {
420
+ sessionId,
421
+ firstPrompt: '',
422
+ messageCount: 0,
423
+ created: stat.birthtime.toISOString(),
424
+ modified: stat.mtime.toISOString(),
425
+ });
470
426
  }
471
427
  }
472
428
  }
@@ -585,6 +541,56 @@ export class SessionService {
585
541
  }
586
542
  return { deleted, failed };
587
543
  }
544
+ /**
545
+ * Update or insert a session entry in sessions-index.json.
546
+ * Called after a stream completes so the index stays fresh and
547
+ * future list queries avoid expensive JSONL re-parsing.
548
+ */
549
+ async updateSessionIndex(projectSlug, sessionId) {
550
+ await this.withIndexLock(projectSlug, async () => {
551
+ const projectDir = path.join(this.claudeProjectsDir, projectSlug);
552
+ const indexPath = path.join(projectDir, 'sessions-index.json');
553
+ const sessionFile = path.join(projectDir, `${sessionId}.jsonl`);
554
+ const meta = await parseJSONLSessionMeta(sessionFile);
555
+ if (!meta)
556
+ return;
557
+ const stat = await fs.stat(sessionFile);
558
+ const entry = {
559
+ sessionId,
560
+ firstPrompt: meta.firstPrompt,
561
+ messageCount: meta.messageCount,
562
+ created: stat.birthtime.toISOString(),
563
+ modified: stat.mtime.toISOString(),
564
+ };
565
+ // Read existing index — skip update entirely if file exists but is unparseable
566
+ let index;
567
+ try {
568
+ const content = await fs.readFile(indexPath, 'utf-8');
569
+ index = JSON.parse(content);
570
+ if (!index.entries || !Array.isArray(index.entries)) {
571
+ index.entries = [];
572
+ }
573
+ }
574
+ catch (err) {
575
+ // If index file exists but is corrupt, skip to avoid overwriting valid data
576
+ if (existsSync(indexPath))
577
+ return;
578
+ index = { version: 1, entries: [] };
579
+ }
580
+ // Upsert: replace existing entry or append
581
+ const existingIdx = index.entries.findIndex(e => e.sessionId === sessionId);
582
+ if (existingIdx >= 0) {
583
+ index.entries[existingIdx] = entry;
584
+ }
585
+ else {
586
+ index.entries.push(entry);
587
+ }
588
+ // Atomic write: write to temp file then rename
589
+ const tmpPath = `${indexPath}.tmp.${Date.now()}`;
590
+ await fs.writeFile(tmpPath, JSON.stringify(index, null, 2), 'utf-8');
591
+ await fs.rename(tmpPath, indexPath);
592
+ });
593
+ }
588
594
  // Story 3.5: Session History Loading methods
589
595
  /**
590
596
  * Get the JSONL file path for a session
@@ -631,14 +637,42 @@ export class SessionService {
631
637
  * @returns Messages with pagination info, or null if session not found
632
638
  */
633
639
  async getSessionMessages(projectSlug, sessionId, options = {}) {
634
- const { limit = 50, offset = 0 } = options;
640
+ const { limit = 50, offset = 0, streamStartedAt, runningStreamStartedAt } = options;
635
641
  const filePath = this.getSessionFilePath(projectSlug, sessionId);
636
642
  if (!existsSync(filePath)) {
637
643
  return null;
638
644
  }
639
645
  const rawMessages = await parseJSONLFile(filePath);
640
646
  const sorted = sortMessagesByParentUuid(rawMessages);
641
- const transformed = transformToHistoryMessages(sorted);
647
+ let transformed = transformToHistoryMessages(sorted);
648
+ // If session has an active stream, exclude messages from the stream period.
649
+ // Those messages are covered by WebSocket buffer replay (stream:buffer-replay).
650
+ // This prevents duplicate tool/message cards when the client loads both
651
+ // JSONL history and buffer replay simultaneously.
652
+ //
653
+ // IMPORTANT: User messages from the *running* stream's period are preserved
654
+ // so that trimMessagesAfterLastUser() on the client correctly identifies the
655
+ // triggering user message as the "last" user message. Without this, the client
656
+ // trims the previous assistant reply because the SDK writes the user message
657
+ // to JSONL after the stream starts (timestamp >= streamStartedAt).
658
+ //
659
+ // Only runningStreamStartedAt is used for user preservation (not the combined
660
+ // streamStartedAt which may include a completed buffer's earlier start time).
661
+ // This avoids duplicating user messages from a completed turn that are already
662
+ // provided via completedBuffer replay.
663
+ if (streamStartedAt) {
664
+ transformed = transformed.filter((m) => {
665
+ const ts = new Date(m.timestamp).getTime();
666
+ if (ts < streamStartedAt)
667
+ return true;
668
+ // When a stream is actively running, preserve user messages from
669
+ // that stream's period so trimMessagesAfterLastUser() works correctly.
670
+ // Not needed for completed-buffer-only (no trimming runs on inactive streams).
671
+ if (runningStreamStartedAt && m.type === 'user' && ts >= runningStreamStartedAt)
672
+ return true;
673
+ return false;
674
+ });
675
+ }
642
676
  const total = transformed.length;
643
677
  // Chat UI: Load from the END (most recent messages first)
644
678
  // offset=0 means "most recent N messages"
@@ -646,11 +680,12 @@ export class SessionService {
646
680
  const startIndex = Math.max(0, total - offset - limit);
647
681
  const endIndex = Math.max(0, total - offset);
648
682
  const paginated = transformed.slice(startIndex, endIndex);
649
- // Scan full message list (reverse) for last slash command in user messages
650
- // Used by client to detect active agent even when first message is not loaded
683
+ // Scan full message list (reverse) for last agent command in user messages.
684
+ // Must match agent command pattern (:agents:), not any slash command
685
+ // otherwise non-agent commands like /commit would shadow the real agent.
651
686
  let lastAgentCommand = null;
652
687
  for (let i = transformed.length - 1; i >= 0; i--) {
653
- if (transformed[i].type === 'user' && transformed[i].content.startsWith('/')) {
688
+ if (transformed[i].type === 'user' && transformed[i].content.includes(':agents:')) {
654
689
  lastAgentCommand = transformed[i].content;
655
690
  break;
656
691
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sessionService.js","sourceRoot":"","sources":["../../src/services/sessionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessionService.js","sourceRoot":"","sources":["../../src/services/sessionService.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export declare class StreamHandler {
23
23
  private lastPartialEmitByTool;
24
24
  /** Running estimate of context window token consumption (updated from assistant usage + tool results) */
25
25
  private estimatedContextTokens;
26
- /** Known context window size from modelUsage (defaults to 200K) */
26
+ /** Known context window size from modelUsage (0 until first result arrives) */
27
27
  private contextWindowSize;
28
28
  constructor();
29
29
  /**
@@ -106,7 +106,9 @@ export declare class StreamHandler {
106
106
  */
107
107
  private handleTextBlock;
108
108
  /**
109
- * Handle tool_use content block
109
+ * Handle tool_use content block.
110
+ * Skip if stream_event content_block_start already emitted this tool
111
+ * (avoids double emission — same pattern as text/thinking dedup).
110
112
  */
111
113
  private handleToolUseBlock;
112
114
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"streamHandler.d.ts","sourceRoot":"","sources":["../../src/services/streamHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAGL,KAAK,gBAAgB,EAcrB,KAAK,cAAc,EACnB,KAAK,eAAe,EAIrB,MAAM,gBAAgB,CAAC;AAWxB;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,gBAAgB,CAAa;IACrC,4DAA4D;IAC5D,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,2CAA2C;IAC3C,OAAO,CAAC,aAAa,CAAkC;IACvD,4GAA4G;IAC5G,OAAO,CAAC,uBAAuB,CAAkB;IACjD,oHAAoH;IACpH,OAAO,CAAC,2BAA2B,CAAkB;IAErD,6EAA6E;IAC7E,OAAO,CAAC,qBAAqB,CAAkC;IAE/D,yGAAyG;IACzG,OAAO,CAAC,sBAAsB,CAAK;IACnC,mEAAmE;IACnE,OAAO,CAAC,iBAAiB,CAAU;;IAMnC;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAmD3E;;OAEG;IACH,QAAQ,IAAI,cAAc;IAI1B;;OAEG;IACH,KAAK,IAAI,IAAI;IAYb;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,gBAAgB;IA6BnD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoD7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+BxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAuD1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4C1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmBhC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6CzB;;OAEG;IACG,aAAa,CACjB,SAAS,EAAE,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,EACvD,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,YAAY,CAAC;IA6CxB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0CtB;;OAEG;IACH,OAAO,CAAC,UAAU;IAuBlB;;OAEG;IACH,OAAO,CAAC,eAAe;IAkCvB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAyBvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;OAEG;IACH,OAAO,CAAC,UAAU;IA2BlB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgGzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAiCpB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;OAEG;IACH,OAAO,CAAC,YAAY;IAkCpB;;OAEG;IACH,OAAO,CAAC,OAAO;CAIhB"}
1
+ {"version":3,"file":"streamHandler.d.ts","sourceRoot":"","sources":["../../src/services/streamHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAGL,KAAK,gBAAgB,EAcrB,KAAK,cAAc,EACnB,KAAK,eAAe,EAIrB,MAAM,gBAAgB,CAAC;AAWxB;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,gBAAgB,CAAa;IACrC,4DAA4D;IAC5D,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,2CAA2C;IAC3C,OAAO,CAAC,aAAa,CAAkC;IACvD,4GAA4G;IAC5G,OAAO,CAAC,uBAAuB,CAAkB;IACjD,oHAAoH;IACpH,OAAO,CAAC,2BAA2B,CAAkB;IAErD,6EAA6E;IAC7E,OAAO,CAAC,qBAAqB,CAAkC;IAE/D,yGAAyG;IACzG,OAAO,CAAC,sBAAsB,CAAK;IACnC,+EAA+E;IAC/E,OAAO,CAAC,iBAAiB,CAAK;;IAM9B;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAmD3E;;OAEG;IACH,QAAQ,IAAI,cAAc;IAI1B;;OAEG;IACH,KAAK,IAAI,IAAI;IAYb;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,gBAAgB;IA6BnD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoD7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+BxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAuD1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4C1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmBhC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6CzB;;OAEG;IACG,aAAa,CACjB,SAAS,EAAE,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,EACvD,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,YAAY,CAAC;IA6CxB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0CtB;;OAEG;IACH,OAAO,CAAC,UAAU;IA2BlB;;OAEG;IACH,OAAO,CAAC,eAAe;IAkCvB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAyBvB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA2B1B;;OAEG;IACH,OAAO,CAAC,UAAU;IA2BlB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgGzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAiCpB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;OAEG;IACH,OAAO,CAAC,YAAY;IAkCpB;;OAEG;IACH,OAAO,CAAC,OAAO;CAIhB"}
@@ -30,8 +30,8 @@ export class StreamHandler {
30
30
  lastPartialEmitByTool = new Map();
31
31
  /** Running estimate of context window token consumption (updated from assistant usage + tool results) */
32
32
  estimatedContextTokens = 0;
33
- /** Known context window size from modelUsage (defaults to 200K) */
34
- contextWindowSize = 200000;
33
+ /** Known context window size from modelUsage (0 until first result arrives) */
34
+ contextWindowSize = 0;
35
35
  constructor() {
36
36
  this.state = createInitialStreamingState();
37
37
  }
@@ -108,7 +108,7 @@ export class StreamHandler {
108
108
  this.receivedStreamTextDelta = false;
109
109
  this.receivedStreamThinkingDelta = false;
110
110
  this.estimatedContextTokens = 0;
111
- // Keep contextWindowSize across resets (learned from previous result)
111
+ this.contextWindowSize = 0;
112
112
  }
113
113
  /**
114
114
  * Generate a unique message ID for stream chunks
@@ -463,6 +463,9 @@ export class StreamHandler {
463
463
  model: message.model,
464
464
  cwd: message.cwd,
465
465
  };
466
+ // Reset context window so stale value from a prior session doesn't leak.
467
+ // Stays 0 until the first result message provides the real value from modelUsage.
468
+ this.contextWindowSize = 0;
466
469
  callbacks.onSessionInit?.(message.sessionId, this.state.metadata);
467
470
  // If there's buffered text from before init, send it now
468
471
  if (this.state.accumulatedText && this.receivedStreamTextDelta) {
@@ -530,9 +533,21 @@ export class StreamHandler {
530
533
  });
531
534
  }
532
535
  /**
533
- * Handle tool_use content block
536
+ * Handle tool_use content block.
537
+ * Skip if stream_event content_block_start already emitted this tool
538
+ * (avoids double emission — same pattern as text/thinking dedup).
534
539
  */
535
540
  handleToolUseBlock(block, callbacks) {
541
+ // If content_block_start already registered this tool, update input but skip re-emit
542
+ if (this.state.pendingToolCalls.has(block.id)) {
543
+ const existing = this.state.pendingToolCalls.get(block.id);
544
+ // Assistant message block may carry the full input (content_block_start had empty {})
545
+ if (block.input && Object.keys(block.input).length > 0) {
546
+ existing.input = block.input;
547
+ callbacks.onToolInputUpdate?.(block.id, block.input);
548
+ }
549
+ return;
550
+ }
536
551
  const toolCall = {
537
552
  id: block.id,
538
553
  name: block.name,
@@ -1 +1 @@
1
- {"version":3,"file":"streamHandler.js","sourceRoot":"","sources":["../../src/services/streamHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAmBhB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,MAAM,GAAG,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAE1C,mEAAmE;AACnE,SAAS,oBAAoB,CAAC,UAA2D;IACvF,IAAI,CAAC,UAAU;QAAE,OAAO,CAAC,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IACpE,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,aAAa;IAChB,KAAK,CAAiB;IACtB,gBAAgB,GAAW,CAAC,CAAC;IACrC,4DAA4D;IACpD,kBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC5D,2CAA2C;IACnC,aAAa,GAAwB,IAAI,GAAG,EAAE,CAAC;IACvD,4GAA4G;IACpG,uBAAuB,GAAY,KAAK,CAAC;IACjD,oHAAoH;IAC5G,2BAA2B,GAAY,KAAK,CAAC;IAErD,6EAA6E;IACrE,qBAAqB,GAAwB,IAAI,GAAG,EAAE,CAAC;IAE/D,yGAAyG;IACjG,sBAAsB,GAAG,CAAC,CAAC;IACnC,mEAAmE;IAC3D,iBAAiB,GAAG,MAAM,CAAC;IAEnC;QACE,IAAI,CAAC,KAAK,GAAG,2BAA2B,EAAE,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAe;QACxC,MAAM,MAAM,GAA4B,EAAE,CAAC;QAE3C,6DAA6D;QAC7D,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACzE,IAAI,SAAS;YAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAE3F,iEAAiE;QACjE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACxD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,YAAY,CAAC,KAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC3D,IAAI,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACnC,wDAAwD;YACxD,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;iBACtD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/D,+BAA+B;YAC/B,MAAM,CAAC,OAAO,GAAG,OAAO;iBACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;iBACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;iBACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;iBACrB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBACpB,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,mCAAmC;QACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACnD,uCAAuC;YACvC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC/C,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC;qBACrD,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACnD,IAAI,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;iBACtD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,UAAU,GAAG,OAAO;iBACxB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC7F,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,2BAA2B,EAAE,CAAC;QAC3C,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACzC,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;QAChC,sEAAsE;IACxE,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,OAAO,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAAmB;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAc,CAAC;QAEpC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACxC,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAC7C,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACxC,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAC1C,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAC1C,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAC/C,KAAK,eAAe;gBAClB,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAChD,KAAK,kBAAkB;gBACrB,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;YAClD;gBACE,0CAA0C;gBAC1C,OAAO;oBACL,IAAI,EAAE,cAAc,CAAC,MAAM;oBAC3B,UAAU,EAAE,OAAO;iBACG,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,OAAmB;QAC1C,MAAM,GAAG,GAAG,OAKX,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,IAAI;YACzB,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,OAAmB;QAC/C,MAAM,GAAG,GAAG,OAkBX,CAAC;QAEF,MAAM,aAAa,GAAyB,EAAE,CAAC;QAE/C,IAAI,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/D,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAED,kFAAkF;QAClF,kFAAkF;QAClF,MAAM,WAAW,GAAG,GAAG,CAAC,kBAAkB,KAAK,IAAI,CAAC;QACpD,MAAM,YAAY,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK;YACrD,CAAC,CAAC;gBACE,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY;gBAC3C,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa;gBAC7C,wBAAwB,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC;gBAC5E,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC;aACrE;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,SAAS;YAC9B,aAAa;YACb,YAAY;YACZ,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,OAAmB;QAC1C,MAAM,GAAG,GAAG,OAUX,CAAC;QAEF,MAAM,aAAa,GAAyB,EAAE,CAAC;QAE/C,IAAI,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/D,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,IAAI;YACzB,aAAa;YACb,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,OAAmB;QAC5C,MAAM,GAAG,GAAG,OA2BX,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,MAAM;YAC3B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;YACxB,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,QAAQ;YACrB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,YAAY,EAAE,GAAG,CAAC,cAAc;YAChC,QAAQ,EAAE,GAAG,CAAC,SAAS;YACvB,KAAK,EAAE,GAAG,CAAC,KAAK;gBACd,CAAC,CAAC;oBACE,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY;oBACnC,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa;oBACrC,oBAAoB,EAAE,GAAG,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC;oBAC5D,wBAAwB,EAAE,GAAG,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC;oBACpE,YAAY,EAAE,GAAG,CAAC,cAAc,IAAI,CAAC;oBACrC,aAAa,EAAE,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC;oBACnD,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;iBACnE;gBACH,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,OAAmB;QAC5C,MAAM,GAAG,GAAG,OAOX,CAAC;QAEF,MAAM,MAAM,GAAwB;YAClC,IAAI,EAAE,cAAc,CAAC,MAAM;YAC3B,UAAU,EAAE,OAAO;SACpB,CAAC;QAEF,IAAI,GAAG,CAAC,OAAO,KAAK,kBAAkB,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC/D,MAAM,CAAC,OAAO,GAAG,kBAAkB,CAAC;YACpC,MAAM,CAAC,eAAe,GAAG;gBACvB,OAAO,EAAE,GAAG,CAAC,gBAAgB,CAAC,OAAO;gBACrC,SAAS,EAAE,GAAG,CAAC,gBAAgB,CAAC,UAAU;aAC3C,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,KAAK,mBAAmB,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,OAMf,CAAC;YACF,MAAM,CAAC,OAAO,GAAG,mBAAmB,CAAC;YACrC,MAAM,CAAC,gBAAgB,GAAG;gBACxB,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;gBAC7B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,WAAW;gBACrC,UAAU,EAAE,OAAO,CAAC,WAAW;gBAC/B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS,EAAE,OAAO,CAAC,WAAW;aAC/B,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,OAAmB;QACjD,MAAM,GAAG,GAAG,OAiBX,CAAC;QAEF,IAAI,SAA6B,CAAC;QAClC,IAAI,aAAiC,CAAC;QACtC,IAAI,OAAiD,CAAC;QACtD,IAAI,cAAkE,CAAC;QAEvE,qDAAqD;QACrD,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,qBAAqB,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;YACxF,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,yDAAyD;QACzD,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,qBAAqB,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC5F,aAAa,GAAI,GAAG,CAAC,KAAK,CAAC,KAA0C,CAAC,QAAQ,CAAC;QACjF,CAAC;QAED,mDAAmD;QACnD,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,qBAAqB,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YAC9F,OAAO,GAAG;gBACR,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE;gBACpC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE;aACzC,CAAC;QACJ,CAAC;QAED,oDAAoD;QACpD,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,qBAAqB,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAC9F,cAAc,GAAG;gBACf,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;gBAC3B,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE;aAChD,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,YAAY;YACjC,SAAS,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,SAAS;YACvC,SAAS;YACT,aAAa;YACb,OAAO;YACP,cAAc;YACd,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,OAAmB;QAClD,MAAM,GAAG,GAAG,OAMX,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,aAAa;YAClC,SAAS,EAAE,GAAG,CAAC,WAAW;YAC1B,QAAQ,EAAE,GAAG,CAAC,SAAS;YACvB,eAAe,EAAE,GAAG,CAAC,kBAAkB,IAAI,SAAS;YACpD,kBAAkB,EAAE,GAAG,CAAC,oBAAoB;YAC5C,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,0BAA0B,CAAC,OAAmB;QACpD,MAAM,GAAG,GAAG,OAIX,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,cAAc,CAAC,gBAAgB;YACrC,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;YAC1B,mBAAmB,EAAE,GAAG,CAAC,sBAAsB,IAAI,EAAE;YACrD,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,iBAAiB,CACvB,KAA8B;QAE9B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAc,CAAC;QAEvC,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM;gBACT,OAAO;oBACL,IAAI,EAAE,gBAAgB,CAAC,IAAI;oBAC3B,IAAI,EAAG,KAAK,CAAC,IAAe,IAAI,EAAE;iBAChB,CAAC;YAEvB,KAAK,UAAU;gBACb,OAAO;oBACL,IAAI,EAAE,gBAAgB,CAAC,QAAQ;oBAC/B,EAAE,EAAG,KAAK,CAAC,EAAa,IAAI,EAAE;oBAC9B,IAAI,EAAG,KAAK,CAAC,IAAe,IAAI,EAAE;oBAClC,KAAK,EAAG,KAAK,CAAC,KAAiC,IAAI,EAAE;iBAChC,CAAC;YAE1B,KAAK,aAAa;gBAChB,OAAO;oBACL,IAAI,EAAE,gBAAgB,CAAC,WAAW;oBAClC,SAAS,EAAG,KAAK,CAAC,WAAsB,IAAI,EAAE;oBAC9C,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;wBACxC,CAAC,CAAC,KAAK,CAAC,OAAO;wBACf,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;4BAC5B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAE,CAAC,CAAC,IAAe,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;4BACtF,CAAC,CAAC,EAAE;oBACR,OAAO,EAAG,KAAK,CAAC,QAAoB,IAAI,KAAK;iBACrB,CAAC;YAE7B,KAAK,UAAU;gBACb,OAAO;oBACL,IAAI,EAAE,gBAAgB,CAAC,QAAQ;oBAC/B,QAAQ,EAAG,KAAK,CAAC,QAAmB,IAAI,EAAE;oBAC1C,SAAS,EAAG,KAAK,CAAC,SAAoB,IAAI,EAAE;iBACtB,CAAC;YAE3B;gBACE,yCAAyC;gBACzC,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,SAAuD,EACvD,SAA0B;QAE1B,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,aAAa,GAAiB;YAChC,EAAE,EAAE,EAAE;YACN,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,KAAK;SACf,CAAC;QAEF,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC1C,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBAEvC,mEAAmE;gBACnE,oEAAoE;gBACpE,mEAAmE;gBACnE,wEAAwE;gBACxE,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC1C,MAAM,SAAS,GAAG,MAA6B,CAAC;oBAChD,aAAa,GAAG;wBACd,EAAE,EAAE,SAAS,CAAC,IAAI;wBAClB,SAAS,EAAE,SAAS,CAAC,SAAS;wBAC9B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;wBACnC,IAAI,EAAE,IAAI;wBACV,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,KAAK,EAAE,SAAS,CAAC,KAAK;qBACvB,CAAC;oBACF,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;YACvB,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,cAAc,CACpB,OAAyB,EACzB,SAA0B;QAE1B,+DAA+D;QAC/D,SAAS,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAErC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,cAAc,CAAC,IAAI;gBACtB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACpC,MAAM;YAER,KAAK,cAAc,CAAC,SAAS;gBAC3B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACzC,MAAM;YAER,KAAK,cAAc,CAAC,IAAI;gBACtB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACpC,MAAM;YAER,KAAK,cAAc,CAAC,MAAM;gBACxB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACtC,MAAM;YAER,KAAK,cAAc,CAAC,MAAM;gBACxB,IAAI,CAAC,YAAY,CAAC,OAA8B,EAAE,SAAS,CAAC,CAAC;gBAC7D,MAAM;YAER,KAAK,cAAc,CAAC,YAAY;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,OAAmC,EAAE,SAAS,CAAC,CAAC;gBACvE,MAAM;YAER,KAAK,cAAc,CAAC,aAAa;gBAC/B,IAAI,CAAC,kBAAkB,CAAC,OAAoC,EAAE,SAAS,CAAC,CAAC;gBACzE,MAAM;YAER,KAAK,cAAc,CAAC,gBAAgB;gBAClC,IAAI,CAAC,oBAAoB,CAAC,OAAsC,EAAE,SAAS,CAAC,CAAC;gBAC7E,MAAM;QACV,CAAC;IACH,CAAC;IAED;;OAEG;IACK,UAAU,CAChB,OAA0B,EAC1B,SAA0B;QAE1B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC;QAEF,SAAS,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAElE,yDAAyD;QACzD,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC/D,SAAS,CAAC,WAAW,EAAE,CAAC;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACnC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;gBACnC,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,OAA+B,EAC/B,SAA0B;QAE1B,qEAAqE;QACrE,MAAM,YAAY,GAAI,OAAO,CAAC,UAAiD,CAAC,UAAU,CAAC;QAC3F,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;YAChD,SAAS,CAAC,aAAa,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,QAAQ,EAAE,CAAC;gBAC7C,qFAAqF;gBACrF,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC;oBACtC,SAAS,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACzC,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,QAAQ,EAAE,CAAC;gBACpD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,6EAA6E;QAC7E,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,SAAS,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACnD,oGAAoG;YACpG,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;YAC/B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,wBAAwB,GAAG,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC,YAAY,CAAC;QACrH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,eAAe,CACrB,KAAsB,EACtB,SAA0B;QAE1B,0EAA0E;QAC1E,qEAAqE;QACrE,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,8EAA8E;QAC9E,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,cAAc,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,IAAI,CAAC;QAEzC,SAAS,CAAC,WAAW,EAAE,CAAC;YACtB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE;YACrC,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE;YACnC,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,KAAyB,EACzB,SAA0B;QAE1B,MAAM,QAAQ,GAAoB;YAChC,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,SAAS;SAClB,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpD,6CAA6C;QAC7C,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACK,UAAU,CAChB,OAA0B,EAC1B,SAA0B;QAE1B,2FAA2F;QAC3F,MAAM,MAAM,GAAG,OAAO,CAAC,UAAoD,CAAC;QAC5E,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAE/C,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,WAAW,EAAE,CAAC;gBAChD,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAE7C,iEAAiE;gBACjE,IAAI,WAAW,IAAI,IAAI,CAAC,sBAAsB,GAAG,CAAC,EAAE,CAAC;oBACnD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;oBACjD,8EAA8E;oBAC9E,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,IAAI,WAAW,IAAI,IAAI,CAAC,sBAAsB,GAAG,CAAC,EAAE,CAAC;YACnD,SAAS,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED;;OAEG;IACK,qBAAqB,CAC3B,KAA4B,EAC5B,SAA0B;QAE1B,yEAAyE;QACzE,MAAM,UAAU,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,uCAAuC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5F,MAAM,MAAM,GAAe;YACzB,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO;YACvB,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY;YAChD,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;SAChD,CAAC;QAEF,2CAA2C;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC;YACjC,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,SAAS,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACK,iBAAiB,CACvB,OAAiC,EACjC,SAA0B;QAE1B,8FAA8F;QAC9F,2GAA2G;QAC3G,MAAM,YAAY,GAAI,OAAO,CAAC,UAAiD,CAAC,UAAU,CAAC;QAC3F,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;YAChD,SAAS,CAAC,aAAa,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC;QAED,0BAA0B;QAC1B,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;YACxC,SAAS,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;QAED,sBAAsB;QACtB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,CAAC;YAEhD,2DAA2D;YAC3D,SAAS,CAAC,WAAW,EAAE,CAAC;gBACtB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE;gBACrC,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACnC,OAAO,EAAE,OAAO,CAAC,SAAS;gBAC1B,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;QACL,CAAC;QAED,4CAA4C;QAC5C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAoB;gBAChC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;gBACtB,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;gBAC1B,KAAK,EAAE,EAAE,EAAE,mDAAmD;gBAC9D,MAAM,EAAE,SAAS;aAClB,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC9D,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;YAEvC,8CAA8C;YAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,UAA4C,CAAC;YACpE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,oDAAoD;QACpD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;YAEtD,iDAAiD;YACjD,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7D,MAAM,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;YAC9C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAEhD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAE7C,yDAAyD;YACzD,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAA4B,CAAC;gBAEvE,IAAI,MAAM,EAAE,CAAC;oBACX,6CAA6C;oBAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC5D,IAAI,WAAW,EAAE,CAAC;wBAChB,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC;oBAClC,CAAC;oBAED,GAAG,CAAC,KAAK,CAAC,qCAAqC,MAAM,UAAU,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACrG,oCAAoC;oBACpC,SAAS,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,sFAAsF;gBACtF,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAC7D,IAAI,GAAG,GAAG,QAAQ,IAAI,GAAG,EAAE,CAAC;wBAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;wBAC/D,IAAI,OAAO,EAAE,CAAC;4BACZ,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;4BAC5C,GAAG,CAAC,OAAO,CAAC,oCAAoC,MAAM,UAAU,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;4BACjI,SAAS,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;wBACjD,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,YAAY,CAClB,OAA4B,EAC5B,SAA0B;QAE1B,mFAAmF;QACnF,MAAM,GAAG,GAAG,OAAO,CAAC,UAAoG,CAAC;QACzH,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC3B,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtD,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACrE,GAAG,CAAC,KAAK,CAAC,8BAA8B,SAAS,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,qFAAqF;YACrF,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC5C,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;gBAC3C,SAAS,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,KAAK,kBAAkB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YACtE,qEAAqE;YACrE,IAAI,OAAO,CAAC,eAAe,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC;YAClE,CAAC;YACD,SAAS,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,KAAK,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACxE,SAAS,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,OAAkC,EAClC,SAA0B;QAE1B,SAAS,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9F,CAAC;IAED;;OAEG;IACK,oBAAoB,CAC1B,OAAoC,EACpC,SAA0B;QAE1B,SAAS,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACK,YAAY,CAClB,OAA4B,EAC5B,SAA0B;QAE1B,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;QAE7B,4DAA4D;QAC5D,IAAI,OAAO,CAAC,KAAK,EAAE,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC;QACvD,CAAC;QAED,gEAAgE;QAChE,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACrD,SAAS,CAAC,aAAa,EAAE,CAAC;gBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAiB;YAC7B,EAAE,EAAE,OAAO,CAAC,IAAI;YAChB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;YACnC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;QAEF,SAAS,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,OAAO;QACb,kDAAkD;QAClD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"streamHandler.js","sourceRoot":"","sources":["../../src/services/streamHandler.ts"],"names":[],"mappings":"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"}