mirror of
https://github.com/immich-app/immich.git
synced 2026-05-18 03:10:24 +03:00
refactor!: change number to integer types (#27912)
* refactor!: change number to integer types * fix oversight
This commit is contained in:
Generated
+6
-6
@@ -183,15 +183,15 @@ class PeopleApi {
|
|||||||
/// * [String] closestPersonId:
|
/// * [String] closestPersonId:
|
||||||
/// Closest person ID for similarity search
|
/// Closest person ID for similarity search
|
||||||
///
|
///
|
||||||
/// * [num] page:
|
/// * [int] page:
|
||||||
/// Page number for pagination
|
/// Page number for pagination
|
||||||
///
|
///
|
||||||
/// * [num] size:
|
/// * [int] size:
|
||||||
/// Number of items per page
|
/// Number of items per page
|
||||||
///
|
///
|
||||||
/// * [bool] withHidden:
|
/// * [bool] withHidden:
|
||||||
/// Include hidden people
|
/// Include hidden people
|
||||||
Future<Response> getAllPeopleWithHttpInfo({ String? closestAssetId, String? closestPersonId, num? page, num? size, bool? withHidden, }) async {
|
Future<Response> getAllPeopleWithHttpInfo({ String? closestAssetId, String? closestPersonId, int? page, int? size, bool? withHidden, }) async {
|
||||||
// ignore: prefer_const_declarations
|
// ignore: prefer_const_declarations
|
||||||
final apiPath = r'/people';
|
final apiPath = r'/people';
|
||||||
|
|
||||||
@@ -244,15 +244,15 @@ class PeopleApi {
|
|||||||
/// * [String] closestPersonId:
|
/// * [String] closestPersonId:
|
||||||
/// Closest person ID for similarity search
|
/// Closest person ID for similarity search
|
||||||
///
|
///
|
||||||
/// * [num] page:
|
/// * [int] page:
|
||||||
/// Page number for pagination
|
/// Page number for pagination
|
||||||
///
|
///
|
||||||
/// * [num] size:
|
/// * [int] size:
|
||||||
/// Number of items per page
|
/// Number of items per page
|
||||||
///
|
///
|
||||||
/// * [bool] withHidden:
|
/// * [bool] withHidden:
|
||||||
/// Include hidden people
|
/// Include hidden people
|
||||||
Future<PeopleResponseDto?> getAllPeople({ String? closestAssetId, String? closestPersonId, num? page, num? size, bool? withHidden, }) async {
|
Future<PeopleResponseDto?> getAllPeople({ String? closestAssetId, String? closestPersonId, int? page, int? size, bool? withHidden, }) async {
|
||||||
final response = await getAllPeopleWithHttpInfo( closestAssetId: closestAssetId, closestPersonId: closestPersonId, page: page, size: size, withHidden: withHidden, );
|
final response = await getAllPeopleWithHttpInfo( closestAssetId: closestAssetId, closestPersonId: closestPersonId, page: page, size: size, withHidden: withHidden, );
|
||||||
if (response.statusCode >= HttpStatus.badRequest) {
|
if (response.statusCode >= HttpStatus.badRequest) {
|
||||||
throw ApiException(response.statusCode, await _decodeBodyBytes(response));
|
throw ApiException(response.statusCode, await _decodeBodyBytes(response));
|
||||||
|
|||||||
Generated
+6
-6
@@ -404,10 +404,10 @@ class SearchApi {
|
|||||||
/// * [List<String>] personIds:
|
/// * [List<String>] personIds:
|
||||||
/// Filter by person IDs
|
/// Filter by person IDs
|
||||||
///
|
///
|
||||||
/// * [num] rating:
|
/// * [int] rating:
|
||||||
/// Filter by rating [1-5], or null for unrated
|
/// Filter by rating [1-5], or null for unrated
|
||||||
///
|
///
|
||||||
/// * [num] size:
|
/// * [int] size:
|
||||||
/// Number of results to return
|
/// Number of results to return
|
||||||
///
|
///
|
||||||
/// * [String] state:
|
/// * [String] state:
|
||||||
@@ -443,7 +443,7 @@ class SearchApi {
|
|||||||
///
|
///
|
||||||
/// * [bool] withExif:
|
/// * [bool] withExif:
|
||||||
/// Include EXIF data in response
|
/// Include EXIF data in response
|
||||||
Future<Response> searchLargeAssetsWithHttpInfo({ List<String>? albumIds, String? city, String? country, DateTime? createdAfter, DateTime? createdBefore, bool? isEncoded, bool? isFavorite, bool? isMotion, bool? isNotInAlbum, bool? isOffline, String? lensModel, String? libraryId, String? make, int? minFileSize, String? model, String? ocr, List<String>? personIds, num? rating, num? size, String? state, List<String>? tagIds, DateTime? takenAfter, DateTime? takenBefore, DateTime? trashedAfter, DateTime? trashedBefore, AssetTypeEnum? type, DateTime? updatedAfter, DateTime? updatedBefore, AssetVisibility? visibility, bool? withDeleted, bool? withExif, }) async {
|
Future<Response> searchLargeAssetsWithHttpInfo({ List<String>? albumIds, String? city, String? country, DateTime? createdAfter, DateTime? createdBefore, bool? isEncoded, bool? isFavorite, bool? isMotion, bool? isNotInAlbum, bool? isOffline, String? lensModel, String? libraryId, String? make, int? minFileSize, String? model, String? ocr, List<String>? personIds, int? rating, int? size, String? state, List<String>? tagIds, DateTime? takenAfter, DateTime? takenBefore, DateTime? trashedAfter, DateTime? trashedBefore, AssetTypeEnum? type, DateTime? updatedAfter, DateTime? updatedBefore, AssetVisibility? visibility, bool? withDeleted, bool? withExif, }) async {
|
||||||
// ignore: prefer_const_declarations
|
// ignore: prefer_const_declarations
|
||||||
final apiPath = r'/search/large-assets';
|
final apiPath = r'/search/large-assets';
|
||||||
|
|
||||||
@@ -619,10 +619,10 @@ class SearchApi {
|
|||||||
/// * [List<String>] personIds:
|
/// * [List<String>] personIds:
|
||||||
/// Filter by person IDs
|
/// Filter by person IDs
|
||||||
///
|
///
|
||||||
/// * [num] rating:
|
/// * [int] rating:
|
||||||
/// Filter by rating [1-5], or null for unrated
|
/// Filter by rating [1-5], or null for unrated
|
||||||
///
|
///
|
||||||
/// * [num] size:
|
/// * [int] size:
|
||||||
/// Number of results to return
|
/// Number of results to return
|
||||||
///
|
///
|
||||||
/// * [String] state:
|
/// * [String] state:
|
||||||
@@ -658,7 +658,7 @@ class SearchApi {
|
|||||||
///
|
///
|
||||||
/// * [bool] withExif:
|
/// * [bool] withExif:
|
||||||
/// Include EXIF data in response
|
/// Include EXIF data in response
|
||||||
Future<List<AssetResponseDto>?> searchLargeAssets({ List<String>? albumIds, String? city, String? country, DateTime? createdAfter, DateTime? createdBefore, bool? isEncoded, bool? isFavorite, bool? isMotion, bool? isNotInAlbum, bool? isOffline, String? lensModel, String? libraryId, String? make, int? minFileSize, String? model, String? ocr, List<String>? personIds, num? rating, num? size, String? state, List<String>? tagIds, DateTime? takenAfter, DateTime? takenBefore, DateTime? trashedAfter, DateTime? trashedBefore, AssetTypeEnum? type, DateTime? updatedAfter, DateTime? updatedBefore, AssetVisibility? visibility, bool? withDeleted, bool? withExif, }) async {
|
Future<List<AssetResponseDto>?> searchLargeAssets({ List<String>? albumIds, String? city, String? country, DateTime? createdAfter, DateTime? createdBefore, bool? isEncoded, bool? isFavorite, bool? isMotion, bool? isNotInAlbum, bool? isOffline, String? lensModel, String? libraryId, String? make, int? minFileSize, String? model, String? ocr, List<String>? personIds, int? rating, int? size, String? state, List<String>? tagIds, DateTime? takenAfter, DateTime? takenBefore, DateTime? trashedAfter, DateTime? trashedBefore, AssetTypeEnum? type, DateTime? updatedAfter, DateTime? updatedBefore, AssetVisibility? visibility, bool? withDeleted, bool? withExif, }) async {
|
||||||
final response = await searchLargeAssetsWithHttpInfo( albumIds: albumIds, city: city, country: country, createdAfter: createdAfter, createdBefore: createdBefore, isEncoded: isEncoded, isFavorite: isFavorite, isMotion: isMotion, isNotInAlbum: isNotInAlbum, isOffline: isOffline, lensModel: lensModel, libraryId: libraryId, make: make, minFileSize: minFileSize, model: model, ocr: ocr, personIds: personIds, rating: rating, size: size, state: state, tagIds: tagIds, takenAfter: takenAfter, takenBefore: takenBefore, trashedAfter: trashedAfter, trashedBefore: trashedBefore, type: type, updatedAfter: updatedAfter, updatedBefore: updatedBefore, visibility: visibility, withDeleted: withDeleted, withExif: withExif, );
|
final response = await searchLargeAssetsWithHttpInfo( albumIds: albumIds, city: city, country: country, createdAfter: createdAfter, createdBefore: createdBefore, isEncoded: isEncoded, isFavorite: isFavorite, isMotion: isMotion, isNotInAlbum: isNotInAlbum, isOffline: isOffline, lensModel: lensModel, libraryId: libraryId, make: make, minFileSize: minFileSize, model: model, ocr: ocr, personIds: personIds, rating: rating, size: size, state: state, tagIds: tagIds, takenAfter: takenAfter, takenBefore: takenBefore, trashedAfter: trashedAfter, trashedBefore: trashedBefore, type: type, updatedAfter: updatedAfter, updatedBefore: updatedBefore, visibility: visibility, withDeleted: withDeleted, withExif: withExif, );
|
||||||
if (response.statusCode >= HttpStatus.badRequest) {
|
if (response.statusCode >= HttpStatus.badRequest) {
|
||||||
throw ApiException(response.statusCode, await _decodeBodyBytes(response));
|
throw ApiException(response.statusCode, await _decodeBodyBytes(response));
|
||||||
|
|||||||
+5
-2
@@ -37,12 +37,15 @@ class AssetBulkUpdateDto {
|
|||||||
|
|
||||||
/// Relative time offset in seconds
|
/// Relative time offset in seconds
|
||||||
///
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
///
|
||||||
/// Please note: This property should have been non-nullable! Since the specification file
|
/// Please note: This property should have been non-nullable! Since the specification file
|
||||||
/// does not include a default value (using the "default:" property), however, the generated
|
/// does not include a default value (using the "default:" property), however, the generated
|
||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? dateTimeRelative;
|
int? dateTimeRelative;
|
||||||
|
|
||||||
/// Asset description
|
/// Asset description
|
||||||
///
|
///
|
||||||
@@ -213,7 +216,7 @@ class AssetBulkUpdateDto {
|
|||||||
|
|
||||||
return AssetBulkUpdateDto(
|
return AssetBulkUpdateDto(
|
||||||
dateTimeOriginal: mapValueOfType<String>(json, r'dateTimeOriginal'),
|
dateTimeOriginal: mapValueOfType<String>(json, r'dateTimeOriginal'),
|
||||||
dateTimeRelative: num.parse('${json[r'dateTimeRelative']}'),
|
dateTimeRelative: mapValueOfType<int>(json, r'dateTimeRelative'),
|
||||||
description: mapValueOfType<String>(json, r'description'),
|
description: mapValueOfType<String>(json, r'description'),
|
||||||
duplicateId: mapValueOfType<String>(json, r'duplicateId'),
|
duplicateId: mapValueOfType<String>(json, r'duplicateId'),
|
||||||
ids: json[r'ids'] is Iterable
|
ids: json[r'ids'] is Iterable
|
||||||
|
|||||||
@@ -24,22 +24,26 @@ class AssetEditActionItemDtoParameters {
|
|||||||
/// Height of the crop
|
/// Height of the crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
num height;
|
/// Maximum value: 9007199254740991
|
||||||
|
int height;
|
||||||
|
|
||||||
/// Width of the crop
|
/// Width of the crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
num width;
|
/// Maximum value: 9007199254740991
|
||||||
|
int width;
|
||||||
|
|
||||||
/// Top-Left X coordinate of crop
|
/// Top-Left X coordinate of crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num x;
|
/// Maximum value: 9007199254740991
|
||||||
|
int x;
|
||||||
|
|
||||||
/// Top-Left Y coordinate of crop
|
/// Top-Left Y coordinate of crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num y;
|
/// Maximum value: 9007199254740991
|
||||||
|
int y;
|
||||||
|
|
||||||
/// Rotation angle in degrees
|
/// Rotation angle in degrees
|
||||||
num angle;
|
num angle;
|
||||||
@@ -88,10 +92,10 @@ class AssetEditActionItemDtoParameters {
|
|||||||
final json = value.cast<String, dynamic>();
|
final json = value.cast<String, dynamic>();
|
||||||
|
|
||||||
return AssetEditActionItemDtoParameters(
|
return AssetEditActionItemDtoParameters(
|
||||||
height: num.parse('${json[r'height']}'),
|
height: mapValueOfType<int>(json, r'height')!,
|
||||||
width: num.parse('${json[r'width']}'),
|
width: mapValueOfType<int>(json, r'width')!,
|
||||||
x: num.parse('${json[r'x']}'),
|
x: mapValueOfType<int>(json, r'x')!,
|
||||||
y: num.parse('${json[r'y']}'),
|
y: mapValueOfType<int>(json, r'y')!,
|
||||||
angle: num.parse('${json[r'angle']}'),
|
angle: num.parse('${json[r'angle']}'),
|
||||||
axis: MirrorAxis.fromJson(json[r'axis'])!,
|
axis: MirrorAxis.fromJson(json[r'axis'])!,
|
||||||
);
|
);
|
||||||
|
|||||||
+6
-8
@@ -80,7 +80,8 @@ class AssetResponseDto {
|
|||||||
/// Asset height
|
/// Asset height
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num? height;
|
/// Maximum value: 9007199254740991
|
||||||
|
int? height;
|
||||||
|
|
||||||
/// Asset ID
|
/// Asset ID
|
||||||
String id;
|
String id;
|
||||||
@@ -165,7 +166,8 @@ class AssetResponseDto {
|
|||||||
/// Asset width
|
/// Asset width
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num? width;
|
/// Maximum value: 9007199254740991
|
||||||
|
int? width;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) => identical(this, other) || other is AssetResponseDto &&
|
bool operator ==(Object other) => identical(this, other) || other is AssetResponseDto &&
|
||||||
@@ -346,9 +348,7 @@ class AssetResponseDto {
|
|||||||
fileCreatedAt: mapDateTime(json, r'fileCreatedAt', r'')!,
|
fileCreatedAt: mapDateTime(json, r'fileCreatedAt', r'')!,
|
||||||
fileModifiedAt: mapDateTime(json, r'fileModifiedAt', r'')!,
|
fileModifiedAt: mapDateTime(json, r'fileModifiedAt', r'')!,
|
||||||
hasMetadata: mapValueOfType<bool>(json, r'hasMetadata')!,
|
hasMetadata: mapValueOfType<bool>(json, r'hasMetadata')!,
|
||||||
height: json[r'height'] == null
|
height: mapValueOfType<int>(json, r'height'),
|
||||||
? null
|
|
||||||
: num.parse('${json[r'height']}'),
|
|
||||||
id: mapValueOfType<String>(json, r'id')!,
|
id: mapValueOfType<String>(json, r'id')!,
|
||||||
isArchived: mapValueOfType<bool>(json, r'isArchived')!,
|
isArchived: mapValueOfType<bool>(json, r'isArchived')!,
|
||||||
isEdited: mapValueOfType<bool>(json, r'isEdited')!,
|
isEdited: mapValueOfType<bool>(json, r'isEdited')!,
|
||||||
@@ -372,9 +372,7 @@ class AssetResponseDto {
|
|||||||
unassignedFaces: AssetFaceWithoutPersonResponseDto.listFromJson(json[r'unassignedFaces']),
|
unassignedFaces: AssetFaceWithoutPersonResponseDto.listFromJson(json[r'unassignedFaces']),
|
||||||
updatedAt: mapDateTime(json, r'updatedAt', r'')!,
|
updatedAt: mapDateTime(json, r'updatedAt', r'')!,
|
||||||
visibility: AssetVisibility.fromJson(json[r'visibility'])!,
|
visibility: AssetVisibility.fromJson(json[r'visibility'])!,
|
||||||
width: json[r'width'] == null
|
width: mapValueOfType<int>(json, r'width'),
|
||||||
? null
|
|
||||||
: num.parse('${json[r'width']}'),
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
+12
-8
@@ -22,22 +22,26 @@ class CropParameters {
|
|||||||
/// Height of the crop
|
/// Height of the crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
num height;
|
/// Maximum value: 9007199254740991
|
||||||
|
int height;
|
||||||
|
|
||||||
/// Width of the crop
|
/// Width of the crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
num width;
|
/// Maximum value: 9007199254740991
|
||||||
|
int width;
|
||||||
|
|
||||||
/// Top-Left X coordinate of crop
|
/// Top-Left X coordinate of crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num x;
|
/// Maximum value: 9007199254740991
|
||||||
|
int x;
|
||||||
|
|
||||||
/// Top-Left Y coordinate of crop
|
/// Top-Left Y coordinate of crop
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num y;
|
/// Maximum value: 9007199254740991
|
||||||
|
int y;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) => identical(this, other) || other is CropParameters &&
|
bool operator ==(Object other) => identical(this, other) || other is CropParameters &&
|
||||||
@@ -75,10 +79,10 @@ class CropParameters {
|
|||||||
final json = value.cast<String, dynamic>();
|
final json = value.cast<String, dynamic>();
|
||||||
|
|
||||||
return CropParameters(
|
return CropParameters(
|
||||||
height: num.parse('${json[r'height']}'),
|
height: mapValueOfType<int>(json, r'height')!,
|
||||||
width: num.parse('${json[r'width']}'),
|
width: mapValueOfType<int>(json, r'width')!,
|
||||||
x: num.parse('${json[r'x']}'),
|
x: mapValueOfType<int>(json, r'x')!,
|
||||||
y: num.parse('${json[r'y']}'),
|
y: mapValueOfType<int>(json, r'y')!,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
+3
-2
@@ -27,7 +27,8 @@ class DatabaseBackupConfig {
|
|||||||
/// Keep last amount
|
/// Keep last amount
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
num keepLastAmount;
|
/// Maximum value: 9007199254740991
|
||||||
|
int keepLastAmount;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) => identical(this, other) || other is DatabaseBackupConfig &&
|
bool operator ==(Object other) => identical(this, other) || other is DatabaseBackupConfig &&
|
||||||
@@ -64,7 +65,7 @@ class DatabaseBackupConfig {
|
|||||||
return DatabaseBackupConfig(
|
return DatabaseBackupConfig(
|
||||||
cronExpression: mapValueOfType<String>(json, r'cronExpression')!,
|
cronExpression: mapValueOfType<String>(json, r'cronExpression')!,
|
||||||
enabled: mapValueOfType<bool>(json, r'enabled')!,
|
enabled: mapValueOfType<bool>(json, r'enabled')!,
|
||||||
keepLastAmount: num.parse('${json[r'keepLastAmount']}'),
|
keepLastAmount: mapValueOfType<int>(json, r'keepLastAmount')!,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
+5
-2
@@ -22,7 +22,10 @@ class DatabaseBackupDto {
|
|||||||
String filename;
|
String filename;
|
||||||
|
|
||||||
/// Backup file size
|
/// Backup file size
|
||||||
num filesize;
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int filesize;
|
||||||
|
|
||||||
/// Backup timezone
|
/// Backup timezone
|
||||||
String timezone;
|
String timezone;
|
||||||
@@ -61,7 +64,7 @@ class DatabaseBackupDto {
|
|||||||
|
|
||||||
return DatabaseBackupDto(
|
return DatabaseBackupDto(
|
||||||
filename: mapValueOfType<String>(json, r'filename')!,
|
filename: mapValueOfType<String>(json, r'filename')!,
|
||||||
filesize: num.parse('${json[r'filesize']}'),
|
filesize: mapValueOfType<int>(json, r'filesize')!,
|
||||||
timezone: mapValueOfType<String>(json, r'timezone')!,
|
timezone: mapValueOfType<String>(json, r'timezone')!,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
+16
-16
@@ -52,12 +52,14 @@ class ExifResponseDto {
|
|||||||
/// Image height in pixels
|
/// Image height in pixels
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num? exifImageHeight;
|
/// Maximum value: 9007199254740991
|
||||||
|
int? exifImageHeight;
|
||||||
|
|
||||||
/// Image width in pixels
|
/// Image width in pixels
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num? exifImageWidth;
|
/// Maximum value: 9007199254740991
|
||||||
|
int? exifImageWidth;
|
||||||
|
|
||||||
/// Exposure time
|
/// Exposure time
|
||||||
String? exposureTime;
|
String? exposureTime;
|
||||||
@@ -75,7 +77,10 @@ class ExifResponseDto {
|
|||||||
num? focalLength;
|
num? focalLength;
|
||||||
|
|
||||||
/// ISO sensitivity
|
/// ISO sensitivity
|
||||||
num? iso;
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int? iso;
|
||||||
|
|
||||||
/// GPS latitude
|
/// GPS latitude
|
||||||
num? latitude;
|
num? latitude;
|
||||||
@@ -102,7 +107,10 @@ class ExifResponseDto {
|
|||||||
String? projectionType;
|
String? projectionType;
|
||||||
|
|
||||||
/// Rating
|
/// Rating
|
||||||
num? rating;
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int? rating;
|
||||||
|
|
||||||
/// State/province name
|
/// State/province name
|
||||||
String? state;
|
String? state;
|
||||||
@@ -292,12 +300,8 @@ class ExifResponseDto {
|
|||||||
country: mapValueOfType<String>(json, r'country'),
|
country: mapValueOfType<String>(json, r'country'),
|
||||||
dateTimeOriginal: mapDateTime(json, r'dateTimeOriginal', r''),
|
dateTimeOriginal: mapDateTime(json, r'dateTimeOriginal', r''),
|
||||||
description: mapValueOfType<String>(json, r'description'),
|
description: mapValueOfType<String>(json, r'description'),
|
||||||
exifImageHeight: json[r'exifImageHeight'] == null
|
exifImageHeight: mapValueOfType<int>(json, r'exifImageHeight'),
|
||||||
? null
|
exifImageWidth: mapValueOfType<int>(json, r'exifImageWidth'),
|
||||||
: num.parse('${json[r'exifImageHeight']}'),
|
|
||||||
exifImageWidth: json[r'exifImageWidth'] == null
|
|
||||||
? null
|
|
||||||
: num.parse('${json[r'exifImageWidth']}'),
|
|
||||||
exposureTime: mapValueOfType<String>(json, r'exposureTime'),
|
exposureTime: mapValueOfType<String>(json, r'exposureTime'),
|
||||||
fNumber: json[r'fNumber'] == null
|
fNumber: json[r'fNumber'] == null
|
||||||
? null
|
? null
|
||||||
@@ -306,9 +310,7 @@ class ExifResponseDto {
|
|||||||
focalLength: json[r'focalLength'] == null
|
focalLength: json[r'focalLength'] == null
|
||||||
? null
|
? null
|
||||||
: num.parse('${json[r'focalLength']}'),
|
: num.parse('${json[r'focalLength']}'),
|
||||||
iso: json[r'iso'] == null
|
iso: mapValueOfType<int>(json, r'iso'),
|
||||||
? null
|
|
||||||
: num.parse('${json[r'iso']}'),
|
|
||||||
latitude: json[r'latitude'] == null
|
latitude: json[r'latitude'] == null
|
||||||
? null
|
? null
|
||||||
: num.parse('${json[r'latitude']}'),
|
: num.parse('${json[r'latitude']}'),
|
||||||
@@ -321,9 +323,7 @@ class ExifResponseDto {
|
|||||||
modifyDate: mapDateTime(json, r'modifyDate', r''),
|
modifyDate: mapDateTime(json, r'modifyDate', r''),
|
||||||
orientation: mapValueOfType<String>(json, r'orientation'),
|
orientation: mapValueOfType<String>(json, r'orientation'),
|
||||||
projectionType: mapValueOfType<String>(json, r'projectionType'),
|
projectionType: mapValueOfType<String>(json, r'projectionType'),
|
||||||
rating: json[r'rating'] == null
|
rating: mapValueOfType<int>(json, r'rating'),
|
||||||
? null
|
|
||||||
: num.parse('${json[r'rating']}'),
|
|
||||||
state: mapValueOfType<String>(json, r'state'),
|
state: mapValueOfType<String>(json, r'state'),
|
||||||
timeZone: mapValueOfType<String>(json, r'timeZone'),
|
timeZone: mapValueOfType<String>(json, r'timeZone'),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -21,9 +21,13 @@ class MachineLearningAvailabilityChecksDto {
|
|||||||
/// Enabled
|
/// Enabled
|
||||||
bool enabled;
|
bool enabled;
|
||||||
|
|
||||||
num interval;
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int interval;
|
||||||
|
|
||||||
num timeout;
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int timeout;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) => identical(this, other) || other is MachineLearningAvailabilityChecksDto &&
|
bool operator ==(Object other) => identical(this, other) || other is MachineLearningAvailabilityChecksDto &&
|
||||||
@@ -59,8 +63,8 @@ class MachineLearningAvailabilityChecksDto {
|
|||||||
|
|
||||||
return MachineLearningAvailabilityChecksDto(
|
return MachineLearningAvailabilityChecksDto(
|
||||||
enabled: mapValueOfType<bool>(json, r'enabled')!,
|
enabled: mapValueOfType<bool>(json, r'enabled')!,
|
||||||
interval: num.parse('${json[r'interval']}'),
|
interval: mapValueOfType<int>(json, r'interval')!,
|
||||||
timeout: num.parse('${json[r'timeout']}'),
|
timeout: mapValueOfType<int>(json, r'timeout')!,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
+5
-2
@@ -20,7 +20,10 @@ class MaintenanceDetectInstallStorageFolderDto {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/// Number of files in the folder
|
/// Number of files in the folder
|
||||||
num files;
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int files;
|
||||||
|
|
||||||
StorageFolder folder;
|
StorageFolder folder;
|
||||||
|
|
||||||
@@ -66,7 +69,7 @@ class MaintenanceDetectInstallStorageFolderDto {
|
|||||||
final json = value.cast<String, dynamic>();
|
final json = value.cast<String, dynamic>();
|
||||||
|
|
||||||
return MaintenanceDetectInstallStorageFolderDto(
|
return MaintenanceDetectInstallStorageFolderDto(
|
||||||
files: num.parse('${json[r'files']}'),
|
files: mapValueOfType<int>(json, r'files')!,
|
||||||
folder: StorageFolder.fromJson(json[r'folder'])!,
|
folder: StorageFolder.fromJson(json[r'folder'])!,
|
||||||
readable: mapValueOfType<bool>(json, r'readable')!,
|
readable: mapValueOfType<bool>(json, r'readable')!,
|
||||||
writable: mapValueOfType<bool>(json, r'writable')!,
|
writable: mapValueOfType<bool>(json, r'writable')!,
|
||||||
|
|||||||
@@ -32,13 +32,15 @@ class MaintenanceStatusResponseDto {
|
|||||||
///
|
///
|
||||||
String? error;
|
String? error;
|
||||||
|
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
///
|
///
|
||||||
/// Please note: This property should have been non-nullable! Since the specification file
|
/// Please note: This property should have been non-nullable! Since the specification file
|
||||||
/// does not include a default value (using the "default:" property), however, the generated
|
/// does not include a default value (using the "default:" property), however, the generated
|
||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? progress;
|
int? progress;
|
||||||
|
|
||||||
///
|
///
|
||||||
/// Please note: This property should have been non-nullable! Since the specification file
|
/// Please note: This property should have been non-nullable! Since the specification file
|
||||||
@@ -102,7 +104,7 @@ class MaintenanceStatusResponseDto {
|
|||||||
action: MaintenanceAction.fromJson(json[r'action'])!,
|
action: MaintenanceAction.fromJson(json[r'action'])!,
|
||||||
active: mapValueOfType<bool>(json, r'active')!,
|
active: mapValueOfType<bool>(json, r'active')!,
|
||||||
error: mapValueOfType<String>(json, r'error'),
|
error: mapValueOfType<String>(json, r'error'),
|
||||||
progress: num.parse('${json[r'progress']}'),
|
progress: mapValueOfType<int>(json, r'progress'),
|
||||||
task: mapValueOfType<String>(json, r'task'),
|
task: mapValueOfType<String>(json, r'task'),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
+7
-8
@@ -215,13 +215,14 @@ class MetadataSearchDto {
|
|||||||
/// Page number
|
/// Page number
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
///
|
///
|
||||||
/// Please note: This property should have been non-nullable! Since the specification file
|
/// Please note: This property should have been non-nullable! Since the specification file
|
||||||
/// does not include a default value (using the "default:" property), however, the generated
|
/// does not include a default value (using the "default:" property), however, the generated
|
||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? page;
|
int? page;
|
||||||
|
|
||||||
/// Filter by person IDs
|
/// Filter by person IDs
|
||||||
List<String> personIds;
|
List<String> personIds;
|
||||||
@@ -239,7 +240,7 @@ class MetadataSearchDto {
|
|||||||
///
|
///
|
||||||
/// Minimum value: -1
|
/// Minimum value: -1
|
||||||
/// Maximum value: 5
|
/// Maximum value: 5
|
||||||
num? rating;
|
int? rating;
|
||||||
|
|
||||||
/// Number of results to return
|
/// Number of results to return
|
||||||
///
|
///
|
||||||
@@ -251,7 +252,7 @@ class MetadataSearchDto {
|
|||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? size;
|
int? size;
|
||||||
|
|
||||||
/// Filter by state/province name
|
/// Filter by state/province name
|
||||||
String? state;
|
String? state;
|
||||||
@@ -724,15 +725,13 @@ class MetadataSearchDto {
|
|||||||
order: AssetOrder.fromJson(json[r'order']),
|
order: AssetOrder.fromJson(json[r'order']),
|
||||||
originalFileName: mapValueOfType<String>(json, r'originalFileName'),
|
originalFileName: mapValueOfType<String>(json, r'originalFileName'),
|
||||||
originalPath: mapValueOfType<String>(json, r'originalPath'),
|
originalPath: mapValueOfType<String>(json, r'originalPath'),
|
||||||
page: num.parse('${json[r'page']}'),
|
page: mapValueOfType<int>(json, r'page'),
|
||||||
personIds: json[r'personIds'] is Iterable
|
personIds: json[r'personIds'] is Iterable
|
||||||
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
: const [],
|
: const [],
|
||||||
previewPath: mapValueOfType<String>(json, r'previewPath'),
|
previewPath: mapValueOfType<String>(json, r'previewPath'),
|
||||||
rating: json[r'rating'] == null
|
rating: mapValueOfType<int>(json, r'rating'),
|
||||||
? null
|
size: mapValueOfType<int>(json, r'size'),
|
||||||
: num.parse('${json[r'rating']}'),
|
|
||||||
size: num.parse('${json[r'size']}'),
|
|
||||||
state: mapValueOfType<String>(json, r'state'),
|
state: mapValueOfType<String>(json, r'state'),
|
||||||
tagIds: json[r'tagIds'] is Iterable
|
tagIds: json[r'tagIds'] is Iterable
|
||||||
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
|
|||||||
+4
-6
@@ -147,7 +147,7 @@ class RandomSearchDto {
|
|||||||
///
|
///
|
||||||
/// Minimum value: -1
|
/// Minimum value: -1
|
||||||
/// Maximum value: 5
|
/// Maximum value: 5
|
||||||
num? rating;
|
int? rating;
|
||||||
|
|
||||||
/// Number of results to return
|
/// Number of results to return
|
||||||
///
|
///
|
||||||
@@ -159,7 +159,7 @@ class RandomSearchDto {
|
|||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? size;
|
int? size;
|
||||||
|
|
||||||
/// Filter by state/province name
|
/// Filter by state/province name
|
||||||
String? state;
|
String? state;
|
||||||
@@ -549,10 +549,8 @@ class RandomSearchDto {
|
|||||||
personIds: json[r'personIds'] is Iterable
|
personIds: json[r'personIds'] is Iterable
|
||||||
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
: const [],
|
: const [],
|
||||||
rating: json[r'rating'] == null
|
rating: mapValueOfType<int>(json, r'rating'),
|
||||||
? null
|
size: mapValueOfType<int>(json, r'size'),
|
||||||
: num.parse('${json[r'rating']}'),
|
|
||||||
size: num.parse('${json[r'size']}'),
|
|
||||||
state: mapValueOfType<String>(json, r'state'),
|
state: mapValueOfType<String>(json, r'state'),
|
||||||
tagIds: json[r'tagIds'] is Iterable
|
tagIds: json[r'tagIds'] is Iterable
|
||||||
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
|
|||||||
+3
-2
@@ -39,13 +39,14 @@ class SessionCreateDto {
|
|||||||
/// Session duration in seconds
|
/// Session duration in seconds
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
///
|
///
|
||||||
/// Please note: This property should have been non-nullable! Since the specification file
|
/// Please note: This property should have been non-nullable! Since the specification file
|
||||||
/// does not include a default value (using the "default:" property), however, the generated
|
/// does not include a default value (using the "default:" property), however, the generated
|
||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? duration;
|
int? duration;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) => identical(this, other) || other is SessionCreateDto &&
|
bool operator ==(Object other) => identical(this, other) || other is SessionCreateDto &&
|
||||||
@@ -94,7 +95,7 @@ class SessionCreateDto {
|
|||||||
return SessionCreateDto(
|
return SessionCreateDto(
|
||||||
deviceOS: mapValueOfType<String>(json, r'deviceOS'),
|
deviceOS: mapValueOfType<String>(json, r'deviceOS'),
|
||||||
deviceType: mapValueOfType<String>(json, r'deviceType'),
|
deviceType: mapValueOfType<String>(json, r'deviceType'),
|
||||||
duration: num.parse('${json[r'duration']}'),
|
duration: mapValueOfType<int>(json, r'duration'),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
+7
-8
@@ -154,13 +154,14 @@ class SmartSearchDto {
|
|||||||
/// Page number
|
/// Page number
|
||||||
///
|
///
|
||||||
/// Minimum value: 1
|
/// Minimum value: 1
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
///
|
///
|
||||||
/// Please note: This property should have been non-nullable! Since the specification file
|
/// Please note: This property should have been non-nullable! Since the specification file
|
||||||
/// does not include a default value (using the "default:" property), however, the generated
|
/// does not include a default value (using the "default:" property), however, the generated
|
||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? page;
|
int? page;
|
||||||
|
|
||||||
/// Filter by person IDs
|
/// Filter by person IDs
|
||||||
List<String> personIds;
|
List<String> personIds;
|
||||||
@@ -187,7 +188,7 @@ class SmartSearchDto {
|
|||||||
///
|
///
|
||||||
/// Minimum value: -1
|
/// Minimum value: -1
|
||||||
/// Maximum value: 5
|
/// Maximum value: 5
|
||||||
num? rating;
|
int? rating;
|
||||||
|
|
||||||
/// Number of results to return
|
/// Number of results to return
|
||||||
///
|
///
|
||||||
@@ -199,7 +200,7 @@ class SmartSearchDto {
|
|||||||
/// source code must fall back to having a nullable type.
|
/// source code must fall back to having a nullable type.
|
||||||
/// Consider adding a "default:" property in the specification file to hide this note.
|
/// Consider adding a "default:" property in the specification file to hide this note.
|
||||||
///
|
///
|
||||||
num? size;
|
int? size;
|
||||||
|
|
||||||
/// Filter by state/province name
|
/// Filter by state/province name
|
||||||
String? state;
|
String? state;
|
||||||
@@ -583,16 +584,14 @@ class SmartSearchDto {
|
|||||||
make: mapValueOfType<String>(json, r'make'),
|
make: mapValueOfType<String>(json, r'make'),
|
||||||
model: mapValueOfType<String>(json, r'model'),
|
model: mapValueOfType<String>(json, r'model'),
|
||||||
ocr: mapValueOfType<String>(json, r'ocr'),
|
ocr: mapValueOfType<String>(json, r'ocr'),
|
||||||
page: num.parse('${json[r'page']}'),
|
page: mapValueOfType<int>(json, r'page'),
|
||||||
personIds: json[r'personIds'] is Iterable
|
personIds: json[r'personIds'] is Iterable
|
||||||
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
: const [],
|
: const [],
|
||||||
query: mapValueOfType<String>(json, r'query'),
|
query: mapValueOfType<String>(json, r'query'),
|
||||||
queryAssetId: mapValueOfType<String>(json, r'queryAssetId'),
|
queryAssetId: mapValueOfType<String>(json, r'queryAssetId'),
|
||||||
rating: json[r'rating'] == null
|
rating: mapValueOfType<int>(json, r'rating'),
|
||||||
? null
|
size: mapValueOfType<int>(json, r'size'),
|
||||||
: num.parse('${json[r'rating']}'),
|
|
||||||
size: num.parse('${json[r'size']}'),
|
|
||||||
state: mapValueOfType<String>(json, r'state'),
|
state: mapValueOfType<String>(json, r'state'),
|
||||||
tagIds: json[r'tagIds'] is Iterable
|
tagIds: json[r'tagIds'] is Iterable
|
||||||
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
|
|||||||
+2
-4
@@ -152,7 +152,7 @@ class StatisticsSearchDto {
|
|||||||
///
|
///
|
||||||
/// Minimum value: -1
|
/// Minimum value: -1
|
||||||
/// Maximum value: 5
|
/// Maximum value: 5
|
||||||
num? rating;
|
int? rating;
|
||||||
|
|
||||||
/// Filter by state/province name
|
/// Filter by state/province name
|
||||||
String? state;
|
String? state;
|
||||||
@@ -479,9 +479,7 @@ class StatisticsSearchDto {
|
|||||||
personIds: json[r'personIds'] is Iterable
|
personIds: json[r'personIds'] is Iterable
|
||||||
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'personIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
: const [],
|
: const [],
|
||||||
rating: json[r'rating'] == null
|
rating: mapValueOfType<int>(json, r'rating'),
|
||||||
? null
|
|
||||||
: num.parse('${json[r'rating']}'),
|
|
||||||
state: mapValueOfType<String>(json, r'state'),
|
state: mapValueOfType<String>(json, r'state'),
|
||||||
tagIds: json[r'tagIds'] is Iterable
|
tagIds: json[r'tagIds'] is Iterable
|
||||||
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
? (json[r'tagIds'] as Iterable).cast<String>().toList(growable: false)
|
||||||
|
|||||||
+3
-4
@@ -57,7 +57,8 @@ class SystemConfigOAuthDto {
|
|||||||
/// Default storage quota
|
/// Default storage quota
|
||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
num? defaultStorageQuota;
|
/// Maximum value: 9007199254740991
|
||||||
|
int? defaultStorageQuota;
|
||||||
|
|
||||||
/// Enabled
|
/// Enabled
|
||||||
bool enabled;
|
bool enabled;
|
||||||
@@ -200,9 +201,7 @@ class SystemConfigOAuthDto {
|
|||||||
buttonText: mapValueOfType<String>(json, r'buttonText')!,
|
buttonText: mapValueOfType<String>(json, r'buttonText')!,
|
||||||
clientId: mapValueOfType<String>(json, r'clientId')!,
|
clientId: mapValueOfType<String>(json, r'clientId')!,
|
||||||
clientSecret: mapValueOfType<String>(json, r'clientSecret')!,
|
clientSecret: mapValueOfType<String>(json, r'clientSecret')!,
|
||||||
defaultStorageQuota: json[r'defaultStorageQuota'] == null
|
defaultStorageQuota: mapValueOfType<int>(json, r'defaultStorageQuota'),
|
||||||
? null
|
|
||||||
: num.parse('${json[r'defaultStorageQuota']}'),
|
|
||||||
enabled: mapValueOfType<bool>(json, r'enabled')!,
|
enabled: mapValueOfType<bool>(json, r'enabled')!,
|
||||||
endSessionEndpoint: mapValueOfType<String>(json, r'endSessionEndpoint')!,
|
endSessionEndpoint: mapValueOfType<String>(json, r'endSessionEndpoint')!,
|
||||||
issuerUrl: mapValueOfType<String>(json, r'issuerUrl')!,
|
issuerUrl: mapValueOfType<String>(json, r'issuerUrl')!,
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ class SystemConfigSmtpTransportDto {
|
|||||||
///
|
///
|
||||||
/// Minimum value: 0
|
/// Minimum value: 0
|
||||||
/// Maximum value: 65535
|
/// Maximum value: 65535
|
||||||
num port;
|
int port;
|
||||||
|
|
||||||
/// Whether to use secure connection (TLS/SSL)
|
/// Whether to use secure connection (TLS/SSL)
|
||||||
bool secure;
|
bool secure;
|
||||||
@@ -87,7 +87,7 @@ class SystemConfigSmtpTransportDto {
|
|||||||
host: mapValueOfType<String>(json, r'host')!,
|
host: mapValueOfType<String>(json, r'host')!,
|
||||||
ignoreCert: mapValueOfType<bool>(json, r'ignoreCert')!,
|
ignoreCert: mapValueOfType<bool>(json, r'ignoreCert')!,
|
||||||
password: mapValueOfType<String>(json, r'password')!,
|
password: mapValueOfType<String>(json, r'password')!,
|
||||||
port: num.parse('${json[r'port']}'),
|
port: mapValueOfType<int>(json, r'port')!,
|
||||||
secure: mapValueOfType<bool>(json, r'secure')!,
|
secure: mapValueOfType<bool>(json, r'secure')!,
|
||||||
username: mapValueOfType<String>(json, r'username')!,
|
username: mapValueOfType<String>(json, r'username')!,
|
||||||
);
|
);
|
||||||
|
|||||||
+5
-2
@@ -26,7 +26,10 @@ class WorkflowActionResponseDto {
|
|||||||
String id;
|
String id;
|
||||||
|
|
||||||
/// Action order
|
/// Action order
|
||||||
num order;
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int order;
|
||||||
|
|
||||||
/// Plugin action ID
|
/// Plugin action ID
|
||||||
String pluginActionId;
|
String pluginActionId;
|
||||||
@@ -79,7 +82,7 @@ class WorkflowActionResponseDto {
|
|||||||
return WorkflowActionResponseDto(
|
return WorkflowActionResponseDto(
|
||||||
actionConfig: mapCastOfType<String, Object>(json, r'actionConfig'),
|
actionConfig: mapCastOfType<String, Object>(json, r'actionConfig'),
|
||||||
id: mapValueOfType<String>(json, r'id')!,
|
id: mapValueOfType<String>(json, r'id')!,
|
||||||
order: num.parse('${json[r'order']}'),
|
order: mapValueOfType<int>(json, r'order')!,
|
||||||
pluginActionId: mapValueOfType<String>(json, r'pluginActionId')!,
|
pluginActionId: mapValueOfType<String>(json, r'pluginActionId')!,
|
||||||
workflowId: mapValueOfType<String>(json, r'workflowId')!,
|
workflowId: mapValueOfType<String>(json, r'workflowId')!,
|
||||||
);
|
);
|
||||||
|
|||||||
+5
-2
@@ -26,7 +26,10 @@ class WorkflowFilterResponseDto {
|
|||||||
String id;
|
String id;
|
||||||
|
|
||||||
/// Filter order
|
/// Filter order
|
||||||
num order;
|
///
|
||||||
|
/// Minimum value: -9007199254740991
|
||||||
|
/// Maximum value: 9007199254740991
|
||||||
|
int order;
|
||||||
|
|
||||||
/// Plugin filter ID
|
/// Plugin filter ID
|
||||||
String pluginFilterId;
|
String pluginFilterId;
|
||||||
@@ -79,7 +82,7 @@ class WorkflowFilterResponseDto {
|
|||||||
return WorkflowFilterResponseDto(
|
return WorkflowFilterResponseDto(
|
||||||
filterConfig: mapCastOfType<String, Object>(json, r'filterConfig'),
|
filterConfig: mapCastOfType<String, Object>(json, r'filterConfig'),
|
||||||
id: mapValueOfType<String>(json, r'id')!,
|
id: mapValueOfType<String>(json, r'id')!,
|
||||||
order: num.parse('${json[r'order']}'),
|
order: mapValueOfType<int>(json, r'order')!,
|
||||||
pluginFilterId: mapValueOfType<String>(json, r'pluginFilterId')!,
|
pluginFilterId: mapValueOfType<String>(json, r'pluginFilterId')!,
|
||||||
workflowId: mapValueOfType<String>(json, r'workflowId')!,
|
workflowId: mapValueOfType<String>(json, r'workflowId')!,
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -7964,8 +7964,9 @@
|
|||||||
"description": "Page number for pagination",
|
"description": "Page number for pagination",
|
||||||
"schema": {
|
"schema": {
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"default": 1,
|
"default": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -7977,7 +7978,7 @@
|
|||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"maximum": 1000,
|
"maximum": 1000,
|
||||||
"default": 500,
|
"default": 500,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -9372,7 +9373,7 @@
|
|||||||
],
|
],
|
||||||
"x-immich-state": "Stable",
|
"x-immich-state": "Stable",
|
||||||
"schema": {
|
"schema": {
|
||||||
"type": "number",
|
"type": "integer",
|
||||||
"minimum": -1,
|
"minimum": -1,
|
||||||
"maximum": 5,
|
"maximum": 5,
|
||||||
"nullable": true
|
"nullable": true
|
||||||
@@ -9386,7 +9387,7 @@
|
|||||||
"schema": {
|
"schema": {
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"maximum": 1000,
|
"maximum": 1000,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -15636,7 +15637,9 @@
|
|||||||
},
|
},
|
||||||
"dateTimeRelative": {
|
"dateTimeRelative": {
|
||||||
"description": "Relative time offset in seconds",
|
"description": "Relative time offset in seconds",
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"description": {
|
"description": {
|
||||||
"description": "Asset description",
|
"description": "Asset description",
|
||||||
@@ -16650,9 +16653,10 @@
|
|||||||
},
|
},
|
||||||
"height": {
|
"height": {
|
||||||
"description": "Asset height",
|
"description": "Asset height",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"description": "Asset ID",
|
"description": "Asset ID",
|
||||||
@@ -16795,9 +16799,10 @@
|
|||||||
},
|
},
|
||||||
"width": {
|
"width": {
|
||||||
"description": "Asset width",
|
"description": "Asset width",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
@@ -17214,23 +17219,27 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"height": {
|
"height": {
|
||||||
"description": "Height of the crop",
|
"description": "Height of the crop",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"width": {
|
"width": {
|
||||||
"description": "Width of the crop",
|
"description": "Width of the crop",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"x": {
|
"x": {
|
||||||
"description": "Top-Left X coordinate of crop",
|
"description": "Top-Left X coordinate of crop",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"y": {
|
"y": {
|
||||||
"description": "Top-Left Y coordinate of crop",
|
"description": "Top-Left Y coordinate of crop",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
@@ -17254,8 +17263,9 @@
|
|||||||
},
|
},
|
||||||
"keepLastAmount": {
|
"keepLastAmount": {
|
||||||
"description": "Keep last amount",
|
"description": "Keep last amount",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
@@ -17288,7 +17298,9 @@
|
|||||||
},
|
},
|
||||||
"filesize": {
|
"filesize": {
|
||||||
"description": "Backup file size",
|
"description": "Backup file size",
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"timezone": {
|
"timezone": {
|
||||||
"description": "Backup timezone",
|
"description": "Backup timezone",
|
||||||
@@ -17627,16 +17639,18 @@
|
|||||||
"exifImageHeight": {
|
"exifImageHeight": {
|
||||||
"default": null,
|
"default": null,
|
||||||
"description": "Image height in pixels",
|
"description": "Image height in pixels",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"exifImageWidth": {
|
"exifImageWidth": {
|
||||||
"default": null,
|
"default": null,
|
||||||
"description": "Image width in pixels",
|
"description": "Image width in pixels",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"exposureTime": {
|
"exposureTime": {
|
||||||
"default": null,
|
"default": null,
|
||||||
@@ -17667,8 +17681,10 @@
|
|||||||
"iso": {
|
"iso": {
|
||||||
"default": null,
|
"default": null,
|
||||||
"description": "ISO sensitivity",
|
"description": "ISO sensitivity",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"latitude": {
|
"latitude": {
|
||||||
"default": null,
|
"default": null,
|
||||||
@@ -17722,8 +17738,10 @@
|
|||||||
"rating": {
|
"rating": {
|
||||||
"default": null,
|
"default": null,
|
||||||
"description": "Rating",
|
"description": "Rating",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"state": {
|
"state": {
|
||||||
"default": null,
|
"default": null,
|
||||||
@@ -18150,10 +18168,14 @@
|
|||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"interval": {
|
"interval": {
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"timeout": {
|
"timeout": {
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
@@ -18203,7 +18225,9 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"files": {
|
"files": {
|
||||||
"description": "Number of files in the folder",
|
"description": "Number of files in the folder",
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"folder": {
|
"folder": {
|
||||||
"$ref": "#/components/schemas/StorageFolder"
|
"$ref": "#/components/schemas/StorageFolder"
|
||||||
@@ -18246,7 +18270,9 @@
|
|||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"progress": {
|
"progress": {
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"task": {
|
"task": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
@@ -18723,8 +18749,9 @@
|
|||||||
},
|
},
|
||||||
"page": {
|
"page": {
|
||||||
"description": "Page number",
|
"description": "Page number",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"personIds": {
|
"personIds": {
|
||||||
"description": "Filter by person IDs",
|
"description": "Filter by person IDs",
|
||||||
@@ -18744,7 +18771,7 @@
|
|||||||
"maximum": 5,
|
"maximum": 5,
|
||||||
"minimum": -1,
|
"minimum": -1,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number",
|
"type": "integer",
|
||||||
"x-immich-history": [
|
"x-immich-history": [
|
||||||
{
|
{
|
||||||
"version": "v1",
|
"version": "v1",
|
||||||
@@ -18766,7 +18793,7 @@
|
|||||||
"description": "Number of results to return",
|
"description": "Number of results to return",
|
||||||
"maximum": 1000,
|
"maximum": 1000,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"state": {
|
"state": {
|
||||||
"description": "Filter by state/province name",
|
"description": "Filter by state/province name",
|
||||||
@@ -20597,7 +20624,7 @@
|
|||||||
"maximum": 5,
|
"maximum": 5,
|
||||||
"minimum": -1,
|
"minimum": -1,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number",
|
"type": "integer",
|
||||||
"x-immich-history": [
|
"x-immich-history": [
|
||||||
{
|
{
|
||||||
"version": "v1",
|
"version": "v1",
|
||||||
@@ -20619,7 +20646,7 @@
|
|||||||
"description": "Number of results to return",
|
"description": "Number of results to return",
|
||||||
"maximum": 1000,
|
"maximum": 1000,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"state": {
|
"state": {
|
||||||
"description": "Filter by state/province name",
|
"description": "Filter by state/province name",
|
||||||
@@ -21437,8 +21464,9 @@
|
|||||||
},
|
},
|
||||||
"duration": {
|
"duration": {
|
||||||
"description": "Session duration in seconds",
|
"description": "Session duration in seconds",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"type": "object"
|
"type": "object"
|
||||||
@@ -21952,8 +21980,9 @@
|
|||||||
},
|
},
|
||||||
"page": {
|
"page": {
|
||||||
"description": "Page number",
|
"description": "Page number",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"personIds": {
|
"personIds": {
|
||||||
"description": "Filter by person IDs",
|
"description": "Filter by person IDs",
|
||||||
@@ -21979,7 +22008,7 @@
|
|||||||
"maximum": 5,
|
"maximum": 5,
|
||||||
"minimum": -1,
|
"minimum": -1,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number",
|
"type": "integer",
|
||||||
"x-immich-history": [
|
"x-immich-history": [
|
||||||
{
|
{
|
||||||
"version": "v1",
|
"version": "v1",
|
||||||
@@ -22001,7 +22030,7 @@
|
|||||||
"description": "Number of results to return",
|
"description": "Number of results to return",
|
||||||
"maximum": 1000,
|
"maximum": 1000,
|
||||||
"minimum": 1,
|
"minimum": 1,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"state": {
|
"state": {
|
||||||
"description": "Filter by state/province name",
|
"description": "Filter by state/province name",
|
||||||
@@ -22239,7 +22268,7 @@
|
|||||||
"maximum": 5,
|
"maximum": 5,
|
||||||
"minimum": -1,
|
"minimum": -1,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number",
|
"type": "integer",
|
||||||
"x-immich-history": [
|
"x-immich-history": [
|
||||||
{
|
{
|
||||||
"version": "v1",
|
"version": "v1",
|
||||||
@@ -24371,9 +24400,10 @@
|
|||||||
},
|
},
|
||||||
"defaultStorageQuota": {
|
"defaultStorageQuota": {
|
||||||
"description": "Default storage quota",
|
"description": "Default storage quota",
|
||||||
|
"maximum": 9007199254740991,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"nullable": true,
|
"nullable": true,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"enabled": {
|
"enabled": {
|
||||||
"description": "Enabled",
|
"description": "Enabled",
|
||||||
@@ -24548,7 +24578,7 @@
|
|||||||
"description": "SMTP server port",
|
"description": "SMTP server port",
|
||||||
"maximum": 65535,
|
"maximum": 65535,
|
||||||
"minimum": 0,
|
"minimum": 0,
|
||||||
"type": "number"
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"secure": {
|
"secure": {
|
||||||
"description": "Whether to use secure connection (TLS/SSL)",
|
"description": "Whether to use secure connection (TLS/SSL)",
|
||||||
@@ -25966,7 +25996,9 @@
|
|||||||
},
|
},
|
||||||
"order": {
|
"order": {
|
||||||
"description": "Action order",
|
"description": "Action order",
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"pluginActionId": {
|
"pluginActionId": {
|
||||||
"description": "Plugin action ID",
|
"description": "Plugin action ID",
|
||||||
@@ -26065,7 +26097,9 @@
|
|||||||
},
|
},
|
||||||
"order": {
|
"order": {
|
||||||
"description": "Filter order",
|
"description": "Filter order",
|
||||||
"type": "number"
|
"maximum": 9007199254740991,
|
||||||
|
"minimum": -9007199254740991,
|
||||||
|
"type": "integer"
|
||||||
},
|
},
|
||||||
"pluginFilterId": {
|
"pluginFilterId": {
|
||||||
"description": "Plugin filter ID",
|
"description": "Plugin filter ID",
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ describe(SearchController.name, () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should reject an invalid size', async () => {
|
it('should reject an invalid size', async () => {
|
||||||
const { status, body } = await request(ctx.getHttpServer()).post('/search/metadata').send({ size: -1.5 });
|
const { status, body } = await request(ctx.getHttpServer()).post('/search/metadata').send({ size: -1 });
|
||||||
expect(status).toBe(400);
|
expect(status).toBe(400);
|
||||||
expect(body).toEqual(errorDto.badRequest(['[size] Too small: expected number to be >=1']));
|
expect(body).toEqual(errorDto.badRequest(['[size] Too small: expected number to be >=1']));
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -50,8 +50,8 @@ const SanitizedAssetResponseSchema = z
|
|||||||
duration: z.string().nullable().describe('Video/gif duration in hh:mm:ss.SSS format (null for static images)'),
|
duration: z.string().nullable().describe('Video/gif duration in hh:mm:ss.SSS format (null for static images)'),
|
||||||
livePhotoVideoId: z.string().nullish().describe('Live photo video ID'),
|
livePhotoVideoId: z.string().nullish().describe('Live photo video ID'),
|
||||||
hasMetadata: z.boolean().describe('Whether asset has metadata'),
|
hasMetadata: z.boolean().describe('Whether asset has metadata'),
|
||||||
width: z.number().min(0).nullable().describe('Asset width'),
|
width: z.int().min(0).nullable().describe('Asset width'),
|
||||||
height: z.number().min(0).nullable().describe('Asset height'),
|
height: z.int().min(0).nullable().describe('Asset height'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'SanitizedAssetResponseDto' });
|
.meta({ id: 'SanitizedAssetResponseDto' });
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ const UpdateAssetBaseSchema = z
|
|||||||
const AssetBulkUpdateBaseSchema = UpdateAssetBaseSchema.extend({
|
const AssetBulkUpdateBaseSchema = UpdateAssetBaseSchema.extend({
|
||||||
ids: z.array(z.uuidv4()).describe('Asset IDs to update'),
|
ids: z.array(z.uuidv4()).describe('Asset IDs to update'),
|
||||||
duplicateId: z.string().nullish().describe('Duplicate ID'),
|
duplicateId: z.string().nullish().describe('Duplicate ID'),
|
||||||
dateTimeRelative: z.number().optional().describe('Relative time offset in seconds'),
|
dateTimeRelative: z.int().optional().describe('Relative time offset in seconds'),
|
||||||
timeZone: z.string().optional().describe('Time zone (IANA timezone)'),
|
timeZone: z.string().optional().describe('Time zone (IANA timezone)'),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import z from 'zod';
|
|||||||
const DatabaseBackupSchema = z
|
const DatabaseBackupSchema = z
|
||||||
.object({
|
.object({
|
||||||
filename: z.string().describe('Backup filename'),
|
filename: z.string().describe('Backup filename'),
|
||||||
filesize: z.number().describe('Backup file size'),
|
filesize: z.int().describe('Backup file size'),
|
||||||
timezone: z.string().describe('Backup timezone'),
|
timezone: z.string().describe('Backup timezone'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'DatabaseBackupDto' });
|
.meta({ id: 'DatabaseBackupDto' });
|
||||||
|
|||||||
@@ -21,10 +21,10 @@ const MirrorAxisSchema = z.enum(['horizontal', 'vertical']).describe('Axis to mi
|
|||||||
|
|
||||||
const CropParametersSchema = z
|
const CropParametersSchema = z
|
||||||
.object({
|
.object({
|
||||||
x: z.number().min(0).describe('Top-Left X coordinate of crop'),
|
x: z.int().min(0).describe('Top-Left X coordinate of crop'),
|
||||||
y: z.number().min(0).describe('Top-Left Y coordinate of crop'),
|
y: z.int().min(0).describe('Top-Left Y coordinate of crop'),
|
||||||
width: z.number().min(1).describe('Width of the crop'),
|
width: z.int().min(1).describe('Width of the crop'),
|
||||||
height: z.number().min(1).describe('Height of the crop'),
|
height: z.int().min(1).describe('Height of the crop'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'CropParameters' });
|
.meta({ id: 'CropParameters' });
|
||||||
|
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ export const ExifResponseSchema = z
|
|||||||
.object({
|
.object({
|
||||||
make: z.string().nullish().default(null).describe('Camera make'),
|
make: z.string().nullish().default(null).describe('Camera make'),
|
||||||
model: z.string().nullish().default(null).describe('Camera model'),
|
model: z.string().nullish().default(null).describe('Camera model'),
|
||||||
exifImageWidth: z.number().min(0).nullish().default(null).describe('Image width in pixels'),
|
exifImageWidth: z.int().min(0).nullish().default(null).describe('Image width in pixels'),
|
||||||
exifImageHeight: z.number().min(0).nullish().default(null).describe('Image height in pixels'),
|
exifImageHeight: z.int().min(0).nullish().default(null).describe('Image height in pixels'),
|
||||||
fileSizeInByte: z.int().min(0).nullish().default(null).describe('File size in bytes'),
|
fileSizeInByte: z.int().min(0).nullish().default(null).describe('File size in bytes'),
|
||||||
orientation: z.string().nullish().default(null).describe('Image orientation'),
|
orientation: z.string().nullish().default(null).describe('Image orientation'),
|
||||||
// TODO: use `isoDatetimeToDate` when using `ZodSerializerDto` on the controllers.
|
// TODO: use `isoDatetimeToDate` when using `ZodSerializerDto` on the controllers.
|
||||||
@@ -20,7 +20,7 @@ export const ExifResponseSchema = z
|
|||||||
lensModel: z.string().nullish().default(null).describe('Lens model'),
|
lensModel: z.string().nullish().default(null).describe('Lens model'),
|
||||||
fNumber: z.number().nullish().default(null).describe('F-number (aperture)'),
|
fNumber: z.number().nullish().default(null).describe('F-number (aperture)'),
|
||||||
focalLength: z.number().nullish().default(null).describe('Focal length in mm'),
|
focalLength: z.number().nullish().default(null).describe('Focal length in mm'),
|
||||||
iso: z.number().nullish().default(null).describe('ISO sensitivity'),
|
iso: z.int().nullish().default(null).describe('ISO sensitivity'),
|
||||||
exposureTime: z.string().nullish().default(null).describe('Exposure time'),
|
exposureTime: z.string().nullish().default(null).describe('Exposure time'),
|
||||||
latitude: z.number().nullish().default(null).describe('GPS latitude'),
|
latitude: z.number().nullish().default(null).describe('GPS latitude'),
|
||||||
longitude: z.number().nullish().default(null).describe('GPS longitude'),
|
longitude: z.number().nullish().default(null).describe('GPS longitude'),
|
||||||
@@ -29,7 +29,7 @@ export const ExifResponseSchema = z
|
|||||||
country: z.string().nullish().default(null).describe('Country name'),
|
country: z.string().nullish().default(null).describe('Country name'),
|
||||||
description: z.string().nullish().default(null).describe('Image description'),
|
description: z.string().nullish().default(null).describe('Image description'),
|
||||||
projectionType: z.string().nullish().default(null).describe('Projection type'),
|
projectionType: z.string().nullish().default(null).describe('Projection type'),
|
||||||
rating: z.number().nullish().default(null).describe('Rating'),
|
rating: z.int().nullish().default(null).describe('Rating'),
|
||||||
})
|
})
|
||||||
.describe('EXIF response')
|
.describe('EXIF response')
|
||||||
.meta({ id: 'ExifResponseDto' });
|
.meta({ id: 'ExifResponseDto' });
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ const MaintenanceStatusResponseSchema = z
|
|||||||
.object({
|
.object({
|
||||||
active: z.boolean(),
|
active: z.boolean(),
|
||||||
action: MaintenanceActionSchema,
|
action: MaintenanceActionSchema,
|
||||||
progress: z.number().optional(),
|
progress: z.int().optional(),
|
||||||
task: z.string().optional(),
|
task: z.string().optional(),
|
||||||
error: z.string().optional(),
|
error: z.string().optional(),
|
||||||
})
|
})
|
||||||
@@ -40,7 +40,7 @@ const MaintenanceDetectInstallStorageFolderSchema = z
|
|||||||
folder: StorageFolderSchema,
|
folder: StorageFolderSchema,
|
||||||
readable: z.boolean().describe('Whether the folder is readable'),
|
readable: z.boolean().describe('Whether the folder is readable'),
|
||||||
writable: z.boolean().describe('Whether the folder is writable'),
|
writable: z.boolean().describe('Whether the folder is writable'),
|
||||||
files: z.number().describe('Number of files in the folder'),
|
files: z.int().describe('Number of files in the folder'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'MaintenanceDetectInstallStorageFolderDto' });
|
.meta({ id: 'MaintenanceDetectInstallStorageFolderDto' });
|
||||||
|
|
||||||
|
|||||||
@@ -51,8 +51,8 @@ const PersonSearchSchema = z
|
|||||||
withHidden: stringToBool.optional().describe('Include hidden people'),
|
withHidden: stringToBool.optional().describe('Include hidden people'),
|
||||||
closestPersonId: z.uuidv4().optional().describe('Closest person ID for similarity search'),
|
closestPersonId: z.uuidv4().optional().describe('Closest person ID for similarity search'),
|
||||||
closestAssetId: z.uuidv4().optional().describe('Closest asset ID for similarity search'),
|
closestAssetId: z.uuidv4().optional().describe('Closest asset ID for similarity search'),
|
||||||
page: z.coerce.number().min(1).default(1).describe('Page number for pagination'),
|
page: z.coerce.number().int().min(1).default(1).describe('Page number for pagination'),
|
||||||
size: z.coerce.number().min(1).max(1000).default(500).describe('Number of items per page'),
|
size: z.coerce.number().int().min(1).max(1000).default(500).describe('Number of items per page'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'PersonSearchDto' });
|
.meta({ id: 'PersonSearchDto' });
|
||||||
|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ const BaseSearchSchema = z.object({
|
|||||||
tagIds: z.array(z.uuidv4()).nullish().describe('Filter by tag IDs'),
|
tagIds: z.array(z.uuidv4()).nullish().describe('Filter by tag IDs'),
|
||||||
albumIds: z.array(z.uuidv4()).optional().describe('Filter by album IDs'),
|
albumIds: z.array(z.uuidv4()).optional().describe('Filter by album IDs'),
|
||||||
rating: z
|
rating: z
|
||||||
.number()
|
.int()
|
||||||
.min(-1)
|
.min(-1)
|
||||||
.max(5)
|
.max(5)
|
||||||
.nullish()
|
.nullish()
|
||||||
@@ -52,7 +52,7 @@ const BaseSearchSchema = z.object({
|
|||||||
const BaseSearchWithResultsSchema = BaseSearchSchema.extend({
|
const BaseSearchWithResultsSchema = BaseSearchSchema.extend({
|
||||||
withDeleted: z.boolean().optional().describe('Include deleted assets'),
|
withDeleted: z.boolean().optional().describe('Include deleted assets'),
|
||||||
withExif: z.boolean().optional().describe('Include EXIF data in response'),
|
withExif: z.boolean().optional().describe('Include EXIF data in response'),
|
||||||
size: z.number().min(1).max(1000).optional().describe('Number of results to return'),
|
size: z.int().min(1).max(1000).optional().describe('Number of results to return'),
|
||||||
});
|
});
|
||||||
|
|
||||||
const RandomSearchSchema = BaseSearchWithResultsSchema.extend({
|
const RandomSearchSchema = BaseSearchWithResultsSchema.extend({
|
||||||
@@ -62,7 +62,7 @@ const RandomSearchSchema = BaseSearchWithResultsSchema.extend({
|
|||||||
|
|
||||||
const LargeAssetSearchSchema = BaseSearchWithResultsSchema.extend({
|
const LargeAssetSearchSchema = BaseSearchWithResultsSchema.extend({
|
||||||
minFileSize: z.coerce.number().int().min(0).optional().describe('Minimum file size in bytes'),
|
minFileSize: z.coerce.number().int().min(0).optional().describe('Minimum file size in bytes'),
|
||||||
size: z.coerce.number().min(1).max(1000).optional().describe('Number of results to return'),
|
size: z.coerce.number().int().min(1).max(1000).optional().describe('Number of results to return'),
|
||||||
}).meta({ id: 'LargeAssetSearchDto' });
|
}).meta({ id: 'LargeAssetSearchDto' });
|
||||||
|
|
||||||
const MetadataSearchSchema = RandomSearchSchema.extend({
|
const MetadataSearchSchema = RandomSearchSchema.extend({
|
||||||
@@ -75,7 +75,7 @@ const MetadataSearchSchema = RandomSearchSchema.extend({
|
|||||||
thumbnailPath: z.string().optional().describe('Filter by thumbnail file path'),
|
thumbnailPath: z.string().optional().describe('Filter by thumbnail file path'),
|
||||||
encodedVideoPath: z.string().optional().describe('Filter by encoded video file path'),
|
encodedVideoPath: z.string().optional().describe('Filter by encoded video file path'),
|
||||||
order: AssetOrderSchema.default(AssetOrder.Desc).optional().describe('Sort order'),
|
order: AssetOrderSchema.default(AssetOrder.Desc).optional().describe('Sort order'),
|
||||||
page: z.number().min(1).optional().describe('Page number'),
|
page: z.int().min(1).optional().describe('Page number'),
|
||||||
}).meta({ id: 'MetadataSearchDto' });
|
}).meta({ id: 'MetadataSearchDto' });
|
||||||
|
|
||||||
const StatisticsSearchSchema = BaseSearchSchema.extend({
|
const StatisticsSearchSchema = BaseSearchSchema.extend({
|
||||||
@@ -86,7 +86,7 @@ const SmartSearchSchema = BaseSearchWithResultsSchema.extend({
|
|||||||
query: z.string().trim().optional().describe('Natural language search query'),
|
query: z.string().trim().optional().describe('Natural language search query'),
|
||||||
queryAssetId: z.uuidv4().optional().describe('Asset ID to use as search reference'),
|
queryAssetId: z.uuidv4().optional().describe('Asset ID to use as search reference'),
|
||||||
language: z.string().optional().describe('Search language code'),
|
language: z.string().optional().describe('Search language code'),
|
||||||
page: z.number().min(1).optional().describe('Page number'),
|
page: z.int().min(1).optional().describe('Page number'),
|
||||||
}).meta({ id: 'SmartSearchDto' });
|
}).meta({ id: 'SmartSearchDto' });
|
||||||
|
|
||||||
const SearchPlacesSchema = z
|
const SearchPlacesSchema = z
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import z from 'zod';
|
|||||||
|
|
||||||
const SessionCreateSchema = z
|
const SessionCreateSchema = z
|
||||||
.object({
|
.object({
|
||||||
duration: z.number().min(1).optional().describe('Session duration in seconds'),
|
duration: z.int().min(1).optional().describe('Session duration in seconds'),
|
||||||
deviceType: z.string().optional().describe('Device type'),
|
deviceType: z.string().optional().describe('Device type'),
|
||||||
deviceOS: z.string().optional().describe('Device OS'),
|
deviceOS: z.string().optional().describe('Device OS'),
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ const DatabaseBackupSchema = z
|
|||||||
.object({
|
.object({
|
||||||
enabled: configBool.describe('Enabled'),
|
enabled: configBool.describe('Enabled'),
|
||||||
cronExpression: cronExpressionSchema,
|
cronExpression: cronExpressionSchema,
|
||||||
keepLastAmount: z.number().min(1).describe('Keep last amount'),
|
keepLastAmount: z.int().min(1).describe('Keep last amount'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'DatabaseBackupConfig' });
|
.meta({ id: 'DatabaseBackupConfig' });
|
||||||
|
|
||||||
@@ -130,8 +130,8 @@ const SystemConfigLoggingSchema = z
|
|||||||
const MachineLearningAvailabilityChecksSchema = z
|
const MachineLearningAvailabilityChecksSchema = z
|
||||||
.object({
|
.object({
|
||||||
enabled: configBool.describe('Enabled'),
|
enabled: configBool.describe('Enabled'),
|
||||||
timeout: z.number(),
|
timeout: z.int(),
|
||||||
interval: z.number(),
|
interval: z.int(),
|
||||||
})
|
})
|
||||||
.meta({ id: 'MachineLearningAvailabilityChecksDto' });
|
.meta({ id: 'MachineLearningAvailabilityChecksDto' });
|
||||||
|
|
||||||
@@ -180,7 +180,7 @@ const SystemConfigOAuthSchema = z
|
|||||||
tokenEndpointAuthMethod: OAuthTokenEndpointAuthMethodSchema,
|
tokenEndpointAuthMethod: OAuthTokenEndpointAuthMethodSchema,
|
||||||
timeout: z.int().min(1).describe('Timeout'),
|
timeout: z.int().min(1).describe('Timeout'),
|
||||||
allowInsecureRequests: configBool.describe('Allow insecure requests'),
|
allowInsecureRequests: configBool.describe('Allow insecure requests'),
|
||||||
defaultStorageQuota: z.number().min(0).nullable().describe('Default storage quota'),
|
defaultStorageQuota: z.int().min(0).nullable().describe('Default storage quota'),
|
||||||
enabled: configBool.describe('Enabled'),
|
enabled: configBool.describe('Enabled'),
|
||||||
issuerUrl: z
|
issuerUrl: z
|
||||||
.string()
|
.string()
|
||||||
@@ -254,7 +254,7 @@ const SystemConfigSmtpTransportSchema = z
|
|||||||
.object({
|
.object({
|
||||||
ignoreCert: configBool.describe('Whether to ignore SSL certificate errors'),
|
ignoreCert: configBool.describe('Whether to ignore SSL certificate errors'),
|
||||||
host: z.string().describe('SMTP server hostname'),
|
host: z.string().describe('SMTP server hostname'),
|
||||||
port: z.number().min(0).max(65_535).describe('SMTP server port'),
|
port: z.int().min(0).max(65_535).describe('SMTP server port'),
|
||||||
secure: configBool.describe('Whether to use secure connection (TLS/SSL)'),
|
secure: configBool.describe('Whether to use secure connection (TLS/SSL)'),
|
||||||
username: z.string().describe('SMTP username'),
|
username: z.string().describe('SMTP username'),
|
||||||
password: z.string().describe('SMTP password'),
|
password: z.string().describe('SMTP password'),
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ const WorkflowFilterResponseSchema = z
|
|||||||
workflowId: z.string().describe('Workflow ID'),
|
workflowId: z.string().describe('Workflow ID'),
|
||||||
pluginFilterId: z.string().describe('Plugin filter ID'),
|
pluginFilterId: z.string().describe('Plugin filter ID'),
|
||||||
filterConfig: FilterConfigSchema.nullable(),
|
filterConfig: FilterConfigSchema.nullable(),
|
||||||
order: z.number().describe('Filter order'),
|
order: z.int().describe('Filter order'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'WorkflowFilterResponseDto' });
|
.meta({ id: 'WorkflowFilterResponseDto' });
|
||||||
|
|
||||||
@@ -56,7 +56,7 @@ const WorkflowActionResponseSchema = z
|
|||||||
workflowId: z.string().describe('Workflow ID'),
|
workflowId: z.string().describe('Workflow ID'),
|
||||||
pluginActionId: z.string().describe('Plugin action ID'),
|
pluginActionId: z.string().describe('Plugin action ID'),
|
||||||
actionConfig: ActionConfigSchema.nullable(),
|
actionConfig: ActionConfigSchema.nullable(),
|
||||||
order: z.number().describe('Action order'),
|
order: z.int().describe('Action order'),
|
||||||
})
|
})
|
||||||
.meta({ id: 'WorkflowActionResponseDto' });
|
.meta({ id: 'WorkflowActionResponseDto' });
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user