
- This release adds the Tabs implementation for solid-headless. You can check out the demo here.
- Drops the use of JSX
- The code is manually written so that props are properly optimized and applies DRY much better. This also means that
solid-headless can now be used without building the package.
- For Vite SSR,
solid-headless is no longer needed to be added for ssr.noExternal.
- Deprecated the use of
data-sh-*={ownerID}. Components are now accompanied with data-sh={tag}, this allows querying components properly as well as writing better selectors. Components that previously do not have those tags also now have their own tags.
Example:
[data-sh="tab-group"] {
width: 100%;
display: flex;
align-items: stretch;
justify-content: center;
}
- Fix some components not strictly following proper hierarchy.
- Fix some components with mismatching default constructor vs type constructor.
- Rework for controllable components
multiple is now static for HeadlessSelect-based components (RadioGroup, Listbox, Select, etc.)
- Dirty check for controllable detection is removed for future proof.
- Better type inference for controlled vs uncontrolled usage (e.g.
Modal will now complain if either defaultOpen or isOpen isn't used)
- Fix components with focus lock (e.g.
Modal) now also resume focus to last focus start point if the last focused element is no longer available.