docs(sheets): add LayrzBottomSheet page, register in sidebar (0.0.14)
LayrzBottomSheet shipped with zero documentation despite being the
most-changed component in 0.0.14 and the mobile/narrow-band presentation
surface for three picker inputs and LayrzScaffoldShell's detail sheet.
Modeled on LayrzAnchoredPanel.md's structure (Overview / API Structure /
Usage Examples / Behavior / Placement in the UI), since both are
static-surface, behaviour-heavy overlay components rather than stateful
widgets with a long constructor.
Documents, read directly from lib/src/sheets/src/bottom_sheet.dart:
- The full show<T>() parameter list, including snapSizes/minSize/maxSize/
showDragHandle/scrollable, none of which were in the release brief.
- Safe area: content inset clear of system bars while the surface stays
edge-to-edge under them, and why SafeArea alone composes with the
keyboard for free (paddingOf collapses to zero under the keyboard,
unlike viewPadding).
- Keyboard shrink-and-pin, inert expansion controls, working drag-to-
dismiss via a separate dismiss-only gesture path, and exact-size restore
on keyboard close -- cross-linked to D65, which LayrzLayout.md also
documents for the same underlying pattern.
- The ModalRoute.isCurrent double-pop guard on every pop site (barrier tap,
Escape, both drag-to-dismiss paths), stated plainly that the unguarded
version silently dismissed the caller's own page in a release build.
- isPersistent's full behavioral matrix (barrier, Escape, double-pop guard,
route semantics -- vs. keyboard handling and drag, which apply to both).
- useRootNavigator, with the same go_router ShellRoute rationale already
on LayrzScaffoldShell.md, cross-linked both ways.
- scrollable: false and the PrimaryScrollController handoff it enables.
Registered in Widgets/_Sidebar.md under Navigation, alphabetically between
LayrzAnchoredPanel and LayrzDropdownMenu -- the closest existing widgets in
kind (anchor/overlay presentation surfaces), matching the sidebar's
alphabetical-within-group ordering.
Cross-linked LayrzScaffoldShell.md's two existing prose mentions of
LayrzBottomSheet to the new page, plus a Related entry.