@imfusion/web-ui 0.6.1-dev.12.ge86ac0a1 → 0.6.1-dev.14.g8fac1dfb
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/README.md +102 -170
- package/dist/{code-Blo48PGr.js → code-C_56u-Vk.js} +2 -2
- package/dist/{icons-wBmF0U2x.js → icons-Cy1HAosO.js} +1 -1
- package/dist/icons.js +1 -1
- package/dist/index.js +31 -31
- package/dist/integrations/code-highlight.js +2 -2
- package/dist/integrations/image-display-options.js +1 -1
- package/package.json +1 -1
- package/src/llms/install-templates/AGENTS.md +15 -18
- package/src/llms/llms.gen.txt +33 -33
- package/src/llms/skills/imf-web-ui/SKILL.md +29 -39
- package/src/llms/skills/imf-web-ui-audit/SKILL.md +50 -102
- package/src/llms/skills/imf-web-ui-components/SKILL.md +47 -104
- package/src/llms/skills/imf-web-ui-conventions/SKILL.md +39 -52
- package/src/llms/skills/imf-web-ui-conventions/templates/AUDIT_CHECKLIST.md +1 -0
- package/src/llms/skills/imf-web-ui-conventions/topics/agent-tooling.md +40 -62
- package/src/llms/skills/imf-web-ui-conventions/topics/assets.md +11 -12
- package/src/llms/skills/imf-web-ui-conventions/topics/authentication.md +31 -46
- package/src/llms/skills/imf-web-ui-conventions/topics/class-names.md +18 -23
- package/src/llms/skills/imf-web-ui-conventions/topics/components.md +20 -69
- package/src/llms/skills/imf-web-ui-conventions/topics/data.md +50 -146
- package/src/llms/skills/imf-web-ui-conventions/topics/docs-structure.md +17 -23
- package/src/llms/skills/imf-web-ui-conventions/topics/git.md +15 -20
- package/src/llms/skills/imf-web-ui-conventions/topics/library-boundary.md +28 -19
- package/src/llms/skills/imf-web-ui-conventions/topics/library-setup.md +20 -16
- package/src/llms/skills/imf-web-ui-conventions/topics/npm-project.md +28 -42
- package/src/llms/skills/imf-web-ui-conventions/topics/project-structure.md +28 -30
- package/src/llms/skills/imf-web-ui-conventions/topics/react.md +28 -74
- package/src/llms/skills/imf-web-ui-conventions/topics/styling.md +65 -62
- package/src/llms/skills/imf-web-ui-conventions/topics/testing.md +12 -14
- package/src/llms/skills/imf-web-ui-conventions/topics/tokens.md +9 -4
- package/src/llms/skills/imf-web-ui-conventions/topics/tooling.md +40 -68
- package/src/llms/skills/imf-web-ui-conventions/topics/typescript.md +26 -50
- package/src/llms/skills/imf-web-ui-conventions/topics/validation.md +19 -25
- package/src/llms/skills/imf-web-ui-setup/SKILL.md +43 -64
- package/src/llms/skills/imf-web-ui-update/SKILL.md +48 -114
- package/src/llms/skills/imf-web-ui-ux/SKILL.md +64 -92
- package/src/llms/skills/imf-web-ui-ux/references/forms.md +16 -36
- package/src/llms/skills/imf-web-ui-ux/references/usability-heuristics.md +14 -27
- package/src/llms/skills/imf-web-ui-ux/references/visual-design.md +22 -38
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as e } from "./chunk-DmhlhrBa.js";
|
|
2
2
|
import { t } from "./meta-CySnRuVp.js";
|
|
3
|
-
import { At as n, GT as r, Kv as i, Ma as a, Na as o, Pm as s, Qt as c, Qv as l, RA as u, Wk as d, Xo as ee, aE as f, hn as p, iv as te, r as m, sn as ne, t as re, zk as ie } from "./icons-
|
|
4
|
-
import { a as ae, o as oe, r as se, t as ce } from "./code-
|
|
3
|
+
import { At as n, GT as r, Kv as i, Ma as a, Na as o, Pm as s, Qt as c, Qv as l, RA as u, Wk as d, Xo as ee, aE as f, hn as p, iv as te, r as m, sn as ne, t as re, zk as ie } from "./icons-Cy1HAosO.js";
|
|
4
|
+
import { a as ae, o as oe, r as se, t as ce } from "./code-C_56u-Vk.js";
|
|
5
5
|
import { S as le, c as ue, d as de, l as fe, m as pe, s as me, u as he } from "./tabs-CMKvMF4E.js";
|
|
6
6
|
import { Button as ge } from "@base-ui/react/button";
|
|
7
7
|
import { cva as _e, cva as h, cx as ve, cx as g } from "class-variance-authority";
|
|
@@ -102,7 +102,7 @@ var Me = {
|
|
|
102
102
|
name: "Button",
|
|
103
103
|
category: t.buttons,
|
|
104
104
|
status: "stable",
|
|
105
|
-
description: "Triggers an action
|
|
105
|
+
description: "Triggers an action such as submit, confirm, cancel, navigate, or delete. Also called a CTA or action button; variants and sizes communicate its importance.",
|
|
106
106
|
origin: "adapted",
|
|
107
107
|
upstream: {
|
|
108
108
|
name: "Base UI",
|
|
@@ -190,7 +190,7 @@ var Ie = {
|
|
|
190
190
|
name: "ChipLink",
|
|
191
191
|
category: t.buttons,
|
|
192
192
|
status: "stable",
|
|
193
|
-
description: "
|
|
193
|
+
description: "Link styled as a compact chip, with a directional icon for external references or in-app navigation. Also called a link chip or link badge.",
|
|
194
194
|
origin: "native"
|
|
195
195
|
}, Le = { root: "imf-ui-copy-button-module-root" }, Re = 1500;
|
|
196
196
|
function ze({ value: e, label: t = "Copy", copiedLabel: n = "Copied", variant: r = "secondary", size: i = "sm", className: o, ...s }) {
|
|
@@ -218,7 +218,7 @@ var Be = {
|
|
|
218
218
|
name: "CopyButton",
|
|
219
219
|
category: t.buttons,
|
|
220
220
|
status: "stable",
|
|
221
|
-
description: "
|
|
221
|
+
description: "Copies a value to the clipboard and briefly shows confirmation. Also called a copy-to-clipboard button; commonly used with Code.Block.",
|
|
222
222
|
origin: "native",
|
|
223
223
|
internalDependencies: ["Button"]
|
|
224
224
|
}, k = {
|
|
@@ -270,7 +270,7 @@ var Ke = {
|
|
|
270
270
|
name: "Checkbox",
|
|
271
271
|
category: t.inputs,
|
|
272
272
|
status: "stable",
|
|
273
|
-
description: "Binary form control for
|
|
273
|
+
description: "Binary form control for submitted choices such as terms, table rows, or list items. Also called a check box; it supports an indeterminate parent state.",
|
|
274
274
|
origin: "adapted",
|
|
275
275
|
upstream: {
|
|
276
276
|
name: "Base UI",
|
|
@@ -352,7 +352,7 @@ var st = {
|
|
|
352
352
|
name: "Field",
|
|
353
353
|
category: t.inputs,
|
|
354
354
|
status: "stable",
|
|
355
|
-
description: "Accessible field composition for a label,
|
|
355
|
+
description: "Accessible field composition for a label, control, supporting text, and validation message. Use it with Input, Checkbox, Select, and other form controls.",
|
|
356
356
|
origin: "adapted",
|
|
357
357
|
upstream: {
|
|
358
358
|
name: "Base UI",
|
|
@@ -389,7 +389,7 @@ var mt = {
|
|
|
389
389
|
name: "Fieldset",
|
|
390
390
|
category: t.inputs,
|
|
391
391
|
status: "stable",
|
|
392
|
-
description: "Semantic
|
|
392
|
+
description: "Semantic group for related form controls with a shared legend. Also called a form group; it can propagate a disabled state to the group.",
|
|
393
393
|
origin: "adapted",
|
|
394
394
|
upstream: {
|
|
395
395
|
name: "Base UI",
|
|
@@ -459,7 +459,7 @@ var _t = {
|
|
|
459
459
|
name: "Input",
|
|
460
460
|
category: t.inputs,
|
|
461
461
|
status: "stable",
|
|
462
|
-
description: "Single-line text input for form data entry. Also called a text field
|
|
462
|
+
description: "Single-line text input for form data entry. Also called a text field; it supports controlled values and Field validation state.",
|
|
463
463
|
origin: "adapted",
|
|
464
464
|
upstream: {
|
|
465
465
|
name: "Base UI",
|
|
@@ -677,7 +677,7 @@ var nn = {
|
|
|
677
677
|
name: "Select",
|
|
678
678
|
category: t.inputs,
|
|
679
679
|
status: "stable",
|
|
680
|
-
description: "
|
|
680
|
+
description: "Dropdown for choosing a value from a known list. Also called a picker; use it for a labeled, keyboard-accessible option list.",
|
|
681
681
|
origin: "adapted",
|
|
682
682
|
upstream: {
|
|
683
683
|
name: "Base UI",
|
|
@@ -689,7 +689,7 @@ var nn = {
|
|
|
689
689
|
name: "Slider",
|
|
690
690
|
category: t.inputs,
|
|
691
691
|
status: "stable",
|
|
692
|
-
description: "
|
|
692
|
+
description: "Numeric input for choosing one value or a range by dragging a thumb. Also called a range input; use it when relative magnitude matters.",
|
|
693
693
|
origin: "adapted",
|
|
694
694
|
upstream: {
|
|
695
695
|
name: "Base UI",
|
|
@@ -701,7 +701,7 @@ var nn = {
|
|
|
701
701
|
name: "Switch",
|
|
702
702
|
category: t.inputs,
|
|
703
703
|
status: "stable",
|
|
704
|
-
description: "Two-state
|
|
704
|
+
description: "Two-state control for an on/off setting that takes effect immediately. Also called a toggle; use Checkbox for a submitted choice.",
|
|
705
705
|
origin: "adapted",
|
|
706
706
|
upstream: {
|
|
707
707
|
name: "Base UI",
|
|
@@ -713,7 +713,7 @@ var nn = {
|
|
|
713
713
|
name: "Toggle",
|
|
714
714
|
category: t.inputs,
|
|
715
715
|
status: "experimental",
|
|
716
|
-
description: "
|
|
716
|
+
description: "Two-state button for a pressed or unpressed option. Compose several in ToggleGroup for a segmented control.",
|
|
717
717
|
origin: "adapted",
|
|
718
718
|
upstream: {
|
|
719
719
|
name: "Base UI",
|
|
@@ -725,7 +725,7 @@ var nn = {
|
|
|
725
725
|
name: "ToggleGroup",
|
|
726
726
|
category: t.inputs,
|
|
727
727
|
status: "experimental",
|
|
728
|
-
description: "
|
|
728
|
+
description: "Group of connected Toggle buttons that share a selection. Also called a segmented control; set `multiple` for more than one active option.",
|
|
729
729
|
origin: "adapted",
|
|
730
730
|
upstream: {
|
|
731
731
|
name: "Base UI",
|
|
@@ -815,7 +815,7 @@ var Cn = {
|
|
|
815
815
|
name: "AppShell",
|
|
816
816
|
category: t.layout,
|
|
817
817
|
status: "stable",
|
|
818
|
-
description: "Application layout shell
|
|
818
|
+
description: "Application layout shell for a header, sidebars, footer, and scrolling main area. Also called an app layout or dashboard shell; sizing is CSS-driven and sidebars can become sliding panels on small screens.",
|
|
819
819
|
origin: "native"
|
|
820
820
|
}, P = {
|
|
821
821
|
content: "imf-ui-card-module-content",
|
|
@@ -934,7 +934,7 @@ var jn = {
|
|
|
934
934
|
category: t.layout,
|
|
935
935
|
status: "stable",
|
|
936
936
|
namespace: !0,
|
|
937
|
-
description: "Surface container
|
|
937
|
+
description: "Surface container for related content on a tonal background. Also called a panel or tile; compose it from optional image, header, content, and footer parts.",
|
|
938
938
|
origin: "native"
|
|
939
939
|
}, F = {
|
|
940
940
|
backdrop: "imf-ui-drawer-module-backdrop",
|
|
@@ -1119,7 +1119,7 @@ var or = {
|
|
|
1119
1119
|
name: "Drawer",
|
|
1120
1120
|
category: t.layout,
|
|
1121
1121
|
status: "stable",
|
|
1122
|
-
description: "Off-canvas panel that slides in from a screen edge
|
|
1122
|
+
description: "Off-canvas panel that slides in from a screen edge for navigation, settings, filters, or focused tasks. Also called a sidebar, side panel, or sheet.",
|
|
1123
1123
|
origin: "adapted",
|
|
1124
1124
|
upstream: {
|
|
1125
1125
|
name: "Base UI",
|
|
@@ -1298,7 +1298,7 @@ var Mr = {
|
|
|
1298
1298
|
name: "Popover",
|
|
1299
1299
|
category: t.display,
|
|
1300
1300
|
status: "stable",
|
|
1301
|
-
description: "Floating panel anchored to a trigger
|
|
1301
|
+
description: "Floating panel anchored to a trigger for contextual content, quick forms, or actions. Also called a popup or flyout; use Tooltip for hints without interaction.",
|
|
1302
1302
|
origin: "adapted",
|
|
1303
1303
|
upstream: {
|
|
1304
1304
|
name: "Base UI",
|
|
@@ -1310,7 +1310,7 @@ var Mr = {
|
|
|
1310
1310
|
name: "Row",
|
|
1311
1311
|
category: t.layout,
|
|
1312
1312
|
status: "stable",
|
|
1313
|
-
description: "Horizontal layout primitive
|
|
1313
|
+
description: "Horizontal layout primitive for spacing, aligning, and wrapping children. Also called a horizontal stack or flex row.",
|
|
1314
1314
|
origin: "native"
|
|
1315
1315
|
}, L = {
|
|
1316
1316
|
root: "imf-ui-separator-module-root",
|
|
@@ -1339,7 +1339,7 @@ var Ir = {
|
|
|
1339
1339
|
name: "Separator",
|
|
1340
1340
|
category: t.layout,
|
|
1341
1341
|
status: "stable",
|
|
1342
|
-
description: "
|
|
1342
|
+
description: "Line that divides content horizontally or vertically. Also called a divider or rule.",
|
|
1343
1343
|
origin: "adapted",
|
|
1344
1344
|
upstream: {
|
|
1345
1345
|
name: "Base UI",
|
|
@@ -1351,7 +1351,7 @@ var Ir = {
|
|
|
1351
1351
|
name: "Stack",
|
|
1352
1352
|
category: t.layout,
|
|
1353
1353
|
status: "stable",
|
|
1354
|
-
description: "Vertical layout primitive
|
|
1354
|
+
description: "Vertical layout primitive for spacing and aligning children. Also called a vertical stack or column.",
|
|
1355
1355
|
origin: "native"
|
|
1356
1356
|
}, R = {
|
|
1357
1357
|
description: "imf-ui-callout-module-description",
|
|
@@ -1455,7 +1455,7 @@ var Kr = {
|
|
|
1455
1455
|
category: t.display,
|
|
1456
1456
|
status: "stable",
|
|
1457
1457
|
namespace: !0,
|
|
1458
|
-
description: "
|
|
1458
|
+
description: "Persistent, in-place status message for information, success, warnings, and errors. Also called an inline alert or notice; it is not a transient toast or modal dialog.",
|
|
1459
1459
|
origin: "native"
|
|
1460
1460
|
};
|
|
1461
1461
|
//#endregion
|
|
@@ -1479,7 +1479,7 @@ var Jr = {
|
|
|
1479
1479
|
name: "Chip",
|
|
1480
1480
|
category: t.display,
|
|
1481
1481
|
status: "stable",
|
|
1482
|
-
description: "Compact
|
|
1482
|
+
description: "Compact label for tags, status, categories, counts, and metadata. Also called a badge or tag; its color and appearance are independent choices.",
|
|
1483
1483
|
origin: "native"
|
|
1484
1484
|
}, z = {
|
|
1485
1485
|
iconClosed: "imf-ui-collapsible-module-iconClosed",
|
|
@@ -1552,7 +1552,7 @@ var ni = {
|
|
|
1552
1552
|
name: "Collapsible",
|
|
1553
1553
|
category: t.display,
|
|
1554
1554
|
status: "stable",
|
|
1555
|
-
description: "
|
|
1555
|
+
description: "Show-and-hide region for secondary content such as FAQs, settings, or details. Also called a disclosure or expand/collapse.",
|
|
1556
1556
|
origin: "adapted",
|
|
1557
1557
|
upstream: {
|
|
1558
1558
|
name: "Base UI",
|
|
@@ -1622,7 +1622,7 @@ var ai = {
|
|
|
1622
1622
|
name: "Logo",
|
|
1623
1623
|
category: t.display,
|
|
1624
1624
|
status: "stable",
|
|
1625
|
-
description: "
|
|
1625
|
+
description: "Renders a logo from a URL or inline React element with consistent sizing. Also called a wordmark or brand mark.",
|
|
1626
1626
|
origin: "native"
|
|
1627
1627
|
};
|
|
1628
1628
|
//#endregion
|
|
@@ -2046,7 +2046,7 @@ var ea = /* @__PURE__ */ e({
|
|
|
2046
2046
|
category: t.display,
|
|
2047
2047
|
status: "experimental",
|
|
2048
2048
|
namespace: !0,
|
|
2049
|
-
description: "Navigation menu
|
|
2049
|
+
description: "Navigation menu with horizontal or vertical triggers and anchored flyout panels. Also called a menu bar or mega menu; it supports links, rich cards, and nested navigation.",
|
|
2050
2050
|
origin: "adapted",
|
|
2051
2051
|
upstream: {
|
|
2052
2052
|
name: "Base UI",
|
|
@@ -2159,7 +2159,7 @@ var fa = {
|
|
|
2159
2159
|
name: "Spinner",
|
|
2160
2160
|
category: t.display,
|
|
2161
2161
|
status: "stable",
|
|
2162
|
-
description: "
|
|
2162
|
+
description: "Indeterminate loading indicator. Also called a loader or progress spinner.",
|
|
2163
2163
|
origin: "native"
|
|
2164
2164
|
}, q = {
|
|
2165
2165
|
body: "imf-ui-table-module-body",
|
|
@@ -2273,14 +2273,14 @@ var ja = {
|
|
|
2273
2273
|
name: "Table",
|
|
2274
2274
|
category: t.display,
|
|
2275
2275
|
status: "stable",
|
|
2276
|
-
description: "
|
|
2276
|
+
description: "Presentational table parts for static tabular data. Pair them with a headless table library for sorting, pagination, or selection.",
|
|
2277
2277
|
origin: "native"
|
|
2278
2278
|
}, Ma = {
|
|
2279
2279
|
name: "Tabs",
|
|
2280
2280
|
category: t.display,
|
|
2281
2281
|
status: "stable",
|
|
2282
2282
|
namespace: !0,
|
|
2283
|
-
description: "
|
|
2283
|
+
description: "Switches between related panels within one view. Also called a tab strip or tab bar; it supports horizontal and vertical layouts.",
|
|
2284
2284
|
origin: "adapted",
|
|
2285
2285
|
upstream: {
|
|
2286
2286
|
name: "Base UI",
|
|
@@ -2570,7 +2570,7 @@ var xo = {
|
|
|
2570
2570
|
name: "Tooltip",
|
|
2571
2571
|
category: t.display,
|
|
2572
2572
|
status: "stable",
|
|
2573
|
-
description: "Hover- or focus-triggered
|
|
2573
|
+
description: "Hover- or focus-triggered label for brief help about a control or term. Also called a hint; use Popover for a panel with actions.",
|
|
2574
2574
|
origin: "adapted",
|
|
2575
2575
|
upstream: {
|
|
2576
2576
|
name: "Base UI",
|
|
@@ -2817,7 +2817,7 @@ var Lo = {
|
|
|
2817
2817
|
category: t.display,
|
|
2818
2818
|
status: "stable",
|
|
2819
2819
|
namespace: !0,
|
|
2820
|
-
description: "
|
|
2820
|
+
description: "Semantic text primitives for headings, paragraphs, lists, quotes, links, and inline code. The namespace uses native HTML elements and token-based text roles.",
|
|
2821
2821
|
origin: "native"
|
|
2822
2822
|
}, Ro = xe({
|
|
2823
2823
|
color: "currentColor",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "../chunk-DmhlhrBa.js";
|
|
2
2
|
import { t } from "../meta-CySnRuVp.js";
|
|
3
|
-
import { i as n, n as r, r as i } from "../code-
|
|
3
|
+
import { i as n, n as r, r as i } from "../code-C_56u-Vk.js";
|
|
4
4
|
import { jsx as a } from "react/jsx-runtime";
|
|
5
5
|
import { cloneElement as o, useMemo as s } from "react";
|
|
6
6
|
import { createHighlighter as c, defineLanguage as l, renderNodesToHtml as u, renderTokens as d } from "@tanstack/highlight/core";
|
|
@@ -222,7 +222,7 @@ var R = {
|
|
|
222
222
|
category: t.display,
|
|
223
223
|
status: "experimental",
|
|
224
224
|
namespace: !0,
|
|
225
|
-
description: "Syntax-highlighted
|
|
225
|
+
description: "Syntax-highlighted Code parts powered by TanStack Highlight. Import from the integration entry and install the optional @tanstack/highlight peer.",
|
|
226
226
|
origin: "adapted",
|
|
227
227
|
internalDependencies: ["Code"],
|
|
228
228
|
upstream: {
|
|
@@ -297,7 +297,7 @@ var U = {
|
|
|
297
297
|
name: "ImageDisplayOptions",
|
|
298
298
|
category: e.inputs,
|
|
299
299
|
status: "experimental",
|
|
300
|
-
description: "
|
|
300
|
+
description: "Panel and toolbar controls for an image dataset's display options, including window, level, gamma, and invert settings.",
|
|
301
301
|
origin: "adapted",
|
|
302
302
|
internalDependencies: [
|
|
303
303
|
"Tabs",
|
package/package.json
CHANGED
|
@@ -1,34 +1,31 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Agent instructions
|
|
2
2
|
|
|
3
|
-
<Keep this file
|
|
4
|
-
|
|
5
|
-
themselves.>
|
|
3
|
+
<Keep this file short. Include only rules that prevent a costly mistake. Point to the repository's own docs for everything
|
|
4
|
+
else.>
|
|
6
5
|
|
|
7
|
-
<One paragraph
|
|
6
|
+
<One paragraph describing the app, its package, and its stack.>
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
Setup and commands: [`README.md`](./README.md) and [`package.json`](./package.json). Read the package scripts before running
|
|
9
|
+
or suggesting a command.
|
|
11
10
|
|
|
12
|
-
## Read before
|
|
11
|
+
## Read before writing
|
|
13
12
|
|
|
14
|
-
<
|
|
13
|
+
<Add one pointer for each repository-specific document.>
|
|
15
14
|
|
|
16
|
-
- [`docs/<topic>.md`](./docs/<topic>.md) — <what it covers
|
|
15
|
+
- [`docs/<topic>.md`](./docs/<topic>.md) — <what it covers and when to read it>.
|
|
17
16
|
|
|
18
|
-
[`docs/index.md`](./docs/index.md)
|
|
17
|
+
[`docs/index.md`](./docs/index.md) lists the documents.
|
|
19
18
|
|
|
20
19
|
## Working here
|
|
21
20
|
|
|
22
|
-
<The fenced block below
|
|
23
|
-
is refreshed on every skills install. Everything else in the file is scaffolded once by the setup skill and then owned by the
|
|
24
|
-
repo.>
|
|
21
|
+
<The installer owns only the fenced block below. It refreshes that block on every install; the rest belongs to the project.>
|
|
25
22
|
|
|
26
23
|
<!-- imf-web-ui:begin — managed by `npx web-ui-install`; edits inside the fence are overwritten -->
|
|
27
24
|
|
|
28
|
-
`.agents/skills/imf-web-ui-*` is vendored from `@imfusion/web-ui` and resynced with `npx web-ui-install`.
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
`.agents/skills/imf-web-ui-*` is vendored from `@imfusion/web-ui` and resynced with `npx web-ui-install`. Do not edit the
|
|
26
|
+
vendored copy or put project-specific conventions there. Load the matching skill before changing UI, styles, data, tests, or
|
|
27
|
+
docs.
|
|
31
28
|
|
|
32
29
|
<!-- imf-web-ui:end -->
|
|
33
30
|
|
|
34
|
-
<
|
|
31
|
+
<Add project-specific rules here: generated files, API lookup tools, and paths the agent must not touch.>
|
package/src/llms/llms.gen.txt
CHANGED
|
@@ -11,161 +11,161 @@ props, which always live in the docgen file above.
|
|
|
11
11
|
|
|
12
12
|
## AppShell
|
|
13
13
|
- category: Layout, status: stable
|
|
14
|
-
Application layout shell
|
|
14
|
+
Application layout shell for a header, sidebars, footer, and scrolling main area. Also called an app layout or dashboard shell; sizing is CSS-driven and sidebars can become sliding panels on small screens.
|
|
15
15
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .app-shell (jq: jq '.app-shell' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
16
16
|
|
|
17
17
|
## Button
|
|
18
18
|
- category: Buttons, status: stable
|
|
19
|
-
Triggers an action
|
|
19
|
+
Triggers an action such as submit, confirm, cancel, navigate, or delete. Also called a CTA or action button; variants and sizes communicate its importance.
|
|
20
20
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .button (jq: jq '.button' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
21
21
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/button.md
|
|
22
22
|
|
|
23
23
|
## Callout
|
|
24
24
|
- category: Display, status: stable
|
|
25
|
-
|
|
25
|
+
Persistent, in-place status message for information, success, warnings, and errors. Also called an inline alert or notice; it is not a transient toast or modal dialog.
|
|
26
26
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .callout (jq: jq '.callout' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
27
27
|
|
|
28
28
|
## Card
|
|
29
29
|
- category: Layout, status: stable
|
|
30
|
-
Surface container
|
|
30
|
+
Surface container for related content on a tonal background. Also called a panel or tile; compose it from optional image, header, content, and footer parts.
|
|
31
31
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .card (jq: jq '.card' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
32
32
|
|
|
33
33
|
## Checkbox
|
|
34
34
|
- category: Inputs, status: stable
|
|
35
|
-
Binary form control for
|
|
35
|
+
Binary form control for submitted choices such as terms, table rows, or list items. Also called a check box; it supports an indeterminate parent state.
|
|
36
36
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .checkbox (jq: jq '.checkbox' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
37
37
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/checkbox.md
|
|
38
38
|
|
|
39
39
|
## Chip
|
|
40
40
|
- category: Display, status: stable
|
|
41
|
-
Compact
|
|
41
|
+
Compact label for tags, status, categories, counts, and metadata. Also called a badge or tag; its color and appearance are independent choices.
|
|
42
42
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .chip (jq: jq '.chip' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
43
43
|
|
|
44
44
|
## ChipLink
|
|
45
45
|
- category: Buttons, status: stable
|
|
46
|
-
|
|
46
|
+
Link styled as a compact chip, with a directional icon for external references or in-app navigation. Also called a link chip or link badge.
|
|
47
47
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .chip-link (jq: jq '.chip-link' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
48
48
|
|
|
49
49
|
## Code
|
|
50
50
|
- category: Display, status: stable
|
|
51
|
-
Displays source code
|
|
51
|
+
Displays source code inline or in a block, with optional language labels and copying. Also called a code snippet or code block.
|
|
52
52
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .code (jq: jq '.code' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
53
53
|
|
|
54
54
|
## CodeHighlight
|
|
55
55
|
- category: Display, status: experimental
|
|
56
|
-
Syntax-highlighted
|
|
56
|
+
Syntax-highlighted Code parts powered by TanStack Highlight. Import from the integration entry and install the optional @tanstack/highlight peer.
|
|
57
57
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .code-highlight (jq: jq '.code-highlight' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
58
58
|
|
|
59
59
|
## Collapsible
|
|
60
60
|
- category: Display, status: stable
|
|
61
|
-
|
|
61
|
+
Show-and-hide region for secondary content such as FAQs, settings, or details. Also called a disclosure or expand/collapse.
|
|
62
62
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .collapsible (jq: jq '.collapsible' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
63
63
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/collapsible.md
|
|
64
64
|
|
|
65
65
|
## CopyButton
|
|
66
66
|
- category: Buttons, status: stable
|
|
67
|
-
|
|
67
|
+
Copies a value to the clipboard and briefly shows confirmation. Also called a copy-to-clipboard button; commonly used with Code.Block.
|
|
68
68
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .copy-button (jq: jq '.copy-button' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
69
69
|
|
|
70
70
|
## Drawer
|
|
71
71
|
- category: Layout, status: stable
|
|
72
|
-
Off-canvas panel that slides in from a screen edge
|
|
72
|
+
Off-canvas panel that slides in from a screen edge for navigation, settings, filters, or focused tasks. Also called a sidebar, side panel, or sheet.
|
|
73
73
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .drawer (jq: jq '.drawer' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
74
74
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/drawer.md
|
|
75
75
|
|
|
76
76
|
## Field
|
|
77
77
|
- category: Inputs, status: stable
|
|
78
|
-
Accessible field composition for a label,
|
|
78
|
+
Accessible field composition for a label, control, supporting text, and validation message. Use it with Input, Checkbox, Select, and other form controls.
|
|
79
79
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .field (jq: jq '.field' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
80
80
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/field.md
|
|
81
81
|
|
|
82
82
|
## Fieldset
|
|
83
83
|
- category: Inputs, status: stable
|
|
84
|
-
Semantic
|
|
84
|
+
Semantic group for related form controls with a shared legend. Also called a form group; it can propagate a disabled state to the group.
|
|
85
85
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .fieldset (jq: jq '.fieldset' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
86
86
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/fieldset.md
|
|
87
87
|
|
|
88
88
|
## Icon
|
|
89
89
|
- category: Display, status: stable
|
|
90
|
-
|
|
90
|
+
Renders a Web UI icon with an optional semantic foreground color. The default inherits the surrounding currentColor.
|
|
91
91
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .icon (jq: jq '.icon' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
92
92
|
|
|
93
93
|
## ImageDisplayOptions
|
|
94
94
|
- category: Inputs, status: experimental
|
|
95
|
-
|
|
95
|
+
Panel and toolbar controls for an image dataset's display options, including window, level, gamma, and invert settings.
|
|
96
96
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .image-display-options (jq: jq '.image-display-options' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
97
97
|
- further reading (usage/anatomy, not props): https://docs.imfusion.com/
|
|
98
98
|
|
|
99
99
|
## Input
|
|
100
100
|
- category: Inputs, status: stable
|
|
101
|
-
Single-line text input for form data entry. Also called a text field
|
|
101
|
+
Single-line text input for form data entry. Also called a text field; it supports controlled values and Field validation state.
|
|
102
102
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .input (jq: jq '.input' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
103
103
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/input.md
|
|
104
104
|
|
|
105
105
|
## Logo
|
|
106
106
|
- category: Display, status: stable
|
|
107
|
-
|
|
107
|
+
Renders a logo from a URL or inline React element with consistent sizing. Also called a wordmark or brand mark.
|
|
108
108
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .logo (jq: jq '.logo' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
109
109
|
|
|
110
110
|
## NavigationMenu
|
|
111
111
|
- category: Display, status: experimental
|
|
112
|
-
Navigation menu
|
|
112
|
+
Navigation menu with horizontal or vertical triggers and anchored flyout panels. Also called a menu bar or mega menu; it supports links, rich cards, and nested navigation.
|
|
113
113
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .navigation-menu (jq: jq '.navigation-menu' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
114
114
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/navigation-menu.md
|
|
115
115
|
|
|
116
116
|
## Popover
|
|
117
117
|
- category: Display, status: stable
|
|
118
|
-
Floating panel anchored to a trigger
|
|
118
|
+
Floating panel anchored to a trigger for contextual content, quick forms, or actions. Also called a popup or flyout; use Tooltip for hints without interaction.
|
|
119
119
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .popover (jq: jq '.popover' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
120
120
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/popover.md
|
|
121
121
|
|
|
122
122
|
## Row
|
|
123
123
|
- category: Layout, status: stable
|
|
124
|
-
Horizontal layout primitive
|
|
124
|
+
Horizontal layout primitive for spacing, aligning, and wrapping children. Also called a horizontal stack or flex row.
|
|
125
125
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .row (jq: jq '.row' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
126
126
|
|
|
127
127
|
## Select
|
|
128
128
|
- category: Inputs, status: stable
|
|
129
|
-
|
|
129
|
+
Dropdown for choosing a value from a known list. Also called a picker; use it for a labeled, keyboard-accessible option list.
|
|
130
130
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .select (jq: jq '.select' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
131
131
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/select.md
|
|
132
132
|
|
|
133
133
|
## Separator
|
|
134
134
|
- category: Layout, status: stable
|
|
135
|
-
|
|
135
|
+
Line that divides content horizontally or vertically. Also called a divider or rule.
|
|
136
136
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .separator (jq: jq '.separator' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
137
137
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/separator.md
|
|
138
138
|
|
|
139
139
|
## Slider
|
|
140
140
|
- category: Inputs, status: stable
|
|
141
|
-
|
|
141
|
+
Numeric input for choosing one value or a range by dragging a thumb. Also called a range input; use it when relative magnitude matters.
|
|
142
142
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .slider (jq: jq '.slider' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
143
143
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/slider.md
|
|
144
144
|
|
|
145
145
|
## Spinner
|
|
146
146
|
- category: Display, status: stable
|
|
147
|
-
|
|
147
|
+
Indeterminate loading indicator. Also called a loader or progress spinner.
|
|
148
148
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .spinner (jq: jq '.spinner' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
149
149
|
|
|
150
150
|
## Stack
|
|
151
151
|
- category: Layout, status: stable
|
|
152
|
-
Vertical layout primitive
|
|
152
|
+
Vertical layout primitive for spacing and aligning children. Also called a vertical stack or column.
|
|
153
153
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .stack (jq: jq '.stack' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
154
154
|
|
|
155
155
|
## Switch
|
|
156
156
|
- category: Inputs, status: stable
|
|
157
|
-
Two-state
|
|
157
|
+
Two-state control for an on/off setting that takes effect immediately. Also called a toggle; use Checkbox for a submitted choice.
|
|
158
158
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .switch (jq: jq '.switch' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
159
159
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/switch.md
|
|
160
160
|
|
|
161
161
|
## Table
|
|
162
162
|
- category: Display, status: stable
|
|
163
|
-
|
|
163
|
+
Presentational table parts for static tabular data. Pair them with a headless table library for sorting, pagination, or selection.
|
|
164
164
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .table (jq: jq '.table' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
165
165
|
|
|
166
166
|
## Tabs
|
|
167
167
|
- category: Display, status: stable
|
|
168
|
-
|
|
168
|
+
Switches between related panels within one view. Also called a tab strip or tab bar; it supports horizontal and vertical layouts.
|
|
169
169
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .tabs (jq: jq '.tabs' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
170
170
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/tabs.md
|
|
171
171
|
|
|
@@ -177,23 +177,23 @@ Transient message stack that reports the outcome of a background action without
|
|
|
177
177
|
|
|
178
178
|
## Toggle
|
|
179
179
|
- category: Inputs, status: experimental
|
|
180
|
-
|
|
180
|
+
Two-state button for a pressed or unpressed option. Compose several in ToggleGroup for a segmented control.
|
|
181
181
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .toggle (jq: jq '.toggle' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
182
182
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/toggle.md
|
|
183
183
|
|
|
184
184
|
## ToggleGroup
|
|
185
185
|
- category: Inputs, status: experimental
|
|
186
|
-
|
|
186
|
+
Group of connected Toggle buttons that share a selection. Also called a segmented control; set `multiple` for more than one active option.
|
|
187
187
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .toggle-group (jq: jq '.toggle-group' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
188
188
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/toggle-group.md
|
|
189
189
|
|
|
190
190
|
## Tooltip
|
|
191
191
|
- category: Display, status: stable
|
|
192
|
-
Hover- or focus-triggered
|
|
192
|
+
Hover- or focus-triggered label for brief help about a control or term. Also called a hint; use Popover for a panel with actions.
|
|
193
193
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .tooltip (jq: jq '.tooltip' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
194
194
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/tooltip.md
|
|
195
195
|
|
|
196
196
|
## Typo
|
|
197
197
|
- category: Display, status: stable
|
|
198
|
-
|
|
198
|
+
Semantic text primitives for headings, paragraphs, lists, quotes, links, and inline code. The namespace uses native HTML elements and token-based text roles.
|
|
199
199
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .typo (jq: jq '.typo' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|