feat(server): Add album filter to search (#18985)

* - updated dtos
- added inAlbums to search builder
- only check isNotInAlbum if albumIds is blank/empty

* - consider inAlbums as OR

* - make open-api-dart

* - lint & format

* - remove inAlbums groupBy clause

* - merge main open-api

* - make open-api

* - inAlbums filter AND instead of OR
This commit is contained in:
xCJPECKOVERx 2025-06-09 11:11:43 -04:00 committed by GitHub
parent 242817c49a
commit 14d785cec9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 97 additions and 6 deletions

View file

@ -10866,6 +10866,13 @@
},
"MetadataSearchDto": {
"properties": {
"albumIds": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"checksum": {
"type": "string"
},
@ -11785,6 +11792,13 @@
},
"RandomSearchDto": {
"properties": {
"albumIds": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"city": {
"nullable": true,
"type": "string"
@ -12833,6 +12847,13 @@
},
"SmartSearchDto": {
"properties": {
"albumIds": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"city": {
"nullable": true,
"type": "string"
@ -13029,6 +13050,13 @@
},
"StatisticsSearchDto": {
"properties": {
"albumIds": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"city": {
"nullable": true,
"type": "string"

View file

@ -853,6 +853,7 @@ export type SearchExploreResponseDto = {
items: SearchExploreItem[];
};
export type MetadataSearchDto = {
albumIds?: string[];
checksum?: string;
city?: string | null;
country?: string | null;
@ -929,6 +930,7 @@ export type PlacesResponseDto = {
name: string;
};
export type RandomSearchDto = {
albumIds?: string[];
city?: string | null;
country?: string | null;
createdAfter?: string;
@ -962,6 +964,7 @@ export type RandomSearchDto = {
withStacked?: boolean;
};
export type SmartSearchDto = {
albumIds?: string[];
city?: string | null;
country?: string | null;
createdAfter?: string;
@ -996,6 +999,7 @@ export type SmartSearchDto = {
withExif?: boolean;
};
export type StatisticsSearchDto = {
albumIds?: string[];
city?: string | null;
country?: string | null;
createdAfter?: string;