init claude-code

This commit is contained in:
2026-04-01 17:32:37 +02:00
commit 73b208c009
1902 changed files with 513237 additions and 0 deletions
File diff suppressed because one or more lines are too long
@@ -0,0 +1,31 @@
import { c as _c } from "react/compiler-runtime";
import React from 'react';
import { Box, Text } from '../../ink.js';
type Props = {
addMargin: boolean;
};
export function AssistantRedactedThinkingMessage(t0) {
const $ = _c(3);
const {
addMargin: t1
} = t0;
const addMargin = t1 === undefined ? false : t1;
const t2 = addMargin ? 1 : 0;
let t3;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t3 = <Text dimColor={true} italic={true}> Thinking</Text>;
$[0] = t3;
} else {
t3 = $[0];
}
let t4;
if ($[1] !== t2) {
t4 = <Box marginTop={t2}>{t3}</Box>;
$[1] = t2;
$[2] = t4;
} else {
t4 = $[2];
}
return t4;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJveCIsIlRleHQiLCJQcm9wcyIsImFkZE1hcmdpbiIsIkFzc2lzdGFudFJlZGFjdGVkVGhpbmtpbmdNZXNzYWdlIiwidDAiLCIkIiwiX2MiLCJ0MSIsInVuZGVmaW5lZCIsInQyIiwidDMiLCJTeW1ib2wiLCJmb3IiLCJ0NCJdLCJzb3VyY2VzIjpbIkFzc2lzdGFudFJlZGFjdGVkVGhpbmtpbmdNZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCb3gsIFRleHQgfSBmcm9tICcuLi8uLi9pbmsuanMnXG5cbnR5cGUgUHJvcHMgPSB7XG4gIGFkZE1hcmdpbjogYm9vbGVhblxufVxuXG5leHBvcnQgZnVuY3Rpb24gQXNzaXN0YW50UmVkYWN0ZWRUaGlua2luZ01lc3NhZ2Uoe1xuICBhZGRNYXJnaW4gPSBmYWxzZSxcbn06IFByb3BzKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgcmV0dXJuIChcbiAgICA8Qm94IG1hcmdpblRvcD17YWRkTWFyZ2luID8gMSA6IDB9PlxuICAgICAgPFRleHQgZGltQ29sb3IgaXRhbGljPlxuICAgICAgICDinLsgVGhpbmtpbmfigKZcbiAgICAgIDwvVGV4dD5cbiAgICA8L0JveD5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsT0FBT0EsS0FBSyxNQUFNLE9BQU87QUFDekIsU0FBU0MsR0FBRyxFQUFFQyxJQUFJLFFBQVEsY0FBYztBQUV4QyxLQUFLQyxLQUFLLEdBQUc7RUFDWEMsU0FBUyxFQUFFLE9BQU87QUFDcEIsQ0FBQztBQUVELE9BQU8sU0FBQUMsaUNBQUFDLEVBQUE7RUFBQSxNQUFBQyxDQUFBLEdBQUFDLEVBQUE7RUFBMEM7SUFBQUosU0FBQSxFQUFBSztFQUFBLElBQUFILEVBRXpDO0VBRE4sTUFBQUYsU0FBQSxHQUFBSyxFQUFpQixLQUFqQkMsU0FBaUIsR0FBakIsS0FBaUIsR0FBakJELEVBQWlCO0VBR0MsTUFBQUUsRUFBQSxHQUFBUCxTQUFTLEdBQVQsQ0FBaUIsR0FBakIsQ0FBaUI7RUFBQSxJQUFBUSxFQUFBO0VBQUEsSUFBQUwsQ0FBQSxRQUFBTSxNQUFBLENBQUFDLEdBQUE7SUFDL0JGLEVBQUEsSUFBQyxJQUFJLENBQUMsUUFBUSxDQUFSLEtBQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBTixLQUFLLENBQUMsQ0FBQyxXQUV0QixFQUZDLElBQUksQ0FFRTtJQUFBTCxDQUFBLE1BQUFLLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFMLENBQUE7RUFBQTtFQUFBLElBQUFRLEVBQUE7RUFBQSxJQUFBUixDQUFBLFFBQUFJLEVBQUE7SUFIVEksRUFBQSxJQUFDLEdBQUcsQ0FBWSxTQUFpQixDQUFqQixDQUFBSixFQUFnQixDQUFDLENBQy9CLENBQUFDLEVBRU0sQ0FDUixFQUpDLEdBQUcsQ0FJRTtJQUFBTCxDQUFBLE1BQUFJLEVBQUE7SUFBQUosQ0FBQSxNQUFBUSxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBUixDQUFBO0VBQUE7RUFBQSxPQUpOUSxFQUlNO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,18 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import { Box, Text } from '../../ink.js';
import { useShortcutDisplay } from '../../keybindings/useShortcutDisplay.js';
export function CompactBoundaryMessage() {
const $ = _c(2);
const historyShortcut = useShortcutDisplay("app:toggleTranscript", "Global", "ctrl+o");
let t0;
if ($[0] !== historyShortcut) {
t0 = <Box marginY={1}><Text dimColor={true}> Conversation compacted ({historyShortcut} for history)</Text></Box>;
$[0] = historyShortcut;
$[1] = t0;
} else {
t0 = $[1];
}
return t0;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJveCIsIlRleHQiLCJ1c2VTaG9ydGN1dERpc3BsYXkiLCJDb21wYWN0Qm91bmRhcnlNZXNzYWdlIiwiJCIsIl9jIiwiaGlzdG9yeVNob3J0Y3V0IiwidDAiXSwic291cmNlcyI6WyJDb21wYWN0Qm91bmRhcnlNZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJveCwgVGV4dCB9IGZyb20gJy4uLy4uL2luay5qcydcbmltcG9ydCB7IHVzZVNob3J0Y3V0RGlzcGxheSB9IGZyb20gJy4uLy4uL2tleWJpbmRpbmdzL3VzZVNob3J0Y3V0RGlzcGxheS5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIENvbXBhY3RCb3VuZGFyeU1lc3NhZ2UoKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgY29uc3QgaGlzdG9yeVNob3J0Y3V0ID0gdXNlU2hvcnRjdXREaXNwbGF5KFxuICAgICdhcHA6dG9nZ2xlVHJhbnNjcmlwdCcsXG4gICAgJ0dsb2JhbCcsXG4gICAgJ2N0cmwrbycsXG4gIClcblxuICByZXR1cm4gKFxuICAgIDxCb3ggbWFyZ2luWT17MX0+XG4gICAgICA8VGV4dCBkaW1Db2xvcj5cbiAgICAgICAg4py7IENvbnZlcnNhdGlvbiBjb21wYWN0ZWQgKHtoaXN0b3J5U2hvcnRjdXR9IGZvciBoaXN0b3J5KVxuICAgICAgPC9UZXh0PlxuICAgIDwvQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLFNBQVNDLEdBQUcsRUFBRUMsSUFBSSxRQUFRLGNBQWM7QUFDeEMsU0FBU0Msa0JBQWtCLFFBQVEseUNBQXlDO0FBRTVFLE9BQU8sU0FBQUMsdUJBQUE7RUFBQSxNQUFBQyxDQUFBLEdBQUFDLEVBQUE7RUFDTCxNQUFBQyxlQUFBLEdBQXdCSixrQkFBa0IsQ0FDeEMsc0JBQXNCLEVBQ3RCLFFBQVEsRUFDUixRQUNGLENBQUM7RUFBQSxJQUFBSyxFQUFBO0VBQUEsSUFBQUgsQ0FBQSxRQUFBRSxlQUFBO0lBR0NDLEVBQUEsSUFBQyxHQUFHLENBQVUsT0FBQyxDQUFELEdBQUMsQ0FDYixDQUFDLElBQUksQ0FBQyxRQUFRLENBQVIsS0FBTyxDQUFDLENBQUMsMEJBQ2NELGdCQUFjLENBQUUsYUFDN0MsRUFGQyxJQUFJLENBR1AsRUFKQyxHQUFHLENBSUU7SUFBQUYsQ0FBQSxNQUFBRSxlQUFBO0lBQUFGLENBQUEsTUFBQUcsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQUgsQ0FBQTtFQUFBO0VBQUEsT0FKTkcsRUFJTTtBQUFBIiwiaWdub3JlTGlzdCI6W119
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,83 @@
import { c as _c } from "react/compiler-runtime";
import type { TextBlockParam } from '@anthropic-ai/sdk/resources/index.mjs';
import * as React from 'react';
import { BLACK_CIRCLE } from '../../constants/figures.js';
import { Box, Text, type TextProps } from '../../ink.js';
import { extractTag } from '../../utils/messages.js';
type Props = {
addMargin: boolean;
param: TextBlockParam;
};
function getStatusColor(status: string | null): TextProps['color'] {
switch (status) {
case 'completed':
return 'success';
case 'failed':
return 'error';
case 'killed':
return 'warning';
default:
return 'text';
}
}
export function UserAgentNotificationMessage(t0) {
const $ = _c(12);
const {
addMargin,
param: t1
} = t0;
const {
text
} = t1;
let t2;
if ($[0] !== text) {
t2 = extractTag(text, "summary");
$[0] = text;
$[1] = t2;
} else {
t2 = $[1];
}
const summary = t2;
if (!summary) {
return null;
}
let t3;
if ($[2] !== text) {
const status = extractTag(text, "status");
t3 = getStatusColor(status);
$[2] = text;
$[3] = t3;
} else {
t3 = $[3];
}
const color = t3;
const t4 = addMargin ? 1 : 0;
let t5;
if ($[4] !== color) {
t5 = <Text color={color}>{BLACK_CIRCLE}</Text>;
$[4] = color;
$[5] = t5;
} else {
t5 = $[5];
}
let t6;
if ($[6] !== summary || $[7] !== t5) {
t6 = <Text>{t5} {summary}</Text>;
$[6] = summary;
$[7] = t5;
$[8] = t6;
} else {
t6 = $[8];
}
let t7;
if ($[9] !== t4 || $[10] !== t6) {
t7 = <Box marginTop={t4}>{t6}</Box>;
$[9] = t4;
$[10] = t6;
$[11] = t7;
} else {
t7 = $[11];
}
return t7;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZXh0QmxvY2tQYXJhbSIsIlJlYWN0IiwiQkxBQ0tfQ0lSQ0xFIiwiQm94IiwiVGV4dCIsIlRleHRQcm9wcyIsImV4dHJhY3RUYWciLCJQcm9wcyIsImFkZE1hcmdpbiIsInBhcmFtIiwiZ2V0U3RhdHVzQ29sb3IiLCJzdGF0dXMiLCJVc2VyQWdlbnROb3RpZmljYXRpb25NZXNzYWdlIiwidDAiLCIkIiwiX2MiLCJ0MSIsInRleHQiLCJ0MiIsInN1bW1hcnkiLCJ0MyIsImNvbG9yIiwidDQiLCJ0NSIsInQ2IiwidDciXSwic291cmNlcyI6WyJVc2VyQWdlbnROb3RpZmljYXRpb25NZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFRleHRCbG9ja1BhcmFtIH0gZnJvbSAnQGFudGhyb3BpYy1haS9zZGsvcmVzb3VyY2VzL2luZGV4Lm1qcydcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQkxBQ0tfQ0lSQ0xFIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2ZpZ3VyZXMuanMnXG5pbXBvcnQgeyBCb3gsIFRleHQsIHR5cGUgVGV4dFByb3BzIH0gZnJvbSAnLi4vLi4vaW5rLmpzJ1xuaW1wb3J0IHsgZXh0cmFjdFRhZyB9IGZyb20gJy4uLy4uL3V0aWxzL21lc3NhZ2VzLmpzJ1xuXG50eXBlIFByb3BzID0ge1xuICBhZGRNYXJnaW46IGJvb2xlYW5cbiAgcGFyYW06IFRleHRCbG9ja1BhcmFtXG59XG5cbmZ1bmN0aW9uIGdldFN0YXR1c0NvbG9yKHN0YXR1czogc3RyaW5nIHwgbnVsbCk6IFRleHRQcm9wc1snY29sb3InXSB7XG4gIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgY2FzZSAnY29tcGxldGVkJzpcbiAgICAgIHJldHVybiAnc3VjY2VzcydcbiAgICBjYXNlICdmYWlsZWQnOlxuICAgICAgcmV0dXJuICdlcnJvcidcbiAgICBjYXNlICdraWxsZWQnOlxuICAgICAgcmV0dXJuICd3YXJuaW5nJ1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJ3RleHQnXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFVzZXJBZ2VudE5vdGlmaWNhdGlvbk1lc3NhZ2Uoe1xuICBhZGRNYXJnaW4sXG4gIHBhcmFtOiB7IHRleHQgfSxcbn06IFByb3BzKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgY29uc3Qgc3VtbWFyeSA9IGV4dHJhY3RUYWcodGV4dCwgJ3N1bW1hcnknKVxuICBpZiAoIXN1bW1hcnkpIHJldHVybiBudWxsXG5cbiAgY29uc3Qgc3RhdHVzID0gZXh0cmFjdFRhZyh0ZXh0LCAnc3RhdHVzJylcbiAgY29uc3QgY29sb3IgPSBnZXRTdGF0dXNDb2xvcihzdGF0dXMpXG5cbiAgcmV0dXJuIChcbiAgICA8Qm94IG1hcmdpblRvcD17YWRkTWFyZ2luID8gMSA6IDB9PlxuICAgICAgPFRleHQ+XG4gICAgICAgIDxUZXh0IGNvbG9yPXtjb2xvcn0+e0JMQUNLX0NJUkNMRX08L1RleHQ+IHtzdW1tYXJ5fVxuICAgICAgPC9UZXh0PlxuICAgIDwvQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxjQUFjQSxjQUFjLFFBQVEsdUNBQXVDO0FBQzNFLE9BQU8sS0FBS0MsS0FBSyxNQUFNLE9BQU87QUFDOUIsU0FBU0MsWUFBWSxRQUFRLDRCQUE0QjtBQUN6RCxTQUFTQyxHQUFHLEVBQUVDLElBQUksRUFBRSxLQUFLQyxTQUFTLFFBQVEsY0FBYztBQUN4RCxTQUFTQyxVQUFVLFFBQVEseUJBQXlCO0FBRXBELEtBQUtDLEtBQUssR0FBRztFQUNYQyxTQUFTLEVBQUUsT0FBTztFQUNsQkMsS0FBSyxFQUFFVCxjQUFjO0FBQ3ZCLENBQUM7QUFFRCxTQUFTVSxjQUFjQSxDQUFDQyxNQUFNLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FBQyxFQUFFTixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7RUFDakUsUUFBUU0sTUFBTTtJQUNaLEtBQUssV0FBVztNQUNkLE9BQU8sU0FBUztJQUNsQixLQUFLLFFBQVE7TUFDWCxPQUFPLE9BQU87SUFDaEIsS0FBSyxRQUFRO01BQ1gsT0FBTyxTQUFTO0lBQ2xCO01BQ0UsT0FBTyxNQUFNO0VBQ2pCO0FBQ0Y7QUFFQSxPQUFPLFNBQUFDLDZCQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQXNDO0lBQUFQLFNBQUE7SUFBQUMsS0FBQSxFQUFBTztFQUFBLElBQUFILEVBR3JDO0VBREM7SUFBQUk7RUFBQSxJQUFBRCxFQUFRO0VBQUEsSUFBQUUsRUFBQTtFQUFBLElBQUFKLENBQUEsUUFBQUcsSUFBQTtJQUVDQyxFQUFBLEdBQUFaLFVBQVUsQ0FBQ1csSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUFBSCxDQUFBLE1BQUFHLElBQUE7SUFBQUgsQ0FBQSxNQUFBSSxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBSixDQUFBO0VBQUE7RUFBM0MsTUFBQUssT0FBQSxHQUFnQkQsRUFBMkI7RUFDM0MsSUFBSSxDQUFDQyxPQUFPO0lBQUEsT0FBUyxJQUFJO0VBQUE7RUFBQSxJQUFBQyxFQUFBO0VBQUEsSUFBQU4sQ0FBQSxRQUFBRyxJQUFBO0lBRXpCLE1BQUFOLE1BQUEsR0FBZUwsVUFBVSxDQUFDVyxJQUFJLEVBQUUsUUFBUSxDQUFDO0lBQzNCRyxFQUFBLEdBQUFWLGNBQWMsQ0FBQ0MsTUFBTSxDQUFDO0lBQUFHLENBQUEsTUFBQUcsSUFBQTtJQUFBSCxDQUFBLE1BQUFNLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFOLENBQUE7RUFBQTtFQUFwQyxNQUFBTyxLQUFBLEdBQWNELEVBQXNCO0VBR2xCLE1BQUFFLEVBQUEsR0FBQWQsU0FBUyxHQUFULENBQWlCLEdBQWpCLENBQWlCO0VBQUEsSUFBQWUsRUFBQTtFQUFBLElBQUFULENBQUEsUUFBQU8sS0FBQTtJQUU3QkUsRUFBQSxJQUFDLElBQUksQ0FBUUYsS0FBSyxDQUFMQSxNQUFJLENBQUMsQ0FBR25CLGFBQVcsQ0FBRSxFQUFqQyxJQUFJLENBQW9DO0lBQUFZLENBQUEsTUFBQU8sS0FBQTtJQUFBUCxDQUFBLE1BQUFTLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFULENBQUE7RUFBQTtFQUFBLElBQUFVLEVBQUE7RUFBQSxJQUFBVixDQUFBLFFBQUFLLE9BQUEsSUFBQUwsQ0FBQSxRQUFBUyxFQUFBO0lBRDNDQyxFQUFBLElBQUMsSUFBSSxDQUNILENBQUFELEVBQXdDLENBQUMsQ0FBRUosUUFBTSxDQUNuRCxFQUZDLElBQUksQ0FFRTtJQUFBTCxDQUFBLE1BQUFLLE9BQUE7SUFBQUwsQ0FBQSxNQUFBUyxFQUFBO0lBQUFULENBQUEsTUFBQVUsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQVYsQ0FBQTtFQUFBO0VBQUEsSUFBQVcsRUFBQTtFQUFBLElBQUFYLENBQUEsUUFBQVEsRUFBQSxJQUFBUixDQUFBLFNBQUFVLEVBQUE7SUFIVEMsRUFBQSxJQUFDLEdBQUcsQ0FBWSxTQUFpQixDQUFqQixDQUFBSCxFQUFnQixDQUFDLENBQy9CLENBQUFFLEVBRU0sQ0FDUixFQUpDLEdBQUcsQ0FJRTtJQUFBVixDQUFBLE1BQUFRLEVBQUE7SUFBQVIsQ0FBQSxPQUFBVSxFQUFBO0lBQUFWLENBQUEsT0FBQVcsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQVgsQ0FBQTtFQUFBO0VBQUEsT0FKTlcsRUFJTTtBQUFBIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,58 @@
import { c as _c } from "react/compiler-runtime";
import type { TextBlockParam } from '@anthropic-ai/sdk/resources/index.mjs';
import * as React from 'react';
import { Box, Text } from '../../ink.js';
import { extractTag } from '../../utils/messages.js';
type Props = {
addMargin: boolean;
param: TextBlockParam;
};
export function UserBashInputMessage(t0) {
const $ = _c(8);
const {
param: t1,
addMargin
} = t0;
const {
text
} = t1;
let t2;
if ($[0] !== text) {
t2 = extractTag(text, "bash-input");
$[0] = text;
$[1] = t2;
} else {
t2 = $[1];
}
const input = t2;
if (!input) {
return null;
}
const t3 = addMargin ? 1 : 0;
let t4;
if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
t4 = <Text color="bashBorder">! </Text>;
$[2] = t4;
} else {
t4 = $[2];
}
let t5;
if ($[3] !== input) {
t5 = <Text color="text">{input}</Text>;
$[3] = input;
$[4] = t5;
} else {
t5 = $[4];
}
let t6;
if ($[5] !== t3 || $[6] !== t5) {
t6 = <Box flexDirection="row" marginTop={t3} backgroundColor="bashMessageBackgroundColor" paddingRight={1}>{t4}{t5}</Box>;
$[5] = t3;
$[6] = t5;
$[7] = t6;
} else {
t6 = $[7];
}
return t6;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZXh0QmxvY2tQYXJhbSIsIlJlYWN0IiwiQm94IiwiVGV4dCIsImV4dHJhY3RUYWciLCJQcm9wcyIsImFkZE1hcmdpbiIsInBhcmFtIiwiVXNlckJhc2hJbnB1dE1lc3NhZ2UiLCJ0MCIsIiQiLCJfYyIsInQxIiwidGV4dCIsInQyIiwiaW5wdXQiLCJ0MyIsInQ0IiwiU3ltYm9sIiwiZm9yIiwidDUiLCJ0NiJdLCJzb3VyY2VzIjpbIlVzZXJCYXNoSW5wdXRNZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFRleHRCbG9ja1BhcmFtIH0gZnJvbSAnQGFudGhyb3BpYy1haS9zZGsvcmVzb3VyY2VzL2luZGV4Lm1qcydcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQm94LCBUZXh0IH0gZnJvbSAnLi4vLi4vaW5rLmpzJ1xuaW1wb3J0IHsgZXh0cmFjdFRhZyB9IGZyb20gJy4uLy4uL3V0aWxzL21lc3NhZ2VzLmpzJ1xuXG50eXBlIFByb3BzID0ge1xuICBhZGRNYXJnaW46IGJvb2xlYW5cbiAgcGFyYW06IFRleHRCbG9ja1BhcmFtXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBVc2VyQmFzaElucHV0TWVzc2FnZSh7XG4gIHBhcmFtOiB7IHRleHQgfSxcbiAgYWRkTWFyZ2luLFxufTogUHJvcHMpOiBSZWFjdC5SZWFjdE5vZGUge1xuICBjb25zdCBpbnB1dCA9IGV4dHJhY3RUYWcodGV4dCwgJ2Jhc2gtaW5wdXQnKVxuICBpZiAoIWlucHV0KSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuICByZXR1cm4gKFxuICAgIDxCb3hcbiAgICAgIGZsZXhEaXJlY3Rpb249XCJyb3dcIlxuICAgICAgbWFyZ2luVG9wPXthZGRNYXJnaW4gPyAxIDogMH1cbiAgICAgIGJhY2tncm91bmRDb2xvcj1cImJhc2hNZXNzYWdlQmFja2dyb3VuZENvbG9yXCJcbiAgICAgIHBhZGRpbmdSaWdodD17MX1cbiAgICA+XG4gICAgICA8VGV4dCBjb2xvcj1cImJhc2hCb3JkZXJcIj4hIDwvVGV4dD5cbiAgICAgIDxUZXh0IGNvbG9yPVwidGV4dFwiPntpbnB1dH08L1RleHQ+XG4gICAgPC9Cb3g+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLGNBQWNBLGNBQWMsUUFBUSx1Q0FBdUM7QUFDM0UsT0FBTyxLQUFLQyxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxHQUFHLEVBQUVDLElBQUksUUFBUSxjQUFjO0FBQ3hDLFNBQVNDLFVBQVUsUUFBUSx5QkFBeUI7QUFFcEQsS0FBS0MsS0FBSyxHQUFHO0VBQ1hDLFNBQVMsRUFBRSxPQUFPO0VBQ2xCQyxLQUFLLEVBQUVQLGNBQWM7QUFDdkIsQ0FBQztBQUVELE9BQU8sU0FBQVEscUJBQUFDLEVBQUE7RUFBQSxNQUFBQyxDQUFBLEdBQUFDLEVBQUE7RUFBOEI7SUFBQUosS0FBQSxFQUFBSyxFQUFBO0lBQUFOO0VBQUEsSUFBQUcsRUFHN0I7RUFGQztJQUFBSTtFQUFBLElBQUFELEVBQVE7RUFBQSxJQUFBRSxFQUFBO0VBQUEsSUFBQUosQ0FBQSxRQUFBRyxJQUFBO0lBR0RDLEVBQUEsR0FBQVYsVUFBVSxDQUFDUyxJQUFJLEVBQUUsWUFBWSxDQUFDO0lBQUFILENBQUEsTUFBQUcsSUFBQTtJQUFBSCxDQUFBLE1BQUFJLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFKLENBQUE7RUFBQTtFQUE1QyxNQUFBSyxLQUFBLEdBQWNELEVBQThCO0VBQzVDLElBQUksQ0FBQ0MsS0FBSztJQUFBLE9BQ0QsSUFBSTtFQUFBO0VBS0UsTUFBQUMsRUFBQSxHQUFBVixTQUFTLEdBQVQsQ0FBaUIsR0FBakIsQ0FBaUI7RUFBQSxJQUFBVyxFQUFBO0VBQUEsSUFBQVAsQ0FBQSxRQUFBUSxNQUFBLENBQUFDLEdBQUE7SUFJNUJGLEVBQUEsSUFBQyxJQUFJLENBQU8sS0FBWSxDQUFaLFlBQVksQ0FBQyxFQUFFLEVBQTFCLElBQUksQ0FBNkI7SUFBQVAsQ0FBQSxNQUFBTyxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBUCxDQUFBO0VBQUE7RUFBQSxJQUFBVSxFQUFBO0VBQUEsSUFBQVYsQ0FBQSxRQUFBSyxLQUFBO0lBQ2xDSyxFQUFBLElBQUMsSUFBSSxDQUFPLEtBQU0sQ0FBTixNQUFNLENBQUVMLE1BQUksQ0FBRSxFQUF6QixJQUFJLENBQTRCO0lBQUFMLENBQUEsTUFBQUssS0FBQTtJQUFBTCxDQUFBLE1BQUFVLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFWLENBQUE7RUFBQTtFQUFBLElBQUFXLEVBQUE7RUFBQSxJQUFBWCxDQUFBLFFBQUFNLEVBQUEsSUFBQU4sQ0FBQSxRQUFBVSxFQUFBO0lBUG5DQyxFQUFBLElBQUMsR0FBRyxDQUNZLGFBQUssQ0FBTCxLQUFLLENBQ1IsU0FBaUIsQ0FBakIsQ0FBQUwsRUFBZ0IsQ0FBQyxDQUNaLGVBQTRCLENBQTVCLDRCQUE0QixDQUM5QixZQUFDLENBQUQsR0FBQyxDQUVmLENBQUFDLEVBQWlDLENBQ2pDLENBQUFHLEVBQWdDLENBQ2xDLEVBUkMsR0FBRyxDQVFFO0lBQUFWLENBQUEsTUFBQU0sRUFBQTtJQUFBTixDQUFBLE1BQUFVLEVBQUE7SUFBQVYsQ0FBQSxNQUFBVyxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBWCxDQUFBO0VBQUE7RUFBQSxPQVJOVyxFQVFNO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,54 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import BashToolResultMessage from '../../tools/BashTool/BashToolResultMessage.js';
import { extractTag } from '../../utils/messages.js';
export function UserBashOutputMessage(t0) {
const $ = _c(10);
const {
content,
verbose
} = t0;
let t1;
if ($[0] !== content) {
const rawStdout = extractTag(content, "bash-stdout") ?? "";
t1 = extractTag(rawStdout, "persisted-output") ?? rawStdout;
$[0] = content;
$[1] = t1;
} else {
t1 = $[1];
}
const stdout = t1;
let t2;
if ($[2] !== content) {
t2 = extractTag(content, "bash-stderr") ?? "";
$[2] = content;
$[3] = t2;
} else {
t2 = $[3];
}
const stderr = t2;
let t3;
if ($[4] !== stderr || $[5] !== stdout) {
t3 = {
stdout,
stderr
};
$[4] = stderr;
$[5] = stdout;
$[6] = t3;
} else {
t3 = $[6];
}
const t4 = !!verbose;
let t5;
if ($[7] !== t3 || $[8] !== t4) {
t5 = <BashToolResultMessage content={t3} verbose={t4} />;
$[7] = t3;
$[8] = t4;
$[9] = t5;
} else {
t5 = $[9];
}
return t5;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJhc2hUb29sUmVzdWx0TWVzc2FnZSIsImV4dHJhY3RUYWciLCJVc2VyQmFzaE91dHB1dE1lc3NhZ2UiLCJ0MCIsIiQiLCJfYyIsImNvbnRlbnQiLCJ2ZXJib3NlIiwidDEiLCJyYXdTdGRvdXQiLCJzdGRvdXQiLCJ0MiIsInN0ZGVyciIsInQzIiwidDQiLCJ0NSJdLCJzb3VyY2VzIjpbIlVzZXJCYXNoT3V0cHV0TWVzc2FnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgQmFzaFRvb2xSZXN1bHRNZXNzYWdlIGZyb20gJy4uLy4uL3Rvb2xzL0Jhc2hUb29sL0Jhc2hUb29sUmVzdWx0TWVzc2FnZS5qcydcbmltcG9ydCB7IGV4dHJhY3RUYWcgfSBmcm9tICcuLi8uLi91dGlscy9tZXNzYWdlcy5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIFVzZXJCYXNoT3V0cHV0TWVzc2FnZSh7XG4gIGNvbnRlbnQsXG4gIHZlcmJvc2UsXG59OiB7XG4gIGNvbnRlbnQ6IHN0cmluZ1xuICB2ZXJib3NlPzogYm9vbGVhblxufSk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IHJhd1N0ZG91dCA9IGV4dHJhY3RUYWcoY29udGVudCwgJ2Jhc2gtc3Rkb3V0JykgPz8gJydcbiAgLy8gVW53cmFwIDxwZXJzaXN0ZWQtb3V0cHV0PiBpZiBwcmVzZW50IOKAlCBrZWVwIHRoZSBpbm5lciBjb250ZW50IChmaWxlIHBhdGggK1xuICAvLyBwcmV2aWV3KSBmb3IgdGhlIHVzZXI7IHRoZSB3cmFwcGVyIHRhZyBpdHNlbGYgaXMgbW9kZWwtZmFjaW5nIHNpZ25hbGluZy5cbiAgY29uc3Qgc3Rkb3V0ID0gZXh0cmFjdFRhZyhyYXdTdGRvdXQsICdwZXJzaXN0ZWQtb3V0cHV0JykgPz8gcmF3U3Rkb3V0XG4gIGNvbnN0IHN0ZGVyciA9IGV4dHJhY3RUYWcoY29udGVudCwgJ2Jhc2gtc3RkZXJyJykgPz8gJydcbiAgcmV0dXJuIChcbiAgICA8QmFzaFRvb2xSZXN1bHRNZXNzYWdlIGNvbnRlbnQ9e3sgc3Rkb3V0LCBzdGRlcnIgfX0gdmVyYm9zZT17ISF2ZXJib3NlfSAvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU9DLHFCQUFxQixNQUFNLCtDQUErQztBQUNqRixTQUFTQyxVQUFVLFFBQVEseUJBQXlCO0FBRXBELE9BQU8sU0FBQUMsc0JBQUFDLEVBQUE7RUFBQSxNQUFBQyxDQUFBLEdBQUFDLEVBQUE7RUFBK0I7SUFBQUMsT0FBQTtJQUFBQztFQUFBLElBQUFKLEVBTXJDO0VBQUEsSUFBQUssRUFBQTtFQUFBLElBQUFKLENBQUEsUUFBQUUsT0FBQTtJQUNDLE1BQUFHLFNBQUEsR0FBa0JSLFVBQVUsQ0FBQ0ssT0FBTyxFQUFFLGFBQW1CLENBQUMsSUFBeEMsRUFBd0M7SUFHM0NFLEVBQUEsR0FBQVAsVUFBVSxDQUFDUSxTQUFTLEVBQUUsa0JBQStCLENBQUMsSUFBdERBLFNBQXNEO0lBQUFMLENBQUEsTUFBQUUsT0FBQTtJQUFBRixDQUFBLE1BQUFJLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFKLENBQUE7RUFBQTtFQUFyRSxNQUFBTSxNQUFBLEdBQWVGLEVBQXNEO0VBQUEsSUFBQUcsRUFBQTtFQUFBLElBQUFQLENBQUEsUUFBQUUsT0FBQTtJQUN0REssRUFBQSxHQUFBVixVQUFVLENBQUNLLE9BQU8sRUFBRSxhQUFtQixDQUFDLElBQXhDLEVBQXdDO0lBQUFGLENBQUEsTUFBQUUsT0FBQTtJQUFBRixDQUFBLE1BQUFPLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFQLENBQUE7RUFBQTtFQUF2RCxNQUFBUSxNQUFBLEdBQWVELEVBQXdDO0VBQUEsSUFBQUUsRUFBQTtFQUFBLElBQUFULENBQUEsUUFBQVEsTUFBQSxJQUFBUixDQUFBLFFBQUFNLE1BQUE7SUFFckJHLEVBQUE7TUFBQUgsTUFBQTtNQUFBRTtJQUFpQixDQUFDO0lBQUFSLENBQUEsTUFBQVEsTUFBQTtJQUFBUixDQUFBLE1BQUFNLE1BQUE7SUFBQU4sQ0FBQSxNQUFBUyxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBVCxDQUFBO0VBQUE7RUFBVyxNQUFBVSxFQUFBLElBQUMsQ0FBQ1AsT0FBTztFQUFBLElBQUFRLEVBQUE7RUFBQSxJQUFBWCxDQUFBLFFBQUFTLEVBQUEsSUFBQVQsQ0FBQSxRQUFBVSxFQUFBO0lBQXRFQyxFQUFBLElBQUMscUJBQXFCLENBQVUsT0FBa0IsQ0FBbEIsQ0FBQUYsRUFBaUIsQ0FBQyxDQUFXLE9BQVMsQ0FBVCxDQUFBQyxFQUFRLENBQUMsR0FBSTtJQUFBVixDQUFBLE1BQUFTLEVBQUE7SUFBQVQsQ0FBQSxNQUFBVSxFQUFBO0lBQUFWLENBQUEsTUFBQVcsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQVgsQ0FBQTtFQUFBO0VBQUEsT0FBMUVXLEVBQTBFO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+59
View File
@@ -0,0 +1,59 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import { pathToFileURL } from 'url';
import Link from '../../ink/components/Link.js';
import { supportsHyperlinks } from '../../ink/supports-hyperlinks.js';
import { Box, Text } from '../../ink.js';
import { getStoredImagePath } from '../../utils/imageStore.js';
import { MessageResponse } from '../MessageResponse.js';
type Props = {
imageId?: number;
addMargin?: boolean;
};
/**
* Renders an image attachment in user messages.
* Shows as a clickable link if the image is stored and terminal supports hyperlinks.
* Uses MessageResponse styling to appear connected to the message above,
* unless addMargin is true (image starts a new user turn without text).
*/
export function UserImageMessage(t0) {
const $ = _c(7);
const {
imageId,
addMargin
} = t0;
const label = imageId ? `[Image #${imageId}]` : "[Image]";
let t1;
if ($[0] !== imageId || $[1] !== label) {
const imagePath = imageId ? getStoredImagePath(imageId) : null;
t1 = imagePath && supportsHyperlinks() ? <Link url={pathToFileURL(imagePath).href}><Text>{label}</Text></Link> : <Text>{label}</Text>;
$[0] = imageId;
$[1] = label;
$[2] = t1;
} else {
t1 = $[2];
}
const content = t1;
if (addMargin) {
let t2;
if ($[3] !== content) {
t2 = <Box marginTop={1}>{content}</Box>;
$[3] = content;
$[4] = t2;
} else {
t2 = $[4];
}
return t2;
}
let t2;
if ($[5] !== content) {
t2 = <MessageResponse>{content}</MessageResponse>;
$[5] = content;
$[6] = t2;
} else {
t2 = $[6];
}
return t2;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInBhdGhUb0ZpbGVVUkwiLCJMaW5rIiwic3VwcG9ydHNIeXBlcmxpbmtzIiwiQm94IiwiVGV4dCIsImdldFN0b3JlZEltYWdlUGF0aCIsIk1lc3NhZ2VSZXNwb25zZSIsIlByb3BzIiwiaW1hZ2VJZCIsImFkZE1hcmdpbiIsIlVzZXJJbWFnZU1lc3NhZ2UiLCJ0MCIsIiQiLCJfYyIsImxhYmVsIiwidDEiLCJpbWFnZVBhdGgiLCJocmVmIiwiY29udGVudCIsInQyIl0sInNvdXJjZXMiOlsiVXNlckltYWdlTWVzc2FnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBwYXRoVG9GaWxlVVJMIH0gZnJvbSAndXJsJ1xuaW1wb3J0IExpbmsgZnJvbSAnLi4vLi4vaW5rL2NvbXBvbmVudHMvTGluay5qcydcbmltcG9ydCB7IHN1cHBvcnRzSHlwZXJsaW5rcyB9IGZyb20gJy4uLy4uL2luay9zdXBwb3J0cy1oeXBlcmxpbmtzLmpzJ1xuaW1wb3J0IHsgQm94LCBUZXh0IH0gZnJvbSAnLi4vLi4vaW5rLmpzJ1xuaW1wb3J0IHsgZ2V0U3RvcmVkSW1hZ2VQYXRoIH0gZnJvbSAnLi4vLi4vdXRpbHMvaW1hZ2VTdG9yZS5qcydcbmltcG9ydCB7IE1lc3NhZ2VSZXNwb25zZSB9IGZyb20gJy4uL01lc3NhZ2VSZXNwb25zZS5qcydcblxudHlwZSBQcm9wcyA9IHtcbiAgaW1hZ2VJZD86IG51bWJlclxuICBhZGRNYXJnaW4/OiBib29sZWFuXG59XG5cbi8qKlxuICogUmVuZGVycyBhbiBpbWFnZSBhdHRhY2htZW50IGluIHVzZXIgbWVzc2FnZXMuXG4gKiBTaG93cyBhcyBhIGNsaWNrYWJsZSBsaW5rIGlmIHRoZSBpbWFnZSBpcyBzdG9yZWQgYW5kIHRlcm1pbmFsIHN1cHBvcnRzIGh5cGVybGlua3MuXG4gKiBVc2VzIE1lc3NhZ2VSZXNwb25zZSBzdHlsaW5nIHRvIGFwcGVhciBjb25uZWN0ZWQgdG8gdGhlIG1lc3NhZ2UgYWJvdmUsXG4gKiB1bmxlc3MgYWRkTWFyZ2luIGlzIHRydWUgKGltYWdlIHN0YXJ0cyBhIG5ldyB1c2VyIHR1cm4gd2l0aG91dCB0ZXh0KS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFVzZXJJbWFnZU1lc3NhZ2Uoe1xuICBpbWFnZUlkLFxuICBhZGRNYXJnaW4sXG59OiBQcm9wcyk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IGxhYmVsID0gaW1hZ2VJZCA/IGBbSW1hZ2UgIyR7aW1hZ2VJZH1dYCA6ICdbSW1hZ2VdJ1xuICBjb25zdCBpbWFnZVBhdGggPSBpbWFnZUlkID8gZ2V0U3RvcmVkSW1hZ2VQYXRoKGltYWdlSWQpIDogbnVsbFxuXG4gIGNvbnN0IGNvbnRlbnQgPVxuICAgIGltYWdlUGF0aCAmJiBzdXBwb3J0c0h5cGVybGlua3MoKSA/IChcbiAgICAgIDxMaW5rIHVybD17cGF0aFRvRmlsZVVSTChpbWFnZVBhdGgpLmhyZWZ9PlxuICAgICAgICA8VGV4dD57bGFiZWx9PC9UZXh0PlxuICAgICAgPC9MaW5rPlxuICAgICkgOiAoXG4gICAgICA8VGV4dD57bGFiZWx9PC9UZXh0PlxuICAgIClcblxuICAvLyBXaGVuIHRoaXMgaW1hZ2Ugc3RhcnRzIGEgbmV3IHVzZXIgdHVybiAobm8gdGV4dCBiZWZvcmUgaXQpLFxuICAvLyBzaG93IHdpdGggbWFyZ2luIGluc3RlYWQgb2YgdGhlIGNvbm5lY3RlZCBsaW5lIHN0eWxlXG4gIGlmIChhZGRNYXJnaW4pIHtcbiAgICByZXR1cm4gPEJveCBtYXJnaW5Ub3A9ezF9Pntjb250ZW50fTwvQm94PlxuICB9XG5cbiAgcmV0dXJuIDxNZXNzYWdlUmVzcG9uc2U+e2NvbnRlbnR9PC9NZXNzYWdlUmVzcG9uc2U+XG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLFNBQVNDLGFBQWEsUUFBUSxLQUFLO0FBQ25DLE9BQU9DLElBQUksTUFBTSw4QkFBOEI7QUFDL0MsU0FBU0Msa0JBQWtCLFFBQVEsa0NBQWtDO0FBQ3JFLFNBQVNDLEdBQUcsRUFBRUMsSUFBSSxRQUFRLGNBQWM7QUFDeEMsU0FBU0Msa0JBQWtCLFFBQVEsMkJBQTJCO0FBQzlELFNBQVNDLGVBQWUsUUFBUSx1QkFBdUI7QUFFdkQsS0FBS0MsS0FBSyxHQUFHO0VBQ1hDLE9BQU8sQ0FBQyxFQUFFLE1BQU07RUFDaEJDLFNBQVMsQ0FBQyxFQUFFLE9BQU87QUFDckIsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLFNBQUFDLGlCQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQTBCO0lBQUFMLE9BQUE7SUFBQUM7RUFBQSxJQUFBRSxFQUd6QjtFQUNOLE1BQUFHLEtBQUEsR0FBY04sT0FBTyxHQUFQLFdBQXFCQSxPQUFPLEdBQWUsR0FBM0MsU0FBMkM7RUFBQSxJQUFBTyxFQUFBO0VBQUEsSUFBQUgsQ0FBQSxRQUFBSixPQUFBLElBQUFJLENBQUEsUUFBQUUsS0FBQTtJQUN6RCxNQUFBRSxTQUFBLEdBQWtCUixPQUFPLEdBQUdILGtCQUFrQixDQUFDRyxPQUFjLENBQUMsR0FBNUMsSUFBNEM7SUFHNURPLEVBQUEsR0FBQUMsU0FBaUMsSUFBcEJkLGtCQUFrQixDQUFDLENBTS9CLEdBTEMsQ0FBQyxJQUFJLENBQU0sR0FBNkIsQ0FBN0IsQ0FBQUYsYUFBYSxDQUFDZ0IsU0FBUyxDQUFDLENBQUFDLElBQUksQ0FBQyxDQUN0QyxDQUFDLElBQUksQ0FBRUgsTUFBSSxDQUFFLEVBQVosSUFBSSxDQUNQLEVBRkMsSUFBSSxDQUtOLEdBREMsQ0FBQyxJQUFJLENBQUVBLE1BQUksQ0FBRSxFQUFaLElBQUksQ0FDTjtJQUFBRixDQUFBLE1BQUFKLE9BQUE7SUFBQUksQ0FBQSxNQUFBRSxLQUFBO0lBQUFGLENBQUEsTUFBQUcsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQUgsQ0FBQTtFQUFBO0VBUEgsTUFBQU0sT0FBQSxHQUNFSCxFQU1DO0VBSUgsSUFBSU4sU0FBUztJQUFBLElBQUFVLEVBQUE7SUFBQSxJQUFBUCxDQUFBLFFBQUFNLE9BQUE7TUFDSkMsRUFBQSxJQUFDLEdBQUcsQ0FBWSxTQUFDLENBQUQsR0FBQyxDQUFHRCxRQUFNLENBQUUsRUFBM0IsR0FBRyxDQUE4QjtNQUFBTixDQUFBLE1BQUFNLE9BQUE7TUFBQU4sQ0FBQSxNQUFBTyxFQUFBO0lBQUE7TUFBQUEsRUFBQSxHQUFBUCxDQUFBO0lBQUE7SUFBQSxPQUFsQ08sRUFBa0M7RUFBQTtFQUMxQyxJQUFBQSxFQUFBO0VBQUEsSUFBQVAsQ0FBQSxRQUFBTSxPQUFBO0lBRU1DLEVBQUEsSUFBQyxlQUFlLENBQUVELFFBQU0sQ0FBRSxFQUF6QixlQUFlLENBQTRCO0lBQUFOLENBQUEsTUFBQU0sT0FBQTtJQUFBTixDQUFBLE1BQUFPLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFQLENBQUE7RUFBQTtFQUFBLE9BQTVDTyxFQUE0QztBQUFBIiwiaWdub3JlTGlzdCI6W119
File diff suppressed because one or more lines are too long
@@ -0,0 +1,75 @@
import { c as _c } from "react/compiler-runtime";
import sample from 'lodash-es/sample.js';
import * as React from 'react';
import { useMemo } from 'react';
import { Box, Text } from '../../ink.js';
import { extractTag } from '../../utils/messages.js';
import { MessageResponse } from '../MessageResponse.js';
function getSavingMessage(): string {
return sample(['Got it.', 'Good to know.', 'Noted.']);
}
type Props = {
addMargin: boolean;
text: string;
};
export function UserMemoryInputMessage(t0) {
const $ = _c(10);
const {
text,
addMargin
} = t0;
let t1;
if ($[0] !== text) {
t1 = extractTag(text, "user-memory-input");
$[0] = text;
$[1] = t1;
} else {
t1 = $[1];
}
const input = t1;
let t2;
if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
t2 = getSavingMessage();
$[2] = t2;
} else {
t2 = $[2];
}
const savingText = t2;
if (!input) {
return null;
}
const t3 = addMargin ? 1 : 0;
let t4;
if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
t4 = <Text color="remember" backgroundColor="memoryBackgroundColor">#</Text>;
$[3] = t4;
} else {
t4 = $[3];
}
let t5;
if ($[4] !== input) {
t5 = <Box>{t4}<Text backgroundColor="memoryBackgroundColor" color="text">{" "}{input}{" "}</Text></Box>;
$[4] = input;
$[5] = t5;
} else {
t5 = $[5];
}
let t6;
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
t6 = <MessageResponse height={1}><Text dimColor={true}>{savingText}</Text></MessageResponse>;
$[6] = t6;
} else {
t6 = $[6];
}
let t7;
if ($[7] !== t3 || $[8] !== t5) {
t7 = <Box flexDirection="column" marginTop={t3} width="100%">{t5}{t6}</Box>;
$[7] = t3;
$[8] = t5;
$[9] = t7;
} else {
t7 = $[9];
}
return t7;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzYW1wbGUiLCJSZWFjdCIsInVzZU1lbW8iLCJCb3giLCJUZXh0IiwiZXh0cmFjdFRhZyIsIk1lc3NhZ2VSZXNwb25zZSIsImdldFNhdmluZ01lc3NhZ2UiLCJQcm9wcyIsImFkZE1hcmdpbiIsInRleHQiLCJVc2VyTWVtb3J5SW5wdXRNZXNzYWdlIiwidDAiLCIkIiwiX2MiLCJ0MSIsImlucHV0IiwidDIiLCJTeW1ib2wiLCJmb3IiLCJzYXZpbmdUZXh0IiwidDMiLCJ0NCIsInQ1IiwidDYiLCJ0NyJdLCJzb3VyY2VzIjpbIlVzZXJNZW1vcnlJbnB1dE1lc3NhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzYW1wbGUgZnJvbSAnbG9kYXNoLWVzL3NhbXBsZS5qcydcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQm94LCBUZXh0IH0gZnJvbSAnLi4vLi4vaW5rLmpzJ1xuaW1wb3J0IHsgZXh0cmFjdFRhZyB9IGZyb20gJy4uLy4uL3V0aWxzL21lc3NhZ2VzLmpzJ1xuaW1wb3J0IHsgTWVzc2FnZVJlc3BvbnNlIH0gZnJvbSAnLi4vTWVzc2FnZVJlc3BvbnNlLmpzJ1xuXG5mdW5jdGlvbiBnZXRTYXZpbmdNZXNzYWdlKCk6IHN0cmluZyB7XG4gIHJldHVybiBzYW1wbGUoWydHb3QgaXQuJywgJ0dvb2QgdG8ga25vdy4nLCAnTm90ZWQuJ10pXG59XG5cbnR5cGUgUHJvcHMgPSB7XG4gIGFkZE1hcmdpbjogYm9vbGVhblxuICB0ZXh0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFVzZXJNZW1vcnlJbnB1dE1lc3NhZ2Uoe1xuICB0ZXh0LFxuICBhZGRNYXJnaW4sXG59OiBQcm9wcyk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IGlucHV0ID0gZXh0cmFjdFRhZyh0ZXh0LCAndXNlci1tZW1vcnktaW5wdXQnKVxuICBjb25zdCBzYXZpbmdUZXh0ID0gdXNlTWVtbygoKSA9PiBnZXRTYXZpbmdNZXNzYWdlKCksIFtdKVxuXG4gIGlmICghaW5wdXQpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Qm94IGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIiBtYXJnaW5Ub3A9e2FkZE1hcmdpbiA/IDEgOiAwfSB3aWR0aD1cIjEwMCVcIj5cbiAgICAgIDxCb3g+XG4gICAgICAgIDxUZXh0IGNvbG9yPVwicmVtZW1iZXJcIiBiYWNrZ3JvdW5kQ29sb3I9XCJtZW1vcnlCYWNrZ3JvdW5kQ29sb3JcIj5cbiAgICAgICAgICAjXG4gICAgICAgIDwvVGV4dD5cbiAgICAgICAgPFRleHQgYmFja2dyb3VuZENvbG9yPVwibWVtb3J5QmFja2dyb3VuZENvbG9yXCIgY29sb3I9XCJ0ZXh0XCI+XG4gICAgICAgICAgeycgJ31cbiAgICAgICAgICB7aW5wdXR9eycgJ31cbiAgICAgICAgPC9UZXh0PlxuICAgICAgPC9Cb3g+XG4gICAgICA8TWVzc2FnZVJlc3BvbnNlIGhlaWdodD17MX0+XG4gICAgICAgIDxUZXh0IGRpbUNvbG9yPntzYXZpbmdUZXh0fTwvVGV4dD5cbiAgICAgIDwvTWVzc2FnZVJlc3BvbnNlPlxuICAgIDwvQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxNQUFNLE1BQU0scUJBQXFCO0FBQ3hDLE9BQU8sS0FBS0MsS0FBSyxNQUFNLE9BQU87QUFDOUIsU0FBU0MsT0FBTyxRQUFRLE9BQU87QUFDL0IsU0FBU0MsR0FBRyxFQUFFQyxJQUFJLFFBQVEsY0FBYztBQUN4QyxTQUFTQyxVQUFVLFFBQVEseUJBQXlCO0FBQ3BELFNBQVNDLGVBQWUsUUFBUSx1QkFBdUI7QUFFdkQsU0FBU0MsZ0JBQWdCQSxDQUFBLENBQUUsRUFBRSxNQUFNLENBQUM7RUFDbEMsT0FBT1AsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUN2RDtBQUVBLEtBQUtRLEtBQUssR0FB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
+42
View File
@@ -0,0 +1,42 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import { Box, Text } from '../../ink.js';
import { Markdown } from '../Markdown.js';
type Props = {
addMargin: boolean;
planContent: string;
};
export function UserPlanMessage(t0) {
const $ = _c(6);
const {
addMargin,
planContent
} = t0;
const t1 = addMargin ? 1 : 0;
let t2;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t2 = <Box marginBottom={1}><Text bold={true} color="planMode">Plan to implement</Text></Box>;
$[0] = t2;
} else {
t2 = $[0];
}
let t3;
if ($[1] !== planContent) {
t3 = <Markdown>{planContent}</Markdown>;
$[1] = planContent;
$[2] = t3;
} else {
t3 = $[2];
}
let t4;
if ($[3] !== t1 || $[4] !== t3) {
t4 = <Box flexDirection="column" borderStyle="round" borderColor="planMode" marginTop={t1} paddingX={1}>{t2}{t3}</Box>;
$[3] = t1;
$[4] = t3;
$[5] = t4;
} else {
t4 = $[5];
}
return t4;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJveCIsIlRleHQiLCJNYXJrZG93biIsIlByb3BzIiwiYWRkTWFyZ2luIiwicGxhbkNvbnRlbnQiLCJVc2VyUGxhbk1lc3NhZ2UiLCJ0MCIsIiQiLCJfYyIsInQxIiwidDIiLCJTeW1ib2wiLCJmb3IiLCJ0MyIsInQ0Il0sInNvdXJjZXMiOlsiVXNlclBsYW5NZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJveCwgVGV4dCB9IGZyb20gJy4uLy4uL2luay5qcydcbmltcG9ydCB7IE1hcmtkb3duIH0gZnJvbSAnLi4vTWFya2Rvd24uanMnXG5cbnR5cGUgUHJvcHMgPSB7XG4gIGFkZE1hcmdpbjogYm9vbGVhblxuICBwbGFuQ29udGVudDogc3RyaW5nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBVc2VyUGxhbk1lc3NhZ2Uoe1xuICBhZGRNYXJnaW4sXG4gIHBsYW5Db250ZW50LFxufTogUHJvcHMpOiBSZWFjdC5SZWFjdE5vZGUge1xuICByZXR1cm4gKFxuICAgIDxCb3hcbiAgICAgIGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIlxuICAgICAgYm9yZGVyU3R5bGU9XCJyb3VuZFwiXG4gICAgICBib3JkZXJDb2xvcj1cInBsYW5Nb2RlXCJcbiAgICAgIG1hcmdpblRvcD17YWRkTWFyZ2luID8gMSA6IDB9XG4gICAgICBwYWRkaW5nWD17MX1cbiAgICA+XG4gICAgICA8Qm94IG1hcmdpbkJvdHRvbT17MX0+XG4gICAgICAgIDxUZXh0IGJvbGQgY29sb3I9XCJwbGFuTW9kZVwiPlxuICAgICAgICAgIFBsYW4gdG8gaW1wbGVtZW50XG4gICAgICAgIDwvVGV4dD5cbiAgICAgIDwvQm94PlxuICAgICAgPE1hcmtkb3duPntwbGFuQ29udGVudH08L01hcmtkb3duPlxuICAgIDwvQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLFNBQVNDLEdBQUcsRUFBRUMsSUFBSSxRQUFRLGNBQWM7QUFDeEMsU0FBU0MsUUFBUSxRQUFRLGdCQUFnQjtBQUV6QyxLQUFLQyxLQUFLLEdBQUc7RUFDWEMsU0FBUyxFQUFFLE9BQU87RUFDbEJDLFdBQVcsRUFBRSxNQUFNO0FBQ3JCLENBQUM7QUFFRCxPQUFPLFNBQUFDLGdCQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQXlCO0lBQUFMLFNBQUE7SUFBQUM7RUFBQSxJQUFBRSxFQUd4QjtFQU1TLE1BQUFHLEVBQUEsR0FBQU4sU0FBUyxHQUFULENBQWlCLEdBQWpCLENBQWlCO0VBQUEsSUFBQU8sRUFBQTtFQUFBLElBQUFILENBQUEsUUFBQUksTUFBQSxDQUFBQyxHQUFBO0lBRzVCRixFQUFBLElBQUMsR0FBRyxDQUFlLFlBQUMsQ0FBRCxHQUFDLENBQ2xCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBSixLQUFHLENBQUMsQ0FBTyxLQUFVLENBQVYsVUFBVSxDQUFDLGlCQUU1QixFQUZDLElBQUksQ0FHUCxFQUpDLEdBQUcsQ0FJRTtJQUFBSCxDQUFBLE1BQUFHLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFILENBQUE7RUFBQTtFQUFBLElBQUFNLEVBQUE7RUFBQSxJQUFBTixDQUFBLFFBQUFILFdBQUE7SUFDTlMsRUFBQSxJQUFDLFFBQVEsQ0FBRVQsWUFBVSxDQUFFLEVBQXRCLFFBQVEsQ0FBeUI7SUFBQUcsQ0FBQSxNQUFBSCxXQUFBO0lBQUFHLENBQUEsTUFBQU0sRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQU4sQ0FBQTtFQUFBO0VBQUEsSUFBQU8sRUFBQTtFQUFBLElBQUFQLENBQUEsUUFBQUUsRUFBQSxJQUFBRixDQUFBLFFBQUFNLEVBQUE7SUFacENDLEVBQUEsSUFBQyxHQUFHLENBQ1ksYUFBUSxDQUFSLFFBQVEsQ0FDVixXQUFPLENBQVAsT0FBTyxDQUNQLFdBQVUsQ0FBVixVQUFVLENBQ1gsU0FBaUIsQ0FBakIsQ0FBQUwsRUFBZ0IsQ0FBQyxDQUNsQixRQUFDLENBQUQsR0FBQyxDQUVYLENBQUFDLEVBSUssQ0FDTCxDQUFBRyxFQUFpQyxDQUNuQyxFQWJDLEdBQUcsQ0FhRTtJQUFBTixDQUFBLE1BQUFFLEVBQUE7SUFBQUYsQ0FBQSxNQUFBTSxFQUFBO0lBQUFOLENBQUEsTUFBQU8sRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQVAsQ0FBQTtFQUFBO0VBQUEsT0FiTk8sRUFhTTtBQUFBIiwiaWdub3JlTGlzdCI6W119
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,31 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import { Markdown } from 'src/components/Markdown.js';
import { MessageResponse } from 'src/components/MessageResponse.js';
import { Box, Text } from '../../../ink.js';
type Props = {
plan: string;
};
export function RejectedPlanMessage(t0) {
const $ = _c(3);
const {
plan
} = t0;
let t1;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t1 = <Text color="subtle">User rejected Claude's plan:</Text>;
$[0] = t1;
} else {
t1 = $[0];
}
let t2;
if ($[1] !== plan) {
t2 = <MessageResponse><Box flexDirection="column">{t1}<Box borderStyle="round" borderColor="planMode" paddingX={1} overflow="hidden"><Markdown>{plan}</Markdown></Box></Box></MessageResponse>;
$[1] = plan;
$[2] = t2;
} else {
t2 = $[2];
}
return t2;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIk1hcmtkb3duIiwiTWVzc2FnZVJlc3BvbnNlIiwiQm94IiwiVGV4dCIsIlByb3BzIiwicGxhbiIsIlJlamVjdGVkUGxhbk1lc3NhZ2UiLCJ0MCIsIiQiLCJfYyIsInQxIiwiU3ltYm9sIiwiZm9yIiwidDIiXSwic291cmNlcyI6WyJSZWplY3RlZFBsYW5NZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IE1hcmtkb3duIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvTWFya2Rvd24uanMnXG5pbXBvcnQgeyBNZXNzYWdlUmVzcG9uc2UgfSBmcm9tICdzcmMvY29tcG9uZW50cy9NZXNzYWdlUmVzcG9uc2UuanMnXG5pbXBvcnQgeyBCb3gsIFRleHQgfSBmcm9tICcuLi8uLi8uLi9pbmsuanMnXG5cbnR5cGUgUHJvcHMgPSB7XG4gIHBsYW46IHN0cmluZ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUmVqZWN0ZWRQbGFuTWVzc2FnZSh7IHBsYW4gfTogUHJvcHMpOiBSZWFjdC5SZWFjdE5vZGUge1xuICByZXR1cm4gKFxuICAgIDxNZXNzYWdlUmVzcG9uc2U+XG4gICAgICA8Qm94IGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIj5cbiAgICAgICAgPFRleHQgY29sb3I9XCJzdWJ0bGVcIj5Vc2VyIHJlamVjdGVkIENsYXVkZSZhcG9zO3MgcGxhbjo8L1RleHQ+XG4gICAgICAgIDxCb3hcbiAgICAgICAgICBib3JkZXJTdHlsZT1cInJvdW5kXCJcbiAgICAgICAgICBib3JkZXJDb2xvcj1cInBsYW5Nb2RlXCJcbiAgICAgICAgICBwYWRkaW5nWD17MX1cbiAgICAgICAgICAvLyBOZWNlc3NhcnkgZm9yIFdpbmRvd3MgVGVybWluYWwgdG8gcmVuZGVyIHByb3Blcmx5XG4gICAgICAgICAgb3ZlcmZsb3c9XCJoaWRkZW5cIlxuICAgICAgICA+XG4gICAgICAgICAgPE1hcmtkb3duPntwbGFufTwvTWFya2Rvd24+XG4gICAgICAgIDwvQm94PlxuICAgICAgPC9Cb3g+XG4gICAgPC9NZXNzYWdlUmVzcG9uc2U+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sS0FBS0EsS0FBSyxNQUFNLE9BQU87QUFDOUIsU0FBU0MsUUFBUSxRQUFRLDRCQUE0QjtBQUNyRCxTQUFTQyxlQUFlLFFBQVEsbUNBQW1DO0FBQ25FLFNBQVNDLEdBQUcsRUFBRUMsSUFBSSxRQUFRLGlCQUFpQjtBQUUzQyxLQUFLQyxLQUFLLEdBQUc7RUFDWEMsSUFBSSxFQUFFLE1BQU07QUFDZCxDQUFDO0FBRUQsT0FBTyxTQUFBQyxvQkFBQUMsRUFBQTtFQUFBLE1BQUFDLENBQUEsR0FBQUMsRUFBQTtFQUE2QjtJQUFBSjtFQUFBLElBQUFFLEVBQWU7RUFBQSxJQUFBRyxFQUFBO0VBQUEsSUFBQUYsQ0FBQSxRQUFBRyxNQUFBLENBQUFDLEdBQUE7SUFJM0NGLEVBQUEsSUFBQyxJQUFJLENBQU8sS0FBUSxDQUFSLFFBQVEsQ0FBQyw0QkFBaUMsRUFBckQsSUFBSSxDQUF3RDtJQUFBRixDQUFBLE1BQUFFLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFGLENBQUE7RUFBQTtFQUFBLElBQUFLLEVBQUE7RUFBQSxJQUFBTCxDQUFBLFFBQUFILElBQUE7SUFGakVRLEVBQUEsSUFBQyxlQUFlLENBQ2QsQ0FBQyxHQUFHLENBQWUsYUFBUSxDQUFSLFFBQVEsQ0FDekIsQ0FBQUgsRUFBNEQsQ0FDNUQsQ0FBQyxHQUFHLENBQ1UsV0FBTyxDQUFQLE9BQU8sQ0FDUCxXQUFVLENBQVYsVUFBVSxDQUNaLFFBQUMsQ0FBRCxHQUFDLENBRUYsUUFBUSxDQUFSLFFBQVEsQ0FFakIsQ0FBQyxRQUFRLENBQUVMLEtBQUcsQ0FBRSxFQUFmLFFBQVEsQ0FDWCxFQVJDLEdBQUcsQ0FTTixFQVhDLEdBQUcsQ0FZTixFQWJDLGVBQWUsQ0FhRTtJQUFBRyxDQUFBLE1BQUFILElBQUE7SUFBQUcsQ0FBQSxNQUFBSyxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBTCxDQUFBO0VBQUE7RUFBQSxPQWJsQkssRUFha0I7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,16 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import { Text } from '../../../ink.js';
import { MessageResponse } from '../../MessageResponse.js';
export function RejectedToolUseMessage() {
const $ = _c(1);
let t0;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t0 = <MessageResponse height={1}><Text dimColor={true}>Tool use rejected</Text></MessageResponse>;
$[0] = t0;
} else {
t0 = $[0];
}
return t0;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlRleHQiLCJNZXNzYWdlUmVzcG9uc2UiLCJSZWplY3RlZFRvb2xVc2VNZXNzYWdlIiwiJCIsIl9jIiwidDAiLCJTeW1ib2wiLCJmb3IiXSwic291cmNlcyI6WyJSZWplY3RlZFRvb2xVc2VNZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi9pbmsuanMnXG5pbXBvcnQgeyBNZXNzYWdlUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9NZXNzYWdlUmVzcG9uc2UuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBSZWplY3RlZFRvb2xVc2VNZXNzYWdlKCk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIHJldHVybiAoXG4gICAgPE1lc3NhZ2VSZXNwb25zZSBoZWlnaHQ9ezF9PlxuICAgICAgPFRleHQgZGltQ29sb3I+VG9vbCB1c2UgcmVqZWN0ZWQ8L1RleHQ+XG4gICAgPC9NZXNzYWdlUmVzcG9uc2U+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sS0FBS0EsS0FBSyxNQUFNLE9BQU87QUFDOUIsU0FBU0MsSUFBSSxRQUFRLGlCQUFpQjtBQUN0QyxTQUFTQyxlQUFlLFFBQVEsMEJBQTBCO0FBRTFELE9BQU8sU0FBQUMsdUJBQUE7RUFBQSxNQUFBQyxDQUFBLEdBQUFDLEVBQUE7RUFBQSxJQUFBQyxFQUFBO0VBQUEsSUFBQUYsQ0FBQSxRQUFBRyxNQUFBLENBQUFDLEdBQUE7SUFFSEYsRUFBQSxJQUFDLGVBQWUsQ0FBUyxNQUFDLENBQUQsR0FBQyxDQUN4QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQVIsS0FBTyxDQUFDLENBQUMsaUJBQWlCLEVBQS9CLElBQUksQ0FDUCxFQUZDLGVBQWUsQ0FFRTtJQUFBRixDQUFBLE1BQUFFLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFGLENBQUE7RUFBQTtFQUFBLE9BRmxCRSxFQUVrQjtBQUFBIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,16 @@
import { c as _c } from "react/compiler-runtime";
import * as React from 'react';
import { InterruptedByUser } from 'src/components/InterruptedByUser.js';
import { MessageResponse } from 'src/components/MessageResponse.js';
export function UserToolCanceledMessage() {
const $ = _c(1);
let t0;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t0 = <MessageResponse height={1}><InterruptedByUser /></MessageResponse>;
$[0] = t0;
} else {
t0 = $[0];
}
return t0;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkludGVycnVwdGVkQnlVc2VyIiwiTWVzc2FnZVJlc3BvbnNlIiwiVXNlclRvb2xDYW5jZWxlZE1lc3NhZ2UiLCIkIiwiX2MiLCJ0MCIsIlN5bWJvbCIsImZvciJdLCJzb3VyY2VzIjpbIlVzZXJUb29sQ2FuY2VsZWRNZXNzYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEludGVycnVwdGVkQnlVc2VyIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvSW50ZXJydXB0ZWRCeVVzZXIuanMnXG5pbXBvcnQgeyBNZXNzYWdlUmVzcG9uc2UgfSBmcm9tICdzcmMvY29tcG9uZW50cy9NZXNzYWdlUmVzcG9uc2UuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBVc2VyVG9vbENhbmNlbGVkTWVzc2FnZSgpOiBSZWFjdC5SZWFjdE5vZGUge1xuICByZXR1cm4gKFxuICAgIDxNZXNzYWdlUmVzcG9uc2UgaGVpZ2h0PXsxfT5cbiAgICAgIDxJbnRlcnJ1cHRlZEJ5VXNlciAvPlxuICAgIDwvTWVzc2FnZVJlc3BvbnNlPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLFNBQVNDLGlCQUFpQixRQUFRLHFDQUFxQztBQUN2RSxTQUFTQyxlQUFlLFFBQVEsbUNBQW1DO0FBRW5FLE9BQU8sU0FBQUMsd0JBQUE7RUFBQSxNQUFBQyxDQUFBLEdBQUFDLEVBQUE7RUFBQSxJQUFBQyxFQUFBO0VBQUEsSUFBQUYsQ0FBQSxRQUFBRyxNQUFBLENBQUFDLEdBQUE7SUFFSEYsRUFBQSxJQUFDLGVBQWUsQ0FBUyxNQUFDLENBQUQsR0FBQyxDQUN4QixDQUFDLGlCQUFpQixHQUNwQixFQUZDLGVBQWUsQ0FFRTtJQUFBRixDQUFBLE1BQUFFLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFGLENBQUE7RUFBQTtFQUFBLE9BRmxCRSxFQUVrQjtBQUFBIiwiaWdub3JlTGlzdCI6W119
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,44 @@
import { c as _c } from "react/compiler-runtime";
import type { ToolUseBlockParam } from '@anthropic-ai/sdk/resources/index.mjs';
import { useMemo } from 'react';
import { findToolByName, type Tool, type Tools } from '../../../Tool.js';
import type { buildMessageLookups } from '../../../utils/messages.js';
export function useGetToolFromMessages(toolUseID, tools, lookups) {
const $ = _c(7);
let t0;
if ($[0] !== lookups.toolUseByToolUseID || $[1] !== toolUseID || $[2] !== tools) {
bb0: {
const toolUse = lookups.toolUseByToolUseID.get(toolUseID);
if (!toolUse) {
t0 = null;
break bb0;
}
const tool = findToolByName(tools, toolUse.name);
if (!tool) {
t0 = null;
break bb0;
}
let t1;
if ($[4] !== tool || $[5] !== toolUse) {
t1 = {
tool,
toolUse
};
$[4] = tool;
$[5] = toolUse;
$[6] = t1;
} else {
t1 = $[6];
}
t0 = t1;
}
$[0] = lookups.toolUseByToolUseID;
$[1] = toolUseID;
$[2] = tools;
$[3] = t0;
} else {
t0 = $[3];
}
return t0;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUb29sVXNlQmxvY2tQYXJhbSIsInVzZU1lbW8iLCJmaW5kVG9vbEJ5TmFtZSIsIlRvb2wiLCJUb29scyIsImJ1aWxkTWVzc2FnZUxvb2t1cHMiLCJ1c2VHZXRUb29sRnJvbU1lc3NhZ2VzIiwidG9vbFVzZUlEIiwidG9vbHMiLCJsb29rdXBzIiwiJCIsIl9jIiwidDAiLCJ0b29sVXNlQnlUb29sVXNlSUQiLCJiYjAiLCJ0b29sVXNlIiwiZ2V0IiwidG9vbCIsIm5hbWUiLCJ0MSJdLCJzb3VyY2VzIjpbInV0aWxzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFRvb2xVc2VCbG9ja1BhcmFtIH0gZnJvbSAnQGFudGhyb3BpYy1haS9zZGsvcmVzb3VyY2VzL2luZGV4Lm1qcydcbmltcG9ydCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGZpbmRUb29sQnlOYW1lLCB0eXBlIFRvb2wsIHR5cGUgVG9vbHMgfSBmcm9tICcuLi8uLi8uLi9Ub29sLmpzJ1xuaW1wb3J0IHR5cGUgeyBidWlsZE1lc3NhZ2VMb29rdXBzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbWVzc2FnZXMuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VHZXRUb29sRnJvbU1lc3NhZ2VzKFxuICB0b29sVXNlSUQ6IHN0cmluZyxcbiAgdG9vbHM6IFRvb2xzLFxuICBsb29rdXBzOiBSZXR1cm5UeXBlPHR5cGVvZiBidWlsZE1lc3NhZ2VMb29rdXBzPixcbik6IHsgdG9vbDogVG9vbDsgdG9vbFVzZTogVG9vbFVzZUJsb2NrUGFyYW0gfSB8IG51bGwge1xuICByZXR1cm4gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgdG9vbFVzZSA9IGxvb2t1cHMudG9vbFVzZUJ5VG9vbFVzZUlELmdldCh0b29sVXNlSUQpXG4gICAgaWYgKCF0b29sVXNlKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCB0b29sID0gZmluZFRvb2xCeU5hbWUodG9vbHMsIHRvb2xVc2UubmFtZSlcbiAgICBpZiAoIXRvb2wpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIHJldHVybiB7IHRvb2wsIHRvb2xVc2UgfVxuICB9LCBbdG9vbFVzZUlELCBsb29rdXBzLCB0b29sc10pXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxjQUFjQSxpQkFBaUIsUUFBUSx1Q0FBdUM7QUFDOUUsU0FBU0MsT0FBTyxRQUFRLE9BQU87QUFDL0IsU0FBU0MsY0FBYyxFQUFFLEtBQUtDLElBQUksRUFBRSxLQUFLQyxLQUFLLFFBQVEsa0JBQWtCO0FBQ3hFLGNBQWNDLG1CQUFtQixRQUFRLDRCQUE0QjtBQUVyRSxPQUFPLFNBQUFDLHVCQUFBQyxTQUFBLEVBQUFDLEtBQUEsRUFBQUMsT0FBQTtFQUFBLE1BQUFDLENBQUEsR0FBQUMsRUFBQTtFQUFBLElBQUFDLEVBQUE7RUFBQSxJQUFBRixDQUFBLFFBQUFELE9BQUEsQ0FBQUksa0JBQUEsSUFBQUgsQ0FBQSxRQUFBSCxTQUFBLElBQUFHLENBQUEsUUFBQUYsS0FBQTtJQUFBTSxHQUFBO01BTUgsTUFBQUMsT0FBQSxHQUFnQk4sT0FBTyxDQUFBSSxrQkFBbUIsQ0FBQUcsR0FBSSxDQUFDVCxTQUFTLENBQUM7TUFDekQsSUFBSSxDQUFDUSxPQUFPO1FBQ1ZILEVBQUEsR0FBTyxJQUFJO1FBQVgsTUFBQUUsR0FBQTtNQUFXO01BRWIsTUFBQUcsSUFBQSxHQUFhZixjQUFjLENBQUNNLEtBQUssRUFBRU8sT0FBTyxDQUFBRyxJQUFLLENBQUM7TUFDaEQsSUFBSSxDQUFDRCxJQUFJO1FBQ1BMLEVBQUEsR0FBTyxJQUFJO1FBQVgsTUFBQUUsR0FBQTtNQUFXO01BQ1osSUFBQUssRUFBQTtNQUFBLElBQUFULENBQUEsUUFBQU8sSUFBQSxJQUFBUCxDQUFBLFFBQUFLLE9BQUE7UUFDTUksRUFBQTtVQUFBRixJQUFBO1VBQUFGO1FBQWdCLENBQUM7UUFBQUwsQ0FBQSxNQUFBTyxJQUFBO1FBQUFQLENBQUEsTUFBQUssT0FBQTtRQUFBTCxDQUFBLE1BQUFTLEVBQUE7TUFBQTtRQUFBQSxFQUFBLEdBQUFULENBQUE7TUFBQTtNQUF4QkUsRUFBQSxHQUFPTyxFQUFpQjtJQUFBO0lBQUFULENBQUEsTUFBQUQsT0FBQSxDQUFBSSxrQkFBQTtJQUFBSCxDQUFBLE1BQUFILFNBQUE7SUFBQUcsQ0FBQSxNQUFBRixLQUFBO0lBQUFFLENBQUEsTUFBQUUsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQUYsQ0FBQTtFQUFBO0VBQUEsT0FUbkJFLEVBVXdCO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,70 @@
import type { Attachment } from 'src/utils/attachments.js'
import type { Message, NormalizedMessage } from '../../types/message.js'
/**
* Attachment types that AttachmentMessage renders as `null` unconditionally
* (no visible output regardless of runtime state). Messages.tsx filters these
* out BEFORE the render cap / message count so invisible entries don't consume
* the 200-message render budget (CC-724).
*
* Sync is enforced by TypeScript: AttachmentMessage's switch `default:` branch
* asserts `attachment.type satisfies NullRenderingAttachmentType`. Adding a new
* Attachment type without either a case or an entry here will fail typecheck.
*/
const NULL_RENDERING_TYPES = [
'hook_success',
'hook_additional_context',
'hook_cancelled',
'command_permissions',
'agent_mention',
'budget_usd',
'critical_system_reminder',
'edited_image_file',
'edited_text_file',
'opened_file_in_ide',
'output_style',
'plan_mode',
'plan_mode_exit',
'plan_mode_reentry',
'structured_output',
'team_context',
'todo_reminder',
'context_efficiency',
'deferred_tools_delta',
'mcp_instructions_delta',
'companion_intro',
'token_usage',
'ultrathink_effort',
'max_turns_reached',
'task_reminder',
'auto_mode',
'auto_mode_exit',
'output_token_usage',
'pen_mode_enter',
'pen_mode_exit',
'verify_plan_reminder',
'current_session_memory',
'compaction_reminder',
'date_change',
] as const satisfies readonly Attachment['type'][]
export type NullRenderingAttachmentType = (typeof NULL_RENDERING_TYPES)[number]
const NULL_RENDERING_ATTACHMENT_TYPES: ReadonlySet<Attachment['type']> =
new Set(NULL_RENDERING_TYPES)
/**
* True when this message is an attachment that AttachmentMessage renders as
* null with no visible output. Messages.tsx filters these out before counting
* and before applying the 200-message render cap, so invisible hook
* attachments (hook_success, hook_additional_context, hook_cancelled) don't
* inflate the "N messages" count or eat into the render budget (CC-724).
*/
export function isNullRenderingAttachment(
msg: Message | NormalizedMessage,
): boolean {
return (
msg.type === 'attachment' &&
NULL_RENDERING_ATTACHMENT_TYPES.has(msg.attachment.type)
)
}
File diff suppressed because one or more lines are too long
+19
View File
@@ -0,0 +1,19 @@
import type { SystemMemorySavedMessage } from '../../types/message.js'
/**
* Returns the team-memory segment for the memory-saved UI, plus the count so
* the caller can derive the private count without accessing teamCount itself.
* Plain function (not a React component) so the React Compiler won't hoist
* the teamCount property access for memoization. This module is only loaded
* when feature('TEAMMEM') is true.
*/
export function teamMemSavedPart(
message: SystemMemorySavedMessage,
): { segment: string; count: number } | null {
const count = message.teamCount ?? 0
if (count === 0) return null
return {
segment: `${count} team ${count === 1 ? 'memory' : 'memories'}`,
count,
}
}