"use client"; import { BottomSheetRoot, BottomSheetBackdrop, BottomSheetPositioner, BottomSheetContent, BottomSheetHeader, BottomSheetTitle, BottomSheetCloseButton, BottomSheetBody, Icon, ListRoot, ListItem, ListContent, ListTitle, } from "@seed-design/react"; import type { Category } from "@/api/schemas"; import { accountingStrings as s } from "./strings"; export interface CategorizeSheetProps { open: boolean; onOpenChange: (open: boolean) => void; categories: Category[]; /** The transaction's current category (main or sub) — highlighted in the list. */ selected?: string; onSelect: (category: Category) => void; } const closeSvg = ( ); const checkSvg = ( ); /** * Category picker bottom sheet (ports `CategoryPickerSheet` from * `ios/Mercury/Features/Planner/PlannerEditViews.swift`, opened from the * transaction detail's Ангилал row): a titled list of all categories, * tap-to-select, checkmark on the current pick. */ export function CategorizeSheet({ open, onOpenChange, categories, selected, onSelect }: CategorizeSheetProps) { return ( {s.categoryPicker.title} {categories.map((cat) => { const isSelected = cat.name === selected; return ( ); })} ); }