@xenosystem/blocks 0.13.11 → 0.13.13
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.
- package/dist/chunk-6XVFYPVH.js +511 -0
- package/dist/data/index.js +2 -4
- package/dist/edit/index.js +5 -7
- package/dist/icons/index.js +2 -4
- package/dist/ops/index.d.ts +231 -19
- package/dist/ops/index.js +590 -372
- package/dist/time/index.js +1 -2
- package/package.json +3 -3
- package/dist/chunk-K7YLLV2W.js +0 -132
- package/dist/chunk-W4PTX2Y4.js +0 -414
package/dist/ops/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { PanelModule, PanelManifest } from '@xenosystem/block-sdk';
|
|
2
|
-
import { ReactNode } from 'react';
|
|
1
|
+
import { PanelModule, PanelManifest, BlockDeclaration } from '@xenosystem/block-sdk';
|
|
2
|
+
import { ReactNode, ReactElement } from 'react';
|
|
3
3
|
import { ThrottleClock } from '@xenosystem/tree-core';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -433,6 +433,18 @@ declare class ConsoleController {
|
|
|
433
433
|
/** Every source seen, with its contribution count and current visibility. */
|
|
434
434
|
sources(): XenoLogSource[];
|
|
435
435
|
/** Follow the tail. Auto-disabled by the view when the user scrolls up. */
|
|
436
|
+
private expandedId;
|
|
437
|
+
private viewport;
|
|
438
|
+
/** Which record's data is expanded under its row, if any. */
|
|
439
|
+
getExpanded(): string | null;
|
|
440
|
+
/** Toggle a record's expanded detail (only records carrying `data` expand). */
|
|
441
|
+
toggleExpanded(recordId: string): void;
|
|
442
|
+
/** The scroller reports its viewport; the view state windows the rows from it. */
|
|
443
|
+
setViewport(height: number, scrollTop: number): void;
|
|
444
|
+
getViewport(): {
|
|
445
|
+
height: number;
|
|
446
|
+
scrollTop: number;
|
|
447
|
+
};
|
|
436
448
|
setFollow(follow: boolean): void;
|
|
437
449
|
/** Collapse adjacent duplicates. */
|
|
438
450
|
setCollapse(collapse: boolean): void;
|
|
@@ -512,7 +524,101 @@ declare const CONSOLE_PANEL_ID = "xeno.core.console";
|
|
|
512
524
|
declare const consoleManifest: PanelManifest;
|
|
513
525
|
|
|
514
526
|
/**
|
|
515
|
-
* The Console panel
|
|
527
|
+
* The Console panel AS A DECLARATION — the fourteenth declared block, and the second virtualized list
|
|
528
|
+
* (after history): a multiplexed log.
|
|
529
|
+
*
|
|
530
|
+
* Everything drawn is data: the toolbar (search, the minimum-level control, the error/warn counts,
|
|
531
|
+
* copy and clear), the per-source `FilterChip`s (only when there is more than one stream), the
|
|
532
|
+
* empty states, the windowed rows — each a `Row` whose label is the time, the level `Badge`, the
|
|
533
|
+
* source and the message, with a repeat badge trailing and the expanded record as a `Code` block
|
|
534
|
+
* under it — and the status bar. What a declaration cannot hold: the SCROLLER (`console/Scroller`,
|
|
535
|
+
* the element the virtualizer measures and follow-mode pins to the bottom) — the one runtime-bound
|
|
536
|
+
* unit. Which row is expanded lives in the controller now, not in React state.
|
|
537
|
+
*/
|
|
538
|
+
|
|
539
|
+
interface ConsoleViewRow {
|
|
540
|
+
id: string;
|
|
541
|
+
time?: string;
|
|
542
|
+
level: string;
|
|
543
|
+
tone: 'neutral' | 'info' | 'warning' | 'error';
|
|
544
|
+
source?: string;
|
|
545
|
+
message: string;
|
|
546
|
+
repeat?: string;
|
|
547
|
+
expanded: boolean;
|
|
548
|
+
detail?: string;
|
|
549
|
+
}
|
|
550
|
+
interface ConsoleViewSource {
|
|
551
|
+
id: string;
|
|
552
|
+
label: string;
|
|
553
|
+
on: boolean;
|
|
554
|
+
title: string;
|
|
555
|
+
}
|
|
556
|
+
interface ConsoleViewModel {
|
|
557
|
+
search: string;
|
|
558
|
+
levels: {
|
|
559
|
+
value: string;
|
|
560
|
+
label: string;
|
|
561
|
+
}[];
|
|
562
|
+
level: string;
|
|
563
|
+
errors?: string;
|
|
564
|
+
warns?: string;
|
|
565
|
+
multiSource: boolean;
|
|
566
|
+
sources: ConsoleViewSource[];
|
|
567
|
+
empty: boolean;
|
|
568
|
+
emptyTitle: string;
|
|
569
|
+
emptyHint: string;
|
|
570
|
+
listed: boolean;
|
|
571
|
+
rowHeight: number;
|
|
572
|
+
totalHeight: number;
|
|
573
|
+
offsetTop: number;
|
|
574
|
+
rows: ConsoleViewRow[];
|
|
575
|
+
countLabel: string;
|
|
576
|
+
followLabel?: string;
|
|
577
|
+
}
|
|
578
|
+
type ConsoleUiIntent = {
|
|
579
|
+
kind: 'search';
|
|
580
|
+
value: string;
|
|
581
|
+
} | {
|
|
582
|
+
kind: 'level';
|
|
583
|
+
level: string;
|
|
584
|
+
} | {
|
|
585
|
+
kind: 'copyVisible';
|
|
586
|
+
} | {
|
|
587
|
+
kind: 'clear';
|
|
588
|
+
} | {
|
|
589
|
+
kind: 'source';
|
|
590
|
+
id: string;
|
|
591
|
+
on: boolean;
|
|
592
|
+
} | {
|
|
593
|
+
kind: 'row';
|
|
594
|
+
id: string;
|
|
595
|
+
} | {
|
|
596
|
+
kind: 'contextMenu';
|
|
597
|
+
id: string;
|
|
598
|
+
x: number;
|
|
599
|
+
y: number;
|
|
600
|
+
};
|
|
601
|
+
interface ConsoleViewOptions {
|
|
602
|
+
rowHeight?: number;
|
|
603
|
+
showTimestamps?: boolean;
|
|
604
|
+
emptyHint?: string;
|
|
605
|
+
}
|
|
606
|
+
/** Derive the view from the live controller — the runtime calls this on every draw. */
|
|
607
|
+
declare function consoleViewState(c: ConsoleController, options?: ConsoleViewOptions): ConsoleViewModel;
|
|
608
|
+
declare function applyConsoleUi(c: ConsoleController, intent: ConsoleUiIntent): void;
|
|
609
|
+
declare const consoleViewManifest: PanelManifest;
|
|
610
|
+
declare const BEHAVIOURS$1: {
|
|
611
|
+
'ops/consolePanelView': (inputs: Record<string, unknown>) => ConsoleViewModel;
|
|
612
|
+
};
|
|
613
|
+
/** The runtime-bound unit: the scroller the virtualizer measures and follow-mode pins. */
|
|
614
|
+
declare const CONSOLE_RUNTIME_UNITS: readonly ["console/Scroller"];
|
|
615
|
+
declare const CONSOLE_DECLARATION: BlockDeclaration;
|
|
616
|
+
|
|
617
|
+
/**
|
|
618
|
+
* The Console panel view — the CODE VIEW of `CONSOLE_DECLARATION`, drawing the same
|
|
619
|
+
* `ConsoleViewModel` byte-identical (the equivalence suite holds the two together). The one thing this
|
|
620
|
+
* file owns that the declaration cannot is `console/Scroller`: the element the virtualizer measures,
|
|
621
|
+
* whose scroll position the controller mirrors, and which follow-mode pins to the bottom.
|
|
516
622
|
*
|
|
517
623
|
* Composes `@xenosystem/components/chrome`; the host must ensure `@xenosystem/workbench/primitives.css` is
|
|
518
624
|
* present.
|
|
@@ -521,14 +627,18 @@ declare const consoleManifest: PanelManifest;
|
|
|
521
627
|
*/
|
|
522
628
|
|
|
523
629
|
/** Props for {@link ConsolePanelView}. */
|
|
524
|
-
interface ConsolePanelViewProps {
|
|
630
|
+
interface ConsolePanelViewProps extends ConsoleViewOptions {
|
|
525
631
|
controller: ConsoleController;
|
|
526
|
-
rowHeight?: number;
|
|
527
|
-
showTimestamps?: boolean;
|
|
528
|
-
emptyHint?: string;
|
|
529
632
|
}
|
|
633
|
+
/** `console/Scroller` — measures the viewport for the virtualizer, mirrors scroll, pins follow-mode to the bottom. */
|
|
634
|
+
declare function ConsoleScroller({ controller, rowHeight, children }: {
|
|
635
|
+
controller: ConsoleController;
|
|
636
|
+
rowHeight?: number;
|
|
637
|
+
children?: ReactNode;
|
|
638
|
+
}): ReactElement;
|
|
639
|
+
declare function consoleRuntimeComponents(controller: ConsoleController, rowHeight?: number): Record<(typeof CONSOLE_RUNTIME_UNITS)[number], React.ComponentType<any>>;
|
|
530
640
|
/** The Console panel view. */
|
|
531
|
-
declare function ConsolePanelView({ controller,
|
|
641
|
+
declare function ConsolePanelView({ controller, ...options }: ConsolePanelViewProps): ReactNode;
|
|
532
642
|
|
|
533
643
|
/**
|
|
534
644
|
* The `xeno.core.runs` contract.
|
|
@@ -1309,26 +1419,128 @@ interface FlattenOptions {
|
|
|
1309
1419
|
declare function flattenRunRows(runs: readonly XenoRun[], options: FlattenOptions): XenoRunRow[];
|
|
1310
1420
|
|
|
1311
1421
|
/**
|
|
1312
|
-
* The Runs panel
|
|
1422
|
+
* The Runs panel AS A DECLARATION — the fifteenth declared block: the run/step tree of every agent
|
|
1423
|
+
* and workflow surface, as ONE flat row shape.
|
|
1424
|
+
*
|
|
1425
|
+
* Everything drawn is data: the toolbar (search, Clear finished), the status and source `FilterChip`s
|
|
1426
|
+
* (clicking `failed` alone IS the dead-letter view), the empty states, the rows — the controller has
|
|
1427
|
+
* already walked the tree once (`flattenRunRows`), so a run row and a step row are the same `Row`
|
|
1428
|
+
* with a depth, a status badge, a label, the trigger / retry / truncation badges, a `Progress` or a
|
|
1429
|
+
* duration in the meta slot, cancel / retry trailing, and a run's error line as an inset `Note` —
|
|
1430
|
+
* and the status bar with the success rate. No runtime-bound unit; the clock is a view option.
|
|
1431
|
+
*/
|
|
1432
|
+
|
|
1433
|
+
type Tone = 'neutral' | 'info' | 'success' | 'warning' | 'error';
|
|
1434
|
+
/** Never index `TONE` directly with a status off the wire — a host one version ahead sends a status this build does not know. */
|
|
1435
|
+
declare const toneOf: (status: XenoRunStatus) => Tone;
|
|
1436
|
+
interface RunsViewChip {
|
|
1437
|
+
id: string;
|
|
1438
|
+
label: string;
|
|
1439
|
+
on: boolean;
|
|
1440
|
+
tone: Tone;
|
|
1441
|
+
title?: string;
|
|
1442
|
+
}
|
|
1443
|
+
interface RunsViewRow {
|
|
1444
|
+
key: string;
|
|
1445
|
+
runId: string;
|
|
1446
|
+
stepPath: XenoRunPath;
|
|
1447
|
+
depth: number;
|
|
1448
|
+
step: boolean;
|
|
1449
|
+
status: string;
|
|
1450
|
+
tone: Tone;
|
|
1451
|
+
label: string;
|
|
1452
|
+
trigger?: string;
|
|
1453
|
+
retries?: string;
|
|
1454
|
+
truncated?: string;
|
|
1455
|
+
truncatedHint?: string;
|
|
1456
|
+
hasProgress: boolean;
|
|
1457
|
+
progress: number;
|
|
1458
|
+
progressLabel: string;
|
|
1459
|
+
duration?: string;
|
|
1460
|
+
canCancel: boolean;
|
|
1461
|
+
cancelLabel: string;
|
|
1462
|
+
canRetry: boolean;
|
|
1463
|
+
retryLabel: string;
|
|
1464
|
+
hasError: boolean;
|
|
1465
|
+
errorCode?: string;
|
|
1466
|
+
errorMessage?: string;
|
|
1467
|
+
}
|
|
1468
|
+
interface RunsViewModel {
|
|
1469
|
+
search: string;
|
|
1470
|
+
statuses: RunsViewChip[];
|
|
1471
|
+
multiSource: boolean;
|
|
1472
|
+
sources: RunsViewChip[];
|
|
1473
|
+
hasChips: boolean;
|
|
1474
|
+
empty: boolean;
|
|
1475
|
+
emptyTitle: string;
|
|
1476
|
+
emptyHint: string;
|
|
1477
|
+
listed: boolean;
|
|
1478
|
+
rows: RunsViewRow[];
|
|
1479
|
+
countLabel: string;
|
|
1480
|
+
statsLabel?: string;
|
|
1481
|
+
}
|
|
1482
|
+
type RunsUiIntent = {
|
|
1483
|
+
kind: 'search';
|
|
1484
|
+
value: string;
|
|
1485
|
+
} | {
|
|
1486
|
+
kind: 'clearTerminal';
|
|
1487
|
+
} | {
|
|
1488
|
+
kind: 'status';
|
|
1489
|
+
status: string;
|
|
1490
|
+
on: boolean;
|
|
1491
|
+
} | {
|
|
1492
|
+
kind: 'source';
|
|
1493
|
+
id: string;
|
|
1494
|
+
on: boolean;
|
|
1495
|
+
} | {
|
|
1496
|
+
kind: 'row';
|
|
1497
|
+
runId: string;
|
|
1498
|
+
stepPath: XenoRunPath;
|
|
1499
|
+
} | {
|
|
1500
|
+
kind: 'contextMenu';
|
|
1501
|
+
runId: string;
|
|
1502
|
+
x: number;
|
|
1503
|
+
y: number;
|
|
1504
|
+
} | {
|
|
1505
|
+
kind: 'cancel';
|
|
1506
|
+
runId: string;
|
|
1507
|
+
} | {
|
|
1508
|
+
kind: 'retry';
|
|
1509
|
+
runId: string;
|
|
1510
|
+
};
|
|
1511
|
+
interface RunsViewOptions {
|
|
1512
|
+
showStats?: boolean;
|
|
1513
|
+
showProgress?: boolean;
|
|
1514
|
+
emptyHint?: string;
|
|
1515
|
+
now?: () => number;
|
|
1516
|
+
}
|
|
1517
|
+
/** Derive the view from the live controller — the runtime calls this on every draw. */
|
|
1518
|
+
declare function runsViewState(c: RunsController, options?: RunsViewOptions): RunsViewModel;
|
|
1519
|
+
declare function applyRunsUi(c: RunsController, intent: RunsUiIntent): void;
|
|
1520
|
+
declare const runsViewManifest: PanelManifest;
|
|
1521
|
+
declare const BEHAVIOURS: {
|
|
1522
|
+
'ops/runsPanelView': (inputs: Record<string, unknown>) => RunsViewModel;
|
|
1523
|
+
};
|
|
1524
|
+
declare const RUNS_RUNTIME_UNITS: readonly [];
|
|
1525
|
+
declare const RUNS_DECLARATION: BlockDeclaration;
|
|
1526
|
+
|
|
1527
|
+
/**
|
|
1528
|
+
* The Runs panel view — the CODE VIEW of `RUNS_DECLARATION`, drawing the same `RunsViewModel`
|
|
1529
|
+
* byte-identical (the equivalence suite holds the two together). No runtime-bound unit; every
|
|
1530
|
+
* intent goes through `applyRunsUi`.
|
|
1313
1531
|
*
|
|
1314
1532
|
* Composes `@xenosystem/components/chrome`; the host must ensure `@xenosystem/workbench/primitives.css` is
|
|
1315
|
-
* present.
|
|
1316
|
-
* ships no chart code of its own.
|
|
1533
|
+
* present.
|
|
1317
1534
|
*
|
|
1318
1535
|
* @module
|
|
1319
1536
|
*/
|
|
1320
1537
|
|
|
1321
1538
|
/** Props for {@link RunsPanelView}. */
|
|
1322
|
-
interface RunsPanelViewProps {
|
|
1539
|
+
interface RunsPanelViewProps extends RunsViewOptions {
|
|
1323
1540
|
controller: RunsController;
|
|
1324
|
-
showStats?: boolean;
|
|
1325
|
-
showProgress?: boolean;
|
|
1326
|
-
emptyHint?: string;
|
|
1327
|
-
/** Injectable clock, so a duration column is testable. */
|
|
1328
|
-
now?: () => number;
|
|
1329
1541
|
}
|
|
1330
1542
|
/** The Runs panel view. */
|
|
1331
|
-
declare function RunsPanelView({ controller,
|
|
1543
|
+
declare function RunsPanelView({ controller, ...options }: RunsPanelViewProps): ReactNode;
|
|
1332
1544
|
|
|
1333
1545
|
/**
|
|
1334
1546
|
* The Terminal contract.
|
|
@@ -2232,4 +2444,4 @@ interface DiffPanelViewProps {
|
|
|
2232
2444
|
/** The Diff panel view. */
|
|
2233
2445
|
declare function DiffPanelView({ controller, highlighter, review }: DiffPanelViewProps): ReactNode;
|
|
2234
2446
|
|
|
2235
|
-
export { ALL_STATUSES, CONSOLE_PANEL_ID, ConsoleController, type ConsoleControllerOptions, type ConsoleHostBridge, type ConsolePanelState, ConsolePanelView, type ConsolePanelViewProps, type ConsoleRenderContext, type ConsoleViewState, type CreateConsolePanelOptions, type CreateDiffPanelOptions, type CreateRunsPanelOptions, type CreateTerminalPanelOptions, DEFAULT_MAX_STEP_DEPTH, DIFF_PANEL_ID, DiffController, type DiffControllerOptions, type DiffFileView, type DiffHostBridge, type DiffPanelState, DiffPanelView, type DiffPanelViewProps, type DiffRenderContext, type DiffViewState, type FlattenOptions, LEVEL_ORDER, MESSAGE_ELISION, REDACTION_CARRY, RUNS_PANEL_ID, RUN_PATH_SEPARATOR, RUN_STATUSES, RunsController, type RunsControllerOptions, type RunsHostBridge, type RunsPanelState, RunsPanelView, type RunsPanelViewProps, type RunsRenderContext, type RunsViewState, TERMINAL_PANEL_ID, TERMINAL_STATUSES, TerminalController, type TerminalControllerOptions, type TerminalHostBridge, type TerminalInstanceView, type TerminalPanelState, TerminalPanelView, type TerminalPanelViewProps, type TerminalRenderContext, type TerminalViewState, XENO_TERMINAL_THEME_KEYS, type XenoDiffAction, type XenoDiffDecision, type XenoDiffDecisionIntent, type XenoDiffDecisionState, type XenoDiffFile, type XenoDiffFileOmission, type XenoDiffHighlighter, type XenoDiffHunk, type XenoDiffLine, type XenoDiffLineKind, type XenoDiffModel, type XenoDiffNavigate, type XenoDiffSegment, type XenoDiffStatus, type XenoDiffView, type XenoLogActivate, type XenoLogDelta, type XenoLogFilter, type XenoLogLevel, type XenoLogPatch, type XenoLogRecord, type XenoLogSource, type XenoRun, type XenoRunAction, type XenoRunActivate, type XenoRunDelta, type XenoRunError, type XenoRunFilter, type XenoRunLifecycle, type XenoRunPath, type XenoRunRow, type XenoRunRunRow, type XenoRunStats, type XenoRunStatus, type XenoRunStep, type XenoRunStepAppend, type XenoRunStepPatch, type XenoRunStepRow, type XenoRunTruncation, type XenoTerminalData, type XenoTerminalEmulator, type XenoTerminalId, type XenoTerminalIntent, type XenoTerminalSession, type XenoTerminalStatus, type XenoTerminalTheme, appendStepsAtPath, canCancel, canRetry, collapseAdjacent, computeStats, consoleManifest, consolePanel, countChanges, createConsolePanel, createDiffPanel, createRunsPanel, createTerminalPanel, decodeRunPath, diffManifest, diffPanel, durationOf, encodeRunPath, flattenHunks, flattenRunRows, formatDuration, formatRecord, isActive, isLive, isSettled, isTerminal, isWaiting, lifecycleOf, matchesSearch as matchesRunSearch, matchesSearch$1 as matchesSearch, measuredSize, meetsLevel, needsAttention, omissionLabel, patchStepAtPath, queueDurationOf, readTerminalTheme, resolveStepPath, runsManifest, runsPanel, safeJson, spliceRedactedAppend, splitRows, statusLabel, terminalManifest, terminalPanel, terminalThemeVar, truncateLogMessage };
|
|
2447
|
+
export { ALL_STATUSES, BEHAVIOURS$1 as CONSOLE_BEHAVIOURS, CONSOLE_DECLARATION, CONSOLE_PANEL_ID, CONSOLE_RUNTIME_UNITS, ConsoleController, type ConsoleControllerOptions, type ConsoleHostBridge, type ConsolePanelState, ConsolePanelView, type ConsolePanelViewProps, type ConsoleRenderContext, ConsoleScroller, type ConsoleUiIntent, type ConsoleViewModel, type ConsoleViewOptions, type ConsoleViewRow, type ConsoleViewSource, type ConsoleViewState, type CreateConsolePanelOptions, type CreateDiffPanelOptions, type CreateRunsPanelOptions, type CreateTerminalPanelOptions, DEFAULT_MAX_STEP_DEPTH, DIFF_PANEL_ID, DiffController, type DiffControllerOptions, type DiffFileView, type DiffHostBridge, type DiffPanelState, DiffPanelView, type DiffPanelViewProps, type DiffRenderContext, type DiffViewState, type FlattenOptions, LEVEL_ORDER, MESSAGE_ELISION, REDACTION_CARRY, BEHAVIOURS as RUNS_BEHAVIOURS, RUNS_DECLARATION, RUNS_PANEL_ID, RUNS_RUNTIME_UNITS, RUN_PATH_SEPARATOR, RUN_STATUSES, RunsController, type RunsControllerOptions, type RunsHostBridge, type RunsPanelState, RunsPanelView, type RunsPanelViewProps, type RunsRenderContext, type RunsUiIntent, type RunsViewChip, type RunsViewModel, type RunsViewOptions, type RunsViewRow, type RunsViewState, TERMINAL_PANEL_ID, TERMINAL_STATUSES, TerminalController, type TerminalControllerOptions, type TerminalHostBridge, type TerminalInstanceView, type TerminalPanelState, TerminalPanelView, type TerminalPanelViewProps, type TerminalRenderContext, type TerminalViewState, XENO_TERMINAL_THEME_KEYS, type XenoDiffAction, type XenoDiffDecision, type XenoDiffDecisionIntent, type XenoDiffDecisionState, type XenoDiffFile, type XenoDiffFileOmission, type XenoDiffHighlighter, type XenoDiffHunk, type XenoDiffLine, type XenoDiffLineKind, type XenoDiffModel, type XenoDiffNavigate, type XenoDiffSegment, type XenoDiffStatus, type XenoDiffView, type XenoLogActivate, type XenoLogDelta, type XenoLogFilter, type XenoLogLevel, type XenoLogPatch, type XenoLogRecord, type XenoLogSource, type XenoRun, type XenoRunAction, type XenoRunActivate, type XenoRunDelta, type XenoRunError, type XenoRunFilter, type XenoRunLifecycle, type XenoRunPath, type XenoRunRow, type XenoRunRunRow, type XenoRunStats, type XenoRunStatus, type XenoRunStep, type XenoRunStepAppend, type XenoRunStepPatch, type XenoRunStepRow, type XenoRunTruncation, type XenoTerminalData, type XenoTerminalEmulator, type XenoTerminalId, type XenoTerminalIntent, type XenoTerminalSession, type XenoTerminalStatus, type XenoTerminalTheme, appendStepsAtPath, applyConsoleUi, applyRunsUi, canCancel, canRetry, collapseAdjacent, computeStats, consoleManifest, consolePanel, consoleRuntimeComponents, consoleViewManifest, consoleViewState, countChanges, createConsolePanel, createDiffPanel, createRunsPanel, createTerminalPanel, decodeRunPath, diffManifest, diffPanel, durationOf, encodeRunPath, flattenHunks, flattenRunRows, formatDuration, formatRecord, isActive, isLive, isSettled, isTerminal, isWaiting, lifecycleOf, matchesSearch as matchesRunSearch, matchesSearch$1 as matchesSearch, measuredSize, meetsLevel, needsAttention, omissionLabel, patchStepAtPath, queueDurationOf, readTerminalTheme, resolveStepPath, runsManifest, runsPanel, runsViewManifest, runsViewState, safeJson, spliceRedactedAppend, splitRows, statusLabel, terminalManifest, terminalPanel, terminalThemeVar, toneOf, truncateLogMessage };
|