@hanzo/ui 8.27.79 → 8.27.82
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/dist/backends/gui/video-player.cjs +2 -0
- package/dist/backends/gui/video-player.d.ts.map +1 -1
- package/dist/backends/gui/video-player.js +2 -0
- package/dist/backends/gui/video-player.js.map +1 -1
- package/dist/gallery.html +14 -14
- package/dist/gui-config.cjs +1 -1
- package/dist/gui-config.js +1 -1
- package/dist/models/ModelPicker.cjs +73 -146
- package/dist/models/ModelPicker.d.ts.map +1 -1
- package/dist/models/ModelPicker.js +45 -151
- package/dist/models/ModelPicker.js.map +1 -1
- package/dist/models/ModelPickerMenu.cjs +165 -0
- package/dist/models/ModelPickerMenu.d.ts +35 -0
- package/dist/models/ModelPickerMenu.d.ts.map +1 -0
- package/dist/models/ModelPickerMenu.js +163 -0
- package/dist/models/ModelPickerMenu.js.map +1 -0
- package/dist/models/catalog.cjs +6 -23
- package/dist/models/catalog.d.ts +1 -8
- package/dist/models/catalog.d.ts.map +1 -1
- package/dist/models/catalog.js +3 -21
- package/dist/models/catalog.js.map +1 -1
- package/dist/models/research.cjs +25 -0
- package/dist/models/research.d.ts +15 -0
- package/dist/models/research.d.ts.map +1 -0
- package/dist/models/research.js +22 -0
- package/dist/models/research.js.map +1 -0
- package/dist/styles.css +9 -9
- package/dist/theme.css +6 -6
- package/package.json +2 -2
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
'use client';"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ModelPickerMenu = ModelPickerMenu;
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
/**
|
|
7
|
+
* The open half of ModelPicker: the popover (a bottom sheet on a phone) and in
|
|
8
|
+
* it the search, the virtualised list and the research note. It loads when a
|
|
9
|
+
* picker is first pointed at, focused or opened, so a page that only shows the
|
|
10
|
+
* chosen model carries the trigger alone.
|
|
11
|
+
*
|
|
12
|
+
* VIRTUALISED. Five hundred rows are drawn as the ~15 in view plus a margin:
|
|
13
|
+
* every row is one height, so a scroll offset names the slice outright and
|
|
14
|
+
* two spacers stand in for the rest. The cursor moves over the full list and
|
|
15
|
+
* scrolls itself into view, so keyboard reach is the same as a full render.
|
|
16
|
+
*
|
|
17
|
+
* ARIA: the search field is the combobox and owns the cursor through
|
|
18
|
+
* `aria-activedescendant`; the list is a listbox whose options carry
|
|
19
|
+
* `aria-setsize` / `aria-posinset`, since most of them are not in the DOM.
|
|
20
|
+
* Group headings are presentation: the option's own label names the group.
|
|
21
|
+
*/
|
|
22
|
+
const gui_1 = require("@hanzo/gui");
|
|
23
|
+
const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
|
|
24
|
+
const react_1 = require("react");
|
|
25
|
+
const popover_1 = require("../backends/gui/popover.cjs");
|
|
26
|
+
const sheet_1 = require("../backends/gui/sheet.cjs");
|
|
27
|
+
const slot_1 = require("../backends/gui/slot.cjs");
|
|
28
|
+
const chipSelect_logic_1 = require("../product/chipSelect.logic.cjs");
|
|
29
|
+
const catalog_1 = require("./catalog.cjs");
|
|
30
|
+
const picker_logic_1 = require("./picker.logic.cjs");
|
|
31
|
+
/** The list's ceiling in a popover, px. */
|
|
32
|
+
const LIST_H = 360;
|
|
33
|
+
const PANEL_W = 360;
|
|
34
|
+
const MOVES = new Set(['ArrowDown', 'ArrowUp', 'Home', 'End', 'PageDown', 'PageUp']);
|
|
35
|
+
function List({ models, value, onChange, onClose, scope, limits, loading, error, name, sheet, row }) {
|
|
36
|
+
const [q, setQ] = (0, react_1.useState)('');
|
|
37
|
+
const [at, setAt] = (0, react_1.useState)(-1);
|
|
38
|
+
const [top, setTop] = (0, react_1.useState)(0);
|
|
39
|
+
const [viewH, setViewH] = (0, react_1.useState)(LIST_H);
|
|
40
|
+
const list = (0, react_1.useRef)(null);
|
|
41
|
+
const field = (0, react_1.useRef)(null);
|
|
42
|
+
const id = (0, react_1.useId)();
|
|
43
|
+
const listId = `${id}-list`;
|
|
44
|
+
const optionId = (i) => `${id}-opt-${i}`;
|
|
45
|
+
const rows = (0, react_1.useMemo)(() => (0, picker_logic_1.pickerRows)(models, q, scope), [models, q, scope]);
|
|
46
|
+
const total = (0, react_1.useMemo)(() => (0, picker_logic_1.modelCount)(rows), [rows]);
|
|
47
|
+
const research = (0, react_1.useMemo)(() => catalog_1.RESEARCH.filter((r) => rows.some((x) => x.kind === 'model' && x.model.id === r.id)), [rows]);
|
|
48
|
+
// Position among the models alone, for aria-posinset.
|
|
49
|
+
const position = (0, react_1.useMemo)(() => {
|
|
50
|
+
const pos = [];
|
|
51
|
+
let n = 0;
|
|
52
|
+
for (const r of rows)
|
|
53
|
+
pos.push(r.kind === 'model' ? ++n : 0);
|
|
54
|
+
return pos;
|
|
55
|
+
}, [rows]);
|
|
56
|
+
const scrollTo = (0, react_1.useCallback)((y) => {
|
|
57
|
+
list.current?.scrollTo?.({ y, animated: false });
|
|
58
|
+
setTop(y);
|
|
59
|
+
}, []);
|
|
60
|
+
// It mounts as the picker opens: from the top of an empty search, the cursor
|
|
61
|
+
// on the chosen model — scrolled to the middle of the list — or the first one,
|
|
62
|
+
// and the search field holding the focus.
|
|
63
|
+
(0, react_1.useEffect)(() => {
|
|
64
|
+
const all = (0, picker_logic_1.pickerRows)(models, '', scope);
|
|
65
|
+
const chosen = all.findIndex((r) => r.kind === 'model' && r.model.id === value);
|
|
66
|
+
const first = all.findIndex((_, i) => (0, picker_logic_1.restable)(all, i));
|
|
67
|
+
const i = chosen >= 0 ? chosen : first;
|
|
68
|
+
setAt(i);
|
|
69
|
+
const y = i >= 0 ? Math.max(0, i * row - viewH / 2 + row / 2) : 0;
|
|
70
|
+
field.current?.focus();
|
|
71
|
+
// The list lays out with the panel; scroll once it is there.
|
|
72
|
+
requestAnimationFrame(() => scrollTo(y));
|
|
73
|
+
// Only on mount: the cursor is the reader's after that.
|
|
74
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
75
|
+
}, []);
|
|
76
|
+
// A new search puts the cursor on its first match, at the top.
|
|
77
|
+
const searched = (0, react_1.useRef)(false);
|
|
78
|
+
(0, react_1.useEffect)(() => {
|
|
79
|
+
if (!searched.current) {
|
|
80
|
+
searched.current = true;
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
setAt(rows.findIndex((_, i) => (0, picker_logic_1.restable)(rows, i)));
|
|
84
|
+
scrollTo(0);
|
|
85
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
86
|
+
}, [q]);
|
|
87
|
+
const reveal = (0, react_1.useCallback)((i) => {
|
|
88
|
+
const y = (0, picker_logic_1.revealTop)(i, top, viewH, row);
|
|
89
|
+
if (y !== null)
|
|
90
|
+
scrollTo(y);
|
|
91
|
+
}, [top, viewH, row, scrollTo]);
|
|
92
|
+
const choose = (0, react_1.useCallback)((r) => {
|
|
93
|
+
if (r?.kind !== 'model' || !(0, picker_logic_1.pickable)(r.model))
|
|
94
|
+
return;
|
|
95
|
+
onChange(r.model.id);
|
|
96
|
+
onClose();
|
|
97
|
+
}, [onChange, onClose]);
|
|
98
|
+
const onField = (e) => {
|
|
99
|
+
const key = e.key;
|
|
100
|
+
if (MOVES.has(key)) {
|
|
101
|
+
if ((key === 'Home' || key === 'End') && q)
|
|
102
|
+
return;
|
|
103
|
+
e.preventDefault?.();
|
|
104
|
+
const to = (0, chipSelect_logic_1.move)(key, at, rows.length, (i) => !(0, picker_logic_1.restable)(rows, i));
|
|
105
|
+
setAt(to);
|
|
106
|
+
if (to >= 0)
|
|
107
|
+
reveal(to);
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (e.key === 'Enter') {
|
|
111
|
+
e.preventDefault?.();
|
|
112
|
+
choose(rows[at]);
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
if (e.key === 'Escape') {
|
|
116
|
+
e.preventDefault?.();
|
|
117
|
+
onClose();
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
const range = (0, picker_logic_1.visibleRange)(top, viewH, row, rows.length);
|
|
121
|
+
const shown = rows.slice(range.start, range.end);
|
|
122
|
+
return ((0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('model-picker-body'), flex: sheet ? 1 : undefined, minH: 0, gap: "$1", children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('model-picker-search'), height: sheet ? 40 : 32, px: "$2", gap: "$2", items: "center", rounded: "$2", borderWidth: 1, borderColor: "$rim", bg: "$background", focusWithinStyle: { borderColor: '$outlineColor' }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Search, { size: 14, color: "$soft", "aria-hidden": true }), (0, jsx_runtime_1.jsx)(gui_1.Input, { ref: field, ...(0, slot_1.slot)('model-picker-input'), unstyled: true, flex: 1, minW: 0, height: sheet ? 38 : 30, p: 0, borderWidth: 0, bg: "transparent", fontSize: sheet ? '$3' : '$2', color: "$ink", placeholderTextColor: "$soft", placeholder: "Search models", value: q, onChangeText: setQ, role: "combobox", "aria-label": "Search models", "aria-expanded": true, "aria-controls": listId, "aria-autocomplete": "list", "aria-activedescendant": at >= 0 && rows[at] ? optionId(at) : undefined, autoComplete: "off", spellCheck: false, onKeyDown: onField }), (0, jsx_runtime_1.jsx)(gui_1.SizableText, { ...(0, slot_1.slot)('model-picker-count'), size: "$1", color: "$soft", shrink: 0, "aria-live": "polite", children: loading && !models.length ? 'Loading' : `${total} ${total === 1 ? 'model' : 'models'}` })] }), error ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { ...(0, slot_1.slot)('model-picker-error'), px: "$2", py: "$1.5", role: "alert", children: (0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$2", color: "$bad", children: error }) })) : null, (0, jsx_runtime_1.jsxs)(gui_1.ScrollView, { ref: list, height: sheet ? undefined : Math.min(LIST_H, Math.max(row * 3, rows.length * row)), flex: sheet ? 1 : undefined, showsVerticalScrollIndicator: true, scrollEventThrottle: 16, onScroll: (e) => setTop(e.nativeEvent?.contentOffset?.y ?? 0), onLayout: (e) => {
|
|
123
|
+
const h = e.nativeEvent?.layout?.height;
|
|
124
|
+
if (h)
|
|
125
|
+
setViewH(h);
|
|
126
|
+
}, children: [(0, jsx_runtime_1.jsxs)(gui_1.YStack, { ...(0, slot_1.slot)('model-picker-list'), id: listId, role: "listbox", "aria-label": name, height: rows.length * row, children: [(0, jsx_runtime_1.jsx)(gui_1.YStack, { height: range.start * row }), shown.map((r, k) => {
|
|
127
|
+
const i = range.start + k;
|
|
128
|
+
if (r.kind === 'group') {
|
|
129
|
+
return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('model-picker-group'), role: "presentation", height: row, px: "$2", gap: "$2", items: "flex-end", pb: "$1.5", children: [(0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$1", color: "$soft", fontWeight: "600", numberOfLines: 1, flex: 1, children: r.label }), (0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$1", color: "$soft", fontVariant: ['tabular-nums'], children: r.count })] }, r.key));
|
|
130
|
+
}
|
|
131
|
+
const m = r.model;
|
|
132
|
+
const locked = !(0, picker_logic_1.pickable)(m);
|
|
133
|
+
const paused = !locked && (0, catalog_1.isPaused)(m, limits);
|
|
134
|
+
const picked = m.id === value;
|
|
135
|
+
const ctx = (0, catalog_1.formatContext)(m.context_window);
|
|
136
|
+
const title = (0, catalog_1.modelName)(m);
|
|
137
|
+
// A model that answers in something other than a conversation says
|
|
138
|
+
// what it does, so an unscoped list is honest about each row.
|
|
139
|
+
const kind = scope || (0, catalog_1.can)(m, 'chat') ? null : (0, catalog_1.capabilitiesOf)(m)[0];
|
|
140
|
+
// A model sold against another says by how much, from the two list prices;
|
|
141
|
+
// a router, the ceiling it bills up to.
|
|
142
|
+
const saving = (0, catalog_1.savingOf)(m, models);
|
|
143
|
+
const ceiling = (0, catalog_1.formatCeiling)(m);
|
|
144
|
+
return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('model-picker-option'), id: optionId(i), role: "option", "aria-selected": picked, "aria-disabled": locked || undefined, "aria-setsize": total, "aria-posinset": position[i], "aria-label": `${title}, ${(0, catalog_1.groupLabel)(m)}${paused ? ', paused' : ''}${locked ? ', research preview' : ''}`, "data-model": m.id, "data-class": m.class, "data-paused": paused || undefined, height: row, px: "$2", gap: "$2", items: "center", rounded: "$2", cursor: locked ? 'default' : 'pointer', bg: i === at ? '$raised' : 'transparent', onHoverIn: () => setAt(i), onPress: () => choose(r), children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Check, { size: 14, color: "$ink", shrink: 0, opacity: picked ? 1 : 0, "aria-hidden": true }), (0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: sheet ? '$3' : '$2', color: "$ink", opacity: locked ? 0.5 : 1, numberOfLines: 1, flex: 1, minW: 0, children: title }), m.class === 'premium' ? ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$1", color: "$soft", shrink: 0, "aria-hidden": true, children: "\u2726" })) : null, locked || paused || saving || ceiling || kind || ctx ? ((0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$1", color: "$soft", shrink: 0, maxW: "60%", numberOfLines: 1, fontVariant: ['tabular-nums'], children: locked
|
|
145
|
+
? 'Research preview'
|
|
146
|
+
: paused
|
|
147
|
+
? 'Paused'
|
|
148
|
+
: saving
|
|
149
|
+
? (0, catalog_1.formatSaving)(saving)
|
|
150
|
+
: ceiling
|
|
151
|
+
? ceiling
|
|
152
|
+
: kind
|
|
153
|
+
? catalog_1.CAPABILITY_NAMES[kind]
|
|
154
|
+
: ctx })) : null] }, m.id));
|
|
155
|
+
})] }), rows.length === 0 && !error ? ((0, jsx_runtime_1.jsx)(gui_1.XStack, { ...(0, slot_1.slot)('model-picker-empty'), px: "$2", py: "$2", role: "status", children: (0, jsx_runtime_1.jsx)(gui_1.SizableText, { size: "$2", color: "$soft", children: loading ? 'Loading models…' : q ? `No models match “${q}”.` : 'No models to choose from.' }) })) : null] }), research.length ? ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...(0, slot_1.slot)('model-picker-research'), px: "$2", py: "$1.5", gap: "$1.5", items: "center", flexWrap: "wrap", children: [(0, jsx_runtime_1.jsxs)(gui_1.SizableText, { size: "$1", color: "$soft", children: [research.map(catalog_1.modelName).join(', '), " ", research.length === 1 ? 'is' : 'are', " in research preview."] }), (0, jsx_runtime_1.jsx)(gui_1.Anchor, { href: research[0].request, target: "_blank", rel: "noopener noreferrer", size: "$1", color: "$ink", textDecorationLine: "underline", children: "Request access" })] })) : null] }));
|
|
156
|
+
}
|
|
157
|
+
/** The trigger in its popover, or beside its sheet on a phone, and the list in it while open. */
|
|
158
|
+
function ModelPickerMenu({ trigger, open, onOpen, disabled, width, focusTrigger, ...list }) {
|
|
159
|
+
const body = open ? (0, jsx_runtime_1.jsx)(List, { ...list }) : null;
|
|
160
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(popover_1.Popover, { open: open && !list.sheet, onOpenChange: (v) => (v ? onOpen() : list.onClose()), placement: "bottom-start", allowFlip: true, stayInFrame: true, children: [(0, jsx_runtime_1.jsx)(popover_1.PopoverTrigger, { asChild: true, disabled: disabled, children: trigger }), list.sheet ? null : ((0, jsx_runtime_1.jsx)(popover_1.PopoverContent, { ...(0, slot_1.slot)('model-picker-panel'), sideOffset: 6, width: Math.max(width, PANEL_W), maxW: "92vw", p: "$1.5", items: "stretch", trapFocus: true, onOpenAutoFocus: (e) => e.preventDefault(), onCloseAutoFocus: (e) => {
|
|
161
|
+
e.preventDefault();
|
|
162
|
+
focusTrigger();
|
|
163
|
+
}, children: body }))] }), list.sheet ? ((0, jsx_runtime_1.jsx)(sheet_1.Sheet, { open: open, onOpenChange: (v) => (v ? onOpen() : list.onClose()), children: (0, jsx_runtime_1.jsxs)(sheet_1.SheetContent, { ...(0, slot_1.slot)('model-picker-sheet'), side: "bottom", height: "85%", maxH: "85%", p: "$3", gap: "$2", onOpenAutoFocus: (e) => e.preventDefault(), children: [(0, jsx_runtime_1.jsx)(sheet_1.SheetTitle, { size: "$4", children: list.name }), body] }) })) : null] }));
|
|
164
|
+
}
|
|
165
|
+
exports.default = ModelPickerMenu;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import { type Capability, type ModelCatalogEntry, type PauseSource } from './catalog.js';
|
|
3
|
+
interface ListProps {
|
|
4
|
+
models: readonly ModelCatalogEntry[];
|
|
5
|
+
value?: string;
|
|
6
|
+
onChange: (id: string) => void;
|
|
7
|
+
/** Closes the picker and hands the focus back to its trigger. */
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
scope?: Capability;
|
|
10
|
+
limits?: PauseSource | null;
|
|
11
|
+
loading: boolean;
|
|
12
|
+
error: string | null;
|
|
13
|
+
/** What it chooses: the listbox's name. */
|
|
14
|
+
name: string;
|
|
15
|
+
/** A bottom sheet on a phone: rows sized for a thumb. */
|
|
16
|
+
sheet: boolean;
|
|
17
|
+
/** Row height, px. */
|
|
18
|
+
row: number;
|
|
19
|
+
}
|
|
20
|
+
export interface ModelPickerMenuProps extends ListProps {
|
|
21
|
+
/** The picker's trigger, as ModelPicker draws it. */
|
|
22
|
+
trigger: ReactElement;
|
|
23
|
+
open: boolean;
|
|
24
|
+
/** Opens it. Closing is `onClose`. */
|
|
25
|
+
onOpen: () => void;
|
|
26
|
+
disabled: boolean;
|
|
27
|
+
/** The trigger's width: the popover is at least as wide. */
|
|
28
|
+
width: number;
|
|
29
|
+
/** Where the focus goes back to once it closes. */
|
|
30
|
+
focusTrigger: () => void;
|
|
31
|
+
}
|
|
32
|
+
/** The trigger in its popover, or beside its sheet on a phone, and the list in it while open. */
|
|
33
|
+
export declare function ModelPickerMenu({ trigger, open, onOpen, disabled, width, focusTrigger, ...list }: ModelPickerMenuProps): import("react").JSX.Element;
|
|
34
|
+
export default ModelPickerMenu;
|
|
35
|
+
//# sourceMappingURL=ModelPickerMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelPickerMenu.d.ts","sourceRoot":"","sources":["../../src/models/ModelPickerMenu.tsx"],"names":[],"mappings":"AAoBA,OAAO,EAA4D,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AAMnG,OAAO,EAYL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,WAAW,EACjB,MAAM,WAAW,CAAA;AASlB,UAAU,SAAS;IACjB,MAAM,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,iEAAiE;IACjE,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAA;IACZ,yDAAyD;IACzD,KAAK,EAAE,OAAO,CAAA;IACd,sBAAsB;IACtB,GAAG,EAAE,MAAM,CAAA;CACZ;AAsRD,MAAM,WAAW,oBAAqB,SAAQ,SAAS;IACrD,qDAAqD;IACrD,OAAO,EAAE,YAAY,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,sCAAsC;IACtC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;IACjB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAA;IACb,mDAAmD;IACnD,YAAY,EAAE,MAAM,IAAI,CAAA;CACzB;AAED,iGAAiG;AACjG,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,EAAE,oBAAoB,+BA6CtH;eAEc,eAAe"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
/**
|
|
4
|
+
* The open half of ModelPicker: the popover (a bottom sheet on a phone) and in
|
|
5
|
+
* it the search, the virtualised list and the research note. It loads when a
|
|
6
|
+
* picker is first pointed at, focused or opened, so a page that only shows the
|
|
7
|
+
* chosen model carries the trigger alone.
|
|
8
|
+
*
|
|
9
|
+
* VIRTUALISED. Five hundred rows are drawn as the ~15 in view plus a margin:
|
|
10
|
+
* every row is one height, so a scroll offset names the slice outright and
|
|
11
|
+
* two spacers stand in for the rest. The cursor moves over the full list and
|
|
12
|
+
* scrolls itself into view, so keyboard reach is the same as a full render.
|
|
13
|
+
*
|
|
14
|
+
* ARIA: the search field is the combobox and owns the cursor through
|
|
15
|
+
* `aria-activedescendant`; the list is a listbox whose options carry
|
|
16
|
+
* `aria-setsize` / `aria-posinset`, since most of them are not in the DOM.
|
|
17
|
+
* Group headings are presentation: the option's own label names the group.
|
|
18
|
+
*/
|
|
19
|
+
import { Anchor, Input as GuiInput, ScrollView, SizableText, XStack, YStack } from '@hanzo/gui';
|
|
20
|
+
import { Check, Search } from '@hanzogui/lucide-icons-2';
|
|
21
|
+
import { useCallback, useEffect, useId, useMemo, useRef, useState } from 'react';
|
|
22
|
+
import { Popover, PopoverContent, PopoverTrigger } from '../backends/gui/popover.js';
|
|
23
|
+
import { Sheet, SheetContent, SheetTitle } from '../backends/gui/sheet.js';
|
|
24
|
+
import { slot } from '../backends/gui/slot.js';
|
|
25
|
+
import { move } from '../product/chipSelect.logic.js';
|
|
26
|
+
import { CAPABILITY_NAMES, can, capabilitiesOf, formatCeiling, formatContext, formatSaving, groupLabel, isPaused, modelName, RESEARCH, savingOf, } from './catalog.js';
|
|
27
|
+
import { modelCount, pickable, pickerRows, restable, revealTop, visibleRange } from './picker.logic.js';
|
|
28
|
+
/** The list's ceiling in a popover, px. */
|
|
29
|
+
const LIST_H = 360;
|
|
30
|
+
const PANEL_W = 360;
|
|
31
|
+
const MOVES = new Set(['ArrowDown', 'ArrowUp', 'Home', 'End', 'PageDown', 'PageUp']);
|
|
32
|
+
function List({ models, value, onChange, onClose, scope, limits, loading, error, name, sheet, row }) {
|
|
33
|
+
const [q, setQ] = useState('');
|
|
34
|
+
const [at, setAt] = useState(-1);
|
|
35
|
+
const [top, setTop] = useState(0);
|
|
36
|
+
const [viewH, setViewH] = useState(LIST_H);
|
|
37
|
+
const list = useRef(null);
|
|
38
|
+
const field = useRef(null);
|
|
39
|
+
const id = useId();
|
|
40
|
+
const listId = `${id}-list`;
|
|
41
|
+
const optionId = (i) => `${id}-opt-${i}`;
|
|
42
|
+
const rows = useMemo(() => pickerRows(models, q, scope), [models, q, scope]);
|
|
43
|
+
const total = useMemo(() => modelCount(rows), [rows]);
|
|
44
|
+
const research = useMemo(() => RESEARCH.filter((r) => rows.some((x) => x.kind === 'model' && x.model.id === r.id)), [rows]);
|
|
45
|
+
// Position among the models alone, for aria-posinset.
|
|
46
|
+
const position = useMemo(() => {
|
|
47
|
+
const pos = [];
|
|
48
|
+
let n = 0;
|
|
49
|
+
for (const r of rows)
|
|
50
|
+
pos.push(r.kind === 'model' ? ++n : 0);
|
|
51
|
+
return pos;
|
|
52
|
+
}, [rows]);
|
|
53
|
+
const scrollTo = useCallback((y) => {
|
|
54
|
+
list.current?.scrollTo?.({ y, animated: false });
|
|
55
|
+
setTop(y);
|
|
56
|
+
}, []);
|
|
57
|
+
// It mounts as the picker opens: from the top of an empty search, the cursor
|
|
58
|
+
// on the chosen model — scrolled to the middle of the list — or the first one,
|
|
59
|
+
// and the search field holding the focus.
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
const all = pickerRows(models, '', scope);
|
|
62
|
+
const chosen = all.findIndex((r) => r.kind === 'model' && r.model.id === value);
|
|
63
|
+
const first = all.findIndex((_, i) => restable(all, i));
|
|
64
|
+
const i = chosen >= 0 ? chosen : first;
|
|
65
|
+
setAt(i);
|
|
66
|
+
const y = i >= 0 ? Math.max(0, i * row - viewH / 2 + row / 2) : 0;
|
|
67
|
+
field.current?.focus();
|
|
68
|
+
// The list lays out with the panel; scroll once it is there.
|
|
69
|
+
requestAnimationFrame(() => scrollTo(y));
|
|
70
|
+
// Only on mount: the cursor is the reader's after that.
|
|
71
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
72
|
+
}, []);
|
|
73
|
+
// A new search puts the cursor on its first match, at the top.
|
|
74
|
+
const searched = useRef(false);
|
|
75
|
+
useEffect(() => {
|
|
76
|
+
if (!searched.current) {
|
|
77
|
+
searched.current = true;
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
setAt(rows.findIndex((_, i) => restable(rows, i)));
|
|
81
|
+
scrollTo(0);
|
|
82
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
83
|
+
}, [q]);
|
|
84
|
+
const reveal = useCallback((i) => {
|
|
85
|
+
const y = revealTop(i, top, viewH, row);
|
|
86
|
+
if (y !== null)
|
|
87
|
+
scrollTo(y);
|
|
88
|
+
}, [top, viewH, row, scrollTo]);
|
|
89
|
+
const choose = useCallback((r) => {
|
|
90
|
+
if (r?.kind !== 'model' || !pickable(r.model))
|
|
91
|
+
return;
|
|
92
|
+
onChange(r.model.id);
|
|
93
|
+
onClose();
|
|
94
|
+
}, [onChange, onClose]);
|
|
95
|
+
const onField = (e) => {
|
|
96
|
+
const key = e.key;
|
|
97
|
+
if (MOVES.has(key)) {
|
|
98
|
+
if ((key === 'Home' || key === 'End') && q)
|
|
99
|
+
return;
|
|
100
|
+
e.preventDefault?.();
|
|
101
|
+
const to = move(key, at, rows.length, (i) => !restable(rows, i));
|
|
102
|
+
setAt(to);
|
|
103
|
+
if (to >= 0)
|
|
104
|
+
reveal(to);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
if (e.key === 'Enter') {
|
|
108
|
+
e.preventDefault?.();
|
|
109
|
+
choose(rows[at]);
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
if (e.key === 'Escape') {
|
|
113
|
+
e.preventDefault?.();
|
|
114
|
+
onClose();
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
const range = visibleRange(top, viewH, row, rows.length);
|
|
118
|
+
const shown = rows.slice(range.start, range.end);
|
|
119
|
+
return (_jsxs(YStack, { ...slot('model-picker-body'), flex: sheet ? 1 : undefined, minH: 0, gap: "$1", children: [_jsxs(XStack, { ...slot('model-picker-search'), height: sheet ? 40 : 32, px: "$2", gap: "$2", items: "center", rounded: "$2", borderWidth: 1, borderColor: "$rim", bg: "$background", focusWithinStyle: { borderColor: '$outlineColor' }, children: [_jsx(Search, { size: 14, color: "$soft", "aria-hidden": true }), _jsx(GuiInput, { ref: field, ...slot('model-picker-input'), unstyled: true, flex: 1, minW: 0, height: sheet ? 38 : 30, p: 0, borderWidth: 0, bg: "transparent", fontSize: sheet ? '$3' : '$2', color: "$ink", placeholderTextColor: "$soft", placeholder: "Search models", value: q, onChangeText: setQ, role: "combobox", "aria-label": "Search models", "aria-expanded": true, "aria-controls": listId, "aria-autocomplete": "list", "aria-activedescendant": at >= 0 && rows[at] ? optionId(at) : undefined, autoComplete: "off", spellCheck: false, onKeyDown: onField }), _jsx(SizableText, { ...slot('model-picker-count'), size: "$1", color: "$soft", shrink: 0, "aria-live": "polite", children: loading && !models.length ? 'Loading' : `${total} ${total === 1 ? 'model' : 'models'}` })] }), error ? (_jsx(XStack, { ...slot('model-picker-error'), px: "$2", py: "$1.5", role: "alert", children: _jsx(SizableText, { size: "$2", color: "$bad", children: error }) })) : null, _jsxs(ScrollView, { ref: list, height: sheet ? undefined : Math.min(LIST_H, Math.max(row * 3, rows.length * row)), flex: sheet ? 1 : undefined, showsVerticalScrollIndicator: true, scrollEventThrottle: 16, onScroll: (e) => setTop(e.nativeEvent?.contentOffset?.y ?? 0), onLayout: (e) => {
|
|
120
|
+
const h = e.nativeEvent?.layout?.height;
|
|
121
|
+
if (h)
|
|
122
|
+
setViewH(h);
|
|
123
|
+
}, children: [_jsxs(YStack, { ...slot('model-picker-list'), id: listId, role: "listbox", "aria-label": name, height: rows.length * row, children: [_jsx(YStack, { height: range.start * row }), shown.map((r, k) => {
|
|
124
|
+
const i = range.start + k;
|
|
125
|
+
if (r.kind === 'group') {
|
|
126
|
+
return (_jsxs(XStack, { ...slot('model-picker-group'), role: "presentation", height: row, px: "$2", gap: "$2", items: "flex-end", pb: "$1.5", children: [_jsx(SizableText, { size: "$1", color: "$soft", fontWeight: "600", numberOfLines: 1, flex: 1, children: r.label }), _jsx(SizableText, { size: "$1", color: "$soft", fontVariant: ['tabular-nums'], children: r.count })] }, r.key));
|
|
127
|
+
}
|
|
128
|
+
const m = r.model;
|
|
129
|
+
const locked = !pickable(m);
|
|
130
|
+
const paused = !locked && isPaused(m, limits);
|
|
131
|
+
const picked = m.id === value;
|
|
132
|
+
const ctx = formatContext(m.context_window);
|
|
133
|
+
const title = modelName(m);
|
|
134
|
+
// A model that answers in something other than a conversation says
|
|
135
|
+
// what it does, so an unscoped list is honest about each row.
|
|
136
|
+
const kind = scope || can(m, 'chat') ? null : capabilitiesOf(m)[0];
|
|
137
|
+
// A model sold against another says by how much, from the two list prices;
|
|
138
|
+
// a router, the ceiling it bills up to.
|
|
139
|
+
const saving = savingOf(m, models);
|
|
140
|
+
const ceiling = formatCeiling(m);
|
|
141
|
+
return (_jsxs(XStack, { ...slot('model-picker-option'), id: optionId(i), role: "option", "aria-selected": picked, "aria-disabled": locked || undefined, "aria-setsize": total, "aria-posinset": position[i], "aria-label": `${title}, ${groupLabel(m)}${paused ? ', paused' : ''}${locked ? ', research preview' : ''}`, "data-model": m.id, "data-class": m.class, "data-paused": paused || undefined, height: row, px: "$2", gap: "$2", items: "center", rounded: "$2", cursor: locked ? 'default' : 'pointer', bg: i === at ? '$raised' : 'transparent', onHoverIn: () => setAt(i), onPress: () => choose(r), children: [_jsx(Check, { size: 14, color: "$ink", shrink: 0, opacity: picked ? 1 : 0, "aria-hidden": true }), _jsx(SizableText, { size: sheet ? '$3' : '$2', color: "$ink", opacity: locked ? 0.5 : 1, numberOfLines: 1, flex: 1, minW: 0, children: title }), m.class === 'premium' ? (_jsx(SizableText, { size: "$1", color: "$soft", shrink: 0, "aria-hidden": true, children: "\u2726" })) : null, locked || paused || saving || ceiling || kind || ctx ? (_jsx(SizableText, { size: "$1", color: "$soft", shrink: 0, maxW: "60%", numberOfLines: 1, fontVariant: ['tabular-nums'], children: locked
|
|
142
|
+
? 'Research preview'
|
|
143
|
+
: paused
|
|
144
|
+
? 'Paused'
|
|
145
|
+
: saving
|
|
146
|
+
? formatSaving(saving)
|
|
147
|
+
: ceiling
|
|
148
|
+
? ceiling
|
|
149
|
+
: kind
|
|
150
|
+
? CAPABILITY_NAMES[kind]
|
|
151
|
+
: ctx })) : null] }, m.id));
|
|
152
|
+
})] }), rows.length === 0 && !error ? (_jsx(XStack, { ...slot('model-picker-empty'), px: "$2", py: "$2", role: "status", children: _jsx(SizableText, { size: "$2", color: "$soft", children: loading ? 'Loading models…' : q ? `No models match “${q}”.` : 'No models to choose from.' }) })) : null] }), research.length ? (_jsxs(XStack, { ...slot('model-picker-research'), px: "$2", py: "$1.5", gap: "$1.5", items: "center", flexWrap: "wrap", children: [_jsxs(SizableText, { size: "$1", color: "$soft", children: [research.map(modelName).join(', '), " ", research.length === 1 ? 'is' : 'are', " in research preview."] }), _jsx(Anchor, { href: research[0].request, target: "_blank", rel: "noopener noreferrer", size: "$1", color: "$ink", textDecorationLine: "underline", children: "Request access" })] })) : null] }));
|
|
153
|
+
}
|
|
154
|
+
/** The trigger in its popover, or beside its sheet on a phone, and the list in it while open. */
|
|
155
|
+
export function ModelPickerMenu({ trigger, open, onOpen, disabled, width, focusTrigger, ...list }) {
|
|
156
|
+
const body = open ? _jsx(List, { ...list }) : null;
|
|
157
|
+
return (_jsxs(_Fragment, { children: [_jsxs(Popover, { open: open && !list.sheet, onOpenChange: (v) => (v ? onOpen() : list.onClose()), placement: "bottom-start", allowFlip: true, stayInFrame: true, children: [_jsx(PopoverTrigger, { asChild: true, disabled: disabled, children: trigger }), list.sheet ? null : (_jsx(PopoverContent, { ...slot('model-picker-panel'), sideOffset: 6, width: Math.max(width, PANEL_W), maxW: "92vw", p: "$1.5", items: "stretch", trapFocus: true, onOpenAutoFocus: (e) => e.preventDefault(), onCloseAutoFocus: (e) => {
|
|
158
|
+
e.preventDefault();
|
|
159
|
+
focusTrigger();
|
|
160
|
+
}, children: body }))] }), list.sheet ? (_jsx(Sheet, { open: open, onOpenChange: (v) => (v ? onOpen() : list.onClose()), children: _jsxs(SheetContent, { ...slot('model-picker-sheet'), side: "bottom", height: "85%", maxH: "85%", p: "$3", gap: "$2", onOpenAutoFocus: (e) => e.preventDefault(), children: [_jsx(SheetTitle, { size: "$4", children: list.name }), body] }) })) : null] }));
|
|
161
|
+
}
|
|
162
|
+
export default ModelPickerMenu;
|
|
163
|
+
//# sourceMappingURL=ModelPickerMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelPickerMenu.js","sourceRoot":"","sources":["../../src/models/ModelPickerMenu.tsx"],"names":[],"mappings":"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"}
|
package/dist/models/catalog.cjs
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatSaving = exports.ENSO = exports.CAPABILITY_NAMES = exports.CLASS_NAMES = exports.FAMILIES = exports.RESEARCH = void 0;
|
|
4
|
-
exports.withResearch = withResearch;
|
|
3
|
+
exports.formatSaving = exports.ENSO = exports.CAPABILITY_NAMES = exports.CLASS_NAMES = exports.FAMILIES = exports.withResearch = exports.RESEARCH = void 0;
|
|
5
4
|
exports.modelOf = modelOf;
|
|
6
5
|
exports.parseModels = parseModels;
|
|
7
6
|
exports.fetchModelCatalog = fetchModelCatalog;
|
|
@@ -22,27 +21,11 @@ exports.savingOf = savingOf;
|
|
|
22
21
|
exports.formatCeiling = formatCeiling;
|
|
23
22
|
exports.formatContext = formatContext;
|
|
24
23
|
exports.formatPrice = formatPrice;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
exports.RESEARCH = [
|
|
31
|
-
{
|
|
32
|
-
id: 'zen7',
|
|
33
|
-
owned_by: 'zenlm',
|
|
34
|
-
family: 'zen',
|
|
35
|
-
name: 'Zen 7',
|
|
36
|
-
access: 'research',
|
|
37
|
-
request: 'https://hanzo.ai/research-access',
|
|
38
|
-
description: 'The next open-weight generation after Zen 6, in research preview.',
|
|
39
|
-
},
|
|
40
|
-
];
|
|
41
|
-
/** The catalog with the research models it does not already list, appended. */
|
|
42
|
-
function withResearch(models) {
|
|
43
|
-
const ids = new Set(models.map((m) => m.id));
|
|
44
|
-
return [...models, ...exports.RESEARCH.filter((m) => !ids.has(m.id))];
|
|
45
|
-
}
|
|
24
|
+
// The research models live in their own module, so a page that names Zen 7
|
|
25
|
+
// and nothing else carries that row and not the catalog.
|
|
26
|
+
var research_1 = require("./research.cjs");
|
|
27
|
+
Object.defineProperty(exports, "RESEARCH", { enumerable: true, get: function () { return research_1.RESEARCH; } });
|
|
28
|
+
Object.defineProperty(exports, "withResearch", { enumerable: true, get: function () { return research_1.withResearch; } });
|
|
46
29
|
// ── reading the wire ─────────────────────────────────────────────────────────
|
|
47
30
|
const CLASSES = ['premium', 'ours', 'free'];
|
|
48
31
|
const FAMILY_IDS = ['enso', 'zen', 'kai', 'zoo'];
|
package/dist/models/catalog.d.ts
CHANGED
|
@@ -56,14 +56,7 @@ export interface ModelCatalogEntry {
|
|
|
56
56
|
/** Where a person asks for access to a model they cannot call. */
|
|
57
57
|
request?: string;
|
|
58
58
|
}
|
|
59
|
-
|
|
60
|
-
* The models that exist and cannot be called, said once for every list of
|
|
61
|
-
* models: a picker draws each one disabled, a catalogue page draws it muted.
|
|
62
|
-
* `/v1/models` never answers for one, so nothing can route to it.
|
|
63
|
-
*/
|
|
64
|
-
export declare const RESEARCH: ModelCatalogEntry[];
|
|
65
|
-
/** The catalog with the research models it does not already list, appended. */
|
|
66
|
-
export declare function withResearch(models: readonly ModelCatalogEntry[]): ModelCatalogEntry[];
|
|
59
|
+
export { RESEARCH, withResearch } from './research.js';
|
|
67
60
|
/** One row, checked field by field: it is a network response. Null without an id. */
|
|
68
61
|
export declare function modelOf(v: unknown): ModelCatalogEntry | null;
|
|
69
62
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/models/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,kEAAkE;AAClE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAA;AAEpD,uGAAuG;AACvG,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAExD,0FAA0F;AAC1F,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,OAAO,GACP,OAAO,GACP,eAAe,GACf,UAAU,GACV,OAAO,GACP,WAAW,CAAA;AAEf,mFAAmF;AACnF,MAAM,WAAW,YAAY;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,IAAI,CAAA;CAChB;AAED,mCAAmC;AACnC,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,wGAAwG;IACxG,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,oFAAoF;IACpF,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/models/catalog.ts"],"names":[],"mappings":"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"}
|
package/dist/models/catalog.js
CHANGED
|
@@ -1,24 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* `/v1/models` never answers for one, so nothing can route to it.
|
|
5
|
-
*/
|
|
6
|
-
export const RESEARCH = [
|
|
7
|
-
{
|
|
8
|
-
id: 'zen7',
|
|
9
|
-
owned_by: 'zenlm',
|
|
10
|
-
family: 'zen',
|
|
11
|
-
name: 'Zen 7',
|
|
12
|
-
access: 'research',
|
|
13
|
-
request: 'https://hanzo.ai/research-access',
|
|
14
|
-
description: 'The next open-weight generation after Zen 6, in research preview.',
|
|
15
|
-
},
|
|
16
|
-
];
|
|
17
|
-
/** The catalog with the research models it does not already list, appended. */
|
|
18
|
-
export function withResearch(models) {
|
|
19
|
-
const ids = new Set(models.map((m) => m.id));
|
|
20
|
-
return [...models, ...RESEARCH.filter((m) => !ids.has(m.id))];
|
|
21
|
-
}
|
|
1
|
+
// The research models live in their own module, so a page that names Zen 7
|
|
2
|
+
// and nothing else carries that row and not the catalog.
|
|
3
|
+
export { RESEARCH, withResearch } from './research.js';
|
|
22
4
|
// ── reading the wire ─────────────────────────────────────────────────────────
|
|
23
5
|
const CLASSES = ['premium', 'ours', 'free'];
|
|
24
6
|
const FAMILY_IDS = ['enso', 'zen', 'kai', 'zoo'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/models/catalog.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/models/catalog.ts"],"names":[],"mappings":"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"}
|