feat: Add Ombi request filtering and search
Build and Push Docker Image / build (push) Successful in 1m29s
Docs Check / Markdown lint (push) Successful in 1m51s
Licence Check / Licence compatibility and copyright header verification (push) Failing after 2m3s
CI / Security audit (push) Successful in 2m54s
CI / Swagger Validation & Coverage (push) Successful in 3m6s
Docs Check / Mermaid diagram parse check (push) Successful in 3m13s
CI / Tests & coverage (push) Successful in 3m31s

- Add request filters UI (type, status, sort, search)
- Implement dual-layer filtering (server + client)
- Add ombiFilters utility for consistent filtering logic
- Persist filter preferences in localStorage
- Add SSE support for real-time Ombi request updates
- Add webhook endpoints for Ombi integration
- Update OpenAPI spec for new endpoints
- Add unit tests for filter logic and UI
- Add integration tests for Ombi routes
This commit is contained in:
2026-05-22 12:31:31 +01:00
parent dbf45ec31d
commit d3d085d614
17 changed files with 1695 additions and 83 deletions
+52
View File
@@ -218,6 +218,58 @@ components:
description: Additional error details (dev-only)
example: "Emby API returned 401"
OmbiRequest:
type: object
description: Normalised Ombi movie or TV request
properties:
id:
type: integer
example: 123
title:
type: string
example: "The Batman"
requestedDate:
type: string
format: date-time
nullable: true
example: "2026-05-21T10:00:00.000Z"
available:
type: boolean
example: false
approved:
type: boolean
example: true
denied:
type: boolean
example: false
requested:
type: boolean
example: true
deniedReason:
type: string
nullable: true
example: "Already on Plex"
theMovieDbId:
type: integer
nullable: true
example: 414906
year:
type: integer
nullable: true
example: 2022
quality:
type: string
nullable: true
example: "1080p"
requestedUser:
type: object
nullable: true
mediaType:
type: string
enum: [movie, tv]
description: Injected by Sofarr to distinguish movies from TV
example: "movie"
BlocklistSearchRequest:
type: object
required: