@imfusion/web-ui 0.10.1-dev.56.ge0de2dc9 → 0.10.1-dev.59.gdb86c93c
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/CHANGELOG.md +5 -0
- package/dist/components/select/select.d.ts +11 -3
- package/dist/index.js +1317 -1301
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/docgen/doc.gen.json +15 -2
- package/src/llms/skills/imf-web-ui-audit/SKILL.md +3 -1
- package/src/llms/skills/imf-web-ui-conventions/topics/project-structure.md +5 -2
- package/src/llms/tokens.gen.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -65,6 +65,7 @@ never changes the character width, so columns stay aligned. CoFo Sans Mono still
|
|
|
65
65
|
- `imf-web-ui-update` proposes and `imf-web-ui-audit` reports aligning the core runtime packages (React, Base UI, Vite+) with the versions Web UI builds with. — Nikolaus Brunner <brunner@imfusion.com>
|
|
66
66
|
- `localWebUILink()` and a `paths` block in `tsconfig.json` let an app run against a symlinked web-ui checkout with one React and one set of types. `imf-web-ui-setup` proposes both and `imf-web-ui-audit` reports a missing one. — Nikolaus Brunner <brunner@imfusion.com>
|
|
67
67
|
- The shell's navigation toggle sets `aria-controls` from the navbar, and reads the `id` the navbar generates. A consumer `id` on the Navbar is what it points at. — Nikolaus Brunner <brunner@imfusion.com>
|
|
68
|
+
- `Select.ItemDescription` sets a muted second line under an item's text, such as what a role allows; the trigger shows only the item text, and the list keeps the trigger's width so descriptions wrap. — Nikolaus Brunner <brunner@imfusion.com>
|
|
68
69
|
- `Table.Root` takes `density` (`compact`, `comfortable`, `spacious`) for the cell padding. — Nikolaus Brunner <brunner@imfusion.com>
|
|
69
70
|
- `Table.HeaderCell` and `Table.Cell` take `action` for a column of buttons: it shrinks to its content, so the data columns keep the width. — Nikolaus Brunner <brunner@imfusion.com>
|
|
70
71
|
- [`useDisclosure`](src/hooks/use-disclosure.stories.tsx#UseDisclosure) keeps an open state that works controlled or uncontrolled, and returns `open`, `setOpen`, and `toggle`. — Nikolaus Brunner <brunner@imfusion.com>
|
|
@@ -110,6 +111,7 @@ never changes the character width, so columns stay aligned. CoFo Sans Mono still
|
|
|
110
111
|
|
|
111
112
|
### Changed
|
|
112
113
|
|
|
114
|
+
- The `project-structure` topic sets when a single-route part is inlined into its route file: a component under 50 lines, with no `use*` hook, no stylesheet or test of its own, leaving the route file under 250 lines. `imf-web-ui-audit` reports a breach as a Deviation. — Nikolaus Brunner <brunner@imfusion.com>
|
|
113
115
|
- The `Meter` track is translucent ink (8% `fg-main`), so it stays visible on tinted surfaces such as a selected table row. — Nikolaus Brunner <brunner@imfusion.com>
|
|
114
116
|
- `Table` reads lighter: the header has no band, its mono labels are muted with a 1px rule under them, body rows have no rules, and cells get more vertical padding. A selected row sits one neutral step darker than a hovered row, in place of the primary tint. — Nikolaus Brunner <brunner@imfusion.com>
|
|
115
117
|
- [`AppShell.Header`](src/components/app-shell/app-shell.mdx) is a page row that shows at every width, below the shell's bar on mobile. — Nikolaus Brunner <brunner@imfusion.com>
|
|
@@ -154,6 +156,9 @@ never changes the character width, so columns stay aligned. CoFo Sans Mono still
|
|
|
154
156
|
|
|
155
157
|
### Fixed
|
|
156
158
|
|
|
159
|
+
- `Typo.Hero`, `Typo.H3`, `Typo.H4`, `Typo.Lead`, and `Typo.Blockquote` no longer crowd their letters: `--imf-ui-font-letterspacing-hero` and `--imf-ui-font-letterspacing-brand` scale with the viewport, from about -0.0225em and -0.01em at 360px to -0.025em and -0.02em at 1920px, so pairs like "rt" and "ty" stay apart — Nikolaus Brunner <brunner@imfusion.com>
|
|
160
|
+
- The `Select` popup sits 4px below its trigger by default (`sideOffset` on `Select.Positioner`) and casts a hard shadow (`--imf-ui-shadow-4`). — Nikolaus Brunner <brunner@imfusion.com>
|
|
161
|
+
- An empty `Select.ItemIndicator` draws the `Check` icon in the item's text colour, so it stays visible on the highlighted item. Base UI's fallback was a `✔️` emoji in its own colour. — Nikolaus Brunner <brunner@imfusion.com>
|
|
157
162
|
- The `tooling` topic, `imf-web-ui-setup` and `imf-web-ui-audit` keep tsconfig `paths` away from Vite: `resolve.tsconfigPaths` or `vite-tsconfig-paths` loaded the React types package as React and broke a build that installs Web UI from the registry. The `#/` alias comes from `imports` in `package.json`. — Nikolaus Brunner <brunner@imfusion.com>
|
|
158
163
|
- The skill staleness hook stays quiet when `@imfusion/web-ui` is a symlinked checkout, whose version never matches the installed skills. — Nikolaus Brunner <brunner@imfusion.com>
|
|
159
164
|
- `Drawer.Popup` draws no focus ring around the whole panel when it takes focus on open; the controls inside keep theirs. — Nikolaus Brunner <brunner@imfusion.com>
|
|
@@ -56,7 +56,7 @@ export declare namespace Backdrop {
|
|
|
56
56
|
var displayName: string;
|
|
57
57
|
}
|
|
58
58
|
/** Select.Positioner — positions the popup relative to the trigger. */
|
|
59
|
-
export declare function Positioner({ align, alignItemWithTrigger, ...props }: React.ComponentProps<typeof SelectPrimitive.Positioner>): import("react/jsx-runtime").JSX.Element;
|
|
59
|
+
export declare function Positioner({ align, alignItemWithTrigger, sideOffset, ...props }: React.ComponentProps<typeof SelectPrimitive.Positioner>): import("react/jsx-runtime").JSX.Element;
|
|
60
60
|
export declare namespace Positioner {
|
|
61
61
|
var displayName: string;
|
|
62
62
|
}
|
|
@@ -83,8 +83,8 @@ export declare function Item(props: ItemProps): import("react/jsx-runtime").JSX.
|
|
|
83
83
|
export declare namespace Item {
|
|
84
84
|
var displayName: string;
|
|
85
85
|
}
|
|
86
|
-
/** Select.ItemIndicator —
|
|
87
|
-
export declare function ItemIndicator(props: React.ComponentProps<typeof SelectPrimitive.ItemIndicator>): import("react/jsx-runtime").JSX.Element;
|
|
86
|
+
/** Select.ItemIndicator — marker inside the selected item. Without children it draws a check icon in the item's text colour. */
|
|
87
|
+
export declare function ItemIndicator({ children, ...props }: React.ComponentProps<typeof SelectPrimitive.ItemIndicator>): import("react/jsx-runtime").JSX.Element;
|
|
88
88
|
export declare namespace ItemIndicator {
|
|
89
89
|
var displayName: string;
|
|
90
90
|
}
|
|
@@ -93,6 +93,14 @@ export declare function ItemText(props: React.ComponentProps<typeof SelectPrimit
|
|
|
93
93
|
export declare namespace ItemText {
|
|
94
94
|
var displayName: string;
|
|
95
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* Select.ItemDescription — a muted second line under an item's text, such as what a role allows. It stays out of the
|
|
98
|
+
* trigger, which shows only `Select.ItemText`.
|
|
99
|
+
*/
|
|
100
|
+
export declare function ItemDescription(props: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
101
|
+
export declare namespace ItemDescription {
|
|
102
|
+
var displayName: string;
|
|
103
|
+
}
|
|
96
104
|
/** Select.Group — wrapper around a grouped set of items. */
|
|
97
105
|
export declare function Group(props: React.ComponentProps<typeof SelectPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
|
|
98
106
|
export declare namespace Group {
|