@chai-ui/react 0.6.1 → 0.7.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 +19 -3
- package/dist/Composer.d.ts +2 -2
- package/dist/Composer.d.ts.map +1 -1
- package/dist/Composer.js +49 -165
- package/dist/Composer.js.map +1 -1
- package/dist/EditCard.d.ts.map +1 -1
- package/dist/EditCard.js +16 -115
- package/dist/EditCard.js.map +1 -1
- package/dist/MediaAnalyzer.d.ts +2 -37
- package/dist/MediaAnalyzer.d.ts.map +1 -1
- package/dist/MediaAnalyzer.js +13 -141
- package/dist/MediaAnalyzer.js.map +1 -1
- package/dist/ResultCard.d.ts +13 -0
- package/dist/ResultCard.d.ts.map +1 -1
- package/dist/ResultCard.js +2 -48
- package/dist/ResultCard.js.map +1 -1
- package/package.json +3 -3
- package/src/Composer.tsx +64 -196
- package/src/EditCard.tsx +44 -123
- package/src/MediaAnalyzer.tsx +29 -162
- package/src/ResultCard.tsx +13 -38
- package/dist/media-actions.d.ts +0 -18
- package/dist/media-actions.d.ts.map +0 -1
- package/dist/media-actions.js +0 -56
- package/dist/media-actions.js.map +0 -1
- package/dist/regions.d.ts +0 -3
- package/dist/regions.d.ts.map +0 -1
- package/dist/regions.js +0 -7
- package/dist/regions.js.map +0 -1
- package/src/media-actions.ts +0 -54
- package/src/regions.ts +0 -7
package/dist/EditCard.js
CHANGED
|
@@ -1,57 +1,10 @@
|
|
|
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 { DEFAULT_MAX_REGIONS } from "@chai-ui/core";
|
|
3
|
+
import { clampPan, DEFAULT_MAX_REGIONS, downloadFilename, downloadMedia, EDIT_ZOOM_STEPS, editCardWidth, fitBox, freeRegionNumber, newRegion, panForKey, panForZoom, REGION_CORNERS, regionBoxForKey, regionBoxStyle, regionPopoverPosition, resizeBox, shareMedia, } from "@chai-ui/core";
|
|
4
4
|
import { Pagination } from "./primitives/Pagination.js";
|
|
5
5
|
import { AddIcon, CheckSymbolIcon, CloseSymbolIcon, DeleteIcon, DownloadIcon, ExpandIcon, ShareIcon, VisibilityIcon, VisibilityOffIcon, ZoomInIcon, ZoomOutIcon, } from "./icons.js";
|
|
6
|
-
import { downloadFilename, downloadMedia, shareMedia } from "./media-actions.js";
|
|
7
6
|
import { PageSlide, usePageSlide } from "./page-slide.js";
|
|
8
|
-
import { regionColor } from "./regions.js";
|
|
9
|
-
const ZOOM_STEPS = [1, 1.25, 1.5, 2, 3, 4];
|
|
10
|
-
const MIN_SIZE = 0.03;
|
|
11
|
-
const KEY_STEP = 0.01;
|
|
12
|
-
const KEY_STEP_LARGE = 0.05;
|
|
13
7
|
const clamp = (v, min, max) => Math.min(max, Math.max(min, v));
|
|
14
|
-
/** Keeps a box inside the image and at least the minimum size. */
|
|
15
|
-
function fitBox(box) {
|
|
16
|
-
const width = clamp(box.width, MIN_SIZE, 1);
|
|
17
|
-
const height = clamp(box.height, MIN_SIZE, 1);
|
|
18
|
-
return { x: clamp(box.x, 0, 1 - width), y: clamp(box.y, 0, 1 - height), width, height };
|
|
19
|
-
}
|
|
20
|
-
/** A box resized by dragging one corner; the opposite corner stays put. */
|
|
21
|
-
function resizeBox(box, corner, dx, dy) {
|
|
22
|
-
let left = box.x;
|
|
23
|
-
let top = box.y;
|
|
24
|
-
let right = box.x + box.width;
|
|
25
|
-
let bottom = box.y + box.height;
|
|
26
|
-
if (corner === "nw" || corner === "sw")
|
|
27
|
-
left = clamp(left + dx, 0, right - MIN_SIZE);
|
|
28
|
-
else
|
|
29
|
-
right = clamp(right + dx, left + MIN_SIZE, 1);
|
|
30
|
-
if (corner === "nw" || corner === "ne")
|
|
31
|
-
top = clamp(top + dy, 0, bottom - MIN_SIZE);
|
|
32
|
-
else
|
|
33
|
-
bottom = clamp(bottom + dy, top + MIN_SIZE, 1);
|
|
34
|
-
return { x: left, y: top, width: right - left, height: bottom - top };
|
|
35
|
-
}
|
|
36
|
-
/** Pan limits at a zoom level: the image always covers the viewport. */
|
|
37
|
-
function clampPan(pan, zoom, size) {
|
|
38
|
-
return {
|
|
39
|
-
x: clamp(pan.x, size.width - size.width * zoom, 0),
|
|
40
|
-
y: clamp(pan.y, size.height - size.height * zoom, 0),
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
function nextRegionId() {
|
|
44
|
-
return typeof crypto !== "undefined" && "randomUUID" in crypto
|
|
45
|
-
? crypto.randomUUID()
|
|
46
|
-
: `region-${Date.now()}-${Math.random().toString(36).slice(2)}`;
|
|
47
|
-
}
|
|
48
|
-
/** The lowest number no current region uses, so freed numbers (and colors) come back first. */
|
|
49
|
-
function freeNumber(regions) {
|
|
50
|
-
let n = 1;
|
|
51
|
-
while (regions.some((r) => r.number === n))
|
|
52
|
-
n += 1;
|
|
53
|
-
return n;
|
|
54
|
-
}
|
|
55
8
|
/**
|
|
56
9
|
* The image editing card: the person marks regions on the image, gives each
|
|
57
10
|
* one an instruction, and checks it into the Composer. It shares
|
|
@@ -114,7 +67,7 @@ export function EditCard({ versions, activeVersion, onActiveVersionChange, regio
|
|
|
114
67
|
}, []);
|
|
115
68
|
// A region being drawn takes a free number, even if the regions changed
|
|
116
69
|
// since it was started (so checking it in can't duplicate a number).
|
|
117
|
-
const shownDraft = draft && regions.some((r) => r.number === draft.number) ? { ...draft, number:
|
|
70
|
+
const shownDraft = draft && regions.some((r) => r.number === draft.number) ? { ...draft, number: freeRegionNumber(regions) } : draft;
|
|
118
71
|
const all = shownDraft ? [...regions, shownDraft] : regions;
|
|
119
72
|
const selected = all.find((r) => r.id === selectedId) ?? null;
|
|
120
73
|
const isDraft = selected != null && selected.id === draft?.id;
|
|
@@ -145,13 +98,7 @@ export function EditCard({ versions, activeVersion, onActiveVersionChange, regio
|
|
|
145
98
|
onRegionsChange(regions.map((r) => (r.id === id ? { ...r, box } : r)));
|
|
146
99
|
}
|
|
147
100
|
function addRegion() {
|
|
148
|
-
|
|
149
|
-
const viewW = 1 / zoom;
|
|
150
|
-
const viewH = 1 / zoom;
|
|
151
|
-
const centerX = size.width ? (-pan.x / (size.width * zoom)) + viewW / 2 : 0.5;
|
|
152
|
-
const centerY = size.height ? (-pan.y / (size.height * zoom)) + viewH / 2 : 0.5;
|
|
153
|
-
const box = fitBox({ x: centerX - (0.3 * viewW) / 2, y: centerY - (0.2 * viewH) / 2, width: 0.3 * viewW, height: 0.2 * viewH });
|
|
154
|
-
const region = { id: nextRegionId(), number: freeNumber(regions), box, prompt: "" };
|
|
101
|
+
const region = newRegion(regions, zoom, pan, size);
|
|
155
102
|
setDraft(region);
|
|
156
103
|
setHidden(false);
|
|
157
104
|
select(region);
|
|
@@ -184,14 +131,10 @@ export function EditCard({ versions, activeVersion, onActiveVersionChange, regio
|
|
|
184
131
|
onRegionsChange([]);
|
|
185
132
|
}
|
|
186
133
|
function zoomTo(next) {
|
|
187
|
-
|
|
188
|
-
const cx = size.width / 2;
|
|
189
|
-
const cy = size.height / 2;
|
|
190
|
-
const ratio = next / zoom;
|
|
191
|
-
setPan(clampPan({ x: cx - (cx - pan.x) * ratio, y: cy - (cy - pan.y) * ratio }, next, size));
|
|
134
|
+
setPan(panForZoom(pan, zoom, next, size));
|
|
192
135
|
setZoom(next);
|
|
193
136
|
}
|
|
194
|
-
const zoomIndex =
|
|
137
|
+
const zoomIndex = EDIT_ZOOM_STEPS.indexOf(zoom);
|
|
195
138
|
// --- Pointer: move and resize regions, pan the zoomed image ---
|
|
196
139
|
// Moves and releases bubble to the viewport, even while a region or
|
|
197
140
|
// handle holds the pointer capture, so the viewport handles them all.
|
|
@@ -237,19 +180,11 @@ export function EditCard({ versions, activeVersion, onActiveVersionChange, regio
|
|
|
237
180
|
}
|
|
238
181
|
// --- Keyboard ---
|
|
239
182
|
function handleRegionKey(e, region) {
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
ArrowLeft: [-step, 0],
|
|
243
|
-
ArrowRight: [step, 0],
|
|
244
|
-
ArrowUp: [0, -step],
|
|
245
|
-
ArrowDown: [0, step],
|
|
246
|
-
};
|
|
247
|
-
const delta = arrows[e.key];
|
|
248
|
-
if (delta) {
|
|
183
|
+
const box = regionBoxForKey(region.box, e.key, { shift: e.shiftKey, alt: e.altKey });
|
|
184
|
+
if (box) {
|
|
249
185
|
e.preventDefault();
|
|
250
186
|
e.stopPropagation();
|
|
251
|
-
|
|
252
|
-
setBox(region.id, e.shiftKey ? resizeBox(region.box, "se", dx, dy) : fitBox({ ...region.box, x: region.box.x + dx, y: region.box.y + dy }));
|
|
187
|
+
setBox(region.id, box);
|
|
253
188
|
}
|
|
254
189
|
else if (e.key === "Delete" || e.key === "Backspace") {
|
|
255
190
|
e.preventDefault();
|
|
@@ -263,13 +198,11 @@ export function EditCard({ versions, activeVersion, onActiveVersionChange, regio
|
|
|
263
198
|
function handleViewportKey(e) {
|
|
264
199
|
if (e.target !== e.currentTarget || zoom <= 1)
|
|
265
200
|
return;
|
|
266
|
-
const
|
|
267
|
-
|
|
268
|
-
const delta = arrows[e.key];
|
|
269
|
-
if (!delta)
|
|
201
|
+
const next = panForKey(pan, e.key, zoom, size);
|
|
202
|
+
if (!next)
|
|
270
203
|
return;
|
|
271
204
|
e.preventDefault();
|
|
272
|
-
setPan(
|
|
205
|
+
setPan(next);
|
|
273
206
|
}
|
|
274
207
|
function handleFieldKey(e) {
|
|
275
208
|
if (e.key === "Enter" && !e.shiftKey) {
|
|
@@ -302,57 +235,25 @@ export function EditCard({ versions, activeVersion, onActiveVersionChange, regio
|
|
|
302
235
|
};
|
|
303
236
|
// --- Layout ---
|
|
304
237
|
// The field sits above its region, or below it when there isn't room above.
|
|
305
|
-
const popover = selected && !hidden && size.width
|
|
306
|
-
? (() => {
|
|
307
|
-
const left = selected.box.x * size.width * zoom + pan.x;
|
|
308
|
-
const top = selected.box.y * size.height * zoom + pan.y;
|
|
309
|
-
const bottom = (selected.box.y + selected.box.height) * size.height * zoom + pan.y;
|
|
310
|
-
// Below only when it clears the controls along the image's bottom edge.
|
|
311
|
-
const reserved = versions.length > 1 ? 100 : 56;
|
|
312
|
-
const fitsBelow = bottom + 8 + POPOVER_HEIGHT <= size.height - reserved;
|
|
313
|
-
const above = top > POPOVER_HEIGHT + 16 || !fitsBelow;
|
|
314
|
-
return {
|
|
315
|
-
left: clamp(left, 8, Math.max(8, size.width - POPOVER_WIDTH - 8)),
|
|
316
|
-
top: above ? Math.max(top - 8, POPOVER_HEIGHT + 8) : bottom + 8,
|
|
317
|
-
above,
|
|
318
|
-
};
|
|
319
|
-
})()
|
|
320
|
-
: null;
|
|
238
|
+
const popover = selected && !hidden && size.width ? regionPopoverPosition(selected.box, zoom, pan, size, versions.length > 1) : null;
|
|
321
239
|
if (!version)
|
|
322
240
|
return null;
|
|
323
|
-
|
|
324
|
-
// maxWidth × maxHeight with the image's shape kept.
|
|
325
|
-
// With neither, the card fills the box.
|
|
326
|
-
const baseWidth = scale != null && natural ? natural.width * scale : (width ?? maxWidth);
|
|
327
|
-
const heightCap = natural && natural.height > 0 ? (maxHeight * natural.width) / natural.height : Infinity;
|
|
328
|
-
const cardWidth = Math.round(Math.min(baseWidth, maxWidth, heightCap));
|
|
241
|
+
const cardWidth = editCardWidth(natural, { width, scale, maxWidth, maxHeight });
|
|
329
242
|
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "chai-edit-card", style: { "--chai-edit-card-width": `${cardWidth}px` }, children: [_jsxs("div", { ref: viewportRef, className: `chai-edit-card__viewport${zoom > 1 ? " chai-edit-card__viewport--zoomed" : ""}`, role: "group", "aria-label": zoom > 1 ? `Image, zoomed to ${Math.round(zoom * 100)}%. Arrow keys move around.` : "Image", tabIndex: zoom > 1 ? 0 : undefined, onPointerDown: startPan, onPointerMove: handlePointerMove, onPointerUp: handlePointerUp, onPointerCancel: handlePointerUp, onKeyDown: handleViewportKey, children: [_jsx(PageSlide, { slide: slide, onEnd: endSlide, children: _jsxs("div", { className: "chai-edit-card__layer", style: { transform: `translate(${pan.x}px, ${pan.y}px) scale(${zoom})`, "--chai-edit-zoom": zoom }, children: [version.src || version.from ? (_jsx("img", { className: "chai-edit-card__image", src: version.src ?? version.from, alt: alt, draggable: false, onLoad: (e) => setNatural({ width: e.currentTarget.naturalWidth, height: e.currentTarget.naturalHeight }) })) : (_jsx("div", { className: "chai-edit-card__placeholder" })), !hidden &&
|
|
330
243
|
version.regions.map((r) => (_jsx("span", { className: "chai-edit-card__region chai-edit-card__region--applied", style: boxStyle(r), "aria-hidden": "true" }, `applied-${r.id}`))), !hidden &&
|
|
331
244
|
ready &&
|
|
332
|
-
all.map((r) => (_jsx(RegionShape, { region: r, selected: r.id === selectedId, draft: r.id === draft?.id, disabled: disabled, onDragStart: startRegionDrag, onSelect: select, onKeyDown: handleRegionKey }, r.id)))] }) }), version.status !== "done" && (_jsx("div", { className: "chai-edit-card__status", role: "status", children: version.status === "queued" || version.status === "running" ? (_jsx("span", { className: "chai-edit-card__spinner", role: "img", "aria-label": "Editing" })) : (_jsx("p", { className: "chai-edit-card__status-text", children: version.status === "cancelled" ? "Stopped" : (version.error ?? "Something went wrong.") })) })), _jsxs("div", { className: "chai-card-top chai-card-top--start", onPointerDown: (e) => e.stopPropagation(), children: [_jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Zoom in", title: "Zoom in", disabled: !ready || zoomIndex >=
|
|
245
|
+
all.map((r) => (_jsx(RegionShape, { region: r, selected: r.id === selectedId, draft: r.id === draft?.id, disabled: disabled, onDragStart: startRegionDrag, onSelect: select, onKeyDown: handleRegionKey }, r.id)))] }) }), version.status !== "done" && (_jsx("div", { className: "chai-edit-card__status", role: "status", children: version.status === "queued" || version.status === "running" ? (_jsx("span", { className: "chai-edit-card__spinner", role: "img", "aria-label": "Editing" })) : (_jsx("p", { className: "chai-edit-card__status-text", children: version.status === "cancelled" ? "Stopped" : (version.error ?? "Something went wrong.") })) })), _jsxs("div", { className: "chai-card-top chai-card-top--start", onPointerDown: (e) => e.stopPropagation(), children: [_jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Zoom in", title: "Zoom in", disabled: !ready || zoomIndex >= EDIT_ZOOM_STEPS.length - 1, onClick: () => zoomTo(EDIT_ZOOM_STEPS[zoomIndex + 1]), children: _jsx(ZoomInIcon, {}) }), _jsxs("span", { className: "chai-edit-card__zoom-level", "aria-live": "polite", children: [Math.round(zoom * 100), "%"] }), _jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Zoom out", title: "Zoom out", disabled: !ready || zoomIndex <= 0, onClick: () => zoomTo(EDIT_ZOOM_STEPS[zoomIndex - 1]), children: _jsx(ZoomOutIcon, {}) })] }), _jsxs("div", { className: "chai-card-top chai-card-top--end", onPointerDown: (e) => e.stopPropagation(), children: [_jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Download", title: "Download", disabled: disabled || !ready, onClick: handleDownload, children: _jsx(DownloadIcon, {}) }), _jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": linkCopied ? "Link copied" : "Share", title: linkCopied ? "Link copied" : "Share", disabled: disabled || !ready, onClick: handleShare, children: linkCopied ? _jsx(CheckSymbolIcon, {}) : _jsx(ShareIcon, {}) }), _jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Expand", title: "Expand", disabled: !ready, onClick: () => setExpanded(true), children: _jsx(ExpandIcon, {}) })] }), paginated && hasImage && _jsx("div", { className: "chai-card-fade" }), _jsx("div", { className: "chai-card-bottom", onPointerDown: (e) => e.stopPropagation(), children: _jsxs("div", { className: "chai-card-actions", children: [_jsxs("div", { className: "chai-card-chips", children: [_jsxs("button", { type: "button", className: "chai-card-chip", disabled: disabled || !ready || atCap, title: atCap ? `This model takes up to ${maxRegions} regions` : undefined, onClick: addRegion, children: [_jsx(AddIcon, {}), "New region"] }), _jsxs("button", { type: "button", className: "chai-card-chip", disabled: disabled || all.length === 0, onClick: clearAll, children: [_jsx(CloseSymbolIcon, {}), "Clear regions"] })] }), _jsx("button", { type: "button", className: "chai-card-round", "aria-label": hidden ? "Show regions" : "Hide regions", title: hidden ? "Show regions" : "Hide regions", disabled: !anyRegions, onClick: () => {
|
|
333
246
|
setHidden(!hidden);
|
|
334
247
|
select(null);
|
|
335
248
|
}, children: hidden ? _jsx(VisibilityOffIcon, {}) : _jsx(VisibilityIcon, {}) })] }) }), popover && selected && (_jsxs("div", { className: `chai-edit-card__popover${popover.above ? " chai-edit-card__popover--above" : ""}`, style: { left: popover.left, top: popover.top }, role: "dialog", "aria-label": `Region ${selected.number}`, onPointerDown: (e) => e.stopPropagation(), children: [_jsxs("div", { className: "chai-edit-card__popover-header", children: [_jsxs("span", { className: "chai-edit-card__popover-title", children: ["Region ", selected.number] }), _jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Add region to prompt", title: "Add region to prompt", disabled: disabled || !canCheck, onClick: check, children: _jsx(CheckSymbolIcon, {}) }), _jsx("button", { type: "button", className: "chai-card-top-btn", "aria-label": "Delete region", title: "Delete region", disabled: disabled, onClick: remove, children: _jsx(DeleteIcon, {}) })] }), _jsx("textarea", { ref: fieldRef, className: "chai-edit-card__field", value: text, rows: 1, placeholder: "What should change here?", "aria-label": `Instruction for region ${selected.number}`, disabled: disabled, onChange: (e) => setText(e.target.value), onKeyDown: handleFieldKey })] }))] }), paginated && (_jsx("div", { className: `chai-card-pager-bar${hasImage ? " chai-card-pager-bar--over-media" : ""}`, children: _jsx(Pagination, { count: versions.length, index: index, onChange: onActiveVersionChange, label: "Versions", itemLabel: "Version", disabled: disabled }) }))] }), expanded && version.src && (_jsx(ExpandedImage, { src: version.src, alt: alt, onClose: () => setExpanded(false) }))] }));
|
|
336
249
|
}
|
|
337
|
-
const POPOVER_WIDTH = 220;
|
|
338
|
-
/** A typical height for the instruction panel (title row and a two-line field), for placing it. */
|
|
339
|
-
const POPOVER_HEIGHT = 96;
|
|
340
|
-
const CORNERS = ["nw", "ne", "sw", "se"];
|
|
341
250
|
/** One region on the image: a button to select, move or delete it, its number badge, and corner handles while selected. */
|
|
342
251
|
function RegionShape({ region, selected, draft, disabled, onDragStart, onSelect, onKeyDown, }) {
|
|
343
252
|
const name = `Region ${region.number}`;
|
|
344
253
|
return (_jsxs("div", { className: `chai-edit-card__region${selected ? " chai-edit-card__region--selected" : ""}${draft ? " chai-edit-card__region--draft" : ""}`, style: boxStyle(region), children: [_jsx("button", { type: "button", className: "chai-edit-card__region-body", "aria-label": `${name}${region.prompt ? `: ${region.prompt}` : ", no instruction yet"}. Arrow keys move it, Shift and arrow keys resize it.`, "aria-pressed": selected, disabled: disabled, onPointerDown: (e) => onDragStart(e, region, "move"), onClick: () => onSelect(region), onKeyDown: (e) => onKeyDown(e, region) }), _jsx("span", { className: "chai-edit-card__badge", "aria-hidden": "true", children: region.number }), selected &&
|
|
345
|
-
|
|
346
|
-
}
|
|
347
|
-
function boxStyle(r) {
|
|
348
|
-
return {
|
|
349
|
-
left: `${r.box.x * 100}%`,
|
|
350
|
-
top: `${r.box.y * 100}%`,
|
|
351
|
-
width: `${r.box.width * 100}%`,
|
|
352
|
-
height: `${r.box.height * 100}%`,
|
|
353
|
-
"--chai-region-color": regionColor(r.number),
|
|
354
|
-
};
|
|
254
|
+
REGION_CORNERS.map((corner) => (_jsx("span", { className: `chai-edit-card__handle chai-edit-card__handle--${corner}`, "aria-hidden": "true", onPointerDown: (e) => onDragStart(e, region, corner) }, corner)))] }));
|
|
355
255
|
}
|
|
256
|
+
const boxStyle = (r) => regionBoxStyle(r);
|
|
356
257
|
/** The full-size image in a modal dialog: focus moves in, Escape closes, and focus returns to Expand. */
|
|
357
258
|
function ExpandedImage({ src, alt, onClose }) {
|
|
358
259
|
const closeRef = useRef(null);
|
package/dist/EditCard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditCard.js","sourceRoot":"","sources":["../src/EditCard.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EditCard.js","sourceRoot":"","sources":["../src/EditCard.tsx"],"names":[],"mappings":"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"}
|
package/dist/MediaAnalyzer.d.ts
CHANGED
|
@@ -1,42 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type {
|
|
3
|
-
import type { MediaAnalysisPromptLength } from "@chai-ui/core";
|
|
2
|
+
import type { ModelOption, MediaKind, MediaAnalysisPromptLength } from "@chai-ui/core";
|
|
4
3
|
import type { MediaAnalyzerAttachment, MediaAnalyzerSubmitPayload } from "@chai-ui/core";
|
|
5
|
-
export type
|
|
6
|
-
/**
|
|
7
|
-
* How many attachments of each kind an analysis can hold at once. Image
|
|
8
|
-
* defaults to 5 (a sequence/series reads as one analysis); video and audio
|
|
9
|
-
* default to 1 — there's no equivalent "a few short clips" case for either,
|
|
10
|
-
* and multiple would each need their own kind-specific model/template
|
|
11
|
-
* anyway. Only one *kind* is ever active per analysis (see
|
|
12
|
-
* `nextMediaAnalyzerAttachments`'s own comment) — these caps only bound how
|
|
13
|
-
* many of that one kind can pile up before the drop zone stops accepting
|
|
14
|
-
* more.
|
|
15
|
-
*/
|
|
16
|
-
export declare const DEFAULT_MAX_ATTACHMENTS_BY_KIND: Record<MediaKind, number>;
|
|
17
|
-
/**
|
|
18
|
-
* Applies one newly-read file to the current attachment list (§3 principle
|
|
19
|
-
* 3, "derive intent, don't demand it" — extended here to multiple files of
|
|
20
|
-
* one kind). Only one media *kind* exists per analysis: dropping a kind
|
|
21
|
-
* that doesn't match what's already attached replaces the whole list
|
|
22
|
-
* (reference: the design spec — "there can only be one media
|
|
23
|
-
* type per analysis... the video thumbnail will replace the image"), never
|
|
24
|
-
* merges the two. Within one kind, video/audio are single-slot (a second
|
|
25
|
-
* drop replaces the first — there's nothing to "add" to), while image fills
|
|
26
|
-
* up to `max` and then silently stops accepting more of the same kind (the
|
|
27
|
-
* drop zone's own disabled-looking state is what explains why, not a
|
|
28
|
-
* rejected-file dialog for something this low-stakes).
|
|
29
|
-
*/
|
|
30
|
-
export declare function nextMediaAnalyzerAttachments(current: MediaAnalyzerAttachment[], incoming: DroppedMedia, maxByKind?: Record<MediaKind, number>): MediaAnalyzerAttachment[];
|
|
31
|
-
/**
|
|
32
|
-
* True once a same-kind drop would actually be rejected outright, i.e. the
|
|
33
|
-
* drop zone should show its disabled "maximum added" look. Only ever true
|
|
34
|
-
* for image: video/audio are single-slot, so a same-kind drop *always*
|
|
35
|
-
* succeeds by replacing the one already there (see
|
|
36
|
-
* `nextMediaAnalyzerAttachments`'s own comment) — there's no "blocked"
|
|
37
|
-
* state to show for either, just the normal "ready to replace" one.
|
|
38
|
-
*/
|
|
39
|
-
export declare function isMediaAnalyzerAtCap(current: MediaAnalyzerAttachment[], maxByKind?: Record<MediaKind, number>): boolean;
|
|
4
|
+
export { DEFAULT_MAX_ATTACHMENTS_BY_KIND, isMediaAnalyzerAtCap, nextMediaAnalyzerAttachments, type MediaAnalyzerAttachment, type MediaAnalyzerSubmitPayload, } from "@chai-ui/core";
|
|
40
5
|
export interface MediaAnalyzerProps {
|
|
41
6
|
attachments: MediaAnalyzerAttachment[];
|
|
42
7
|
onAttachmentsChange: (next: MediaAnalyzerAttachment[]) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaAnalyzer.d.ts","sourceRoot":"","sources":["../src/MediaAnalyzer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"MediaAnalyzer.d.ts","sourceRoot":"","sources":["../src/MediaAnalyzer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAGvF,OAAO,KAAK,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAEzF,OAAO,EACL,+BAA+B,EAC/B,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,GAChC,MAAM,eAAe,CAAC;AAUvB,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,uBAAuB,EAAE,CAAC;IACvC,mBAAmB,EAAE,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAK,IAAI,CAAC;IAC/D,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,oBAAoB,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjD,wEAAwE;IACxE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACzD;;;OAGG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3C;;;;;;;OAOG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,uBAAuB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD;;;;;;;;OAQG;IACH,YAAY,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC/C,oBAAoB,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACjE,mBAAmB,EAAE;QAAE,KAAK,EAAE,yBAAyB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,CAAC,OAAO,EAAE,0BAA0B,KAAK,IAAI,CAAC;IACxD,oMAAoM;IACpM,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,aAAa,CAAC,EAC5B,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,oBAAsD,EACtD,MAAW,EACX,YAAwC,EACxC,OAAO,EACP,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,UAAU,EACV,WAAW,EACX,QAAQ,EACR,OAAO,GACR,EAAE,kBAAkB,qBAkMpB"}
|
package/dist/MediaAnalyzer.js
CHANGED
|
@@ -3,9 +3,10 @@ import { createComponent } from "@lit/react";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { useEffect, useRef, useState } from "react";
|
|
5
5
|
import { MdFab } from "@material/web/fab/fab.js";
|
|
6
|
-
import { SUGGESTED_ANALYSIS_MODELS } from "@chai-ui/core";
|
|
6
|
+
import { DEFAULT_MAX_ATTACHMENTS_BY_KIND, isMediaAnalyzerAtCap, mediaAnalyzerModelSections, nextMediaAnalyzerAttachments, PROMPT_LENGTH_HINT, readMediaFiles, replacedNote, SUGGESTED_ANALYSIS_MODELS, } from "@chai-ui/core";
|
|
7
7
|
import { SearchMenu } from "./primitives/SearchMenu.js";
|
|
8
8
|
import { StopIcon } from "./icons.js";
|
|
9
|
+
export { DEFAULT_MAX_ATTACHMENTS_BY_KIND, isMediaAnalyzerAtCap, nextMediaAnalyzerAttachments, } from "@chai-ui/core";
|
|
9
10
|
/** See primitives/Toggle.tsx for why `createComponent` is used instead of raw JSX on custom-element tags. */
|
|
10
11
|
const MdFabElement = createComponent({
|
|
11
12
|
react: React,
|
|
@@ -13,87 +14,6 @@ const MdFabElement = createComponent({
|
|
|
13
14
|
elementClass: MdFab,
|
|
14
15
|
events: { onClick: "click" },
|
|
15
16
|
});
|
|
16
|
-
const ACCEPTED_KINDS = ["image", "video", "audio"];
|
|
17
|
-
function detectKind(file) {
|
|
18
|
-
const prefix = file.type.split("/")[0];
|
|
19
|
-
return ACCEPTED_KINDS.find((k) => k === prefix);
|
|
20
|
-
}
|
|
21
|
-
function nextAttachmentId() {
|
|
22
|
-
return typeof crypto !== "undefined" && "randomUUID" in crypto
|
|
23
|
-
? crypto.randomUUID()
|
|
24
|
-
: `attachment-${Date.now()}-${Math.random().toString(36).slice(2)}`;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* How many attachments of each kind an analysis can hold at once. Image
|
|
28
|
-
* defaults to 5 (a sequence/series reads as one analysis); video and audio
|
|
29
|
-
* default to 1 — there's no equivalent "a few short clips" case for either,
|
|
30
|
-
* and multiple would each need their own kind-specific model/template
|
|
31
|
-
* anyway. Only one *kind* is ever active per analysis (see
|
|
32
|
-
* `nextMediaAnalyzerAttachments`'s own comment) — these caps only bound how
|
|
33
|
-
* many of that one kind can pile up before the drop zone stops accepting
|
|
34
|
-
* more.
|
|
35
|
-
*/
|
|
36
|
-
export const DEFAULT_MAX_ATTACHMENTS_BY_KIND = {
|
|
37
|
-
image: 5,
|
|
38
|
-
video: 1,
|
|
39
|
-
audio: 1,
|
|
40
|
-
// `MediaKind`'s fourth member — text is output, never what a drop zone
|
|
41
|
-
// itself detects (`detectKind` only ever
|
|
42
|
-
// returns image/video/audio) — unreachable here, present only so this
|
|
43
|
-
// stays a total map over the real type instead of a partial one.
|
|
44
|
-
text: 0,
|
|
45
|
-
};
|
|
46
|
-
/**
|
|
47
|
-
* Applies one newly-read file to the current attachment list (§3 principle
|
|
48
|
-
* 3, "derive intent, don't demand it" — extended here to multiple files of
|
|
49
|
-
* one kind). Only one media *kind* exists per analysis: dropping a kind
|
|
50
|
-
* that doesn't match what's already attached replaces the whole list
|
|
51
|
-
* (reference: the design spec — "there can only be one media
|
|
52
|
-
* type per analysis... the video thumbnail will replace the image"), never
|
|
53
|
-
* merges the two. Within one kind, video/audio are single-slot (a second
|
|
54
|
-
* drop replaces the first — there's nothing to "add" to), while image fills
|
|
55
|
-
* up to `max` and then silently stops accepting more of the same kind (the
|
|
56
|
-
* drop zone's own disabled-looking state is what explains why, not a
|
|
57
|
-
* rejected-file dialog for something this low-stakes).
|
|
58
|
-
*/
|
|
59
|
-
export function nextMediaAnalyzerAttachments(current, incoming, maxByKind = DEFAULT_MAX_ATTACHMENTS_BY_KIND) {
|
|
60
|
-
const existingKind = current[0]?.kind;
|
|
61
|
-
const withId = { ...incoming, id: nextAttachmentId() };
|
|
62
|
-
if (!existingKind || existingKind !== incoming.kind)
|
|
63
|
-
return [withId];
|
|
64
|
-
if (incoming.kind === "image") {
|
|
65
|
-
if (current.length >= (maxByKind.image ?? DEFAULT_MAX_ATTACHMENTS_BY_KIND.image))
|
|
66
|
-
return current;
|
|
67
|
-
return [...current, withId];
|
|
68
|
-
}
|
|
69
|
-
// video/audio: single slot, a same-kind drop always replaces it.
|
|
70
|
-
return [withId];
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* True once a same-kind drop would actually be rejected outright, i.e. the
|
|
74
|
-
* drop zone should show its disabled "maximum added" look. Only ever true
|
|
75
|
-
* for image: video/audio are single-slot, so a same-kind drop *always*
|
|
76
|
-
* succeeds by replacing the one already there (see
|
|
77
|
-
* `nextMediaAnalyzerAttachments`'s own comment) — there's no "blocked"
|
|
78
|
-
* state to show for either, just the normal "ready to replace" one.
|
|
79
|
-
*/
|
|
80
|
-
export function isMediaAnalyzerAtCap(current, maxByKind = DEFAULT_MAX_ATTACHMENTS_BY_KIND) {
|
|
81
|
-
if (current[0]?.kind !== "image")
|
|
82
|
-
return false;
|
|
83
|
-
return current.length >= (maxByKind.image ?? DEFAULT_MAX_ATTACHMENTS_BY_KIND.image);
|
|
84
|
-
}
|
|
85
|
-
const KIND_LABEL = {
|
|
86
|
-
image: "Image",
|
|
87
|
-
video: "Video",
|
|
88
|
-
audio: "Audio",
|
|
89
|
-
text: "Text", // unreachable — see DEFAULT_MAX_ATTACHMENTS_BY_KIND's own comment
|
|
90
|
-
};
|
|
91
|
-
/** Clarifies what "Terse"/"Concise"/"Detailed" actually mean in the "Prompt length" menu's own option rows — design spec, not core prompt data (it's UI copy, not sent to any model), so it lives here rather than in media-analysis-to-prompt.prompts.ts. */
|
|
92
|
-
const PROMPT_LENGTH_HINT = {
|
|
93
|
-
terse: "short",
|
|
94
|
-
concise: "moderate",
|
|
95
|
-
detailed: "long",
|
|
96
|
-
};
|
|
97
17
|
export function MediaAnalyzer({ attachments, onAttachmentsChange, onUnsupportedFile, maxAttachmentsByKind = DEFAULT_MAX_ATTACHMENTS_BY_KIND, models = [], modelsByKind = SUGGESTED_ANALYSIS_MODELS, modelId, onModelChange, autoSelectModel, onAutoSelectModelChange, promptLength, onPromptLengthChange, promptLengthOptions, disabled, submitting, submitError, onSubmit, onAbort, }) {
|
|
98
18
|
const inputRef = useRef(null);
|
|
99
19
|
const kind = attachments[0]?.kind;
|
|
@@ -109,65 +29,23 @@ export function MediaAnalyzer({ attachments, onAttachmentsChange, onUnsupportedF
|
|
|
109
29
|
// attachments change some other way.
|
|
110
30
|
const [replaced, setReplaced] = useState(null);
|
|
111
31
|
const isDragActive = dragDepth > 0;
|
|
112
|
-
/**
|
|
113
|
-
|
|
114
|
-
* `nextMediaAnalyzerAttachments` in drop order and commits a single final
|
|
115
|
-
* result — not one `onAttachmentsChange` call per file as each
|
|
116
|
-
* `FileReader` happens to finish. Multiple files read concurrently
|
|
117
|
-
* resolve in whatever order the browser gets to them; a call per file
|
|
118
|
-
* would have each one apply itself on top of the *pre-drop* `attachments`
|
|
119
|
-
* closure instead of the previous file's own result, so dropping 3 images
|
|
120
|
-
* at once onto an empty zone could easily end up with just 1 attached
|
|
121
|
-
* instead of 3 (last write wins) — same failure shape as Composer.tsx's
|
|
122
|
-
* own `handleFilesSelected`, which this mirrors for exactly that reason.
|
|
123
|
-
*/
|
|
124
|
-
function handleFiles(fileList) {
|
|
32
|
+
/** Reads every file first, then applies them in drop order and commits once. */
|
|
33
|
+
async function handleFiles(fileList) {
|
|
125
34
|
if (!fileList || fileList.length === 0)
|
|
126
35
|
return;
|
|
127
|
-
const
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
const added = next.filter((n) => !attachments.some((a) => a.id === n.id));
|
|
136
|
-
setReplaced(removed.length > 0 && added.length > 0 ? { note: replacedNote(removed, added), for: next } : null);
|
|
137
|
-
onAttachmentsChange(next);
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
files.forEach((file) => {
|
|
141
|
-
const fileKind = detectKind(file);
|
|
142
|
-
if (!fileKind) {
|
|
143
|
-
onUnsupportedFile?.(file.name);
|
|
144
|
-
settle();
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
const reader = new FileReader();
|
|
148
|
-
reader.onload = () => {
|
|
149
|
-
resolved.push({ src: String(reader.result), kind: fileKind, name: file.name, size: file.size });
|
|
150
|
-
settle();
|
|
151
|
-
};
|
|
152
|
-
reader.onerror = () => {
|
|
153
|
-
onUnsupportedFile?.(file.name);
|
|
154
|
-
settle();
|
|
155
|
-
};
|
|
156
|
-
reader.readAsDataURL(file);
|
|
157
|
-
});
|
|
36
|
+
const { media, unsupported } = await readMediaFiles(fileList);
|
|
37
|
+
unsupported.forEach((name) => onUnsupportedFile?.(name));
|
|
38
|
+
if (media.length === 0)
|
|
39
|
+
return;
|
|
40
|
+
const next = media.reduce((acc, m) => nextMediaAnalyzerAttachments(acc, m, maxAttachmentsByKind), attachments);
|
|
41
|
+
const note = replacedNote(attachments, next);
|
|
42
|
+
setReplaced(note ? { note, for: next } : null);
|
|
43
|
+
onAttachmentsChange(next);
|
|
158
44
|
}
|
|
159
45
|
function handleRemove(id) {
|
|
160
46
|
onAttachmentsChange(attachments.filter((a) => a.id !== id));
|
|
161
47
|
}
|
|
162
|
-
const
|
|
163
|
-
? (modelsByKind[kind] ?? models).map((m) => ({ id: m.id, label: m.label }))
|
|
164
|
-
: [];
|
|
165
|
-
const sections = kind
|
|
166
|
-
? [{ label: KIND_LABEL[kind], options: modelOptions }]
|
|
167
|
-
: ["image", "video", "audio"].map((k) => ({
|
|
168
|
-
label: KIND_LABEL[k],
|
|
169
|
-
options: (modelsByKind[k] ?? []).map((m) => ({ id: m.id, label: m.label })),
|
|
170
|
-
}));
|
|
48
|
+
const sections = mediaAnalyzerModelSections(kind, modelsByKind, models);
|
|
171
49
|
// Looked up across every section (not just `modelOptions`, which is empty
|
|
172
50
|
// until a kind is known) — a model picked while the menu still shows all
|
|
173
51
|
// three kinds' sections (no attachment yet) must still resolve to a real
|
|
@@ -235,12 +113,6 @@ function MediaAnalyzerThumbnail({ attachment, onRemove, }) {
|
|
|
235
113
|
// --- Icons ---------------------------------------------------------------
|
|
236
114
|
// Same "trace and inline as a currentColor component" convention Composer.tsx
|
|
237
115
|
// documents — icons aren't shared across files yet in this codebase.
|
|
238
|
-
/** "Replaced 2 images with clip.wav." */
|
|
239
|
-
function replacedNote(removed, added) {
|
|
240
|
-
const name = (a) => a.name ?? KIND_LABEL[a.kind].toLowerCase();
|
|
241
|
-
const describe = (list) => list.length === 1 ? name(list[0]) : `${list.length} ${KIND_LABEL[list[0].kind].toLowerCase()}s`;
|
|
242
|
-
return `Replaced ${describe(removed)} with ${describe(added)}.`;
|
|
243
|
-
}
|
|
244
116
|
function ArrowForwardIcon() {
|
|
245
117
|
return (_jsx("svg", { viewBox: "0 -960 960 960", "aria-hidden": "true", children: _jsx("path", { d: "M686-450H160v-60h526L438-758l42-42 320 320-320 320-42-42 248-248Z", fill: "currentColor" }) }));
|
|
246
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaAnalyzer.js","sourceRoot":"","sources":["../src/MediaAnalyzer.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MediaAnalyzer.js","sourceRoot":"","sources":["../src/MediaAnalyzer.tsx"],"names":[],"mappings":"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"}
|