- Implemented `countByStatusInCompany` method in `SequelizeProformaRepositoryV2` and `ProformaRepository` to count proformas by status.
- Introduced `ProformaStatusCounts` type and `EMPTY_PROFORMA_STATUS_COUNTS` constant for managing status counts.
- Updated the `ProformasGrid` and `IssuedInvoicesGrid` components to support searching and fetching states.
- Enhanced the UI to display status counts in the segmented filter for proformas.
- Refactored the proforma list and issued invoices page to include search input and status filters with loading states.
- Added new entities and adapters for handling proforma status counts in the application layer.
- Updated proforma listing behavior to utilize `Criteria filters[]` for managing archived and active proformas.
- Removed `archived` query parameter from backend; frontend now manages `archiveView` state.
- Implemented new filters for `archived_at` and `status` in the proforma listing API.
- Adjusted proforma creation and deletion contracts to reflect changes in archiving logic.
- Introduced new utility functions for building proforma listing criteria based on UI state.
- Updated frontend components to support new filtering options and maintain state in the URL.
- Added SQL index for improved performance on proforma queries.
- Created new TypeScript types for managing proforma list filters and criteria.
- Added SequelizeProformaV2RecipientDomainMapper for mapping recipient data to domain model.
- Introduced SequelizeProformaV2TaxesDomainMapper for handling tax data mapping.
- Created SequelizeProformaV2RecipientSummaryMapper for summarizing recipient information.
- Developed SequelizeProformaV2SummaryMapper for mapping Proforma summary data.
- Implemented SequelizeProformaRepositoryV2 for managing Proforma data persistence.
- Added SequelizeProformaV2NumberGenerator for generating Proforma numbers.