Repository navigation
v0.6.0
🚨 Breaking Changes
- Optimize overlay runtime and primitives, remove popup component, add Modal component - by @subframe7536 in #32 (caac2)
- Polish design, remove xl and xs size on all components except button, simplify separator component - by @subframe7536 in #33 (54bab)
- Refresh style system - by @subframe7536 in #36 (41ad1)
- Improve and simplify theme config and type system - by @subframe7536 in #41 (6c0c9)
- Scope composite slot ownership, type cleanup and style overrides - by @subframe7536 in #53 (a0e1a)
- Share style types and split overlay positioning - by @subframe7536 in #57 (230f0)
- Unify component slot names - by @subframe7536 in #58 (cf2dc)
- Remove styles export, correct docs - by @subframe7536 (c08f7)
- Theme tokens and CSS engines - by @subframe7536 in #78 (f1481)
- Unify component render - by @subframe7536 in #79 (5659b)
- button-group:
- Remove separator option, have it by default - by @subframe7536 (82f71)
- card:
- Make it composible - by @subframe7536 (47ba2)
- collapsible:
- Split into 2 sub components and add opacity transition - by @subframe7536 (8d557)
- context-menu, dropdown-menu:
- Rename color to variant and prevent disabled item close panel - by @subframe7536 (a0a00)
- dialog, sheet:
- Split Dialog and Sheet into composable anatomy parts - by @subframe7536 in #67 (c3468)
- form:
- Merge form-field into form and bind Field to createForm - by @subframe7536 (0bfe4)
- Unify prop names and remove
asin file-upload - by @subframe7536 (6b0cc)
- general:
- Align breaking APIs and disclosure lifecycle - by @subframe7536 in #68 (e34a8)
- modal:
- Move content renderer to children - by @subframe7536 (d14fb)
- overlay:
- Enhance overlay components to use render props for triggers - by @subframe7536 (cab2e)
- select:
- Consolidate select family around public BaseSelect, add combobox - by @subframe7536 and Copilot Autofix powered by AI in #39 (10e8e)
- Remove virtaulRender prop - by @subframe7536 (34f9c)
- slider:
- Unify marker prop and slot naming - by @subframe7536 (c3a35)
- theme:
- Simplify font and sidebar width configuration - by @subframe7536 (d1d9f)
- types:
- Require explicit component slot prop types - by @subframe7536 (da710)
- unocss:
- Make Wind3 compatibility explicit - by @subframe7536 (c6469)
- utils:
- Move createId to moraine/utils - by @subframe7536 (e2704)
🚀 Features
- Use-button-interaction - by @subframe7536 (3db4f)
- Streamline package exports and API docs - by @subframe7536 (fe9bc)
- Add --control support - by @subframe7536 (5f4de)
- Add semantic shadow and backdrop tokens - by @subframe7536 (ca14c)
- Add ToggleButton - by @subframe7536 (f53b1)
- accordion:
- Rename loopFocus to loop - by @subframe7536 (20262)
- accordion, collapsible:
- Add initOpen state - by @subframe7536 (8b518)
- badge:
- Add
asprops - by @subframe7536 (92e64)
- Add
- base-select:
- Support loop prop and guard empty collections - by @subframe7536 (f4662)
- css:
- Inline border radius and setup font size - by @subframe7536 (45957)
- empty:
- Add styled empty state component - by @subframe7536 (b2577)
- form:
- Support hidden field labels and align muted text color - by @subframe7536 (233b3)
- icon:
- Autocomplete built-in aliases and use Moraine toast icons - by @subframe7536 in #56 (55181)
- input-group:
- Init - by @subframe7536 (7fff3)
- input-number:
- Tweak vertical style - by @subframe7536 (66e87)
- modal:
- Support trapFocus prop and improve focus containment - by @subframe7536 (92874)
- multi-select:
- Add tagLabel slot and optimize tag padding - by @subframe7536 (8f8ce)
- navigation-menu:
- Init - by @subframe7536 (12d37)
- overlays:
- Support onExitComplete callback - by @subframe7536 (2b360)
- radio-group:
- Support loop prop for keyboard navigation - by @subframe7536 (8b358)
- scroll-area:
- Add native scrolling with optional edge shadows - by @subframe7536 (9acb1)
- sidebar-frame:
- Add refs - by @subframe7536 (a70da)
- Add SidebarFrame.Trigger and improve styles - by @subframe7536 in #44 (e78fd)
- Add menu layer (Group, GroupLabel, Menu, Item, Sub) - by @subframe7536 (f9a21)
- Simplify menu layer and add more props - by @subframe7536 (641c4)
- skeleton:
- Add placeholders with pulse and shimmer animations - by @subframe7536 (362e4)
- slider:
- Improve bold style - by @subframe7536 (e776b)
- stepper:
- Support loop prop for keyboard navigation - by @subframe7536 (25e0e)
- tabs:
- Rename keyboardLoop to loop - by @subframe7536 (806bc)
- tooltip:
- Add kbdVariant prop - by @subframe7536 (93e4c)
- unocss:
- Support theme color schemes - by @subframe7536 (12748)
- utils:
- Expose slider and resizable hooks and decouple form reset - by @subframe7536 (b1f4a)
🐞 Bug Fixes
- Refine file upload styling - by @subframe7536 (8a1a2)
- Preserve component behavior through SSR hydration - by @subframe7536 (104da)
- Sync base-ui fixes - by @subframe7536 (a52d1)
- Lock select scroll ancestors - by @subframe7536 (4765c)
- Correct sizes metrics - by @subframe7536 (d9639)
- Resolve ci type failures - by @subframe7536 (64062)
- Avoid nested select clear button - by @subframe7536 in #50 (b3558)
- Preserve overlay event order and root form types - by @subframe7536 in #73 (e2f26)
- Restore main CI typecheck and docs tests - by @subframe7536 in #75 (10752)
- accordion:
- Hide retained closed panels - by @subframe7536 (e9011)
- Support ariaLabel and accessible name fallback - by @subframe7536 (3cc8e)
- base-select:
- Expose read-only listboxes - by @subframe7536 (39baf)
- Unify form controls - by @subframe7536 in #52 (ef0c9)
- button:
- Normalize group variant inheritance - by @subframe7536 (e3020)
- button-group:
- Restore explicit separator - by @subframe7536 in #40 (a8ff9)
- Remove default size and variant - by @subframe7536 (6fd21)
- checkbox:
- Bridge visual focus lifecycle - by @subframe7536 (5b49b)
- Prevent premature form store writes and wrap group effects in on() - by @subframe7536 (7781e)
- checkbox-group:
- Bridge field focus boundaries - by @subframe7536 (e5961)
- collapsible:
- Hide retained closed content - by @subframe7536 (cbfcd)
- combobox:
- Align readonly autocomplete semantics - by @subframe7536 (1df8f)
- Add keyboard clear paths and make clear button focusable - by @subframe7536 (bd88a)
- command-palette:
- Guard composition Enter - by @subframe7536 (8a332)
- context-menu:
- Merge trigger disabled a11y and guard commitOpen - by @subframe7536 (49409)
- dropdown-menu:
- Guard commitOpen against redundant onOpenChange calls - by @subframe7536 (ec4e2)
- element:
- Restore content fallback on custom measure cleanup - by @subframe7536 (139df)
- field:
- Register bound control refs directly - by @subframe7536 (77276)
- file-upload:
- Focus the visible picker on invalid - by @subframe7536 (8a027)
- form:
- Focus invalid controls in DOM order - by @subframe7536 (83206)
- Align Formisch registration and scoped focus - by @subframe7536 in #69 (a2637)
- Register select focus owner and wire input event emission - by @subframe7536 (d7d1c)
- Deduplicate base-select control registration and verify select focus - by @subframe7536 (65696)
- forms:
- Unify form attributes - by @subframe7536 (14528)
- Unify gap and correct size - by @subframe7536 (cf8eb)
- icon:
- Normalize accessible icon semantics - by @subframe7536 (87004)
- input:
- Defer controlled sync during composition - by @subframe7536 (c0701)
- Preserve normalized uncontrolled values - by @subframe7536 (fa052)
- input-group:
- Support interactive iframe addons - by @subframe7536 (dbdce)
- Ignore portaled outside pointerdown to avoid focus ring activation - by @subframe7536 (d110f)
- input-modifiers:
- Enforce number and empty modifier contract - by @subframe7536 (56c43)
- input-number:
- Support localized accessible input - by @subframe7536 (e0a33)
- Handle delegated events in iframe owner document - by @subframe7536 in #63 (d8b41)
- list:
- Support RTL horizontal virtualization - by @subframe7536 (69195)
- modal:
- Align modal accessibility behavior - by @subframe7536 (5831e)
- Toggle open state on trigger activation when non-modal - by @subframe7536 (473ab)
- multi-select:
- Consistent remove icon position when disabled - by @subframe7536 (56fa5)
- Describe overflow selections - by @subframe7536 (f1f59)
- Put clear button in tab order - by @subframe7536 (90d49)
- navigation:
- Guard collection activation when current item is disabled - by @subframe7536 (5e898)
- overlay:
- Normalize outside interaction and focus behavior - by @subframe7536 in #47 (3574e)
- Scope shared interactions by document - by @subframe7536 (1e97a)
- Correct overlay document realms and modal behavior - by @subframe7536 in #71 (f95cc)
- pagination:
- Render active page as non-navigating button when to is set - by @subframe7536 (0be44)
- popover:
- Improve keyboard and modal access - by @subframe7536 (145fe)
- progress:
- Preserve reverse vertical animation - by @subframe7536 (aad92)
- radio-group:
- Bridge group focus to Field - by @subframe7536 (f32e7)
- resizable:
- Scope drag sessions to owner documents - by @subframe7536 (a6315)
- Lock non-resizable panels and improve collapse handle a11y - by @subframe7536 (2acac)
- select:
- Restore non-editable focus rings - by @subframe7536 in #43 (dfe1f)
- Default search input autocomplete to off on combobox and multiselect - by @subframe7536 (c8e4d)
- Keep highlighted item scrolling inside listbox - by @subframe7536 in #62 (b59da)
- Make clear control keyboard and AT accessible - by @subframe7536 (cb248)
- sheet:
- Always add max width when side is horizen - by @subframe7536 (5e03f)
- sidebar-frame:
- Mobile support - by @subframe7536 (15818)
- Inert closed sidebar to prevent focus leak - by @subframe7536 (485d3)
- Name the mobile navigation dialog - by @subframe7536 (e52eb)
- slider:
- Correct multiple thumb bold variant, support children - by @subframe7536 (a9ac6)
- Align RTL and field focus behavior - by @subframe7536 (3c632)
- stepper:
- Link mounted panels only - by @subframe7536 (788b6)
- switch:
- Bridge visual focus to Field - by @subframe7536 (fbd6a)
- Prevent premature form store writes for controlled switch - by @subframe7536 (5a480)
- tabs:
- Link controls to mounted panels - by @subframe7536 (e5c50)
- textarea:
- Use the owner window for autoresize - by @subframe7536 (631a7)
- theme:
- Align neutral colors and document theme variables - by @subframe7536 (f8df5)
- Ensure utility compatibility across CSS engines - by @subframe7536 (95cf5)
- tooltip:
- Transition panels between active triggers - by @subframe7536 (c9ceb)
- unocss:
- Preserve inline scaling with native utility sorting - by @subframe7536 (62e39)
- utils:
- Capture fallback id once per owner in createId - by @subframe7536 (3e381)
- virtualizer:
- Avoid row remounts on entries array identity change - by @subframe7536 (bb559)