Skip to content

Add bulk invoice status filter presets to dashboard #257

Description

@Kingsman-99

Description

src/app/dashboard/page.tsx presumably has basic filtering but no one-click presets for common views (e.g. "Overdue", "Awaiting my payment", "Needs my approval"). This issue adds named filter presets.

Technical Context

Involves src/app/dashboard/page.tsx. Add a row of preset filter chips computing each from existing invoice data: Overdue (deadline < now && status === Pending), Awaiting my payment (connected address in recipients/allowed payers, not yet paid), Needs my approval (connected address is approver, approved === false).

Acceptance Criteria

  • Each preset chip, when active, filters the dashboard list to exactly the matching set with a visible count badge
  • Presets are mutually exclusive with manual filters being clearable independently (clicking a preset resets manual filters)
  • Counts update live as invoice state changes (e.g. a payment made elsewhere updates "Awaiting my payment")
  • Zero-match preset shows an appropriate empty state per preset (not a generic "no invoices")
  • Unit tests: each preset's matching logic against a mixed sample dataset

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions