Move UI to BoardUI with slate + salmon theme; add PDF plan export
- Adopt BoardUI (Pro init): theme tokens, Inter, .dark mode, Button,
SegmentedControl, Meter, Skeleton and ThemeToggle; remap the app's
color aliases onto BoardUI tokens and swap lucide for Remix icons
- Retint BoardUI's neutral ramp to cool slate with a salmon accent;
drop the dotted background; raise muted text contrast
- Simplify the landing page and remove the overlap explorer
- Planner: explicit "I have this" toggle on grocery lines, pantry panel
above the menu with the staples list spelled out, sticky aisle
header fix, and a "Download PDF" plan export (jsPDF, lazy-loaded)
- Recipes: replace the family cabbage soup with Cade's Cabbage Soup
(adds Bone-In Ham Steak to the catalog); remove Ham, Bean & Cabbage Soup
- Remove unused BoardUI components, dependencies and exports
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 16:36:33 -06:00
|
|
|
import { RiHeart3Line as BookHeart, RiRestaurant2Line as CookingPot, RiCupLine as CupSoda, RiSailboatLine as Fish, RiFireLine as Flame, RiTempHotLine as Heater, RiLeafLine as Leaf, RiArchive2Line as PackageCheck, RiSeedlingLine as Salad, RiBowlLine as Soup, RiTimerLine as Timer, RiRestaurantLine as Utensils, RiWindyLine as Wind, RiFlashlightLine as Zap } from "@remixicon/react";
|
|
|
|
|
import type { ComponentProps } from "react";
|
2026-10-31 20:44:29 -05:00
|
|
|
import type { Appliance, CookingStyle } from "@/app/types";
|
|
|
|
|
|
Move UI to BoardUI with slate + salmon theme; add PDF plan export
- Adopt BoardUI (Pro init): theme tokens, Inter, .dark mode, Button,
SegmentedControl, Meter, Skeleton and ThemeToggle; remap the app's
color aliases onto BoardUI tokens and swap lucide for Remix icons
- Retint BoardUI's neutral ramp to cool slate with a salmon accent;
drop the dotted background; raise muted text contrast
- Simplify the landing page and remove the overlap explorer
- Planner: explicit "I have this" toggle on grocery lines, pantry panel
above the menu with the staples list spelled out, sticky aisle
header fix, and a "Download PDF" plan export (jsPDF, lazy-loaded)
- Recipes: replace the family cabbage soup with Cade's Cabbage Soup
(adds Bone-In Ham Steak to the catalog); remove Ham, Bean & Cabbage Soup
- Remove unused BoardUI components, dependencies and exports
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 16:36:33 -06:00
|
|
|
type RemixiconProps = ComponentProps<typeof Flame>;
|
|
|
|
|
|
|
|
|
|
export function ApplianceIcon({ id, className = "size-4", ...props }: { id: Appliance } & RemixiconProps) {
|
2026-10-31 20:44:29 -05:00
|
|
|
const shared = { className, strokeWidth: 1.75, "aria-hidden": true as const, ...props };
|
|
|
|
|
switch (id) {
|
|
|
|
|
case "stovetop":
|
|
|
|
|
return <Flame {...shared} />;
|
|
|
|
|
case "oven":
|
|
|
|
|
return <Heater {...shared} />;
|
|
|
|
|
case "air_fryer":
|
|
|
|
|
return <Wind {...shared} />;
|
|
|
|
|
case "slow_cooker":
|
|
|
|
|
return <Soup {...shared} />;
|
|
|
|
|
case "microwave":
|
|
|
|
|
return <Zap {...shared} />;
|
|
|
|
|
case "blender":
|
|
|
|
|
return <CupSoda {...shared} />;
|
|
|
|
|
case "rice_cooker":
|
|
|
|
|
return <CookingPot {...shared} />;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
Move UI to BoardUI with slate + salmon theme; add PDF plan export
- Adopt BoardUI (Pro init): theme tokens, Inter, .dark mode, Button,
SegmentedControl, Meter, Skeleton and ThemeToggle; remap the app's
color aliases onto BoardUI tokens and swap lucide for Remix icons
- Retint BoardUI's neutral ramp to cool slate with a salmon accent;
drop the dotted background; raise muted text contrast
- Simplify the landing page and remove the overlap explorer
- Planner: explicit "I have this" toggle on grocery lines, pantry panel
above the menu with the staples list spelled out, sticky aisle
header fix, and a "Download PDF" plan export (jsPDF, lazy-loaded)
- Recipes: replace the family cabbage soup with Cade's Cabbage Soup
(adds Bone-In Ham Steak to the catalog); remove Ham, Bean & Cabbage Soup
- Remove unused BoardUI components, dependencies and exports
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 16:36:33 -06:00
|
|
|
export function StyleIcon({ id, className = "size-3.5", ...props }: { id: CookingStyle } & RemixiconProps) {
|
2026-10-31 20:44:29 -05:00
|
|
|
const shared = { className, strokeWidth: 1.75, "aria-hidden": true as const, ...props };
|
|
|
|
|
switch (id) {
|
|
|
|
|
case "caydens_corner":
|
|
|
|
|
return <BookHeart {...shared} />;
|
|
|
|
|
case "seafood":
|
|
|
|
|
return <Fish {...shared} />;
|
|
|
|
|
case "quick":
|
|
|
|
|
return <Timer {...shared} />;
|
|
|
|
|
case "vegetarian":
|
|
|
|
|
return <Leaf {...shared} />;
|
|
|
|
|
case "healthy":
|
|
|
|
|
return <Salad {...shared} />;
|
|
|
|
|
case "meal_prep":
|
|
|
|
|
return <PackageCheck {...shared} />;
|
|
|
|
|
case "comfort":
|
|
|
|
|
return <Utensils {...shared} />;
|
|
|
|
|
}
|
|
|
|
|
}
|