import React from 'react' import { ChevronLeft, ChevronRight } from 'lucide-react' const STORAGE_KEY = 'wpvfb_left_rail_collapsed' /** Collapsed state remembered by the rail (false when none / storage blocked). */ export function readRailCollapsed() { try { return window.localStorage.getItem(STORAGE_KEY) === '1' } catch (e) { return false } } export function storeRailCollapsed(v) { try { window.localStorage.setItem(STORAGE_KEY, v ? '1' : '0') } catch (e) { /* ignore */ } } /** * Left icon rail shell (the reference builder F:7238-7374): 84px ↔ 48px with a chevron tab on the right edge, #fafafa background. * Props: collapsed, onToggle(next), children (render FloatingIcons with collapsed={collapsed}), footer (optional). */ export default function LeftRail({ collapsed = false, onToggle, children, footer }) { const toggle = () => { storeRailCollapsed(!collapsed) if (onToggle) onToggle(!collapsed) } return ( ) }