@chai-ui/react 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/DESIGN.md CHANGED
@@ -36,7 +36,8 @@ use these names: `Results`, `Compare`, `ModelPicker`,
36
36
  your app.
37
37
  3. **Advanced selection is the builder's opt-in.** `multiSelectModels`
38
38
  and `multiSelectUseCases` are off by default. Turn them on only where
39
- comparing models or making several media types at once is the point.
39
+ comparing models, or making an image and a video from one prompt, is the
40
+ point. With both use cases, show each run in its own `ResultCard`.
40
41
  4. **A callback's presence is the opt-in.** Omit `onEnhance` and there's
41
42
  no optimize button. Omit `onAbort` and there's no stop button. Omit
42
43
  `moreActions` and there's no ⋯ menu. Don't pass no-op handlers just to
@@ -170,7 +171,8 @@ Rules:
170
171
  | Try again | `ResultCard`'s retry fires `onAction("retry", result)` | Re-run the **same** model call, not a different one |
171
172
  | Feedback | Like/dislike fire `onAction`, and the displayed vote comes from `getVote` | Store votes yourself |
172
173
  | Details | The flip side shows prompt, model, tokens, cost and duration | Supply `models` so ids resolve to labels |
173
- | Quality checks | Each result's `evaluations` render on the flip side: green with a check if it passed, red with a cross if it failed | Run your checks in your backend proxy and add a top-level `evaluations: [{ id, label, passed }]` field to the JSON it returns (for a stream, send it as its own `data:` chunk). The built-in Fal and OpenRouter engines read that field, a custom engine returns it from `generate`, and `useComposer` puts it on the matching `Result`. CHAI never runs or scores anything itself, and there are no confidence scores. |
174
+ | Quality checks | Each result's `evaluations` render on the flip side: green with a check if it passed, red with a cross if it failed | Run your checks in your backend proxy and add a top-level `evaluations: [{ id, label, passed }]` field to the JSON it returns (for a stream, send it as its own `data:` chunk). The built-in Fal and OpenRouter engines read that field, a custom engine returns it from `generate`, and `useComposer` puts it on the matching `Result`. Or turn on the opt-in judge: `useComposer({ judgeModel, judgeChecks })` has a model you name check each text or image result against your criteria, one tag per check, after your backend's. It's off by default, with no default model, and there are no confidence scores. |
175
+ | Analytics | Nothing visible: `Composer` and `ResultCard` report interactions through `onEvent` (`@event` in Vue), one `ChaiEvent` each | Pass one function to each component, e.g. `(e) => posthog.capture(e.name, e.properties)`. Events are front end only (what the person did and saw), with no prompt text, file names, URLs or outputs. Track model calls, latency and cost on your server. |
174
176
 
175
177
  `ResultCard` is where a run ends. Don't add a "use as input" action that
176
178
  feeds a result back into a `Composer`. Chaining steps like that is
package/README.md CHANGED
@@ -206,6 +206,58 @@ with black bars:
206
206
  const { submit } = useComposer({ engine, startImageFit: "pad" }); // default "crop"
207
207
  ```
208
208
 
209
+ ### Quality checks: `evaluations`
210
+
211
+ Each result can carry pass or fail tags, shown on the ResultCard's flip
212
+ side. They come from two places, and you can use either or both:
213
+
214
+ - **Your backend:** add a top-level `evaluations: [{ id, label, passed }]`
215
+ field to the JSON your route returns (for a stream, send it as its own
216
+ `data:` chunk). The Fal and OpenRouter engines read it.
217
+ - **The opt-in judge:** a model you name checks each text or image result
218
+ against your criteria, one tag per check. It runs on the reasoning engine
219
+ (`ChaiProvider`). It's off by default, with no default model. Without
220
+ `judgeChecks` it runs one general "Matches prompt" check. What else counts
221
+ as good is up to your app.
222
+
223
+ ```tsx
224
+ const { submit } = useComposer({
225
+ engine,
226
+ judgeModel: "google/gemini-3.5-flash",
227
+ judgeChecks: [
228
+ // Your criteria, in your words. This one is an example for a marketing app's images.
229
+ { id: "on-brand", label: "On brand", criterion: "Photographic and polished, never cartoonish.", kind: "image" },
230
+ ...DEFAULT_EVALUATION_CHECKS,
231
+ ],
232
+ });
233
+ ```
234
+
235
+ The judge's prompt is `buildJudgePrompt` (exported, so you can read it).
236
+ Pass `judgePrompt` to replace it, calling `buildJudgePrompt` to add to it
237
+ rather than rewrite it.
238
+
239
+ ### Analytics: `onEvent`
240
+
241
+ `Composer` and `ResultCard` report what the person does and sees, one
242
+ `ChaiEvent` each, for whatever analytics tool you use. Write one function
243
+ and pass it to each component:
244
+
245
+ ```tsx
246
+ import posthog from "posthog-js";
247
+ import type { ChaiEvent } from "@chai-ui/react";
248
+
249
+ const track = (e: ChaiEvent) => posthog.capture(e.name, e.properties);
250
+
251
+ <Composer onEvent={track} … />
252
+ <ResultCard onEvent={track} … />
253
+ ```
254
+
255
+ Events cover submits, Stop, use case, model and option picks, attachments,
256
+ Enhance, voice input, results shown (once each), result actions, paging and
257
+ the details side. They're front end only: no prompt text, file names, URLs
258
+ or outputs, only lengths, counts and Chai's own ids. Track model calls,
259
+ latency and cost on your server, where they're accurate.
260
+
209
261
  ### Where the bar sits: `menuPlacement`
210
262
 
211
263
  Every menu in the bar (the `+` menu, Model, Aspect ratio, Voice, Genre,
@@ -1,8 +1,8 @@
1
1
  import * as React from "react";
2
- import { type ComposerAttachMenuAction, type ComposerPromptField, type MenuPlacement, type VoiceInputConfig } from "@chai-ui/core";
2
+ import { type ChaiEvent, type ComposerAttachMenuAction, type ComposerPromptField, type MenuPlacement, type VoiceInputConfig } from "@chai-ui/core";
3
3
  import type { EditRegion, GenerationUseCase, ModelOption, ParameterOption, OutputKind } from "@chai-ui/core";
4
4
  import type { ComposerAttachment, ComposerSubmitPayload, ComposerUseCase } from "@chai-ui/core";
5
- export { CREATE_MUSIC_USE_CASE, CREATE_SPEECH_USE_CASE, EDIT_IMAGE_USE_CASE, TEXT_USE_CASE, type AudioUseCase, type ComposerAttachMenuAction, type ComposerAttachment, type ComposerPromptField, type ComposerSelection, type ComposerSubmitPayload, type ComposerUseCase, } from "@chai-ui/core";
5
+ export { CREATE_MUSIC_USE_CASE, CREATE_SPEECH_USE_CASE, EDIT_IMAGE_USE_CASE, TEXT_USE_CASE, type AudioUseCase, type ChaiEvent, type ComposerAttachMenuAction, type ComposerAttachment, type ComposerPromptField, type ComposerSelection, type ComposerSubmitPayload, type ComposerUseCase, } from "@chai-ui/core";
6
6
  export interface ComposerProps {
7
7
  /** The prompt text. Controlled — Composer owns no text state of its own. */
8
8
  value: string;
@@ -154,6 +154,13 @@ export interface ComposerProps {
154
154
  /** Fires when the stop icon is clicked while `submitting` is true. See `submitting`'s own doc comment for why this — not `submitting` alone — is what actually shows the stop icon. */
155
155
  onAbort?: () => void;
156
156
  onAttachMenuSelect?: (action: ComposerAttachMenuAction) => void;
157
+ /**
158
+ * Front-end analytics: what the person does in the bar (submit, stop,
159
+ * picks, attachments, Enhance, voice), one `ChaiEvent` each, for any
160
+ * analytics tool: `onEvent={(e) => posthog.capture(e.name, e.properties)}`.
161
+ * No prompt text or file contents are sent, only lengths and counts.
162
+ */
163
+ onEvent?: (event: ChaiEvent) => void;
157
164
  /**
158
165
  * Which `+` menu items to show. Defaults to all of them. Either way, an
159
166
  * item only shows when it can work: "Add media" needs
@@ -190,5 +197,5 @@ export interface ComposerProps {
190
197
  * `control-*` semantic tokens, restylable per instance through the
191
198
  * `--chai-composer-*` custom properties in style.css.
192
199
  */
193
- export declare function Composer({ value, onChange, placeholder, promptLabel, attachments, onAttachmentsChange, onUnsupportedFile, useCase, onClearUseCase, defaultUseCase, multiSelectUseCases, useCases, onUseCasesChange, modelsByKind, multiSelectModels, modelIds, onModelIdsChange, models, modelId, onModelChange, autoSelectModel, showAutoSelectToggle, onAutoSelectModelChange, aspectRatios, aspectRatio, onAspectRatioChange, onEnhance, enhancing, character, onCharacterChange, frameRate, onFrameRateChange, speechVoice, onSpeechVoiceChange, genres, onGenresChange, menuPlacement, onSubmit, submitError, submitDisabled, submitting, onAbort, onAttachMenuSelect, attachMenuActions, regions, onRegionsChange, voiceInput, disabled, className, style, }: ComposerProps): React.JSX.Element;
200
+ export declare function Composer({ value, onChange, placeholder, promptLabel, attachments, onAttachmentsChange, onUnsupportedFile, useCase, onClearUseCase, defaultUseCase, multiSelectUseCases, useCases, onUseCasesChange, modelsByKind, multiSelectModels, modelIds, onModelIdsChange, models, modelId, onModelChange, autoSelectModel, showAutoSelectToggle, onAutoSelectModelChange, aspectRatios, aspectRatio, onAspectRatioChange, onEnhance, enhancing, character, onCharacterChange, frameRate, onFrameRateChange, speechVoice, onSpeechVoiceChange, genres, onGenresChange, menuPlacement, onSubmit, submitError, submitDisabled, submitting, onAbort, onAttachMenuSelect, onEvent, attachMenuActions, regions, onRegionsChange, voiceInput, disabled, className, style, }: ComposerProps): React.JSX.Element;
194
201
  //# sourceMappingURL=Composer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../src/Composer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../src/Composer.tsx"],"names":[],"mappings":"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"}
package/dist/Composer.js CHANGED
@@ -4,7 +4,7 @@ import { useEffect, useId, useLayoutEffect, useRef, useState, useSyncExternalSto
4
4
  import { createComponent } from "@lit/react";
5
5
  import * as React from "react";
6
6
  import { MdFab } from "@material/web/fab/fab.js";
7
- import { composerAttachmentsFromFiles, composerAttachMenuItems, composerView, createVoiceInput, enhanceRevealDurationMs, formatVoiceElapsed, VOICE_LEVEL_COUNT, MAX_ANIMATE_ENHANCE_LENGTH, regionColor, TEXT_USE_CASE, menuOpensAbove, } from "@chai-ui/core";
7
+ import { composerAttachmentsFromFiles, composerEvents, composerAttachMenuItems, composerView, createVoiceInput, enhanceRevealDurationMs, formatVoiceElapsed, VOICE_LEVEL_COUNT, MAX_ANIMATE_ENHANCE_LENGTH, regionColor, TEXT_USE_CASE, menuOpensAbove, } from "@chai-ui/core";
8
8
  import { useLatest } from "./use-latest.js";
9
9
  import { SearchMenu } from "./primitives/SearchMenu.js";
10
10
  export { CREATE_MUSIC_USE_CASE, CREATE_SPEECH_USE_CASE, EDIT_IMAGE_USE_CASE, TEXT_USE_CASE, } from "@chai-ui/core";
@@ -25,7 +25,7 @@ const MdFabElement = createComponent({
25
25
  * `control-*` semantic tokens, restylable per instance through the
26
26
  * `--chai-composer-*` custom properties in style.css.
27
27
  */
28
- export function Composer({ value, onChange, placeholder, promptLabel, attachments = [], onAttachmentsChange, onUnsupportedFile, useCase = null, onClearUseCase, defaultUseCase = TEXT_USE_CASE, multiSelectUseCases = false, useCases = [], onUseCasesChange, modelsByKind, multiSelectModels = false, modelIds = [], onModelIdsChange, models, modelId = null, onModelChange, autoSelectModel = false, showAutoSelectToggle = false, onAutoSelectModelChange, aspectRatios, aspectRatio = null, onAspectRatioChange, onEnhance, enhancing = false, character = "", onCharacterChange, frameRate = null, onFrameRateChange, speechVoice = null, onSpeechVoiceChange, genres = [], onGenresChange, menuPlacement = "auto", onSubmit, submitError = null, submitDisabled, submitting = false, onAbort, onAttachMenuSelect, attachMenuActions, regions = [], onRegionsChange, voiceInput, disabled = false, className, style, }) {
28
+ export function Composer({ value, onChange, placeholder, promptLabel, attachments = [], onAttachmentsChange, onUnsupportedFile, useCase = null, onClearUseCase, defaultUseCase = TEXT_USE_CASE, multiSelectUseCases = false, useCases = [], onUseCasesChange, modelsByKind, multiSelectModels = false, modelIds = [], onModelIdsChange, models, modelId = null, onModelChange, autoSelectModel = false, showAutoSelectToggle = false, onAutoSelectModelChange, aspectRatios, aspectRatio = null, onAspectRatioChange, onEnhance, enhancing = false, character = "", onCharacterChange, frameRate = null, onFrameRateChange, speechVoice = null, onSpeechVoiceChange, genres = [], onGenresChange, menuPlacement = "auto", onSubmit, submitError = null, submitDisabled, submitting = false, onAbort, onAttachMenuSelect, onEvent, attachMenuActions, regions = [], onRegionsChange, voiceInput, disabled = false, className, style, }) {
29
29
  const view = composerView({
30
30
  value,
31
31
  placeholder,
@@ -57,6 +57,7 @@ export function Composer({ value, onChange, placeholder, promptLabel, attachment
57
57
  });
58
58
  const { editing, isSubmitDisabled, showStop, multiModel, aspectOptions, offeredAspect } = view;
59
59
  function pickModel(menu, id) {
60
+ onEvent?.(composerEvents.modelPicked(menu.key, id));
60
61
  if (!multiModel)
61
62
  return onModelChange?.(id);
62
63
  onModelIdsChange?.(menu.next(id));
@@ -91,6 +92,7 @@ export function Composer({ value, onChange, placeholder, promptLabel, attachment
91
92
  const [enhancingField, setEnhancingField] = useState("prompt");
92
93
  const enhanceField = (field) => onEnhance &&
93
94
  ((current) => {
95
+ onEvent?.(composerEvents.enhanceClicked(field, current.length));
94
96
  setEnhancingField(field);
95
97
  onEnhance(current, field, view.enhanceMode);
96
98
  });
@@ -103,9 +105,12 @@ export function Composer({ value, onChange, placeholder, promptLabel, attachment
103
105
  async function handleFilesSelected(fileList) {
104
106
  if (!fileList || fileList.length === 0 || !onAttachmentsChange)
105
107
  return;
108
+ // Counted now: the input is cleared for the next pick, which empties its live FileList.
109
+ const picked = fileList.length;
106
110
  // Edit mode works on one image: a new one replaces it, and the edit starts over.
107
111
  const { attachments: next, unsupported } = await composerAttachmentsFromFiles(fileList, attachments, editing);
108
112
  unsupported.forEach((name) => onUnsupportedFile?.(name));
113
+ onEvent?.(composerEvents.mediaAttached(picked - unsupported.length, unsupported.length));
109
114
  if (next)
110
115
  onAttachmentsChange(next);
111
116
  }
@@ -117,30 +122,59 @@ export function Composer({ value, onChange, placeholder, promptLabel, attachment
117
122
  function handleRemoveAttachment(id) {
118
123
  onAttachmentsChange?.(attachments.filter((a) => a.id !== id));
119
124
  }
120
- return (_jsxs("div", { className: className ? `chai-composer ${className}` : "chai-composer", style: style, children: [attachments.length > 0 && (_jsx("div", { className: "chai-composer__thumbnails", children: attachments.map((a) => (_jsx(ComposerThumbnail, { attachment: a, onRemove: onAttachmentsChange ? () => handleRemoveAttachment(a.id) : undefined }, a.id))) })), editing && regions.length > 0 && (_jsx("ul", { className: "chai-composer__regions", "aria-label": "Edit regions", children: regions.map((r) => (_jsx("li", { children: _jsx(RegionChip, { region: r, onRemove: onRegionsChange ? () => onRegionsChange(regions.filter((x) => x.id !== r.id)) : undefined, disabled: disabled }) }, r.id))) })), voiceInput && voice.state.status === "recording" ? (_jsx(VoiceWaveform, { levels: voice.state.levels, elapsedMs: voice.state.elapsedMs })) : view.world ? (_jsxs("div", { className: "chai-composer__world-fields", children: [_jsx(PromptField, { value: value, onChange: onChange, placeholder: view.placeholder, heading: "Environment", note: "(required)", hint: view.environmentHint, onEnhance: enhanceField("environment"), enhancing: enhancing && enhancingField === "environment", disabled: disabled }), onCharacterChange && (_jsx(PromptField, { value: character, onChange: onCharacterChange, placeholder: view.characterPlaceholder, heading: "Character", note: "(optional)", onEnhance: enhanceField("character"), enhancing: enhancing && enhancingField === "character", disabled: disabled }))] })) : (_jsx(PromptField, { value: value, onChange: onChange, placeholder: view.placeholder, label: promptLabel, onEnhance: enhanceField("prompt"), enhancing: enhancing, disabled: disabled })), submitError && (_jsxs("p", { className: "chai-composer__error", role: "alert", children: [_jsx(ErrorIcon, {}), submitError] })), voiceInput && voice.state.status === "error" && (_jsxs("p", { className: "chai-composer__error", role: "alert", children: [_jsx(ErrorIcon, {}), voice.state.error] })), _jsxs("div", { className: "chai-composer__controls", children: [_jsxs("div", { className: "chai-composer__controls-start", children: [menuItems.length > 0 && (_jsx(ComposerAttachMenu, { items: menuItems, onSelect: onAttachMenuSelect, onAddMediaFiles: handleFilesSelected, imagesOnly: editing, disabled: disabled, placement: menuPlacement })), view.pickedUseCases.map((u) => (_jsx(UseCaseChip, { useCase: u, onRemove: multiSelectUseCases
121
- ? onUseCasesChange && (() => onUseCasesChange(useCases.filter((x) => x.kind !== u.kind)))
122
- : onClearUseCase, disabled: disabled }, u.kind))), view.canPickModel &&
125
+ return (_jsxs("div", { className: className ? `chai-composer ${className}` : "chai-composer", style: style, children: [attachments.length > 0 && (_jsx("div", { className: "chai-composer__thumbnails", children: attachments.map((a) => (_jsx(ComposerThumbnail, { attachment: a, onRemove: onAttachmentsChange ? () => handleRemoveAttachment(a.id) : undefined }, a.id))) })), editing && regions.length > 0 && (_jsx("ul", { className: "chai-composer__regions", "aria-label": "Edit regions", children: regions.map((r) => (_jsx("li", { children: _jsx(RegionChip, { region: r, onRemove: onRegionsChange ? () => onRegionsChange(regions.filter((x) => x.id !== r.id)) : undefined, disabled: disabled }) }, r.id))) })), voiceInput && voice.state.status === "recording" ? (_jsx(VoiceWaveform, { levels: voice.state.levels, elapsedMs: voice.state.elapsedMs })) : view.world ? (_jsxs("div", { className: "chai-composer__world-fields", children: [_jsx(PromptField, { value: value, onChange: onChange, placeholder: view.placeholder, heading: "Environment", note: "(required)", hint: view.environmentHint, onEnhance: enhanceField("environment"), onRevert: () => onEvent?.(composerEvents.enhanceReverted("environment")), enhancing: enhancing && enhancingField === "environment", disabled: disabled }), onCharacterChange && (_jsx(PromptField, { value: character, onChange: onCharacterChange, placeholder: view.characterPlaceholder, heading: "Character", note: "(optional)", onEnhance: enhanceField("character"), onRevert: () => onEvent?.(composerEvents.enhanceReverted("character")), enhancing: enhancing && enhancingField === "character", disabled: disabled }))] })) : (_jsx(PromptField, { value: value, onChange: onChange, placeholder: view.placeholder, label: promptLabel, onEnhance: enhanceField("prompt"), onRevert: () => onEvent?.(composerEvents.enhanceReverted("prompt")), enhancing: enhancing, disabled: disabled })), submitError && (_jsxs("p", { className: "chai-composer__error", role: "alert", children: [_jsx(ErrorIcon, {}), submitError] })), voiceInput && voice.state.status === "error" && (_jsxs("p", { className: "chai-composer__error", role: "alert", children: [_jsx(ErrorIcon, {}), voice.state.error] })), _jsxs("div", { className: "chai-composer__controls", children: [_jsxs("div", { className: "chai-composer__controls-start", children: [menuItems.length > 0 && (_jsx(ComposerAttachMenu, { items: menuItems, onSelect: (action) => {
126
+ if (action !== "add-media")
127
+ onEvent?.(composerEvents.useCasePicked(action));
128
+ onAttachMenuSelect?.(action);
129
+ }, onAddMediaFiles: handleFilesSelected, imagesOnly: editing, disabled: disabled, placement: menuPlacement })), view.pickedUseCases.map((u) => (_jsx(UseCaseChip, { useCase: u, onRemove: (multiSelectUseCases ? onUseCasesChange : onClearUseCase) &&
130
+ (() => {
131
+ onEvent?.(composerEvents.useCaseRemoved(u));
132
+ if (multiSelectUseCases)
133
+ onUseCasesChange?.(useCases.filter((x) => x.kind !== u.kind));
134
+ else
135
+ onClearUseCase?.();
136
+ }), disabled: disabled }, u.kind))), view.canPickModel &&
123
137
  view.modelMenus.map((menu) => (_jsx(SearchMenu, { placement: menuPlacement, options: menu.options, value: menu.value, multiple: menu.multiple, toggleHeader: showSwitch
124
138
  ? {
125
139
  label: "Auto-select model",
126
140
  value: autoSelect,
127
- onChange: (v) => onAutoSelectModelChange?.(v),
141
+ onChange: (v) => {
142
+ onEvent?.(composerEvents.autoSelectToggled(v));
143
+ onAutoSelectModelChange?.(v);
144
+ },
128
145
  }
129
- : undefined, triggerLabel: menu.triggerLabel, menuLabel: menu.menuLabel, onSelect: (opt) => pickModel(menu, opt.id), searchable: false, triggerVariant: "text", disabled: disabled || (autoSelect && !showSwitch), panelWidth: showSwitch ? 320 : undefined }, menu.key))), view.showAspectRatio && aspectOptions.length > 0 && onAspectRatioChange && (_jsx(SearchMenu, { placement: menuPlacement, options: aspectOptions.map((o) => ({ id: o.value, label: o.label })), value: offeredAspect, triggerLabel: view.selectedAspect?.label ?? "Aspect ratio", menuLabel: "Aspect ratio", onSelect: (opt) => onAspectRatioChange?.(opt.id), searchable: false, triggerVariant: "text", disabled: disabled })), view.voiceOptions.length > 0 && onSpeechVoiceChange && (_jsx(SearchMenu, { placement: menuPlacement, ...(view.voiceSections
146
+ : undefined, triggerLabel: menu.triggerLabel, menuLabel: menu.menuLabel, onSelect: (opt) => pickModel(menu, opt.id), searchable: false, triggerVariant: "text", disabled: disabled || (autoSelect && !showSwitch), panelWidth: showSwitch ? 320 : undefined }, menu.key))), view.showAspectRatio && aspectOptions.length > 0 && onAspectRatioChange && (_jsx(SearchMenu, { placement: menuPlacement, options: aspectOptions.map((o) => ({ id: o.value, label: o.label })), value: offeredAspect, triggerLabel: view.selectedAspect?.label ?? "Aspect ratio", menuLabel: "Aspect ratio", onSelect: (opt) => {
147
+ onEvent?.(composerEvents.optionPicked("aspect_ratio", opt.id));
148
+ onAspectRatioChange?.(opt.id);
149
+ }, searchable: false, triggerVariant: "text", disabled: disabled })), view.voiceOptions.length > 0 && onSpeechVoiceChange && (_jsx(SearchMenu, { placement: menuPlacement, ...(view.voiceSections
130
150
  ? {
131
151
  sections: view.voiceSections.map((s) => ({
132
152
  label: s.label,
133
153
  options: s.options.map((v) => ({ id: v.value, label: v.label })),
134
154
  })),
135
155
  }
136
- : { options: view.voiceOptions.map((v) => ({ id: v.value, label: v.label })) }), value: view.offeredVoice, triggerLabel: view.voiceTriggerLabel, menuLabel: "Voice", onSelect: (opt) => onSpeechVoiceChange(opt.id), searchable: view.voiceOptions.length > view.searchableAt, triggerVariant: "text", disabled: disabled })), view.genreOptions.length > 0 && onGenresChange && (_jsx(SearchMenu, { placement: menuPlacement, options: view.genreOptions.map((g) => ({ id: g.value, label: g.label })), value: view.offeredGenres, multiple: true, triggerLabel: view.genreTriggerLabel, menuLabel: "Genre", onSelect: (opt) => onGenresChange(view.toggledGenres(opt.id)), searchable: view.genreOptions.length > view.searchableAt, triggerVariant: "text", disabled: disabled })), view.frameRateOptions.length > 0 && onFrameRateChange && (_jsx(SearchMenu, { placement: menuPlacement, options: view.frameRateOptions.map((r) => ({ id: String(r), label: `${r}fps` })), value: view.offeredFrameRate == null ? null : String(view.offeredFrameRate), triggerLabel: view.offeredFrameRate == null ? "Frame rate" : `${view.offeredFrameRate}fps`, menuLabel: "Frame rate", onSelect: (opt) => onFrameRateChange(Number(opt.id)), searchable: false, triggerVariant: "text", disabled: disabled }))] }), _jsxs("div", { className: "chai-composer__controls-end", children: [voiceInput && _jsx(VoiceButton, { voice: voice, disabled: disabled }), !(voiceInput && (voice.state.status === "recording" || voice.state.status === "transcribing")) && (_jsx(MdFabElement, { className: "chai-composer__submit", size: "small", variant: "secondary", label: "", "data-ready": showStop || !isSubmitDisabled || undefined, "data-error": Boolean(submitError) || undefined, "data-stop": showStop || undefined, ...{
156
+ : { options: view.voiceOptions.map((v) => ({ id: v.value, label: v.label })) }), value: view.offeredVoice, triggerLabel: view.voiceTriggerLabel, menuLabel: "Voice", onSelect: (opt) => {
157
+ onEvent?.(composerEvents.optionPicked("voice", opt.id));
158
+ onSpeechVoiceChange(opt.id);
159
+ }, searchable: view.voiceOptions.length > view.searchableAt, triggerVariant: "text", disabled: disabled })), view.genreOptions.length > 0 && onGenresChange && (_jsx(SearchMenu, { placement: menuPlacement, options: view.genreOptions.map((g) => ({ id: g.value, label: g.label })), value: view.offeredGenres, multiple: true, triggerLabel: view.genreTriggerLabel, menuLabel: "Genre", onSelect: (opt) => {
160
+ onEvent?.(composerEvents.optionPicked("genre", opt.id));
161
+ onGenresChange(view.toggledGenres(opt.id));
162
+ }, searchable: view.genreOptions.length > view.searchableAt, triggerVariant: "text", disabled: disabled })), view.frameRateOptions.length > 0 && onFrameRateChange && (_jsx(SearchMenu, { placement: menuPlacement, options: view.frameRateOptions.map((r) => ({ id: String(r), label: `${r}fps` })), value: view.offeredFrameRate == null ? null : String(view.offeredFrameRate), triggerLabel: view.offeredFrameRate == null ? "Frame rate" : `${view.offeredFrameRate}fps`, menuLabel: "Frame rate", onSelect: (opt) => {
163
+ onEvent?.(composerEvents.optionPicked("frame_rate", opt.id));
164
+ onFrameRateChange(Number(opt.id));
165
+ }, searchable: false, triggerVariant: "text", disabled: disabled }))] }), _jsxs("div", { className: "chai-composer__controls-end", children: [voiceInput && _jsx(VoiceButton, { voice: voice, disabled: disabled, onStart: () => onEvent?.(composerEvents.voiceStarted()) }), !(voiceInput && (voice.state.status === "recording" || voice.state.status === "transcribing")) && (_jsx(MdFabElement, { className: "chai-composer__submit", size: "small", variant: "secondary", label: "", "data-ready": showStop || !isSubmitDisabled || undefined, "data-error": Boolean(submitError) || undefined, "data-stop": showStop || undefined, ...{
137
166
  ariaLabel: showStop ? "Stop" : submitError ? "Retry" : "Submit",
138
167
  ariaDisabled: showStop ? "false" : submitting ? "true" : isSubmitDisabled ? "true" : "false",
139
168
  }, onClick: () => {
140
- if (showStop)
169
+ if (showStop) {
170
+ onEvent?.(composerEvents.stopped());
141
171
  onAbort?.();
142
- else if (!isSubmitDisabled && !submitting)
143
- onSubmit(view.payload());
172
+ }
173
+ else if (!isSubmitDisabled && !submitting) {
174
+ const payload = view.payload();
175
+ onEvent?.(composerEvents.submitted(payload, Boolean(submitError)));
176
+ onSubmit(payload);
177
+ }
144
178
  }, children: _jsx("span", { slot: "icon", children: showStop ? _jsx(StopIcon, {}) : submitError ? _jsx(RefreshIcon, {}) : _jsx(ArrowForwardIcon, {}) }) }))] })] })] }));
145
179
  }
146
180
  /** The core recorder, created once, with the latest config and transcript handler. */
@@ -165,7 +199,7 @@ function VoiceWaveform({ levels, elapsedMs }) {
165
199
  * the recording and transcribes it; while transcribing, a spinner, and a
166
200
  * click cancels.
167
201
  */
168
- function VoiceButton({ voice, disabled }) {
202
+ function VoiceButton({ voice, disabled, onStart }) {
169
203
  const { status } = voice.state;
170
204
  const label = status === "recording" ? "Stop recording and transcribe" : status === "transcribing" ? "Cancel transcription" : "Start voice input";
171
205
  function handleClick() {
@@ -175,6 +209,7 @@ function VoiceButton({ voice, disabled }) {
175
209
  voice.cancel();
176
210
  else {
177
211
  voice.dismiss();
212
+ onStart();
178
213
  void voice.start();
179
214
  }
180
215
  }
@@ -190,7 +225,7 @@ function VoiceButton({ voice, disabled }) {
190
225
  * world's Environment and Character); without one it's the bar's plain
191
226
  * prompt.
192
227
  */
193
- function PromptField({ value, onChange, placeholder, label, heading, note, hint, onEnhance, enhancing, disabled, }) {
228
+ function PromptField({ value, onChange, placeholder, label, heading, note, hint, onEnhance, onRevert, enhancing, disabled, }) {
194
229
  const id = useId();
195
230
  const hintId = `${id}-hint`;
196
231
  // Auto-grows with wrapped content instead of a fixed row count — a
@@ -260,6 +295,7 @@ function PromptField({ value, onChange, placeholder, label, heading, note, hint,
260
295
  setOriginalValue(null);
261
296
  if (original != null)
262
297
  onChange(original);
298
+ onRevert?.();
263
299
  return;
264
300
  }
265
301
  setOriginalValue(value); // snapshot now — before the rewrite lands, for undo
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../src/Composer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../src/Composer.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type ReactNode } from "react";
2
- import { type ModelOption, type Result } from "@chai-ui/core";
2
+ import { type ChaiEvent, type ModelOption, type Result } from "@chai-ui/core";
3
3
  /**
4
4
  * ResultCard's complement to Composer bar, and the last stop in the
5
5
  * pipeline: by design there's no "use as input" action feeding a result
@@ -63,7 +63,13 @@ export interface ResultCardProps {
63
63
  /** Configurable extra items in the "more" menu (reference: Figma "Result Card - More menu expanded") — entirely up to the host. Omit to hide the "more" button entirely. */
64
64
  moreActions?: ResultCardMoreAction[];
65
65
  disabled?: boolean;
66
+ /**
67
+ * Front-end analytics: a result appearing (done or failed), result
68
+ * actions, paging and opening the details side, one `ChaiEvent` each:
69
+ * `onEvent={(e) => posthog.capture(e.name, e.properties)}`.
70
+ */
71
+ onEvent?: (event: ChaiEvent) => void;
66
72
  }
67
- export declare function ResultCard({ results, width, textMaxHeight, prompt, altText, models, getVote, onAction, moreActions, disabled, }: ResultCardProps): import("react").JSX.Element | null;
73
+ export declare function ResultCard({ results, width, textMaxHeight, prompt, altText, models, getVote, onAction, moreActions, disabled, onEvent, }: ResultCardProps): import("react").JSX.Element | null;
68
74
  /** Self-drawn corner-bracket mark, not a recalled/traced icon-set glyph (the mock has no "expand" asset to trace — see this section's own header comment) — four independent strokes, deliberately simple so its geometry is obviously correct rather than a compound path that's hard to eyeball. */
69
75
  //# sourceMappingURL=ResultCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResultCard.d.ts","sourceRoot":"","sources":["../src/ResultCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACxF,OAAO,EASL,KAAK,WAAW,EAChB,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AAKvB;;;;;;;;;;;;GAYG;AAIH,wLAAwL;AACxL,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,oGAAoG;IACpG,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4KAA4K;IAC5K,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uGAAuG;IACvG,MAAM,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,oOAAoO;IACpO,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,cAAc,CAAC;IAC7C;;;;;;;;OAQG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,4KAA4K;IAC5K,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAID,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,aAAa,EACb,MAAM,EACN,OAAO,EACP,MAAM,EACN,OAAO,EACP,QAAQ,EACR,WAAW,EACX,QAAQ,GACT,EAAE,eAAe,sCA0UjB;AAodD,sSAAsS"}
1
+ {"version":3,"file":"ResultCard.d.ts","sourceRoot":"","sources":["../src/ResultCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACxF,OAAO,EAUL,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AAKvB;;;;;;;;;;;;GAYG;AAIH,wLAAwL;AACxL,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,oGAAoG;IACpG,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4KAA4K;IAC5K,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uGAAuG;IACvG,MAAM,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,oOAAoO;IACpO,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,cAAc,CAAC;IAC7C;;;;;;;;OAQG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,4KAA4K;IAC5K,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;CACtC;AAID,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,aAAa,EACb,MAAM,EACN,OAAO,EACP,MAAM,EACN,OAAO,EACP,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,OAAO,GACR,EAAE,eAAe,sCA8VjB;AAodD,sSAAsS"}
@@ -1,12 +1,22 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useEffect, useRef, useState } from "react";
3
- import { downloadFilename, downloadMedia, formatAspectRatio, formatCost, formatDuration, formatTokens, resultModelLabel, shareMedia, } from "@chai-ui/core";
3
+ import { downloadFilename, downloadMedia, formatAspectRatio, formatCost, formatDuration, formatTokens, resultCardEvents, resultModelLabel, shareMedia, } from "@chai-ui/core";
4
4
  import { Pagination } from "./primitives/Pagination.js";
5
5
  import { CheckIcon, CheckSymbolIcon, DownloadIcon, ExpandIcon, ShareIcon } from "./icons.js";
6
6
  import { PageSlide, usePageSlide } from "./page-slide.js";
7
7
  // --- Component ------------------------------------------------------------
8
- export function ResultCard({ results, width, textMaxHeight, prompt, altText, models, getVote, onAction, moreActions, disabled, }) {
8
+ export function ResultCard({ results, width, textMaxHeight, prompt, altText, models, getVote, onAction, moreActions, disabled, onEvent, }) {
9
9
  const [activeIndex, setActiveIndex] = useState(0);
10
+ // Each result reports once, the first time it's shown done or failed.
11
+ const shownIds = useRef(new Set());
12
+ useEffect(() => {
13
+ for (const r of results) {
14
+ if ((r.status === "done" || r.status === "error") && !shownIds.current.has(r.id)) {
15
+ shownIds.current.add(r.id);
16
+ onEvent?.(resultCardEvents.shown(r.status, r.output?.kind, results.length));
17
+ }
18
+ }
19
+ }, [results, onEvent]);
10
20
  const [flipped, setFlipped] = useState(false);
11
21
  const [moreOpen, setMoreOpen] = useState(false);
12
22
  const [copied, setCopied] = useState(false);
@@ -100,19 +110,26 @@ export function ResultCard({ results, width, textMaxHeight, prompt, altText, mod
100
110
  // known TS limitation, not stylistic), so every one of these closing
101
111
  // over `result` needs to be an expression instead.
102
112
  const goTo = (index) => {
103
- setActiveIndex(Math.max(0, Math.min(results.length - 1, index)));
113
+ const next = Math.max(0, Math.min(results.length - 1, index));
114
+ if (next !== clampedIndex)
115
+ onEvent?.(resultCardEvents.paged(next, results.length));
116
+ setActiveIndex(next);
117
+ };
118
+ const act = (action, r) => {
119
+ onEvent?.(resultCardEvents.action(action));
120
+ onAction(action, r);
104
121
  };
105
122
  const handleCopyPrompt = () => {
106
123
  navigator.clipboard?.writeText(prompt).catch(() => { });
107
124
  setCopied(true);
108
125
  setTimeout(() => setCopied(false), 1500);
109
- onAction("copy-prompt", result);
126
+ act("copy-prompt", result);
110
127
  };
111
128
  const handleDownload = async () => {
112
129
  if (result.output) {
113
130
  await downloadMedia(result.output.src, downloadFilename(result.id, result.output.kind, result.output.src));
114
131
  }
115
- onAction("download", result);
132
+ act("download", result);
116
133
  };
117
134
  const handleShare = async () => {
118
135
  // With no share sheet the link is copied; say so, or the click looks like nothing happened.
@@ -120,7 +137,7 @@ export function ResultCard({ results, width, textMaxHeight, prompt, altText, mod
120
137
  setLinkCopied(true);
121
138
  setTimeout(() => setLinkCopied(false), 1500);
122
139
  }
123
- onAction("share", result);
140
+ act("share", result);
124
141
  };
125
142
  const isVideo = result.output?.kind === "video";
126
143
  const paginated = results.length > 1;
@@ -130,7 +147,10 @@ export function ResultCard({ results, width, textMaxHeight, prompt, altText, mod
130
147
  return (_jsxs(_Fragment, { children: [_jsx("div", { className: `chai-result-card${flipped ? " chai-result-card--flipped" : ""}`, style: {
131
148
  ...(width != null && { "--chai-result-card-width": `${width}px` }),
132
149
  ...(textMaxHeight != null && { "--chai-result-card-text-max-height": `${textMaxHeight}px` }),
133
- }, children: _jsxs("div", { className: "chai-result-card__inner", children: [_jsxs("div", { ref: frontRef, className: `chai-result-card__face chai-result-card__front${paginated ? " chai-result-card__front--paginated" : ""}`, "aria-hidden": flipped, children: [_jsxs("div", { className: "chai-result-card__media-frame", children: [_jsx(PageSlide, { slide: slide, onEnd: endSlide, className: "chai-result-card__media-page", children: _jsx(ResultMedia, { result: result, alt: altText?.(result) ?? prompt, disabled: disabled, mediaExpanded: mediaExpanded, onDownload: handleDownload, onShare: handleShare, linkCopied: linkCopied, onExpand: () => setMediaExpanded(true), onDimensions: (w, h) => setMeasured({ id: result.id, width: w, height: h }), videoTimeRef: videoTimeRef, videoWasPlaying: videoWasPlaying, onVideoPlayingChange: setVideoWasPlaying }) }), paginated && overMedia && _jsx("div", { className: "chai-card-fade" })] }), paginated && (_jsxs("div", { className: `chai-card-pager-bar${overMedia ? " chai-card-pager-bar--over-media" : ""}`, children: [_jsx("span", { className: "chai-card-pager-label", children: modelLabel }), _jsx(Pagination, { count: results.length, index: clampedIndex, onChange: goTo, label: "Results", disabled: disabled })] })), _jsx("div", { className: "chai-card-bottom", children: _jsxs("div", { className: "chai-card-actions", children: [_jsxs("div", { className: "chai-card-pill", children: [_jsx(ResultIconButton, { variant: "pill", label: "Like", active: vote === "like", disabled: disabled, onClick: () => onAction("like", result), children: _jsx(ThumbUpIcon, {}) }), _jsx(ResultIconButton, { variant: "pill", label: "Dislike", active: vote === "dislike", disabled: disabled, onClick: () => onAction("dislike", result), children: _jsx(ThumbDownIcon, {}) }), _jsx(ResultIconButton, { variant: "pill", label: "Retry", disabled: disabled, onClick: () => onAction("retry", result), children: _jsx(RefreshIcon, {}) }), moreActions && moreActions.length > 0 && (_jsx(MoreMenu, { actions: moreActions, open: moreOpen, onOpenChange: setMoreOpen, disabled: disabled, onSelect: (action) => onAction(action.id, result) }))] }), _jsx(ResultIconButton, { variant: "round", label: "Show details", disabled: disabled, onClick: () => setFlipped(true), children: _jsx(InfoIcon, {}) })] }) })] }), _jsxs("div", { ref: backRef, className: "chai-result-card__face chai-result-card__back", "aria-hidden": !flipped, children: [_jsx("button", { type: "button", className: "chai-result-card__close", "aria-label": "Close details", onClick: () => setFlipped(false), children: _jsx(CloseIcon, {}) }), _jsxs("div", { className: "chai-result-card__prompt-box", children: [_jsx("p", { className: "chai-result-card__prompt-text", children: prompt }), _jsx("button", { type: "button", className: "chai-result-card__copy", "aria-label": copied ? "Copied" : "Copy prompt", title: copied ? "Copied" : "Copy prompt", onClick: handleCopyPrompt, children: copied ? _jsx(CheckIcon, {}) : _jsx(CopyIcon, {}) })] }), _jsxs("div", { className: "chai-result-card__chips", children: [_jsx("span", { className: "chai-result-card__chip", children: modelLabel }), tokens && _jsx("span", { className: "chai-result-card__chip", children: tokens }), cost && _jsx("span", { className: "chai-result-card__chip", children: cost }), duration && _jsx("span", { className: "chai-result-card__chip", children: duration }), aspectRatio && _jsx("span", { className: "chai-result-card__chip", children: aspectRatio }), result.evaluations?.map((evaluation) => (_jsxs("span", { className: `chai-result-card__chip chai-result-card__chip--evaluation chai-result-card__chip--${evaluation.passed ? "passed" : "failed"}`, title: `${evaluation.label}: ${evaluation.passed ? "passed" : "failed"}`, children: [evaluation.passed ? _jsx(CheckIcon, {}) : _jsx(CloseIcon, {}), evaluation.label, _jsx("span", { className: "chai-visually-hidden", children: evaluation.passed ? ", passed" : ", failed" })] }, evaluation.id)))] })] })] }) }), mediaExpanded && result.output && (result.output.kind === "image" || isVideo) && (_jsxs("div", { ref: overlayRef, className: "chai-result-card__expand-overlay", role: "dialog", "aria-modal": "true", "aria-label": isVideo ? "Expanded video" : "Expanded image", onKeyDown: handleOverlayKeyDown, children: [_jsx("div", { className: "chai-result-card__expand-scrim", role: "presentation", onClick: () => setMediaExpanded(false) }), _jsxs("div", { className: "chai-result-card__expand-frame", children: [isVideo ? (_jsx(ResultVideoPlayer, { src: result.output.src, expanded: true, timeRef: videoTimeRef, wasPlaying: videoWasPlaying, onPlayingChange: setVideoWasPlaying })) : (_jsx("img", { className: "chai-result-card__image", src: result.output.src, alt: altText?.(result) ?? prompt })), _jsx("button", { type: "button", className: "chai-result-card__collapse", "aria-label": "Collapse", onClick: () => setMediaExpanded(false), children: _jsx(CloseIcon, {}) })] })] }))] }));
150
+ }, children: _jsxs("div", { className: "chai-result-card__inner", children: [_jsxs("div", { ref: frontRef, className: `chai-result-card__face chai-result-card__front${paginated ? " chai-result-card__front--paginated" : ""}`, "aria-hidden": flipped, children: [_jsxs("div", { className: "chai-result-card__media-frame", children: [_jsx(PageSlide, { slide: slide, onEnd: endSlide, className: "chai-result-card__media-page", children: _jsx(ResultMedia, { result: result, alt: altText?.(result) ?? prompt, disabled: disabled, mediaExpanded: mediaExpanded, onDownload: handleDownload, onShare: handleShare, linkCopied: linkCopied, onExpand: () => setMediaExpanded(true), onDimensions: (w, h) => setMeasured({ id: result.id, width: w, height: h }), videoTimeRef: videoTimeRef, videoWasPlaying: videoWasPlaying, onVideoPlayingChange: setVideoWasPlaying }) }), paginated && overMedia && _jsx("div", { className: "chai-card-fade" })] }), paginated && (_jsxs("div", { className: `chai-card-pager-bar${overMedia ? " chai-card-pager-bar--over-media" : ""}`, children: [_jsx("span", { className: "chai-card-pager-label", children: modelLabel }), _jsx(Pagination, { count: results.length, index: clampedIndex, onChange: goTo, label: "Results", disabled: disabled })] })), _jsx("div", { className: "chai-card-bottom", children: _jsxs("div", { className: "chai-card-actions", children: [_jsxs("div", { className: "chai-card-pill", children: [_jsx(ResultIconButton, { variant: "pill", label: "Like", active: vote === "like", disabled: disabled, onClick: () => act("like", result), children: _jsx(ThumbUpIcon, {}) }), _jsx(ResultIconButton, { variant: "pill", label: "Dislike", active: vote === "dislike", disabled: disabled, onClick: () => act("dislike", result), children: _jsx(ThumbDownIcon, {}) }), _jsx(ResultIconButton, { variant: "pill", label: "Retry", disabled: disabled, onClick: () => act("retry", result), children: _jsx(RefreshIcon, {}) }), moreActions && moreActions.length > 0 && (_jsx(MoreMenu, { actions: moreActions, open: moreOpen, onOpenChange: setMoreOpen, disabled: disabled, onSelect: (action) => act(action.id, result) }))] }), _jsx(ResultIconButton, { variant: "round", label: "Show details", disabled: disabled, onClick: () => {
151
+ onEvent?.(resultCardEvents.infoOpened());
152
+ setFlipped(true);
153
+ }, children: _jsx(InfoIcon, {}) })] }) })] }), _jsxs("div", { ref: backRef, className: "chai-result-card__face chai-result-card__back", "aria-hidden": !flipped, children: [_jsx("button", { type: "button", className: "chai-result-card__close", "aria-label": "Close details", onClick: () => setFlipped(false), children: _jsx(CloseIcon, {}) }), _jsxs("div", { className: "chai-result-card__prompt-box", children: [_jsx("p", { className: "chai-result-card__prompt-text", children: prompt }), _jsx("button", { type: "button", className: "chai-result-card__copy", "aria-label": copied ? "Copied" : "Copy prompt", title: copied ? "Copied" : "Copy prompt", onClick: handleCopyPrompt, children: copied ? _jsx(CheckIcon, {}) : _jsx(CopyIcon, {}) })] }), _jsxs("div", { className: "chai-result-card__chips", children: [_jsx("span", { className: "chai-result-card__chip", children: modelLabel }), tokens && _jsx("span", { className: "chai-result-card__chip", children: tokens }), cost && _jsx("span", { className: "chai-result-card__chip", children: cost }), duration && _jsx("span", { className: "chai-result-card__chip", children: duration }), aspectRatio && _jsx("span", { className: "chai-result-card__chip", children: aspectRatio }), result.evaluations?.map((evaluation) => (_jsxs("span", { className: `chai-result-card__chip chai-result-card__chip--evaluation chai-result-card__chip--${evaluation.passed ? "passed" : "failed"}`, title: `${evaluation.label}: ${evaluation.passed ? "passed" : "failed"}`, children: [evaluation.passed ? _jsx(CheckIcon, {}) : _jsx(CloseIcon, {}), evaluation.label, _jsx("span", { className: "chai-visually-hidden", children: evaluation.passed ? ", passed" : ", failed" })] }, evaluation.id)))] })] })] }) }), mediaExpanded && result.output && (result.output.kind === "image" || isVideo) && (_jsxs("div", { ref: overlayRef, className: "chai-result-card__expand-overlay", role: "dialog", "aria-modal": "true", "aria-label": isVideo ? "Expanded video" : "Expanded image", onKeyDown: handleOverlayKeyDown, children: [_jsx("div", { className: "chai-result-card__expand-scrim", role: "presentation", onClick: () => setMediaExpanded(false) }), _jsxs("div", { className: "chai-result-card__expand-frame", children: [isVideo ? (_jsx(ResultVideoPlayer, { src: result.output.src, expanded: true, timeRef: videoTimeRef, wasPlaying: videoWasPlaying, onPlayingChange: setVideoWasPlaying })) : (_jsx("img", { className: "chai-result-card__image", src: result.output.src, alt: altText?.(result) ?? prompt })), _jsx("button", { type: "button", className: "chai-result-card__collapse", "aria-label": "Collapse", onClick: () => setMediaExpanded(false), children: _jsx(CloseIcon, {}) })] })] }))] }));
134
154
  }
135
155
  // --- Media (image / video / audio / text, by status) ------------------------------------------------------------
136
156
  function ResultMedia({ result, alt, disabled, mediaExpanded, onDownload, onShare, linkCopied, onExpand, onDimensions, videoTimeRef, videoWasPlaying, onVideoPlayingChange, }) {
@@ -1 +1 @@
1
- {"version":3,"file":"ResultCard.js","sourceRoot":"","sources":["../src/ResultCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResultCard.js","sourceRoot":"","sources":["../src/ResultCard.tsx"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,6 @@ export * from "./EditCard.js";
6
6
  export * from "./useComposer.js";
7
7
  export * from "./ChaiProvider.js";
8
8
  export * from "./useMediaAnalyzer.js";
9
- export { createFalEngine, createFalTranscriber, createOpenRouterEngine, createMockEngine, mockEngine, buildRegionEditPrompt, DEFAULT_MAX_REGIONS, PRECISE_EDIT_MODELS, ROUTING_MODEL_ID, GenerationError, DEFAULT_MEDIA_ANALYSIS_PROMPT_LENGTH, MEDIA_ANALYSIS_PROMPTS, MEDIA_ANALYSIS_PROMPT_LENGTHS, SUGGESTED_IMAGE_MODELS, SUGGESTED_TEXT_TO_VIDEO_MODELS, SUGGESTED_IMAGE_TO_VIDEO_MODELS, SUGGESTED_EDIT_MODELS, SUGGESTED_ANALYSIS_MODELS, suggestedModels, promptWithGenres, checkSuggestedModels, nextUseCases, combinesWithOthers, } from "@chai-ui/core";
10
- export type { DroppedMedia, EditRegion, Evaluation, GenerationEngine, GenerationUseCase, MediaAnalysisKind, MediaAnalysisPromptLength, MediaKind, MenuPlacement, ModelOption, OutputKind, Transcribe, VoiceClip, VoiceInputConfig, VoiceOption, ParameterOption, RegionBox, RegionFormat, Request, Result, ResultStatus, Run, SuggestedModelProblem, SuggestedModelsCheck, FalInputFormat, Usage, } from "@chai-ui/core";
9
+ export { createFalEngine, createFalTranscriber, createOpenRouterEngine, createMockEngine, mockEngine, buildRegionEditPrompt, DEFAULT_MAX_REGIONS, PRECISE_EDIT_MODELS, ROUTING_MODEL_ID, GenerationError, DEFAULT_MEDIA_ANALYSIS_PROMPT_LENGTH, MEDIA_ANALYSIS_PROMPTS, MEDIA_ANALYSIS_PROMPT_LENGTHS, SUGGESTED_IMAGE_MODELS, SUGGESTED_TEXT_TO_VIDEO_MODELS, SUGGESTED_IMAGE_TO_VIDEO_MODELS, SUGGESTED_EDIT_MODELS, SUGGESTED_ANALYSIS_MODELS, suggestedModels, promptWithGenres, checkSuggestedModels, nextUseCases, combinesWithOthers, buildJudgePrompt, DEFAULT_EVALUATION_CHECKS, composerEvents, resultCardEvents, } from "@chai-ui/core";
10
+ export type { DroppedMedia, EditRegion, Evaluation, EvaluationCheck, JudgePromptInput, ChaiEvent, ChaiEventName, GenerationEngine, GenerationUseCase, MediaAnalysisKind, MediaAnalysisPromptLength, MediaKind, MenuPlacement, ModelOption, OutputKind, Transcribe, VoiceClip, VoiceInputConfig, VoiceOption, ParameterOption, RegionBox, RegionFormat, Request, Result, ResultStatus, Run, SuggestedModelProblem, SuggestedModelsCheck, FalInputFormat, Usage, } from "@chai-ui/core";
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AAItC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,oCAAoC,EACpC,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EAC9B,+BAA+B,EAC/B,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,YAAY,EACZ,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,SAAS,EACT,aAAa,EACb,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,SAAS,EACT,YAAY,EACZ,OAAO,EACP,MAAM,EACN,YAAY,EACZ,GAAG,EACH,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,KAAK,GACN,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AAItC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,oCAAoC,EACpC,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EAC9B,+BAA+B,EAC/B,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,cAAc,EACd,gBAAgB,GACjB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,YAAY,EACZ,UAAU,EACV,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,SAAS,EACT,aAAa,EACb,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,SAAS,EACT,YAAY,EACZ,OAAO,EACP,MAAM,EACN,YAAY,EACZ,GAAG,EACH,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,KAAK,GACN,MAAM,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -8,5 +8,5 @@ export * from "./ChaiProvider.js";
8
8
  export * from "./useMediaAnalyzer.js";
9
9
  // Re-export the core engines and types so a consumer typically only needs
10
10
  // to import from @chai-ui/react.
11
- export { createFalEngine, createFalTranscriber, createOpenRouterEngine, createMockEngine, mockEngine, buildRegionEditPrompt, DEFAULT_MAX_REGIONS, PRECISE_EDIT_MODELS, ROUTING_MODEL_ID, GenerationError, DEFAULT_MEDIA_ANALYSIS_PROMPT_LENGTH, MEDIA_ANALYSIS_PROMPTS, MEDIA_ANALYSIS_PROMPT_LENGTHS, SUGGESTED_IMAGE_MODELS, SUGGESTED_TEXT_TO_VIDEO_MODELS, SUGGESTED_IMAGE_TO_VIDEO_MODELS, SUGGESTED_EDIT_MODELS, SUGGESTED_ANALYSIS_MODELS, suggestedModels, promptWithGenres, checkSuggestedModels, nextUseCases, combinesWithOthers, } from "@chai-ui/core";
11
+ export { createFalEngine, createFalTranscriber, createOpenRouterEngine, createMockEngine, mockEngine, buildRegionEditPrompt, DEFAULT_MAX_REGIONS, PRECISE_EDIT_MODELS, ROUTING_MODEL_ID, GenerationError, DEFAULT_MEDIA_ANALYSIS_PROMPT_LENGTH, MEDIA_ANALYSIS_PROMPTS, MEDIA_ANALYSIS_PROMPT_LENGTHS, SUGGESTED_IMAGE_MODELS, SUGGESTED_TEXT_TO_VIDEO_MODELS, SUGGESTED_IMAGE_TO_VIDEO_MODELS, SUGGESTED_EDIT_MODELS, SUGGESTED_ANALYSIS_MODELS, suggestedModels, promptWithGenres, checkSuggestedModels, nextUseCases, combinesWithOthers, buildJudgePrompt, DEFAULT_EVALUATION_CHECKS, composerEvents, resultCardEvents, } from "@chai-ui/core";
12
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AAEtC,0EAA0E;AAC1E,iCAAiC;AACjC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,oCAAoC,EACpC,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EAC9B,+BAA+B,EAC/B,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,GACnB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AAEtC,0EAA0E;AAC1E,iCAAiC;AACjC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,oCAAoC,EACpC,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EAC9B,+BAA+B,EAC/B,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,cAAc,EACd,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chai-ui/react",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "description": "Chai UI React components — smart, drop-in UI for AI apps: Composer, Media Analyzer, Result Card, and the useComposer hook.",
5
5
  "license": "MIT",
6
6
  "author": "kazarazat",
@@ -49,8 +49,8 @@
49
49
  "@fontsource/roboto": "^5.3.0",
50
50
  "@lit/react": "^1.0.8",
51
51
  "@material/web": "^2.5.0",
52
- "@chai-ui/core": "0.12.0",
53
- "@chai-ui/tokens": "0.12.0"
52
+ "@chai-ui/core": "0.14.0",
53
+ "@chai-ui/tokens": "0.14.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@material-symbols/svg-400": "^0.47.5",
package/src/Composer.tsx CHANGED
@@ -5,6 +5,7 @@ import * as React from "react";
5
5
  import { MdFab } from "@material/web/fab/fab.js";
6
6
  import {
7
7
  composerAttachmentsFromFiles,
8
+ composerEvents,
8
9
  composerAttachMenuItems,
9
10
  composerView,
10
11
  createVoiceInput,
@@ -15,6 +16,7 @@ import {
15
16
  regionColor,
16
17
  TEXT_USE_CASE,
17
18
  menuOpensAbove,
19
+ type ChaiEvent,
18
20
  type ComposerAttachMenuAction,
19
21
  type ComposerPromptField,
20
22
  type MenuPlacement,
@@ -31,6 +33,7 @@ export {
31
33
  EDIT_IMAGE_USE_CASE,
32
34
  TEXT_USE_CASE,
33
35
  type AudioUseCase,
36
+ type ChaiEvent,
34
37
  type ComposerAttachMenuAction,
35
38
  type ComposerAttachment,
36
39
  type ComposerPromptField,
@@ -198,6 +201,13 @@ export interface ComposerProps {
198
201
  /** Fires when the stop icon is clicked while `submitting` is true. See `submitting`'s own doc comment for why this — not `submitting` alone — is what actually shows the stop icon. */
199
202
  onAbort?: () => void;
200
203
  onAttachMenuSelect?: (action: ComposerAttachMenuAction) => void;
204
+ /**
205
+ * Front-end analytics: what the person does in the bar (submit, stop,
206
+ * picks, attachments, Enhance, voice), one `ChaiEvent` each, for any
207
+ * analytics tool: `onEvent={(e) => posthog.capture(e.name, e.properties)}`.
208
+ * No prompt text or file contents are sent, only lengths and counts.
209
+ */
210
+ onEvent?: (event: ChaiEvent) => void;
201
211
  /**
202
212
  * Which `+` menu items to show. Defaults to all of them. Either way, an
203
213
  * item only shows when it can work: "Add media" needs
@@ -279,6 +289,7 @@ export function Composer({
279
289
  submitting = false,
280
290
  onAbort,
281
291
  onAttachMenuSelect,
292
+ onEvent,
282
293
  attachMenuActions,
283
294
  regions = [],
284
295
  onRegionsChange,
@@ -319,6 +330,7 @@ export function Composer({
319
330
  const { editing, isSubmitDisabled, showStop, multiModel, aspectOptions, offeredAspect } = view;
320
331
 
321
332
  function pickModel(menu: (typeof view.modelMenus)[number], id: string) {
333
+ onEvent?.(composerEvents.modelPicked(menu.key, id));
322
334
  if (!multiModel) return onModelChange?.(id);
323
335
  onModelIdsChange?.(menu.next(id));
324
336
  }
@@ -352,6 +364,7 @@ export function Composer({
352
364
  const enhanceField = (field: ComposerPromptField) =>
353
365
  onEnhance &&
354
366
  ((current: string) => {
367
+ onEvent?.(composerEvents.enhanceClicked(field, current.length));
355
368
  setEnhancingField(field);
356
369
  onEnhance(current, field, view.enhanceMode);
357
370
  });
@@ -365,9 +378,12 @@ export function Composer({
365
378
 
366
379
  async function handleFilesSelected(fileList: FileList | null) {
367
380
  if (!fileList || fileList.length === 0 || !onAttachmentsChange) return;
381
+ // Counted now: the input is cleared for the next pick, which empties its live FileList.
382
+ const picked = fileList.length;
368
383
  // Edit mode works on one image: a new one replaces it, and the edit starts over.
369
384
  const { attachments: next, unsupported } = await composerAttachmentsFromFiles(fileList, attachments, editing);
370
385
  unsupported.forEach((name) => onUnsupportedFile?.(name));
386
+ onEvent?.(composerEvents.mediaAttached(picked - unsupported.length, unsupported.length));
371
387
  if (next) onAttachmentsChange(next);
372
388
  }
373
389
 
@@ -421,6 +437,7 @@ export function Composer({
421
437
  note="(required)"
422
438
  hint={view.environmentHint}
423
439
  onEnhance={enhanceField("environment")}
440
+ onRevert={() => onEvent?.(composerEvents.enhanceReverted("environment"))}
424
441
  enhancing={enhancing && enhancingField === "environment"}
425
442
  disabled={disabled}
426
443
  />
@@ -432,6 +449,7 @@ export function Composer({
432
449
  heading="Character"
433
450
  note="(optional)"
434
451
  onEnhance={enhanceField("character")}
452
+ onRevert={() => onEvent?.(composerEvents.enhanceReverted("character"))}
435
453
  enhancing={enhancing && enhancingField === "character"}
436
454
  disabled={disabled}
437
455
  />
@@ -444,6 +462,7 @@ export function Composer({
444
462
  placeholder={view.placeholder}
445
463
  label={promptLabel}
446
464
  onEnhance={enhanceField("prompt")}
465
+ onRevert={() => onEvent?.(composerEvents.enhanceReverted("prompt"))}
447
466
  enhancing={enhancing}
448
467
  disabled={disabled}
449
468
  />
@@ -468,7 +487,10 @@ export function Composer({
468
487
  {menuItems.length > 0 && (
469
488
  <ComposerAttachMenu
470
489
  items={menuItems}
471
- onSelect={onAttachMenuSelect}
490
+ onSelect={(action) => {
491
+ if (action !== "add-media") onEvent?.(composerEvents.useCasePicked(action));
492
+ onAttachMenuSelect?.(action);
493
+ }}
472
494
  onAddMediaFiles={handleFilesSelected}
473
495
  imagesOnly={editing}
474
496
  disabled={disabled}
@@ -481,9 +503,12 @@ export function Composer({
481
503
  key={u.kind}
482
504
  useCase={u}
483
505
  onRemove={
484
- multiSelectUseCases
485
- ? onUseCasesChange && (() => onUseCasesChange(useCases.filter((x) => x.kind !== u.kind)))
486
- : onClearUseCase
506
+ (multiSelectUseCases ? onUseCasesChange : onClearUseCase) &&
507
+ (() => {
508
+ onEvent?.(composerEvents.useCaseRemoved(u));
509
+ if (multiSelectUseCases) onUseCasesChange?.(useCases.filter((x) => x.kind !== u.kind));
510
+ else onClearUseCase?.();
511
+ })
487
512
  }
488
513
  disabled={disabled}
489
514
  />
@@ -509,7 +534,10 @@ export function Composer({
509
534
  ? {
510
535
  label: "Auto-select model",
511
536
  value: autoSelect,
512
- onChange: (v) => onAutoSelectModelChange?.(v),
537
+ onChange: (v) => {
538
+ onEvent?.(composerEvents.autoSelectToggled(v));
539
+ onAutoSelectModelChange?.(v);
540
+ },
513
541
  }
514
542
  : undefined
515
543
  }
@@ -530,7 +558,10 @@ export function Composer({
530
558
  value={offeredAspect}
531
559
  triggerLabel={view.selectedAspect?.label ?? "Aspect ratio"}
532
560
  menuLabel="Aspect ratio"
533
- onSelect={(opt) => onAspectRatioChange?.(opt.id)}
561
+ onSelect={(opt) => {
562
+ onEvent?.(composerEvents.optionPicked("aspect_ratio", opt.id));
563
+ onAspectRatioChange?.(opt.id);
564
+ }}
534
565
  searchable={false}
535
566
  triggerVariant="text"
536
567
  disabled={disabled}
@@ -551,7 +582,10 @@ export function Composer({
551
582
  value={view.offeredVoice}
552
583
  triggerLabel={view.voiceTriggerLabel}
553
584
  menuLabel="Voice"
554
- onSelect={(opt) => onSpeechVoiceChange(opt.id)}
585
+ onSelect={(opt) => {
586
+ onEvent?.(composerEvents.optionPicked("voice", opt.id));
587
+ onSpeechVoiceChange(opt.id);
588
+ }}
555
589
  searchable={view.voiceOptions.length > view.searchableAt}
556
590
  triggerVariant="text"
557
591
  disabled={disabled}
@@ -566,7 +600,10 @@ export function Composer({
566
600
  multiple
567
601
  triggerLabel={view.genreTriggerLabel}
568
602
  menuLabel="Genre"
569
- onSelect={(opt) => onGenresChange(view.toggledGenres(opt.id))}
603
+ onSelect={(opt) => {
604
+ onEvent?.(composerEvents.optionPicked("genre", opt.id));
605
+ onGenresChange(view.toggledGenres(opt.id));
606
+ }}
570
607
  searchable={view.genreOptions.length > view.searchableAt}
571
608
  triggerVariant="text"
572
609
  disabled={disabled}
@@ -580,7 +617,10 @@ export function Composer({
580
617
  value={view.offeredFrameRate == null ? null : String(view.offeredFrameRate)}
581
618
  triggerLabel={view.offeredFrameRate == null ? "Frame rate" : `${view.offeredFrameRate}fps`}
582
619
  menuLabel="Frame rate"
583
- onSelect={(opt) => onFrameRateChange(Number(opt.id))}
620
+ onSelect={(opt) => {
621
+ onEvent?.(composerEvents.optionPicked("frame_rate", opt.id));
622
+ onFrameRateChange(Number(opt.id));
623
+ }}
584
624
  searchable={false}
585
625
  triggerVariant="text"
586
626
  disabled={disabled}
@@ -625,7 +665,7 @@ export function Composer({
625
665
  clickable regardless of `isSubmitDisabled` since a request
626
666
  already in flight isn't gated on the field having content. */}
627
667
  <div className="chai-composer__controls-end">
628
- {voiceInput && <VoiceButton voice={voice} disabled={disabled} />}
668
+ {voiceInput && <VoiceButton voice={voice} disabled={disabled} onStart={() => onEvent?.(composerEvents.voiceStarted())} />}
629
669
  {/* No submit while a recording is being made or transcribed: the
630
670
  person sends the transcript once it's in the prompt to check. */}
631
671
  {!(voiceInput && (voice.state.status === "recording" || voice.state.status === "transcribing")) && (
@@ -647,8 +687,14 @@ export function Composer({
647
687
  ariaDisabled: showStop ? "false" : submitting ? "true" : isSubmitDisabled ? "true" : "false",
648
688
  } as Record<string, unknown>)}
649
689
  onClick={() => {
650
- if (showStop) onAbort?.();
651
- else if (!isSubmitDisabled && !submitting) onSubmit(view.payload());
690
+ if (showStop) {
691
+ onEvent?.(composerEvents.stopped());
692
+ onAbort?.();
693
+ } else if (!isSubmitDisabled && !submitting) {
694
+ const payload = view.payload();
695
+ onEvent?.(composerEvents.submitted(payload, Boolean(submitError)));
696
+ onSubmit(payload);
697
+ }
652
698
  }}
653
699
  >
654
700
  <span slot="icon">
@@ -700,7 +746,7 @@ function VoiceWaveform({ levels, elapsedMs }: { levels: number[]; elapsedMs: num
700
746
  * the recording and transcribes it; while transcribing, a spinner, and a
701
747
  * click cancels.
702
748
  */
703
- function VoiceButton({ voice, disabled }: { voice: ReturnType<typeof useVoice>; disabled: boolean }) {
749
+ function VoiceButton({ voice, disabled, onStart }: { voice: ReturnType<typeof useVoice>; disabled: boolean; onStart: () => void }) {
704
750
  const { status } = voice.state;
705
751
  const label =
706
752
  status === "recording" ? "Stop recording and transcribe" : status === "transcribing" ? "Cancel transcription" : "Start voice input";
@@ -709,6 +755,7 @@ function VoiceButton({ voice, disabled }: { voice: ReturnType<typeof useVoice>;
709
755
  else if (status === "transcribing") voice.cancel();
710
756
  else {
711
757
  voice.dismiss();
758
+ onStart();
712
759
  void voice.start();
713
760
  }
714
761
  }
@@ -757,6 +804,7 @@ function PromptField({
757
804
  note,
758
805
  hint,
759
806
  onEnhance,
807
+ onRevert,
760
808
  enhancing,
761
809
  disabled,
762
810
  }: {
@@ -770,6 +818,8 @@ function PromptField({
770
818
  /** Shown under a headed field, e.g. why submit can't go yet. */
771
819
  hint?: string | null;
772
820
  onEnhance?: (value: string) => void;
821
+ /** After an Enhance, the button's "Revert to original" click. */
822
+ onRevert?: () => void;
773
823
  enhancing: boolean;
774
824
  disabled: boolean;
775
825
  }) {
@@ -844,6 +894,7 @@ function PromptField({
844
894
  setEnhancedValue(null);
845
895
  setOriginalValue(null);
846
896
  if (original != null) onChange(original);
897
+ onRevert?.();
847
898
  return;
848
899
  }
849
900
  setOriginalValue(value); // snapshot now — before the rewrite lands, for undo
@@ -6,8 +6,10 @@ import {
6
6
  formatCost,
7
7
  formatDuration,
8
8
  formatTokens,
9
+ resultCardEvents,
9
10
  resultModelLabel,
10
11
  shareMedia,
12
+ type ChaiEvent,
11
13
  type ModelOption,
12
14
  type Result,
13
15
  } from "@chai-ui/core";
@@ -83,6 +85,12 @@ export interface ResultCardProps {
83
85
  /** Configurable extra items in the "more" menu (reference: Figma "Result Card - More menu expanded") — entirely up to the host. Omit to hide the "more" button entirely. */
84
86
  moreActions?: ResultCardMoreAction[];
85
87
  disabled?: boolean;
88
+ /**
89
+ * Front-end analytics: a result appearing (done or failed), result
90
+ * actions, paging and opening the details side, one `ChaiEvent` each:
91
+ * `onEvent={(e) => posthog.capture(e.name, e.properties)}`.
92
+ */
93
+ onEvent?: (event: ChaiEvent) => void;
86
94
  }
87
95
 
88
96
  // --- Component ------------------------------------------------------------
@@ -98,8 +106,19 @@ export function ResultCard({
98
106
  onAction,
99
107
  moreActions,
100
108
  disabled,
109
+ onEvent,
101
110
  }: ResultCardProps) {
102
111
  const [activeIndex, setActiveIndex] = useState(0);
112
+ // Each result reports once, the first time it's shown done or failed.
113
+ const shownIds = useRef(new Set<string>());
114
+ useEffect(() => {
115
+ for (const r of results) {
116
+ if ((r.status === "done" || r.status === "error") && !shownIds.current.has(r.id)) {
117
+ shownIds.current.add(r.id);
118
+ onEvent?.(resultCardEvents.shown(r.status, r.output?.kind, results.length));
119
+ }
120
+ }
121
+ }, [results, onEvent]);
103
122
  const [flipped, setFlipped] = useState(false);
104
123
  const [moreOpen, setMoreOpen] = useState(false);
105
124
  const [copied, setCopied] = useState(false);
@@ -196,21 +215,28 @@ export function ResultCard({
196
215
  // known TS limitation, not stylistic), so every one of these closing
197
216
  // over `result` needs to be an expression instead.
198
217
  const goTo = (index: number) => {
199
- setActiveIndex(Math.max(0, Math.min(results.length - 1, index)));
218
+ const next = Math.max(0, Math.min(results.length - 1, index));
219
+ if (next !== clampedIndex) onEvent?.(resultCardEvents.paged(next, results.length));
220
+ setActiveIndex(next);
221
+ };
222
+
223
+ const act = (action: string, r: Result) => {
224
+ onEvent?.(resultCardEvents.action(action));
225
+ onAction(action, r);
200
226
  };
201
227
 
202
228
  const handleCopyPrompt = () => {
203
229
  navigator.clipboard?.writeText(prompt).catch(() => {});
204
230
  setCopied(true);
205
231
  setTimeout(() => setCopied(false), 1500);
206
- onAction("copy-prompt", result);
232
+ act("copy-prompt", result);
207
233
  };
208
234
 
209
235
  const handleDownload = async () => {
210
236
  if (result.output) {
211
237
  await downloadMedia(result.output.src, downloadFilename(result.id, result.output.kind, result.output.src));
212
238
  }
213
- onAction("download", result);
239
+ act("download", result);
214
240
  };
215
241
 
216
242
  const handleShare = async () => {
@@ -219,7 +245,7 @@ export function ResultCard({
219
245
  setLinkCopied(true);
220
246
  setTimeout(() => setLinkCopied(false), 1500);
221
247
  }
222
- onAction("share", result);
248
+ act("share", result);
223
249
  };
224
250
 
225
251
  const isVideo = result.output?.kind === "video";
@@ -284,7 +310,7 @@ export function ResultCard({
284
310
  label="Like"
285
311
  active={vote === "like"}
286
312
  disabled={disabled}
287
- onClick={() => onAction("like", result)}
313
+ onClick={() => act("like", result)}
288
314
  >
289
315
  <ThumbUpIcon />
290
316
  </ResultIconButton>
@@ -293,11 +319,11 @@ export function ResultCard({
293
319
  label="Dislike"
294
320
  active={vote === "dislike"}
295
321
  disabled={disabled}
296
- onClick={() => onAction("dislike", result)}
322
+ onClick={() => act("dislike", result)}
297
323
  >
298
324
  <ThumbDownIcon />
299
325
  </ResultIconButton>
300
- <ResultIconButton variant="pill" label="Retry" disabled={disabled} onClick={() => onAction("retry", result)}>
326
+ <ResultIconButton variant="pill" label="Retry" disabled={disabled} onClick={() => act("retry", result)}>
301
327
  <RefreshIcon />
302
328
  </ResultIconButton>
303
329
  {moreActions && moreActions.length > 0 && (
@@ -306,11 +332,14 @@ export function ResultCard({
306
332
  open={moreOpen}
307
333
  onOpenChange={setMoreOpen}
308
334
  disabled={disabled}
309
- onSelect={(action) => onAction(action.id, result)}
335
+ onSelect={(action) => act(action.id, result)}
310
336
  />
311
337
  )}
312
338
  </div>
313
- <ResultIconButton variant="round" label="Show details" disabled={disabled} onClick={() => setFlipped(true)}>
339
+ <ResultIconButton variant="round" label="Show details" disabled={disabled} onClick={() => {
340
+ onEvent?.(resultCardEvents.infoOpened());
341
+ setFlipped(true);
342
+ }}>
314
343
  <InfoIcon />
315
344
  </ResultIconButton>
316
345
  </div>
package/src/index.ts CHANGED
@@ -33,11 +33,19 @@ export {
33
33
  checkSuggestedModels,
34
34
  nextUseCases,
35
35
  combinesWithOthers,
36
+ buildJudgePrompt,
37
+ DEFAULT_EVALUATION_CHECKS,
38
+ composerEvents,
39
+ resultCardEvents,
36
40
  } from "@chai-ui/core";
37
41
  export type {
38
42
  DroppedMedia,
39
43
  EditRegion,
40
44
  Evaluation,
45
+ EvaluationCheck,
46
+ JudgePromptInput,
47
+ ChaiEvent,
48
+ ChaiEventName,
41
49
  GenerationEngine,
42
50
  GenerationUseCase,
43
51
  MediaAnalysisKind,