@hanzo/ui 8.29.25 → 8.29.27

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.
@@ -43,6 +43,7 @@ const react_2 = require("react");
43
43
  const gui_2 = require("../backends/gui/index.cjs");
44
44
  const slot_1 = require("../backends/gui/slot.cjs");
45
45
  const glass_1 = require("../glass.cjs");
46
+ const ChipSelect_1 = require("../product/ChipSelect.cjs");
46
47
  const Dial_1 = require("./Dial.cjs");
47
48
  const Dictation_1 = require("./Dictation.cjs");
48
49
  const Mention_1 = require("./Mention.cjs");
@@ -50,6 +51,7 @@ const Palette_1 = require("./Palette.cjs");
50
51
  const Plus_1 = require("./Plus.cjs");
51
52
  const send_1 = require("./send.cjs");
52
53
  const ring_1 = require("./ring.cjs");
54
+ const Status_1 = require("./Status.cjs");
53
55
  const Tune_1 = require("./Tune.cjs");
54
56
  /**
55
57
  * The resting placeholder. It addresses the person rather than the mechanism,
@@ -62,9 +64,11 @@ exports.MEASURE = 'var(--container-prose, 48rem)';
62
64
  exports.GAP = 20;
63
65
  /** The composer's width under a thread: the measure less its 0.75rem gutters, centred, so its edges are the text's. */
64
66
  exports.measure = { width: 'calc(100% - 1.5rem)', maxW: `calc(${exports.MEASURE} - 1.5rem)`, mx: 'auto' };
65
- /** The round controls' box, px, and a phone's, a thumb's width kept small so the frame is a slim glass bar: `+`, the effort, the mic, its chevron and send all take it, so they share one centreline. */
67
+ /** The round controls' box, px, and a phone's, a thumb's width kept small so the frame is a slim glass bar: `+`, the effort, the mic, its chevron and send all take it, so they share one centreline. The pills stand as tall. */
66
68
  exports.ROUND = 32;
67
69
  const TAP = 36;
70
+ /** The space between two things in a row of the frame, px: one gap, so a row reads evenly set. */
71
+ const SPACE = 4;
68
72
  /** The frame's corner, px: 12 on a laptop; on a phone the inset plus a control's radius, so the send's circle and the frame's corner are concentric. */
69
73
  const CORNER = 12;
70
74
  const CORNER_PHONE = 24;
@@ -74,6 +78,19 @@ const CEILING = 200;
74
78
  const ON = 'var(--primary-foreground)';
75
79
  /** A round control with no ground of its own until it is pointed at. */
76
80
  const QUIET = { bg: 'transparent', color: 'var(--foreground)', hoverStyle: { bg: '$hover' } };
81
+ /** What the draft carries, as a chip: a filled tab after `+` on a laptop; on a phone a pill in a row of its own above the field, the pills' shape (round, a hairline, no fill) as tall as the controls, so the controls' row never wraps. */
82
+ const CARRIED = { height: 28, rounded: 8, bg: '$hover', paddingInlineStart: 8 };
83
+ const pill = (height) => ({ height, rounded: 999, borderWidth: 1, borderColor: '$borderColor', bg: 'transparent', paddingInlineStart: 12 });
84
+ /**
85
+ * Under a coarse pointer @hanzo/design floors every button at `--tap-target`,
86
+ * 44px, with !important. The composer's controls are its secondary chrome — the
87
+ * field, the column's width, is the target (see @hanzo/composer `Control`) — and
88
+ * each is sized on purpose, so inside the frame and the row under it the floor
89
+ * is WCAG 2.5.8's 24px. Without it a phone draws every control, pill and chip
90
+ * at 44: the slabs the 36px bar was set to replace.
91
+ */
92
+ // inline-style: a custom property, which no gui prop carries.
93
+ const FLOOR = { '--tap-target': '24px' };
77
94
  /** Ctrl+U (⌘U) uploads, while a composer with an upload is on the page. */
78
95
  function useUpload(upload) {
79
96
  const now = (0, react_2.useRef)(upload);
@@ -128,8 +145,9 @@ function useLift() {
128
145
  }, []);
129
146
  return lift;
130
147
  }
131
- function Composer({ value, onChange, onSend, onStop, busy = false, disabled = false, ready: readyProp, placeholder, label, rows = 1, maxHeight = CEILING, field, hint, children, head, pills, carried, plus, slash, at, commands, chips, mind, effort, limits, onUpgrade, mode, voice, language = null, onLanguage, talk, starters, note, column = false, framed = false, narrow: narrowProp, defaults, ...props }) {
148
+ function Composer({ value, onChange, onSend, onStop, busy = false, disabled = false, ready: readyProp, placeholder, label, rows = 1, maxHeight = CEILING, field, hint, status, children, head, pills, carried, plus, slash, at, commands, chips, mind, effort, limits, onUpgrade, mode, voice, language = null, onLanguage, talk, starters, note, column = false, framed = false, narrow: narrowProp, defaults, ...props }) {
132
149
  const { t } = (0, react_1.useI18n)();
150
+ const inheritedStatus = (0, Status_1.useComposerStatus)();
133
151
  const media = (0, gui_1.useMedia)();
134
152
  const narrow = narrowProp ?? !media.sm;
135
153
  const hit = narrow ? TAP : exports.ROUND;
@@ -207,8 +225,9 @@ function Composer({ value, onChange, onSend, onStop, busy = false, disabled = fa
207
225
  }, children: busy ? (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Square, { size: 13, color: ON, fill: ON }) : (0, jsx_runtime_1.jsx)(lucide_icons_2_1.ArrowUp, { size: 16, strokeWidth: 2.5, color: ON }) }));
208
226
  const mention = listed && shelf && typed ? (0, jsx_runtime_1.jsx)(Mention_1.Mention, { shelf: shelf, rows: listed, index: row, onPick: pick, skills: typed.char === '/' }) : null;
209
227
  const above = starters || head || note || mention ? ((0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('composer-head'), gap: "$1.5", children: [starters, head, mention, note ? ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { ...(0, slot_1.slot)('composer-note'), fontSize: 12, color: "$soft", text: "center", self: "center", children: note })) : null] })) : null;
228
+ const things = (carried ?? []).map((c) => ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-carried'), items: "center", gap: 6, paddingInlineEnd: 4, maxW: 180, ...(narrow ? pill(hit) : CARRIED), children: [c.icon ? (0, jsx_runtime_1.jsx)(gui_1.XStack, { "aria-hidden": true, children: c.icon }) : null, (0, jsx_runtime_1.jsx)(gui_1.SizableText, { fontSize: 13, color: "$ink", numberOfLines: 1, shrink: 1, children: c.label }), (0, jsx_runtime_1.jsx)(gui_1.XStack, { render: "button", "aria-label": t('Remove {name}', { name: c.label }), onPress: c.onRemove, width: 20, height: 20, rounded: narrow ? 999 : 6, items: "center", justify: "center", hoverStyle: { bg: '$raised' }, cursor: "pointer", children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 12, color: "$hint" }) })] }, c.id)));
210
229
  const shown = showChips && chips?.length ? chips : null;
211
230
  const tuned = (showModel && mind) || (showMode && mode);
212
- const under = shown || tuned ? ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-foot'), items: "center", gap: 6, flexWrap: "wrap", rowGap: 4, width: "100%", children: [shown ? (0, jsx_runtime_1.jsx)(Tune_1.Chips, { chips: shown }) : null, tuned ? (0, jsx_runtime_1.jsx)(Tune_1.Tune, { mind: showModel ? mind : null, mode: showMode ? mode : null, onUpgrade: onUpgrade, limits: limits }) : null] })) : null;
213
- return ((0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('composer-shell'), ...(column ? exports.measure : { width: '100%' }), gap: 6, ...(lift ? { mb: lift } : null), ...props, children: [above, (0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('composer'), width: "100%", rounded: CORNER, borderWidth: 1, ...(0, glass_1.glass)(2), p: 6, pt: pills ? 6 : 10, gap: 4, "$max-sm": { rounded: CORNER_PHONE }, ...(framed ? { boxShadow: 'var(--shadow-sheet-1)' } : null), children: [pills ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { ...(0, slot_1.slot)('composer-pills'), items: "center", gap: 4, flexWrap: "wrap", rowGap: 4, px: 2, children: pills })) : null, input, (0, jsx_runtime_1.jsxs)(gui_1.XStack, { items: "center", gap: 4, children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-start'), items: "center", gap: 4, flex: 1, minW: 0, flexWrap: "wrap", children: [plus ? (0, jsx_runtime_1.jsx)(Plus_1.Plus, { ...plus, size: hit, disabled: disabled || plus.disabled }) : null, (carried ?? []).map((c) => ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-carried'), items: "center", gap: 6, paddingInlineStart: 8, paddingInlineEnd: 4, height: 28, rounded: 8, bg: "$hover", maxW: 180, children: [c.icon ? (0, jsx_runtime_1.jsx)(gui_1.XStack, { "aria-hidden": true, children: c.icon }) : null, (0, jsx_runtime_1.jsx)(gui_1.SizableText, { fontSize: 13, color: "$ink", numberOfLines: 1, shrink: 1, children: c.label }), (0, jsx_runtime_1.jsx)(gui_1.XStack, { render: "button", "aria-label": t('Remove {name}', { name: c.label }), onPress: c.onRemove, width: 20, height: 20, rounded: 6, items: "center", justify: "center", hoverStyle: { bg: '$raised' }, cursor: "pointer", children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 12, color: "$hint" }) })] }, c.id))), children] }), (0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-end'), items: "center", gap: 4, shrink: 0, children: [hint ? ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$1", color: "$soft", numberOfLines: 1, children: hint })) : null, effort ? (0, jsx_runtime_1.jsx)(Dial_1.Dial, { effort: effort, size: hit, disabled: disabled }) : null, commands?.length ? (0, jsx_runtime_1.jsx)(Palette_1.Palette, { commands: commands, open: palette, onOpenChange: setPalette, size: hit, disabled: disabled }) : null, voice ? (0, jsx_runtime_1.jsx)(Dictation_1.Dictation, { voice: voice, disabled: disabled, size: hit, language: language, ...(onLanguage ? { onLanguage } : {}) }) : null, !busy && !lit && talk ? ((0, jsx_runtime_1.jsx)(composer_1.Control, { asChild: true, size: hit, fill: narrow, rounded: 999, ...(narrow ? null : QUIET), focusVisibleStyle: ring_1.RING, children: (0, jsx_runtime_1.jsx)(voice_1.Voice, { voice: talk, disabled: disabled, "data-slot": "composer-talk", says: { idle: t('Voice mode'), listening: t('In conversation — click to hang up'), speaking: t('Hanzo is speaking — talk to interrupt') }, children: () => (0, jsx_runtime_1.jsx)(lucide_icons_2_1.AudioLines, { size: 16, color: narrow ? ON : 'var(--foreground)' }) }) })) : (round)] })] })] }), under] }));
231
+ const under = shown || tuned ? ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-foot'), items: "center", gap: 6, flexWrap: "wrap", rowGap: 4, width: "100%", style: FLOOR, children: [shown ? (0, jsx_runtime_1.jsx)(Tune_1.Chips, { chips: shown }) : null, tuned ? (0, jsx_runtime_1.jsx)(Tune_1.Tune, { mind: showModel ? mind : null, mode: showMode ? mode : null, onUpgrade: onUpgrade, limits: limits }) : null] })) : null;
232
+ return ((0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('composer-shell'), ...(column ? exports.measure : { width: '100%' }), gap: 6, ...(lift ? { mb: lift } : null), ...props, children: [above, (0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('composer'), width: "100%", rounded: CORNER, borderWidth: 1, ...(0, glass_1.glass)(2), p: 6, pt: pills || (narrow && things.length) ? 6 : 10, gap: SPACE, "$max-sm": { rounded: CORNER_PHONE }, ...(framed ? { boxShadow: 'var(--shadow-sheet-1)' } : null), style: FLOOR, children: [pills ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { ...(0, slot_1.slot)('composer-pills'), items: "center", gap: SPACE, flexWrap: "wrap", rowGap: SPACE, children: (0, jsx_runtime_1.jsx)(ChipSelect_1.Pills.Provider, { value: hit, children: pills }) })) : null, narrow && things.length ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { ...(0, slot_1.slot)('composer-carry'), items: "center", gap: SPACE, flexWrap: "wrap", rowGap: SPACE, children: things })) : null, input, (0, jsx_runtime_1.jsxs)(gui_1.XStack, { items: "center", gap: SPACE, children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-start'), items: "center", gap: SPACE, flex: 1, minW: 0, flexWrap: "wrap", children: [plus ? (0, jsx_runtime_1.jsx)(Plus_1.Plus, { ...plus, size: hit, disabled: disabled || plus.disabled }) : null, narrow ? null : things, children] }), (0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('composer-end'), items: "center", gap: SPACE, shrink: 0, children: [hint ? ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$1", color: "$soft", numberOfLines: 1, children: hint })) : null, status === undefined ? inheritedStatus : status, effort ? (0, jsx_runtime_1.jsx)(Dial_1.Dial, { effort: effort, size: hit, narrow: narrow, disabled: disabled }) : null, commands?.length ? (0, jsx_runtime_1.jsx)(Palette_1.Palette, { commands: commands, open: palette, onOpenChange: setPalette, size: hit, disabled: disabled }) : null, voice ? (0, jsx_runtime_1.jsx)(Dictation_1.Dictation, { voice: voice, disabled: disabled, size: hit, gap: narrow ? SPACE : 0, language: language, ...(onLanguage ? { onLanguage } : {}) }) : null, !busy && !lit && talk ? ((0, jsx_runtime_1.jsx)(composer_1.Control, { asChild: true, size: hit, fill: narrow, rounded: 999, ...(narrow ? null : QUIET), focusVisibleStyle: ring_1.RING, children: (0, jsx_runtime_1.jsx)(voice_1.Voice, { voice: talk, disabled: disabled, "data-slot": "composer-talk", says: { idle: t('Voice mode'), listening: t('In conversation — click to hang up'), speaking: t('Hanzo is speaking — talk to interrupt') }, children: () => (0, jsx_runtime_1.jsx)(lucide_icons_2_1.AudioLines, { size: 16, color: narrow ? ON : 'var(--foreground)' }) }) })) : (round)] })] })] }), under] }));
214
233
  }
@@ -52,7 +52,7 @@ export declare const measure: {
52
52
  readonly maxW: "calc(var(--container-prose, 48rem) - 1.5rem)";
53
53
  readonly mx: 'auto';
54
54
  };
55
- /** The round controls' box, px, and a phone's, a thumb's width kept small so the frame is a slim glass bar: `+`, the effort, the mic, its chevron and send all take it, so they share one centreline. */
55
+ /** The round controls' box, px, and a phone's, a thumb's width kept small so the frame is a slim glass bar: `+`, the effort, the mic, its chevron and send all take it, so they share one centreline. The pills stand as tall. */
56
56
  export declare const ROUND = 32;
57
57
  /** One thing the draft carries, after `+`: a file, a skill that is on. */
58
58
  export interface Carried {
@@ -84,6 +84,8 @@ export interface ComposerProps extends Stack {
84
84
  field?: FieldProps;
85
85
  /** A word at the end of the tool row, before the controls: a status. */
86
86
  hint?: string;
87
+ /** Account usage and context control; null hides a host-provided control. */
88
+ status?: ReactNode;
87
89
  /** The tool row's start, after `+` and what the draft carries. */
88
90
  children?: ReactNode;
89
91
  /** Above the frame, at its width: what the draft is sent with, a banner. */
@@ -126,13 +128,13 @@ export interface ComposerProps extends Stack {
126
128
  column?: boolean;
127
129
  /** Drawn on a pane: the frame floats as a pane of its own. */
128
130
  framed?: boolean;
129
- /** A phone: suggestions go above the frame and every target is 44px. Absent, the viewport decides. */
131
+ /** A phone: every control is 36px, the pills as tall, each row evenly set. Absent, the viewport decides. */
130
132
  narrow?: boolean;
131
133
  /** This surface's answer where the person left an axis on Auto. */
132
134
  defaults?: Composing;
133
135
  }
134
136
  /** Ctrl+U (⌘U) uploads, while a composer with an upload is on the page. */
135
137
  export declare function useUpload(upload: (() => void) | undefined): void;
136
- export declare function Composer({ value, onChange, onSend, onStop, busy, disabled, ready: readyProp, placeholder, label, rows, maxHeight, field, hint, children, head, pills, carried, plus, slash, at, commands, chips, mind, effort, limits, onUpgrade, mode, voice, language, onLanguage, talk, starters, note, column, framed, narrow: narrowProp, defaults, ...props }: ComposerProps): import("react").JSX.Element;
138
+ export declare function Composer({ value, onChange, onSend, onStop, busy, disabled, ready: readyProp, placeholder, label, rows, maxHeight, field, hint, status, children, head, pills, carried, plus, slash, at, commands, chips, mind, effort, limits, onUpgrade, mode, voice, language, onLanguage, talk, starters, note, column, framed, narrow: narrowProp, defaults, ...props }: ComposerProps): import("react").JSX.Element;
137
139
  export {};
138
140
  //# sourceMappingURL=Composer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../src/chat/Composer.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,EAAiC,MAAM,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAKhE,OAAO,EAAS,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAA+B,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAExF,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAG1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAIpD,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAGzD,OAAO,EAAe,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAEtE,gFAAgF;AAChF,KAAK,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC,CAAA;AACzE,KAAK,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC,CAAA;AAEjF;;;GAGG;AACH,eAAO,MAAM,GAAG,QAAyB,CAAA;AAEzC,0FAA0F;AAC1F,eAAO,MAAM,OAAO,kCAAkC,CAAA;AAEtD,gEAAgE;AAChE,eAAO,MAAM,GAAG,KAAK,CAAA;AAErB,uHAAuH;AACvH,eAAO,MAAM,OAAO;aAAK,KAAK,EAAE,qBAAqB;aAAE,IAAI;aAA+B,EAAE,EAAE,MAAM;CAAW,CAAA;AAE/G,yMAAyM;AACzM,eAAO,MAAM,KAAK,KAAK,CAAA;AAgBvB,0EAA0E;AAC1E,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,aAAc,SAAQ,KAAK;IAC1C,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,kEAAkE;IAClE,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,yDAAyD;IACzD,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gEAAgE;IAChE,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,kEAAkE;IAClE,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,qGAAqG;IACrG,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,kDAAkD;IAClD,OAAO,CAAC,EAAE,SAAS,OAAO,EAAE,CAAA;IAC5B,2CAA2C;IAC3C,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,oDAAoD;IACpD,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,qDAAqD;IACrD,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,kCAAkC;IAClC,QAAQ,CAAC,EAAE,SAAS,OAAO,EAAE,CAAA;IAC7B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,CAAA;IACvB,4HAA4H;IAC5H,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IAClB,sFAAsF;IACtF,MAAM,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;IACrB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC3B,iFAAiF;IACjF,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,8CAA8C;IAC9C,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACxC,iGAAiG;IACjG,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,sEAAsE;IACtE,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,wJAAwJ;IACxJ,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,sGAAsG;IACtG,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED,2EAA2E;AAC3E,wBAAgB,SAAS,CAAC,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,CAchE;AAwCD,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,MAAM,EACN,MAAM,EACN,IAAY,EACZ,QAAgB,EAChB,KAAK,EAAE,SAAS,EAChB,WAAW,EACX,KAAK,EACL,IAAQ,EACR,SAAmB,EACnB,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAI,EACJ,KAAK,EACL,EAAE,EACF,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,MAAM,EACN,MAAM,EACN,SAAS,EACT,IAAI,EACJ,KAAK,EACL,QAAe,EACf,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,MAAc,EACd,MAAc,EACd,MAAM,EAAE,UAAU,EAClB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,aAAa,+BAyNf"}
1
+ {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../src/chat/Composer.tsx"],"names":[],"mappings":"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"}
@@ -38,6 +38,7 @@ import { useEffect, useRef, useState } from 'react';
38
38
  import { Textarea } from '../backends/gui/index.js';
39
39
  import { slot } from '../backends/gui/slot.js';
40
40
  import { glass } from '../glass.js';
41
+ import { Pills } from '../product/ChipSelect.js';
41
42
  import { Dial } from './Dial.js';
42
43
  import { Dictation } from './Dictation.js';
43
44
  import { Mention, trigger } from './Mention.js';
@@ -45,6 +46,7 @@ import { Palette } from './Palette.js';
45
46
  import { Plus } from './Plus.js';
46
47
  import { ready, sends } from './send.js';
47
48
  import { RING } from './ring.js';
49
+ import { useComposerStatus } from './Status.js';
48
50
  import { Chips, Tune } from './Tune.js';
49
51
  /**
50
52
  * The resting placeholder. It addresses the person rather than the mechanism,
@@ -57,9 +59,11 @@ export const MEASURE = 'var(--container-prose, 48rem)';
57
59
  export const GAP = 20;
58
60
  /** The composer's width under a thread: the measure less its 0.75rem gutters, centred, so its edges are the text's. */
59
61
  export const measure = { width: 'calc(100% - 1.5rem)', maxW: `calc(${MEASURE} - 1.5rem)`, mx: 'auto' };
60
- /** The round controls' box, px, and a phone's, a thumb's width kept small so the frame is a slim glass bar: `+`, the effort, the mic, its chevron and send all take it, so they share one centreline. */
62
+ /** The round controls' box, px, and a phone's, a thumb's width kept small so the frame is a slim glass bar: `+`, the effort, the mic, its chevron and send all take it, so they share one centreline. The pills stand as tall. */
61
63
  export const ROUND = 32;
62
64
  const TAP = 36;
65
+ /** The space between two things in a row of the frame, px: one gap, so a row reads evenly set. */
66
+ const SPACE = 4;
63
67
  /** The frame's corner, px: 12 on a laptop; on a phone the inset plus a control's radius, so the send's circle and the frame's corner are concentric. */
64
68
  const CORNER = 12;
65
69
  const CORNER_PHONE = 24;
@@ -69,6 +73,19 @@ const CEILING = 200;
69
73
  const ON = 'var(--primary-foreground)';
70
74
  /** A round control with no ground of its own until it is pointed at. */
71
75
  const QUIET = { bg: 'transparent', color: 'var(--foreground)', hoverStyle: { bg: '$hover' } };
76
+ /** What the draft carries, as a chip: a filled tab after `+` on a laptop; on a phone a pill in a row of its own above the field, the pills' shape (round, a hairline, no fill) as tall as the controls, so the controls' row never wraps. */
77
+ const CARRIED = { height: 28, rounded: 8, bg: '$hover', paddingInlineStart: 8 };
78
+ const pill = (height) => ({ height, rounded: 999, borderWidth: 1, borderColor: '$borderColor', bg: 'transparent', paddingInlineStart: 12 });
79
+ /**
80
+ * Under a coarse pointer @hanzo/design floors every button at `--tap-target`,
81
+ * 44px, with !important. The composer's controls are its secondary chrome — the
82
+ * field, the column's width, is the target (see @hanzo/composer `Control`) — and
83
+ * each is sized on purpose, so inside the frame and the row under it the floor
84
+ * is WCAG 2.5.8's 24px. Without it a phone draws every control, pill and chip
85
+ * at 44: the slabs the 36px bar was set to replace.
86
+ */
87
+ // inline-style: a custom property, which no gui prop carries.
88
+ const FLOOR = { '--tap-target': '24px' };
72
89
  /** Ctrl+U (⌘U) uploads, while a composer with an upload is on the page. */
73
90
  export function useUpload(upload) {
74
91
  const now = useRef(upload);
@@ -123,8 +140,9 @@ function useLift() {
123
140
  }, []);
124
141
  return lift;
125
142
  }
126
- export function Composer({ value, onChange, onSend, onStop, busy = false, disabled = false, ready: readyProp, placeholder, label, rows = 1, maxHeight = CEILING, field, hint, children, head, pills, carried, plus, slash, at, commands, chips, mind, effort, limits, onUpgrade, mode, voice, language = null, onLanguage, talk, starters, note, column = false, framed = false, narrow: narrowProp, defaults, ...props }) {
143
+ export function Composer({ value, onChange, onSend, onStop, busy = false, disabled = false, ready: readyProp, placeholder, label, rows = 1, maxHeight = CEILING, field, hint, status, children, head, pills, carried, plus, slash, at, commands, chips, mind, effort, limits, onUpgrade, mode, voice, language = null, onLanguage, talk, starters, note, column = false, framed = false, narrow: narrowProp, defaults, ...props }) {
127
144
  const { t } = useI18n();
145
+ const inheritedStatus = useComposerStatus();
128
146
  const media = useMedia();
129
147
  const narrow = narrowProp ?? !media.sm;
130
148
  const hit = narrow ? TAP : ROUND;
@@ -202,9 +220,10 @@ export function Composer({ value, onChange, onSend, onStop, busy = false, disabl
202
220
  }, children: busy ? _jsx(Square, { size: 13, color: ON, fill: ON }) : _jsx(ArrowUp, { size: 16, strokeWidth: 2.5, color: ON }) }));
203
221
  const mention = listed && shelf && typed ? _jsx(Mention, { shelf: shelf, rows: listed, index: row, onPick: pick, skills: typed.char === '/' }) : null;
204
222
  const above = starters || head || note || mention ? (_jsxs(YStack, { ...slot('composer-head'), gap: "$1.5", children: [starters, head, mention, note ? (_jsx(SizableText, { ...slot('composer-note'), fontSize: 12, color: "$soft", text: "center", self: "center", children: note })) : null] })) : null;
223
+ const things = (carried ?? []).map((c) => (_jsxs(XStack, { ...slot('composer-carried'), items: "center", gap: 6, paddingInlineEnd: 4, maxW: 180, ...(narrow ? pill(hit) : CARRIED), children: [c.icon ? _jsx(XStack, { "aria-hidden": true, children: c.icon }) : null, _jsx(SizableText, { fontSize: 13, color: "$ink", numberOfLines: 1, shrink: 1, children: c.label }), _jsx(XStack, { render: "button", "aria-label": t('Remove {name}', { name: c.label }), onPress: c.onRemove, width: 20, height: 20, rounded: narrow ? 999 : 6, items: "center", justify: "center", hoverStyle: { bg: '$raised' }, cursor: "pointer", children: _jsx(X, { size: 12, color: "$hint" }) })] }, c.id)));
205
224
  const shown = showChips && chips?.length ? chips : null;
206
225
  const tuned = (showModel && mind) || (showMode && mode);
207
- const under = shown || tuned ? (_jsxs(XStack, { ...slot('composer-foot'), items: "center", gap: 6, flexWrap: "wrap", rowGap: 4, width: "100%", children: [shown ? _jsx(Chips, { chips: shown }) : null, tuned ? _jsx(Tune, { mind: showModel ? mind : null, mode: showMode ? mode : null, onUpgrade: onUpgrade, limits: limits }) : null] })) : null;
208
- return (_jsxs(YStack, { ...slot('composer-shell'), ...(column ? measure : { width: '100%' }), gap: 6, ...(lift ? { mb: lift } : null), ...props, children: [above, _jsxs(YStack, { ...slot('composer'), width: "100%", rounded: CORNER, borderWidth: 1, ...glass(2), p: 6, pt: pills ? 6 : 10, gap: 4, "$max-sm": { rounded: CORNER_PHONE }, ...(framed ? { boxShadow: 'var(--shadow-sheet-1)' } : null), children: [pills ? (_jsx(XStack, { ...slot('composer-pills'), items: "center", gap: 4, flexWrap: "wrap", rowGap: 4, px: 2, children: pills })) : null, input, _jsxs(XStack, { items: "center", gap: 4, children: [_jsxs(XStack, { ...slot('composer-start'), items: "center", gap: 4, flex: 1, minW: 0, flexWrap: "wrap", children: [plus ? _jsx(Plus, { ...plus, size: hit, disabled: disabled || plus.disabled }) : null, (carried ?? []).map((c) => (_jsxs(XStack, { ...slot('composer-carried'), items: "center", gap: 6, paddingInlineStart: 8, paddingInlineEnd: 4, height: 28, rounded: 8, bg: "$hover", maxW: 180, children: [c.icon ? _jsx(XStack, { "aria-hidden": true, children: c.icon }) : null, _jsx(SizableText, { fontSize: 13, color: "$ink", numberOfLines: 1, shrink: 1, children: c.label }), _jsx(XStack, { render: "button", "aria-label": t('Remove {name}', { name: c.label }), onPress: c.onRemove, width: 20, height: 20, rounded: 6, items: "center", justify: "center", hoverStyle: { bg: '$raised' }, cursor: "pointer", children: _jsx(X, { size: 12, color: "$hint" }) })] }, c.id))), children] }), _jsxs(XStack, { ...slot('composer-end'), items: "center", gap: 4, shrink: 0, children: [hint ? (_jsx(SizableText, { size: "$1", color: "$soft", numberOfLines: 1, children: hint })) : null, effort ? _jsx(Dial, { effort: effort, size: hit, disabled: disabled }) : null, commands?.length ? _jsx(Palette, { commands: commands, open: palette, onOpenChange: setPalette, size: hit, disabled: disabled }) : null, voice ? _jsx(Dictation, { voice: voice, disabled: disabled, size: hit, language: language, ...(onLanguage ? { onLanguage } : {}) }) : null, !busy && !lit && talk ? (_jsx(Control, { asChild: true, size: hit, fill: narrow, rounded: 999, ...(narrow ? null : QUIET), focusVisibleStyle: RING, children: _jsx(Voice, { voice: talk, disabled: disabled, "data-slot": "composer-talk", says: { idle: t('Voice mode'), listening: t('In conversation — click to hang up'), speaking: t('Hanzo is speaking — talk to interrupt') }, children: () => _jsx(AudioLines, { size: 16, color: narrow ? ON : 'var(--foreground)' }) }) })) : (round)] })] })] }), under] }));
226
+ const under = shown || tuned ? (_jsxs(XStack, { ...slot('composer-foot'), items: "center", gap: 6, flexWrap: "wrap", rowGap: 4, width: "100%", style: FLOOR, children: [shown ? _jsx(Chips, { chips: shown }) : null, tuned ? _jsx(Tune, { mind: showModel ? mind : null, mode: showMode ? mode : null, onUpgrade: onUpgrade, limits: limits }) : null] })) : null;
227
+ return (_jsxs(YStack, { ...slot('composer-shell'), ...(column ? measure : { width: '100%' }), gap: 6, ...(lift ? { mb: lift } : null), ...props, children: [above, _jsxs(YStack, { ...slot('composer'), width: "100%", rounded: CORNER, borderWidth: 1, ...glass(2), p: 6, pt: pills || (narrow && things.length) ? 6 : 10, gap: SPACE, "$max-sm": { rounded: CORNER_PHONE }, ...(framed ? { boxShadow: 'var(--shadow-sheet-1)' } : null), style: FLOOR, children: [pills ? (_jsx(XStack, { ...slot('composer-pills'), items: "center", gap: SPACE, flexWrap: "wrap", rowGap: SPACE, children: _jsx(Pills.Provider, { value: hit, children: pills }) })) : null, narrow && things.length ? (_jsx(XStack, { ...slot('composer-carry'), items: "center", gap: SPACE, flexWrap: "wrap", rowGap: SPACE, children: things })) : null, input, _jsxs(XStack, { items: "center", gap: SPACE, children: [_jsxs(XStack, { ...slot('composer-start'), items: "center", gap: SPACE, flex: 1, minW: 0, flexWrap: "wrap", children: [plus ? _jsx(Plus, { ...plus, size: hit, disabled: disabled || plus.disabled }) : null, narrow ? null : things, children] }), _jsxs(XStack, { ...slot('composer-end'), items: "center", gap: SPACE, shrink: 0, children: [hint ? (_jsx(SizableText, { size: "$1", color: "$soft", numberOfLines: 1, children: hint })) : null, status === undefined ? inheritedStatus : status, effort ? _jsx(Dial, { effort: effort, size: hit, narrow: narrow, disabled: disabled }) : null, commands?.length ? _jsx(Palette, { commands: commands, open: palette, onOpenChange: setPalette, size: hit, disabled: disabled }) : null, voice ? _jsx(Dictation, { voice: voice, disabled: disabled, size: hit, gap: narrow ? SPACE : 0, language: language, ...(onLanguage ? { onLanguage } : {}) }) : null, !busy && !lit && talk ? (_jsx(Control, { asChild: true, size: hit, fill: narrow, rounded: 999, ...(narrow ? null : QUIET), focusVisibleStyle: RING, children: _jsx(Voice, { voice: talk, disabled: disabled, "data-slot": "composer-talk", says: { idle: t('Voice mode'), listening: t('In conversation — click to hang up'), speaking: t('Hanzo is speaking — talk to interrupt') }, children: () => _jsx(AudioLines, { size: 16, color: narrow ? ON : 'var(--foreground)' }) }) })) : (round)] })] })] }), under] }));
209
228
  }
210
229
  //# sourceMappingURL=Composer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../src/chat/Composer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../src/chat/Composer.tsx"],"names":[],"mappings":"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"}
@@ -29,7 +29,12 @@ const STEP = 22;
29
29
  /** The pip: the level in a letter or two, so the icon says where it stands without a word. */
30
30
  const PIP = { auto: 'A', low: 'L', medium: 'M', high: 'H', xhigh: 'XH', max: 'MAX' };
31
31
  const pip = (id, label) => PIP[id] ?? label.slice(0, 1).toUpperCase();
32
- function Dial({ effort, size = 36, disabled = false }) {
32
+ /**
33
+ * `narrow`, a phone: the level stands BESIDE the gauge on the row's centreline
34
+ * rather than tucked under its corner, where at a phone's size it crowds the
35
+ * glyph. The button keeps the row's height and grows as wide as the level needs.
36
+ */
37
+ function Dial({ effort, size = 36, disabled = false, narrow = false }) {
33
38
  const { t, dir } = (0, react_1.useI18n)();
34
39
  const [open, setOpen] = (0, react_2.useState)(false);
35
40
  // The level under the finger while it is held, as a place in the list.
@@ -45,7 +50,7 @@ function Dial({ effort, size = 36, disabled = false }) {
45
50
  if (next && next.id !== effort.value)
46
51
  effort.set(next.id);
47
52
  };
48
- return ((0, jsx_runtime_1.jsxs)(gui_2.Popover, { open: open, onOpenChange: setOpen, allowFlip: true, placement: "top-end", children: [(0, jsx_runtime_1.jsx)(gui_2.PopoverAnchor, { asChild: true, children: (0, jsx_runtime_1.jsxs)(gui_1.XStack, { position: "relative", shrink: 0, "data-slot": "dial", children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { render: "button", "data-slot": "dial-button", "aria-label": t('Effort: {level}', { level: t(now.label) }), "aria-haspopup": "listbox", "aria-expanded": open, "aria-disabled": disabled || undefined, tabIndex: disabled ? -1 : 0, width: size, height: size, rounded: 999, items: "center", justify: "center", shrink: 0, position: "relative", cursor: disabled ? 'default' : 'ew-resize', opacity: disabled ? 0.5 : 1, bg: open || held !== null ? '$hover' : 'transparent', hoverStyle: disabled ? undefined : { bg: '$hover' }, focusVisibleStyle: ring_1.RING,
53
+ return ((0, jsx_runtime_1.jsxs)(gui_2.Popover, { open: open, onOpenChange: setOpen, allowFlip: true, placement: "top-end", children: [(0, jsx_runtime_1.jsx)(gui_2.PopoverAnchor, { asChild: true, children: (0, jsx_runtime_1.jsxs)(gui_1.XStack, { position: "relative", shrink: 0, "data-slot": "dial", children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { render: "button", "data-slot": "dial-button", "aria-label": t('Effort: {level}', { level: t(now.label) }), "aria-haspopup": "listbox", "aria-expanded": open, "aria-disabled": disabled || undefined, tabIndex: disabled ? -1 : 0, ...(narrow ? { minW: size, px: 8, gap: 3 } : { width: size }), height: size, rounded: 999, items: "center", justify: "center", shrink: 0, position: "relative", cursor: disabled ? 'default' : 'ew-resize', opacity: disabled ? 0.5 : 1, bg: open || held !== null ? '$hover' : 'transparent', hoverStyle: disabled ? undefined : { bg: '$hover' }, focusVisibleStyle: ring_1.RING,
49
54
  // inline-style: the page must not scroll or select under a drag along the icon.
50
55
  style: { touchAction: 'none', userSelect: 'none' }, onPointerDown: (e) => {
51
56
  if (disabled)
@@ -89,7 +94,7 @@ function Dial({ effort, size = 36, disabled = false }) {
89
94
  e.preventDefault?.();
90
95
  setOpen((o) => !o);
91
96
  }
92
- }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Gauge, { size: 18, color: "var(--foreground)", "aria-hidden": true }), (0, jsx_runtime_1.jsx)(gui_1.SizableText, { "data-slot": "dial-pip", "aria-hidden": true, position: "absolute", b: 3, insetInlineEnd: 2, fontSize: 9, lineHeight: 10, fontWeight: "700", color: "$ink", px: 2, rounded: 4, bg: "$background", children: pip(shown.id, t(shown.label)) })] }), held !== null ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { "data-slot": "dial-tip", role: "status", position: "absolute", b: size + 6, self: "center", px: 8, py: 3, rounded: 6, bg: "$ink", pointerEvents: "none", style: { whiteSpace: 'nowrap' }, children: (0, jsx_runtime_1.jsx)(gui_1.SizableText, { fontSize: 12, color: "$background", children: t(shown.label) }) })) : null] }) }), (0, jsx_runtime_1.jsx)(gui_2.PopoverContent, { solid: true, p: 6, width: 288, maxW: "calc(100vw - 24px)", children: (0, jsx_runtime_1.jsx)(Tune_1.Choices, { title: t('Effort'), items: effort.items, value: effort.value, onPick: (id) => {
97
+ }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Gauge, { size: 18, color: "var(--foreground)", "aria-hidden": true }), narrow ? ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { "data-slot": "dial-pip", "aria-hidden": true, fontSize: 12, lineHeight: 16, fontWeight: "600", color: "$quiet", children: pip(shown.id, t(shown.label)) })) : ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { "data-slot": "dial-pip", "aria-hidden": true, position: "absolute", b: 3, insetInlineEnd: 2, fontSize: 9, lineHeight: 10, fontWeight: "700", color: "$ink", px: 2, rounded: 4, bg: "$background", children: pip(shown.id, t(shown.label)) }))] }), held !== null ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { "data-slot": "dial-tip", role: "status", position: "absolute", b: size + 6, self: "center", px: 8, py: 3, rounded: 6, bg: "$ink", pointerEvents: "none", style: { whiteSpace: 'nowrap' }, children: (0, jsx_runtime_1.jsx)(gui_1.SizableText, { fontSize: 12, color: "$background", children: t(shown.label) }) })) : null] }) }), (0, jsx_runtime_1.jsx)(gui_2.PopoverContent, { solid: true, p: 6, width: 288, maxW: "calc(100vw - 24px)", children: (0, jsx_runtime_1.jsx)(Tune_1.Choices, { title: t('Effort'), items: effort.items, value: effort.value, onPick: (id) => {
93
98
  effort.set(id);
94
99
  setOpen(false);
95
100
  } }) })] }));
@@ -1,7 +1,13 @@
1
1
  import { type Modes } from './Tune.js';
2
- export declare function Dial({ effort, size, disabled }: {
2
+ /**
3
+ * `narrow`, a phone: the level stands BESIDE the gauge on the row's centreline
4
+ * rather than tucked under its corner, where at a phone's size it crowds the
5
+ * glyph. The button keeps the row's height and grows as wide as the level needs.
6
+ */
7
+ export declare function Dial({ effort, size, disabled, narrow }: {
3
8
  effort: Modes;
4
9
  size?: number;
5
10
  disabled?: boolean;
11
+ narrow?: boolean;
6
12
  }): import("react").JSX.Element;
7
13
  //# sourceMappingURL=Dial.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dial.d.ts","sourceRoot":"","sources":["../../src/chat/Dial.tsx"],"names":[],"mappings":"AAuBA,OAAO,EAAW,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAU5C,wBAAgB,IAAI,CAAC,EAAE,MAAM,EAAE,IAAS,EAAE,QAAgB,EAAE,EAAE;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,+BAsIjH"}
1
+ {"version":3,"file":"Dial.d.ts","sourceRoot":"","sources":["../../src/chat/Dial.tsx"],"names":[],"mappings":"AAuBA,OAAO,EAAW,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAU5C;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,EAAE,MAAM,EAAE,IAAS,EAAE,QAAgB,EAAE,MAAc,EAAE,EAAE;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,+BA4InJ"}
package/dist/chat/Dial.js CHANGED
@@ -26,7 +26,12 @@ const STEP = 22;
26
26
  /** The pip: the level in a letter or two, so the icon says where it stands without a word. */
27
27
  const PIP = { auto: 'A', low: 'L', medium: 'M', high: 'H', xhigh: 'XH', max: 'MAX' };
28
28
  const pip = (id, label) => PIP[id] ?? label.slice(0, 1).toUpperCase();
29
- export function Dial({ effort, size = 36, disabled = false }) {
29
+ /**
30
+ * `narrow`, a phone: the level stands BESIDE the gauge on the row's centreline
31
+ * rather than tucked under its corner, where at a phone's size it crowds the
32
+ * glyph. The button keeps the row's height and grows as wide as the level needs.
33
+ */
34
+ export function Dial({ effort, size = 36, disabled = false, narrow = false }) {
30
35
  const { t, dir } = useI18n();
31
36
  const [open, setOpen] = useState(false);
32
37
  // The level under the finger while it is held, as a place in the list.
@@ -42,7 +47,7 @@ export function Dial({ effort, size = 36, disabled = false }) {
42
47
  if (next && next.id !== effort.value)
43
48
  effort.set(next.id);
44
49
  };
45
- return (_jsxs(Popover, { open: open, onOpenChange: setOpen, allowFlip: true, placement: "top-end", children: [_jsx(PopoverAnchor, { asChild: true, children: _jsxs(XStack, { position: "relative", shrink: 0, "data-slot": "dial", children: [_jsxs(XStack, { render: "button", "data-slot": "dial-button", "aria-label": t('Effort: {level}', { level: t(now.label) }), "aria-haspopup": "listbox", "aria-expanded": open, "aria-disabled": disabled || undefined, tabIndex: disabled ? -1 : 0, width: size, height: size, rounded: 999, items: "center", justify: "center", shrink: 0, position: "relative", cursor: disabled ? 'default' : 'ew-resize', opacity: disabled ? 0.5 : 1, bg: open || held !== null ? '$hover' : 'transparent', hoverStyle: disabled ? undefined : { bg: '$hover' }, focusVisibleStyle: RING,
50
+ return (_jsxs(Popover, { open: open, onOpenChange: setOpen, allowFlip: true, placement: "top-end", children: [_jsx(PopoverAnchor, { asChild: true, children: _jsxs(XStack, { position: "relative", shrink: 0, "data-slot": "dial", children: [_jsxs(XStack, { render: "button", "data-slot": "dial-button", "aria-label": t('Effort: {level}', { level: t(now.label) }), "aria-haspopup": "listbox", "aria-expanded": open, "aria-disabled": disabled || undefined, tabIndex: disabled ? -1 : 0, ...(narrow ? { minW: size, px: 8, gap: 3 } : { width: size }), height: size, rounded: 999, items: "center", justify: "center", shrink: 0, position: "relative", cursor: disabled ? 'default' : 'ew-resize', opacity: disabled ? 0.5 : 1, bg: open || held !== null ? '$hover' : 'transparent', hoverStyle: disabled ? undefined : { bg: '$hover' }, focusVisibleStyle: RING,
46
51
  // inline-style: the page must not scroll or select under a drag along the icon.
47
52
  style: { touchAction: 'none', userSelect: 'none' }, onPointerDown: (e) => {
48
53
  if (disabled)
@@ -86,7 +91,7 @@ export function Dial({ effort, size = 36, disabled = false }) {
86
91
  e.preventDefault?.();
87
92
  setOpen((o) => !o);
88
93
  }
89
- }, children: [_jsx(Gauge, { size: 18, color: "var(--foreground)", "aria-hidden": true }), _jsx(SizableText, { "data-slot": "dial-pip", "aria-hidden": true, position: "absolute", b: 3, insetInlineEnd: 2, fontSize: 9, lineHeight: 10, fontWeight: "700", color: "$ink", px: 2, rounded: 4, bg: "$background", children: pip(shown.id, t(shown.label)) })] }), held !== null ? (_jsx(XStack, { "data-slot": "dial-tip", role: "status", position: "absolute", b: size + 6, self: "center", px: 8, py: 3, rounded: 6, bg: "$ink", pointerEvents: "none", style: { whiteSpace: 'nowrap' }, children: _jsx(SizableText, { fontSize: 12, color: "$background", children: t(shown.label) }) })) : null] }) }), _jsx(PopoverContent, { solid: true, p: 6, width: 288, maxW: "calc(100vw - 24px)", children: _jsx(Choices, { title: t('Effort'), items: effort.items, value: effort.value, onPick: (id) => {
94
+ }, children: [_jsx(Gauge, { size: 18, color: "var(--foreground)", "aria-hidden": true }), narrow ? (_jsx(SizableText, { "data-slot": "dial-pip", "aria-hidden": true, fontSize: 12, lineHeight: 16, fontWeight: "600", color: "$quiet", children: pip(shown.id, t(shown.label)) })) : (_jsx(SizableText, { "data-slot": "dial-pip", "aria-hidden": true, position: "absolute", b: 3, insetInlineEnd: 2, fontSize: 9, lineHeight: 10, fontWeight: "700", color: "$ink", px: 2, rounded: 4, bg: "$background", children: pip(shown.id, t(shown.label)) }))] }), held !== null ? (_jsx(XStack, { "data-slot": "dial-tip", role: "status", position: "absolute", b: size + 6, self: "center", px: 8, py: 3, rounded: 6, bg: "$ink", pointerEvents: "none", style: { whiteSpace: 'nowrap' }, children: _jsx(SizableText, { fontSize: 12, color: "$background", children: t(shown.label) }) })) : null] }) }), _jsx(PopoverContent, { solid: true, p: 6, width: 288, maxW: "calc(100vw - 24px)", children: _jsx(Choices, { title: t('Effort'), items: effort.items, value: effort.value, onPick: (id) => {
90
95
  effort.set(id);
91
96
  setOpen(false);
92
97
  } }) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"Dial.js","sourceRoot":"","sources":["../../src/chat/Dial.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dial.js","sourceRoot":"","sources":["../../src/chat/Dial.tsx"],"names":[],"mappings":"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"}
@@ -123,7 +123,7 @@ function Meter({ device, on }) {
123
123
  scaleX: 0, transformOrigin: dir === 'rtl' ? 'right' : 'left' }) })] }));
124
124
  }
125
125
  /** The mic and its chevron, one control on the composer's row. */
126
- function Dictation({ voice, disabled = false, size = 36, language = null, onLanguage }) {
126
+ function Dictation({ voice, disabled = false, size = 36, gap = 0, language = null, onLanguage }) {
127
127
  const { t } = (0, react_1.useI18n)();
128
128
  const [open, setOpen] = (0, react_2.useState)(false);
129
129
  // The Language list, drawn only while open (see Plus.tsx).
@@ -132,7 +132,7 @@ function Dictation({ voice, disabled = false, size = 36, language = null, onLang
132
132
  const [device, setDevice] = (0, react_2.useState)(() => (typeof window === 'undefined' ? null : kept()));
133
133
  const spoken = languages_1.LANGUAGES.find((l) => l.id === language);
134
134
  // Two controls on one row, each its own box and its own focus ring: no frame around the pair.
135
- return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { "data-slot": "dictation", items: "center", shrink: 0, children: [(0, jsx_runtime_1.jsx)(composer_1.Control, { asChild: true, size: size, ...PLAIN, focusVisibleStyle: ring_1.RING, children: (0, jsx_runtime_1.jsx)(voice_1.Voice, { voice: voice, disabled: disabled, says: { idle: t('Dictate'), listening: t('Dictating — click to stop') }, children: (state) => (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Mic, { size: 16, color: "var(--foreground)", fill: state === 'idle' ? 'none' : 'var(--foreground)' }) }) }), (0, jsx_runtime_1.jsxs)(gui_2.DropdownMenu, { open: open, onOpenChange: setOpen, children: [(0, jsx_runtime_1.jsx)(gui_2.DropdownMenuTrigger, { asChild: true, disabled: disabled, children: (0, jsx_runtime_1.jsx)(gui_1.XStack, { render: "button", "aria-label": t('Dictation settings'), "data-slot": "dictation-menu", width: size, height: size, items: "center", justify: "center", rounded: 999, cursor: "pointer", bg: open ? '$hover' : 'transparent', hoverStyle: { bg: '$hover' }, focusVisibleStyle: ring_1.RING, children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.ChevronDown, { size: 14, color: "$soft" }) }) }), (0, jsx_runtime_1.jsxs)(gui_2.DropdownMenuContent, { align: "end", minW: 200, "data-slot": "dictation-panel", children: [(0, jsx_runtime_1.jsx)(Meter, { device: device, on: open && allowed }), inputs.length === 0 ? ((0, jsx_runtime_1.jsx)(gui_2.DropdownMenuLabel, { children: (0, jsx_runtime_1.jsx)(gui_1.SizableText, { fontSize: 14, color: "$hint", children: t('No devices found') }) })) : (inputs.map((d, i) => {
135
+ return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { "data-slot": "dictation", items: "center", gap: gap, shrink: 0, children: [(0, jsx_runtime_1.jsx)(composer_1.Control, { asChild: true, size: size, ...PLAIN, focusVisibleStyle: ring_1.RING, children: (0, jsx_runtime_1.jsx)(voice_1.Voice, { voice: voice, disabled: disabled, says: { idle: t('Dictate'), listening: t('Dictating — click to stop') }, children: (state) => (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Mic, { size: 16, color: "var(--foreground)", fill: state === 'idle' ? 'none' : 'var(--foreground)' }) }) }), (0, jsx_runtime_1.jsxs)(gui_2.DropdownMenu, { open: open, onOpenChange: setOpen, children: [(0, jsx_runtime_1.jsx)(gui_2.DropdownMenuTrigger, { asChild: true, disabled: disabled, children: (0, jsx_runtime_1.jsx)(gui_1.XStack, { render: "button", "aria-label": t('Dictation settings'), "data-slot": "dictation-menu", width: size, height: size, items: "center", justify: "center", rounded: 999, cursor: "pointer", bg: open ? '$hover' : 'transparent', hoverStyle: { bg: '$hover' }, focusVisibleStyle: ring_1.RING, children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.ChevronDown, { size: 14, color: "$soft" }) }) }), (0, jsx_runtime_1.jsxs)(gui_2.DropdownMenuContent, { align: "end", minW: 200, "data-slot": "dictation-panel", children: [(0, jsx_runtime_1.jsx)(Meter, { device: device, on: open && allowed }), inputs.length === 0 ? ((0, jsx_runtime_1.jsx)(gui_2.DropdownMenuLabel, { children: (0, jsx_runtime_1.jsx)(gui_1.SizableText, { fontSize: 14, color: "$hint", children: t('No devices found') }) })) : (inputs.map((d, i) => {
136
136
  const on = device ? d.deviceId === device : d.groupId === using;
137
137
  return ((0, jsx_runtime_1.jsx)(gui_2.DropdownMenuItem, { preventCloseOnSelect: true, onSelect: () => {
138
138
  setDevice(d.deviceId);
@@ -2,12 +2,14 @@ import { type Machine } from '@hanzo/voice';
2
2
  export interface DictationProps {
3
3
  voice: Machine;
4
4
  disabled?: boolean;
5
- /** The box of each half, px: the composer's control size (36 on a laptop, 44 on a phone). */
5
+ /** The box of each half, px: the composer's control size (32 on a laptop, 36 on a phone). */
6
6
  size?: number;
7
+ /** The space between the mic and its chevron, px: the row's own gap where every control in it is evenly set (a phone). */
8
+ gap?: number;
7
9
  /** The language dictation listens in, or null for Auto (the browser's own). */
8
10
  language?: string | null;
9
11
  onLanguage?: (id: string | null) => void;
10
12
  }
11
13
  /** The mic and its chevron, one control on the composer's row. */
12
- export declare function Dictation({ voice, disabled, size, language, onLanguage }: DictationProps): import("react").JSX.Element;
14
+ export declare function Dictation({ voice, disabled, size, gap, language, onLanguage }: DictationProps): import("react").JSX.Element;
13
15
  //# sourceMappingURL=Dictation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dictation.d.ts","sourceRoot":"","sources":["../../src/chat/Dictation.tsx"],"names":[],"mappings":"AA+BA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AA+G1D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6FAA6F;IAC7F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;CACzC;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,QAAgB,EAAE,IAAS,EAAE,QAAe,EAAE,UAAU,EAAE,EAAE,cAAc,+BAyG5G"}
1
+ {"version":3,"file":"Dictation.d.ts","sourceRoot":"","sources":["../../src/chat/Dictation.tsx"],"names":[],"mappings":"AA+BA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AA+G1D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6FAA6F;IAC7F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,0HAA0H;IAC1H,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;CACzC;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,QAAgB,EAAE,IAAS,EAAE,GAAO,EAAE,QAAe,EAAE,UAAU,EAAE,EAAE,cAAc,+BAyGrH"}
@@ -120,7 +120,7 @@ function Meter({ device, on }) {
120
120
  scaleX: 0, transformOrigin: dir === 'rtl' ? 'right' : 'left' }) })] }));
121
121
  }
122
122
  /** The mic and its chevron, one control on the composer's row. */
123
- export function Dictation({ voice, disabled = false, size = 36, language = null, onLanguage }) {
123
+ export function Dictation({ voice, disabled = false, size = 36, gap = 0, language = null, onLanguage }) {
124
124
  const { t } = useI18n();
125
125
  const [open, setOpen] = useState(false);
126
126
  // The Language list, drawn only while open (see Plus.tsx).
@@ -129,7 +129,7 @@ export function Dictation({ voice, disabled = false, size = 36, language = null,
129
129
  const [device, setDevice] = useState(() => (typeof window === 'undefined' ? null : kept()));
130
130
  const spoken = LANGUAGES.find((l) => l.id === language);
131
131
  // Two controls on one row, each its own box and its own focus ring: no frame around the pair.
132
- return (_jsxs(XStack, { "data-slot": "dictation", items: "center", shrink: 0, children: [_jsx(Control, { asChild: true, size: size, ...PLAIN, focusVisibleStyle: RING, children: _jsx(Voice, { voice: voice, disabled: disabled, says: { idle: t('Dictate'), listening: t('Dictating — click to stop') }, children: (state) => _jsx(MicIcon, { size: 16, color: "var(--foreground)", fill: state === 'idle' ? 'none' : 'var(--foreground)' }) }) }), _jsxs(DropdownMenu, { open: open, onOpenChange: setOpen, children: [_jsx(DropdownMenuTrigger, { asChild: true, disabled: disabled, children: _jsx(XStack, { render: "button", "aria-label": t('Dictation settings'), "data-slot": "dictation-menu", width: size, height: size, items: "center", justify: "center", rounded: 999, cursor: "pointer", bg: open ? '$hover' : 'transparent', hoverStyle: { bg: '$hover' }, focusVisibleStyle: RING, children: _jsx(ChevronDown, { size: 14, color: "$soft" }) }) }), _jsxs(DropdownMenuContent, { align: "end", minW: 200, "data-slot": "dictation-panel", children: [_jsx(Meter, { device: device, on: open && allowed }), inputs.length === 0 ? (_jsx(DropdownMenuLabel, { children: _jsx(SizableText, { fontSize: 14, color: "$hint", children: t('No devices found') }) })) : (inputs.map((d, i) => {
132
+ return (_jsxs(XStack, { "data-slot": "dictation", items: "center", gap: gap, shrink: 0, children: [_jsx(Control, { asChild: true, size: size, ...PLAIN, focusVisibleStyle: RING, children: _jsx(Voice, { voice: voice, disabled: disabled, says: { idle: t('Dictate'), listening: t('Dictating — click to stop') }, children: (state) => _jsx(MicIcon, { size: 16, color: "var(--foreground)", fill: state === 'idle' ? 'none' : 'var(--foreground)' }) }) }), _jsxs(DropdownMenu, { open: open, onOpenChange: setOpen, children: [_jsx(DropdownMenuTrigger, { asChild: true, disabled: disabled, children: _jsx(XStack, { render: "button", "aria-label": t('Dictation settings'), "data-slot": "dictation-menu", width: size, height: size, items: "center", justify: "center", rounded: 999, cursor: "pointer", bg: open ? '$hover' : 'transparent', hoverStyle: { bg: '$hover' }, focusVisibleStyle: RING, children: _jsx(ChevronDown, { size: 14, color: "$soft" }) }) }), _jsxs(DropdownMenuContent, { align: "end", minW: 200, "data-slot": "dictation-panel", children: [_jsx(Meter, { device: device, on: open && allowed }), inputs.length === 0 ? (_jsx(DropdownMenuLabel, { children: _jsx(SizableText, { fontSize: 14, color: "$hint", children: t('No devices found') }) })) : (inputs.map((d, i) => {
133
133
  const on = device ? d.deviceId === device : d.groupId === using;
134
134
  return (_jsx(DropdownMenuItem, { preventCloseOnSelect: true, onSelect: () => {
135
135
  setDevice(d.deviceId);
@@ -1 +1 @@
1
- {"version":3,"file":"Dictation.js","sourceRoot":"","sources":["../../src/chat/Dictation.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dictation.js","sourceRoot":"","sources":["../../src/chat/Dictation.tsx"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ export interface PlusProps {
41
41
  research?: Switch;
42
42
  memory?: Switch;
43
43
  disabled?: boolean;
44
- /** The button's box, px: the composer's control size (36 on a laptop, 44 on a phone). */
44
+ /** The button's box, px: the composer's control size (32 on a laptop, 36 on a phone). */
45
45
  size?: number;
46
46
  }
47
47
  /** The `+` and its menu. */
@@ -0,0 +1,10 @@
1
+ 'use client';"use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useComposerStatus = exports.ComposerStatusProvider = void 0;
5
+ const react_1 = require("react");
6
+ /** A connected host lends its account usage control to every composer. */
7
+ const Status = /* @__PURE__ */ (0, react_1.createContext)(null);
8
+ exports.ComposerStatusProvider = Status.Provider;
9
+ const useComposerStatus = () => (0, react_1.useContext)(Status);
10
+ exports.useComposerStatus = useComposerStatus;
@@ -0,0 +1,4 @@
1
+ import { type ReactNode } from 'react';
2
+ export declare const ComposerStatusProvider: import("react").Provider<ReactNode>;
3
+ export declare const useComposerStatus: () => ReactNode;
4
+ //# sourceMappingURL=Status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Status.d.ts","sourceRoot":"","sources":["../../src/chat/Status.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAIjE,eAAO,MAAM,sBAAsB,qCAAkB,CAAA;AACrD,eAAO,MAAM,iBAAiB,iBAA2B,CAAA"}