@idea1/cli 1.8.3 → 1.9.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 (107) hide show
  1. package/README.md +117 -55
  2. package/dist/cli/resolver.d.ts +1 -0
  3. package/dist/cli/resolver.d.ts.map +1 -1
  4. package/dist/cli/resolver.js +5 -0
  5. package/dist/cli/resolver.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +2 -1
  8. package/dist/cli.js.map +1 -1
  9. package/dist/commands/approve-pr.d.ts.map +1 -1
  10. package/dist/commands/approve-pr.js +20 -37
  11. package/dist/commands/approve-pr.js.map +1 -1
  12. package/dist/commands/attach-project-item.js +1 -1
  13. package/dist/commands/attach-project-item.js.map +1 -1
  14. package/dist/commands/close-worktree.d.ts.map +1 -1
  15. package/dist/commands/close-worktree.js +4 -3
  16. package/dist/commands/close-worktree.js.map +1 -1
  17. package/dist/commands/help.d.ts.map +1 -1
  18. package/dist/commands/help.js +9 -5
  19. package/dist/commands/help.js.map +1 -1
  20. package/dist/commands/join-project-item.d.ts.map +1 -1
  21. package/dist/commands/join-project-item.js +22 -48
  22. package/dist/commands/join-project-item.js.map +1 -1
  23. package/dist/commands/next-workflow-step.d.ts.map +1 -1
  24. package/dist/commands/next-workflow-step.js +20 -21
  25. package/dist/commands/next-workflow-step.js.map +1 -1
  26. package/dist/commands/ready-for-approval.d.ts.map +1 -1
  27. package/dist/commands/ready-for-approval.js +26 -18
  28. package/dist/commands/ready-for-approval.js.map +1 -1
  29. package/dist/commands/release.d.ts +3 -1
  30. package/dist/commands/release.d.ts.map +1 -1
  31. package/dist/commands/release.js +98 -19
  32. package/dist/commands/release.js.map +1 -1
  33. package/dist/commands/ship-local-changes.d.ts.map +1 -1
  34. package/dist/commands/ship-local-changes.js +3 -2
  35. package/dist/commands/ship-local-changes.js.map +1 -1
  36. package/dist/commands/start-agent-implementation.js +2 -2
  37. package/dist/commands/start-agent-implementation.js.map +1 -1
  38. package/dist/commands/start-dev-implementation.d.ts.map +1 -1
  39. package/dist/commands/start-dev-implementation.js +8 -3
  40. package/dist/commands/start-dev-implementation.js.map +1 -1
  41. package/dist/commands/start.d.ts +2 -2
  42. package/dist/commands/start.d.ts.map +1 -1
  43. package/dist/commands/start.js +27 -21
  44. package/dist/commands/start.js.map +1 -1
  45. package/dist/interactive.d.ts.map +1 -1
  46. package/dist/interactive.js +164 -0
  47. package/dist/interactive.js.map +1 -1
  48. package/dist/jobs/job.d.ts +81 -0
  49. package/dist/jobs/job.d.ts.map +1 -0
  50. package/dist/jobs/job.js +258 -0
  51. package/dist/jobs/job.js.map +1 -0
  52. package/dist/jobs/targets.d.ts +58 -0
  53. package/dist/jobs/targets.d.ts.map +1 -0
  54. package/dist/jobs/targets.js +215 -0
  55. package/dist/jobs/targets.js.map +1 -0
  56. package/dist/lib/logger.d.ts +10 -0
  57. package/dist/lib/logger.d.ts.map +1 -1
  58. package/dist/lib/logger.js +16 -0
  59. package/dist/lib/logger.js.map +1 -1
  60. package/dist/lib/prompt.d.ts +7 -0
  61. package/dist/lib/prompt.d.ts.map +1 -1
  62. package/dist/lib/prompt.js +29 -0
  63. package/dist/lib/prompt.js.map +1 -1
  64. package/dist/lib/shell.d.ts +2 -1
  65. package/dist/lib/shell.d.ts.map +1 -1
  66. package/dist/lib/shell.js +17 -1
  67. package/dist/lib/shell.js.map +1 -1
  68. package/dist/services/git.d.ts +7 -0
  69. package/dist/services/git.d.ts.map +1 -1
  70. package/dist/services/git.js +10 -7
  71. package/dist/services/git.js.map +1 -1
  72. package/dist/services/github.d.ts +13 -0
  73. package/dist/services/github.d.ts.map +1 -1
  74. package/dist/services/github.js +35 -3
  75. package/dist/services/github.js.map +1 -1
  76. package/dist/services/setup.d.ts +4 -2
  77. package/dist/services/setup.d.ts.map +1 -1
  78. package/dist/services/setup.js +43 -13
  79. package/dist/services/setup.js.map +1 -1
  80. package/dist/services/worktree.js +1 -1
  81. package/dist/services/worktree.js.map +1 -1
  82. package/dist/types/index.d.ts +7 -0
  83. package/dist/types/index.d.ts.map +1 -1
  84. package/dist/workflow/engine/approval-flow.d.ts +2 -1
  85. package/dist/workflow/engine/approval-flow.d.ts.map +1 -1
  86. package/dist/workflow/engine/approval-flow.js +35 -1
  87. package/dist/workflow/engine/approval-flow.js.map +1 -1
  88. package/dist/workflow/engine/handlers/agent-implementation.d.ts.map +1 -1
  89. package/dist/workflow/engine/handlers/agent-implementation.js +3 -10
  90. package/dist/workflow/engine/handlers/agent-implementation.js.map +1 -1
  91. package/dist/workflow/engine/handlers/dev-implementation.d.ts +2 -2
  92. package/dist/workflow/engine/handlers/dev-implementation.d.ts.map +1 -1
  93. package/dist/workflow/engine/handlers/dev-implementation.js +13 -7
  94. package/dist/workflow/engine/handlers/dev-implementation.js.map +1 -1
  95. package/dist/workflow/engine/release-engine.d.ts +7 -1
  96. package/dist/workflow/engine/release-engine.d.ts.map +1 -1
  97. package/dist/workflow/engine/release-engine.js +16 -6
  98. package/dist/workflow/engine/release-engine.js.map +1 -1
  99. package/dist/workflow/engine/ship-flow.d.ts +2 -2
  100. package/dist/workflow/engine/ship-flow.d.ts.map +1 -1
  101. package/dist/workflow/engine/ship-flow.js +3 -9
  102. package/dist/workflow/engine/ship-flow.js.map +1 -1
  103. package/dist/workflow/engine/workflow-engine.d.ts +67 -13
  104. package/dist/workflow/engine/workflow-engine.d.ts.map +1 -1
  105. package/dist/workflow/engine/workflow-engine.js +137 -47
  106. package/dist/workflow/engine/workflow-engine.js.map +1 -1
  107. package/package.json +2 -2
@@ -1,8 +1,11 @@
1
1
  import chalk from 'chalk';
2
2
  import boxen from 'boxen';
3
3
  import readline from 'readline';
4
+ import { existsSync } from 'fs';
4
5
  import { getAllCommands, getCommand } from './commands/index.js';
6
+ import { describeRun, setBackgroundJobHost, summarizeJob } from './jobs/job.js';
5
7
  import { logger } from './lib/logger.js';
8
+ import { promptConfirm, promptSelect } from './lib/prompt.js';
6
9
  import { exec } from './lib/shell.js';
7
10
  import { VERSION } from './version.js';
8
11
  import { getProjectItemSummaryForCurrentBranch } from './workflow/engine/workflow-engine.js';
@@ -95,6 +98,7 @@ function displayCommands() {
95
98
  const aliases = cmd.aliases.length > 0 ? chalk.dim(` (${cmd.aliases.join(', ')})`) : '';
96
99
  console.log(` ${chalk.cyan('/' + cmd.name)}${aliases} - ${cmd.description}`);
97
100
  }
101
+ console.log(` ${chalk.cyan('/jobs')} - Watch the commands running in the background`);
98
102
  console.log(` ${chalk.cyan('/exit')}${chalk.dim(' (q, quit)')} - Exit the CLI`);
99
103
  logger.newline();
100
104
  }
@@ -134,6 +138,13 @@ function buildCommandMenuItems() {
134
138
  matchTerms: ['/' + cmd.name, ...cmd.aliases.map(a => '/' + a)]
135
139
  });
136
140
  }
141
+ items.push({
142
+ commandName: '/jobs',
143
+ aliasText: '',
144
+ description: 'Watch the commands running in the background',
145
+ value: '/jobs',
146
+ matchTerms: ['/jobs']
147
+ });
137
148
  // Add exit command
138
149
  items.push({
139
150
  commandName: '/exit',
@@ -428,6 +439,7 @@ function createInteractivePrompt() {
428
439
  };
429
440
  let keypressHandler;
430
441
  const cleanup = () => {
442
+ printAbovePrompt = null;
431
443
  process.stdin.off('keypress', keypressHandler);
432
444
  escapeHandler.dispose();
433
445
  closeMenu();
@@ -456,6 +468,18 @@ function createInteractivePrompt() {
456
468
  cleanup();
457
469
  resolve(currentInput);
458
470
  };
471
+ // Print notices above the prompt while it waits, then draw it again below them.
472
+ printAbovePrompt = lines => {
473
+ const wasMenuOpen = menuOpen;
474
+ closeMenu();
475
+ process.stdout.write('\r\x1b[2K');
476
+ process.stdout.write(lines.join('\n') + '\n');
477
+ renderPromptLine();
478
+ if (wasMenuOpen) {
479
+ openMenu();
480
+ renderMenu();
481
+ }
482
+ };
459
483
  // Initial prompt
460
484
  renderPromptLine();
461
485
  keypressHandler = (str, key) => {
@@ -531,15 +555,136 @@ function createInteractivePrompt() {
531
555
  process.stdin.on('keypress', keypressHandler);
532
556
  });
533
557
  }
558
+ /** The jobs started in this session, which run in the background while the prompt is in use. */
559
+ const jobs = [];
560
+ /** Prints lines above the command prompt while it is waiting for input; null while it is not. */
561
+ let printAbovePrompt = null;
562
+ /** Notices that arrived while the prompt was not showing, printed before it shows next. */
563
+ const pendingNotices = [];
564
+ function notify(lines) {
565
+ if (printAbovePrompt) {
566
+ printAbovePrompt(lines);
567
+ }
568
+ else {
569
+ pendingNotices.push(lines);
570
+ }
571
+ }
572
+ function flushNotices() {
573
+ for (const lines of pendingNotices.splice(0)) {
574
+ console.log(lines.join('\n'));
575
+ }
576
+ }
577
+ function addBackgroundJob(job) {
578
+ jobs.push(job);
579
+ void job.done.then(() => notify(['', ...summarizeJob(job), chalk.dim('Type /jobs for details.')]));
580
+ }
581
+ function describeJob(job) {
582
+ const state = job.isRunning ? 'running' : job.succeeded ? 'succeeded' : 'did not succeed';
583
+ return `Job ${job.id} - ${job.spec.title} (${state})`;
584
+ }
585
+ /**
586
+ * `/jobs`: every job of the session with each run's state, then a job to watch live.
587
+ */
588
+ async function showJobs() {
589
+ if (jobs.length === 0) {
590
+ logger.info('No jobs have been started in this session. A command run on several targets runs as a job.');
591
+ return;
592
+ }
593
+ logger.newline();
594
+ for (const job of jobs) {
595
+ console.log(chalk.bold(describeJob(job)));
596
+ for (const run of job.allRuns) {
597
+ console.log(` ${describeRun(run)}`);
598
+ }
599
+ console.log(chalk.dim(` Logs: ${job.logDirectory}`));
600
+ }
601
+ logger.newline();
602
+ const id = await promptSelect('Watch a job (Esc to go back):', jobs.map(job => ({ label: describeJob(job), value: String(job.id) })));
603
+ const job = jobs.find(candidate => String(candidate.id) === id);
604
+ if (job) {
605
+ await watchJob(job);
606
+ }
607
+ }
608
+ /** How many of each run's latest lines the live view starts with. */
609
+ const WATCH_BACKLOG_LINES = 15;
610
+ /**
611
+ * Follow a job live: each run's latest output, then everything its runs write and every step they
612
+ * reach as it happens, until Esc returns to the prompt. The job keeps running either way.
613
+ */
614
+ function watchJob(job) {
615
+ const prefix = (run) => chalk.dim(`[${run.label}] `);
616
+ logger.header(`${describeJob(job)} - Esc to go back`);
617
+ for (const run of job.allRuns) {
618
+ for (const line of run.tail.slice(-WATCH_BACKLOG_LINES)) {
619
+ console.log(prefix(run) + line);
620
+ }
621
+ }
622
+ for (const run of job.allRuns) {
623
+ console.log(describeRun(run));
624
+ }
625
+ const onOutput = (run, line) => console.log(prefix(run) + line);
626
+ const onStep = (run) => console.log(prefix(run) + (run.status === 'running' ? chalk.cyan(`→ ${run.step}`) : describeRun(run)));
627
+ const onDone = () => console.log(['', ...summarizeJob(job), chalk.dim('Esc to go back')].join('\n'));
628
+ job.on('output', onOutput);
629
+ job.on('step', onStep);
630
+ job.once('done', onDone);
631
+ return new Promise(resolve => {
632
+ readline.emitKeypressEvents(process.stdin);
633
+ if (process.stdin.isTTY) {
634
+ process.stdin.setRawMode(true);
635
+ }
636
+ process.stdin.resume();
637
+ const keypressHandler = (_str, key) => {
638
+ if (key?.name !== 'escape' && !(key?.ctrl && key.name === 'c')) {
639
+ return;
640
+ }
641
+ process.stdin.off('keypress', keypressHandler);
642
+ job.off('output', onOutput);
643
+ job.off('step', onStep);
644
+ job.off('done', onDone);
645
+ if (process.stdin.isTTY) {
646
+ process.stdin.setRawMode(false);
647
+ }
648
+ process.stdin.pause();
649
+ logger.newline();
650
+ resolve();
651
+ };
652
+ process.stdin.on('keypress', keypressHandler);
653
+ });
654
+ }
655
+ /**
656
+ * Whether to leave the CLI: straight away when no job is running, otherwise once the user agrees
657
+ * to stop the running jobs - which are then stopped.
658
+ */
659
+ async function confirmExit() {
660
+ const running = jobs.filter(job => job.isRunning);
661
+ if (running.length === 0) {
662
+ return true;
663
+ }
664
+ const stop = await promptConfirm(`${running.length} job(s) are still running. Stop them and exit?`, { default: false });
665
+ if (!stop) {
666
+ return false;
667
+ }
668
+ for (const job of running) {
669
+ job.stop();
670
+ }
671
+ await Promise.all(running.map(job => job.done));
672
+ return true;
673
+ }
534
674
  /**
535
675
  * Run the interactive REPL
536
676
  */
537
677
  export async function runInteractiveMode(repoRoot) {
538
678
  await displayHeader(repoRoot);
539
679
  displayCommands();
680
+ // Commands run on several targets become background jobs, so the prompt stays in use.
681
+ setBackgroundJobHost({ add: addBackgroundJob });
682
+ // A command can move into a branch's checkout; the session stays where it started.
683
+ const startDirectory = process.cwd();
540
684
  // eslint-disable-next-line no-constant-condition
541
685
  while (true) {
542
686
  try {
687
+ flushNotices();
543
688
  const selectedCommand = await createInteractivePrompt();
544
689
  if (!selectedCommand) {
545
690
  continue;
@@ -551,9 +696,20 @@ export async function runInteractiveMode(repoRoot) {
551
696
  }
552
697
  // Handle exit commands
553
698
  if (['exit', 'q', 'quit'].includes(command.toLowerCase())) {
699
+ if (!await confirmExit().catch(() => false)) {
700
+ continue;
701
+ }
554
702
  logger.info('Goodbye!');
555
703
  break;
556
704
  }
705
+ if (command === 'jobs') {
706
+ await showJobs().catch((error) => {
707
+ if (!error.message?.includes('command cancelled')) {
708
+ logger.error(error.message);
709
+ }
710
+ });
711
+ continue;
712
+ }
557
713
  // Handle help shortcut
558
714
  if (command === '?' || command === 'commands') {
559
715
  displayCommands();
@@ -584,12 +740,20 @@ export async function runInteractiveMode(repoRoot) {
584
740
  }
585
741
  logger.error(err.message);
586
742
  }
743
+ finally {
744
+ if (process.cwd() !== startDirectory && existsSync(startDirectory)) {
745
+ process.chdir(startDirectory);
746
+ }
747
+ }
587
748
  }
588
749
  catch (error) {
589
750
  // Handle Ctrl+C gracefully
590
751
  const err = error;
591
752
  if (err.message?.includes('force closed') || err.name === 'ExitPromptError') {
592
753
  logger.newline();
754
+ if (!await confirmExit().catch(() => false)) {
755
+ continue;
756
+ }
593
757
  logger.info('Goodbye!');
594
758
  break;
595
759
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,81 @@
1
+ import { EventEmitter } from 'events';
2
+ export type RunStatus = 'running' | 'succeeded' | 'failed' | 'stopped' | 'skipped';
3
+ /** One CLI command a job runs, in its own process. */
4
+ export interface RunSpec {
5
+ /** What progress output calls the run, e.g. `#590 Fix login` or a branch name. */
6
+ label: string;
7
+ /** The command and its options, as on the command line. */
8
+ args: string[];
9
+ }
10
+ export interface JobSpec {
11
+ /** What the job is, e.g. `approve-pr on 3 targets`. */
12
+ title: string;
13
+ runs: RunSpec[];
14
+ /** Run once every run succeeded; skipped otherwise. */
15
+ followUp: RunSpec | null;
16
+ /** Stop every other run as soon as one fails (the follow-up is skipped either way). */
17
+ failFast: boolean;
18
+ }
19
+ /** One run of a job: its process, where it is, and how it ended. */
20
+ export declare class JobRun {
21
+ readonly spec: RunSpec;
22
+ readonly logPath: string;
23
+ status: RunStatus;
24
+ /** The last step the run reported. */
25
+ step: string;
26
+ /** Why the run failed: the last error it reported, or its exit code. */
27
+ error: string | null;
28
+ /** The run's most recent output lines. */
29
+ readonly tail: string[];
30
+ private child;
31
+ private stopRequested;
32
+ constructor(spec: RunSpec, logPath: string);
33
+ get label(): string;
34
+ /** Start the run and settle once it has exited, reporting each step and output line. */
35
+ run(cwd: string, onStep: () => void, onOutput: (line: string) => void): Promise<void>;
36
+ stop(): void;
37
+ skip(): void;
38
+ }
39
+ /**
40
+ * A running job. Emits `step` (run) when a run reports a step or ends, `output` (run, line) for
41
+ * every line a run writes, and `done` once every run has ended.
42
+ */
43
+ export declare class Job extends EventEmitter {
44
+ readonly spec: JobSpec;
45
+ readonly id: number;
46
+ readonly runs: JobRun[];
47
+ readonly followUp: JobRun | null;
48
+ readonly done: Promise<void>;
49
+ /** Where the runs' log files are. */
50
+ readonly logDirectory: string;
51
+ private constructor();
52
+ /**
53
+ * Start a job in the main clone, its logs kept in the clone's `.idea1/jobs` folder - one folder
54
+ * per job; the CLI's setup keeps the folder in `.idea1/.gitignore` - after pruning the logs of
55
+ * old jobs.
56
+ */
57
+ static start(spec: JobSpec): Promise<Job>;
58
+ get isRunning(): boolean;
59
+ /** Whether every run, and the follow-up, succeeded. */
60
+ get succeeded(): boolean;
61
+ /** Every run, the follow-up last. */
62
+ get allRuns(): JobRun[];
63
+ stop(): void;
64
+ private runAll;
65
+ }
66
+ /** One line saying where a run is, or how it ended. */
67
+ export declare function describeRun(run: JobRun): string;
68
+ /** The job's outcome: a headline and one line per run, with the log of each run that failed. */
69
+ export declare function summarizeJob(job: Job): string[];
70
+ /** Where a job goes when the CLI can run it in the background: the interactive CLI. */
71
+ export interface BackgroundJobHost {
72
+ add(job: Job): void;
73
+ }
74
+ export declare function setBackgroundJobHost(host: BackgroundJobHost): void;
75
+ /**
76
+ * Run a job: in the background when the interactive CLI hosts it, which tells the user when it is
77
+ * done; otherwise in the foreground, reporting each run's steps as they happen and the outcome at
78
+ * the end. A foreground job that did not succeed throws, so the command fails.
79
+ */
80
+ export declare function runJob(spec: JobSpec): Promise<void>;
81
+ //# sourceMappingURL=job.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../src/jobs/job.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA8BtC,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEnF,sDAAsD;AACtD,MAAM,WAAW,OAAO;IACtB,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,OAAO;IACtB,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,uDAAuD;IACvD,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,uFAAuF;IACvF,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,oEAAoE;AACpE,qBAAa,MAAM;IAWL,QAAQ,CAAC,IAAI,EAAE,OAAO;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM;IAV5D,MAAM,EAAE,SAAS,CAAa;IAC9B,sCAAsC;IACtC,IAAI,SAAc;IAClB,wEAAwE;IACxE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAM;IAC7B,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,aAAa,CAAS;gBAET,IAAI,EAAE,OAAO,EAAW,OAAO,EAAE,MAAM;IAE5D,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,wFAAwF;IAClF,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAmD3F,IAAI,IAAI,IAAI;IAOZ,IAAI,IAAI,IAAI;CAGb;AAiCD;;;GAGG;AACH,qBAAa,GAAI,SAAQ,YAAY;IAQf,QAAQ,CAAC,IAAI,EAAE,OAAO;IAP1C,QAAQ,CAAC,EAAE,SAAe;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,qCAAqC;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,OAAO;IAUP;;;;OAIG;WACU,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAW/C,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,uDAAuD;IACvD,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,qCAAqC;IACrC,IAAI,OAAO,IAAI,MAAM,EAAE,CAEtB;IAED,IAAI,IAAI,IAAI;YAME,MAAM;CAsBrB;AAED,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,CAc/C;AAED,uFAAuF;AACvF,MAAM,WAAW,iBAAiB;IAChC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;CACrB;AAID,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAElE;AAED;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBzD"}