@corenel/web-ui 0.5.9 → 0.6.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.
- package/dist/Composer.d.ts.map +1 -1
- package/dist/Composer.js +47 -8
- package/dist/Composer.js.map +1 -1
- package/dist/ContextBar.d.ts +2 -7
- package/dist/ContextBar.d.ts.map +1 -1
- package/dist/ContextBar.js +9 -2
- package/dist/ContextBar.js.map +1 -1
- package/dist/ContextManager.d.ts +1 -25
- package/dist/ContextManager.d.ts.map +1 -1
- package/dist/ContextManager.js +100 -66
- package/dist/ContextManager.js.map +1 -1
- package/dist/ContextStrip.d.ts +20 -0
- package/dist/ContextStrip.d.ts.map +1 -0
- package/dist/ContextStrip.js +25 -0
- package/dist/ContextStrip.js.map +1 -0
- package/dist/ExclusionsModal.d.ts +13 -0
- package/dist/ExclusionsModal.d.ts.map +1 -0
- package/dist/ExclusionsModal.js +92 -0
- package/dist/ExclusionsModal.js.map +1 -0
- package/dist/RichContent.d.ts.map +1 -1
- package/dist/RichContent.js +53 -10
- package/dist/RichContent.js.map +1 -1
- package/dist/Transcript.d.ts.map +1 -1
- package/dist/Transcript.js +35 -1
- package/dist/Transcript.js.map +1 -1
- package/dist/agentChat/AgentChat.d.ts.map +1 -1
- package/dist/agentChat/AgentChat.js +12 -24
- package/dist/agentChat/AgentChat.js.map +1 -1
- package/dist/agentChat/SkillsSection.d.ts.map +1 -1
- package/dist/agentChat/SkillsSection.js +141 -9
- package/dist/agentChat/SkillsSection.js.map +1 -1
- package/dist/agentChat/controller.d.ts +8 -9
- package/dist/agentChat/controller.d.ts.map +1 -1
- package/dist/agentChat/controller.js.map +1 -1
- package/package.json +5 -5
package/dist/ContextManager.js
CHANGED
|
@@ -1,24 +1,31 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useMemo, useState } from 'react';
|
|
3
3
|
import { effectiveThreshold } from '@corenel/harness/compression';
|
|
4
|
-
import { getCompression
|
|
5
|
-
import { getSystemParts
|
|
4
|
+
import { getCompression } from '@corenel/ui-kit/theme';
|
|
5
|
+
import { getSystemParts } from '@corenel/harness/systemParts';
|
|
6
6
|
import { allTools } from '@corenel/harness/tools/builtins';
|
|
7
7
|
import { useUsage, fmtTok } from '@corenel/ui-kit/usage';
|
|
8
8
|
import { estimateTokens, tokenCountsVersion, enableAccurateTokenCounts, onTokenCountsChange } from '@corenel/ui-kit/ui-helpers';
|
|
9
9
|
import { sessionSentTools } from '@corenel/tools-web/sessionTools';
|
|
10
|
+
import { sessionSystemConfig, subscribeSessionSystemConfig } from '@corenel/tools-web/sessionSystemConfig';
|
|
10
11
|
import { subscribeSessionCapabilities } from '@corenel/tools-web/sessionCapabilities';
|
|
11
12
|
import { subscribeLoadedTools } from '@corenel/tools-web/sessionLoadedTools';
|
|
12
|
-
import {
|
|
13
|
+
import { selectionFile, BASE_SYSTEM_FILE } from '@corenel/harness/prompts/systemPromptSelection';
|
|
13
14
|
import { IcTrash, IcZap, IcChevron } from '@corenel/ui-kit/icons';
|
|
15
|
+
import { ContextStrip } from './ContextStrip';
|
|
16
|
+
import { ExclusionsModal } from './ExclusionsModal';
|
|
17
|
+
import { COMPACT_AT_FILL } from '@corenel/harness/core/compactHistory';
|
|
18
|
+
import { isCheckpointTurn } from '@corenel/harness/conversation';
|
|
19
|
+
/** The strip key for the system-prompt block. Not a turn id, and cannot collide
|
|
20
|
+
* with one: turn ids are `t<base36>` / `n<base36>`. */
|
|
21
|
+
const SYSTEM_BLOCK = '__system__';
|
|
14
22
|
const PARTS = [
|
|
15
23
|
{ key: 'persona', label: 'Persona', est: 300 },
|
|
16
24
|
{ key: 'mode', label: 'Mode', est: 200 },
|
|
17
25
|
{ key: 'toolGuidance', label: 'Guidance', est: 450 },
|
|
18
|
-
{ key: 'tools', label: '
|
|
26
|
+
{ key: 'tools', label: 'Tool schemas', est: 0 }, // measured from the live schemas
|
|
19
27
|
];
|
|
20
28
|
const SYS_BASE_EST = 600; // systems/system-base.md baseline (always included)
|
|
21
|
-
const PRESETS = ['off', 'conservative', 'balanced', 'aggressive'];
|
|
22
29
|
/* With BPE enabled, a turn count is a full encode of the turn's text (including
|
|
23
30
|
* inline tool outputs — MBs on long sessions), and useContextProjection runs in
|
|
24
31
|
* BOTH the collapsed ContextBar and the drawer body, whose memos don't share.
|
|
@@ -110,11 +117,6 @@ export function OffloadRow({ record, fromLabel, sourceDropped, onRestore, note }
|
|
|
110
117
|
? 'Restore the full content into its turn (replaces the stub; removes this frozen copy). That turn is currently dropped — restore the turn too for the model to see it.'
|
|
111
118
|
: 'Restore the full content into its turn in the window (replaces the stub; removes this frozen copy)', children: "Restore" }))] }), note && _jsx("div", { style: S.offNote, children: note }), open && _jsxs("pre", { style: S.preview, children: [record.content.slice(0, 600), record.content.length > 600 ? '…' : ''] })] }));
|
|
112
119
|
}
|
|
113
|
-
/** A turn under SENT TO THE MODEL: clean card + an optional dimmed chip when
|
|
114
|
-
* this turn's large outputs were offloaded (pointer to Not sent, not a container). */
|
|
115
|
-
export function SentTurnCard({ turn, tok, frozenBytes, onDrop }) {
|
|
116
|
-
return (_jsxs("div", { style: S.turnCardHead, children: [_jsx("span", { style: S.turnText, children: turnLabel(turn) }), frozenBytes > 0 && (_jsxs("span", { style: S.frozenChip, title: "This turn's large outputs were offloaded \u2014 a stub is in the window; see Not sent.", children: [_jsx(IcZap, { size: 10 }), " ", kb(frozenBytes)] })), _jsx("span", { style: S.turnMeta, children: fmtTok(tok) }), _jsx("button", { style: S.turnAction, onClick: onDrop, title: "Drop this turn \u2014 it moves to Not sent and is not sent to the model", children: "Drop" })] }));
|
|
117
|
-
}
|
|
118
120
|
/** A dropped turn under NOT SENT. */
|
|
119
121
|
export function DroppedTurnRow({ turn, tok, onRestore }) {
|
|
120
122
|
return (_jsxs("div", { style: S.turnCardHead, children: [_jsx("span", { style: { ...S.turnText, color: 'var(--text-tertiary)' }, children: turnLabel(turn) }), _jsx("span", { style: S.turnMeta, children: fmtTok(tok) }), _jsx("button", { style: S.turnAction, onClick: onRestore, title: "Include this turn \u2014 it moves back into the window and is sent to the model", children: "Restore" })] }));
|
|
@@ -190,7 +192,7 @@ sessionId) {
|
|
|
190
192
|
includedCount: perTurn.filter((x) => x.t.included).length,
|
|
191
193
|
};
|
|
192
194
|
}
|
|
193
|
-
export function ContextManagerBody({ contextWindow,
|
|
195
|
+
export function ContextManagerBody({ contextWindow, systemSource, offloaded: offloadedSource, conversation, usageSurface = 'agent', sessionId }) {
|
|
194
196
|
/* THE DRAWER NEEDS EXACT COUNTS, SO THE DRAWER PAYS FOR THEM.
|
|
195
197
|
*
|
|
196
198
|
* This used to be fetched at boot, on every route, behind an idle callback
|
|
@@ -210,31 +212,25 @@ export function ContextManagerBody({ contextWindow, parts: partsProp, onToggle,
|
|
|
210
212
|
const { toggleInclude, restoreToolResult } = conversation;
|
|
211
213
|
const [offloaded, setOffloaded] = useState([]);
|
|
212
214
|
const [restoreNotes, setRestoreNotes] = useState({});
|
|
213
|
-
const [
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
const
|
|
230
|
-
const
|
|
231
|
-
const
|
|
232
|
-
const togglePart = (k) => {
|
|
233
|
-
if (onToggle)
|
|
234
|
-
onToggle(k);
|
|
235
|
-
else
|
|
236
|
-
setLocalParts((p) => { const next = { ...p, [k]: !p[k] }; setSystemParts(next); return next; });
|
|
237
|
-
};
|
|
215
|
+
const [notSentOpen, setNotSentOpen] = useState(false);
|
|
216
|
+
const [manageOpen, setManageOpen] = useState(false);
|
|
217
|
+
const [, setCfgTick] = useState(0);
|
|
218
|
+
/** The block the detail pane is about, or null to follow the largest. */
|
|
219
|
+
const [sel, setSel] = useState(null);
|
|
220
|
+
/* READ, NOT MIRRORED. Settings owns this preference; the drawer used to keep
|
|
221
|
+
* its own useState copy beside a second control over the same store, which is
|
|
222
|
+
* how two controls over one preference drift apart. A plain read on every
|
|
223
|
+
* render cannot go stale. */
|
|
224
|
+
const preset = getCompression();
|
|
225
|
+
/* THE CONVERSATION'S OWN CONFIG, frozen when it started (sessionSystemConfig).
|
|
226
|
+
* It used to be a prop fed from the global parts store, so a toggle made
|
|
227
|
+
* anywhere changed what every open chat reported — and, since the run read the
|
|
228
|
+
* same global, what every open chat SENT. A session that predates the snapshot
|
|
229
|
+
* falls back to the global, which is what it was already using. */
|
|
230
|
+
useEffect(() => subscribeSessionSystemConfig(() => setCfgTick((t) => t + 1)), []);
|
|
231
|
+
const frozen = sessionSystemConfig(sessionId ?? '');
|
|
232
|
+
const parts = frozen?.parts ?? getSystemParts();
|
|
233
|
+
const frozenPrompt = frozen?.prompt ?? null;
|
|
238
234
|
const refresh = () => {
|
|
239
235
|
setRestoreNotes({}); // a fresh list supersedes any stale failed-restore note
|
|
240
236
|
(offloadedSource?.list() ?? Promise.resolve([])).then(setOffloaded).catch(() => setOffloaded([]));
|
|
@@ -242,15 +238,21 @@ export function ContextManagerBody({ contextWindow, parts: partsProp, onToggle,
|
|
|
242
238
|
useEffect(refresh, [offloadedSource]);
|
|
243
239
|
const lastAgent = records.find((r) => r.surface === usageSurface);
|
|
244
240
|
// ---- projected composition (estimate) — shared with the collapsed ContextBar ----
|
|
245
|
-
const { turns, partTok, systemTok, perTurn, turnsTok, projected, pct, over
|
|
241
|
+
const { turns, partTok, systemTok, perTurn, turnsTok, projected, pct, over } = useContextProjection(contextWindow, parts, conversation, sessionId);
|
|
246
242
|
const w = Math.max(1, contextWindow);
|
|
247
|
-
const sysPct = Math.min(100, (systemTok / w) * 100);
|
|
248
|
-
const turnPct = Math.min(100 - sysPct, (turnsTok / w) * 100);
|
|
249
243
|
const reclaimedBytes = offloaded.reduce((n, o) => n + o.bytes, 0);
|
|
250
244
|
const thr = effectiveThreshold(preset, projected / w);
|
|
251
245
|
const { byTurn, unattached } = useMemo(() => bucketOffloads(offloaded, turns), [offloaded, turns]);
|
|
252
|
-
|
|
253
|
-
|
|
246
|
+
/* A SEAM IS NOT A TURN, and every piece of this panel that reasons about
|
|
247
|
+
* "excluded" has to know it. A compaction seam is `included: false` like a
|
|
248
|
+
* dropped turn, so before this it was counted among the turns you had
|
|
249
|
+
* dropped, listed under Not sent with a Restore, and swept up by "All" --
|
|
250
|
+
* which would have put a description of the model's own forgetting into its
|
|
251
|
+
* window, the one thing the seam design forbids. Found by opening the panel
|
|
252
|
+
* on a conversation that had actually compacted. */
|
|
253
|
+
const conversational = perTurn.filter((x) => !isCheckpointTurn(x.t));
|
|
254
|
+
const warmTurns = conversational.filter((x) => x.t.included);
|
|
255
|
+
const coldTurns = conversational.filter((x) => !x.t.included);
|
|
254
256
|
const offParts = PARTS.filter((p) => !parts[p.key]);
|
|
255
257
|
const attributed = [...byTurn.entries()].flatMap(([turnId, recs]) => {
|
|
256
258
|
const t = turns.find((x) => x.id === turnId);
|
|
@@ -262,6 +264,38 @@ export function ContextManagerBody({ contextWindow, parts: partsProp, onToggle,
|
|
|
262
264
|
const droppedTok = coldTurns.reduce((n, x) => n + x.tok, 0);
|
|
263
265
|
const frozenBytesFor = (id) => (byTurn.get(id) ?? []).reduce((n, r) => n + r.bytes, 0);
|
|
264
266
|
const notSentEmpty = offParts.length === 0 && coldTurns.length === 0 && offloaded.length === 0;
|
|
267
|
+
/* ---- the strip, and the one block the detail pane is about ----
|
|
268
|
+
*
|
|
269
|
+
* Blocks are what is IN the window: the system prompt, then each included
|
|
270
|
+
* turn. A compaction SEAM is not in it — the seam is an unsent note in the
|
|
271
|
+
* transcript — so seams are filtered out rather than drawn as slivers of
|
|
272
|
+
* nothing. (They are already out of the token totals, being unincluded; this
|
|
273
|
+
* keeps them off the strip as well.) */
|
|
274
|
+
const blocks = [
|
|
275
|
+
...(systemTok > 0 ? [{ key: SYSTEM_BLOCK, kind: 'system', label: 'System prompt', tok: systemTok }] : []),
|
|
276
|
+
...warmTurns.map(({ t, tok }) => ({ key: t.id, kind: 'turn', label: turnLabel(t), tok })),
|
|
277
|
+
];
|
|
278
|
+
/* OPENS ON THE LARGEST BLOCK, because that is the question this panel is here
|
|
279
|
+
* to answer. Selecting nothing would leave the detail area empty on arrival
|
|
280
|
+
* and put the answer behind a click; selecting the FIRST block would point at
|
|
281
|
+
* whatever happens to be oldest. A selection that no longer exists — its turn
|
|
282
|
+
* was just dropped — falls back the same way. */
|
|
283
|
+
const largest = blocks.reduce((best, b) => (!best || b.tok > best.tok ? b : best), null);
|
|
284
|
+
const selected = blocks.find((b) => b.key === sel) ?? largest;
|
|
285
|
+
const selectedKey = selected?.key ?? null;
|
|
286
|
+
const shareOfWindow = (tok) => `${Math.max(1, Math.round((tok / w) * 100))}% of the window`;
|
|
287
|
+
/** Compactions this conversation has already had, counted from the seams in
|
|
288
|
+
* the transcript — the same turns the transcript draws, so the two cannot
|
|
289
|
+
* disagree about how many there were. */
|
|
290
|
+
const seamCount = turns.filter(isCheckpointTurn).length;
|
|
291
|
+
/** Projected tokens at which the next run compacts before its first request. */
|
|
292
|
+
const compactAt = Math.round(COMPACT_AT_FILL * w);
|
|
293
|
+
/** What the folded Not sent button says, so you can tell whether to open it. */
|
|
294
|
+
const notSentSummary = [
|
|
295
|
+
offParts.length > 0 ? `${offParts.length} part${offParts.length === 1 ? '' : 's'}` : '',
|
|
296
|
+
coldTurns.length > 0 ? `${coldTurns.length} turn${coldTurns.length === 1 ? '' : 's'}` : '',
|
|
297
|
+
reclaimedBytes > 0 ? `${kb(reclaimedBytes)} frozen` : '',
|
|
298
|
+
].filter(Boolean).join(' · ');
|
|
265
299
|
const restore = async (turnId, r) => {
|
|
266
300
|
if (!offloadedSource)
|
|
267
301
|
return;
|
|
@@ -277,29 +311,22 @@ export function ContextManagerBody({ contextWindow, parts: partsProp, onToggle,
|
|
|
277
311
|
setRestoreNotes((n) => ({ ...n, [r.id]: 'stub not found in the turn — content kept here' }));
|
|
278
312
|
}
|
|
279
313
|
};
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
*
|
|
284
|
-
*
|
|
285
|
-
|
|
286
|
-
const chosenPrompt = prompts ? resolveSystemPrompt(selection, prompts) : null;
|
|
314
|
+
/* WHAT THE ROW NAMES. Same precedence the run uses: "use base prompt", then a
|
|
315
|
+
* host's own prompt (the editor's per-filetype one), then this conversation's
|
|
316
|
+
* frozen selection. It no longer resolves the selection against a LIVE list —
|
|
317
|
+
* nothing here can change it, so a list fetched to populate a picker had no
|
|
318
|
+
* remaining purpose, and the run's own fallback is reported by the source the
|
|
319
|
+
* host passes. */
|
|
287
320
|
const hostPrompt = !parts.baseSystem && systemSource && systemSource !== BASE_SYSTEM_FILE ? systemSource : null;
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
const
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
{ label: 'Host', entries: prompts.filter((e) => e.origin === 'host') },
|
|
298
|
-
].filter((g) => g.entries.length > 0)
|
|
299
|
-
: [];
|
|
300
|
-
return (_jsx("div", { style: S.panel, children: _jsxs("div", { style: S.body, children: [_jsxs("div", { style: S.section, children: [_jsxs("div", { style: S.budgetHead, children: [_jsxs("span", { style: S.bigNum, title: "Estimated tokens if you run now", children: [fmtTok(projected), _jsxs("span", { style: S.bigDim, children: [" / ", fmtTok(contextWindow)] })] }), _jsxs("span", { style: { ...S.pctChip, ...(over ? S.pctOver : null) }, children: [pct, "%"] })] }), _jsxs("div", { style: S.barStack, children: [_jsx("div", { style: { ...S.seg, width: `${sysPct}%`, background: 'var(--accent)' }, title: `System ${fmtTok(systemTok)}` }), _jsx("div", { style: { ...S.seg, width: `${turnPct}%`, background: 'var(--brand-cyan, #3fb6d4)' }, title: `Warm turns ${fmtTok(turnsTok)}` })] }), _jsxs("div", { style: S.legend, children: [_jsx(Legend, { c: "var(--accent)", k: "System", v: fmtTok(systemTok) }), _jsx(Legend, { c: "var(--brand-cyan, #3fb6d4)", k: "Warm turns", v: fmtTok(turnsTok) }), _jsx(Legend, { c: "var(--surface-3)", k: "Free", v: fmtTok(Math.max(0, contextWindow - projected)) }), reclaimedBytes > 0 && (_jsxs("span", { style: S.savedChip, title: "Offloaded tool outputs \u2014 frozen out of the window, recoverable on demand", children: [_jsx("span", { style: S.zap, children: _jsx(IcZap, { size: 11 }) }), _jsx("b", { style: S.savedNum, children: kb(reclaimedBytes) }), "\u00A0\u00B7\u00A0", _jsx("b", { style: S.savedNum, children: tokOf(reclaimedBytes) }), "\u00A0offloaded", offloadedSource && (_jsx("button", { style: S.savedClear, onClick: () => { offloadedSource.clear().then(refresh); }, title: "Clear offloaded results", "aria-label": "Clear offloaded results", children: _jsx(IcTrash, { size: 11 }) }))] }))] }), _jsxs("div", { style: S.compRow, children: [_jsx("select", { style: S.select, value: preset, onChange: (e) => { const m = e.target.value; setCompression(m); setPresetState(m); }, children: PRESETS.map((m) => _jsx("option", { value: m, children: m }, m)) }), _jsx("span", { style: S.secMeta, children: preset === 'off' ? 'never offloads' : `offloads results > ${(thr / 1000).toFixed(1)} KB (${tokOf(thr)}) at this fill` })] }), _jsxs("div", { style: S.estNote, children: ["Projected estimate \u2014 system-prompt size is approximate.", lastAgent ? ` Last run ${fmtTok(lastAgent.inTok)}.` : ''] })] }), _jsxs("div", { style: S.section, children: [_jsxs("button", { style: S.sysRow, onClick: () => setSysOpen((o) => !o), title: "Show the system-prompt parts", children: [_jsx("span", { style: { ...S.chev, transform: sysOpen ? 'rotate(90deg)' : 'none' }, children: _jsx(IcChevron, { size: 12 }) }), _jsx("span", { style: S.sysLabel, children: "System prompt" }), shownSource && _jsx("code", { style: S.sourceCode, title: "The system prompt file used for the next run", children: shownSource }), _jsxs("span", { style: S.secMeta, children: ["~", fmtTok(systemTok)] })] }), sysOpen && (_jsxs(_Fragment, { children: [systemPrompt && (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 6, marginBottom: 8 }, children: [_jsxs("select", { style: { ...S.select, width: '100%' }, "aria-label": "System prompt for this chat", value: choice ?? '', disabled: parts.baseSystem || !!hostPrompt, title: parts.baseSystem ? 'Turn off "Use base prompt" to choose a system prompt' : 'The system prompt this chat runs under', onChange: (e) => systemPrompt.onSelect(e.target.value || null), children: [_jsxs("option", { value: "", children: ["Default (", choice ? 'Settings' : selection ? selectionFile(selection) : BASE_SYSTEM_FILE, ")"] }), choice && prompts && !prompts.some((e) => e.id === choice) && (_jsxs("option", { value: choice, children: [selectionFile(choice), " (not available)"] })), promptGroups.map((g) => (_jsx("optgroup", { label: g.label, children: g.entries.map((e) => (_jsx("option", { value: e.id, title: e.description, children: e.label === e.file ? e.file : `${e.label} (${e.file})` }, e.id))) }, g.label)))] }), missingPrompt && selection && (_jsxs("div", { role: "status", style: { ...S.estNote, color: 'var(--warning, #b45309)' }, children: [selectionFile(selection), " isn't available here, so the next run uses ", BASE_SYSTEM_FILE, "."] })), hostPrompt && (_jsxs("div", { style: S.estNote, children: ["This surface uses ", hostPrompt, " for the open file, so the chat's choice doesn't apply here."] }))] })), _jsxs("div", { style: S.chips, children: [PARTS.map(({ key, label }) => (_jsxs("button", { style: S.chip(parts[key]), onClick: () => togglePart(key), title: parts[key] ? `Including ${label.toLowerCase()} (~${fmtTok(partTok(key))})` : `Excluded — ${label.toLowerCase()} dropped`, children: [_jsx("span", { style: S.chipDot(parts[key]) }), label] }, key))), _jsxs("button", { style: S.chip(parts.baseSystem), onClick: () => togglePart('baseSystem'), title: parts.baseSystem
|
|
301
|
-
? 'Using the base system prompt — the file-type prompt (.prmd / .pdflow format docs) is ignored'
|
|
302
|
-
: 'Using the file-type system prompt when one matches the open file. Turn on to force the base prompt instead.', children: [_jsx("span", { style: S.chipDot(parts.baseSystem) }), "Use base prompt"] })] }), parts.baseSystem && _jsx("div", { style: S.estNote, children: "File-type prompt overridden \u2014 running on the base system prompt only." })] }))] }), _jsxs("div", { style: S.section, children: [_jsxs("div", { style: S.rowHead, children: [_jsxs("span", { style: S.secLabel, title: "Exactly what the model receives on the next request: the system prompt plus these turns. A zap chip means a turn's large outputs were frozen \u2014 only a short stub of them is sent.", children: [_jsx("span", { style: { ...S.tempDot, background: 'var(--brand-cyan, #3fb6d4)' } }), "Sent to the model \u00B7 ", includedCount, "/", turns.length] }), _jsxs("span", { style: S.actions, children: [_jsx("span", { style: S.secMeta, children: fmtTok(turnsTok) }), turns.length > 0 && _jsxs(_Fragment, { children: [_jsx("button", { style: S.miniBtn, onClick: () => setAll(true), children: "All" }), _jsx("button", { style: S.miniBtn, onClick: () => setAll(false), children: "None" })] })] })] }), _jsxs("div", { style: S.list, children: [turns.length === 0 && _jsx("div", { style: S.empty, children: "No turns yet. As you chat, each exchange shows here; drop old ones to free the window." }), warmTurns.length === 0 && turns.length > 0 && _jsx("div", { style: S.empty, children: "Nothing in the window \u2014 every turn is dropped. The model only receives the system prompt." }), warmTurns.map(({ t, tok }) => (_jsx(SentTurnCard, { turn: t, tok: tok, frozenBytes: frozenBytesFor(t.id), onDrop: () => toggleInclude(t.id) }, t.id)))] })] }), !notSentEmpty && (_jsxs("div", { style: S.section, children: [_jsxs("div", { style: S.rowHead, children: [_jsxs("span", { style: S.secLabel, title: "Everything excluded from the next request \u2014 parts you disabled, turns you dropped, and large outputs compression froze.", children: [_jsx("span", { style: { ...S.tempDot, background: 'var(--surface-3)' } }), "Not sent"] }), _jsxs("span", { style: S.secMeta, children: [partsTok + droppedTok > 0 ? `~${fmtTok(partsTok + droppedTok)}` : '', reclaimedBytes > 0 ? `${partsTok + droppedTok > 0 ? ' · ' : ''}${kb(reclaimedBytes)} frozen` : ''] })] }), _jsxs("div", { style: S.list, children: [offParts.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "System-prompt parts you turned off \u2014 the next request's system prompt omits them.", children: ["System parts \u00B7 ", offParts.length, " \u00B7 ~", fmtTok(partsTok)] }), offParts.map((p) => (_jsxs("div", { style: S.turnCardHead, children: [_jsx("span", { style: { ...S.turnText, color: 'var(--text-tertiary)' }, children: p.label }), _jsxs("span", { style: S.turnMeta, children: ["~", fmtTok(partTok(p.key))] }), _jsx("button", { style: S.turnAction, onClick: () => togglePart(p.key), title: "Include this system-prompt part again", children: "Enable" })] }, p.key)))] })), coldTurns.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "Whole exchanges you excluded \u2014 the model does not see them. Restore puts one back in the window.", children: ["Dropped turns \u00B7 ", coldTurns.length, " \u00B7 ", fmtTok(droppedTok)] }), coldTurns.map(({ t, tok }) => (_jsx(DroppedTurnRow, { turn: t, tok: tok, onRestore: () => toggleInclude(t.id) }, t.id)))] })), offloaded.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "Large tool outputs the compression setting froze out of the window. For each, a short stub pointing at it stays in its turn, and the assistant can pull the content back itself with recall_result.", children: ["Offloaded outputs \u00B7 ", offloaded.length, " \u00B7 ", kb(reclaimedBytes)] }), attributed.map(({ r, turnId, label, sourceDropped }) => (_jsx(OffloadRow, { record: r, fromLabel: label, sourceDropped: sourceDropped, note: restoreNotes[r.id], onRestore: offloadedSource ? () => { void restore(turnId, r); } : undefined }, r.id))), unattached.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "Frozen outputs whose turn is no longer in this conversation \u2014 nothing in the window points at them. Preview here, or clear them with the trash button in the header above.", children: ["Unattached \u00B7 ", unattached.length, " \u00B7 ", kb(unattached.reduce((n, r) => n + r.bytes, 0))] }), unattached.map((r) => _jsx(OffloadRow, { record: r, fromLabel: null }, r.id))] }))] }))] })] }))] }) }));
|
|
321
|
+
const shownSource = parts.baseSystem
|
|
322
|
+
? (systemSource ?? BASE_SYSTEM_FILE)
|
|
323
|
+
: hostPrompt ?? (frozenPrompt ? selectionFile(frozenPrompt) : (systemSource ?? BASE_SYSTEM_FILE));
|
|
324
|
+
/** Which composed parts this conversation's system prompt actually carries —
|
|
325
|
+
* where its tokens come from, which is the panel's whole question. */
|
|
326
|
+
const composedIn = PARTS.filter((x) => parts[x.key]).map((x) => x.label);
|
|
327
|
+
return (_jsxs("div", { style: S.panel, children: [_jsxs("div", { style: S.body, children: [_jsxs("div", { style: S.section, children: [_jsxs("div", { style: S.budgetHead, children: [_jsxs("span", { style: S.bigNum, title: "Estimated tokens if you run now", children: [fmtTok(projected), _jsxs("span", { style: S.bigDim, children: [" / ", fmtTok(contextWindow)] })] }), _jsxs("span", { style: { ...S.pctChip, ...(over ? S.pctOver : null) }, children: [pct, "%"] })] }), _jsx("div", { "data-testid": "context-strip", children: _jsx(ContextStrip, { blocks: blocks, contextWindow: contextWindow, selected: selectedKey, onSelect: setSel }) }), _jsxs("div", { style: S.legend, children: [_jsx(Legend, { c: "var(--accent)", k: "System", v: fmtTok(systemTok) }), _jsx(Legend, { c: "var(--brand-cyan, #3fb6d4)", k: "Turns", v: fmtTok(turnsTok) }), _jsx(Legend, { c: "var(--surface-3)", k: "Free", v: fmtTok(Math.max(0, contextWindow - projected)) }), _jsx("span", { style: { ...S.actions, marginLeft: 'auto' }, children: _jsxs("button", { style: S.miniBtn, onClick: () => setManageOpen(true), title: "Choose which turns the model receives", children: ["Manage turns", conversational.length > 0 ? ` (${conversational.length})` : ''] }) })] }), _jsxs("div", { style: S.compactRow, children: [_jsx("span", { style: { ...S.pctChip, ...(projected >= compactAt ? S.pctWarn : null) }, children: projected >= compactAt
|
|
328
|
+
? `at ${Math.round(COMPACT_AT_FILL * 100)}% — the next run compacts first`
|
|
329
|
+
: `compacts at ${Math.round(COMPACT_AT_FILL * 100)}% · ${fmtTok(compactAt - projected)} to go` }), seamCount > 0 && (_jsxs("span", { style: S.secMeta, title: "Compactions in this conversation. Each left a seam in the transcript you can expand to read.", children: [seamCount === 1 ? '1 checkpoint' : `${seamCount} checkpoints`, " so far"] })), reclaimedBytes > 0 && (_jsxs("span", { style: S.savedChip, title: "Offloaded tool outputs \u2014 frozen out of the window, recoverable on demand", children: [_jsx("span", { style: S.zap, children: _jsx(IcZap, { size: 11 }) }), _jsx("b", { style: S.savedNum, children: kb(reclaimedBytes) }), "\u00A0offloaded", offloadedSource && (_jsx("button", { style: S.savedClear, onClick: () => { offloadedSource.clear().then(refresh); }, title: "Clear offloaded results", "aria-label": "Clear offloaded results", children: _jsx(IcTrash, { size: 11 }) }))] }))] }), _jsxs("div", { style: S.estNote, children: [preset === 'off' ? 'Compression off — large results are never offloaded.' : `Offloads results over ${(thr / 1000).toFixed(1)} KB at this fill (${preset}).`, ' ', "Projected estimate \u2014 system-prompt size is approximate.", lastAgent ? ` Last run ${fmtTok(lastAgent.inTok)}.` : ''] })] }), selected && (_jsxs("div", { style: S.detail, "data-testid": "context-detail", children: [_jsxs("div", { style: S.rowHead, children: [_jsxs("span", { style: S.secLabel, children: [_jsx("span", { style: { ...S.tempDot, background: selected.kind === 'system' ? 'var(--accent)' : 'var(--brand-cyan, #3fb6d4)' } }), selected.kind === 'system' ? 'System prompt' : 'Selected turn'] }), _jsxs("span", { style: S.secMeta, children: [fmtTok(selected.tok), " \u00B7 ", shareOfWindow(selected.tok)] })] }), _jsx("div", { style: S.detailText, children: selected.label }), selected.kind === 'turn' && (_jsxs("div", { style: S.actions, children: [_jsx("button", { style: S.turnAction, onClick: () => toggleInclude(selected.key), title: "Drop this turn \u2014 it moves to Not sent and is not sent to the model", children: "Drop" }), frozenBytesFor(selected.key) > 0 && (_jsxs("span", { style: S.secMeta, title: "This turn's large outputs were offloaded \u2014 a stub is in the window. Restore them under Not sent.", children: [kb(frozenBytesFor(selected.key)), " frozen"] }))] })), selected.kind === 'system' && (_jsx("div", { style: S.estNote, children: "The system prompt is always sent. Its parts are below." }))] })), _jsxs("div", { style: S.section, "data-testid": "system-row", children: [_jsxs("div", { style: S.sysRowStatic, children: [_jsx("span", { style: S.sysLabel, children: "System prompt" }), shownSource && _jsx("code", { style: S.sourceCode, title: "The system prompt file this conversation runs under", children: shownSource }), _jsxs("span", { style: S.secMeta, children: ["~", fmtTok(systemTok)] })] }), _jsxs("div", { style: S.quietRow, children: [_jsxs("span", { style: S.estNote, children: [composedIn.length > 0 ? `Includes ${composedIn.join(', ')}.` : 'Base prompt only.', parts.baseSystem ? ' File-type prompt overridden.' : ''] }), _jsx("span", { style: S.estNote, children: "Fixed for this conversation \u2014 Settings sets it for new conversations." })] })] }), !notSentEmpty && (_jsxs("div", { style: S.section, children: [_jsxs("button", { style: S.foldHead, onClick: () => setNotSentOpen((o) => !o), "aria-expanded": notSentOpen, title: "Everything excluded from the next request \u2014 parts you disabled, turns you dropped, and large outputs compression froze.", children: [_jsx("span", { style: { ...S.chev, transform: notSentOpen ? 'rotate(90deg)' : 'none' }, children: _jsx(IcChevron, { size: 12 }) }), _jsxs("span", { style: S.secLabel, children: [_jsx("span", { style: { ...S.tempDot, background: 'var(--surface-3)' } }), "Not sent"] }), _jsx("span", { style: { ...S.secMeta, marginLeft: 'auto' }, children: notSentSummary })] }), notSentOpen && (_jsxs("div", { style: S.list, children: [offParts.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "System-prompt parts this conversation was started without \u2014 its system prompt omits them. Settings sets this for new conversations.", children: ["System parts \u00B7 ", offParts.length, " \u00B7 ~", fmtTok(partsTok)] }), offParts.map((p) => (_jsxs("div", { style: S.turnCardHead, children: [_jsx("span", { style: { ...S.turnText, color: 'var(--text-tertiary)' }, children: p.label }), _jsxs("span", { style: S.turnMeta, children: ["~", fmtTok(partTok(p.key))] })] }, p.key)))] })), coldTurns.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "Whole exchanges you excluded \u2014 the model does not see them. Restore puts one back in the window.", children: ["Dropped turns \u00B7 ", coldTurns.length, " \u00B7 ", fmtTok(droppedTok)] }), coldTurns.map(({ t, tok }) => (_jsx(DroppedTurnRow, { turn: t, tok: tok, onRestore: () => toggleInclude(t.id) }, t.id)))] })), offloaded.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "Large tool outputs the compression setting froze out of the window. For each, a short stub pointing at it stays in its turn, and the assistant can pull the content back itself with recall_result.", children: ["Offloaded outputs \u00B7 ", offloaded.length, " \u00B7 ", kb(reclaimedBytes)] }), attributed.map(({ r, turnId, label, sourceDropped }) => (_jsx(OffloadRow, { record: r, fromLabel: label, sourceDropped: sourceDropped, note: restoreNotes[r.id], onRestore: offloadedSource ? () => { void restore(turnId, r); } : undefined }, r.id))), unattached.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("span", { style: S.subLabel, title: "Frozen outputs whose turn is no longer in this conversation \u2014 nothing in the window points at them. Preview here, or clear them with the trash button in the header above.", children: ["Unattached \u00B7 ", unattached.length, " \u00B7 ", kb(unattached.reduce((n, r) => n + r.bytes, 0))] }), unattached.map((r) => _jsx(OffloadRow, { record: r, fromLabel: null }, r.id))] }))] }))] }))] }))] }), manageOpen && (_jsx(ExclusionsModal, { rows: conversational, contextWindow: contextWindow, toggleInclude: toggleInclude, onClose: () => setManageOpen(false) }))] }));
|
|
303
330
|
}
|
|
304
331
|
function Legend({ c, k, v }) {
|
|
305
332
|
return _jsxs("span", { style: S.legItem, children: [_jsx("span", { style: { ...S.legDot, background: c } }), k, " ", _jsx("span", { style: S.legVal, children: v })] });
|
|
@@ -325,8 +352,13 @@ const S = {
|
|
|
325
352
|
bigDim: { color: 'var(--text-tertiary)', fontWeight: 500, fontSize: 15 },
|
|
326
353
|
pctChip: { fontSize: 12, fontWeight: 700, fontFamily: mono, color: 'var(--text-secondary)', background: 'var(--surface-3, var(--surface-2))', borderRadius: 'var(--radius-pill, 999px)', padding: '2px 9px' },
|
|
327
354
|
pctOver: { color: 'var(--danger)', background: 'var(--danger-soft)' },
|
|
328
|
-
|
|
329
|
-
|
|
355
|
+
pctWarn: { color: 'var(--warning, #b45309)', background: 'color-mix(in srgb, var(--warning, #e0a84a) 18%, transparent)' },
|
|
356
|
+
compactRow: { display: 'flex', alignItems: 'center', gap: 10, flexWrap: 'wrap' },
|
|
357
|
+
// The selected block, given a surface of its own: it is the only thing here
|
|
358
|
+
// that changes as you click around, so it should not read as another section.
|
|
359
|
+
detail: { display: 'flex', flexDirection: 'column', gap: 7, flexShrink: 0, padding: '11px 12px', border: '1px solid var(--border-subtle)', borderRadius: 'var(--radius-sm)', background: 'var(--surface-2)' },
|
|
360
|
+
detailText: { fontSize: 12.5, color: 'var(--text-primary)', lineHeight: 1.45, overflowWrap: 'anywhere' },
|
|
361
|
+
foldHead: { display: 'flex', alignItems: 'center', gap: 8, width: '100%', padding: '6px 2px', border: 0, background: 'transparent', cursor: 'pointer', font: 'inherit', textAlign: 'left' },
|
|
330
362
|
legend: { display: 'flex', flexWrap: 'wrap', alignItems: 'center', gap: 12 },
|
|
331
363
|
legItem: { display: 'inline-flex', alignItems: 'center', gap: 5, fontSize: 11.5, color: 'var(--text-secondary)' },
|
|
332
364
|
legDot: { width: 8, height: 8, borderRadius: 2, flexShrink: 0 },
|
|
@@ -339,7 +371,9 @@ const S = {
|
|
|
339
371
|
compRow: { display: 'flex', alignItems: 'center', gap: 10 },
|
|
340
372
|
select: { height: 26, padding: '0 8px', border: '1px solid var(--border-subtle)', borderRadius: 'var(--radius-sm)', background: 'var(--surface-2)', color: 'var(--text-primary)', fontSize: 11.5, fontFamily: 'inherit', fontWeight: 600, cursor: 'pointer', textTransform: 'capitalize' },
|
|
341
373
|
// system row
|
|
342
|
-
|
|
374
|
+
// Not a button any more: nothing here opens, because nothing here changes.
|
|
375
|
+
sysRowStatic: { display: 'flex', alignItems: 'center', gap: 8, padding: '8px 10px', border: '1px solid var(--border-subtle)', borderRadius: 'var(--radius-sm)', background: 'var(--surface-2)', color: 'var(--text-secondary)', width: '100%' },
|
|
376
|
+
quietRow: { display: 'flex', flexDirection: 'column', gap: 3, padding: '0 2px' },
|
|
343
377
|
sysLabel: { fontSize: 12.5, fontWeight: 600, color: 'var(--text-primary)' },
|
|
344
378
|
sourceCode: { fontFamily: mono, fontSize: 11, color: 'var(--text-primary)', background: 'var(--surface-3, var(--surface-2))', borderRadius: 'var(--radius-xs, 3px)', padding: '1px 5px', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', minWidth: 0, flex: 1, marginLeft: 2 },
|
|
345
379
|
chips: { display: 'flex', flexWrap: 'wrap', gap: 7 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextManager.js","sourceRoot":"","sources":["../ContextManager.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContextManager.js","sourceRoot":"","sources":["../ContextManager.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type StripKind = 'system' | 'turn';
|
|
3
|
+
export interface StripBlock {
|
|
4
|
+
key: string;
|
|
5
|
+
kind: StripKind;
|
|
6
|
+
/** Human label, used for the accessible name — a 2%-wide sliver has no room
|
|
7
|
+
* to print one, so the name is the only place it can live. */
|
|
8
|
+
label: string;
|
|
9
|
+
tok: number;
|
|
10
|
+
}
|
|
11
|
+
export declare function ContextStrip({ blocks, contextWindow, selected, onSelect }: {
|
|
12
|
+
blocks: StripBlock[];
|
|
13
|
+
/** 0 means the window is unknown (a proxied agent owns its own context). The
|
|
14
|
+
* strip then draws nothing rather than dividing by it -- the same choice
|
|
15
|
+
* ContextBar makes when it refuses to render 100% of zero. */
|
|
16
|
+
contextWindow: number;
|
|
17
|
+
selected: string | null;
|
|
18
|
+
onSelect: (key: string) => void;
|
|
19
|
+
}): React.JSX.Element;
|
|
20
|
+
//# sourceMappingURL=ContextStrip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContextStrip.d.ts","sourceRoot":"","sources":["../ContextStrip.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE1C,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,CAAC;IAChB;kEAC8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAWD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;IAC1E,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB;;kEAE8D;IAC9D,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,qBA2BA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { COMPACT_AT_FILL } from '@corenel/harness/core/compactHistory';
|
|
3
|
+
import { fmtTok } from '@corenel/ui-kit/usage';
|
|
4
|
+
/** Below this a block is invisible, and a thing in the window that draws as
|
|
5
|
+
* nothing is a lie. A 40-token turn in a 128K window is 0.03%. */
|
|
6
|
+
const MIN_PCT = 0.6;
|
|
7
|
+
const COLOR = {
|
|
8
|
+
system: 'var(--accent)',
|
|
9
|
+
turn: 'var(--brand-cyan, #3fb6d4)',
|
|
10
|
+
};
|
|
11
|
+
export function ContextStrip({ blocks, contextWindow, selected, onSelect }) {
|
|
12
|
+
const w = contextWindow > 0 ? contextWindow : 0;
|
|
13
|
+
const pct = (tok) => (w ? Math.max(MIN_PCT, (tok / w) * 100) : 0);
|
|
14
|
+
return (_jsx("div", { style: S.wrap, children: _jsxs("div", { style: S.strip, children: [w > 0 && blocks.map((b) => (_jsx("button", { type: "button", style: { ...S.blk, width: `${pct(b.tok)}%`, background: COLOR[b.kind], ...(selected === b.key ? S.blkOn : null) }, onClick: () => onSelect(b.key), "aria-current": selected === b.key ? 'true' : undefined, "aria-label": `${b.label} — ${fmtTok(b.tok)}`, title: `${b.label} — ${fmtTok(b.tok)}` }, b.key))), w > 0 && (_jsx("span", { "data-testid": "compact-threshold", style: { ...S.thr, left: `${COMPACT_AT_FILL * 100}%` }, title: `History is compacted once the window passes ${Math.round(COMPACT_AT_FILL * 100)}% full` }))] }) }));
|
|
15
|
+
}
|
|
16
|
+
const S = {
|
|
17
|
+
wrap: { position: 'relative' },
|
|
18
|
+
strip: { position: 'relative', display: 'flex', height: 34, borderRadius: 'var(--radius-sm)', background: 'var(--surface-3)', overflow: 'hidden', border: '1px solid var(--border-subtle)' },
|
|
19
|
+
blk: { height: '100%', border: 0, borderRight: '1px solid color-mix(in srgb, var(--surface-1) 45%, transparent)', padding: 0, cursor: 'pointer', transition: 'width var(--motion-fast)', minWidth: 0 },
|
|
20
|
+
// The selected block is inset rather than outlined: an outline on a 3%-wide
|
|
21
|
+
// sliver covers the block itself.
|
|
22
|
+
blkOn: { boxShadow: 'inset 0 0 0 2px var(--text-primary)' },
|
|
23
|
+
thr: { position: 'absolute', top: 0, bottom: 0, width: 2, background: 'var(--warning, #e0a84a)', pointerEvents: 'none' },
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=ContextStrip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContextStrip.js","sourceRoot":"","sources":["../ContextStrip.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ConversationTurn } from '@corenel/harness/conversation';
|
|
3
|
+
export interface ExclusionRow {
|
|
4
|
+
t: ConversationTurn;
|
|
5
|
+
tok: number;
|
|
6
|
+
}
|
|
7
|
+
export declare function ExclusionsModal({ rows, contextWindow, toggleInclude, onClose }: {
|
|
8
|
+
rows: ExclusionRow[];
|
|
9
|
+
contextWindow: number;
|
|
10
|
+
toggleInclude: (id: string) => void;
|
|
11
|
+
onClose: () => void;
|
|
12
|
+
}): React.JSX.Element;
|
|
13
|
+
//# sourceMappingURL=ExclusionsModal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExclusionsModal.d.ts","sourceRoot":"","sources":["../ExclusionsModal.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAItE,MAAM,WAAW,YAAY;IAAG,CAAC,EAAE,gBAAgB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE;AAalE,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE;IAC/E,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,qBAsFA"}
|