/// import { Cell, Default, NAME, pattern, UI } from "commontools"; import { type CategoryBudget, type Expense } from "./schemas.tsx"; import DataView from "./data-view.tsx"; import ExpenseForm from "./expense-form.tsx"; // Use SINGLE type parameter to avoid conflict bug with sub-pattern rendering interface State { expenses: Cell>; budgets: Cell>; } export default pattern(({ expenses, budgets }) => { const dataView = DataView({ expenses, budgets }); const expenseForm = ExpenseForm({ expenses, budgets }); return { [NAME]: "Budget Tracker", [UI]: (
{expenseForm}
{dataView}
), expenses, budgets, }; });