update api

This commit is contained in:
mertalev 2025-10-10 19:35:18 -04:00
parent 838b8e9126
commit 42801ace35
No known key found for this signature in database
GPG key ID: DF6ABC77AAD98C95
10 changed files with 142 additions and 141 deletions

View file

@ -552,7 +552,6 @@ Class | Method | HTTP request | Description
- [SystemConfigNotificationsDto](doc//SystemConfigNotificationsDto.md) - [SystemConfigNotificationsDto](doc//SystemConfigNotificationsDto.md)
- [SystemConfigOAuthDto](doc//SystemConfigOAuthDto.md) - [SystemConfigOAuthDto](doc//SystemConfigOAuthDto.md)
- [SystemConfigPasswordLoginDto](doc//SystemConfigPasswordLoginDto.md) - [SystemConfigPasswordLoginDto](doc//SystemConfigPasswordLoginDto.md)
- [SystemConfigRemovePartialUploadsDto](doc//SystemConfigRemovePartialUploadsDto.md)
- [SystemConfigReverseGeocodingDto](doc//SystemConfigReverseGeocodingDto.md) - [SystemConfigReverseGeocodingDto](doc//SystemConfigReverseGeocodingDto.md)
- [SystemConfigServerDto](doc//SystemConfigServerDto.md) - [SystemConfigServerDto](doc//SystemConfigServerDto.md)
- [SystemConfigSmtpDto](doc//SystemConfigSmtpDto.md) - [SystemConfigSmtpDto](doc//SystemConfigSmtpDto.md)
@ -585,6 +584,7 @@ Class | Method | HTTP request | Description
- [UpdateAlbumUserDto](doc//UpdateAlbumUserDto.md) - [UpdateAlbumUserDto](doc//UpdateAlbumUserDto.md)
- [UpdateAssetDto](doc//UpdateAssetDto.md) - [UpdateAssetDto](doc//UpdateAssetDto.md)
- [UpdateLibraryDto](doc//UpdateLibraryDto.md) - [UpdateLibraryDto](doc//UpdateLibraryDto.md)
- [UploadBackupConfig](doc//UploadBackupConfig.md)
- [UploadOkDto](doc//UploadOkDto.md) - [UploadOkDto](doc//UploadOkDto.md)
- [UsageByUserDto](doc//UsageByUserDto.md) - [UsageByUserDto](doc//UsageByUserDto.md)
- [UserAdminCreateDto](doc//UserAdminCreateDto.md) - [UserAdminCreateDto](doc//UserAdminCreateDto.md)

View file

@ -316,7 +316,6 @@ part 'model/system_config_nightly_tasks_dto.dart';
part 'model/system_config_notifications_dto.dart'; part 'model/system_config_notifications_dto.dart';
part 'model/system_config_o_auth_dto.dart'; part 'model/system_config_o_auth_dto.dart';
part 'model/system_config_password_login_dto.dart'; part 'model/system_config_password_login_dto.dart';
part 'model/system_config_remove_partial_uploads_dto.dart';
part 'model/system_config_reverse_geocoding_dto.dart'; part 'model/system_config_reverse_geocoding_dto.dart';
part 'model/system_config_server_dto.dart'; part 'model/system_config_server_dto.dart';
part 'model/system_config_smtp_dto.dart'; part 'model/system_config_smtp_dto.dart';
@ -349,6 +348,7 @@ part 'model/update_album_dto.dart';
part 'model/update_album_user_dto.dart'; part 'model/update_album_user_dto.dart';
part 'model/update_asset_dto.dart'; part 'model/update_asset_dto.dart';
part 'model/update_library_dto.dart'; part 'model/update_library_dto.dart';
part 'model/upload_backup_config.dart';
part 'model/upload_ok_dto.dart'; part 'model/upload_ok_dto.dart';
part 'model/usage_by_user_dto.dart'; part 'model/usage_by_user_dto.dart';
part 'model/user_admin_create_dto.dart'; part 'model/user_admin_create_dto.dart';

View file

@ -684,8 +684,6 @@ class ApiClient {
return SystemConfigOAuthDto.fromJson(value); return SystemConfigOAuthDto.fromJson(value);
case 'SystemConfigPasswordLoginDto': case 'SystemConfigPasswordLoginDto':
return SystemConfigPasswordLoginDto.fromJson(value); return SystemConfigPasswordLoginDto.fromJson(value);
case 'SystemConfigRemovePartialUploadsDto':
return SystemConfigRemovePartialUploadsDto.fromJson(value);
case 'SystemConfigReverseGeocodingDto': case 'SystemConfigReverseGeocodingDto':
return SystemConfigReverseGeocodingDto.fromJson(value); return SystemConfigReverseGeocodingDto.fromJson(value);
case 'SystemConfigServerDto': case 'SystemConfigServerDto':
@ -750,6 +748,8 @@ class ApiClient {
return UpdateAssetDto.fromJson(value); return UpdateAssetDto.fromJson(value);
case 'UpdateLibraryDto': case 'UpdateLibraryDto':
return UpdateLibraryDto.fromJson(value); return UpdateLibraryDto.fromJson(value);
case 'UploadBackupConfig':
return UploadBackupConfig.fromJson(value);
case 'UploadOkDto': case 'UploadOkDto':
return UploadOkDto.fromJson(value); return UploadOkDto.fromJson(value);
case 'UsageByUserDto': case 'UsageByUserDto':

View file

@ -14,25 +14,31 @@ class SystemConfigBackupsDto {
/// Returns a new [SystemConfigBackupsDto] instance. /// Returns a new [SystemConfigBackupsDto] instance.
SystemConfigBackupsDto({ SystemConfigBackupsDto({
required this.database, required this.database,
required this.upload,
}); });
DatabaseBackupConfig database; DatabaseBackupConfig database;
UploadBackupConfig upload;
@override @override
bool operator ==(Object other) => identical(this, other) || other is SystemConfigBackupsDto && bool operator ==(Object other) => identical(this, other) || other is SystemConfigBackupsDto &&
other.database == database; other.database == database &&
other.upload == upload;
@override @override
int get hashCode => int get hashCode =>
// ignore: unnecessary_parenthesis // ignore: unnecessary_parenthesis
(database.hashCode); (database.hashCode) +
(upload.hashCode);
@override @override
String toString() => 'SystemConfigBackupsDto[database=$database]'; String toString() => 'SystemConfigBackupsDto[database=$database, upload=$upload]';
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
final json = <String, dynamic>{}; final json = <String, dynamic>{};
json[r'database'] = this.database; json[r'database'] = this.database;
json[r'upload'] = this.upload;
return json; return json;
} }
@ -46,6 +52,7 @@ class SystemConfigBackupsDto {
return SystemConfigBackupsDto( return SystemConfigBackupsDto(
database: DatabaseBackupConfig.fromJson(json[r'database'])!, database: DatabaseBackupConfig.fromJson(json[r'database'])!,
upload: UploadBackupConfig.fromJson(json[r'upload'])!,
); );
} }
return null; return null;
@ -94,6 +101,7 @@ class SystemConfigBackupsDto {
/// The list of required keys that must be present in a JSON. /// The list of required keys that must be present in a JSON.
static const requiredKeys = <String>{ static const requiredKeys = <String>{
'database', 'database',
'upload',
}; };
} }

View file

@ -30,7 +30,7 @@ class SystemConfigNightlyTasksDto {
bool missingThumbnails; bool missingThumbnails;
SystemConfigRemovePartialUploadsDto removeStaleUploads; bool removeStaleUploads;
String startTime; String startTime;
@ -85,7 +85,7 @@ class SystemConfigNightlyTasksDto {
databaseCleanup: mapValueOfType<bool>(json, r'databaseCleanup')!, databaseCleanup: mapValueOfType<bool>(json, r'databaseCleanup')!,
generateMemories: mapValueOfType<bool>(json, r'generateMemories')!, generateMemories: mapValueOfType<bool>(json, r'generateMemories')!,
missingThumbnails: mapValueOfType<bool>(json, r'missingThumbnails')!, missingThumbnails: mapValueOfType<bool>(json, r'missingThumbnails')!,
removeStaleUploads: SystemConfigRemovePartialUploadsDto.fromJson(json[r'removeStaleUploads'])!, removeStaleUploads: mapValueOfType<bool>(json, r'removeStaleUploads')!,
startTime: mapValueOfType<String>(json, r'startTime')!, startTime: mapValueOfType<String>(json, r'startTime')!,
syncQuotaUsage: mapValueOfType<bool>(json, r'syncQuotaUsage')!, syncQuotaUsage: mapValueOfType<bool>(json, r'syncQuotaUsage')!,
); );

View file

@ -1,108 +0,0 @@
//
// AUTO-GENERATED FILE, DO NOT MODIFY!
//
// @dart=2.18
// ignore_for_file: unused_element, unused_import
// ignore_for_file: always_put_required_named_parameters_first
// ignore_for_file: constant_identifier_names
// ignore_for_file: lines_longer_than_80_chars
part of openapi.api;
class SystemConfigRemovePartialUploadsDto {
/// Returns a new [SystemConfigRemovePartialUploadsDto] instance.
SystemConfigRemovePartialUploadsDto({
required this.enabled,
required this.hoursAgo,
});
bool enabled;
/// Minimum value: 1
int hoursAgo;
@override
bool operator ==(Object other) => identical(this, other) || other is SystemConfigRemovePartialUploadsDto &&
other.enabled == enabled &&
other.hoursAgo == hoursAgo;
@override
int get hashCode =>
// ignore: unnecessary_parenthesis
(enabled.hashCode) +
(hoursAgo.hashCode);
@override
String toString() => 'SystemConfigRemovePartialUploadsDto[enabled=$enabled, hoursAgo=$hoursAgo]';
Map<String, dynamic> toJson() {
final json = <String, dynamic>{};
json[r'enabled'] = this.enabled;
json[r'hoursAgo'] = this.hoursAgo;
return json;
}
/// Returns a new [SystemConfigRemovePartialUploadsDto] instance and imports its values from
/// [value] if it's a [Map], null otherwise.
// ignore: prefer_constructors_over_static_methods
static SystemConfigRemovePartialUploadsDto? fromJson(dynamic value) {
upgradeDto(value, "SystemConfigRemovePartialUploadsDto");
if (value is Map) {
final json = value.cast<String, dynamic>();
return SystemConfigRemovePartialUploadsDto(
enabled: mapValueOfType<bool>(json, r'enabled')!,
hoursAgo: mapValueOfType<int>(json, r'hoursAgo')!,
);
}
return null;
}
static List<SystemConfigRemovePartialUploadsDto> listFromJson(dynamic json, {bool growable = false,}) {
final result = <SystemConfigRemovePartialUploadsDto>[];
if (json is List && json.isNotEmpty) {
for (final row in json) {
final value = SystemConfigRemovePartialUploadsDto.fromJson(row);
if (value != null) {
result.add(value);
}
}
}
return result.toList(growable: growable);
}
static Map<String, SystemConfigRemovePartialUploadsDto> mapFromJson(dynamic json) {
final map = <String, SystemConfigRemovePartialUploadsDto>{};
if (json is Map && json.isNotEmpty) {
json = json.cast<String, dynamic>(); // ignore: parameter_assignments
for (final entry in json.entries) {
final value = SystemConfigRemovePartialUploadsDto.fromJson(entry.value);
if (value != null) {
map[entry.key] = value;
}
}
}
return map;
}
// maps a json object with a list of SystemConfigRemovePartialUploadsDto-objects as value to a dart map
static Map<String, List<SystemConfigRemovePartialUploadsDto>> mapListFromJson(dynamic json, {bool growable = false,}) {
final map = <String, List<SystemConfigRemovePartialUploadsDto>>{};
if (json is Map && json.isNotEmpty) {
// ignore: parameter_assignments
json = json.cast<String, dynamic>();
for (final entry in json.entries) {
map[entry.key] = SystemConfigRemovePartialUploadsDto.listFromJson(entry.value, growable: growable,);
}
}
return map;
}
/// The list of required keys that must be present in a JSON.
static const requiredKeys = <String>{
'enabled',
'hoursAgo',
};
}

View file

@ -0,0 +1,100 @@
//
// AUTO-GENERATED FILE, DO NOT MODIFY!
//
// @dart=2.18
// ignore_for_file: unused_element, unused_import
// ignore_for_file: always_put_required_named_parameters_first
// ignore_for_file: constant_identifier_names
// ignore_for_file: lines_longer_than_80_chars
part of openapi.api;
class UploadBackupConfig {
/// Returns a new [UploadBackupConfig] instance.
UploadBackupConfig({
required this.maxAgeHours,
});
/// Minimum value: 1
num maxAgeHours;
@override
bool operator ==(Object other) => identical(this, other) || other is UploadBackupConfig &&
other.maxAgeHours == maxAgeHours;
@override
int get hashCode =>
// ignore: unnecessary_parenthesis
(maxAgeHours.hashCode);
@override
String toString() => 'UploadBackupConfig[maxAgeHours=$maxAgeHours]';
Map<String, dynamic> toJson() {
final json = <String, dynamic>{};
json[r'maxAgeHours'] = this.maxAgeHours;
return json;
}
/// Returns a new [UploadBackupConfig] instance and imports its values from
/// [value] if it's a [Map], null otherwise.
// ignore: prefer_constructors_over_static_methods
static UploadBackupConfig? fromJson(dynamic value) {
upgradeDto(value, "UploadBackupConfig");
if (value is Map) {
final json = value.cast<String, dynamic>();
return UploadBackupConfig(
maxAgeHours: num.parse('${json[r'maxAgeHours']}'),
);
}
return null;
}
static List<UploadBackupConfig> listFromJson(dynamic json, {bool growable = false,}) {
final result = <UploadBackupConfig>[];
if (json is List && json.isNotEmpty) {
for (final row in json) {
final value = UploadBackupConfig.fromJson(row);
if (value != null) {
result.add(value);
}
}
}
return result.toList(growable: growable);
}
static Map<String, UploadBackupConfig> mapFromJson(dynamic json) {
final map = <String, UploadBackupConfig>{};
if (json is Map && json.isNotEmpty) {
json = json.cast<String, dynamic>(); // ignore: parameter_assignments
for (final entry in json.entries) {
final value = UploadBackupConfig.fromJson(entry.value);
if (value != null) {
map[entry.key] = value;
}
}
}
return map;
}
// maps a json object with a list of UploadBackupConfig-objects as value to a dart map
static Map<String, List<UploadBackupConfig>> mapListFromJson(dynamic json, {bool growable = false,}) {
final map = <String, List<UploadBackupConfig>>{};
if (json is Map && json.isNotEmpty) {
// ignore: parameter_assignments
json = json.cast<String, dynamic>();
for (final entry in json.entries) {
map[entry.key] = UploadBackupConfig.listFromJson(entry.value, growable: growable,);
}
}
return map;
}
/// The list of required keys that must be present in a JSON.
static const requiredKeys = <String>{
'maxAgeHours',
};
}

View file

@ -16658,10 +16658,14 @@
"properties": { "properties": {
"database": { "database": {
"$ref": "#/components/schemas/DatabaseBackupConfig" "$ref": "#/components/schemas/DatabaseBackupConfig"
},
"upload": {
"$ref": "#/components/schemas/UploadBackupConfig"
} }
}, },
"required": [ "required": [
"database" "database",
"upload"
], ],
"type": "object" "type": "object"
}, },
@ -17195,7 +17199,7 @@
"type": "boolean" "type": "boolean"
}, },
"removeStaleUploads": { "removeStaleUploads": {
"$ref": "#/components/schemas/SystemConfigRemovePartialUploadsDto" "type": "boolean"
}, },
"startTime": { "startTime": {
"type": "string" "type": "string"
@ -17325,22 +17329,6 @@
], ],
"type": "object" "type": "object"
}, },
"SystemConfigRemovePartialUploadsDto": {
"properties": {
"enabled": {
"type": "boolean"
},
"hoursAgo": {
"minimum": 1,
"type": "integer"
}
},
"required": [
"enabled",
"hoursAgo"
],
"type": "object"
},
"SystemConfigReverseGeocodingDto": { "SystemConfigReverseGeocodingDto": {
"properties": { "properties": {
"enabled": { "enabled": {
@ -18078,6 +18066,18 @@
}, },
"type": "object" "type": "object"
}, },
"UploadBackupConfig": {
"properties": {
"maxAgeHours": {
"minimum": 1,
"type": "number"
}
},
"required": [
"maxAgeHours"
],
"type": "object"
},
"UploadOkDto": { "UploadOkDto": {
"properties": { "properties": {
"id": { "id": {

View file

@ -1359,8 +1359,12 @@ export type DatabaseBackupConfig = {
enabled: boolean; enabled: boolean;
keepLastAmount: number; keepLastAmount: number;
}; };
export type UploadBackupConfig = {
maxAgeHours: number;
};
export type SystemConfigBackupsDto = { export type SystemConfigBackupsDto = {
database: DatabaseBackupConfig; database: DatabaseBackupConfig;
upload: UploadBackupConfig;
}; };
export type SystemConfigFFmpegDto = { export type SystemConfigFFmpegDto = {
accel: TranscodeHWAccel; accel: TranscodeHWAccel;
@ -1484,16 +1488,12 @@ export type SystemConfigMetadataDto = {
export type SystemConfigNewVersionCheckDto = { export type SystemConfigNewVersionCheckDto = {
enabled: boolean; enabled: boolean;
}; };
export type SystemConfigRemovePartialUploadsDto = {
enabled: boolean;
hoursAgo: number;
};
export type SystemConfigNightlyTasksDto = { export type SystemConfigNightlyTasksDto = {
clusterNewFaces: boolean; clusterNewFaces: boolean;
databaseCleanup: boolean; databaseCleanup: boolean;
generateMemories: boolean; generateMemories: boolean;
missingThumbnails: boolean; missingThumbnails: boolean;
removeStaleUploads: SystemConfigRemovePartialUploadsDto; removeStaleUploads: boolean;
startTime: string; startTime: string;
syncQuotaUsage: boolean; syncQuotaUsage: boolean;
}; };

View file

@ -1,4 +1,4 @@
import { Controller, Delete, Head, Options, Param, Patch, Post, Req, Res } from '@nestjs/common'; import { Controller, Delete, Head, HttpCode, HttpStatus, Options, Param, Patch, Post, Req, Res } from '@nestjs/common';
import { ApiHeader, ApiOkResponse, ApiTags } from '@nestjs/swagger'; import { ApiHeader, ApiOkResponse, ApiTags } from '@nestjs/swagger';
import { Request, Response } from 'express'; import { Request, Response } from 'express';
import { import {
@ -107,6 +107,7 @@ export class AssetUploadController {
} }
@Options() @Options()
@HttpCode(HttpStatus.NO_CONTENT)
getUploadOptions(@Res() res: Response) { getUploadOptions(@Res() res: Response) {
return this.service.getUploadOptions(res); return this.service.getUploadOptions(res);
} }