docs: rename LayrzTooltipPosition to LayrzPreferredSide
The tooltip's four-value side vocabulary moves to a new shared
package-level type, LayrzPreferredSide, also consumed by
LayrzAnchoredPanel. Same four values, same semantics.
fix(wiki): correct release version from 0.0.14 to 0.0.12
docs(wiki): ship selection module and update design tokens (0.0.14)
- Add LayrzSelectableAction, LayrzSelectionToolbar, LayrzTextSelectionControls, LayrzSelectionMagnifier, LayrzSelectionHandlePainter pages to wiki
- Register new selection pages in Widgets/_Sidebar.md
- Create Domain: Selection in Component-Catalog.md with all five types
- Fix Design-Tokens.md surface color usage: cards now use sf1 (not sf2), with elevation shadow for separation
- Remove kLightBackgroundColor from Application Constants (removed in 0.0.14)
- Update LayrzTextInput.md to reference sf1 instead of surface2
- Mark LayrzText as removed (deleted in 0.0.14), remove from Display sidebar section
- Delete LayrzText.md from wiki (component was removed from code)
docs: add wiki pages for M5 components (Layout, ScaffoldShell, Scrollbar)
- Rewrite LayrzLayout.md: complete specification for D37 scope
- Sidebar (desktop) and drawer (mobile) presentations
- Flat navigator items: Page and Label only
- User menu dropdown, notifications footer
- Container-driven breakpoints
- Create LayrzScaffoldShell.md: adaptive list-detail shell specification
- Generic over item type T
- Consumer-owned filtering and detail view
- Two-pane (desktop) and single-pane (mobile) presentations
- Full API contract and examples
- Create LayrzScrollbar.md: Material-free scrollbar documentation
- Built on RawScrollbar
- Installed by LayrzApp by default
- Vertical scrollables only; horizontal and touch exempt
- Migration guide from Material Scrollbar
- Update Component-Catalog.md:
- Add 'Domain: Application Shells and Navigation' section
- Update M5 component list to reflect actual scope (12 components)
- Reconcile dropped nav variants per D37
- Register all three new pages in wiki sidebar under Layout section
docs: add LayrzDropdownMenu, update LayrzText, sidebar and catalog
docs: trim LayrzButton and LayrzAlert style variants (DESIGN-20, DESIGN-22)
docs: document LayrzCard and the breakpoint tokens
Rewrite the LayrzCard page from draft to final API. Update the Grid page and
Design Tokens for breakpoints moving onto the theme, and add LayrzCard to the
Component Catalog.
docs: add Grid page for LayrzRow, LayrzCol and LayrzConstrainedView
docs(button): rewrite LayrzButton for the shipped API
The LayrzButton wiki page had drifted nine rounds out of date and documented an API that no longer existed. It now describes the twelve styles including `text` and `fab`; `LayrzButtonType` and its token mapping; the six semantic factories with their per-factory `isElevated` defaults and the reasoning behind `.cancel` and `.delete` differing; the `LayrzButtonController`, including that one controller drives many buttons in lockstep, that cooldown auto-clears on expiry, and the anti-flash floor; the four-state interaction model and the fill ladder, with keyboard focus rendering as hover; and that sizing is standardised rather than caller-configurable. Removed references to `isMobile`, `tooltipEnabled`, the separate `isLoading`/`isCooldown` listenables and the five deleted sizing parameters. The Component Catalog row is updated to match.
Co-Authored-By: Anthropic Claude <noreply@anthropic.com>
docs(button): document LayrzButton API and update catalog
The LayrzButton page now documents the shipped API:
- Ten style variants (.standard, .filled, .outlined, .filledTonal, .filledIcon,
.fab, .fabSmall, .icon, .ghost, .text)
- Six semantic factories (.save, .cancel, .info, .show, .edit, .delete)
- Externally-owned ValueListenable<bool>? for isLoading and isCooldown states
- Nullable onTap + isDisabled disabled state contract
- RawTooltip-for-now caveat for FAB variants
The Component Catalog row for LayrzButton has been updated to reflect the
completed implementation. The three previously open questions on the page
have been resolved.
GitHub issue #21 (LayrzButton component).
docs: rename the scaffold component to LayrzScaffoldShell
ThemedScaffoldView and ThemedScaffoldCell are retired rather than ported.
layrz_ui ships a single public LayrzScaffoldShell; the view and cell
become private implementation details.
Co-Authored-By: Anthropic Claude <noreply@anthropic.com>
docs: add card, avatar, table, snackbar and layout pages
Five new component pages:
- LayrzCard, a brand-new elevation shell with hover and onTap. Intent
is confirmed but its parameter list is still open.
- LayrzAvatar, mirroring ThemedAvatar. Its dynamicAvatar path depends
on layrz_models, which is deferred under decision D2.
- LayrzTable, mirroring ThemedTable2. Frames the scrolling foundation
as an open choice between sync_scroll_controller, the clean
two_dimensional_scrollables TableView primitives, or the SDK's
TwoDimensionalViewport directly.
- LayrzSnackbar, confirmed scope, with mandatory titleText and
descriptionText, a type defaulting to success, icon and color valid
only for the custom type, a 10 second default duration and a
nullable onTap that runs then dismisses.
- LayrzLayout, a placeholder. ThemedLayout offers three desktop and
two mobile presentations that must be narrowed to one before this
can be specified.
Component-Catalog and the widgets sidebar are updated to index them.
Co-Authored-By: Anthropic Claude <noreply@anthropic.com>
docs: add documentation for new input components and update sidebar
- Introduced `LayrzTextAreaInput` for multiline text input with detailed specifications and interaction patterns.
- Added `LayrzTimeInput` for single time selection and `LayrzTimeRangeInput` for time range selection, both derived from `layrz_theme`.
- Updated `_Sidebar.md` to include new input components and organized references for better navigation.
- Created `_Footer.md` for consistent branding across documentation.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>