@corenel/web-ui 0.3.1 → 0.5.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.
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import type { PendingMsg } from './agentChat/pendingQueue';
2
3
  export type AgentMode = string;
3
4
  /** A selectable agent mode. label/description come from the mode file's
4
5
  * frontmatter; accent is the composer gradient (else resolved by id below). */
@@ -25,33 +26,39 @@ export interface SlashCommand {
25
26
  section?: string;
26
27
  icon?: React.ReactNode;
27
28
  }
28
- export declare function Composer({ value, onChange, onSend, onStop, running, mode, onModeChange, modes, chips, onRemoveChip, onAddContext, slashCommands, onPickSlash, attachments, onAttach, onRemoveAttachment, onImageClick, inPrice, showContext, onDropFiles, rightSlot, history, sendLater, }: {
29
+ export declare function Composer({ value, onChange, onSend, onStop, running, placeholder, runHint, mode, onModeChange, modes, chips, onRemoveChip, onAddContext, slashCommands, onPickSlash, attachments, onAttach, onRemoveAttachment, onImageClick, inPrice, showContext, onDropFiles, rightSlot, history, sendLater, pending, onQueue, onInject, onRemovePending, onEditPending, sendLabel, ariaLabel, mentionables, }: {
29
30
  value: string;
30
31
  onChange: (v: string) => void;
31
32
  onSend: () => void;
32
33
  onStop: () => void;
33
34
  running: boolean;
34
- mode: AgentMode;
35
- onModeChange: (m: AgentMode) => void;
35
+ mode?: AgentMode;
36
+ onModeChange?: (m: AgentMode) => void;
36
37
  /** The selectable modes (folder-driven). Defaults to the built-ins. */
37
38
  modes?: ModeEntry[];
38
- chips: ContextChip[];
39
+ chips?: ContextChip[];
39
40
  /** Rendered at the right end of the chip row. Injected rather than imported so
40
41
  * this component stays presentational and a host can leave it out. */
41
42
  rightSlot?: React.ReactNode;
42
- onRemoveChip: (id: string) => void;
43
- onAddContext: () => void;
44
- slashCommands: SlashCommand[];
45
- onPickSlash: (name: string) => void;
43
+ onRemoveChip?: (id: string) => void;
44
+ onAddContext?: () => void;
45
+ slashCommands?: SlashCommand[];
46
+ onPickSlash?: (name: string) => void;
46
47
  /** Pasted image previews (data URLs) shown before sending. */
47
- attachments: string[];
48
- onAttach: (dataUrls: string[]) => void;
49
- onRemoveAttachment: (index: number) => void;
50
- onImageClick: (src: string) => void;
48
+ attachments?: string[];
49
+ onAttach?: (dataUrls: string[]) => void;
50
+ onRemoveAttachment?: (index: number) => void;
51
+ onImageClick?: (src: string) => void;
51
52
  /** Selected model's input price (USD per 1M tokens) for the live cost estimate. */
52
53
  inPrice?: number;
53
- /** Show the context chips + "+ context" affordance. Off for surfaces with no context
54
- * concept (e.g. Craft), so the row doesn't render a dead button. Default on. */
54
+ /** Show the context chips + "+ context" affordance.
55
+ *
56
+ * DEFAULTS TO WHETHER `onAddContext` WAS GIVEN. It used to default to true
57
+ * while the handler was optional, so a host adopting the minimal shape got a
58
+ * "+ context" button whose onClick was undefined -- a dead control, which is
59
+ * the thing the note above says not to render. `showSlash` next door draws
60
+ * its own existence from `onPickSlash !== undefined` for the same reason.
61
+ * Pass it explicitly to override in either direction. */
55
62
  showContext?: boolean;
56
63
  /** Files dropped onto the composer (the host routes text->context docs,
57
64
  * images->attachments). Omitted = drops are ignored as before. */
@@ -63,5 +70,47 @@ export declare function Composer({ value, onChange, onSend, onStop, running, mod
63
70
  * than imported so this component stays presentational and a surface with no
64
71
  * queue (Craft) simply omits it. */
65
72
  sendLater?: React.ReactNode;
73
+ /** Messages typed while a turn was running. Omitted = this host has no queue,
74
+ * and the composer behaves exactly as it did before the feature existed. */
75
+ pending?: PendingMsg[];
76
+ /** Park the current text for after the run. */
77
+ onQueue?: () => void;
78
+ /** Push into the RUNNING turn. With no id, injects the composer's current
79
+ * text -- or, with the composer empty, escalates the oldest already-injecting
80
+ * message (the ladder's second Alt+Enter). With an id, acts on that chip:
81
+ * an injecting one escalates to a hard inject, a held one is sent now. */
82
+ onInject?: (id?: string) => void;
83
+ onRemovePending?: (id: string) => void;
84
+ onEditPending?: (id: string, text: string) => void;
85
+ /** What the send action is CALLED. A room turn is an answer on your own turn
86
+ * and an interjection when it is not, and the button is the only place that
87
+ * distinction is actionable. Defaults to Send. */
88
+ sendLabel?: string;
89
+ /** The accessible name for the box. Omitted, the placeholder names it, which
90
+ * is what every agent surface has always relied on. */
91
+ ariaLabel?: string;
92
+ /** People this surface lets you name, offered when an @ is typed.
93
+ *
94
+ * The slash menu already completes commands; a handle is the other thing you
95
+ * type from memory and get wrong. The same list serves an address command's
96
+ * target, which is why that command tolerates a leading @. Omitted, typing an
97
+ * @ does nothing, which is every surface that has no roster. */
98
+ mentionables?: readonly {
99
+ name: string;
100
+ hint?: string;
101
+ }[];
102
+ /** What the empty box invites, when the default does not fit. The default is
103
+ * written for an agent surface and promises things a caller may not have
104
+ * wired. The keyboard hints are still appended, since those are this
105
+ * component's own behaviour rather than the host's. */
106
+ placeholder?: string;
107
+ /** Whether to advertise Cmd/Ctrl+Enter as "run".
108
+ *
109
+ * The component deliberately does NOT handle that chord -- it lets it bubble
110
+ * to a host global that runs the open prompt. A surface with no such global
111
+ * (a collaboration room) would be advertising a key that does nothing, so it
112
+ * passes false. Defaults true, which is exactly what every existing caller
113
+ * was already saying. */
114
+ runHint?: boolean;
66
115
  }): React.JSX.Element;
67
116
  //# sourceMappingURL=Composer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../Composer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgE,MAAM,OAAO,CAAC;AAOrF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;+EAC+E;AAC/E,MAAM,WAAW,SAAS;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AAY9F,iFAAiF;AACjF,eAAO,MAAM,aAAa,EAAE,SAAS,EAKpC,CAAC;AACF,6EAA6E;AAC7E,eAAO,MAAM,KAAK,EAAE,MAAM,EAAmC,CAAC;AAE9D,oGAAoG;AACpG,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAA2E;AAU3H,MAAM,WAAW,WAAW;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE;AAC9E,MAAM,WAAW,YAAY;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE;AActG,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EACxC,IAAI,EAAE,YAAY,EAAE,KAAqB,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAC5E,aAAa,EAAE,WAAW,EAC1B,WAAW,EAAE,QAAQ,EAAE,kBAAkB,EAAE,YAAY,EACvD,OAAO,EAAE,WAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,GACxE,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,uEAAuE;IACvE,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB;0EACsE;IACtE,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,8DAA8D;IAC9D,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACvC,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;oFACgF;IAChF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;sEACkE;IAClE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACtC;6CACyC;IACzC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;wCAEoC;IACpC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B,qBA4QA"}
1
+ {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../Composer.tsx"],"names":[],"mappings":"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"}
package/dist/Composer.js CHANGED
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useState, useRef, useEffect, useLayoutEffect, useMemo } from 'react';
3
3
  import { IcPlay, IcStop, IcX, IcFile, IcCode, IcPlus, IcChevron } from '@corenel/ui-kit/icons';
4
4
  import { estimateTokens } from '@corenel/ui-kit/ui-helpers';
@@ -25,6 +25,11 @@ export const MODES = DEFAULT_MODES.map((m) => m.id);
25
25
  export function modeAccent(m) { return m.accent || BUILTIN_MODE_GRAD[m.id] || 'var(--grad-mode-auto)'; }
26
26
  // Auto-grow cap for the composer textarea: it grows with content up to here, then scrolls.
27
27
  const TEXTAREA_MAX_H = 220;
28
+ /* The default invitation. A caller that wires no `onAttach` must not be told it
29
+ * can paste a screenshot, and a caller with several participants is not
30
+ * addressing "the agent" -- both are overridden with `placeholder`. */
31
+ const LEAD_WITH_PASTE = 'Ask the agent… · paste a screenshot';
32
+ const LEAD_PLAIN = 'Ask the agent…';
28
33
  // Touch devices get a placeholder without the keyboard-shortcut hints (⏎/⇧⏎/⌘⏎).
29
34
  // Primary-pointer coarseness doesn't change at runtime, so a module const is enough
30
35
  // (same pattern as editor/inlineAssist).
@@ -43,11 +48,17 @@ function groupBySection(cmds) {
43
48
  }
44
49
  return order.map((s) => [s, map.get(s)]);
45
50
  }
46
- export function Composer({ value, onChange, onSend, onStop, running, mode, onModeChange, modes = DEFAULT_MODES, chips, onRemoveChip, onAddContext, slashCommands, onPickSlash, attachments, onAttach, onRemoveAttachment, onImageClick, inPrice, showContext = true, onDropFiles, rightSlot, history, sendLater, }) {
51
+ export function Composer({ value, onChange, onSend, onStop, running, placeholder, runHint = true, mode, onModeChange, modes = DEFAULT_MODES, chips = [], onRemoveChip, onAddContext, slashCommands = [], onPickSlash, attachments = [], onAttach, onRemoveAttachment, onImageClick, inPrice, showContext, onDropFiles, rightSlot, history, sendLater, pending, onQueue, onInject, onRemovePending, onEditPending, sendLabel = 'Send', ariaLabel, mentionables = [], }) {
47
52
  // Named because it is used to decide which LINE the caret sits on, which is
48
53
  // the whole of the Up/Down rule below.
49
54
  const NEWLINE = '\n';
50
55
  const [slashHidden, setSlashHidden] = useState(false);
56
+ /* Escape DISMISSES the roster, it does not edit what you wrote. It used to
57
+ * call onChange(`${value} `) -- appending a space to the draft purely to stop
58
+ * the handle-being-typed regex from matching, which mutates the person's text
59
+ * to close a menu. The slash menu beside it uses a hidden flag; so does this.
60
+ * Cleared on the next keystroke, so typing on re-opens the roster. */
61
+ const [mentionHidden, setMentionHidden] = useState(false);
51
62
  /* Where we are in the recalled history. -1 is "not recalling" - the live
52
63
  * draft. Held in a ref rather than state because it is read inside the key
53
64
  * handler and must reflect the last keystroke, not the last render. */
@@ -57,6 +68,7 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
57
68
  * would make people stop trusting the key. */
58
69
  const histDraft = useRef('');
59
70
  const [slashActive, setSlashActive] = useState(0);
71
+ const [mentionActive, setMentionActive] = useState(0);
60
72
  // Auto-grow the textarea with its content: from a 3-line resting height up to a
61
73
  // cap, after which it scrolls. Runs before paint (no flicker) on every value
62
74
  // change, so clearing after send snaps back to the resting height.
@@ -68,17 +80,39 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
68
80
  el.style.height = 'auto';
69
81
  el.style.height = `${Math.min(el.scrollHeight, TEXTAREA_MAX_H)}px`;
70
82
  }, [value]);
71
- const showSlash = value.startsWith('/') && !value.includes(' ') && !slashHidden;
83
+ /* No handler, no menu: a host that supplies commands it cannot act on would
84
+ * otherwise get an Enter key that opens a menu and then swallows the
85
+ * keystroke instead of sending. */
86
+ /* THE HANDLE BEING TYPED, or null.
87
+ *
88
+ * Matched at the END of the value rather than around the caret: you type a
89
+ * handle forwards, and tracking the caret to also catch an edit in the middle
90
+ * of an existing line costs state this does not otherwise need. The @ must
91
+ * follow whitespace or start the line, which is what keeps an email address
92
+ * ("sbaker@") from opening a roster. */
93
+ const mentionQ = mentionables.length > 0 && !mentionHidden ? (value.match(/(?:^|\s)@([A-Za-z0-9_-]*)$/)?.[1] ?? null) : null;
94
+ const mentionHits = mentionQ === null
95
+ ? []
96
+ : mentionables.filter((p) => p.name.toLowerCase().startsWith(mentionQ.toLowerCase()));
97
+ const pickMention = (name) => {
98
+ onChange(value.replace(/@[A-Za-z0-9_-]*$/, `@${name} `));
99
+ };
100
+ /* No handler, no button -- see the prop's note. */
101
+ const canAddContext = showContext ?? (onAddContext !== undefined);
102
+ const showSlash = value.startsWith('/') && !value.includes(' ') && !slashHidden && onPickSlash !== undefined;
72
103
  const filtered = showSlash
73
104
  ? slashCommands.filter((c) => c.name.startsWith(value.slice(1).toLowerCase()))
74
105
  : [];
75
- useEffect(() => { setSlashActive(0); }, [value]);
106
+ useEffect(() => { setSlashActive(0); setMentionActive(0); }, [value]);
76
107
  const canSend = value.trim().length > 0 || attachments.length > 0;
77
108
  // Resolve the mode list + the active entry. If the active id isn't in the list
78
109
  // (e.g. a deleted custom mode), synthesize a minimal entry so the control still
79
110
  // renders rather than crashing on an undefined accent/label.
80
111
  const modeList = modes.length ? modes : DEFAULT_MODES;
81
- const curMode = modeList.find((mm) => mm.id === mode) ?? { id: mode, label: mode || 'auto', description: '' };
112
+ /* Only meaningful when a mode was supplied; guarded at the render site below,
113
+ * where the whole stance control is dropped without one. */
114
+ const curMode = modeList.find((mm) => mm.id === mode) ?? { id: mode ?? '', label: mode || 'auto', description: '' };
115
+ const hasMode = mode !== undefined && onModeChange !== undefined;
82
116
  // Live, rough estimate of THIS message's input cost (text only): est tokens x the
83
117
  // selected model's input price. A pre-send sanity check, not a billed figure.
84
118
  // Memoized on the draft: with BPE counts enabled a count is a real encode, and
@@ -103,13 +137,36 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
103
137
  Promise.all(files.map(readAsDataUrl)).then((urls) => {
104
138
  const ok = urls.filter(Boolean);
105
139
  if (ok.length)
106
- onAttach(ok);
140
+ onAttach?.(ok);
107
141
  });
108
142
  };
109
143
  // The mode (stance) is fused to Send: collapsed it shows the current mode; click
110
144
  // expands the four options inline (no popup); pick one, it collapses.
111
145
  const [modeOpen, setModeOpen] = useState(false);
112
146
  const stanceRef = useRef(null);
147
+ // Click-to-edit on a pending chip: which one (if any) is currently swapped
148
+ // for an inline input, and its live draft text. Local state, not lifted --
149
+ // Composer stays presentational, and the host only hears about an edit once
150
+ // it commits (Enter or blur), via onEditPending.
151
+ const [editingPendingId, setEditingPendingId] = useState(null);
152
+ const [editingPendingText, setEditingPendingText] = useState('');
153
+ /* Escape must THROW AWAY the draft, not commit it. A real browser fires a
154
+ * native blur when the focused element is removed from the DOM (as part of
155
+ * the very re-render Escape triggers by nulling editingPendingId), and that
156
+ * blur reaches our own onBlur={commitEdit} -- so without this flag Escape
157
+ * would silently save the exact text it was meant to discard. Set true right
158
+ * before the state flip, consumed (and cleared) the first time a commit path
159
+ * runs afterward; also cleared on the way INTO edit mode so a browser that
160
+ * never fires that blur (jsdom in these tests) can't leave it stuck true and
161
+ * swallow a later, genuine commit. */
162
+ const abandoningEditRef = useRef(false);
163
+ /* The ids `pending` currently holds, refreshed every render. A commit that
164
+ * fires after the host has already removed the item being edited (the same
165
+ * unmount-blur hazard above, but from the host's side rather than Escape) is
166
+ * recognized here and dropped, rather than resurrecting an id the host no
167
+ * longer knows about. */
168
+ const pendingIdsRef = useRef(new Set());
169
+ pendingIdsRef.current = new Set((pending ?? []).map((p) => p.id));
113
170
  useEffect(() => {
114
171
  if (!modeOpen)
115
172
  return;
@@ -124,11 +181,48 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
124
181
  e.preventDefault();
125
182
  onDropFiles(files);
126
183
  }
127
- } : undefined, children: [showSlash && filtered.length > 0 && (_jsxs("div", { style: S.slash, children: [groupBySection(filtered).map(([section, items]) => (_jsxs("div", { children: [section && _jsx("div", { style: S.slashSection, children: section }), items.map((c) => {
184
+ } : undefined, children: [mentionHits.length > 0 && (_jsxs("div", { style: S.slash, children: [mentionHits.map((p, i) => (_jsxs("button", { style: S.slashItem(i === mentionActive), onMouseEnter: () => setMentionActive(i), onClick: () => pickMention(p.name), children: [_jsxs("span", { style: S.slashName, children: ["@", p.name] }), _jsx("span", { style: S.slashHint, children: p.hint ?? '' })] }, p.name))), _jsxs("div", { style: S.slashFoot, children: [_jsx("span", { children: "\u2191\u2193 navigate" }), _jsx("span", { children: "\u21B5 select" }), _jsx("span", { children: "esc dismiss" })] })] })), showSlash && filtered.length > 0 && (_jsxs("div", { style: S.slash, children: [groupBySection(filtered).map(([section, items]) => (_jsxs("div", { children: [section && _jsx("div", { style: S.slashSection, children: section }), items.map((c) => {
128
185
  const idx = filtered.indexOf(c);
129
- return (_jsxs("button", { style: S.slashItem(idx === slashActive), onMouseEnter: () => setSlashActive(idx), onClick: () => onPickSlash(c.name), children: [_jsx("span", { style: S.slashIcon, children: c.icon }), _jsxs("span", { style: S.slashName, children: ["/", c.name] }), _jsx("span", { style: S.slashHint, children: c.hint })] }, c.name));
130
- })] }, section || '_'))), _jsxs("div", { style: S.slashFoot, children: [_jsx("span", { children: "\u2191\u2193 navigate" }), _jsx("span", { children: "\u21B5 select" }), _jsx("span", { children: "esc dismiss" })] })] })), (showContext || chips.length > 0 || rightSlot) && (_jsxs("div", { style: S.chips, children: [chips.map((c) => (_jsxs("span", { style: S.chip, title: c.label, children: [c.id === 'selection' ? _jsx(IcCode, { size: 11 }) : _jsx(IcFile, { size: 11 }), _jsx("span", { style: S.chipLabel, children: c.label }), c.removable && _jsx("button", { style: S.chipX, onClick: () => onRemoveChip(c.id), "aria-label": "Remove context", children: _jsx(IcX, { size: 10 }) })] }, c.id))), showContext && _jsxs("button", { style: S.addCtx, onClick: onAddContext, title: "Add context", children: [_jsx(IcPlus, { size: 11 }), " context"] }), rightSlot && _jsx("span", { style: S.chipsRight, children: rightSlot })] })), attachments.length > 0 && (_jsx("div", { style: S.thumbs, children: attachments.map((src, i) => (_jsxs("div", { style: S.thumbWrap, children: [_jsx("img", { src: src, alt: `Attachment ${i + 1}`, style: S.thumb, className: "ask-thumb", onClick: () => onImageClick(src), title: "Click to expand" }), _jsx("button", { style: S.thumbX, onClick: () => onRemoveAttachment(i), "aria-label": "Remove image", children: _jsx(IcX, { size: 11 }) })] }, i))) })), _jsx("textarea", { ref: textareaRef, style: S.textarea, value: value, onChange: (e) => {
186
+ return (_jsxs("button", { style: S.slashItem(idx === slashActive), onMouseEnter: () => setSlashActive(idx), onClick: () => onPickSlash?.(c.name), children: [_jsx("span", { style: S.slashIcon, children: c.icon }), _jsxs("span", { style: S.slashName, children: ["/", c.name] }), _jsx("span", { style: S.slashHint, children: c.hint })] }, c.name));
187
+ })] }, section || '_'))), _jsxs("div", { style: S.slashFoot, children: [_jsx("span", { children: "\u2191\u2193 navigate" }), _jsx("span", { children: "\u21B5 select" }), _jsx("span", { children: "esc dismiss" })] })] })), (canAddContext || chips.length > 0 || rightSlot) && (_jsxs("div", { style: S.chips, children: [chips.map((c) => (_jsxs("span", { style: S.chip, title: c.label, children: [c.id === 'selection' ? _jsx(IcCode, { size: 11 }) : _jsx(IcFile, { size: 11 }), _jsx("span", { style: S.chipLabel, children: c.label }), c.removable && _jsx("button", { style: S.chipX, onClick: () => onRemoveChip?.(c.id), "aria-label": "Remove context", children: _jsx(IcX, { size: 10 }) })] }, c.id))), canAddContext && _jsxs("button", { style: S.addCtx, onClick: onAddContext, title: "Add context", children: [_jsx(IcPlus, { size: 11 }), " context"] }), rightSlot && _jsx("span", { style: S.chipsRight, children: rightSlot })] })), attachments.length > 0 && (_jsx("div", { style: S.thumbs, children: attachments.map((src, i) => (_jsxs("div", { style: S.thumbWrap, children: [_jsx("img", { src: src, alt: `Attachment ${i + 1}`, style: S.thumb, className: "ask-thumb", onClick: () => onImageClick?.(src), title: "Click to expand" }), _jsx("button", { style: S.thumbX, onClick: () => onRemoveAttachment?.(i), "aria-label": "Remove image", children: _jsx(IcX, { size: 11 }) })] }, i))) })), pending && pending.length > 0 && (_jsx("div", { style: S.pendingRow, children: pending.map((p) => {
188
+ const editing = editingPendingId === p.id;
189
+ const commitEdit = () => {
190
+ setEditingPendingId(null);
191
+ // Escape already threw this text away -- a same-unmount blur
192
+ // reaching us here must not resurrect it.
193
+ if (abandoningEditRef.current) {
194
+ abandoningEditRef.current = false;
195
+ return;
196
+ }
197
+ // The host removed this item while it was being edited -- there
198
+ // is nothing left to send the edit to.
199
+ if (!pendingIdsRef.current.has(p.id))
200
+ return;
201
+ if (onEditPending)
202
+ onEditPending(p.id, editingPendingText);
203
+ };
204
+ return (_jsxs("span", { style: S.pendingChip(p.state), children: [editing ? (_jsx("input", { autoFocus: true, style: S.pendingEdit, value: editingPendingText, onChange: (e) => setEditingPendingText(e.target.value), onBlur: commitEdit, onKeyDown: (e) => {
205
+ if (e.key === 'Enter') {
206
+ e.preventDefault();
207
+ commitEdit();
208
+ return;
209
+ }
210
+ if (e.key === 'Escape') {
211
+ e.preventDefault();
212
+ abandoningEditRef.current = true;
213
+ setEditingPendingId(null);
214
+ }
215
+ } })) : (_jsx("span", { style: onEditPending ? { ...S.pendingText, cursor: 'text' } : S.pendingText, onClick: onEditPending ? () => {
216
+ abandoningEditRef.current = false;
217
+ setEditingPendingId(p.id);
218
+ setEditingPendingText(p.text);
219
+ } : undefined, children: p.text })), p.note && _jsx("span", { style: S.pendingNote, children: p.note }), p.state === 'injecting' && _jsx("span", { style: S.pendingNote, children: "lands after this step" }), p.state === 'injecting' && onInject && (
220
+ // The chip half of the Alt+Enter ladder: cut the model stream
221
+ // now instead of waiting for the turn to finish.
222
+ _jsx("button", { style: S.pendingAction, onClick: () => onInject(p.id), children: "Interrupt now" })), p.state === 'held' && onInject && (_jsx("button", { style: S.pendingAction, onClick: () => onInject(p.id), children: "Send now" })), onRemovePending && (_jsx("button", { style: S.pendingX, "aria-label": "Remove queued message", onClick: () => onRemovePending(p.id), children: "x" }))] }, p.id));
223
+ }) })), _jsx("textarea", { ref: textareaRef, style: S.textarea, "aria-label": ariaLabel, value: value, onChange: (e) => {
131
224
  setSlashHidden(false);
225
+ setMentionHidden(false);
132
226
  // Typing leaves the history: what is in the box is now a draft, and a
133
227
  // later Down should not jump to an entry the user has since edited
134
228
  // away from.
@@ -137,6 +231,28 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
137
231
  }, onPaste: onPaste, onKeyDown: (e) => {
138
232
  // While the "/" menu is open it owns the arrows + Enter/Tab/Escape, so a
139
233
  // command can be navigated and picked without leaving the keyboard.
234
+ if (mentionHits.length > 0) {
235
+ if (e.key === 'ArrowDown') {
236
+ e.preventDefault();
237
+ setMentionActive((a) => Math.min(a + 1, mentionHits.length - 1));
238
+ return;
239
+ }
240
+ if (e.key === 'ArrowUp') {
241
+ e.preventDefault();
242
+ setMentionActive((a) => Math.max(a - 1, 0));
243
+ return;
244
+ }
245
+ if (e.key === 'Escape') {
246
+ e.preventDefault();
247
+ setMentionHidden(true);
248
+ return;
249
+ }
250
+ if ((e.key === 'Enter' || e.key === 'Tab') && !e.metaKey && !e.ctrlKey && !e.shiftKey) {
251
+ e.preventDefault();
252
+ pickMention(mentionHits[Math.min(mentionActive, mentionHits.length - 1)].name);
253
+ return;
254
+ }
255
+ }
140
256
  if (showSlash && filtered.length > 0) {
141
257
  if (e.key === 'ArrowDown') {
142
258
  e.preventDefault();
@@ -155,7 +271,7 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
155
271
  }
156
272
  if ((e.key === 'Enter' || e.key === 'Tab') && !e.metaKey && !e.ctrlKey && !e.shiftKey) {
157
273
  e.preventDefault();
158
- onPickSlash(filtered[Math.min(slashActive, filtered.length - 1)].name);
274
+ onPickSlash?.(filtered[Math.min(slashActive, filtered.length - 1)].name);
159
275
  return;
160
276
  }
161
277
  }
@@ -206,24 +322,56 @@ export function Composer({ value, onChange, onSend, onStop, running, mode, onMod
206
322
  }
207
323
  if (e.key !== 'Enter')
208
324
  return;
209
- // ⌘/Ctrl+Enter: don't send — let it bubble to the editor's global handler
210
- // so it runs the prompt. Shift+Enter: newline (default). Enter: send.
325
+ // Cmd/Ctrl+Enter: don't handle it -- let it bubble to the editor's
326
+ // global handler so it runs the prompt. Shift+Enter: newline.
211
327
  if (e.metaKey || e.ctrlKey || e.shiftKey)
212
328
  return;
329
+ // Alt+Enter pushes into the turn already running.
330
+ if (e.altKey) {
331
+ if (!running || !onInject)
332
+ return;
333
+ // An empty composer normally has nothing to push -- EXCEPT when a
334
+ // message is already in flight, where the second Alt+Enter is the
335
+ // ladder's escalation to a hard inject.
336
+ if (!canSend && !pending?.some((p) => p.state === 'injecting'))
337
+ return;
338
+ e.preventDefault();
339
+ onInject();
340
+ return;
341
+ }
342
+ // Only take the queue path when the host actually wired one. A host
343
+ // that renders `running` but has not adopted the queue must get
344
+ // today's behavior unchanged -- Enter falls through to onSend()
345
+ // below exactly as it always has.
346
+ if (running && onQueue) {
347
+ if (!canSend)
348
+ return;
349
+ e.preventDefault();
350
+ onQueue();
351
+ return;
352
+ }
213
353
  if (!canSend)
214
354
  return;
215
355
  e.preventDefault();
216
356
  histIdx.current = -1;
217
357
  histDraft.current = '';
218
358
  onSend();
219
- }, placeholder: COARSE_POINTER
220
- ? 'Ask the agent… · paste a screenshot'
221
- : 'Ask the agent… · paste a screenshot · ↵ send · ⇧↵ newline · ⌘↵ run', rows: 3 }), _jsxs("div", { style: S.bottom, children: [!running && sendLater, estTok > 0 && (_jsxs("span", { style: S.est, title: "Rough estimate of this message's input tokens and cost (text only)", children: ["~", fmtTok(estTok), " tok", estCost != null ? ` · est ${fmtCost(estCost)}` : ''] })), _jsxs("div", { ref: stanceRef, style: S.stance, children: [modeOpen ? (modeList.map((mm) => (_jsxs("button", { style: S.stanceOpt(mm.id === mode), title: mm.description || mm.label, onClick: () => { onModeChange(mm.id); setModeOpen(false); }, children: [_jsx("span", { style: { ...S.modeDot, background: modeAccent(mm) } }), mm.label] }, mm.id)))) : (_jsxs("button", { style: S.stanceCurrent, onClick: () => setModeOpen(true), title: curMode.description || curMode.label, children: [_jsx("span", { style: { ...S.modeDot, background: modeAccent(curMode) } }), _jsx("span", { style: S.stanceName, children: curMode.label }), _jsx(IcChevron, { size: 12 })] })), _jsx("span", { style: S.stanceDivider }), running ? (_jsxs("button", { style: { ...S.sendBtn, background: 'var(--grad-stop)' }, onClick: onStop, children: [_jsx(IcStop, { size: 12 }), " Stop"] })) : (
359
+ }, placeholder: (() => {
360
+ // The invitation is the host's; the key hints are this component's.
361
+ const lead = placeholder ?? (onAttach ? LEAD_WITH_PASTE : LEAD_PLAIN);
362
+ if (COARSE_POINTER)
363
+ return lead;
364
+ if (pending && onQueue && running) {
365
+ return `${lead} · ↵ queue · ⌥↵ push into run · ⇧↵ newline`;
366
+ }
367
+ const base = `${lead} · ↵ send · ⇧↵ newline`;
368
+ return runHint ? `${base} · ⌘↵ run` : base;
369
+ })(), rows: 3 }), _jsxs("div", { style: S.bottom, children: [!running && sendLater, estTok > 0 && (_jsxs("span", { style: S.est, title: "Rough estimate of this message's input tokens and cost (text only)", children: ["~", fmtTok(estTok), " tok", estCost != null ? ` · est ${fmtCost(estCost)}` : ''] })), _jsxs("div", { ref: stanceRef, style: S.stance, children: [hasMode && (modeOpen ? (modeList.map((mm) => (_jsxs("button", { style: S.stanceOpt(mm.id === mode), title: mm.description || mm.label, onClick: () => { onModeChange?.(mm.id); setModeOpen(false); }, children: [_jsx("span", { style: { ...S.modeDot, background: modeAccent(mm) } }), mm.label] }, mm.id)))) : (_jsxs("button", { style: S.stanceCurrent, onClick: () => setModeOpen(true), title: curMode.description || curMode.label, children: [_jsx("span", { style: { ...S.modeDot, background: modeAccent(curMode) } }), _jsx("span", { style: S.stanceName, children: curMode.label }), _jsx(IcChevron, { size: 12 })] }))), hasMode && _jsx("span", { style: S.stanceDivider }), running ? (_jsxs(_Fragment, { children: [onQueue && (_jsx("button", { style: S.queueBtn, onClick: onQueue, disabled: !value.trim() && attachments.length === 0, title: "Park this for after the run (Enter). Alt+Enter pushes it into the run instead.", children: "Queue" })), _jsxs("button", { style: { ...S.sendBtn, background: 'var(--grad-stop)' }, onClick: onStop, children: [_jsx(IcStop, { size: 12 }), " Stop"] })] })) : (
222
370
  // One primary per app: a host that declares --grad-send (corenel.ai)
223
371
  // paints Send like every other primary button, and mode colour stays
224
372
  // on the dot. Without it (prompd.app) this falls back to the mode
225
373
  // gradient, which is the historical behaviour.
226
- _jsxs("button", { style: { ...S.sendBtn, background: `var(--grad-send, ${modeAccent(curMode)})`, color: 'var(--text-on-accent, #fff)' }, onClick: onSend, disabled: !canSend, children: [_jsx(IcPlay, { size: 12 }), " Send"] }))] })] })] }));
374
+ _jsxs("button", { style: { ...S.sendBtn, background: `var(--grad-send, ${hasMode ? modeAccent(curMode) : 'var(--accent)'})`, color: 'var(--text-on-accent, #fff)' }, onClick: onSend, disabled: !canSend, children: [_jsx(IcPlay, { size: 12 }), " ", sendLabel] }))] })] })] }));
227
375
  }
228
376
  const S = {
229
377
  wrap: { position: 'relative', borderTop: '1px solid var(--border-subtle)', background: 'var(--surface-1)', padding: 10, display: 'flex', flexDirection: 'column', gap: 8 },
@@ -257,5 +405,19 @@ const S = {
257
405
  stanceOpt: (active) => ({ display: 'inline-flex', alignItems: 'center', gap: 5, padding: '0 9px', border: 0, background: active ? 'var(--surface-1)' : 'transparent', color: active ? 'var(--text-primary)' : 'var(--text-tertiary)', fontSize: 12, fontWeight: 600, fontFamily: 'inherit', textTransform: 'capitalize', cursor: 'pointer' }),
258
406
  stanceDivider: { width: 1, alignSelf: 'stretch', background: 'var(--border-subtle)' },
259
407
  sendBtn: { display: 'inline-flex', alignItems: 'center', gap: 6, padding: '0 14px', border: 0, color: '#fff', fontSize: 13, fontWeight: 600, fontFamily: 'inherit', cursor: 'pointer' },
408
+ queueBtn: { display: 'inline-flex', alignItems: 'center', gap: 5, padding: '5px 10px', border: 0, background: 'transparent', color: 'var(--text-secondary)', cursor: 'pointer', fontSize: 12, fontWeight: 600 },
409
+ pendingRow: { display: 'flex', flexWrap: 'wrap', gap: 6 },
410
+ pendingChip: (state) => ({
411
+ display: 'inline-flex', alignItems: 'center', gap: 6, maxWidth: '100%',
412
+ padding: '3px 6px 3px 8px', borderRadius: 'var(--radius-sm)', fontSize: 12,
413
+ background: state === 'held' ? 'var(--warn-soft, var(--surface-2))' : 'var(--surface-2)',
414
+ border: `1px solid ${state === 'injecting' ? 'var(--accent)' : 'var(--border-subtle)'}`,
415
+ color: 'var(--text-secondary)',
416
+ }),
417
+ pendingText: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', maxWidth: 260 },
418
+ pendingEdit: { fontSize: 12, fontFamily: 'inherit', color: 'var(--text-primary)', background: 'var(--surface-1)', border: '1px solid var(--border-default)', borderRadius: 'var(--radius-sm)', padding: '1px 4px', maxWidth: 260, width: 200 },
419
+ pendingNote: { fontSize: 11, color: 'var(--accent)' },
420
+ pendingAction: { border: 0, background: 'transparent', color: 'var(--accent)', cursor: 'pointer', fontSize: 11, padding: 0 },
421
+ pendingX: { border: 0, background: 'transparent', color: 'var(--text-tertiary)', cursor: 'pointer', fontSize: 12, padding: '0 2px', lineHeight: 1 },
260
422
  };
261
423
  //# sourceMappingURL=Composer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../Composer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../Composer.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { type MentionSpec } from '@corenel/ui-kit/ui-helpers';
2
3
  export declare function CopyBtn({ text, title }: {
3
4
  text: string;
4
5
  title?: string;
@@ -7,9 +8,14 @@ export declare function CodeBlock({ lang, code }: {
7
8
  lang: string;
8
9
  code: string;
9
10
  }): React.JSX.Element;
10
- export declare function Markdown({ text, renderFence }: {
11
+ export declare function Markdown({ text, renderFence, mentions, me }: {
11
12
  text: string;
12
13
  renderFence?: (lang: string, code: string) => React.ReactNode | null;
14
+ /** Which of `mentions` are the reader, so a mention OF THEM reads differently. */
15
+ me?: readonly string[];
16
+ /** Handles to mark as mentions -- a room passes its participants. Omitted, no
17
+ * text is treated as a mention, which is every other surface unchanged. */
18
+ mentions?: MentionSpec;
13
19
  }): React.JSX.Element;
14
20
  /** Render a model's OUTPUT richly: a response that is ENTIRELY a JSON payload or a
15
21
  * bare mermaid diagram (no ``` fence — the common case when a prompt's whole job is
@@ -26,4 +32,9 @@ export declare function RichResult({ name, args, result }: {
26
32
  args: Record<string, unknown>;
27
33
  result: string;
28
34
  }): React.JSX.Element;
35
+ /** Render a tool's ARGUMENTS with the most useful view for that tool. */
36
+ export declare function RichArgs({ name, args }: {
37
+ name: string;
38
+ args: Record<string, unknown>;
39
+ }): React.ReactNode;
29
40
  //# sourceMappingURL=RichContent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichContent.d.ts","sourceRoot":"","sources":["../RichContent.tsx"],"names":[],"mappings":"AAWA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAuEpE,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,KAAc,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,qBAUjF;AAyCD,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,qBA2BvE;AAkBD,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,GAAG,IAAI,CAAA;CAAE,qBAarI;AAaD;;;;4DAI4D;AAC5D,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,GAAG,IAAI,CAAA;CAAE,4BASvI;AAKD,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,qBAkBjH"}
1
+ {"version":3,"file":"RichContent.d.ts","sourceRoot":"","sources":["../RichContent.tsx"],"names":[],"mappings":"AAWA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,EAA2B,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAsEvF,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,KAAc,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,qBAUjF;AAyCD,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,qBA2BvE;AAkBD,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IACrE,kFAAkF;IAClF,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB;+EAC2E;IAC3E,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB,qBAaA;AAaD;;;;4DAI4D;AAC5D,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,GAAG,IAAI,CAAA;CAAE,4BASvI;AAKD,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,qBAkBjH;AA6DD,yEAAyE;AACzE,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,KAAK,CAAC,SAAS,CAiCzG"}