/* Sidebar.jsx — Ordentus left rail.
Mini-calendar + nav rows. Active row promoted to white. */
const ICONS = {
home: ,
calendar: ,
sleep: ,
brain: ,
heart: ,
bolt: ,
sun: ,
};
function SidebarItem({ icon, color, label, count, active, onClick }) {
return (
{icon}
{label}
{count != null ? {count} : null}
);
}
function MiniCalendar() {
// Simple May 2026 strip — Today = 13.
const days = [
[26,27,28,29,30, 1, 2],
[ 3, 4, 5, 6, 7, 8, 9],
[10,11,12,13,14,15,16],
[17,18,19,20,21,22,23],
[24,25,26,27,28,29,30],
];
const isPrev = (n, ri) => ri === 0 && n > 7;
const isToday = n => n === 13;
return (
May 2026‹ ›
{['S','M','T','W','T','F','S'].map((d,i) => (
{d}
))}
{days.flat().map((n,i) => {
const muted = isPrev(n, Math.floor(i/7));
const today = isToday(n) && !muted;
return (
{n}
);
})}
);
}
function Sidebar({ activeView, onNav }) {
return (
);
}
window.Sidebar = Sidebar;